@peerbit/crypto 3.0.0-e6ea5c0 → 3.0.1

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.
@@ -3,4 +3,5 @@ import { type PreHash } from "./prehash.js";
3
3
  import { SignatureWithKey } from "./signature.js";
4
4
  export declare const sign: (data: Uint8Array, keypair: Ed25519Keypair, prehash: PreHash) => Promise<SignatureWithKey>;
5
5
  export declare const verifySignatureEd25519: (signature: SignatureWithKey, data: Uint8Array) => Promise<boolean>;
6
+ export declare const verifySignatureEd25519Prepared: (signature: SignatureWithKey, preparedData: Uint8Array) => boolean;
6
7
  //# sourceMappingURL=ed25519-sign.browser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ed25519-sign.browser.d.ts","sourceRoot":"","sources":["../../src/ed25519-sign.browser.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAoB,MAAM,cAAc,CAAC;AACrE,OAAO,EAAE,KAAK,OAAO,EAAa,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,eAAO,MAAM,IAAI,GAChB,MAAM,UAAU,EAChB,SAAS,cAAc,EACvB,SAAS,OAAO,8BAchB,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAClC,WAAW,gBAAgB,EAC3B,MAAM,UAAU,qBAgBhB,CAAC"}
1
+ {"version":3,"file":"ed25519-sign.browser.d.ts","sourceRoot":"","sources":["../../src/ed25519-sign.browser.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAoB,MAAM,cAAc,CAAC;AACrE,OAAO,EAAE,KAAK,OAAO,EAAa,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,eAAO,MAAM,IAAI,GAChB,MAAM,UAAU,EAChB,SAAS,cAAc,EACvB,SAAS,OAAO,8BAchB,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAClC,WAAW,gBAAgB,EAC3B,MAAM,UAAU,qBAUhB,CAAC;AAEF,eAAO,MAAM,8BAA8B,GAC1C,WAAW,gBAAgB,EAC3B,cAAc,UAAU,YAMvB,CAAC"}
@@ -16,12 +16,12 @@ export const verifySignatureEd25519 = async (signature, data) => {
16
16
  let res = false;
17
17
  try {
18
18
  const hashedData = await prehashFn(data, signature.prehash);
19
- const verified = sodium.crypto_sign_verify_detached(signature.signature, hashedData, signature.publicKey.publicKey);
20
- res = verified;
19
+ res = verifySignatureEd25519Prepared(signature, hashedData);
21
20
  }
22
21
  catch (error) {
23
22
  return false;
24
23
  }
25
24
  return res;
26
25
  };
26
+ export const verifySignatureEd25519Prepared = (signature, preparedData) => sodium.crypto_sign_verify_detached(signature.signature, preparedData, signature.publicKey.publicKey);
27
27
  //# sourceMappingURL=ed25519-sign.browser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ed25519-sign.browser.js","sourceRoot":"","sources":["../../src/ed25519-sign.browser.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,oBAAoB,CAAC;AAExC,OAAO,EAAgB,SAAS,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,EACxB,IAAgB,EAChB,OAAuB,EACvB,OAAgB,EACf,EAAE;IACH,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAClD;;2GAEuG;IACvG,OAAO,IAAI,gBAAgB,CAAC;QAC3B,OAAO;QACP,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,SAAS,EAAE,MAAM,CAAC,oBAAoB,CACrC,UAAU,EACV,OAAO,CAAC,mBAAmB,CAC3B;KACD,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,EAC1C,SAA2B,EAC3B,IAAgB,EACf,EAAE;IACH,IAAI,GAAG,GAAG,KAAK,CAAC;IAChB,IAAI,CAAC;QACJ,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;QAE5D,MAAM,QAAQ,GAAG,MAAM,CAAC,2BAA2B,CAClD,SAAS,CAAC,SAAS,EACnB,UAAU,EACT,SAAS,CAAC,SAA8B,CAAC,SAAS,CACnD,CAAC;QACF,GAAG,GAAG,QAAQ,CAAC;IAChB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,OAAO,KAAK,CAAC;IACd,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC,CAAC"}
1
+ {"version":3,"file":"ed25519-sign.browser.js","sourceRoot":"","sources":["../../src/ed25519-sign.browser.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,oBAAoB,CAAC;AAExC,OAAO,EAAgB,SAAS,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,EACxB,IAAgB,EAChB,OAAuB,EACvB,OAAgB,EACf,EAAE;IACH,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAClD;;2GAEuG;IACvG,OAAO,IAAI,gBAAgB,CAAC;QAC3B,OAAO;QACP,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,SAAS,EAAE,MAAM,CAAC,oBAAoB,CACrC,UAAU,EACV,OAAO,CAAC,mBAAmB,CAC3B;KACD,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,EAC1C,SAA2B,EAC3B,IAAgB,EACf,EAAE;IACH,IAAI,GAAG,GAAG,KAAK,CAAC;IAChB,IAAI,CAAC;QACJ,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;QAC5D,GAAG,GAAG,8BAA8B,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAC7D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,OAAO,KAAK,CAAC;IACd,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAC7C,SAA2B,EAC3B,YAAwB,EACvB,EAAE,CACH,MAAM,CAAC,2BAA2B,CACjC,SAAS,CAAC,SAAS,EACnB,YAAY,EACX,SAAS,CAAC,SAA8B,CAAC,SAAS,CACnD,CAAC"}
@@ -3,4 +3,5 @@ import { type PreHash } from "./prehash.js";
3
3
  import { SignatureWithKey } from "./signature.js";
4
4
  export declare const sign: (data: Uint8Array, keypair: Ed25519Keypair, prehash: PreHash) => Promise<SignatureWithKey>;
5
5
  export declare const verifySignatureEd25519: (signature: SignatureWithKey, data: Uint8Array) => Promise<boolean>;
6
+ export declare const verifySignatureEd25519Prepared: (signature: SignatureWithKey, preparedData: Uint8Array) => boolean;
6
7
  //# sourceMappingURL=ed25519-sign.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ed25519-sign.d.ts","sourceRoot":"","sources":["../../src/ed25519-sign.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,cAAc,EAAyB,MAAM,cAAc,CAAC;AAC1E,OAAO,EAAE,KAAK,OAAO,EAAa,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,eAAO,MAAM,IAAI,GAChB,MAAM,UAAU,EAChB,SAAS,cAAc,EACvB,SAAS,OAAO,8BAgBhB,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAClC,WAAW,gBAAgB,EAC3B,MAAM,UAAU,qBAiBhB,CAAC"}
1
+ {"version":3,"file":"ed25519-sign.d.ts","sourceRoot":"","sources":["../../src/ed25519-sign.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,cAAc,EAAyB,MAAM,cAAc,CAAC;AAC1E,OAAO,EAAE,KAAK,OAAO,EAAa,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,eAAO,MAAM,IAAI,GAChB,MAAM,UAAU,EAChB,SAAS,cAAc,EACvB,SAAS,OAAO,8BAgBhB,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAClC,WAAW,gBAAgB,EAC3B,MAAM,UAAU,qBAUhB,CAAC;AAEF,eAAO,MAAM,8BAA8B,GAC1C,WAAW,gBAAgB,EAC3B,cAAc,UAAU,YAMvB,CAAC"}
@@ -22,15 +22,14 @@ export const verifySignatureEd25519 = async (signature, data) => {
22
22
  let res = false;
23
23
  try {
24
24
  const hashedData = await prehashFn(data, signature.prehash);
25
- /* return crypto.verify(null, hashedData, publicKey.keyObject, signature); */ // Sodium seems faster
26
- const verified = sodium.crypto_sign_verify_detached(signature.signature, hashedData, signature.publicKey.publicKey);
27
- res = verified;
25
+ res = verifySignatureEd25519Prepared(signature, hashedData);
28
26
  }
29
27
  catch (error) {
30
28
  return false;
31
29
  }
32
30
  return res;
33
31
  };
32
+ export const verifySignatureEd25519Prepared = (signature, preparedData) => sodium.crypto_sign_verify_detached(signature.signature, preparedData, signature.publicKey.publicKey);
34
33
  const DER_PREFIX = Buffer.from([
35
34
  48, 46, 2, 1, 0, 48, 5, 6, 3, 43, 101, 112, 4, 34, 4, 32,
36
35
  ]);
@@ -1 +1 @@
1
- {"version":3,"file":"ed25519-sign.js","sourceRoot":"","sources":["../../src/ed25519-sign.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ed25519-sign.js","sourceRoot":"","sources":["../../src/ed25519-sign.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"encryption.d.ts","sourceRoot":"","sources":["../../src/encryption.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"encryption.d.ts","sourceRoot":"","sources":["../../src/encryption.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,7 @@ var __runInitializers = (this && this.__runInitializers) || function (thisArg, i
35
35
  import { deserialize, field, fixedArray, serialize, variant, vec, } from "@dao-xyz/borsh";
36
36
  import sodium from "libsodium-wrappers";
37
37
  import { equals as uequals } from "uint8arrays";
38
+ import { coerce } from "./bytes.js";
38
39
  import { Ed25519PublicKey } from "./ed25519.js";
39
40
  import { AccessError } from "./errors.js";
40
41
  import { sha256 } from "./hash.js";
@@ -57,6 +58,10 @@ function isAsymmetricEncryptionKeys(parameters) {
57
58
  return parameters instanceof X25519Keypair;
58
59
  }
59
60
  export const createLocalEncryptProvider = (keys) => {
61
+ let symmetricKeyHash;
62
+ if (!isAsymmetricEncryptionKeys(keys)) {
63
+ symmetricKeyHash = sha256(keys);
64
+ }
60
65
  return async (bytes, parameters) => {
61
66
  const nonce = randomBytes(NONCE_LENGTH); // crypto random is faster than sodim random
62
67
  if (isAsymmetriEncryptionParameters(parameters) &&
@@ -81,7 +86,7 @@ export const createLocalEncryptProvider = (keys) => {
81
86
  });
82
87
  });
83
88
  return {
84
- cipher: new Uint8Array(cipher), // TODO do we need this clone?
89
+ cipher: coerce(cipher),
85
90
  nonce,
86
91
  envelope: new PublicKeyEnvelope({
87
92
  senderPublicKey: keys.publicKey,
@@ -93,10 +98,10 @@ export const createLocalEncryptProvider = (keys) => {
93
98
  !isAsymmetricEncryptionKeys(keys)) {
94
99
  const cipher = sodium.crypto_secretbox_easy(bytes, nonce, keys);
95
100
  return {
96
- cipher: new Uint8Array(cipher), // TODO do we need this clone?
101
+ cipher: coerce(cipher),
97
102
  nonce,
98
103
  envelope: new HashedKeyEnvelope({
99
- hash: await sha256(keys),
104
+ hash: await (symmetricKeyHash ?? sha256(keys)),
100
105
  }),
101
106
  };
102
107
  }
@@ -145,7 +150,7 @@ export const createDecrypterFromKeyResolver = (keyResolver) => {
145
150
  if (!epheremalKey) {
146
151
  throw new Error("Failed to resolve ephemeral key");
147
152
  }
148
- return sodium.crypto_secretbox_open_easy(encrypted, nonce, epheremalKey);
153
+ return coerce(sodium.crypto_secretbox_open_easy(encrypted, nonce, epheremalKey));
149
154
  };
150
155
  };
151
156
  const NONCE_LENGTH = 24;
@@ -1 +1 @@
1
- {"version":3,"file":"encryption.js","sourceRoot":"","sources":["../../src/encryption.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAEN,WAAW,EACX,KAAK,EACL,UAAU,EACV,SAAS,EACT,OAAO,EACP,GAAG,GACH,MAAM,gBAAgB,CAAC;AACxB,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9E,cAAc,aAAa,CAAC;AAE5B,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,MAAmB,EAAE,MAAmB,EAAE,EAAE;IAClE,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC;IACd,CAAC;IACD,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACxB,OAAO,KAAK,CAAC;IACd,CAAC;IACD,OAAO,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAChC,CAAC,CAAC;AAoCF,SAAS,+BAA+B,CACvC,UAA8B;IAE9B,OAAO,CACL,UAA4C,CAAC,kBAAkB,IAAI,IAAI,CACxE,CAAC;AACH,CAAC;AACD,SAAS,0BAA0B,CAClC,UAAmD;IAEnD,OAAQ,UAAsC,YAAY,aAAa,CAAC;AACzE,CAAC;AAgBD,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAMzC,IAAO,EACN,EAAE;IACH,OAAO,KAAK,EACX,KAAiB,EACjB,UAAsB,EAC2C,EAAE;QACnE,MAAM,KAAK,GAAG,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC,4CAA4C;QACrF,IACC,+BAA+B,CAAC,UAAU,CAAC;YAC3C,0BAA0B,CAAC,IAAI,CAAC,EAC/B,CAAC;YACF,MAAM,YAAY,GAAG,MAAM,CAAC,uBAAuB,EAAE,CAAC;YACtD,MAAM,MAAM,GAAG,MAAM,CAAC,qBAAqB,CAAC,KAAK,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;YACxE,MAAM,EAAE,kBAAkB,EAAE,GAAG,UAAU,CAAC;YAC1C,MAAM,wBAAwB,GAAG,MAAM,OAAO,CAAC,GAAG,CACjD,kBAAkB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC9B,IAAI,GAAG,YAAY,gBAAgB,EAAE,CAAC;oBACrC,OAAO,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAClC,CAAC;gBACD,OAAO,GAAG,CAAC;YACZ,CAAC,CAAC,CACF,CAAC;YAEF,MAAM,EAAE,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC,iBAAiB,EAAE,EAAE;gBAC7D,MAAM,MAAM,GAAG,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC,6CAA6C;gBACvF,OAAO,IAAI,CAAC,CAAC;oBACZ,YAAY,EAAE,IAAI,eAAe,CAAC;wBACjC,MAAM,EAAE,MAAM,CAAC,eAAe,CAC7B,YAAY,EACZ,MAAM,EACN,iBAAiB,CAAC,SAAS,EAC3B,IAAI,CAAC,SAAS,CAAC,SAAS,CACxB;wBACD,KAAK,EAAE,MAAM;qBACb,CAAC;oBACF,iBAAiB;iBACjB,CAAC,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,OAAO;gBACN,MAAM,EAAE,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,8BAA8B;gBAC9D,KAAK;gBACL,QAAQ,EAAE,IAAI,iBAAiB,CAAC;oBAC/B,eAAe,EAAE,IAAI,CAAC,SAAS;oBAC/B,EAAE;iBACF,CAAsC;aACvC,CAAC;QACH,CAAC;aAAM,IACN,CAAC,+BAA+B,CAAC,UAAU,CAAC;YAC5C,CAAC,0BAA0B,CAAC,IAAI,CAAC,EAChC,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,CAAC,qBAAqB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YAChE,OAAO;gBACN,MAAM,EAAE,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,8BAA8B;gBAC9D,KAAK;gBACL,QAAQ,EAAE,IAAI,iBAAiB,CAAC;oBAC/B,IAAI,EAAE,MAAM,MAAM,CAAC,IAAI,CAAC;iBACxB,CAAsC;aACvC,CAAC;QACH,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACrD,CAAC,CAAC;AACH,CAAC,CAAC;AAcF,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAC7C,WAAwB,EACN,EAAE;IACpB,OAAO,KAAK,EACX,SAAqB,EACrB,KAAiB,EACjB,QAAkB,EACI,EAAE;QACxB,4CAA4C;QAE5C,IAAI,YAAoC,CAAC;QAEzC,IAAI,QAAQ,YAAY,iBAAiB,EAAE,CAAC;YAC3C,IAAI,GAA0D,CAAC;YAC/D,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC;gBAC7C,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC;gBACzD,IAAI,QAAQ,EAAE,CAAC;oBACd,GAAG,GAAG;wBACL,KAAK,EAAE,CAAC;wBACR,OAAO,EAAE,QAAQ;qBACjB,CAAC;oBACF,MAAM;gBACP,CAAC;YACF,CAAC;YAED,IAAI,GAAG,EAAE,CAAC;gBACT,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAClC,IAAI,SAAS,GAAoB,SAAgB,CAAC;gBAClD,IAAI,GAAG,CAAC,OAAO,YAAY,aAAa,EAAE,CAAC;oBAC1C,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC;gBACnC,CAAC;qBAAM,CAAC;oBACP,SAAS,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACrD,CAAC;gBACD,IAAI,CAAC;oBACJ,YAAY,GAAG,MAAM,CAAC,oBAAoB,CACzC,CAAC,CAAC,aAAa,CAAC,MAAM,EACtB,CAAC,CAAC,aAAa,CAAC,KAAK,EACrB,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EACnC,SAAS,CAAC,SAAS,CACnB,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAChB,MAAM,IAAI,WAAW,CAAC,mBAAmB,CAAC,CAAC;gBAC5C,CAAC;YACF,CAAC;iBAAM,CAAC;gBACP,MAAM,IAAI,WAAW,CAAC,kCAAkC,CAAC,CAAC;YAC3D,CAAC;QACF,CAAC;aAAM,IAAI,QAAQ,YAAY,iBAAiB,EAAE,CAAC;YAClD,YAAY,GAAG,MAAM,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,CAAC,YAAY,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACpD,CAAC;QAED,OAAO,MAAM,CAAC,0BAA0B,CAAC,SAAS,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;IAC1E,CAAC,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,EAAE,CAAC;IAGF,cAAc;4BADnC,OAAO,CAAC,CAAC,CAAC;;;;;;;;YACX,6KA+BC;;;YA/BqB,uDAAc;;QACnC;;WAEG;QACH,IAAI,SAAS;YACZ,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;QAClC,CAAC;QAOD,OAAO,CACN,QAAwD;YAExD,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACpC,CAAC;QAED,MAAM,CAAC,KAAwB;YAC9B,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACpC,CAAC;QAED;;WAEG;QACH,KAAK;YACJ,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACpC,CAAC;;;;SA5BoB,cAAc;IAkCvB,cAAc;4BAD1B,OAAO,CAAC,CAAC,CAAC;;;;sBAC4B,cAAc;;;;8BAAtB,SAAQ,WAAiB;;;;iCACtD,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;YAC5B,iKAAA,KAAK,6BAAL,KAAK,qFAAc;YAFpB,6KAuFC;;;YAvFY,uDAAc;;QAE1B,KAAK,wDAAc;QAEnB,YAAY,KAAwC;YACnD,KAAK,EAAE,CAAC;YACR,IAAI,KAAK,EAAE,CAAC;gBACX,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;gBACxB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC;YAC3B,CAAC;QACF,CAAC;QAED,MAAM,qDAAK;QACX,QAAQ,CAAC,KAAsB;YAC9B,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBACjB,OAAO,IAAI,CAAC,MAAM,CAAC;YACpB,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;YACjC,CAAC;YACD,OAAO,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACvC,CAAC;QAYD,KAAK,CAAC,OAAO,CACZ,OAA4C,EAC5C,UAAuE;YAEvE,IAAI,QAA6B,CAAC;YAClC,IAAI,OAA2B,CAAC;YAChC,IAAI,OAAO,YAAY,aAAa,EAAE,CAAC;gBACtC,QAAQ,GAAG,0BAA0B,CAAC,OAAO,CAAC,CAAC;gBAC/C,OAAO,GAAG;oBACT,kBAAkB,EAAE,UAGjB;oBACH,IAAI,EAAE,WAAW;iBACjB,CAAC;YACH,CAAC;iBAAM,CAAC;gBACP,QAAQ,GAAG,OAAO,CAAC;gBACnB,OAAO,GAAG,UAAgC,CAAC;YAC5C,CAAC;YAED,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;YAC9B,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YACnE,MAAM,GAAG,GAAG,IAAI,cAAc,CAAgC;gBAC7D,SAAS,EAAE,MAAM;gBACjB,QAAQ;gBACR,KAAK;aACL,CAAC,CAAC;YACH,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC;YACtB,OAAO,GAAG,CAAC;QACZ,CAAC;QAED,IAAI,SAAS;YACZ,OAAO,IAAI,CAAC;QACb,CAAC;QAED,OAAO;YACN,OAAO,IAAI,CAAC;QACb,CAAC;QAED,MAAM,CAAC,KAAwB;YAC9B,IAAI,KAAK,YAAY,cAAc,EAAE,CAAC;gBACrC,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;YACxC,CAAC;iBAAM,CAAC;gBACP,OAAO,KAAK,CAAC;YACd,CAAC;QACF,CAAC;QAED,KAAK;YACJ,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QACzB,CAAC;QAED,IAAI,UAAU;YACb,OAAO,IAAI,CAAC,KAAM,CAAC,UAAU,CAAC;QAC/B,CAAC;;;;SAtFW,cAAc;IA0Fd,eAAe;4BAD3B,OAAO,CAAC,CAAC,CAAC;;;;;;;;;;;;;;iCAET,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;kCAG3B,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;YAF5B,iKAAA,KAAK,6BAAL,KAAK,qFAAa;YAGlB,oKAAA,MAAM,6BAAN,MAAM,uFAAa;YALpB,6KAqBC;;;YArBY,uDAAe;;QAE3B,KAAK,wDAAa;QAGlB,MAAM,8GAAa;QAEnB,YAAY,KAAgD;;YAC3D,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;YACzB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;SAC3B;QAED,MAAM,CAAC,KAAsB;YAC5B,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;gBACtC,OAAO,CACN,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CACpE,CAAC;YACH,CAAC;iBAAM,CAAC;gBACP,OAAO,KAAK,CAAC;YACd,CAAC;QACF,CAAC;;;;SApBW,eAAe;IAwBf,CAAC;4BADb,OAAO,CAAC,CAAC,CAAC;;;;;;;;;;;;;;yCAET,KAAK,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;8CAGhC,KAAK,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;YAFjC,yLAAA,aAAa,6BAAb,aAAa,qGAAkB;YAG/B,wMAAA,kBAAkB,6BAAlB,kBAAkB,+GAAkB;YALrC,6KAyBC;;;YAzBY,uDAAC;;QAEb,aAAa,gEAAkB;QAG/B,kBAAkB,kIAAkB;QAEpC,YAAY,KAGX;;YACA,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,YAAY,CAAC;YACxC,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC,iBAAiB,CAAC;SAClD;QAED,MAAM,CAAC,KAAQ;YACd,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC;gBACxB,OAAO,CACN,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC;oBAC9C,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,CACxD,CAAC;YACH,CAAC;iBAAM,CAAC;gBACP,OAAO,KAAK,CAAC;YACd,CAAC;QACF,CAAC;;;;SAxBW,CAAC;AA2Bd,MAAe,QAAQ;CAEtB;IAGK,iBAAiB;4BADtB,OAAO,CAAC,CAAC,CAAC;;;;sBACqB,QAAQ;;;;;;;iCAAhB,SAAQ,WAAQ;;;;4CACtC,KAAK,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;+BAGhC,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAFxB,kMAAA,gBAAgB,6BAAhB,gBAAgB,2GAAkB;YAGlC,2JAAA,GAAG,6BAAH,GAAG,iFAAM;YALV,6KAiCC;;;YAjCK,uDAAiB;;QAEtB,gBAAgB,mEAAkB;QAGlC,GAAG,sHAAM;QAET,YAAY,KAAoD;YAC/D,KAAK,EAAE,CAAC;;YACR,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC,eAAe,CAAC;YAC9C,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,EAAE,CAAC;SACpB;QAED,uDAAuD;QACvD,MAAM,CAAC,KAAwB;YAC9B,IAAI,KAAK,YAAY,iBAAiB,EAAE,CAAC;gBACxC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBAC3D,OAAO,KAAK,CAAC;gBACd,CAAC;gBAED,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,KAAK,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;oBAC1C,OAAO,KAAK,CAAC;gBACd,CAAC;gBACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC1C,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;wBACvC,OAAO,KAAK,CAAC;oBACd,CAAC;gBACF,CAAC;gBACD,OAAO,IAAI,CAAC;YACb,CAAC;iBAAM,CAAC;gBACP,OAAO,KAAK,CAAC;YACd,CAAC;QACF,CAAC;;;;IAII,iBAAiB;4BADtB,OAAO,CAAC,CAAC,CAAC;;;;sBACqB,QAAQ;;;;iCAAhB,SAAQ,WAAQ;;;;gCACtC,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;YACtC,8JAAA,IAAI,6BAAJ,IAAI,mFAAa;YAFlB,6KAqBC;;;YArBK,uDAAiB;;QAEtB,IAAI,uDAAa;QAEjB,gCAAgC;QAChC,YAAY,KAA2B;YACtC,KAAK,EAAE,CAAC;;YACR,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;SACvB;QAED,uDAAuD;QACvD,MAAM,CAAC,KAAwB;YAC9B,IAAI,KAAK,YAAY,iBAAiB,EAAE,CAAC;gBACxC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;oBACpC,OAAO,KAAK,CAAC;gBACd,CAAC;gBACD,OAAO,IAAI,CAAC;YACb,CAAC;iBAAM,CAAC;gBACP,OAAO,KAAK,CAAC;YACd,CAAC;QACF,CAAC;;;;IAIW,cAAc;4BAD1B,OAAO,CAAC,CAAC,CAAC;;;;sBAID,cAAc;;;;;;;;;;8BAAtB,SAAQ,WAAiB;;;;sCACzB,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;kCAG3B,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;wCAG3B,KAAK,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;YAL1B,gLAAA,UAAU,6BAAV,UAAU,+FAAa;YAGvB,oKAAA,MAAM,6BAAN,MAAM,uFAAa;YAGnB,sLAAA,YAAY,6BAAZ,YAAY,mGAAI;YAXjB,6KAgHC;;;YAhHY,uDAAc;;QAK1B,UAAU,6DAAa;QAGvB,MAAM,mHAAa;QAGnB,YAAY,qHAAI;QAEhB,YAAY,KAIX;YACA,KAAK,EAAE,CAAC;YACR,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC;YAClC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC;YAC1B,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,QAAQ,CAAC;QACpC,CAAC;QAED,UAAU,4DAAqB;QAC/B,IAAI,SAAS;YACZ,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CACd,4DAA4D,CAC5D,CAAC;YACH,CAAC;YACD,OAAO,IAAI,CAAC,UAAU,CAAC;QACxB,CAAC;QAOD,KAAK,CAAC,OAAO,CACZ,kBAAkE;YAElE,IAAI,QAAqC,CAAC;YAC1C,IAAI,OAAO,kBAAkB,KAAK,UAAU,EAAE,CAAC;gBAC9C,QAAQ,GAAG,kBAAkB,CAAC;YAC/B,CAAC;iBAAM,IAAI,kBAAkB,YAAY,aAAa,EAAE,CAAC;gBACxD,MAAM,QAAQ,GAAgB,CAAC,GAAG,EAAO,EAAE;oBAC1C,IAAI,GAAG,YAAY,eAAe,EAAE,CAAC;wBACpC,IAAI,GAAG,CAAC,MAAM,CAAC,kBAAkB,CAAC,SAAS,CAAC,EAAE,CAAC;4BAC9C,OAAO,kBAAkB,CAAC;wBAC3B,CAAC;oBACF,CAAC;oBACD,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;gBACpC,CAAC,CAAC;gBACF,QAAQ,GAAG,8BAA8B,CAAC,QAAQ,CAAC,CAAC;YACrD,CAAC;iBAAM,IAAI,kBAAkB,EAAE,CAAC;gBAC/B,QAAQ,GAAG,8BAA8B,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;oBACvD,IAAI,GAAG,YAAY,eAAe,EAAE,CAAC;wBACpC,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;wBAC1D,OAAO,OAAc,CAAC;oBACvB,CAAC;gBACF,CAAC,CAAC,CAAC;YACJ,CAAC;YAED,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACrB,OAAO,IAAI,CAAC,UAAU,CAAC;YACxB,CAAC;YAED,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACf,MAAM,IAAI,WAAW,CAAC,+BAA+B,CAAC,CAAC;YACxD,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,QAAQ,CAC/B,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,YAAY,CACjB,CAAC;YACF,IAAI,SAAS,EAAE,CAAC;gBACf,MAAM,GAAG,GAAG,WAAW,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;gBAEnD,IAAI,CAAC,UAAU,GAAG,GAAwB,CAAC;gBAC3C,OAAO,IAAI,CAAC,UAAU,CAAC;YACxB,CAAC;YAED,MAAM,IAAI,WAAW,CAAC,kCAAkC,CAAC,CAAC;QAC3D,CAAC;QAED,MAAM,CAAC,KAAwB;YAC9B,IAAI,KAAK,YAAY,cAAc,EAAE,CAAC;gBACrC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;oBAChD,OAAO,KAAK,CAAC;gBACd,CAAC;gBACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;oBACxC,OAAO,KAAK,CAAC;gBACd,CAAC;gBAED,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;oBACnD,OAAO,KAAK,CAAC;gBACd,CAAC;gBACD,OAAO,IAAI,CAAC;YACb,CAAC;iBAAM,CAAC;gBACP,OAAO,KAAK,CAAC;YACd,CAAC;QACF,CAAC;QAED,KAAK;YACJ,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC7B,CAAC;QAED,IAAI,UAAU;YACb,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,uDAAuD;QAC3F,CAAC;;;;SA/GW,cAAc"}
1
+ {"version":3,"file":"encryption.js","sourceRoot":"","sources":["../../src/encryption.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAEA,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAE1B,QAAA,MAAM,KAAK,eAAkB,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAEA,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAG7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAE1B,QAAA,MAAM,KAAK,eAAkB,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,CAAC"}
package/dist/src/index.js CHANGED
@@ -1,6 +1,8 @@
1
1
  import libsodium from "libsodium-wrappers";
2
2
  export * from "./key.js";
3
3
  export * from "./ed25519.js";
4
+ // Keep signature helpers on the root entrypoint because downstream packages
5
+ // import verifyPrepared via "@peerbit/crypto".
4
6
  export * from "./signature.js";
5
7
  export * from "./sepc256k1.js";
6
8
  export * from "./x25519.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAE3C,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAE1B,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAE3C,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,4EAA4E;AAC5E,+CAA+C;AAC/C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAE1B,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,CAAC"}
@@ -41,4 +41,5 @@ export declare class Secp256k1Keypair extends Keypair implements Identity {
41
41
  }
42
42
  export declare const recoverPublicKeyFromSignature: (digest: Uint8Array, signature: SignatureLike) => Uint8Array;
43
43
  export declare const verifySignatureSecp256k1: (signature: SignatureWithKey, data: Uint8Array) => Promise<boolean>;
44
+ export declare const verifySignatureSecp256k1Prepared: (signature: SignatureWithKey, preparedData: Uint8Array) => Promise<boolean>;
44
45
  //# sourceMappingURL=sepc256k1.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sepc256k1.d.ts","sourceRoot":"","sources":["../../src/sepc256k1.ts"],"names":[],"mappings":"AACA,OAAO,EACN,KAAK,aAAa,EAIlB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAKhD,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAClE,OAAO,EAAE,OAAO,EAAa,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,aAAa,CAAC;AAM5C,qBACa,kBAAmB,SAAQ,aAAa;IAEpD,SAAS,EAAE,UAAU,CAAC;gBAEV,UAAU,EAAE;QAAE,SAAS,EAAE,UAAU,CAAA;KAAE;WAQpC,OAAO,CAAC,MAAM,EAAE;QAC5B,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;KACpE;IAcD,MAAM,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO;IAOrC,QAAQ,IAAI,MAAM;IAIlB,QAAQ,IAAI,MAAM;IAIlB,MAAM,CAAC,UAAU,CAAC,EAAE,EAAE,MAAM;CAW5B;AAED,qBACa,mBAAoB,SAAQ,cAAc;IAEtD,UAAU,EAAE,UAAU,CAAC;gBAEX,UAAU,EAAE;QAAE,UAAU,EAAE,UAAU,CAAA;KAAE;IASlD,MAAM,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO;IAO3C,QAAQ,IAAI,MAAM;CAGlB;AAED,qBACa,gBAAiB,SAAQ,OAAQ,YAAW,QAAQ;IAEhE,SAAS,EAAE,kBAAkB,CAAC;IAG9B,UAAU,EAAE,mBAAmB,CAAC;IAEhC,OAAO,EAAG,MAAM,CAAC;gBACL,UAAU,EAAE;QACvB,SAAS,EAAE,kBAAkB,CAAC;QAC9B,UAAU,EAAE,mBAAmB,CAAC;KAChC;WAMY,MAAM,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAc1C,IAAI,CACT,IAAI,EAAE,UAAU,EAChB,OAAO,GAAE,OAAgC,GACvC,OAAO,CAAC,gBAAgB,CAAC;IAkB5B,MAAM,CAAC,KAAK,EAAE,OAAO;IAUrB,QAAQ,IAAI,MAAM;CAGlB;AAWD,eAAO,MAAM,6BAA6B,GACzC,QAAQ,UAAU,EAClB,WAAW,aAAa,KACtB,UAQF,CAAC;AAEF,eAAO,MAAM,wBAAwB,GACpC,WAAW,gBAAgB,EAC3B,MAAM,UAAU,KACd,OAAO,CAAC,OAAO,CAUjB,CAAC"}
1
+ {"version":3,"file":"sepc256k1.d.ts","sourceRoot":"","sources":["../../src/sepc256k1.ts"],"names":[],"mappings":"AACA,OAAO,EACN,KAAK,aAAa,EAIlB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAKhD,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAClE,OAAO,EAAE,OAAO,EAAa,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,aAAa,CAAC;AAM5C,qBACa,kBAAmB,SAAQ,aAAa;IAEpD,SAAS,EAAE,UAAU,CAAC;gBAEV,UAAU,EAAE;QAAE,SAAS,EAAE,UAAU,CAAA;KAAE;WAQpC,OAAO,CAAC,MAAM,EAAE;QAC5B,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;KACpE;IAcD,MAAM,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO;IAOrC,QAAQ,IAAI,MAAM;IAIlB,QAAQ,IAAI,MAAM;IAIlB,MAAM,CAAC,UAAU,CAAC,EAAE,EAAE,MAAM;CAW5B;AAED,qBACa,mBAAoB,SAAQ,cAAc;IAEtD,UAAU,EAAE,UAAU,CAAC;gBAEX,UAAU,EAAE;QAAE,UAAU,EAAE,UAAU,CAAA;KAAE;IASlD,MAAM,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO;IAO3C,QAAQ,IAAI,MAAM;CAGlB;AAED,qBACa,gBAAiB,SAAQ,OAAQ,YAAW,QAAQ;IAEhE,SAAS,EAAE,kBAAkB,CAAC;IAG9B,UAAU,EAAE,mBAAmB,CAAC;IAEhC,OAAO,EAAG,MAAM,CAAC;gBACL,UAAU,EAAE;QACvB,SAAS,EAAE,kBAAkB,CAAC;QAC9B,UAAU,EAAE,mBAAmB,CAAC;KAChC;WAMY,MAAM,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAc1C,IAAI,CACT,IAAI,EAAE,UAAU,EAChB,OAAO,GAAE,OAAgC,GACvC,OAAO,CAAC,gBAAgB,CAAC;IAkB5B,MAAM,CAAC,KAAK,EAAE,OAAO;IAUrB,QAAQ,IAAI,MAAM;CAGlB;AAWD,eAAO,MAAM,6BAA6B,GACzC,QAAQ,UAAU,EAClB,WAAW,aAAa,KACtB,UAQF,CAAC;AAEF,eAAO,MAAM,wBAAwB,GACpC,WAAW,gBAAgB,EAC3B,MAAM,UAAU,KACd,OAAO,CAAC,OAAO,CAGjB,CAAC;AAEF,eAAO,MAAM,gCAAgC,GAC5C,WAAW,gBAAgB,EAC3B,cAAc,UAAU,KACtB,OAAO,CAAC,OAAO,CAWjB,CAAC"}
@@ -242,7 +242,10 @@ export const recoverPublicKeyFromSignature = (digest, signature) => {
242
242
  };
243
243
  export const verifySignatureSecp256k1 = async (signature, data) => {
244
244
  const hashedData = await prehashFn(data, signature.prehash);
245
- const signerKey = recoverPublicKeyFromSignature(arrayify(hashedData), decoder.decode(signature.signature));
246
- return equals(signerKey, signature.publicKey.publicKey);
245
+ return verifySignatureSecp256k1Prepared(signature, hashedData);
246
+ };
247
+ export const verifySignatureSecp256k1Prepared = (signature, preparedData) => {
248
+ const signerKey = recoverPublicKeyFromSignature(arrayify(preparedData), decoder.decode(signature.signature));
249
+ return Promise.resolve(equals(signerKey, signature.publicKey.publicKey));
247
250
  };
248
251
  //# sourceMappingURL=sepc256k1.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sepc256k1.js","sourceRoot":"","sources":["../../src/sepc256k1.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sepc256k1.js","sourceRoot":"","sources":["../../src/sepc256k1.ts"],"names":[],"mappings":"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"}
@@ -28,4 +28,5 @@ export declare class MaybeSigned<T> {
28
28
  sign(signer: SignWithKey): Promise<MaybeSigned<T>>;
29
29
  }
30
30
  export declare const verify: (signature: SignatureWithKey, data: Uint8Array) => Promise<boolean>;
31
+ export declare const verifyPrepared: (signature: SignatureWithKey, preparedData: Uint8Array) => Promise<boolean>;
31
32
  //# sourceMappingURL=signature.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"signature.d.ts","sourceRoot":"","sources":["../../src/signature.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,YAAY,EAMjB,MAAM,gBAAgB,CAAC;AAIxB,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,qBACa,gBAAgB;IAE5B,SAAS,EAAE,UAAU,CAAC;IAGtB,SAAS,EAAE,aAAa,CAAC;IAGzB,OAAO,EAAE,OAAO,CAAgB;gBAEpB,KAAK,EAAE;QAClB,SAAS,EAAE,UAAU,CAAC;QACtB,SAAS,EAAE,aAAa,CAAC;QACzB,OAAO,EAAE,OAAO,CAAC;KACjB;IAMD,MAAM,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO;CASxC;AAED,qBACa,WAAW,CAAC,CAAC;IAEzB,IAAI,EAAE,UAAU,CAAC;IAGjB,SAAS,CAAC,EAAE,gBAAgB,CAAC;gBAEjB,KAAK,EAAE;QAClB,IAAI,EAAE,UAAU,CAAC;QACjB,KAAK,CAAC,EAAE,CAAC,CAAC;QACV,SAAS,CAAC,EAAE,gBAAgB,CAAC;KAC7B;IAMD,MAAM,CAAC,EAAE,CAAC,CAAC;IAEX,QAAQ,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC;IAInC,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAOhC,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,OAAO;IAgBhC,IAAI,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CAKxD;AAED,eAAO,MAAM,MAAM,GAAU,WAAW,gBAAgB,EAAE,MAAM,UAAU,qBAOzE,CAAC"}
1
+ {"version":3,"file":"signature.d.ts","sourceRoot":"","sources":["../../src/signature.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,YAAY,EAMjB,MAAM,gBAAgB,CAAC;AAMxB,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,OAAO,EAAa,MAAM,cAAc,CAAC;AAKlD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,qBACa,gBAAgB;IAE5B,SAAS,EAAE,UAAU,CAAC;IAGtB,SAAS,EAAE,aAAa,CAAC;IAGzB,OAAO,EAAE,OAAO,CAAgB;gBAEpB,KAAK,EAAE;QAClB,SAAS,EAAE,UAAU,CAAC;QACtB,SAAS,EAAE,aAAa,CAAC;QACzB,OAAO,EAAE,OAAO,CAAC;KACjB;IAMD,MAAM,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO;CASxC;AAED,qBACa,WAAW,CAAC,CAAC;IAEzB,IAAI,EAAE,UAAU,CAAC;IAGjB,SAAS,CAAC,EAAE,gBAAgB,CAAC;gBAEjB,KAAK,EAAE;QAClB,IAAI,EAAE,UAAU,CAAC;QACjB,KAAK,CAAC,EAAE,CAAC,CAAC;QACV,SAAS,CAAC,EAAE,gBAAgB,CAAC;KAC7B;IAMD,MAAM,CAAC,EAAE,CAAC,CAAC;IAEX,QAAQ,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC;IAInC,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAOhC,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,OAAO;IAgBhC,IAAI,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CAKxD;AAED,eAAO,MAAM,MAAM,GAAU,WAAW,gBAAgB,EAAE,MAAM,UAAU,qBAGzE,CAAC;AAEF,eAAO,MAAM,cAAc,GAC1B,WAAW,gBAAgB,EAC3B,cAAc,UAAU,qBAQxB,CAAC"}
@@ -34,11 +34,11 @@ var __runInitializers = (this && this.__runInitializers) || function (thisArg, i
34
34
  };
35
35
  import { deserialize, field, option, serialize, variant, } from "@dao-xyz/borsh";
36
36
  import { compare, equals } from "uint8arrays";
37
- import { verifySignatureEd25519 } from "./ed25519-sign.js";
37
+ import { verifySignatureEd25519Prepared, } from "./ed25519-sign.js";
38
38
  import { Ed25519PublicKey } from "./ed25519.js";
39
39
  import { PublicSignKey } from "./key.js";
40
- import { PreHash } from "./prehash.js";
41
- import { Secp256k1PublicKey, verifySignatureSecp256k1 } from "./sepc256k1.js";
40
+ import { PreHash, prehashFn } from "./prehash.js";
41
+ import { Secp256k1PublicKey, verifySignatureSecp256k1Prepared, } from "./sepc256k1.js";
42
42
  import {} from "./signer.js";
43
43
  let SignatureWithKey = (() => {
44
44
  let _classDecorators = [variant(0)];
@@ -155,11 +155,15 @@ let MaybeSigned = (() => {
155
155
  })();
156
156
  export { MaybeSigned };
157
157
  export const verify = async (signature, data) => {
158
+ const preparedData = await prehashFn(data, signature.prehash);
159
+ return verifyPrepared(signature, preparedData);
160
+ };
161
+ export const verifyPrepared = async (signature, preparedData) => {
158
162
  if (signature.publicKey instanceof Ed25519PublicKey) {
159
- return verifySignatureEd25519(signature, data);
163
+ return verifySignatureEd25519Prepared(signature, preparedData);
160
164
  }
161
165
  else if (signature.publicKey instanceof Secp256k1PublicKey) {
162
- return verifySignatureSecp256k1(signature, data);
166
+ return verifySignatureSecp256k1Prepared(signature, preparedData);
163
167
  }
164
168
  return false;
165
169
  };
@@ -1 +1 @@
1
- {"version":3,"file":"signature.js","sourceRoot":"","sources":["../../src/signature.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"signature.js","sourceRoot":"","sources":["../../src/signature.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@peerbit/crypto",
3
- "version": "3.0.0-e6ea5c0",
3
+ "version": "3.0.1",
4
4
  "description": "Crypto fn",
5
5
  "sideEffects": false,
6
6
  "type": "module",
@@ -62,7 +62,6 @@
62
62
  "multiformats": "^13.4.1"
63
63
  },
64
64
  "dependencies": {
65
- "@peerbit/cache": "3.0.0-e6ea5c0",
66
65
  "@dao-xyz/borsh": "^6.0.0",
67
66
  "@stablelib/sha256": "^2.0.1",
68
67
  "@ethersproject/wallet": "^5.8.0",
@@ -74,12 +73,14 @@
74
73
  "@protobufjs/utf8": "^1.1.0",
75
74
  "js-sha3": "^0.9.3",
76
75
  "elliptic": "^6.6.1",
77
- "libsodium-wrappers": "0.7.15"
76
+ "libsodium-wrappers": "0.7.15",
77
+ "@peerbit/cache": "3.0.0"
78
78
  },
79
79
  "scripts": {
80
80
  "clean": "aegir clean",
81
81
  "build": "aegir build --no-bundle",
82
82
  "test": "aegir test",
83
- "lint": "aegir lint"
83
+ "lint": "aegir lint",
84
+ "test:cov": "aegir test -t node --cov"
84
85
  }
85
86
  }
@@ -29,15 +29,19 @@ export const verifySignatureEd25519 = async (
29
29
  let res = false;
30
30
  try {
31
31
  const hashedData = await prehashFn(data, signature.prehash);
32
-
33
- const verified = sodium.crypto_sign_verify_detached(
34
- signature.signature,
35
- hashedData,
36
- (signature.publicKey as Ed25519PublicKey).publicKey,
37
- );
38
- res = verified;
32
+ res = verifySignatureEd25519Prepared(signature, hashedData);
39
33
  } catch (error) {
40
34
  return false;
41
35
  }
42
36
  return res;
43
37
  };
38
+
39
+ export const verifySignatureEd25519Prepared = (
40
+ signature: SignatureWithKey,
41
+ preparedData: Uint8Array,
42
+ ) =>
43
+ sodium.crypto_sign_verify_detached(
44
+ signature.signature,
45
+ preparedData,
46
+ (signature.publicKey as Ed25519PublicKey).publicKey,
47
+ );
@@ -32,20 +32,23 @@ export const verifySignatureEd25519 = async (
32
32
  let res = false;
33
33
  try {
34
34
  const hashedData = await prehashFn(data, signature.prehash);
35
-
36
- /* return crypto.verify(null, hashedData, publicKey.keyObject, signature); */ // Sodium seems faster
37
- const verified = sodium.crypto_sign_verify_detached(
38
- signature.signature,
39
- hashedData,
40
- (signature.publicKey as Ed25519PublicKey).publicKey,
41
- );
42
- res = verified;
35
+ res = verifySignatureEd25519Prepared(signature, hashedData);
43
36
  } catch (error) {
44
37
  return false;
45
38
  }
46
39
  return res;
47
40
  };
48
41
 
42
+ export const verifySignatureEd25519Prepared = (
43
+ signature: SignatureWithKey,
44
+ preparedData: Uint8Array,
45
+ ) =>
46
+ sodium.crypto_sign_verify_detached(
47
+ signature.signature,
48
+ preparedData,
49
+ (signature.publicKey as Ed25519PublicKey).publicKey,
50
+ );
51
+
49
52
  const DER_PREFIX = Buffer.from([
50
53
  48, 46, 2, 1, 0, 48, 5, 6, 3, 43, 101, 112, 4, 34, 4, 32,
51
54
  ]);
package/src/encryption.ts CHANGED
@@ -9,6 +9,7 @@ import {
9
9
  } from "@dao-xyz/borsh";
10
10
  import sodium from "libsodium-wrappers";
11
11
  import { equals as uequals } from "uint8arrays";
12
+ import { coerce } from "./bytes.js";
12
13
  import { Ed25519PublicKey } from "./ed25519.js";
13
14
  import { AccessError } from "./errors.js";
14
15
  import { sha256 } from "./hash.js";
@@ -96,6 +97,11 @@ export const createLocalEncryptProvider = <
96
97
  >(
97
98
  keys: K,
98
99
  ) => {
100
+ let symmetricKeyHash: Promise<Uint8Array> | undefined;
101
+ if (!isAsymmetricEncryptionKeys(keys)) {
102
+ symmetricKeyHash = sha256(keys);
103
+ }
104
+
99
105
  return async (
100
106
  bytes: Uint8Array,
101
107
  parameters: Parameters,
@@ -134,7 +140,7 @@ export const createLocalEncryptProvider = <
134
140
  });
135
141
 
136
142
  return {
137
- cipher: new Uint8Array(cipher), // TODO do we need this clone?
143
+ cipher: coerce(cipher),
138
144
  nonce,
139
145
  envelope: new PublicKeyEnvelope({
140
146
  senderPublicKey: keys.publicKey,
@@ -147,10 +153,10 @@ export const createLocalEncryptProvider = <
147
153
  ) {
148
154
  const cipher = sodium.crypto_secretbox_easy(bytes, nonce, keys);
149
155
  return {
150
- cipher: new Uint8Array(cipher), // TODO do we need this clone?
156
+ cipher: coerce(cipher),
151
157
  nonce,
152
158
  envelope: new HashedKeyEnvelope({
153
- hash: await sha256(keys),
159
+ hash: await (symmetricKeyHash ?? sha256(keys)),
154
160
  }) as EnvelopeFromParameter<Parameters>,
155
161
  };
156
162
  }
@@ -225,7 +231,9 @@ export const createDecrypterFromKeyResolver = (
225
231
  throw new Error("Failed to resolve ephemeral key");
226
232
  }
227
233
 
228
- return sodium.crypto_secretbox_open_easy(encrypted, nonce, epheremalKey);
234
+ return coerce(
235
+ sodium.crypto_secretbox_open_easy(encrypted, nonce, epheremalKey),
236
+ );
229
237
  };
230
238
  };
231
239
 
package/src/index.ts CHANGED
@@ -2,6 +2,8 @@ import libsodium from "libsodium-wrappers";
2
2
 
3
3
  export * from "./key.js";
4
4
  export * from "./ed25519.js";
5
+ // Keep signature helpers on the root entrypoint because downstream packages
6
+ // import verifyPrepared via "@peerbit/crypto".
5
7
  export * from "./signature.js";
6
8
  export * from "./sepc256k1.js";
7
9
  export * from "./x25519.js";
package/src/sepc256k1.ts CHANGED
@@ -199,12 +199,21 @@ export const verifySignatureSecp256k1 = async (
199
199
  data: Uint8Array,
200
200
  ): Promise<boolean> => {
201
201
  const hashedData = await prehashFn(data, signature.prehash);
202
+ return verifySignatureSecp256k1Prepared(signature, hashedData);
203
+ };
204
+
205
+ export const verifySignatureSecp256k1Prepared = (
206
+ signature: SignatureWithKey,
207
+ preparedData: Uint8Array,
208
+ ): Promise<boolean> => {
202
209
  const signerKey = recoverPublicKeyFromSignature(
203
- arrayify(hashedData),
210
+ arrayify(preparedData),
204
211
  decoder.decode(signature.signature),
205
212
  );
206
- return equals(
213
+ return Promise.resolve(
214
+ equals(
207
215
  signerKey,
208
216
  (signature.publicKey as Secp256k1PublicKey).publicKey,
217
+ ),
209
218
  );
210
219
  };
package/src/signature.ts CHANGED
@@ -7,11 +7,16 @@ import {
7
7
  variant,
8
8
  } from "@dao-xyz/borsh";
9
9
  import { compare, equals } from "uint8arrays";
10
- import { verifySignatureEd25519 } from "./ed25519-sign.js";
10
+ import {
11
+ verifySignatureEd25519Prepared,
12
+ } from "./ed25519-sign.js";
11
13
  import { Ed25519PublicKey } from "./ed25519.js";
12
14
  import { PublicSignKey } from "./key.js";
13
- import { PreHash } from "./prehash.js";
14
- import { Secp256k1PublicKey, verifySignatureSecp256k1 } from "./sepc256k1.js";
15
+ import { PreHash, prehashFn } from "./prehash.js";
16
+ import {
17
+ Secp256k1PublicKey,
18
+ verifySignatureSecp256k1Prepared,
19
+ } from "./sepc256k1.js";
15
20
  import { type SignWithKey } from "./signer.js";
16
21
 
17
22
  @variant(0)
@@ -101,10 +106,18 @@ export class MaybeSigned<T> {
101
106
  }
102
107
 
103
108
  export const verify = async (signature: SignatureWithKey, data: Uint8Array) => {
109
+ const preparedData = await prehashFn(data, signature.prehash);
110
+ return verifyPrepared(signature, preparedData);
111
+ };
112
+
113
+ export const verifyPrepared = async (
114
+ signature: SignatureWithKey,
115
+ preparedData: Uint8Array,
116
+ ) => {
104
117
  if (signature.publicKey instanceof Ed25519PublicKey) {
105
- return verifySignatureEd25519(signature, data);
118
+ return verifySignatureEd25519Prepared(signature, preparedData);
106
119
  } else if (signature.publicKey instanceof Secp256k1PublicKey) {
107
- return verifySignatureSecp256k1(signature, data);
120
+ return verifySignatureSecp256k1Prepared(signature, preparedData);
108
121
  }
109
122
  return false;
110
123
  };