@bsv/sdk 1.1.29 → 1.1.32

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 (61) hide show
  1. package/dist/cjs/package.json +1 -1
  2. package/dist/cjs/src/primitives/Schnorr.js +92 -0
  3. package/dist/cjs/src/primitives/Schnorr.js.map +1 -0
  4. package/dist/cjs/src/primitives/index.js +3 -1
  5. package/dist/cjs/src/primitives/index.js.map +1 -1
  6. package/dist/cjs/src/totp/totp.js +1 -1
  7. package/dist/cjs/src/totp/totp.js.map +1 -1
  8. package/dist/cjs/src/transaction/Beef.js +292 -155
  9. package/dist/cjs/src/transaction/Beef.js.map +1 -1
  10. package/dist/cjs/src/transaction/BeefParty.js +46 -26
  11. package/dist/cjs/src/transaction/BeefParty.js.map +1 -1
  12. package/dist/cjs/src/transaction/BeefTx.js +31 -16
  13. package/dist/cjs/src/transaction/BeefTx.js.map +1 -1
  14. package/dist/cjs/src/transaction/MerklePath.js.map +1 -1
  15. package/dist/cjs/src/transaction/Transaction.js +12 -6
  16. package/dist/cjs/src/transaction/Transaction.js.map +1 -1
  17. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  18. package/dist/esm/src/primitives/Schnorr.js +87 -0
  19. package/dist/esm/src/primitives/Schnorr.js.map +1 -0
  20. package/dist/esm/src/primitives/index.js +1 -0
  21. package/dist/esm/src/primitives/index.js.map +1 -1
  22. package/dist/esm/src/totp/totp.js +1 -1
  23. package/dist/esm/src/totp/totp.js.map +1 -1
  24. package/dist/esm/src/transaction/Beef.js +294 -157
  25. package/dist/esm/src/transaction/Beef.js.map +1 -1
  26. package/dist/esm/src/transaction/BeefParty.js +47 -27
  27. package/dist/esm/src/transaction/BeefParty.js.map +1 -1
  28. package/dist/esm/src/transaction/BeefTx.js +35 -20
  29. package/dist/esm/src/transaction/BeefTx.js.map +1 -1
  30. package/dist/esm/src/transaction/MerklePath.js.map +1 -1
  31. package/dist/esm/src/transaction/Transaction.js +12 -6
  32. package/dist/esm/src/transaction/Transaction.js.map +1 -1
  33. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  34. package/dist/types/src/primitives/Schnorr.d.ts +65 -0
  35. package/dist/types/src/primitives/Schnorr.d.ts.map +1 -0
  36. package/dist/types/src/primitives/index.d.ts +1 -0
  37. package/dist/types/src/primitives/index.d.ts.map +1 -1
  38. package/dist/types/src/transaction/Beef.d.ts +131 -90
  39. package/dist/types/src/transaction/Beef.d.ts.map +1 -1
  40. package/dist/types/src/transaction/BeefParty.d.ts +34 -23
  41. package/dist/types/src/transaction/BeefParty.d.ts.map +1 -1
  42. package/dist/types/src/transaction/BeefTx.d.ts +11 -6
  43. package/dist/types/src/transaction/BeefTx.d.ts.map +1 -1
  44. package/dist/types/src/transaction/MerklePath.d.ts.map +1 -1
  45. package/dist/types/src/transaction/Transaction.d.ts +8 -2
  46. package/dist/types/src/transaction/Transaction.d.ts.map +1 -1
  47. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  48. package/dist/umd/bundle.js +1 -1
  49. package/docs/primitives.md +120 -9
  50. package/docs/transaction.md +141 -9
  51. package/package.json +1 -1
  52. package/src/primitives/Schnorr.ts +95 -0
  53. package/src/primitives/__tests/Schnorr.test.ts +272 -0
  54. package/src/primitives/index.ts +1 -0
  55. package/src/totp/totp.ts +1 -1
  56. package/src/transaction/Beef.ts +493 -378
  57. package/src/transaction/BeefParty.ts +71 -58
  58. package/src/transaction/BeefTx.ts +133 -143
  59. package/src/transaction/MerklePath.ts +11 -11
  60. package/src/transaction/Transaction.ts +42 -36
  61. package/src/transaction/__tests/Beef.test.ts +55 -10
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bsv/sdk",
3
- "version": "1.1.29",
3
+ "version": "1.1.32",
4
4
  "type": "commonjs",
5
5
  "description": "BSV Blockchain Software Development Kit",
6
6
  "files": [
@@ -0,0 +1,92 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const BigNumber_js_1 = __importDefault(require("./BigNumber.js"));
7
+ const Curve_js_1 = __importDefault(require("./Curve.js"));
8
+ const Hash_js_1 = require("./Hash.js");
9
+ const index_js_1 = require("./index.js");
10
+ /**
11
+ * Class representing the Schnorr Zero-Knowledge Proof (ZKP) protocol.
12
+ *
13
+ * This class provides methods to generate and verify proofs that demonstrate knowledge of a secret without revealing it.
14
+ * Specifically, it allows one party to prove to another that they know the private key corresponding to a public key
15
+ * and have correctly computed a shared secret, without disclosing the private key itself.
16
+ *
17
+ * The protocol involves two main methods:
18
+ * - `generateProof`: Generates a proof linking a public key `A` and a shared secret `S`, proving knowledge of the corresponding private key `a`.
19
+ * - `verifyProof`: Verifies the provided proof, ensuring its validity without revealing any secret information.
20
+ *
21
+ * The class utilizes elliptic curve cryptography (ECC) and the SHA-256 hash function to compute challenges within the proof.
22
+ *
23
+ * @example
24
+ * ```typescript
25
+ * const schnorr = new Schnorr();
26
+ * const a = PrivateKey.fromRandom(); // Prover's private key
27
+ * const A = a.toPublicKey(); // Prover's public key
28
+ * const b = PrivateKey.fromRandom(); // Other party's private key
29
+ * const B = b.toPublicKey(); // Other party's public key
30
+ * const S = B.mul(a); // Shared secret
31
+ *
32
+ * // Prover generates the proof
33
+ * const proof = schnorr.generateProof(a, A, B, S);
34
+ *
35
+ * // Verifier verifies the proof
36
+ * const isValid = schnorr.verifyProof(A.point, B.point, S.point, proof);
37
+ * console.log(`Proof is valid: ${isValid}`);
38
+ * ```
39
+ */
40
+ class Schnorr {
41
+ constructor() {
42
+ this.curve = new Curve_js_1.default();
43
+ }
44
+ /**
45
+ * Generates a proof that demonstrates the link between public key A and shared secret S
46
+ * @param a Private key corresponding to public key A
47
+ * @param A Public key
48
+ * @param B Other party's public key
49
+ * @param S Shared secret
50
+ * @returns Proof (R, S', z)
51
+ */
52
+ generateProof(aArg, AArg, BArg, S) {
53
+ const r = index_js_1.PrivateKey.fromRandom();
54
+ const R = r.toPublicKey();
55
+ const SPrime = BArg.mul(r);
56
+ const e = this.computeChallenge(AArg, BArg, S, SPrime, R);
57
+ const z = r.add(e.mul(aArg)).umod(this.curve.n);
58
+ return { R, SPrime, z };
59
+ }
60
+ /**
61
+ * Verifies the proof of the link between public key A and shared secret S
62
+ * @param A Public key
63
+ * @param B Other party's public key
64
+ * @param S Shared secret
65
+ * @param proof Proof (R, S', z)
66
+ * @returns True if the proof is valid, false otherwise
67
+ */
68
+ verifyProof(A, B, S, proof) {
69
+ const { R, SPrime, z } = proof;
70
+ const e = this.computeChallenge(A, B, S, SPrime, R);
71
+ // Check zG = R + eA
72
+ const zG = this.curve.g.mul(z);
73
+ const RpluseA = R.add(A.mul(e));
74
+ if (!zG.eq(RpluseA)) {
75
+ return false;
76
+ }
77
+ // Check zB = S' + eS
78
+ const zB = B.mul(z);
79
+ const SprimeeS = SPrime.add(S.mul(e));
80
+ if (!zB.eq(SprimeeS)) {
81
+ return false;
82
+ }
83
+ return true;
84
+ }
85
+ computeChallenge(A, B, S, SPrime, R) {
86
+ const message = [...A.encode(true), ...B.encode(true), ...S.encode(true), ...SPrime.encode(true), ...R.encode(true)];
87
+ const hash = (0, Hash_js_1.sha256)(message);
88
+ return new BigNumber_js_1.default(hash).umod(this.curve.n);
89
+ }
90
+ }
91
+ exports.default = Schnorr;
92
+ //# sourceMappingURL=Schnorr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Schnorr.js","sourceRoot":"","sources":["../../../../src/primitives/Schnorr.ts"],"names":[],"mappings":";;;;;AAAA,kEAAsC;AACtC,0DAA8B;AAE9B,uCAAkC;AAClC,yCAAkD;AAElD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAqB,OAAO;IAG1B;QACE,IAAI,CAAC,KAAK,GAAG,IAAI,kBAAK,EAAE,CAAA;IAC1B,CAAC;IAED;;;;;;;SAOK;IACL,aAAa,CAAE,IAAgB,EAAE,IAAe,EAAE,IAAe,EAAE,CAAQ;QACzE,MAAM,CAAC,GAAG,qBAAU,CAAC,UAAU,EAAE,CAAA;QACjC,MAAM,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAA;QACzB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;QAC1B,MAAM,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAA;QACzD,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC/C,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAA;IACzB,CAAC;IAED;;;;;;;SAOK;IACL,WAAW,CAAE,CAAQ,EAAE,CAAQ,EAAE,CAAQ,EAAE,KAAgD;QACzF,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,KAAK,CAAA;QAC9B,MAAM,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAA;QAEnD,oBAAoB;QACpB,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;QAC9B,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;QAC/B,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;YACpB,OAAO,KAAK,CAAA;QACd,CAAC;QAED,qBAAqB;QACrB,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;QACnB,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;QACrC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrB,OAAO,KAAK,CAAA;QACd,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAEO,gBAAgB,CAAE,CAAQ,EAAE,CAAQ,EAAE,CAAQ,EAAE,MAAa,EAAE,CAAQ;QAC7E,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAa,CAAA;QAChI,MAAM,IAAI,GAAG,IAAA,gBAAM,EAAC,OAAO,CAAC,CAAA;QAC5B,OAAO,IAAI,sBAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAC/C,CAAC;CACF;AA1DD,0BA0DC"}
@@ -26,7 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.PointInFiniteField = exports.Polynomial = exports.TransactionSignature = exports.Random = exports.Hash = exports.Utils = exports.ECDSA = exports.SymmetricKey = exports.KeyShares = exports.PrivateKey = exports.Signature = exports.PublicKey = exports.Point = exports.Curve = exports.BigNumber = void 0;
29
+ exports.Schnorr = exports.PointInFiniteField = exports.Polynomial = exports.TransactionSignature = exports.Random = exports.Hash = exports.Utils = exports.ECDSA = exports.SymmetricKey = exports.KeyShares = exports.PrivateKey = exports.Signature = exports.PublicKey = exports.Point = exports.Curve = exports.BigNumber = void 0;
30
30
  var BigNumber_js_1 = require("./BigNumber.js");
31
31
  Object.defineProperty(exports, "BigNumber", { enumerable: true, get: function () { return __importDefault(BigNumber_js_1).default; } });
32
32
  var Curve_js_1 = require("./Curve.js");
@@ -52,4 +52,6 @@ Object.defineProperty(exports, "TransactionSignature", { enumerable: true, get:
52
52
  var Polynomial_js_1 = require("./Polynomial.js");
53
53
  Object.defineProperty(exports, "Polynomial", { enumerable: true, get: function () { return __importDefault(Polynomial_js_1).default; } });
54
54
  Object.defineProperty(exports, "PointInFiniteField", { enumerable: true, get: function () { return Polynomial_js_1.PointInFiniteField; } });
55
+ var Schnorr_js_1 = require("./Schnorr.js");
56
+ Object.defineProperty(exports, "Schnorr", { enumerable: true, get: function () { return __importDefault(Schnorr_js_1).default; } });
55
57
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/primitives/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAqD;AAA5C,0HAAA,OAAO,OAAa;AAC7B,uCAA6C;AAApC,kHAAA,OAAO,OAAS;AACzB,uCAA6C;AAApC,kHAAA,OAAO,OAAS;AACzB,+CAAqD;AAA5C,0HAAA,OAAO,OAAa;AAC7B,+CAAqD;AAA5C,0HAAA,OAAO,OAAa;AAC7B,iDAAkE;AAAzD,4HAAA,OAAO,OAAc;AAAE,0GAAA,SAAS,OAAA;AACzC,qDAA2D;AAAlD,gIAAA,OAAO,OAAgB;AAChC,oDAAmC;AACnC,oDAAmC;AACnC,kDAAiC;AACjC,yCAA+C;AAAtC,oHAAA,OAAO,OAAU;AAC1B,qEAA2E;AAAlE,gJAAA,OAAO,OAAwB;AACxC,iDAA2E;AAAlE,4HAAA,OAAO,OAAc;AAAE,mHAAA,kBAAkB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/primitives/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAqD;AAA5C,0HAAA,OAAO,OAAa;AAC7B,uCAA6C;AAApC,kHAAA,OAAO,OAAS;AACzB,uCAA6C;AAApC,kHAAA,OAAO,OAAS;AACzB,+CAAqD;AAA5C,0HAAA,OAAO,OAAa;AAC7B,+CAAqD;AAA5C,0HAAA,OAAO,OAAa;AAC7B,iDAAkE;AAAzD,4HAAA,OAAO,OAAc;AAAE,0GAAA,SAAS,OAAA;AACzC,qDAA2D;AAAlD,gIAAA,OAAO,OAAgB;AAChC,oDAAmC;AACnC,oDAAmC;AACnC,kDAAiC;AACjC,yCAA+C;AAAtC,oHAAA,OAAO,OAAU;AAC1B,qEAA2E;AAAlE,gJAAA,OAAO,OAAwB;AACxC,iDAA2E;AAAlE,4HAAA,OAAO,OAAc;AAAE,mHAAA,kBAAkB,OAAA;AAClD,2CAAiD;AAAxC,sHAAA,OAAO,OAAW"}
@@ -66,7 +66,7 @@ class TOTP {
66
66
  exports.TOTP = TOTP;
67
67
  function generateHOTP(secret, counter, options) {
68
68
  const timePad = new BigNumber_js_1.default(counter).toArray('be', 8);
69
- //console.log({ timePad })
69
+ // console.log({ timePad })
70
70
  const hmac = calcHMAC(secret, timePad, options.algorithm);
71
71
  const signature = hmac.digest();
72
72
  // RFC 4226 https://datatracker.ietf.org/doc/html/rfc4226#section-5.4
@@ -1 +1 @@
1
- {"version":3,"file":"totp.js","sourceRoot":"","sources":["../../../../src/totp/totp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"totp.js","sourceRoot":"","sources":["../../../../src/totp/totp.ts"],"names":[],"mappings":"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"}