Skip to content
This repository has been archived by the owner on Oct 15, 2024. It is now read-only.

Commit

Permalink
feat: update bbs dependency
Browse files Browse the repository at this point in the history
  • Loading branch information
tplooker committed May 26, 2020
1 parent 73fdf98 commit 20d6f62
Show file tree
Hide file tree
Showing 10 changed files with 40 additions and 97 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,5 @@
"id": "did:example:489398593#test",
"type": "Bls12381G2Key2020",
"controller": "did:example:489398593",
"publicKeyBase58": "TXNALMsWD88T9SzbRfLU1GC6VeYVb9f1ivBuAL4mkbLHBTmc3U1T7P8eSDYM9QBLRGk6QDs7XWj62PLvMvBmRKTrcPF9LbLHjN3Jp9vJ8ZfUzTUXMxZ2xNyhRxRZn4uMHv"
"publicKeyBase58": "oqpWYKaZD9M1Kbe94BVXpr8WTdFBNZyKv48cziTiQUeuhm7sBhCABMyYG4kcMrseC68YTFFgyhiNeBKjzdKk9MiRWuLv5H4FFujQsQK2KTAtzU8qTBiZqBHMmnLF4PL7Ytu"
}
10 changes: 5 additions & 5 deletions __tests__/__fixtures__/data/exampleBls12381KeyPair.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"id": "did:example:489398593#test",
"controller": "did:example:489398593",
"privateKeyBase58": "Nkb9XiUT4XdrnEB86JXibFWvicdmczrFbWTjzSh879X",
"publicKeyBase58": "TXNALMsWD88T9SzbRfLU1GC6VeYVb9f1ivBuAL4mkbLHBTmc3U1T7P8eSDYM9QBLRGk6QDs7XWj62PLvMvBmRKTrcPF9LbLHjN3Jp9vJ8ZfUzTUXMxZ2xNyhRxRZn4uMHv"
}
"id": "did:example:489398593#test",
"controller": "did:example:489398593",
"privateKeyBase58": "5D6Pa8dSwApdnfg7EZR8WnGfvLDCZPZGsZ5Y1ELL9VDj",
"publicKeyBase58": "oqpWYKaZD9M1Kbe94BVXpr8WTdFBNZyKv48cziTiQUeuhm7sBhCABMyYG4kcMrseC68YTFFgyhiNeBKjzdKk9MiRWuLv5H4FFujQsQK2KTAtzU8qTBiZqBHMmnLF4PL7Ytu"
}
17 changes: 4 additions & 13 deletions __tests__/__fixtures__/data/test_partial_proof_document.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,19 +11,10 @@
"proof": {
"type": "BbsBlsSignatureProof2020",
"@context": "https://w3id.org/security/v2",
"created": "2020-04-26T20:08:51Z",
"created": "2020-05-25T22:49:38Z",
"verificationMethod": "did:example:489398593#test",
"proofPurpose": "assertionMethod",
"proof": "mGOWSa5qZ39XWFBXS1fcnHB9mbvDKNJZs3d3Q2z8RT1DM7XtO2ktTuqfVhXLOVk2iyocNXxp7JeDV8tUNi90ui6MnFCgWgpMM0cHZwYfOtql0gndsJVke7EBw+6PzwSDDFYpkYbh0T2JGd+UrTcxORMcdhQ09k6m+bXb2h24ACgV1yuIRL8uUVM0A+hb/QWoAAAAdAuGlyNqkT2B5RyDIcXOL835ZG+W3HoUWldoAhi26Mgd/VvOq5HlkuuIMLZRo1kTCgAAAAJyfcn2qGpVdjljTer8kN3tT15DcZ4AKTSlWun6b5KGtg9Io0kc6sYVx/RB32etO/bToLDVIXqzePrnkwgrdvpAB9BcMwjV+JpQPi2r+VKLwH7RgXhjQjg6KfpmO5A9+RqkGH9ZXl3jvJC4Qsxua6YgAAAABUwh/obLvihL9T9oDfN7che5BZQGyngOV981Kw+jOB4KKgBi+KZt7zcjp2pr0mpKbiQuYsnePgEgQpztc3td4X0xOIGdVvOA4LdxE7bLolYTGuUiGocZlOiYmZLLCunmW0pVlwjDKB+Eqjcme3fiT63Ir9ajq/4kpd/bUqhDpcRjLc+fGixdRD06PKJPKrkzuN+Uqk4UyYnHz2WhuJB5wuE=",
"revealStatements": [
0,
1,
2,
4,
6,
8
],
"totalStatements": 9,
"nonce": "eRh54xj/gYmf3zm8S3/iH2UR5G0Q8VXXMgPmcbE76//O8MkolI4BE3yWOLCC95OSsFA="
"proof": "AAkBV44EXaM9fq2thk930UkcADLgL7Z9cg7BPFb3EPgg09b/fGnh64mFohGYGQo99EsJ4bb3yZo9aBdrBmwrEijn5fzjkOp12NOOcepk66miCw+I7cfyTgL7njpd5y8x3DFz6Jk1uYaRBlHwOhvE4AH1C1UhyOW0aL5oZrm2WXbFLsng642+2T0x3t8s1WgOFRBavQAAAHSZkhqIc3q3a7NVAcyKQtH8rIVb1Mq3x6dI63LR8ynXPrVktxVRCnrWr5SUd/dXoYYAAAACCklntNAUfV+Ep84p3p8bREAlSrSGWmr+hLAYdsWEcUAikCkx0APLU265f2D4xwOjZZ4d7FE/sXLNNcAdaGFvM6hlXloVbQ6sNP/BHegl3CzAevlC7CMpmhithSmfWPwMhC8Ky+NVyc3F+HrCZV71ZAAAAAUSgikwleUuQQn7KVkCRG5KEkYWcj/HX+8WnerGw18RXw4NERJd2a2lrx9Rn3Sl8/eqU3i804GvYzfsMNo2G5P8CCoOAAoZztRJ7Ttt5M7PiMMBFZy+TQz4hfWr9ODBnBNqVHRG9CJgs9Y4ivQ5ZVm0+fVtx8RjPkCyhlEGTPNGiANYqCAJgRethcMonP/sHXLfDqp3TvgGazhkZGCXRkQU",
"nonce": "LSlkfDNxSbJqDw885WoNl2hMTriDh9Z8/GV870Mzi4lYlD4KsgMjs4jis70F2UgVr94="
}
}
}
38 changes: 6 additions & 32 deletions __tests__/__fixtures__/data/test_partial_proof_vc_document.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,13 @@
"https://w3id.org/citizenship/v1"
],
"id": "https://issuer.oidp.uscis.gov/credentials/83627465",
"type": [
"PermanentResidentCard",
"VerifiableCredential"
],
"type": ["PermanentResidentCard", "VerifiableCredential"],
"description": "Government of Example Permanent Resident Card.",
"identifier": "83627465",
"name": "Permanent Resident Card",
"credentialSubject": {
"id": "did:example:b34ca6cd37bbf23",
"type": [
"Person",
"PermanentResident"
],
"type": ["Person", "PermanentResident"],
"familyName": "SMITH",
"gender": "Male",
"givenName": "JOHN"
Expand All @@ -27,30 +21,10 @@
"proof": {
"type": "BbsBlsSignatureProof2020",
"@context": "https://w3id.org/security/v2",
"created": "2020-04-26T04:21:07Z",
"created": "2020-05-25T23:07:10Z",
"verificationMethod": "did:example:489398593#test",
"proofPurpose": "assertionMethod",
"proof": "GO/i24loDTTgUtMCGM/jivlD260k93d9ek2FxB/L2NQmZANjKd13r+8yDIrRqD5hB1HjIc1gY3Y/lwexZNUa+BAlaXBQZa8iXhYr6M9lMauZxlYuaJkyGlUiu/QwcHwDD9hpB2LK8kUvQHdYZmkBwL3Whyqptl2hkgNIdCnpqoBH+L9DmIZH9iGwrzYJ6rx/AAAAdIu4GCCrIhQ1Vb/BOlHYaer1eTC+Sukw3ypVmNNoP5pa4nDD+/UQin2HjmS8YtZNqwAAAAIMTkAU/oDTR4EcEsFcUbiM9ThFKytMZ/uGC28463I/9Bb1JAL3F23JgUHe5eJzScg7Nu2hDHpkskO4/NaExd0cA/Sle9qeoObCi6trWtR8+ZuAI5tpkiOojsKBGoU55Diy8rMyOA+ruP2+F6tptRavAAAACUiVcbDWpO7LE8hMFmAfrO+DrWd7S0T2opAk6QheOTdnUfZIO5gpCDEvXGnZ2pmnGYqcLnAjth/gwhAEfTSTrntnAJQomBJStgVS73wZgVTgchhOFO2Qbg0nFGHyhzkZJD0NSjihxQDOx45pYSaIqiF0uM4iGLh79G5xU2Av+PBqbG4ASU1kzXa8N2cE6F7osl5LYKvm+yeGl2gDktCRwrcansuuZ4RQpPFE2ZCNYlsPKrjBQ+QTgWjpHQmhtfLpVFJcFpIy4x2GUD3tkZFGKYpEm2Sc00bNzfYozLdKj4erTr17SjoHwYyHwiofPmb2PRcrknpYVJaxyrVYM9sn9gwEoI4dLJRbT66k4lgEXRJJ3Kb430WHyWuWABmJ2dd0iQ==",
"revealStatements": [
0,
1,
2,
4,
5,
6,
8,
9,
15,
16,
17,
18,
19,
20,
21,
22,
23
],
"totalStatements": 24,
"nonce": "M/e44JTNSsfhnykE0yoD8eaYIdJARbpDIWFhu+TWwc70J5iwPHa8Q6bYQd1YjjxpV4c="
"proof": "ABgA/4N3qygQRJlX3gmQOlJRGbO1KTXKQUmaN02xl+FiNZUDmGfa5OoKtg0RJ4wxxA08t3Vut61G/pq4yN0bygaFk5EJF6j7zFXmz9Vc7EdlDAvUkXqPaKA8inSBNv97HiZ1o5hIpoRnepW89p4JXPVrFi8XbDARSZpCg18GUuUMaPQLHKU82M/9l8tqqG1lKBOs+sRAAAAAdKRrRPj6zAz5LPZgDZJ0J2rNJjQI+JNYbV4AYEVwW37sxQ99aGGvmBk3DL0sod1V/gAAAAJMLYjmrb92zV087wO8UtFLwMj7qJuqV9VkMDghdrrc3BGtJuQgKx2GTrOb4CQxI1bf+iG0USjTktcjTlKv3X5spg3+ihOnyve0HnMWWggAW22j8b78jbl7lkYGJvzIXTzrVJ5KdYp3tXMDTAX7CLEXAAAACVY8oocA9Bz1w42F8Yv7UAPHv4pSvunXqndFOet3kWtzYHYEbO5gc42wPQtLmTtmqP6kUbQv6ruxzRmANulB8fUfy2jah/QeHKvsp907YDnSfo2wofRxa/vzsZnVriw0UmZnP0sYjbhmCkhoQZkxhqel3IkOF+H80wzvCKCl6eq5biEFMYA4bXpDX6Ap5/6WS5SSFaJRWxW+hpR/9EuQE11sGtk2W2Wn4eBrQUgVqYgPLI+U/ONaUJrh+GVJ/XXx7xxbAUf/NeQ/13AkTnYNn1fUdiOJ2oKl1lGr59udFq2tBBsyC3msTtQPYJS084355GRBur5jnzPNJ2W6Gu3ZqqQeRrVyw1gzdhVDNOE8KUm9OQ3AvCuxo8PHNrqzNvc6VA==",
"nonce": "37pdwue1a8FWLqgwCd0QJ0IJTFhp609KtxeCTWZGnfAVE+sOBDffYez+TY/bmVy+6z4="
}
}
}
20 changes: 4 additions & 16 deletions __tests__/__fixtures__/data/test_proof_document.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,22 +14,10 @@
"proof": {
"type": "BbsBlsSignatureProof2020",
"@context": "https://w3id.org/security/v2",
"created": "2020-04-26T20:08:51Z",
"created": "2020-05-25T22:49:38Z",
"verificationMethod": "did:example:489398593#test",
"proofPurpose": "assertionMethod",
"proof": "gcd97mStzaEp51tLTXVpupjqcjCMVCXtTwnkwhGeh8FGMzxzboDlsI2zdNZZQojzFaBQ1qHPe/ih/6ELm3u3ZolJynzYhjfzFREQ82A1r/aX3BEBWCNLz1hiMZguovm2Ab8fUjaw2CsHdKok81Je1iiHPIk5fMRjib2yTNw4/Ng5uzkV+fXGBNYclAc6zbdjAAAAdItCkGndPJ1ufAeSE6ZNpNjGql75j+8M2M9J5N8sCwMQDEIRjYqNaImCGz/JZ3S22gAAAAIvBo5dfaD4gya4Q0uzC5HOfYzeZhG4csQ2S1FJMS2VFiTer59ExZlu1gUgdt7frg97NMA3RbcWvZ7i+FfUnqWSkW8bjjuP2T/kxxVjeYai03sd5DIEueloAkcGhw6/Sqts1UiKCHJTDmIuUfNbsmo8AAAAAh2YvYKiOZm28t1iWD4wKNmjk+tzy/vz5eeHp63AbDCKS3aaRrCF3CwmjKuA3SRcED+xIwVtRo5/1zqee567P0A=",
"revealStatements": [
0,
1,
2,
3,
4,
5,
6,
7,
8
],
"totalStatements": 9,
"nonce": "iDp+YmVKkU9ORUoHBLEmYYdNMROyoflLuozn2KlgoZ0xM9yDbddya1Vv8hGNHIRMv20="
"proof": "AAkB/4oxhQKow7T1W9iX8RYSV4W6+WexKBW56ecfgKSN9z3/L85pqdMQLFa7lxHonEiiIrMkODOdE7aeXaegz35i5K7wLd9QzuUxsTTcKQ+AYSzpvi6xacUsggAl1Go6fMI8ZK8rOnukhiiKWUaBcI33MyzC9VnqP5qQ0fZ2ymtX3BNi6QbfKdICCtAip2XteWrUXQAAAHSg+KVIw+RLyMKbEVq3EHSxCPQZ8FgWyLceDU3pnoj+vXsUKfyGBCKV1ug6/AMfu78AAAACSVGd9MwVlKS/UeeoajgD23ituIX1k3HPpnUFn7ncwEorL2ksncOUsnhDKmCEWQ902LqMKCUt2hcyjTF81inGo6DK8CSymX+e3AV/Jdj0lAHiFhHGQJN0qsp79kGuMgJnpCNxU5mEK4/k973NEG5N4gAAAAJP8MkQiTvubiyk0hHBhNdyD8HxphMGCNMuLdCFraFLtzzlk/0jJmB3K6UxJkc9Ul08IaPusXjJSwwZdji/HMru",
"nonce": "fmHRymGNI12VMo6T8PX1bIVCKmHf9AdVagUzXdPMvFs4W+kvjqqZ520nQMXvfYa/v28="
}
}
}
6 changes: 3 additions & 3 deletions __tests__/__fixtures__/data/test_signed_document.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,9 @@
"email": "jane.doe@example.com",
"proof": {
"type": "BbsBlsSignature2020",
"created": "2020-04-26T20:08:51Z",
"created": "2020-05-25T22:49:38Z",
"verificationMethod": "did:example:489398593#test",
"proofPurpose": "assertionMethod",
"signature": "EG7sdQZARDzcBkV3g2GrrfaVPXko1ReeGz3UOT/mRuCl6wGDAdVL7qRHGJDPwsu8EugqFpWG1nUOkltf1dYv/s409By031XUhwhLdeWBZmtDpMEFAkGEixTgp21aG0/kGagv5BjmDKg17MjQXfavuQ=="
"signature": "jHQ22/z+kDiXSKMjuRtn/owTxNjpbauXyHVU2/1xZeGeCOr0qTNzf/z36u4JxZlhKIkgj/1UoOp9XiEQdO25JsGtNnmjKX/m69gPhbJM4O5NXiTGsctdnhrBLHqH4MG29zq9yshvabeSm7EtgSJjpQ=="
}
}
}
16 changes: 5 additions & 11 deletions __tests__/__fixtures__/data/test_signed_vc.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,7 @@
"https://w3id.org/citizenship/v1"
],
"id": "https://issuer.oidp.uscis.gov/credentials/83627465",
"type": [
"VerifiableCredential",
"PermanentResidentCard"
],
"type": ["VerifiableCredential", "PermanentResidentCard"],
"issuer": "did:example:489398593",
"identifier": "83627465",
"name": "Permanent Resident Card",
Expand All @@ -16,10 +13,7 @@
"expirationDate": "2029-12-03T12:19:52Z",
"credentialSubject": {
"id": "did:example:b34ca6cd37bbf23",
"type": [
"PermanentResident",
"Person"
],
"type": ["PermanentResident", "Person"],
"givenName": "JOHN",
"familyName": "SMITH",
"gender": "Male",
Expand All @@ -33,9 +27,9 @@
},
"proof": {
"type": "BbsBlsSignature2020",
"created": "2020-04-26T04:21:07Z",
"created": "2020-05-25T23:07:10Z",
"verificationMethod": "did:example:489398593#test",
"proofPurpose": "assertionMethod",
"signature": "jx2VhjyZqUT91e2OhzweJA7G2u2UvmiDtIfmr+wUWNHWno+UOAh0FaNpM8Br+5j2JBkH981/nO1I7/9PFaRrng6NXu7vzDroKtuyj6nHGkMmGq4OMmBzIqRnG3ybin/Sxmu5YwqOxPMRsWH3H+2wSA=="
"signature": "t+EZAcxZshLwmLUT7+jXS+U/4rJoBqMl81TixG9xavLQIvZWAgUlGK1g93ZxuhsRRv1p+NPC4yop7UHKgXwyVJNeyWQ6EQ0vtp/z3V/0Y2sPo9EpbxkzFyylROJRJYgVQMqJAlHX6sSTpfPPlqmiGA=="
}
}
}
4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -52,8 +52,8 @@
"typescript": "3.7.5"
},
"dependencies": {
"@mattrglobal/bls12381-key-pair": "0.2.0",
"@mattrglobal/node-bbs-signatures": "0.7.0",
"@mattrglobal/bls12381-key-pair": "0.3.0",
"@mattrglobal/node-bbs-signatures": "0.8.0",
"@stablelib/random": "1.0.0",
"bs58": "4.0.1",
"jsonld": "3.1.0",
Expand Down
6 changes: 1 addition & 5 deletions src/BbsBlsSignatureProof2020.ts
Original file line number Diff line number Diff line change
Expand Up @@ -184,8 +184,6 @@ export class BbsBlsSignatureProof2020 extends suites.LinkedDataProof {
type: this.type,
...inputProof,
proof: Buffer.from(outputProof).toString("base64"),
revealStatements: revealIndicies,
totalStatements: allInputStatements.length,
nonce
}
};
Expand Down Expand Up @@ -247,10 +245,8 @@ export class BbsBlsSignatureProof2020 extends suites.LinkedDataProof {
const verified = blsVerifyProof({
proof: new Uint8Array(Buffer.from(proof.proof, "base64")),
publicKey: new Uint8Array(key.publicKeyBuffer),
messageCount: proof.totalStatements,
messages: statementsToVerify,
nonce: proof.nonce,
revealed: proof.revealStatements
nonce: proof.nonce
});

// Ensure proof was performed for a valid purpose
Expand Down
18 changes: 9 additions & 9 deletions yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -594,18 +594,18 @@
mkdirp "^0.5.1"
rimraf "^2.5.2"

"@mattrglobal/bls12381-key-pair@0.2.0":
version "0.2.0"
resolved "https://registry.npmjs.org/@mattrglobal/bls12381-key-pair/-/bls12381-key-pair-0.2.0.tgz#b94b0659c1be6a1ee490ce9e21d153f6bc627eff"
integrity sha512-gUV/egf+xlugQdWVTl9Rcdu8EnM8CjbTQ9NuauFnJBVW1Vb2GUnNorz+ga0KnhrsjXEQpOfcQNaP+YX0xWdJog==
"@mattrglobal/bls12381-key-pair@0.3.0":
version "0.3.0"
resolved "https://registry.npmjs.org/@mattrglobal/bls12381-key-pair/-/bls12381-key-pair-0.3.0.tgz#e2237fa056e4840bc6ea770062255a040c4102a8"
integrity sha512-cyQtprHjazqtToWHUVBieOFrMS6xHYUVKVZyARy+EMCjh89daZFId6j5jPDM0ep//Fp/Nr6sU+/xlCpasXm2QQ==
dependencies:
"@mattrglobal/node-bbs-signatures" "0.7.0"
"@mattrglobal/node-bbs-signatures" "0.8.0"
bs58 "4.0.1"

"@mattrglobal/node-bbs-signatures@0.7.0":
version "0.7.0"
resolved "https://registry.npmjs.org/@mattrglobal/node-bbs-signatures/-/node-bbs-signatures-0.7.0.tgz#1fd94bdfbd1f5be6bd8a79d4d79fc9cd0180772a"
integrity sha512-Ng94JpgWuYS7r35GcwXJmz15IxnIfhHFg5fVBelXdct86koDD2qm17EssytiBTL2qM65W0J7+BH8xOrSTvT7Eg==
"@mattrglobal/node-bbs-signatures@0.8.0":
version "0.8.0"
resolved "https://registry.npmjs.org/@mattrglobal/node-bbs-signatures/-/node-bbs-signatures-0.8.0.tgz#cc09b9da4db0b298e35f9313c4dcc9c69ab1f06f"
integrity sha512-jIPNlexenUXiqmISyo2+LV6hfGHFJAbex9BUcj+HZxdUPdmca30jG5x06TvIC/TuF1AiSIqJ5YsqTLBWA4X3Ig==
dependencies:
neon-cli "0.4.0"
node-pre-gyp "0.14.0"
Expand Down

0 comments on commit 20d6f62

Please sign in to comment.