@peerbit/crypto 2.1.7 → 2.2.0-0691c73

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 (114) hide show
  1. package/dist/benchmark/hash.d.ts +2 -0
  2. package/dist/benchmark/hash.d.ts.map +1 -0
  3. package/dist/benchmark/hash.js +69 -0
  4. package/dist/benchmark/hash.js.map +1 -0
  5. package/dist/benchmark/index.d.ts +2 -0
  6. package/dist/benchmark/index.d.ts.map +1 -0
  7. package/dist/benchmark/index.js +64 -0
  8. package/dist/benchmark/index.js.map +1 -0
  9. package/dist/benchmark/peer-ids.d.ts +2 -0
  10. package/dist/benchmark/peer-ids.d.ts.map +1 -0
  11. package/dist/benchmark/peer-ids.js +29 -0
  12. package/dist/benchmark/peer-ids.js.map +1 -0
  13. package/{lib/esm → dist/src}/bytes.d.ts +1 -0
  14. package/dist/src/bytes.d.ts.map +1 -0
  15. package/{lib/esm → dist/src}/bytes.js.map +1 -1
  16. package/{lib/esm/ed25519-sign-browser.d.ts → dist/src/ed25519-sign.browser.d.ts} +1 -0
  17. package/dist/src/ed25519-sign.browser.d.ts.map +1 -0
  18. package/{lib/esm/ed25519-sign-browser.js → dist/src/ed25519-sign.browser.js} +3 -2
  19. package/dist/src/ed25519-sign.browser.js.map +1 -0
  20. package/{lib/esm → dist/src}/ed25519-sign.d.ts +1 -0
  21. package/dist/src/ed25519-sign.d.ts.map +1 -0
  22. package/{lib/esm → dist/src}/ed25519-sign.js +2 -1
  23. package/dist/src/ed25519-sign.js.map +1 -0
  24. package/{lib/esm → dist/src}/ed25519.d.ts +2 -1
  25. package/dist/src/ed25519.d.ts.map +1 -0
  26. package/{lib/esm → dist/src}/ed25519.js +3 -1
  27. package/dist/src/ed25519.js.map +1 -0
  28. package/{lib/esm → dist/src}/encryption.d.ts +4 -2
  29. package/dist/src/encryption.d.ts.map +1 -0
  30. package/{lib/esm → dist/src}/encryption.js +9 -1
  31. package/dist/src/encryption.js.map +1 -0
  32. package/{lib/esm → dist/src}/errors.d.ts +1 -0
  33. package/dist/src/errors.d.ts.map +1 -0
  34. package/{lib/esm/hash-browser.d.ts → dist/src/hash.browser.d.ts} +1 -0
  35. package/dist/src/hash.browser.d.ts.map +1 -0
  36. package/{lib/esm/hash-browser.js → dist/src/hash.browser.js} +2 -2
  37. package/{lib/esm/hash-browser.js.map → dist/src/hash.browser.js.map} +1 -1
  38. package/{lib/esm → dist/src}/hash.d.ts +1 -0
  39. package/dist/src/hash.d.ts.map +1 -0
  40. package/{lib/esm → dist/src}/index.d.ts +2 -1
  41. package/dist/src/index.d.ts.map +1 -0
  42. package/{lib/esm → dist/src}/index.js +1 -1
  43. package/{lib/esm → dist/src}/key.d.ts +3 -1
  44. package/dist/src/key.d.ts.map +1 -0
  45. package/{lib/esm → dist/src}/key.js +5 -1
  46. package/dist/src/key.js.map +1 -0
  47. package/{lib/esm/libp2p.d.ts → dist/src/peerid.d.ts} +2 -1
  48. package/dist/src/peerid.d.ts.map +1 -0
  49. package/{lib/esm/libp2p.js → dist/src/peerid.js} +3 -2
  50. package/dist/src/peerid.js.map +1 -0
  51. package/{lib/esm → dist/src}/prehash.d.ts +1 -0
  52. package/dist/src/prehash.d.ts.map +1 -0
  53. package/{lib/esm/random-browser.d.ts → dist/src/random.browser.d.ts} +1 -0
  54. package/dist/src/random.browser.d.ts.map +1 -0
  55. package/{lib/esm/random-browser.js → dist/src/random.browser.js} +1 -1
  56. package/dist/src/random.browser.js.map +1 -0
  57. package/{lib/esm → dist/src}/random.d.ts +1 -0
  58. package/dist/src/random.d.ts.map +1 -0
  59. package/{lib/esm → dist/src}/sepc256k1.d.ts +6 -4
  60. package/dist/src/sepc256k1.d.ts.map +1 -0
  61. package/{lib/esm → dist/src}/sepc256k1.js +8 -3
  62. package/dist/src/sepc256k1.js.map +1 -0
  63. package/{lib/esm → dist/src}/signature.d.ts +3 -2
  64. package/dist/src/signature.d.ts.map +1 -0
  65. package/{lib/esm → dist/src}/signature.js +3 -2
  66. package/dist/src/signature.js.map +1 -0
  67. package/{lib/esm → dist/src}/signer.d.ts +1 -0
  68. package/dist/src/signer.d.ts.map +1 -0
  69. package/dist/src/signer.js +4 -0
  70. package/dist/src/signer.js.map +1 -0
  71. package/{lib/esm → dist/src}/utils.d.ts +1 -0
  72. package/dist/src/utils.d.ts.map +1 -0
  73. package/{lib/esm → dist/src}/x25519.d.ts +2 -1
  74. package/dist/src/x25519.d.ts.map +1 -0
  75. package/{lib/esm → dist/src}/x25519.js +2 -1
  76. package/dist/src/x25519.js.map +1 -0
  77. package/package.json +75 -54
  78. package/src/bytes.ts +1 -1
  79. package/src/ed25519.ts +2 -2
  80. package/src/encryption.ts +16 -6
  81. package/src/{hash-browser.ts → hash.browser.ts} +1 -1
  82. package/src/index.ts +1 -1
  83. package/src/key.ts +12 -8
  84. package/src/{libp2p.ts → peerid.ts} +2 -2
  85. package/src/sepc256k1.ts +13 -7
  86. package/src/signature.ts +5 -5
  87. package/src/x25519.ts +3 -4
  88. package/LICENSE +0 -202
  89. package/lib/esm/ed25519-sign-browser.js.map +0 -1
  90. package/lib/esm/ed25519-sign.js.map +0 -1
  91. package/lib/esm/ed25519.js.map +0 -1
  92. package/lib/esm/encryption.js.map +0 -1
  93. package/lib/esm/key.js.map +0 -1
  94. package/lib/esm/libp2p.js.map +0 -1
  95. package/lib/esm/random-browser.js.map +0 -1
  96. package/lib/esm/sepc256k1.js.map +0 -1
  97. package/lib/esm/signature.js.map +0 -1
  98. package/lib/esm/signer.js +0 -2
  99. package/lib/esm/signer.js.map +0 -1
  100. package/lib/esm/x25519.js.map +0 -1
  101. /package/{lib/esm → dist/src}/bytes.js +0 -0
  102. /package/{lib/esm → dist/src}/errors.js +0 -0
  103. /package/{lib/esm → dist/src}/errors.js.map +0 -0
  104. /package/{lib/esm → dist/src}/hash.js +0 -0
  105. /package/{lib/esm → dist/src}/hash.js.map +0 -0
  106. /package/{lib/esm → dist/src}/index.js.map +0 -0
  107. /package/{lib/esm → dist/src}/prehash.js +0 -0
  108. /package/{lib/esm → dist/src}/prehash.js.map +0 -0
  109. /package/{lib/esm → dist/src}/random.js +0 -0
  110. /package/{lib/esm → dist/src}/random.js.map +0 -0
  111. /package/{lib/esm → dist/src}/utils.js +0 -0
  112. /package/{lib/esm → dist/src}/utils.js.map +0 -0
  113. /package/src/{ed25519-sign-browser.ts → ed25519-sign.browser.ts} +0 -0
  114. /package/src/{random-browser.ts → random.browser.ts} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"random.browser.js","sourceRoot":"","sources":["../../src/random.browser.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,EAAE,CAC1C,UAAU,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC"}
@@ -1,2 +1,3 @@
1
1
  /// <reference types="node" />
2
2
  export declare const randomBytes: (len: number) => Buffer;
3
+ //# sourceMappingURL=random.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"random.d.ts","sourceRoot":"","sources":["../../src/random.ts"],"names":[],"mappings":";AACA,eAAO,MAAM,WAAW,QAAS,MAAM,WAA4B,CAAC"}
@@ -1,8 +1,8 @@
1
1
  import { Keypair, PrivateSignKey, PublicSignKey } from "./key.js";
2
2
  import { Wallet } from "@ethersproject/wallet";
3
- import { SignatureLike } from "@ethersproject/bytes";
4
- import { PeerId } from "@libp2p/interface";
5
- import { Identity } from "./signer.js";
3
+ import { type SignatureLike } from "@ethersproject/bytes";
4
+ import { type PeerId } from "@libp2p/interface";
5
+ import { type Identity } from "./signer.js";
6
6
  import { SignatureWithKey } from "./signature.js";
7
7
  import { PreHash } from "./prehash.js";
8
8
  export declare class Secp256k1PublicKey extends PublicSignKey {
@@ -15,7 +15,8 @@ export declare class Secp256k1PublicKey extends PublicSignKey {
15
15
  }): Promise<Secp256k1PublicKey>;
16
16
  equals(other: PublicSignKey): boolean;
17
17
  toString(): string;
18
- static from(id: PeerId): Secp256k1PublicKey;
18
+ toPeerId(): Promise<PeerId>;
19
+ static fromPeerId(id: PeerId): Secp256k1PublicKey;
19
20
  }
20
21
  export declare class Secp256k1PrivateKey extends PrivateSignKey {
21
22
  privateKey: Uint8Array;
@@ -42,3 +43,4 @@ export declare class Secp256k1Keypair extends Keypair implements Identity {
42
43
  }
43
44
  export declare const recoverPublicKeyFromSignature: (digest: Uint8Array, signature: SignatureLike) => Uint8Array;
44
45
  export declare const verifySignatureSecp256k1: (signature: SignatureWithKey, data: Uint8Array) => Promise<boolean>;
46
+ //# sourceMappingURL=sepc256k1.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sepc256k1.d.ts","sourceRoot":"","sources":["../../src/sepc256k1.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAElE,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAG/C,OAAO,EAAE,KAAK,aAAa,EAAkB,MAAM,sBAAsB,CAAC;AAO1E,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,aAAa,CAAC;AAI5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAa,MAAM,cAAc,CAAC;AAGlD,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,OAAO,CAAC,MAAM,CAAC;IAM3B,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;IAIlB,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM;CAWtB;AAED,qBACa,gBAAiB,SAAQ,OAAQ,YAAW,QAAQ;IAEhE,SAAS,EAAE,kBAAkB,CAAC;IAG9B,UAAU,EAAE,mBAAmB,CAAC;IAEhC,OAAO,EAAE,MAAM,CAAC;gBACJ,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,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM;IAOhC,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC;CAW3B;AAWD,eAAO,MAAM,6BAA6B,WACjC,UAAU,aACP,aAAa,KACtB,UAQF,CAAC;AAEF,eAAO,MAAM,wBAAwB,cACzB,gBAAgB,QACrB,UAAU,KACd,QAAQ,OAAO,CAUjB,CAAC"}
@@ -17,8 +17,10 @@ import { splitSignature } from "@ethersproject/bytes";
17
17
  import _ec from "elliptic";
18
18
  var EC = _ec.ec;
19
19
  let _curve;
20
- import { equals } from "@peerbit/uint8arrays";
20
+ import { equals } from "uint8arrays";
21
21
  import { toHexString } from "./utils.js";
22
+ import {} from "@libp2p/interface";
23
+ import {} from "./signer.js";
22
24
  import { coerce } from "./bytes.js";
23
25
  import { generateKeyPair, supportedKeys } from "@libp2p/crypto/keys";
24
26
  import utf8 from "@protobufjs/utf8";
@@ -51,7 +53,10 @@ let Secp256k1PublicKey = Secp256k1PublicKey_1 = class Secp256k1PublicKey extends
51
53
  toString() {
52
54
  return "sepc256k1/" + toHexString(this.publicKey);
53
55
  }
54
- static from(id) {
56
+ toPeerId() {
57
+ return peerIdFromKeys(new supportedKeys["secp256k1"].Secp256k1PublicKey(this.publicKey).bytes);
58
+ }
59
+ static fromPeerId(id) {
55
60
  if (!id.publicKey) {
56
61
  throw new Error("Missing public key");
57
62
  }
@@ -155,7 +160,7 @@ let Secp256k1Keypair = Secp256k1Keypair_1 = class Secp256k1Keypair extends Keypa
155
160
  static fromPeerId(peerId) {
156
161
  return new Secp256k1Keypair_1({
157
162
  privateKey: Secp256k1PrivateKey.from(peerId),
158
- publicKey: Secp256k1PublicKey.from(peerId)
163
+ publicKey: Secp256k1PublicKey.fromPeerId(peerId)
159
164
  });
160
165
  }
161
166
  toPeerId() {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sepc256k1.js","sourceRoot":"","sources":["../../src/sepc256k1.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAElE,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAsB,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC1E,OAAO,GAAG,MAAM,UAAU,CAAC;AAC3B,IAAO,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC;AACnB,IAAI,MAAU,CAAC;AAEf,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAiB,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,IAAI,MAAM,kBAAkB,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAG1C,IAAM,kBAAkB,0BAAxB,MAAM,kBAAmB,SAAQ,aAAa;IAEpD,SAAS,CAAa;IAEtB,YAAY,UAAqC;QAChD,KAAK,EAAE,CAAC;QACR,IAAI,UAAU,CAAC,SAAS,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;IACvC,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAEpB;QACA,gBAAgB;QAChB,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAEnD,mCAAmC;QACnC,MAAM,SAAS,GAAG,6BAA6B,CAC9C,MAAM,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,EAC/C,SAAS,CACT,CAAC;QAEF,OAAO,IAAI,oBAAkB,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM,CAAC,KAAoB;QAC1B,IAAI,KAAK,YAAY,oBAAkB,EAAE,CAAC;YACzC,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QAChD,CAAC;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IAED,QAAQ;QACP,OAAO,YAAY,GAAG,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACnD,CAAC;IAED,QAAQ;QACP,OAAO,cAAc,CACpB,IAAI,aAAa,CAAC,WAAW,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,CACvE,CAAC;IACH,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,EAAU;QAC3B,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;QACvC,CAAC;QACD,IAAI,EAAE,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAC7B,OAAO,IAAI,oBAAkB,CAAC;gBAC7B,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,8BAA8B;aAC/D,CAAC,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC;CACD,CAAA;AAtDA;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;8BAC3B,UAAU;qDAAC;AAFV,kBAAkB;IAD9B,OAAO,CAAC,CAAC,CAAC;;GACE,kBAAkB,CAwD9B;;AAGM,IAAM,mBAAmB,2BAAzB,MAAM,mBAAoB,SAAQ,cAAc;IAEtD,UAAU,CAAa;IAEvB,YAAY,UAAsC;QACjD,KAAK,EAAE,CAAC;QACR,IAAI,UAAU,CAAC,UAAU,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;YACzC,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;IACzC,CAAC;IAED,MAAM,CAAC,KAA0B;QAChC,IAAI,KAAK,YAAY,qBAAmB,EAAE,CAAC;YAC1C,OAAO,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAClD,CAAC;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IAED,QAAQ;QACP,OAAO,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACrD,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,EAAU;QACrB,IAAI,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC3C,CAAC;QACD,IAAI,EAAE,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAC7B,OAAO,IAAI,qBAAmB,CAAC;gBAC9B,UAAU,EAAE,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aAC3C,CAAC,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC;CACD,CAAA;AAjCA;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;8BAChB,UAAU;uDAAC;AAFX,mBAAmB;IAD/B,OAAO,CAAC,CAAC,CAAC;;GACE,mBAAmB,CAmC/B;;AAGM,IAAM,gBAAgB,wBAAtB,MAAM,gBAAiB,SAAQ,OAAO;IAE5C,SAAS,CAAqB;IAG9B,UAAU,CAAsB;IAEhC,OAAO,CAAS;IAChB,YAAY,UAGX;QACA,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;QACxC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;IACvC,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,MAAM;QAClB,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC,WAAW,CAAC,CAAC;QACrD,MAAM,EAAE,GAAG,IAAI,kBAAgB,CAAC;YAC/B,SAAS,EAAE,IAAI,kBAAkB,CAAC;gBACjC,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE;aACrC,CAAC;YACF,UAAU,EAAE,IAAI,mBAAmB,CAAC;gBACnC,UAAU,EAAE,SAAS,CAAC,OAAO,EAAE;aAC/B,CAAC;SACF,CAAC,CAAC;QAEH,OAAO,EAAE,CAAC;IACX,CAAC;IAED,KAAK,CAAC,IAAI,CACT,IAAgB,EAChB,UAAmB,OAAO,CAAC,cAAc;QAEzC,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAEnD,MAAM,SAAS,GAAG,aAAa,CAC9B,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;aACvE,WAAW,EAAE;aACb,UAAU,CAAC,WAAW,CAAC,CACzB,CAAC;QACF,MAAM,cAAc,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,kCAAkC;QACjG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC;QAEzC,OAAO,IAAI,gBAAgB,CAAC;YAC3B,OAAO;YACP,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,cAAc;SACzB,CAAC,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,KAAc;QACpB,IAAI,KAAK,YAAY,kBAAgB,EAAE,CAAC;YACvC,OAAO,CACN,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;gBACtC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CACxC,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,MAAc;QAC/B,OAAO,IAAI,kBAAgB,CAAC;YAC3B,UAAU,EAAE,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC;YAC5C,SAAS,EAAE,kBAAkB,CAAC,UAAU,CAAC,MAAM,CAAC;SAChD,CAAC,CAAC;IACJ,CAAC;IAED,QAAQ;QACP,OAAO,cAAc,CACpB,IAAI,aAAa,CAAC,WAAW,CAAC,CAAC,kBAAkB,CAChD,IAAI,CAAC,SAAS,CAAC,SAAS,CACxB,CAAC,KAAK,EACP,IAAI,aAAa,CAAC,WAAW,CAAC,CAAC,mBAAmB,CACjD,IAAI,CAAC,UAAU,CAAC,UAAU,EAC1B,IAAI,CAAC,SAAS,CAAC,SAAS,CACxB,CAAC,KAAK,CACP,CAAC;IACH,CAAC;CACD,CAAA;AA9EA;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;8BACzB,kBAAkB;mDAAC;AAG9B;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC;8BACzB,mBAAmB;oDAAC;AALpB,gBAAgB;IAD5B,OAAO,CAAC,CAAC,CAAC;;GACE,gBAAgB,CAgF5B;;AAED,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;AAElC,SAAS,QAAQ;IAChB,IAAI,CAAC,MAAM,EAAE,CAAC;QACb,MAAM,GAAG,IAAI,EAAE,CAAC,WAAW,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC;AAED,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAC5C,MAAkB,EAClB,SAAwB,EACX,EAAE;IACf,MAAM,GAAG,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IACtC,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACtD,OAAO,IAAI,UAAU,CACpB,QAAQ,EAAE;SACR,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,aAAa,CAAC;SACtD,gBAAgB,EAAE,CACpB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,EAC5C,SAA2B,EAC3B,IAAgB,EACG,EAAE;IACrB,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;IAC5D,MAAM,SAAS,GAAG,6BAA6B,CAC9C,QAAQ,CAAC,UAAU,CAAC,EACpB,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CACnC,CAAC;IACF,OAAO,MAAM,CACZ,SAAS,EACR,SAAS,CAAC,SAAgC,CAAC,SAAS,CACrD,CAAC;AACH,CAAC,CAAC"}
@@ -1,7 +1,7 @@
1
- import { AbstractType } from "@dao-xyz/borsh";
1
+ import { type AbstractType } from "@dao-xyz/borsh";
2
2
  import { PublicSignKey } from "./key.js";
3
3
  import { PreHash } from "./prehash.js";
4
- import { SignWithKey } from "./signer.js";
4
+ import { type SignWithKey } from "./signer.js";
5
5
  export declare class SignatureWithKey {
6
6
  signature: Uint8Array;
7
7
  publicKey: PublicSignKey;
@@ -32,3 +32,4 @@ export declare class MaybeSigned<T> {
32
32
  sign(signer: SignWithKey): Promise<MaybeSigned<T>>;
33
33
  }
34
34
  export declare const verify: (signature: SignatureWithKey, data: Uint8Array) => Promise<boolean>;
35
+ //# sourceMappingURL=signature.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signature.d.ts","sourceRoot":"","sources":["../../src/signature.ts"],"names":[],"mappings":"AAAA,OAAO,EAMN,KAAK,YAAY,EACjB,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;IAQD,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,CAAC,EAAE;QACnB,IAAI,EAAE,UAAU,CAAC;QACjB,KAAK,CAAC,EAAE,CAAC,CAAC;QACV,SAAS,CAAC,EAAE,gBAAgB,CAAC;KAC7B;IAQD,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;IAatC;;;OAGG;IACG,IAAI,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CAKxD;AAED,eAAO,MAAM,MAAM,cAAqB,gBAAgB,QAAQ,UAAU,qBAOzE,CAAC"}
@@ -8,12 +8,13 @@ var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
10
  import { deserialize, variant, field, option, serialize } from "@dao-xyz/borsh";
11
- import { equals } from "@peerbit/uint8arrays";
11
+ import { compare, equals } from "uint8arrays";
12
12
  import { verifySignatureEd25519 } from "./ed25519-sign.js";
13
13
  import { Ed25519PublicKey } from "./ed25519.js";
14
14
  import { PublicSignKey } from "./key.js";
15
15
  import { PreHash } from "./prehash.js";
16
16
  import { Secp256k1PublicKey, verifySignatureSecp256k1 } from "./sepc256k1.js";
17
+ import {} from "./signer.js";
17
18
  let SignatureWithKey = class SignatureWithKey {
18
19
  signature;
19
20
  publicKey;
@@ -29,7 +30,7 @@ let SignatureWithKey = class SignatureWithKey {
29
30
  if (!equals(this.signature, other.signature)) {
30
31
  return false;
31
32
  }
32
- return (Buffer.compare(serialize(this.publicKey), serialize(other.publicKey)) ===
33
+ return (compare(serialize(this.publicKey), serialize(other.publicKey)) ===
33
34
  0 && this.prehash == other.prehash);
34
35
  }
35
36
  };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signature.js","sourceRoot":"","sources":["../../src/signature.ts"],"names":[],"mappings":"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"}
@@ -8,3 +8,4 @@ export type SignWithKey = (bytes: Uint8Array) => Promise<SignatureWithKey> | Sig
8
8
  export type Identity<T extends PublicSignKey = PublicSignKey> = Signer & {
9
9
  publicKey: T;
10
10
  };
11
+ //# sourceMappingURL=signer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../src/signer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,MAAM,WAAW,MAAM;IACtB,IAAI,EAAE,CACL,KAAK,EAAE,UAAU,EACjB,OAAO,CAAC,EAAE,OAAO,KACb,OAAO,CAAC,gBAAgB,CAAC,GAAG,gBAAgB,CAAC;CAClD;AAED,MAAM,MAAM,WAAW,GAAG,CACzB,KAAK,EAAE,UAAU,KACb,OAAO,CAAC,gBAAgB,CAAC,GAAG,gBAAgB,CAAC;AAElD,MAAM,MAAM,QAAQ,CAAC,CAAC,SAAS,aAAa,GAAG,aAAa,IAAI,MAAM,GAAG;IACxE,SAAS,EAAE,CAAC,CAAC;CACb,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { PublicSignKey } from "./key.js";
2
+ import { PreHash } from "./prehash.js";
3
+ import { SignatureWithKey } from "./signature.js";
4
+ //# sourceMappingURL=signer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signer.js","sourceRoot":"","sources":["../../src/signer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC"}
@@ -4,3 +4,4 @@ export declare const toBase64: (arr: Uint8Array) => string;
4
4
  export declare const fromBase64: (base64: string) => Uint8Array;
5
5
  export declare const toBase64URL: (arr: Uint8Array) => string;
6
6
  export declare const fromBase64URL: (base64: string) => Uint8Array;
7
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,aAAa,cAAe,MAAM,eAA+B,CAAC;AAE/E,eAAO,MAAM,WAAW,UAAW,UAAU,WAAyB,CAAC;AAEvE,eAAO,MAAM,QAAQ,QAAS,UAAU,WAEvC,CAAC;AACF,eAAO,MAAM,UAAU,WAAY,MAAM,eAExC,CAAC;AAEF,eAAO,MAAM,WAAW,QAAS,UAAU,WAE1C,CAAC;AACF,eAAO,MAAM,aAAa,WAAY,MAAM,eAE3C,CAAC"}
@@ -1,7 +1,7 @@
1
1
  export * from "./errors.js";
2
2
  import { Keypair, PrivateEncryptionKey, PublicKeyEncryptionKey } from "./key.js";
3
3
  import { Ed25519Keypair, Ed25519PublicKey } from "./ed25519.js";
4
- import { PeerId } from "@libp2p/interface";
4
+ import { type PeerId } from "@libp2p/interface";
5
5
  export declare class X25519PublicKey extends PublicKeyEncryptionKey {
6
6
  publicKey: Uint8Array;
7
7
  constructor(properties: {
@@ -36,3 +36,4 @@ export declare class X25519Keypair extends Keypair {
36
36
  static fromPeerId(peerId: PeerId): Promise<X25519Keypair>;
37
37
  equals(other: Keypair): boolean;
38
38
  }
39
+ //# sourceMappingURL=x25519.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"x25519.d.ts","sourceRoot":"","sources":["../../src/x25519.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAI5B,OAAO,EACN,OAAO,EACP,oBAAoB,EACpB,sBAAsB,EACtB,MAAM,UAAU,CAAC;AAClB,OAAO,EACN,cAAc,EACd,gBAAgB,EAChB,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAChD,qBACa,eAAgB,SAAQ,sBAAsB;IAE1D,SAAS,EAAE,UAAU,CAAC;gBAEV,UAAU,EAAE;QAAE,SAAS,EAAE,UAAU,CAAA;KAAE;IAQjD,MAAM,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO;IAM9C,QAAQ,IAAI,MAAM;WAIL,IAAI,CAChB,gBAAgB,EAAE,gBAAgB,GAChC,OAAO,CAAC,eAAe,CAAC;WASd,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;WAMpD,MAAM,IAAI,OAAO,CAAC,eAAe,CAAC;CAM/C;AAED,qBACa,eAAgB,SAAQ,oBAAoB;IAExD,SAAS,EAAE,UAAU,CAAC;gBAEV,UAAU,EAAE;QAAE,SAAS,EAAE,UAAU,CAAA;KAAE;IAQjD,MAAM,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO;IAQ9C,QAAQ,IAAI,MAAM;IAIZ,SAAS,IAAI,OAAO,CAAC,eAAe,CAAC;WAK9B,IAAI,CAAC,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;WAS9D,MAAM,IAAI,OAAO,CAAC,eAAe,CAAC;CAM/C;AAED,qBACa,aAAc,SAAQ,OAAO;IAEzC,SAAS,EAAE,eAAe,CAAC;IAG3B,SAAS,EAAE,eAAe,CAAC;gBAEf,UAAU,EAAE;QACvB,SAAS,EAAE,eAAe,CAAC;QAC3B,SAAS,EAAE,eAAe,CAAC;KAC3B;WAMY,MAAM,IAAI,OAAO,CAAC,aAAa,CAAC;WAehC,IAAI,CAAC,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;IAQzE,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM;IAIhC,MAAM,CAAC,KAAK,EAAE,OAAO;CAWrB"}
@@ -10,11 +10,12 @@ var __metadata = (this && this.__metadata) || function (k, v) {
10
10
  var X25519PublicKey_1, X25519SecretKey_1, X25519Keypair_1;
11
11
  export * from "./errors.js";
12
12
  import { field, fixedArray, variant } from "@dao-xyz/borsh";
13
- import { compare } from "@peerbit/uint8arrays";
13
+ import { compare } from "uint8arrays";
14
14
  import sodium from "libsodium-wrappers";
15
15
  import { Keypair, PrivateEncryptionKey, PublicKeyEncryptionKey } from "./key.js";
16
16
  import { Ed25519Keypair, Ed25519PublicKey } from "./ed25519.js";
17
17
  import { toHexString } from "./utils.js";
18
+ import {} from "@libp2p/interface";
18
19
  let X25519PublicKey = X25519PublicKey_1 = class X25519PublicKey extends PublicKeyEncryptionKey {
19
20
  publicKey;
20
21
  constructor(properties) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"x25519.js","sourceRoot":"","sources":["../../src/x25519.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EACN,OAAO,EACP,oBAAoB,EACpB,sBAAsB,EACtB,MAAM,UAAU,CAAC;AAClB,OAAO,EACN,cAAc,EACd,gBAAgB,EAChB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAe,MAAM,mBAAmB,CAAC;AAEzC,IAAM,eAAe,uBAArB,MAAM,eAAgB,SAAQ,sBAAsB;IAE1D,SAAS,CAAa;IAEtB,YAAY,UAAqC;QAChD,KAAK,EAAE,CAAC;QACR,IAAI,UAAU,CAAC,SAAS,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;IACvC,CAAC;IAED,MAAM,CAAC,KAA6B;QACnC,IAAI,KAAK,YAAY,iBAAe,EAAE,CAAC;YACtC,OAAO,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IACD,QAAQ;QACP,OAAO,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACjD,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,IAAI,CAChB,gBAAkC;QAElC,MAAM,MAAM,CAAC,KAAK,CAAC;QACnB,OAAO,IAAI,iBAAe,CAAC;YAC1B,SAAS,EAAE,MAAM,CAAC,oCAAoC,CACrD,gBAAgB,CAAC,SAAS,CAC1B;SACD,CAAC,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,MAAc;QACrC,MAAM,MAAM,CAAC,KAAK,CAAC;QACnB,MAAM,EAAE,GAAG,MAAM,gBAAgB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACrD,OAAO,iBAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,MAAM;QAClB,MAAM,MAAM,CAAC,KAAK,CAAC;QACnB,OAAO,IAAI,iBAAe,CAAC;YAC1B,SAAS,EAAE,MAAM,CAAC,kBAAkB,EAAE,CAAC,SAAS;SAChD,CAAC,CAAC;IACJ,CAAC;CACD,CAAA;AA3CA;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;8BAC3B,UAAU;kDAAC;AAFV,eAAe;IAD3B,OAAO,CAAC,CAAC,CAAC;;GACE,eAAe,CA6C3B;;AAGM,IAAM,eAAe,uBAArB,MAAM,eAAgB,SAAQ,oBAAoB;IAExD,SAAS,CAAa;IAEtB,YAAY,UAAqC;QAChD,KAAK,EAAE,CAAC;QACR,IAAI,UAAU,CAAC,SAAS,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;IACvC,CAAC;IAED,MAAM,CAAC,KAA6B;QACnC,IAAI,KAAK,YAAY,iBAAe,EAAE,CAAC;YACtC,OAAO,CACN,OAAO,CAAC,IAAI,CAAC,SAAS,EAAG,KAAyB,CAAC,SAAS,CAAC,KAAK,CAAC,CACnE,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IACD,QAAQ;QACP,OAAO,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,SAAS;QACd,OAAO,IAAI,eAAe,CAAC;YAC1B,SAAS,EAAE,MAAM,CAAC,sBAAsB,CAAC,IAAI,CAAC,SAAS,CAAC;SACxD,CAAC,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,cAA8B;QAC/C,MAAM,MAAM,CAAC,KAAK,CAAC;QACnB,OAAO,IAAI,iBAAe,CAAC;YAC1B,SAAS,EAAE,MAAM,CAAC,oCAAoC,CACrD,cAAc,CAAC,mBAAmB,CAClC;SACD,CAAC,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,MAAM;QAClB,MAAM,MAAM,CAAC,KAAK,CAAC;QACnB,OAAO,IAAI,iBAAe,CAAC;YAC1B,SAAS,EAAE,MAAM,CAAC,kBAAkB,EAAE,CAAC,UAAU;SACjD,CAAC,CAAC;IACJ,CAAC;CACD,CAAA;AA1CA;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;8BAC3B,UAAU;kDAAC;AAFV,eAAe;IAD3B,OAAO,CAAC,CAAC,CAAC;;GACE,eAAe,CA4C3B;;AAGM,IAAM,aAAa,qBAAnB,MAAM,aAAc,SAAQ,OAAO;IAEzC,SAAS,CAAkB;IAG3B,SAAS,CAAkB;IAE3B,YAAY,UAGX;QACA,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;QACtC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;IACvC,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,MAAM;QAClB,MAAM,MAAM,CAAC,KAAK,CAAC;QACnB,MAAM,SAAS,GAAG,MAAM,CAAC,kBAAkB,EAAE,CAAC;QAC9C,MAAM,EAAE,GAAG,IAAI,eAAa,CAAC;YAC5B,SAAS,EAAE,IAAI,eAAe,CAAC;gBAC9B,SAAS,EAAE,SAAS,CAAC,SAAS;aAC9B,CAAC;YACF,SAAS,EAAE,IAAI,eAAe,CAAC;gBAC9B,SAAS,EAAE,SAAS,CAAC,UAAU;aAC/B,CAAC;SACF,CAAC,CAAC;QAEH,OAAO,EAAE,CAAC;IACX,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,cAA8B;QAC/C,MAAM,EAAE,GAAG,IAAI,eAAa,CAAC;YAC5B,SAAS,EAAE,MAAM,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC;YAC/D,SAAS,EAAE,MAAM,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC;SACrD,CAAC,CAAC;QACH,OAAO,EAAE,CAAC;IACX,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,MAAc;QAC/B,MAAM,EAAE,GAAG,cAAc,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC7C,OAAO,eAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC;IACD,MAAM,CAAC,KAAc;QACpB,IAAI,KAAK,YAAY,eAAa,EAAE,CAAC;YACpC,OAAO,CACN,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;gBACtC,IAAI,CAAC,SAAS,CAAC,MAAM,CACnB,KAAuB,CAAC,SAAmC,CAC5D,CACD,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACd,CAAC;CACD,CAAA;AApDA;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;8BACtB,eAAe;gDAAC;AAG3B;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;8BACtB,eAAe;gDAAC;AALf,aAAa;IADzB,OAAO,CAAC,CAAC,CAAC;;GACE,aAAa,CAsDzB"}
package/package.json CHANGED
@@ -1,56 +1,77 @@
1
1
  {
2
- "name": "@peerbit/crypto",
3
- "version": "2.1.7",
4
- "description": "Crypto fn",
5
- "type": "module",
6
- "sideEffects": false,
7
- "module": "lib/esm/index.js",
8
- "types": "lib/esm/index.d.ts",
9
- "exports": {
10
- "import": "./lib/esm/index.js"
11
- },
12
- "files": [
13
- "lib",
14
- "src",
15
- "!src/**/__tests__",
16
- "!lib/**/__tests__",
17
- "!src/**/__benchmark__",
18
- "!lib/**/__benchmark__",
19
- "LICENSE"
20
- ],
21
- "publishConfig": {
22
- "access": "public"
23
- },
24
- "browser": {
25
- "./lib/esm/hash.js": "./lib/esm/hash-browser.js",
26
- "./hash.js": "./lib/esm/hash-browser.js",
27
- "./lib/esm/random.js": "./lib/esm/random-browser.js",
28
- "./random.js": "./lib/esm/random-browser.js",
29
- "./lib/esm/ed25519-sign.js": "./lib/esm/ed25519-sign-browser.js",
30
- "./ed25519-sign.js": "./lib/esm/ed25519-sign-browser.js"
31
- },
32
- "scripts": {
33
- "clean": "shx rm -rf lib/*",
34
- "build": "yarn clean && tsc -p tsconfig.json",
35
- "test": "node ../../../node_modules/.bin/jest test -c ../../../jest.config.ts --runInBand --forceExit",
36
- "test:unit": "node ../../../node_modules/.bin/jest test -c ../../../jest.config.unit.ts --runInBand --forceExit",
37
- "test:integration": "node ../node_modules/.bin/jest test -c ../../../jest.config.integration.ts --runInBand --forceExit"
38
- },
39
- "author": "dao.xyz",
40
- "license": "MIT",
41
- "devDependencies": {
42
- "@types/libsodium-wrappers": "^0.7.10",
43
- "uint8arrays": "^4.0.4"
44
- },
45
- "dependencies": {
46
- "@dao-xyz/borsh": "^5.2.1",
47
- "@ethersproject/wallet": "^5.7.0",
48
- "@libp2p/crypto": "^3.0.3",
49
- "@libp2p/peer-id": "^4.0.3",
50
- "@peerbit/cache": "^2.0.6",
51
- "@peerbit/uint8arrays": "3.0.1",
52
- "@stablelib/sha256": "^1.0.1",
53
- "libsodium-wrappers": "^0.7.13"
54
- },
55
- "gitHead": "82d6f528faf0a4e060e400314bc01bc7260c41a5"
2
+ "name": "@peerbit/crypto",
3
+ "version": "2.2.0-0691c73",
4
+ "description": "Crypto fn",
5
+ "sideEffects": false,
6
+ "type": "module",
7
+ "types": "./dist/src/index.d.ts",
8
+ "typesVersions": {
9
+ "*": {
10
+ "*": [
11
+ "*",
12
+ "dist/*",
13
+ "dist/src/*",
14
+ "dist/src/*/index"
15
+ ],
16
+ "src/*": [
17
+ "*",
18
+ "dist/*",
19
+ "dist/src/*",
20
+ "dist/src/*/index"
21
+ ]
22
+ }
23
+ },
24
+ "files": [
25
+ "src",
26
+ "dist",
27
+ "!dist/test",
28
+ "!**/*.tsbuildinfo"
29
+ ],
30
+ "exports": {
31
+ ".": {
32
+ "types": "./dist/src/index.d.ts",
33
+ "import": "./dist/src/index.js"
34
+ }
35
+ },
36
+ "eslintConfig": {
37
+ "extends": "ipfs",
38
+ "parserOptions": {
39
+ "project": true,
40
+ "sourceType": "module"
41
+ },
42
+ "ignorePatterns": [
43
+ "!.aegir.js",
44
+ "test/ts-use",
45
+ "*.d.ts"
46
+ ]
47
+ },
48
+ "publishConfig": {
49
+ "access": "public"
50
+ },
51
+ "browser": {
52
+ "./dist/src/hash.js": "./dist/src/hash.browser.js",
53
+ "./dist/src/random.js": "./dist/src/random.browser.js",
54
+ "./dist/src/ed25519-sign.js": "./dist/src/ed25519-sign.browser.js"
55
+ },
56
+ "scripts": {
57
+ "clean": "aegir clean",
58
+ "build": "aegir build --no-bundle",
59
+ "test": "aegir test"
60
+ },
61
+ "author": "dao.xyz",
62
+ "license": "MIT",
63
+ "devDependencies": {
64
+ "@types/libsodium-wrappers": "^0.7.10",
65
+ "uint8arrays": "^4.0.4",
66
+ "@types/elliptic": "^6.4.18"
67
+ },
68
+ "dependencies": {
69
+ "@peerbit/cache": "2.0.6-0691c73",
70
+ "@dao-xyz/borsh": "^5.2.2",
71
+ "@stablelib/sha256": "^1.0.1",
72
+ "@ethersproject/wallet": "^5.7.0",
73
+ "@libp2p/crypto": "^3.0.3",
74
+ "@libp2p/peer-id": "^4.0.3",
75
+ "libsodium-wrappers": "^0.7.13"
76
+ }
56
77
  }
package/src/bytes.ts CHANGED
@@ -2,7 +2,7 @@
2
2
  * @param {ArrayBufferView|ArrayBuffer|Uint8Array} o
3
3
  * @returns {Uint8Array}
4
4
  */
5
- export const coerce = (o) => {
5
+ export const coerce = (o: any) => {
6
6
  if (o instanceof Uint8Array && o.constructor.name === "Uint8Array") return o;
7
7
  if (o instanceof ArrayBuffer) return new Uint8Array(o);
8
8
  if (ArrayBuffer.isView(o)) {
package/src/ed25519.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { field, fixedArray, variant } from "@dao-xyz/borsh";
2
2
  import { PrivateSignKey, PublicSignKey, Keypair } from "./key.js";
3
- import { equals } from "@peerbit/uint8arrays";
4
- import { Identity, Signer, SignWithKey } from "./signer.js";
3
+ import { equals } from "uint8arrays";
4
+ import { type Identity, type SignWithKey } from "./signer.js";
5
5
  import { SignatureWithKey } from "./signature.js";
6
6
  import { toHexString } from "./utils.js";
7
7
  import { peerIdFromKeys } from "@libp2p/peer-id";
package/src/encryption.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  export * from "./errors.js";
2
2
 
3
3
  import {
4
- AbstractType,
4
+ type AbstractType,
5
5
  deserialize,
6
6
  field,
7
7
  serialize,
@@ -9,13 +9,23 @@ import {
9
9
  vec,
10
10
  fixedArray
11
11
  } from "@dao-xyz/borsh";
12
- import { equals } from "@peerbit/uint8arrays";
13
12
  import { AccessError } from "./errors.js";
14
13
  import sodium from "libsodium-wrappers";
15
14
  import { X25519Keypair, X25519PublicKey, X25519SecretKey } from "./x25519.js";
16
15
  import { Ed25519PublicKey } from "./ed25519.js";
17
16
  import { randomBytes } from "./random.js";
18
17
  import { sha256 } from "./hash.js";
18
+
19
+ import { equals as uequals } from "uint8arrays";
20
+ export const equals = (array1?: Uint8Array, array2?: Uint8Array) => {
21
+ if (!!array1 != !!array2) return false;
22
+ if (!array1 || !array2) {
23
+ return false;
24
+ }
25
+ return uequals(array1, array2);
26
+ };
27
+
28
+
19
29
  export type MaybePromise<T> = Promise<T> | T;
20
30
 
21
31
  export type PublicKeyEncryptionParameters = {
@@ -65,8 +75,8 @@ function isAsymmetricEncryptionKeys(
65
75
 
66
76
  type EnvelopeFromParameter<Parameters extends KeyExchangeOptions> =
67
77
  Parameters extends PublicKeyEncryptionParameters
68
- ? PublicKeyEnvelope
69
- : HashedKeyEnvelope;
78
+ ? PublicKeyEnvelope
79
+ : HashedKeyEnvelope;
70
80
 
71
81
  type EncryptProvide<Parameters extends KeyExchangeOptions> = (
72
82
  bytes: Uint8Array,
@@ -80,8 +90,8 @@ interface KeyProvider {
80
90
  export const createLocalEncryptProvider = <
81
91
  K extends PublicKeyEncryptionKeys | SymmetricKeys,
82
92
  Parameters extends KeyExchangeOptions = K extends PublicKeyEncryptionKeys
83
- ? PublicKeyEncryptionParameters
84
- : SymmetricKeyEncryptionParameters
93
+ ? PublicKeyEncryptionParameters
94
+ : SymmetricKeyEncryptionParameters
85
95
  >(
86
96
  keys: K
87
97
  ) => {
@@ -1,4 +1,4 @@
1
- import { toBase64 } from "./utils";
1
+ import { toBase64 } from "./utils.js";
2
2
  import { SHA256 } from "@stablelib/sha256";
3
3
  export const sha256Base64 = async (bytes: Uint8Array): Promise<string> =>
4
4
  toBase64(await sha256(bytes));
package/src/index.ts CHANGED
@@ -4,7 +4,7 @@ export * from "./signature.js";
4
4
  export * from "./sepc256k1.js";
5
5
  export * from "./x25519.js";
6
6
  export * from "./encryption.js";
7
- export * from "./libp2p.js";
7
+ export * from "./peerid.js";
8
8
  export * from "./utils.js";
9
9
  export * from "./hash.js";
10
10
  export * from "./random.js";
package/src/key.ts CHANGED
@@ -1,7 +1,7 @@
1
- import { BinaryWriter, field, serialize, serializer } from "@dao-xyz/borsh";
1
+ import { field, serialize } from "@dao-xyz/borsh";
2
2
  import { sha256Base64Sync } from "./hash.js";
3
- import { PeerId } from "@libp2p/interface";
4
- import { compare } from "@peerbit/uint8arrays";
3
+ import { type PeerId } from "@libp2p/interface";
4
+ import { compare } from "uint8arrays";
5
5
  import { toHexString } from "./utils.js";
6
6
 
7
7
  interface Key {
@@ -27,7 +27,7 @@ export abstract class Keypair {
27
27
  }
28
28
 
29
29
  // ---- SIGNATURE KEYS -----
30
- export interface PublicSignKey extends Key {}
30
+ export interface PublicSignKey extends Key { }
31
31
  export abstract class PublicSignKey implements Key {
32
32
  private _bytes: Uint8Array;
33
33
  get bytes(): Uint8Array {
@@ -37,9 +37,13 @@ export abstract class PublicSignKey implements Key {
37
37
  hashcode(): string {
38
38
  return this._hashcode || (this._hashcode = sha256Base64Sync(this.bytes));
39
39
  }
40
+
41
+ toPeerId(): Promise<PeerId> {
42
+ throw new Error("Not implemented");
43
+ }
40
44
  }
41
45
 
42
- export interface PrivateSignKey extends Key {}
46
+ export interface PrivateSignKey extends Key { }
43
47
  export abstract class PrivateSignKey implements Key {
44
48
  get bytes(): Uint8Array {
45
49
  return serialize(this);
@@ -51,7 +55,7 @@ export abstract class PrivateSignKey implements Key {
51
55
  }
52
56
 
53
57
  // ---- PUBLIC KEY ENCRYPTION -----
54
- export interface PublicKeyEncryptionKey extends Key {}
58
+ export interface PublicKeyEncryptionKey extends Key { }
55
59
  export abstract class PublicKeyEncryptionKey implements Key {
56
60
  get bytes(): Uint8Array {
57
61
  return serialize(this);
@@ -61,7 +65,7 @@ export abstract class PublicKeyEncryptionKey implements Key {
61
65
  return this._hashcode || (this._hashcode = sha256Base64Sync(this.bytes));
62
66
  }
63
67
  }
64
- export interface PrivateEncryptionKey extends Key {}
68
+ export interface PrivateEncryptionKey extends Key { }
65
69
  export abstract class PrivateEncryptionKey implements Key {
66
70
  get bytes(): Uint8Array {
67
71
  return serialize(this);
@@ -73,7 +77,7 @@ export abstract class PrivateEncryptionKey implements Key {
73
77
  }
74
78
 
75
79
  // ---- OTHER KEYS ----
76
- export interface PlainKey extends Key {}
80
+ export interface PlainKey extends Key { }
77
81
  export abstract class PlainKey implements Key {
78
82
  get bytes(): Uint8Array {
79
83
  return serialize(this);
@@ -1,4 +1,4 @@
1
- import { PeerId } from "@libp2p/interface";
1
+ import { type PeerId } from "@libp2p/interface";
2
2
  import { Ed25519Keypair, Ed25519PublicKey } from "./ed25519.js";
3
3
  import { Secp256k1Keypair, Secp256k1PublicKey } from "./sepc256k1.js";
4
4
 
@@ -21,7 +21,7 @@ export const getPublicKeyFromPeerId = (
21
21
  return Ed25519PublicKey.fromPeerId(peerId);
22
22
  }
23
23
  if (peerId.type === "secp256k1") {
24
- return Secp256k1PublicKey.from(peerId);
24
+ return Secp256k1PublicKey.fromPeerId(peerId);
25
25
  }
26
26
  throw new Error("Unsupported key type");
27
27
  };
package/src/sepc256k1.ts CHANGED
@@ -1,18 +1,18 @@
1
- import { field, fixedArray, variant, vec } from "@dao-xyz/borsh";
1
+ import { field, fixedArray, variant } from "@dao-xyz/borsh";
2
2
  import { Keypair, PrivateSignKey, PublicSignKey } from "./key.js";
3
3
 
4
4
  import { Wallet } from "@ethersproject/wallet";
5
5
  import { arrayify } from "@ethersproject/bytes";
6
6
  import { joinSignature } from "@ethersproject/bytes";
7
- import { SignatureLike, splitSignature } from "@ethersproject/bytes";
7
+ import { type SignatureLike, splitSignature } from "@ethersproject/bytes";
8
8
  import _ec from "elliptic";
9
9
  import EC = _ec.ec;
10
10
  let _curve: EC;
11
11
 
12
- import { equals } from "@peerbit/uint8arrays";
12
+ import { equals } from "uint8arrays";
13
13
  import { toHexString } from "./utils.js";
14
- import { PeerId } from "@libp2p/interface";
15
- import { Identity } from "./signer.js";
14
+ import { type PeerId } from "@libp2p/interface";
15
+ import { type Identity } from "./signer.js";
16
16
  import { coerce } from "./bytes.js";
17
17
  import { generateKeyPair, supportedKeys } from "@libp2p/crypto/keys";
18
18
  import utf8 from "@protobufjs/utf8";
@@ -60,7 +60,13 @@ export class Secp256k1PublicKey extends PublicSignKey {
60
60
  return "sepc256k1/" + toHexString(this.publicKey);
61
61
  }
62
62
 
63
- static from(id: PeerId) {
63
+ toPeerId(): Promise<PeerId> {
64
+ return peerIdFromKeys(
65
+ new supportedKeys["secp256k1"].Secp256k1PublicKey(this.publicKey).bytes
66
+ );
67
+ }
68
+
69
+ static fromPeerId(id: PeerId) {
64
70
  if (!id.publicKey) {
65
71
  throw new Error("Missing public key");
66
72
  }
@@ -177,7 +183,7 @@ export class Secp256k1Keypair extends Keypair implements Identity {
177
183
  static fromPeerId(peerId: PeerId) {
178
184
  return new Secp256k1Keypair({
179
185
  privateKey: Secp256k1PrivateKey.from(peerId),
180
- publicKey: Secp256k1PublicKey.from(peerId)
186
+ publicKey: Secp256k1PublicKey.fromPeerId(peerId)
181
187
  });
182
188
  }
183
189
 
package/src/signature.ts CHANGED
@@ -4,15 +4,15 @@ import {
4
4
  field,
5
5
  option,
6
6
  serialize,
7
- AbstractType
7
+ type AbstractType
8
8
  } from "@dao-xyz/borsh";
9
- import { equals } from "@peerbit/uint8arrays";
9
+ import { compare, equals } from "uint8arrays";
10
10
  import { verifySignatureEd25519 } from "./ed25519-sign.js";
11
11
  import { Ed25519PublicKey } from "./ed25519.js";
12
12
  import { PublicSignKey } from "./key.js";
13
13
  import { PreHash } from "./prehash.js";
14
14
  import { Secp256k1PublicKey, verifySignatureSecp256k1 } from "./sepc256k1.js";
15
- import { SignWithKey } from "./signer.js";
15
+ import { type SignWithKey } from "./signer.js";
16
16
 
17
17
  @variant(0)
18
18
  export class SignatureWithKey {
@@ -42,8 +42,8 @@ export class SignatureWithKey {
42
42
  return false;
43
43
  }
44
44
  return (
45
- Buffer.compare(serialize(this.publicKey), serialize(other.publicKey)) ===
46
- 0 && this.prehash == other.prehash
45
+ compare(serialize(this.publicKey), serialize(other.publicKey)) ===
46
+ 0 && this.prehash == other.prehash
47
47
  );
48
48
  }
49
49
  }
package/src/x25519.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export * from "./errors.js";
2
2
  import { field, fixedArray, variant } from "@dao-xyz/borsh";
3
- import { compare } from "@peerbit/uint8arrays";
3
+ import { compare } from "uint8arrays";
4
4
  import sodium from "libsodium-wrappers";
5
5
  import {
6
6
  Keypair,
@@ -9,11 +9,10 @@ import {
9
9
  } from "./key.js";
10
10
  import {
11
11
  Ed25519Keypair,
12
- Ed25519PublicKey,
13
- Ed25519PrivateKey
12
+ Ed25519PublicKey
14
13
  } from "./ed25519.js";
15
14
  import { toHexString } from "./utils.js";
16
- import { PeerId } from "@libp2p/interface";
15
+ import { type PeerId } from "@libp2p/interface";
17
16
  @variant(0)
18
17
  export class X25519PublicKey extends PublicKeyEncryptionKey {
19
18
  @field({ type: fixedArray("u8", 32) })