@bsv/sdk 1.3.4 → 1.3.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. package/dist/cjs/package.json +1 -1
  2. package/dist/cjs/src/auth/Peer.js +1 -1
  3. package/dist/cjs/src/auth/Peer.js.map +1 -1
  4. package/dist/cjs/src/auth/certificates/Certificate.js +25 -6
  5. package/dist/cjs/src/auth/certificates/Certificate.js.map +1 -1
  6. package/dist/cjs/src/auth/certificates/MasterCertificate.js +99 -17
  7. package/dist/cjs/src/auth/certificates/MasterCertificate.js.map +1 -1
  8. package/dist/cjs/src/auth/certificates/VerifiableCertificate.js +3 -4
  9. package/dist/cjs/src/auth/certificates/VerifiableCertificate.js.map +1 -1
  10. package/dist/cjs/src/auth/certificates/__tests/CompletedProtoWallet.js +80 -0
  11. package/dist/cjs/src/auth/certificates/__tests/CompletedProtoWallet.js.map +1 -0
  12. package/dist/cjs/src/auth/certificates/index.js +1 -0
  13. package/dist/cjs/src/auth/certificates/index.js.map +1 -1
  14. package/dist/cjs/src/auth/utils/index.js +0 -1
  15. package/dist/cjs/src/auth/utils/index.js.map +1 -1
  16. package/dist/cjs/src/wallet/CachedKeyDeriver.js.map +1 -1
  17. package/dist/cjs/src/wallet/KeyDeriver.js +3 -2
  18. package/dist/cjs/src/wallet/KeyDeriver.js.map +1 -1
  19. package/dist/cjs/src/wallet/ProtoWallet.js.map +1 -1
  20. package/dist/cjs/src/wallet/WalletClient.js.map +1 -1
  21. package/dist/cjs/src/wallet/index.js +2 -3
  22. package/dist/cjs/src/wallet/index.js.map +1 -1
  23. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  24. package/dist/esm/src/auth/Peer.js +1 -1
  25. package/dist/esm/src/auth/Peer.js.map +1 -1
  26. package/dist/esm/src/auth/certificates/Certificate.js +25 -6
  27. package/dist/esm/src/auth/certificates/Certificate.js.map +1 -1
  28. package/dist/esm/src/auth/certificates/MasterCertificate.js +100 -18
  29. package/dist/esm/src/auth/certificates/MasterCertificate.js.map +1 -1
  30. package/dist/esm/src/auth/certificates/VerifiableCertificate.js +3 -4
  31. package/dist/esm/src/auth/certificates/VerifiableCertificate.js.map +1 -1
  32. package/dist/esm/src/auth/certificates/__tests/CompletedProtoWallet.js +76 -0
  33. package/dist/esm/src/auth/certificates/__tests/CompletedProtoWallet.js.map +1 -0
  34. package/dist/esm/src/auth/certificates/index.js +1 -0
  35. package/dist/esm/src/auth/certificates/index.js.map +1 -1
  36. package/dist/esm/src/auth/utils/index.js +0 -1
  37. package/dist/esm/src/auth/utils/index.js.map +1 -1
  38. package/dist/esm/src/wallet/CachedKeyDeriver.js.map +1 -1
  39. package/dist/esm/src/wallet/KeyDeriver.js +3 -2
  40. package/dist/esm/src/wallet/KeyDeriver.js.map +1 -1
  41. package/dist/esm/src/wallet/ProtoWallet.js.map +1 -1
  42. package/dist/esm/src/wallet/WalletClient.js.map +1 -1
  43. package/dist/esm/src/wallet/index.js +1 -1
  44. package/dist/esm/src/wallet/index.js.map +1 -1
  45. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  46. package/dist/types/src/auth/Peer.d.ts +1 -1
  47. package/dist/types/src/auth/Peer.d.ts.map +1 -1
  48. package/dist/types/src/auth/certificates/Certificate.d.ts +16 -3
  49. package/dist/types/src/auth/certificates/Certificate.d.ts.map +1 -1
  50. package/dist/types/src/auth/certificates/MasterCertificate.d.ts +46 -13
  51. package/dist/types/src/auth/certificates/MasterCertificate.d.ts.map +1 -1
  52. package/dist/types/src/auth/certificates/VerifiableCertificate.d.ts +1 -1
  53. package/dist/types/src/auth/certificates/VerifiableCertificate.d.ts.map +1 -1
  54. package/dist/types/src/auth/certificates/__tests/CompletedProtoWallet.d.ts +24 -0
  55. package/dist/types/src/auth/certificates/__tests/CompletedProtoWallet.d.ts.map +1 -0
  56. package/dist/types/src/auth/certificates/index.d.ts +1 -0
  57. package/dist/types/src/auth/certificates/index.d.ts.map +1 -1
  58. package/dist/types/src/auth/utils/index.d.ts +0 -1
  59. package/dist/types/src/auth/utils/index.d.ts.map +1 -1
  60. package/dist/types/src/wallet/CachedKeyDeriver.d.ts.map +1 -1
  61. package/dist/types/src/wallet/KeyDeriver.d.ts +5 -7
  62. package/dist/types/src/wallet/KeyDeriver.d.ts.map +1 -1
  63. package/dist/types/src/wallet/ProtoWallet.d.ts.map +1 -1
  64. package/dist/types/src/wallet/Wallet.interfaces.d.ts.map +1 -1
  65. package/dist/types/src/wallet/WalletClient.d.ts +1 -2
  66. package/dist/types/src/wallet/WalletClient.d.ts.map +1 -1
  67. package/dist/types/src/wallet/index.d.ts +1 -1
  68. package/dist/types/src/wallet/index.d.ts.map +1 -1
  69. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  70. package/dist/umd/bundle.js +1 -1
  71. package/docs/auth.md +111 -87
  72. package/docs/wallet.md +26 -97
  73. package/package.json +1 -1
  74. package/src/auth/Peer.ts +23 -23
  75. package/src/auth/__tests/Peer.test.ts +19 -27
  76. package/src/auth/certificates/Certificate.ts +31 -8
  77. package/src/auth/certificates/MasterCertificate.ts +134 -23
  78. package/src/auth/certificates/VerifiableCertificate.ts +6 -6
  79. package/src/auth/certificates/__tests/Certificate.test.ts +45 -7
  80. package/src/auth/certificates/__tests/CompletedProtoWallet.ts +101 -0
  81. package/src/auth/certificates/__tests/MasterCertificate.test.ts +273 -0
  82. package/src/auth/certificates/__tests/VerifiableCertificate.test.ts +117 -0
  83. package/src/auth/certificates/index.ts +2 -1
  84. package/src/auth/utils/index.ts +0 -1
  85. package/src/wallet/CachedKeyDeriver.ts +1 -2
  86. package/src/wallet/KeyDeriver.ts +18 -20
  87. package/src/wallet/ProtoWallet.ts +20 -20
  88. package/src/wallet/Wallet.interfaces.ts +8 -9
  89. package/src/wallet/WalletClient.ts +1 -2
  90. package/src/wallet/__tests/KeyDeriver.test.ts +2 -2
  91. package/src/wallet/index.ts +1 -1
  92. package/dist/cjs/src/auth/utils/certificateHelpers.js +0 -51
  93. package/dist/cjs/src/auth/utils/certificateHelpers.js.map +0 -1
  94. package/dist/esm/src/auth/utils/certificateHelpers.js +0 -47
  95. package/dist/esm/src/auth/utils/certificateHelpers.js.map +0 -1
  96. package/dist/types/src/auth/utils/certificateHelpers.d.ts +0 -26
  97. package/dist/types/src/auth/utils/certificateHelpers.d.ts.map +0 -1
  98. package/src/auth/utils/certificateHelpers.ts +0 -86
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bsv/sdk",
3
- "version": "1.3.4",
3
+ "version": "1.3.6",
4
4
  "type": "commonjs",
5
5
  "description": "BSV Blockchain Software Development Kit",
6
6
  "files": [
@@ -34,7 +34,7 @@ class Peer {
34
34
  this.certificatesToRequest = certificatesToRequest !== null && certificatesToRequest !== void 0 ? certificatesToRequest : { certifiers: [], types: {} };
35
35
  this.transport.onData(this.handleIncomingMessage.bind(this));
36
36
  this.sessionManager = sessionManager || new SessionManager_js_1.SessionManager();
37
- if (autoPersistLastSession === false) {
37
+ if (!autoPersistLastSession) {
38
38
  this.autoPersistLastSession = false;
39
39
  }
40
40
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"Peer.js","sourceRoot":"","sources":["../../../../src/auth/Peer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Peer.js","sourceRoot":"","sources":["../../../../src/auth/Peer.ts"],"names":[],"mappings":"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"}
@@ -53,9 +53,11 @@ class Certificate {
53
53
  writer.write(txidBytes);
54
54
  writer.writeVarIntNum(Number(outputIndex));
55
55
  // Write fields
56
- const fieldEntries = Object.entries(this.fields);
57
- writer.writeVarIntNum(fieldEntries.length);
58
- for (const [fieldName, fieldValue] of fieldEntries) {
56
+ // Sort field names lexicographically
57
+ const fieldNames = Object.keys(this.fields).sort();
58
+ writer.writeVarIntNum(fieldNames.length);
59
+ for (const fieldName of fieldNames) {
60
+ const fieldValue = this.fields[fieldName];
59
61
  // Field name
60
62
  const fieldNameBytes = mod_js_1.Utils.toArray(fieldName, 'utf8');
61
63
  writer.writeVarIntNum(fieldNameBytes.length);
@@ -141,18 +143,35 @@ class Certificate {
141
143
  /**
142
144
  * Signs the certificate using the provided certifier wallet.
143
145
  *
144
- * @param {Wallet} certifier - The wallet representing the certifier.
146
+ * @param {Wallet} certifierWallet - The wallet representing the certifier.
145
147
  * @returns {Promise<void>}
146
148
  */
147
- async sign(certifier) {
149
+ async sign(certifierWallet) {
150
+ if (this.signature) {
151
+ throw new Error(`Certificate has already been signed! Signature present: ${this.signature}`);
152
+ }
153
+ // Ensure the certifier declared is the one actually signing
154
+ this.certifier = (await certifierWallet.getPublicKey({ identityKey: true })).publicKey;
148
155
  const preimage = this.toBinary(false); // Exclude the signature when signing
149
- const { signature } = await certifier.createSignature({
156
+ const { signature } = await certifierWallet.createSignature({
150
157
  data: preimage,
151
158
  protocolID: [2, 'certificate signature'],
152
159
  keyID: `${this.type} ${this.serialNumber}`
153
160
  });
154
161
  this.signature = mod_js_1.Utils.toHex(signature);
155
162
  }
163
+ /**
164
+ * Helper function which retrieves the protocol ID and key ID for certificate field encryption.
165
+ *
166
+ * @param serialNumber - The serial number of the certificate.
167
+ * @param fieldName - The name of the field within the certificate to be encrypted.
168
+ * @returns An object containing the protocol ID and key ID:
169
+ * - `protocolID` (WalletProtocol): The protocol ID for certificate field encryption.
170
+ * - `keyID` (string): A unique key identifier derived from the serial number and field name.
171
+ */
172
+ static getCertificateFieldEncryptionDetails(serialNumber, fieldName) {
173
+ return { protocolID: [2, 'certificate field encryption'], keyID: `${serialNumber} ${fieldName}` };
174
+ }
156
175
  }
157
176
  exports.default = Certificate;
158
177
  //# sourceMappingURL=Certificate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Certificate.js","sourceRoot":"","sources":["../../../../../src/auth/certificates/Certificate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Certificate.js","sourceRoot":"","sources":["../../../../../src/auth/certificates/Certificate.ts"],"names":[],"mappings":"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"}
@@ -17,24 +17,65 @@ const Certificate_js_1 = __importDefault(require("./Certificate.js"));
17
17
  class MasterCertificate extends Certificate_js_1.default {
18
18
  constructor(type, serialNumber, subject, certifier, revocationOutpoint, fields, masterKeyring, signature) {
19
19
  super(type, serialNumber, subject, certifier, revocationOutpoint, fields, signature);
20
+ // Ensure every field in `fields` is a string and has a corresponding key in `masterKeyring`
21
+ for (const fieldName of Object.keys(fields)) {
22
+ if (!masterKeyring[fieldName]) {
23
+ throw new Error(`Master keyring must contain a value for every field. Missing key for field: "${fieldName}".`);
24
+ }
25
+ }
20
26
  this.masterKeyring = masterKeyring;
21
27
  }
22
28
  /**
23
- * Creates a verifiable certificate structure for a specific verifier, allowing them access to specified fields.
24
- * This method decrypts the master field keys for each field specified in `fieldsToReveal` and re-encrypts them
25
- * for the verifier's identity key. The resulting certificate structure includes only the fields intended to be
26
- * revealed and a verifier-specific keyring for field decryption.
29
+ * Decrypts all fields in the MasterCertificate using the subject's wallet.
30
+ *
31
+ * This method uses the `masterKeyring` to decrypt each field's encryption key and then
32
+ * decrypts the field values. The result is a record of plaintext field names and values.
27
33
  *
28
- * @param {Wallet} subjectWallet - The wallet instance of the subject, used to decrypt and re-encrypt field keys.
29
- * @param {string} verifierIdentityKey - The public identity key of the verifier who will receive access to the specified fields.
34
+ * @param {ProtoWallet} subjectWallet - The wallet of the subject, used to decrypt the master keyring and field values.
35
+ * @returns {Promise<Record<CertificateFieldNameUnder50Bytes, string>>} - A record of field names and their decrypted values in plaintext.
36
+ *
37
+ * @throws {Error} Throws an error if the `masterKeyring` is invalid or if decryption fails for any field.
38
+ */
39
+ async decryptFields(subjectWallet) {
40
+ // const fields: Record<CertificateFieldNameUnder50Bytes, Base64String> = this.fields
41
+ const decryptedFields = {};
42
+ if (!this.masterKeyring || Object.keys(this.masterKeyring).length === 0) {
43
+ throw new Error('A MasterCertificate must have a valid masterKeyring!');
44
+ }
45
+ try {
46
+ // Note: we want to iterate through all fields, not just masterKeyring keys/value pairs.
47
+ for (const fieldName of Object.keys(this.fields)) {
48
+ const { plaintext: fieldRevelationKey } = await subjectWallet.decrypt({
49
+ ciphertext: mod_js_1.Utils.toArray(this.masterKeyring[fieldName], 'base64'),
50
+ counterparty: this.certifier,
51
+ ...Certificate_js_1.default.getCertificateFieldEncryptionDetails(this.serialNumber, fieldName)
52
+ });
53
+ const fieldValue = new mod_js_1.SymmetricKey(fieldRevelationKey).decrypt(mod_js_1.Utils.toArray(this.fields[fieldName], 'base64'));
54
+ decryptedFields[fieldName] = mod_js_1.Utils.toUTF8(fieldValue);
55
+ }
56
+ return decryptedFields;
57
+ }
58
+ catch (e) {
59
+ throw new Error('Failed to decrypt all master certificate fields.');
60
+ }
61
+ }
62
+ /**
63
+ * Creates a keyring for a verifier, enabling them to decrypt specific certificate fields.
64
+ * This method decrypts the master field keys for the specified fields and re-encrypts them
65
+ * for the verifier's identity key. The result is a keyring containing the keys necessary
66
+ * for the verifier to access the designated fields.
67
+ *
68
+ * @param {ProtoWallet} subjectWallet - The wallet instance of the subject, used to decrypt and re-encrypt field keys.
69
+ * @param {WalletCounterparty} verifier - The verifier who will receive access to the selectively revealed fields. Can be an identity key as hex, 'anyone', or 'self'.
30
70
  * @param {string[]} fieldsToReveal - An array of field names to be revealed to the verifier. Must be a subset of the certificate's fields.
31
71
  * @param {string} [originator] - Optional originator identifier, used if additional context is needed for decryption and encryption operations.
32
- * @returns {Promise<Object>} - A new certificate structure containing the original encrypted fields, the verifier-specific field decryption keyring, and essential certificate metadata.
72
+ * @returns {Promise<Record<CertificateFieldNameUnder50Bytes, string>>} - A keyring mapping field names to encrypted field revelation keys, allowing the verifier to decrypt specified fields.
33
73
  * @throws {Error} Throws an error if:
34
- * - fieldsToReveal is empty or a field in `fieldsToReveal` does not exist in the certificate.
74
+ * - fieldsToReveal is not an array of strings.
75
+ * - A field in `fieldsToReveal` does not exist in the certificate.
35
76
  * - The decrypted master field key fails to decrypt the corresponding field (indicating an invalid key).
36
77
  */
37
- async createKeyringForVerifier(subjectWallet, verifierIdentityKey, fieldsToReveal, originator) {
78
+ async createKeyringForVerifier(subjectWallet, verifier, fieldsToReveal, originator) {
38
79
  if (!Array.isArray(fieldsToReveal)) {
39
80
  throw new Error('fieldsToReveal must be an array of strings');
40
81
  }
@@ -44,15 +85,12 @@ class MasterCertificate extends Certificate_js_1.default {
44
85
  if (!this.fields[fieldName]) {
45
86
  throw new Error(`Fields to reveal must be a subset of the certificate fields. Missing the "${fieldName}" field.`);
46
87
  }
47
- // Create a keyID
48
- const keyID = `${this.serialNumber} ${fieldName}`;
49
88
  const encryptedMasterFieldKey = this.masterKeyring[fieldName];
50
89
  // Decrypt the master field key
51
90
  const { plaintext: masterFieldKey } = await subjectWallet.decrypt({
52
91
  ciphertext: mod_js_1.Utils.toArray(encryptedMasterFieldKey, 'base64'),
53
- protocolID: [2, 'certificate field encryption'],
54
- keyID,
55
- counterparty: 'self'
92
+ ...Certificate_js_1.default.getCertificateFieldEncryptionDetails(this.serialNumber, fieldName),
93
+ counterparty: this.certifier
56
94
  }, originator);
57
95
  // Verify that derived key actually decrypts requested field
58
96
  try {
@@ -64,9 +102,8 @@ class MasterCertificate extends Certificate_js_1.default {
64
102
  // Encrypt derived fieldRevelationKey for verifier
65
103
  const { ciphertext: encryptedFieldRevelationKey } = await subjectWallet.encrypt({
66
104
  plaintext: masterFieldKey,
67
- protocolID: [2, 'certificate field encryption'],
68
- keyID: `${this.serialNumber} ${fieldName}`,
69
- counterparty: verifierIdentityKey
105
+ ...Certificate_js_1.default.getCertificateFieldEncryptionDetails(this.serialNumber, fieldName),
106
+ counterparty: verifier
70
107
  }, originator);
71
108
  // Add encryptedFieldRevelationKey to fieldRevelationKeyring
72
109
  fieldRevelationKeyring[fieldName] = mod_js_1.Utils.toBase64(encryptedFieldRevelationKey);
@@ -74,6 +111,51 @@ class MasterCertificate extends Certificate_js_1.default {
74
111
  // Return the field revelation keyring which can be used to create a verifiable certificate for a verifier.
75
112
  return fieldRevelationKeyring;
76
113
  }
114
+ /**
115
+ * Issues a new MasterCertificate for a specified subject.
116
+ *
117
+ * This method generates a certificate containing encrypted fields and a keyring
118
+ * for the subject to decrypt all fields. Each field is encrypted with a randomly
119
+ * generated symmetric key, which is then encrypted for the subject. The certificate
120
+ * can also includes a revocation outpoint to manage potential revocation.
121
+ *
122
+ * @param {ProtoWallet} certifierWallet - The wallet of the certifier, used to sign the certificate and encrypt field keys.
123
+ * @param {WalletCounterparty} subject - The subject for whom the certificate is issued.
124
+ * @param {Record<CertificateFieldNameUnder50Bytes, string>} fields - Unencrypted certificate fields to include, with their names and values.
125
+ * @param {string} certificateType - The type of certificate being issued.
126
+ * @param {function(string, Record<CertificateFieldNameUnder50Bytes, string>?): Promise<string>} getRevocationOutpoint -
127
+ * Optional function to obtain a revocation outpoint for the certificate. Defaults to a placeholder.
128
+ * @param {function(string): Promise<void>} updateProgress - Optional callback for reporting progress updates during the operation. Defaults to a no-op.
129
+ * @returns {Promise<MasterCertificate>} - A signed MasterCertificate instance containing the encrypted fields and subject specific keyring.
130
+ *
131
+ * @throws {Error} Throws an error if any operation (e.g., encryption, signing) fails during certificate issuance.
132
+ */
133
+ static async issueCertificateForSubject(certifierWallet, subject, fields, certificateType, getRevocationOutpoint = async (serialNumber) => { return 'Certificate revocation not tracked.'; }) {
134
+ // 1. Generate serialNumber
135
+ const serialNumber = mod_js_1.Utils.toBase64((0, mod_js_1.Random)(32));
136
+ const encryptedCertificateFields = {};
137
+ const masterKeyringForSubject = {};
138
+ // 2. For each field, generate a random key -> encrypt field -> encrypt key
139
+ for (const [fieldName, fieldValue] of Object.entries(fields)) {
140
+ const fieldSymmetricKey = mod_js_1.SymmetricKey.fromRandom();
141
+ const encryptedFieldValue = fieldSymmetricKey.encrypt(mod_js_1.Utils.toArray(fieldValue, 'utf8'));
142
+ encryptedCertificateFields[fieldName] = mod_js_1.Utils.toBase64(encryptedFieldValue);
143
+ const { ciphertext: encryptedFieldRevelationKey } = await certifierWallet.encrypt({
144
+ plaintext: fieldSymmetricKey.toArray(),
145
+ ...Certificate_js_1.default.getCertificateFieldEncryptionDetails(serialNumber, fieldName),
146
+ counterparty: subject
147
+ });
148
+ masterKeyringForSubject[fieldName] = mod_js_1.Utils.toBase64(encryptedFieldRevelationKey);
149
+ }
150
+ // 3. Obtain a revocation outpoint (ex. certifier can call wallet.createAction())
151
+ const revocationOutpoint = await getRevocationOutpoint(serialNumber);
152
+ // TODO: Validate revocation outpoint format
153
+ // 4. Create new MasterCertificate instance
154
+ const certificate = new MasterCertificate(certificateType, serialNumber, subject, (await certifierWallet.getPublicKey({ identityKey: true })).publicKey, revocationOutpoint, encryptedCertificateFields, masterKeyringForSubject);
155
+ // 5. Sign and return the new MasterCertificate certifying the subject.
156
+ await certificate.sign(certifierWallet);
157
+ return certificate;
158
+ }
77
159
  }
78
160
  exports.MasterCertificate = MasterCertificate;
79
161
  //# sourceMappingURL=MasterCertificate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MasterCertificate.js","sourceRoot":"","sources":["../../../../../src/auth/certificates/MasterCertificate.ts"],"names":[],"mappings":";;;;;;AAAA,4CAUwB;AACxB,sEAA0C;AAE1C;;;;;;;GAOG;AACH,MAAa,iBAAkB,SAAQ,wBAAW;IAWhD,YACE,IAAkB,EAClB,YAA0B,EAC1B,OAAkB,EAClB,SAAoB,EACpB,kBAAkC,EAClC,MAAwD,EACxD,aAA+D,EAC/D,SAAqB;QAErB,KAAK,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA;QACpF,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;IACpC,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,wBAAwB,CAAC,aAA0B,EAAE,mBAA2B,EAAE,cAAwB,EAAE,UAAmB;QACnI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;QAC/D,CAAC;QACD,MAAM,sBAAsB,GAAG,EAAE,CAAA;QACjC,KAAK,MAAM,SAAS,IAAI,cAAc,EAAE,CAAC;YACvC,wEAAwE;YACxE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC5B,MAAM,IAAI,KAAK,CAAC,6EAA6E,SAAS,UAAU,CAAC,CAAA;YACnH,CAAC;YAED,iBAAiB;YACjB,MAAM,KAAK,GAAG,GAAG,IAAI,CAAC,YAAY,IAAI,SAAS,EAAE,CAAA;YACjD,MAAM,uBAAuB,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;YAE7D,+BAA+B;YAC/B,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC;gBAChE,UAAU,EAAE,cAAK,CAAC,OAAO,CAAC,uBAAuB,EAAE,QAAQ,CAAC;gBAC5D,UAAU,EAAE,CAAC,CAAC,EAAE,8BAA8B,CAAC;gBAC/C,KAAK;gBACL,YAAY,EAAE,MAAM;aACrB,EAAE,UAAU,CAAC,CAAA;YAEd,4DAA4D;YAC5D,IAAI,CAAC;gBACH,IAAI,qBAAY,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,cAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAA;YAC3F,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,sBAAsB,SAAS,yCAAyC,CAAC,CAAA;YAC3F,CAAC;YAED,kDAAkD;YAClD,MAAM,EAAE,UAAU,EAAE,2BAA2B,EAAE,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC;gBAC9E,SAAS,EAAE,cAAc;gBACzB,UAAU,EAAE,CAAC,CAAC,EAAE,8BAA8B,CAAC;gBAC/C,KAAK,EAAE,GAAG,IAAI,CAAC,YAAY,IAAI,SAAS,EAAE;gBAC1C,YAAY,EAAE,mBAAmB;aAClC,EAAE,UAAU,CAAC,CAAA;YAEd,4DAA4D;YAC5D,sBAAsB,CAAC,SAAS,CAAC,GAAG,cAAK,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAA;QACjF,CAAC;QAED,2GAA2G;QAC3G,OAAO,sBAAsB,CAAA;IAC/B,CAAC;CACF;AArFD,8CAqFC"}
1
+ {"version":3,"file":"MasterCertificate.js","sourceRoot":"","sources":["../../../../../src/auth/certificates/MasterCertificate.ts"],"names":[],"mappings":"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"}
@@ -17,7 +17,7 @@ class VerifiableCertificate extends Certificate_js_1.default {
17
17
  this.decryptedFields = decryptedFields;
18
18
  }
19
19
  /**
20
- * Decrypts certificate fields using the provided keyring and verifier wallet
20
+ * Decrypts selectively revealed certificate fields using the provided keyring and verifier wallet
21
21
  * @param {Wallet} verifierWallet - The wallet instance of the certificate's verifier, used to decrypt field keys.
22
22
  * @returns {Promise<Record<CertificateFieldNameUnder50Bytes, string>>} - A promise that resolves to an object where each key is a field name and each value is the decrypted field value as a string.
23
23
  * @throws {Error} Throws an error if any of the decryption operations fail, with a message indicating the failure context.
@@ -31,8 +31,7 @@ class VerifiableCertificate extends Certificate_js_1.default {
31
31
  for (const fieldName in this.keyring) {
32
32
  const { plaintext: fieldRevelationKey } = await verifierWallet.decrypt({
33
33
  ciphertext: mod_js_1.Utils.toArray(this.keyring[fieldName], 'base64'),
34
- protocolID: [2, 'certificate field encryption'],
35
- keyID: `${this.serialNumber} ${fieldName}`,
34
+ ...Certificate_js_1.default.getCertificateFieldEncryptionDetails(this.serialNumber, fieldName),
36
35
  counterparty: this.subject
37
36
  });
38
37
  const fieldValue = new mod_js_1.SymmetricKey(fieldRevelationKey).decrypt(mod_js_1.Utils.toArray(this.fields[fieldName], 'base64'));
@@ -41,7 +40,7 @@ class VerifiableCertificate extends Certificate_js_1.default {
41
40
  return decryptedFields;
42
41
  }
43
42
  catch (error) {
44
- throw new Error(`Failed to decrypt certificate fields using keyring: ${error instanceof Error ? error.message : error}`);
43
+ throw new Error(`Failed to decrypt selectively revealed certificate fields using keyring: ${error instanceof Error ? error.message : error}`);
45
44
  }
46
45
  }
47
46
  }
@@ -1 +1 @@
1
- {"version":3,"file":"VerifiableCertificate.js","sourceRoot":"","sources":["../../../../../src/auth/certificates/VerifiableCertificate.ts"],"names":[],"mappings":";;;;;;AAAA,4CASwB;AACxB,sEAA0C;AAE1C;;;GAGG;AACH,MAAa,qBAAsB,SAAQ,wBAAW;IAYpD,YACE,IAAkB,EAClB,YAA0B,EAC1B,OAAkB,EAClB,SAAoB,EACpB,kBAAkC,EAClC,MAAwD,EACxD,SAAqB,EACrB,OAA0D,EAC1D,eAAwE;QAExE,KAAK,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA;QACpF,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,eAAe,GAAG,eAAe,CAAA;IACxC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,aAAa,CAAC,cAAsB;QACxC,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5D,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAA;QAC1F,CAAC;QACD,IAAI,CAAC;YACH,MAAM,eAAe,GAAG,EAAE,CAAA;YAC1B,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACrC,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC;oBACrE,UAAU,EAAE,cAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC;oBAC5D,UAAU,EAAE,CAAC,CAAC,EAAE,8BAA8B,CAAC;oBAC/C,KAAK,EAAE,GAAG,IAAI,CAAC,YAAY,IAAI,SAAS,EAAE;oBAC1C,YAAY,EAAE,IAAI,CAAC,OAAO;iBAC3B,CAAC,CAAA;gBAEF,MAAM,UAAU,GAAG,IAAI,qBAAY,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,cAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAA;gBAChH,eAAe,CAAC,SAAS,CAAC,GAAG,cAAK,CAAC,MAAM,CAAC,UAAsB,CAAC,CAAA;YACnE,CAAC;YACD,OAAO,eAAe,CAAA;QACxB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,uDAAuD,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;QAC1H,CAAC;IACH,CAAC;CACF;AAxDD,sDAwDC"}
1
+ {"version":3,"file":"VerifiableCertificate.js","sourceRoot":"","sources":["../../../../../src/auth/certificates/VerifiableCertificate.ts"],"names":[],"mappings":";;;;;;AAAA,4CAUwB;AACxB,sEAA0C;AAE1C;;;GAGG;AACH,MAAa,qBAAsB,SAAQ,wBAAW;IAYpD,YACE,IAAkB,EAClB,YAA0B,EAC1B,OAAkB,EAClB,SAAoB,EACpB,kBAAkC,EAClC,MAAwD,EACxD,SAAqB,EACrB,OAA0D,EAC1D,eAAwE;QAExE,KAAK,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA;QACpF,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,eAAe,GAAG,eAAe,CAAA;IACxC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,aAAa,CAAC,cAAsB;QACxC,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5D,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAA;QAC1F,CAAC;QACD,IAAI,CAAC;YACH,MAAM,eAAe,GAAqD,EAAE,CAAA;YAC5E,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACrC,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC;oBACrE,UAAU,EAAE,cAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC;oBAC5D,GAAG,wBAAW,CAAC,oCAAoC,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC;oBACjF,YAAY,EAAE,IAAI,CAAC,OAAO;iBAC3B,CAAC,CAAA;gBAEF,MAAM,UAAU,GAAG,IAAI,qBAAY,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,cAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAA;gBAChH,eAAe,CAAC,SAAS,CAAC,GAAG,cAAK,CAAC,MAAM,CAAC,UAAsB,CAAC,CAAA;YACnE,CAAC;YACD,OAAO,eAAe,CAAA;QACxB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,4EAA4E,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;QAC/I,CAAC;IACH,CAAC;CACF;AAvDD,sDAuDC"}
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CompletedProtoWallet = void 0;
4
+ const index_js_1 = require("../../../wallet/index.js");
5
+ // Test Mock wallet which extends ProtoWallet but still implements Wallet interface
6
+ // Unsupported methods throw
7
+ class CompletedProtoWallet extends index_js_1.ProtoWallet {
8
+ constructor(rootKeyOrKeyDeriver) {
9
+ super(rootKeyOrKeyDeriver);
10
+ if (typeof rootKeyOrKeyDeriver['identityKey'] !== 'string') {
11
+ rootKeyOrKeyDeriver = new index_js_1.KeyDeriver(rootKeyOrKeyDeriver);
12
+ }
13
+ this.keyDeriver = rootKeyOrKeyDeriver;
14
+ }
15
+ async getPublicKey(args, originator) {
16
+ if (args.privileged) {
17
+ throw new Error('no privilege support');
18
+ }
19
+ if (args.identityKey) {
20
+ return { publicKey: this.keyDeriver.rootKey.toPublicKey().toString() };
21
+ }
22
+ else {
23
+ if (!args.protocolID || !args.keyID) {
24
+ throw new Error('protocolID and keyID are required if identityKey is false or undefined.');
25
+ }
26
+ return {
27
+ publicKey: this.keyDeriver
28
+ .derivePublicKey(args.protocolID, args.keyID, args.counterparty || 'self', args.forSelf)
29
+ .toString()
30
+ };
31
+ }
32
+ }
33
+ async createAction(args, originator) {
34
+ throw new Error("not implemented");
35
+ }
36
+ async signAction(args, originator) {
37
+ throw new Error("not implemented");
38
+ }
39
+ async abortAction(args, originator) {
40
+ throw new Error("not implemented");
41
+ }
42
+ async listActions(args, originator) {
43
+ throw new Error("not implemented");
44
+ }
45
+ async internalizeAction(args, originator) {
46
+ throw new Error("not implemented");
47
+ }
48
+ async listOutputs(args, originator) {
49
+ throw new Error("not implemented");
50
+ }
51
+ async relinquishOutput(args, originator) {
52
+ throw new Error("not implemented");
53
+ }
54
+ async acquireCertificate(args, originator) {
55
+ throw new Error("not implemented");
56
+ }
57
+ async listCertificates(args, originator) {
58
+ throw new Error("not implemented");
59
+ }
60
+ async proveCertificate(args, originator) {
61
+ throw new Error("not implemented");
62
+ }
63
+ async relinquishCertificate(args, originator) {
64
+ throw new Error("not implemented");
65
+ }
66
+ async discoverByIdentityKey(args, originator) {
67
+ throw new Error("not implemented");
68
+ }
69
+ async discoverByAttributes(args, originator) {
70
+ throw new Error("not implemented");
71
+ }
72
+ async getHeight(args, originator) {
73
+ throw new Error("not implemented");
74
+ }
75
+ async getHeaderForHeight(args, originator) {
76
+ throw new Error("not implemented");
77
+ }
78
+ }
79
+ exports.CompletedProtoWallet = CompletedProtoWallet;
80
+ //# sourceMappingURL=CompletedProtoWallet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompletedProtoWallet.js","sourceRoot":"","sources":["../../../../../../src/auth/certificates/__tests/CompletedProtoWallet.ts"],"names":[],"mappings":"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"}
@@ -22,4 +22,5 @@ var Certificate_js_1 = require("./Certificate.js");
22
22
  Object.defineProperty(exports, "Certificate", { enumerable: true, get: function () { return __importDefault(Certificate_js_1).default; } });
23
23
  __exportStar(require("./MasterCertificate.js"), exports);
24
24
  __exportStar(require("./VerifiableCertificate.js"), exports);
25
+ __exportStar(require("./__tests/CompletedProtoWallet.js"), exports);
25
26
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/auth/certificates/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,mDAAyD;AAAhD,8HAAA,OAAO,OAAe;AAC/B,yDAAsC;AACtC,6DAA0C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/auth/certificates/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,mDAAyD;AAAhD,8HAAA,OAAO,OAAe;AAC/B,yDAAsC;AACtC,6DAA0C;AAC1C,oEAAiD"}
@@ -18,5 +18,4 @@ __exportStar(require("./verifyNonce.js"), exports);
18
18
  __exportStar(require("./createNonce.js"), exports);
19
19
  __exportStar(require("./getVerifiableCertificates.js"), exports);
20
20
  __exportStar(require("./validateCertificates.js"), exports);
21
- __exportStar(require("./certificateHelpers.js"), exports);
22
21
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/auth/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAgC;AAChC,mDAAgC;AAChC,iEAA8C;AAC9C,4DAAyC;AACzC,0DAAuC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/auth/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAgC;AAChC,mDAAgC;AAChC,iEAA8C;AAC9C,4DAAyC"}
@@ -1 +1 @@
1
- {"version":3,"file":"CachedKeyDeriver.js","sourceRoot":"","sources":["../../../../src/wallet/CachedKeyDeriver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CachedKeyDeriver.js","sourceRoot":"","sources":["../../../../src/wallet/CachedKeyDeriver.ts"],"names":[],"mappings":";;AAAA,qDAA4E;AAC5E,mDAA0D;AAG1D;;;;GAIG;AACH,MAAqB,gBAAgB;IAKnC;;;;;SAKK;IACL,YAAa,OAA8B,EAAE,OAAmC;QAC9E,IAAI,CAAC,UAAU,GAAG,IAAI,0BAAU,CAAC,OAAO,CAAC,CAAA;QACzC,IAAI,CAAC,KAAK,GAAG,IAAI,GAAG,EAAe,CAAA;QACnC,IAAI,CAAC,YAAY,GAAG,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,KAAI,IAAI,CAAA;IACnD,CAAC;IAED;;;;;;;;SAQK;IACL,eAAe,CACb,UAA0B,EAC1B,KAAa,EACb,YAA0B,EAC1B,UAAmB,KAAK;QAExB,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,CAAC,CAAA;QACnG,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QAChC,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,CAAC,CAAA;YACxF,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;YAC/B,OAAO,MAAM,CAAA;QACf,CAAC;IACH,CAAC;IAED;;;;;;;SAOK;IACL,gBAAgB,CACd,UAA0B,EAC1B,KAAa,EACb,YAA0B;QAE1B,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,CAAC,CAAA;QAC3F,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QAChC,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,UAAU,EAAE,KAAK,EAAE,YAAY,CAAC,CAAA;YAChF,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;YAC/B,OAAO,MAAM,CAAA;QACf,CAAC;IACH,CAAC;IAED;;;;;;;;SAQK;IACL,kBAAkB,CAChB,UAA0B,EAC1B,KAAa,EACb,YAA0B;QAE1B,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,CAAC,CAAA;QAC7F,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QAChC,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,UAAU,EAAE,KAAK,EAAE,YAAY,CAAC,CAAA;YAClF,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;YAC/B,OAAO,MAAM,CAAA;QACf,CAAC;IACH,CAAC;IAED;;;;;;SAMK;IACL,wBAAwB,CAAE,YAA0B;QAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,0BAA0B,EAAE,YAAY,CAAC,CAAA;QAChF,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QAChC,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,YAAY,CAAC,CAAA;YACrE,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;YAC/B,OAAO,MAAM,CAAA;QACf,CAAC;IACH,CAAC;IAED;;;;;;;SAOK;IACL,oBAAoB,CAClB,YAA0B,EAC1B,UAA0B,EAC1B,KAAa;QAEb,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,sBAAsB,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,CAAC,CAAA;QAC/F,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QAChC,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,YAAY,EAAE,UAAU,EAAE,KAAK,CAAC,CAAA;YACpF,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;YAC/B,OAAO,MAAM,CAAA;QACf,CAAC;IACH,CAAC;IAED;;;;;SAKK;IACG,gBAAgB,CAAE,UAAkB,EAAE,GAAG,IAAW;QAC1D,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC/E,OAAO,GAAG,UAAU,IAAI,cAAc,EAAE,CAAA;IAC1C,CAAC;IAED;;;;SAIK;IACG,iBAAiB,CAAE,GAAQ;QACjC,IAAI,GAAG,YAAY,oBAAS,IAAI,GAAG,YAAY,qBAAU,EAAE,CAAC;YAC1D,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAA;QACvB,CAAC;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAClE,CAAC;aAAM,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACnD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;QAC5B,CAAC;aAAM,CAAC;YACN,OAAO,MAAM,CAAC,GAAG,CAAC,CAAA;QACpB,CAAC;IACH,CAAC;IAED;;;;SAIK;IACG,QAAQ,CAAE,QAAgB;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QACtC,yCAAyC;QACzC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QAC3B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;QAC/B,OAAO,KAAK,CAAA;IACd,CAAC;IAED;;;;SAIK;IACG,QAAQ,CAAE,QAAgB,EAAE,KAAU;QAC5C,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACzC,yDAAyD;YACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAA;YAC/C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QAC7B,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;IACjC,CAAC;CACF;AAxLD,mCAwLC"}
@@ -55,11 +55,12 @@ class KeyDeriver {
55
55
  * @param {string} keyID - The key identifier.
56
56
  * @param {Counterparty} counterparty - The counterparty's public key or a predefined value ('self' or 'anyone').
57
57
  * @returns {SymmetricKey} - The derived symmetric key.
58
- * @throws {Error} - Throws an error if attempting to derive a symmetric key for 'anyone'.
59
58
  */
60
59
  deriveSymmetricKey(protocolID, keyID, counterparty) {
60
+ // If counterparty is 'anyone', we use 1*G as the public key.
61
+ // This is a publicly derivable key and should only be used in scenarios where public disclosure is intended.
61
62
  if (counterparty === 'anyone') {
62
- throw new Error('Symmetric keys (such as encryption keys or HMAC keys) should not be derivable by everyone, because messages would be decryptable by anyone who knows the identity public key of the user, and HMACs would be similarly forgeable.');
63
+ counterparty = new index_js_1.PrivateKey(1).toPublicKey();
63
64
  }
64
65
  counterparty = this.normalizeCounterparty(counterparty);
65
66
  const derivedPublicKey = this.derivePublicKey(protocolID, keyID, counterparty);
@@ -1 +1 @@
1
- {"version":3,"file":"KeyDeriver.js","sourceRoot":"","sources":["../../../../src/wallet/KeyDeriver.ts"],"names":[],"mappings":";;;AAAA,qDAAyF;AAkEzF;;;GAGG;AACH,MAAa,UAAU;IAIrB;;;SAGK;IACL,YAAY,OAA8B;QACxC,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;YACzB,IAAI,CAAC,OAAO,GAAG,IAAI,qBAAU,CAAC,CAAC,CAAC,CAAA;QAClC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACxB,CAAC;QACD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAA;IAC1D,CAAC;IAED;;;;;;;SAOK;IACL,eAAe,CAAC,UAA0B,EAAE,KAAa,EAAE,YAA0B,EAAE,UAAmB,KAAK;QAC7G,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAA;QACvD,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,YAAY,EAAE,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;QAC3G,CAAC;aAAM,CAAC;YACN,OAAO,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAA;QAC7F,CAAC;IACH,CAAC;IAED;;;;;;SAMK;IACL,gBAAgB,CAAC,UAA0B,EAAE,KAAa,EAAE,YAA0B;QACpF,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAA;QACvD,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,YAAY,EAAE,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAA;IAC7F,CAAC;IAED;;;;;;;;SAQK;IACL,kBAAkB,CAAC,UAA0B,EAAE,KAAa,EAAE,YAA0B;QACtF,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CACb,mOAAmO,CACpO,CAAA;QACH,CAAC;QACD,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAA;QACvD,MAAM,gBAAgB,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,KAAK,EAAE,YAAY,CAAC,CAAA;QAC9E,MAAM,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,KAAK,EAAE,YAAY,CAAC,CAAA;QAChF,OAAO,IAAI,uBAAY,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC,CAAE,CAAC,OAAO,EAAE,CAAC,CAAA;IAC9F,CAAC;IAED;;;;;;SAMK;IACL,wBAAwB,CAAC,YAA0B;QACjD,IAAI,YAAY,KAAK,MAAM,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAA;QACnF,CAAC;QACD,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAA;QAEvD,6DAA6D;QAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAA;QACvC,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,KAAK,EAAE,CAAA;QACvE,MAAM,wBAAwB,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,KAAK,EAAE,CAAA;QAEvF,IAAI,gBAAgB,KAAK,wBAAwB,EAAE,CAAC;YAClD,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAA;QACnF,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,IAAI,CAAa,CAAA;IAC/E,CAAC;IAED;;;;;;SAMK;IACL,oBAAoB,CAAC,YAA0B,EAAE,UAA0B,EAAE,KAAa;QACxF,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAA;QACvD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAA;QAClE,MAAM,gBAAgB,GAAG,gBAAK,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,CAAA;QAC5F,OAAO,eAAI,CAAC,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,gBAAgB,CAAC,CAAA;IACrE,CAAC;IAED;;;;;SAKK;IACG,qBAAqB,CAAC,YAA0B;QACtD,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAA;QACvE,CAAC;aAAM,IAAI,YAAY,KAAK,MAAM,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAA;QACnC,CAAC;aAAM,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;YACrC,OAAO,IAAI,qBAAU,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;QACxC,CAAC;aAAM,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;YAC5C,OAAO,oBAAS,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;QAC3C,CAAC;aAAM,CAAC;YACN,OAAO,YAAY,CAAA;QACrB,CAAC;IACH,CAAC;IAED;;;;;;SAMK;IACG,oBAAoB,CAAC,UAA0B,EAAE,KAAa;QACpE,MAAM,aAAa,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;QACnC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,aAAa,GAAG,CAAC,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;YAC/E,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;QAC/D,CAAC;QACD,MAAM,YAAY,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAA;QACvD,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;QAC3D,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;QACxD,CAAC;QACD,IAAI,YAAY,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;YAC9B,4FAA4F;YAC5F,8EAA8E;YAC9E,IAAI,YAAY,CAAC,UAAU,CAAC,8BAA8B,CAAC,EAAE,CAAC;gBAC5D,uDAAuD;gBACvD,kEAAkE;gBAClE,0DAA0D;gBAC1D,IAAI,YAAY,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;oBAC9B,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC,CAAA;gBAC9F,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;YAClE,CAAC;QACH,CAAC;QACD,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;QAChE,CAAC;QACD,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAA;QACrF,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAA;QAChF,CAAC;QACD,IAAI,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAA;QACvE,CAAC;QACD,OAAO,GAAG,aAAa,IAAI,YAAY,IAAI,KAAK,EAAE,CAAA;IACpD,CAAC;CACF;AA7KD,gCA6KC;AAED,kBAAe,UAAU,CAAA"}
1
+ {"version":3,"file":"KeyDeriver.js","sourceRoot":"","sources":["../../../../src/wallet/KeyDeriver.ts"],"names":[],"mappings":";;;AAAA,qDAAyF;AAiEzF;;;GAGG;AACH,MAAa,UAAU;IAIrB;;;SAGK;IACL,YAAa,OAA8B;QACzC,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;YACzB,IAAI,CAAC,OAAO,GAAG,IAAI,qBAAU,CAAC,CAAC,CAAC,CAAA;QAClC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACxB,CAAC;QACD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAA;IAC1D,CAAC;IAED;;;;;;;SAOK;IACL,eAAe,CAAE,UAA0B,EAAE,KAAa,EAAE,YAA0B,EAAE,UAAmB,KAAK;QAC9G,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAA;QACvD,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,YAAY,EAAE,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;QAC3G,CAAC;aAAM,CAAC;YACN,OAAO,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAA;QAC7F,CAAC;IACH,CAAC;IAED;;;;;;SAMK;IACL,gBAAgB,CAAE,UAA0B,EAAE,KAAa,EAAE,YAA0B;QACrF,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAA;QACvD,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,YAAY,EAAE,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAA;IAC7F,CAAC;IAED;;;;;;;SAOK;IACL,kBAAkB,CAAE,UAA0B,EAAE,KAAa,EAAE,YAA0B;QACvF,6DAA6D;QAC7D,6GAA6G;QAC7G,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;YAC9B,YAAY,GAAG,IAAI,qBAAU,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;QAChD,CAAC;QACD,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAA;QACvD,MAAM,gBAAgB,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,KAAK,EAAE,YAAY,CAAC,CAAA;QAC9E,MAAM,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,KAAK,EAAE,YAAY,CAAC,CAAA;QAChF,OAAO,IAAI,uBAAY,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAA;IAC7F,CAAC;IAED;;;;;;SAMK;IACL,wBAAwB,CAAE,YAA0B;QAClD,IAAI,YAAY,KAAK,MAAM,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAA;QACnF,CAAC;QACD,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAA;QAEvD,6DAA6D;QAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAA;QACvC,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,KAAK,EAAE,CAAA;QACvE,MAAM,wBAAwB,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,KAAK,EAAE,CAAA;QAEvF,IAAI,gBAAgB,KAAK,wBAAwB,EAAE,CAAC;YAClD,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAA;QACnF,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,IAAI,CAAa,CAAA;IAC/E,CAAC;IAED;;;;;;SAMK;IACL,oBAAoB,CAAE,YAA0B,EAAE,UAA0B,EAAE,KAAa;QACzF,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAA;QACvD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAA;QAClE,MAAM,gBAAgB,GAAG,gBAAK,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,CAAA;QAC5F,OAAO,eAAI,CAAC,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,gBAAgB,CAAC,CAAA;IACrE,CAAC;IAED;;;;;SAKK;IACG,qBAAqB,CAAE,YAA0B;QACvD,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAA;QACvE,CAAC;aAAM,IAAI,YAAY,KAAK,MAAM,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAA;QACnC,CAAC;aAAM,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;YACrC,OAAO,IAAI,qBAAU,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;QACxC,CAAC;aAAM,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;YAC5C,OAAO,oBAAS,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;QAC3C,CAAC;aAAM,CAAC;YACN,OAAO,YAAY,CAAA;QACrB,CAAC;IACH,CAAC;IAED;;;;;;SAMK;IACG,oBAAoB,CAAE,UAA0B,EAAE,KAAa;QACrE,MAAM,aAAa,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;QACnC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,aAAa,GAAG,CAAC,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;YAC/E,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;QAC/D,CAAC;QACD,MAAM,YAAY,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAA;QACvD,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;QAC3D,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;QACxD,CAAC;QACD,IAAI,YAAY,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;YAC9B,4FAA4F;YAC5F,8EAA8E;YAC9E,IAAI,YAAY,CAAC,UAAU,CAAC,8BAA8B,CAAC,EAAE,CAAC;gBAC5D,uDAAuD;gBACvD,kEAAkE;gBAClE,0DAA0D;gBAC1D,IAAI,YAAY,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;oBAC9B,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC,CAAA;gBAC9F,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;YAClE,CAAC;QACH,CAAC;QACD,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;QAChE,CAAC;QACD,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAA;QACrF,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAA;QAChF,CAAC;QACD,IAAI,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAA;QACvE,CAAC;QACD,OAAO,GAAG,aAAa,IAAI,YAAY,IAAI,KAAK,EAAE,CAAA;IACpD,CAAC;CACF;AA5KD,gCA4KC;AAED,kBAAe,UAAU,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"ProtoWallet.js","sourceRoot":"","sources":["../../../../src/wallet/ProtoWallet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProtoWallet.js","sourceRoot":"","sources":["../../../../src/wallet/ProtoWallet.ts"],"names":[],"mappings":"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"}