@bsv/sdk 1.6.18 β†’ 1.6.20

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 (64) hide show
  1. package/README.md +11 -11
  2. package/dist/cjs/package.json +5 -9
  3. package/dist/cjs/src/auth/transports/SimplifiedFetchTransport.js +39 -39
  4. package/dist/cjs/src/auth/transports/SimplifiedFetchTransport.js.map +1 -1
  5. package/dist/cjs/src/primitives/ECDSA.js +69 -167
  6. package/dist/cjs/src/primitives/ECDSA.js.map +1 -1
  7. package/dist/cjs/src/primitives/Hash.js +660 -436
  8. package/dist/cjs/src/primitives/Hash.js.map +1 -1
  9. package/dist/cjs/src/primitives/Point.js +285 -293
  10. package/dist/cjs/src/primitives/Point.js.map +1 -1
  11. package/dist/cjs/src/script/ScriptEvaluationError.js +27 -0
  12. package/dist/cjs/src/script/ScriptEvaluationError.js.map +1 -0
  13. package/dist/cjs/src/script/Spend.js +13 -7
  14. package/dist/cjs/src/script/Spend.js.map +1 -1
  15. package/dist/cjs/src/script/index.js +3 -1
  16. package/dist/cjs/src/script/index.js.map +1 -1
  17. package/dist/cjs/src/transaction/Beef.js +4 -4
  18. package/dist/cjs/src/transaction/Transaction.js +3 -3
  19. package/dist/cjs/src/transaction/Transaction.js.map +1 -1
  20. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  21. package/dist/esm/src/auth/transports/SimplifiedFetchTransport.js +39 -39
  22. package/dist/esm/src/auth/transports/SimplifiedFetchTransport.js.map +1 -1
  23. package/dist/esm/src/primitives/ECDSA.js +69 -167
  24. package/dist/esm/src/primitives/ECDSA.js.map +1 -1
  25. package/dist/esm/src/primitives/Hash.js +672 -444
  26. package/dist/esm/src/primitives/Hash.js.map +1 -1
  27. package/dist/esm/src/primitives/Point.js +268 -293
  28. package/dist/esm/src/primitives/Point.js.map +1 -1
  29. package/dist/esm/src/script/ScriptEvaluationError.js +33 -0
  30. package/dist/esm/src/script/ScriptEvaluationError.js.map +1 -0
  31. package/dist/esm/src/script/Spend.js +14 -8
  32. package/dist/esm/src/script/Spend.js.map +1 -1
  33. package/dist/esm/src/script/index.js +1 -0
  34. package/dist/esm/src/script/index.js.map +1 -1
  35. package/dist/esm/src/transaction/Beef.js +4 -4
  36. package/dist/esm/src/transaction/Transaction.js +3 -3
  37. package/dist/esm/src/transaction/Transaction.js.map +1 -1
  38. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  39. package/dist/types/src/auth/transports/SimplifiedFetchTransport.d.ts +1 -1
  40. package/dist/types/src/auth/transports/SimplifiedFetchTransport.d.ts.map +1 -1
  41. package/dist/types/src/primitives/ECDSA.d.ts.map +1 -1
  42. package/dist/types/src/primitives/Hash.d.ts +12 -19
  43. package/dist/types/src/primitives/Hash.d.ts.map +1 -1
  44. package/dist/types/src/primitives/Point.d.ts +37 -5
  45. package/dist/types/src/primitives/Point.d.ts.map +1 -1
  46. package/dist/types/src/script/ScriptEvaluationError.d.ts +24 -0
  47. package/dist/types/src/script/ScriptEvaluationError.d.ts.map +1 -0
  48. package/dist/types/src/script/Spend.d.ts.map +1 -1
  49. package/dist/types/src/script/index.d.ts +1 -0
  50. package/dist/types/src/script/index.d.ts.map +1 -1
  51. package/dist/types/src/transaction/Transaction.d.ts.map +1 -1
  52. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  53. package/dist/umd/bundle.js +20 -1
  54. package/dist/umd/bundle.js.map +1 -0
  55. package/package.json +5 -9
  56. package/src/auth/transports/SimplifiedFetchTransport.ts +64 -67
  57. package/src/primitives/ECDSA.ts +80 -222
  58. package/src/primitives/Hash.ts +752 -589
  59. package/src/primitives/Point.ts +277 -336
  60. package/src/script/ScriptEvaluationError.ts +44 -0
  61. package/src/script/Spend.ts +14 -12
  62. package/src/script/index.ts +1 -0
  63. package/src/transaction/Beef.ts +4 -4
  64. package/src/transaction/Transaction.ts +11 -3
package/README.md CHANGED
@@ -61,17 +61,17 @@ For a more detailed tutorial and advanced examples, check our [Documentation](#d
61
61
  ## Features & Deliverables
62
62
 
63
63
  - **Sound Cryptographic Primitives**: Secure key management, signature computations, and encryption protocols.
64
-
64
+
65
65
  - **Script Level Constructs**: Network-compliant script interpreter with support for custom scripts and serialization formats.
66
-
66
+
67
67
  - **Transaction Construction and Signing**: Comprehensive transaction builder API, ensuring versatile and secure transaction creation.
68
-
68
+
69
69
  - **Transaction Broadcast Management**: Mechanisms to send transactions to both miners and overlays, ensuring extensibility and future-proofing.
70
-
70
+
71
71
  - **Merkle Proof Verification**: Tools for representing and verifying merkle proofs, adhering to various serialization standards.
72
-
72
+
73
73
  - **Serializable SPV Structures**: Structures and interfaces for full SPV verification.
74
-
74
+
75
75
  - **Secure Encryption and Signed Messages**: Enhanced mechanisms for encryption and digital signatures, replacing outdated methods.
76
76
 
77
77
  - **P2P Authentication**: Robust peer-to-peer authentication mechanisms to ensure secure connections between parties.
@@ -92,11 +92,11 @@ For a more detailed tutorial and advanced examples, check our [Documentation](#d
92
92
 
93
93
  Comprehensive documentation is available in several formats:
94
94
 
95
- - **[πŸ“š Online Documentation](https://bitcoin-sv.github.io/ts-sdk)**: Our complete documentation:
96
- - **[πŸš€ Tutorials](https://bitcoin-sv.github.io/ts-sdk/tutorials/)**: Step-by-step lessons to learn by doing
97
- - **[πŸ”§ How-To Guides](https://bitcoin-sv.github.io/ts-sdk/guides/)**: Practical solutions to specific problems
98
- - **[πŸ“š Reference](https://bitcoin-sv.github.io/ts-sdk/reference/)**: Complete technical specifications and API documentation
99
- - **[πŸ—οΈ Concepts](https://bitcoin-sv.github.io/ts-sdk/concepts/)**: Architecture and design explanations
95
+ - **[πŸ“š Online Documentation](https://bsv-blockchain.github.io/ts-sdk)**: Our complete documentation:
96
+ - **[πŸš€ Tutorials](https://bsv-blockchain.github.io/ts-sdk/tutorials/)**: Step-by-step lessons to learn by doing
97
+ - **[πŸ”§ How-To Guides](https://bsv-blockchain.github.io/ts-sdk/guides/)**: Practical solutions to specific problems
98
+ - **[πŸ“š Reference](https://bsv-blockchain.github.io/ts-sdk/reference/)**: Complete technical specifications and API documentation
99
+ - **[πŸ—οΈ Concepts](https://bsv-blockchain.github.io/ts-sdk/concepts/)**: Architecture and design explanations
100
100
  - **[⚑ Examples](https://docs.bsvblockchain.org/guides/sdks/ts/examples)**: Practical code examples
101
101
  - **Code Annotations**: The SDK is richly documented with code-level annotations that show up in editors like VSCode
102
102
 
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bsv/sdk",
3
- "version": "1.6.18",
3
+ "version": "1.6.20",
4
4
  "type": "commonjs",
5
5
  "description": "BSV Blockchain Software Development Kit",
6
6
  "files": [
@@ -18,7 +18,7 @@
18
18
  "lint": "ts-standard --fix src/**/*.ts",
19
19
  "build": "npm run build:ts && npm run build:umd",
20
20
  "build:ts": "tsc -b && tsconfig-to-dual-package tsconfig.cjs.json",
21
- "build:umd": "webpack --config webpack.config.js",
21
+ "build:umd": "rspack --config rspack.config.js",
22
22
  "dev": "tsc -b -w",
23
23
  "prepublish": "npm run build",
24
24
  "doc": "ts2md",
@@ -45,6 +45,7 @@
45
45
  "devDependencies": {
46
46
  "@eslint/js": "^9.23.0",
47
47
  "@jest/globals": "^29.7.0",
48
+ "@rspack/cli": "^1.4.9",
48
49
  "@types/jest": "^29.5.14",
49
50
  "@types/node": "^22.13.14",
50
51
  "eslint": "^9.23.0",
@@ -57,17 +58,12 @@
57
58
  "ts2md": "^0.2.8",
58
59
  "tsconfig-to-dual-package": "^1.2.0",
59
60
  "typescript": "5.1",
60
- "typescript-eslint": "^8.29.0",
61
- "webpack": "^5.98.0",
62
- "webpack-cli": "^6.0.1"
61
+ "typescript-eslint": "^8.29.0"
63
62
  },
64
63
  "ts-standard": {
65
64
  "project": "tsconfig.eslint.json",
66
65
  "ignore": [
67
- "dist",
68
- "src/script/ScriptTemplate.ts",
69
- "src/transaction/Transaction.ts",
70
- "src/auth/transports/SimplifiedFetchTransport.ts"
66
+ "dist"
71
67
  ]
72
68
  }
73
69
  }
@@ -25,7 +25,6 @@ var __importStar = (this && this.__importStar) || function (mod) {
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
26
  exports.SimplifiedFetchTransport = void 0;
27
27
  const Utils = __importStar(require("../../primitives/utils.js"));
28
- const SUCCESS_STATUS_CODES = [200, 402];
29
28
  // Only bind window.fetch in the browser
30
29
  const defaultFetch = typeof window !== 'undefined' ? fetch.bind(window) : fetch;
31
30
  /**
@@ -54,41 +53,42 @@ class SimplifiedFetchTransport {
54
53
  * @throws Will throw an error if no listener has been registered via `onData`.
55
54
  */
56
55
  async send(message) {
57
- if (!this.onDataCallback) {
56
+ if (this.onDataCallback == null) {
58
57
  throw new Error('Listen before you start speaking. God gave you two ears and one mouth for a reason.');
59
58
  }
60
59
  if (message.messageType !== 'general') {
61
- return new Promise(async (resolve, reject) => {
62
- try {
63
- const responsePromise = this.fetchClient(`${this.baseUrl}/.well-known/auth`, {
64
- method: 'POST',
65
- headers: {
66
- 'Content-Type': 'application/json'
67
- },
68
- body: JSON.stringify(message)
69
- });
70
- // For initialRequest message, mark connection as established and start pool.
71
- if (message.messageType !== "initialRequest") {
72
- resolve();
60
+ return await new Promise((resolve, reject) => {
61
+ void (async () => {
62
+ try {
63
+ const responsePromise = this.fetchClient(`${this.baseUrl}/.well-known/auth`, {
64
+ method: 'POST',
65
+ headers: {
66
+ 'Content-Type': 'application/json'
67
+ },
68
+ body: JSON.stringify(message)
69
+ });
70
+ // For initialRequest message, mark connection as established and start pool.
71
+ if (message.messageType !== 'initialRequest') {
72
+ resolve();
73
+ }
74
+ const response = await responsePromise;
75
+ // Handle the response if data is received and callback is set
76
+ if (response.ok && (this.onDataCallback != null)) {
77
+ const responseMessage = await response.json();
78
+ this.onDataCallback(responseMessage);
79
+ }
80
+ else {
81
+ // Server may be a non authenticated server
82
+ throw new Error('HTTP server failed to authenticate');
83
+ }
84
+ if (message.messageType === 'initialRequest') {
85
+ resolve();
86
+ }
73
87
  }
74
- const response = await responsePromise;
75
- // Handle the response if data is received and callback is set
76
- if (response.ok && this.onDataCallback) {
77
- const responseMessage = await response.json();
78
- this.onDataCallback(responseMessage);
88
+ catch (e) {
89
+ reject(e);
79
90
  }
80
- else {
81
- // Server may be a non authenticated server
82
- throw new Error('HTTP server failed to authenticate');
83
- }
84
- if (message.messageType === "initialRequest") {
85
- resolve();
86
- }
87
- }
88
- catch (e) {
89
- reject(e);
90
- return;
91
- }
91
+ })();
92
92
  });
93
93
  }
94
94
  else {
@@ -96,7 +96,7 @@ class SimplifiedFetchTransport {
96
96
  const httpRequest = this.deserializeRequestPayload(message.payload);
97
97
  // Send the byte array as the HTTP payload
98
98
  const url = `${this.baseUrl}${httpRequest.urlPostfix}`;
99
- let httpRequestWithAuthHeaders = httpRequest;
99
+ const httpRequestWithAuthHeaders = httpRequest;
100
100
  if (typeof httpRequest.headers !== 'object') {
101
101
  httpRequestWithAuthHeaders.headers = {};
102
102
  }
@@ -108,12 +108,12 @@ class SimplifiedFetchTransport {
108
108
  httpRequestWithAuthHeaders.headers['x-bsv-auth-signature'] = Utils.toHex(message.signature);
109
109
  httpRequestWithAuthHeaders.headers['x-bsv-auth-request-id'] = httpRequest.requestId;
110
110
  // Ensure Content-Type is set for requests with a body
111
- if (httpRequestWithAuthHeaders.body) {
111
+ if (httpRequestWithAuthHeaders.body != null) {
112
112
  const headers = httpRequestWithAuthHeaders.headers;
113
- if (!headers['content-type']) {
113
+ if (headers['content-type'] == null) {
114
114
  throw new Error('Content-Type header is required for requests with a body.');
115
115
  }
116
- const contentType = headers['content-type'];
116
+ const contentType = String(headers['content-type'] ?? '');
117
117
  // Transform body based on Content-Type
118
118
  if (contentType.includes('application/json')) {
119
119
  // Convert byte array to JSON string
@@ -180,7 +180,7 @@ class SimplifiedFetchTransport {
180
180
  payloadWriter.write(headerValueAsArray);
181
181
  }
182
182
  // Handle body
183
- if (parsedBody) {
183
+ if (parsedBody != null) {
184
184
  const bodyAsArray = Array.from(new Uint8Array(parsedBody));
185
185
  payloadWriter.writeVarIntNum(bodyAsArray.length);
186
186
  payloadWriter.write(bodyAsArray);
@@ -197,10 +197,10 @@ class SimplifiedFetchTransport {
197
197
  yourNonce: response.headers.get('x-bsv-auth-your-nonce'),
198
198
  requestedCertificates: JSON.parse(response.headers.get('x-bsv-auth-requested-certificates')),
199
199
  payload: payloadWriter.toArray(),
200
- signature: Utils.toArray(response.headers.get('x-bsv-auth-signature'), 'hex'),
200
+ signature: Utils.toArray(response.headers.get('x-bsv-auth-signature'), 'hex')
201
201
  };
202
202
  // If the server didn't provide the correct authentication headers, throw an error
203
- if (!responseMessage.version) {
203
+ if (responseMessage.version == null) {
204
204
  throw new Error('HTTP server failed to authenticate');
205
205
  }
206
206
  // Handle the response if data is received and callback is set
@@ -216,7 +216,7 @@ class SimplifiedFetchTransport {
216
216
  */
217
217
  async onData(callback) {
218
218
  this.onDataCallback = (m) => {
219
- callback(m);
219
+ void callback(m);
220
220
  };
221
221
  }
222
222
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"SimplifiedFetchTransport.js","sourceRoot":"","sources":["../../../../../src/auth/transports/SimplifiedFetchTransport.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,iEAAkD;AAElD,MAAM,oBAAoB,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;AAEvC,wCAAwC;AACxC,MAAM,YAAY,GAAG,OAAO,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AAEhF;;;GAGG;AACH,MAAa,wBAAwB;IAMnC;;;;OAIG;IACH,YAAY,OAAe,EAAE,WAAW,GAAG,YAAY;QACrD,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACxB,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,IAAI,CAAC,OAAoB;QAC7B,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;YACxB,MAAM,IAAI,KAAK,CAAC,qFAAqF,CAAC,CAAA;SACvG;QACD,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,EAAE;YACrC,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC3C,IAAI;oBACF,MAAM,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,OAAO,mBAAmB,EAAE;wBAC3E,MAAM,EAAE,MAAM;wBACd,OAAO,EAAE;4BACP,cAAc,EAAE,kBAAkB;yBACnC;wBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;qBAC9B,CAAC,CAAA;oBAEF,6EAA6E;oBAC7E,IAAI,OAAO,CAAC,WAAW,KAAK,gBAAgB,EAAE;wBAC5C,OAAO,EAAE,CAAA;qBACV;oBACD,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAA;oBACtC,8DAA8D;oBAC9D,IAAI,QAAQ,CAAC,EAAE,IAAI,IAAI,CAAC,cAAc,EAAE;wBACtC,MAAM,eAAe,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;wBAC7C,IAAI,CAAC,cAAc,CAAC,eAA8B,CAAC,CAAA;qBACpD;yBAAM;wBACL,2CAA2C;wBAC3C,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;qBACtD;oBACD,IAAI,OAAO,CAAC,WAAW,KAAK,gBAAgB,EAAE;wBAC5C,OAAO,EAAE,CAAA;qBACV;iBACF;gBAAC,OAAO,CAAC,EAAE;oBACV,MAAM,CAAC,CAAC,CAAC,CAAA;oBACT,OAAM;iBACP;YACH,CAAC,CAAC,CAAA;SACH;aAAM;YACL,wBAAwB;YACxB,MAAM,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;YAEnE,0CAA0C;YAC1C,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,GAAG,WAAW,CAAC,UAAU,EAAE,CAAA;YACtD,IAAI,0BAA0B,GAAQ,WAAW,CAAA;YACjD,IAAI,OAAO,WAAW,CAAC,OAAO,KAAK,QAAQ,EAAE;gBAC3C,0BAA0B,CAAC,OAAO,GAAG,EAAE,CAAA;aACxC;YAED,2CAA2C;YAC3C,0BAA0B,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,OAAO,CAAC,OAAO,CAAA;YAC1E,0BAA0B,CAAC,OAAO,CAAC,yBAAyB,CAAC,GAAG,OAAO,CAAC,WAAW,CAAA;YACnF,0BAA0B,CAAC,OAAO,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC,KAAK,CAAA;YACtE,0BAA0B,CAAC,OAAO,CAAC,uBAAuB,CAAC,GAAG,OAAO,CAAC,SAAS,CAAA;YAC/E,0BAA0B,CAAC,OAAO,CAAC,sBAAsB,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;YAC3F,0BAA0B,CAAC,OAAO,CAAC,uBAAuB,CAAC,GAAG,WAAW,CAAC,SAAS,CAAA;YAEnF,sDAAsD;YACtD,IAAI,0BAA0B,CAAC,IAAI,EAAE;gBACnC,MAAM,OAAO,GAAG,0BAA0B,CAAC,OAAO,CAAC;gBACnD,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE;oBAC5B,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;iBAC9E;gBAED,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;gBAE5C,uCAAuC;gBACvC,IAAI,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE;oBAC5C,oCAAoC;oBACpC,0BAA0B,CAAC,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC;iBACjF;qBAAM,IAAI,WAAW,CAAC,QAAQ,CAAC,mCAAmC,CAAC,EAAE;oBACpE,2CAA2C;oBAC3C,0BAA0B,CAAC,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC;iBACjF;qBAAM,IAAI,WAAW,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;oBAC7C,2CAA2C;oBAC3C,0BAA0B,CAAC,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC;iBACjF;qBAAM;oBACL,oDAAoD;oBACpD,0BAA0B,CAAC,IAAI,GAAG,IAAI,UAAU,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC;iBACnF;aACF;YAED,8CAA8C;YAC9C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE;gBAC3C,MAAM,EAAE,0BAA0B,CAAC,MAAM;gBACzC,OAAO,EAAE,0BAA0B,CAAC,OAAO;gBAC3C,IAAI,EAAE,0BAA0B,CAAC,IAAI;aACtC,CAAC,CAAA;YAEF,iCAAiC;YACjC,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,IAAI,IAAI;gBACjF,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,IAAI,IAAI,CAAC,EAAE;gBACtE,yBAAyB;gBACzB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;gBACvC,uCAAuC;gBACvC,MAAM,IAAI,KAAK,CAAC,QAAQ,QAAQ,CAAC,MAAM,MAAM,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;aAC3E;YAED,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAA;YAC/C,MAAM,aAAa,GAAG,IAAI,KAAK,CAAC,MAAM,EAAE,CAAA;YACxC,IAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,IAAI,IAAI,EACxD;gBACI,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;aAC/F;YACD,aAAa,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;YAE7C,sEAAsE;YACtE,8EAA8E;YAC9E,0FAA0F;YAC1F,qCAAqC;YACrC,MAAM,eAAe,GAAuB,EAAE,CAAA;YAC9C,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;gBACtC,MAAM,QAAQ,GAAG,GAAG,CAAC,WAAW,EAAE,CAAA;gBAClC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,QAAQ,KAAK,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE;oBACzG,eAAe,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAA;iBACxC;YACH,CAAC,CAAC,CAAA;YAEF,qFAAqF;YACrF,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAA;YAElE,WAAW;YACX,aAAa,CAAC,cAAc,CAAC,eAAe,CAAC,MAAM,CAAC,CAAA;YACpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC/C,kBAAkB;gBAClB,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;gBACrE,aAAa,CAAC,cAAc,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAA;gBACrD,YAAY;gBACZ,aAAa,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA;gBACrC,oBAAoB;gBACpB,MAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;gBACvE,aAAa,CAAC,cAAc,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAA;gBACvD,cAAc;gBACd,aAAa,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;aACxC;YAED,cAAc;YACd,IAAI,UAAU,EAAE;gBACd,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,CAAC,CAAA;gBAC1D,aAAa,CAAC,cAAc,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;gBAChD,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;aACjC;iBAAM;gBACL,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAA;aACjC;YAED,iDAAiD;YACjD,MAAM,eAAe,GAAgB;gBACnC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;gBACnD,WAAW,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,KAAK,oBAAoB,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,SAAS;gBACxH,WAAW,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC;gBAC5D,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;gBAC/C,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC;gBACxD,qBAAqB,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAA4B;gBACvH,OAAO,EAAE,aAAa,CAAC,OAAO,EAAE;gBAChC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,EAAE,KAAK,CAAC;aAC9E,CAAA;YAED,kFAAkF;YAClF,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE;gBAC5B,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;aACtD;YAED,8DAA8D;YAC9D,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,CAAA;SACrC;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,MAAM,CAAC,QAAiD;QAC5D,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC,EAAE,EAAE;YAC1B,QAAQ,CAAC,CAAC,CAAC,CAAA;QACb,CAAC,CAAA;IACH,CAAC;IAED;;;;;;OAMG;IACH,yBAAyB,CAAC,OAAiB;QAOzC,kBAAkB;QAClB,MAAM,aAAa,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QAC/C,sCAAsC;QACtC,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;QAExD,SAAS;QACT,MAAM,YAAY,GAAG,aAAa,CAAC,aAAa,EAAE,CAAA;QAClD,IAAI,MAAM,GAAG,KAAK,CAAA;QAClB,IAAI,YAAY,GAAG,CAAC,EAAE;YACpB,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAA;SACxD;QAED,OAAO;QACP,MAAM,UAAU,GAAG,aAAa,CAAC,aAAa,EAAE,CAAA;QAChD,IAAI,IAAI,GAAG,EAAE,CAAA;QACb,IAAI,UAAU,GAAG,CAAC,EAAE;YAClB,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAA;SACpD;QAED,SAAS;QACT,MAAM,YAAY,GAAG,aAAa,CAAC,aAAa,EAAE,CAAA;QAClD,IAAI,MAAM,GAAG,EAAE,CAAA;QACf,IAAI,YAAY,GAAG,CAAC,EAAE;YACpB,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAA;SACxD;QAED,eAAe;QACf,MAAM,cAAc,GAAG,EAAE,CAAA;QACzB,MAAM,QAAQ,GAAG,aAAa,CAAC,aAAa,EAAE,CAAA;QAC9C,IAAI,QAAQ,GAAG,CAAC,EAAE;YAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE;gBACjC,MAAM,eAAe,GAAG,aAAa,CAAC,aAAa,EAAE,CAAA;gBACrD,MAAM,cAAc,GAAG,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;gBAC1D,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,CAAA;gBAC9C,MAAM,iBAAiB,GAAG,aAAa,CAAC,aAAa,EAAE,CAAA;gBACvD,MAAM,gBAAgB,GAAG,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;gBAC9D,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAA;gBAClD,cAAc,CAAC,SAAS,CAAC,GAAG,WAAW,CAAA;aACxC;SACF;QAED,YAAY;QACZ,IAAI,WAAW,CAAA;QACf,MAAM,gBAAgB,GAAG,aAAa,CAAC,aAAa,EAAE,CAAA;QACtD,IAAI,gBAAgB,GAAG,CAAC,EAAE;YACxB,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;SACnD;QAED,sCAAsC;QACtC,OAAO;YACL,UAAU,EAAE,IAAI,GAAG,MAAM;YACzB,MAAM;YACN,OAAO,EAAE,cAAc;YACvB,IAAI,EAAE,WAAW;YACjB,SAAS;SACV,CAAA;IACH,CAAC;CACF;AApRD,4DAoRC"}
1
+ {"version":3,"file":"SimplifiedFetchTransport.js","sourceRoot":"","sources":["../../../../../src/auth/transports/SimplifiedFetchTransport.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ exports.verify = exports.sign = void 0;
7
7
  const BigNumber_js_1 = __importDefault(require("./BigNumber.js"));
8
8
  const Signature_js_1 = __importDefault(require("./Signature.js"));
9
9
  const Curve_js_1 = __importDefault(require("./Curve.js"));
10
+ const Point_js_1 = require("./Point.js");
10
11
  const DRBG_js_1 = __importDefault(require("./DRBG.js"));
11
12
  /**
12
13
  * Truncates a BigNumber message to the length of the curve order n, in the context of the Elliptic Curve Digital Signature Algorithm (ECDSA).
@@ -39,6 +40,10 @@ function truncateToN(msg, truncOnly, curve = new Curve_js_1.default()) {
39
40
  return msg;
40
41
  }
41
42
  }
43
+ const curve = new Curve_js_1.default();
44
+ const bytes = curve.n.byteLength();
45
+ const ns1 = curve.n.subn(1);
46
+ const halfN = Point_js_1.N_BIGINT >> 1n;
42
47
  /**
43
48
  * Generates a digital signature for a given message.
44
49
  *
@@ -55,71 +60,68 @@ function truncateToN(msg, truncOnly, curve = new Curve_js_1.default()) {
55
60
  * const signature = sign(msg, key)
56
61
  */
57
62
  const sign = (msg, key, forceLowS = false, customK) => {
58
- const curve = new Curve_js_1.default();
63
+ // β€”β€” prepare inputs ────────────────────────────────────────────────────────
59
64
  msg = truncateToN(msg);
60
- // Zero-extend key to provide enough entropy
61
- const bytes = curve.n.byteLength();
65
+ const msgBig = BigInt('0x' + msg.toString(16));
66
+ const keyBig = BigInt('0x' + key.toString(16));
67
+ // DRBG seeding identical to previous implementation
62
68
  const bkey = key.toArray('be', bytes);
63
- // Zero-extend nonce to have the same byte size as N
64
69
  const nonce = msg.toArray('be', bytes);
65
- // Instantiate Hmac_DRBG
66
70
  const drbg = new DRBG_js_1.default(bkey, nonce);
67
- // Number of bytes to generate
68
- const ns1 = curve.n.subn(1);
69
71
  for (let iter = 0;; iter++) {
70
- // Compute the k-value
71
- let k = typeof customK === 'function'
72
+ // β€”β€” k generation & basic validity checks ───────────────────────────────
73
+ let kBN = typeof customK === 'function'
72
74
  ? customK(iter)
73
75
  : BigNumber_js_1.default.isBN(customK)
74
76
  ? customK
75
77
  : new BigNumber_js_1.default(drbg.generate(bytes), 16);
76
- if (k != null) {
77
- k = truncateToN(k, true);
78
- }
79
- else {
78
+ if (kBN == null)
80
79
  throw new Error('k is undefined');
81
- }
82
- if (k.cmpn(1) <= 0 || k.cmp(ns1) >= 0) {
80
+ kBN = truncateToN(kBN, true);
81
+ if (kBN.cmpn(1) <= 0 || kBN.cmp(ns1) >= 0) {
83
82
  if (BigNumber_js_1.default.isBN(customK)) {
84
- throw new Error('Invalid fixed custom K value (must be more than 1 and less than N-1)');
85
- }
86
- else {
87
- continue;
83
+ throw new Error('Invalid fixed custom K value (must be >1 and <N‑1)');
88
84
  }
85
+ continue;
89
86
  }
90
- const kp = curve.g.mul(k);
91
- if (kp.isInfinity()) {
87
+ const kBig = BigInt('0x' + kBN.toString(16));
88
+ // β€”β€” R = kΒ·G (Jacobian, window‑NAF) ──────────────────────────────────────
89
+ const R = (0, Point_js_1.scalarMultiplyWNAF)(kBig, { x: Point_js_1.GX_BIGINT, y: Point_js_1.GY_BIGINT });
90
+ if (R.Z === 0n) { // point at infinity – should never happen for valid k
92
91
  if (BigNumber_js_1.default.isBN(customK)) {
93
- throw new Error('Invalid fixed custom K value (must not create a point at infinity when multiplied by the generator point)');
94
- }
95
- else {
96
- continue;
92
+ throw new Error('Invalid fixed custom K value (kΒ·G at infinity)');
97
93
  }
94
+ continue;
98
95
  }
99
- const kpX = kp.getX();
100
- const r = kpX.umod(curve.n);
101
- if (r.cmpn(0) === 0) {
96
+ // affine X coordinate of R
97
+ const zInv = (0, Point_js_1.biModInv)(R.Z);
98
+ const zInv2 = (0, Point_js_1.biModMul)(zInv, zInv);
99
+ const xAff = (0, Point_js_1.biModMul)(R.X, zInv2);
100
+ const rBig = (0, Point_js_1.modN)(xAff);
101
+ if (rBig === 0n) {
102
102
  if (BigNumber_js_1.default.isBN(customK)) {
103
- throw new Error('Invalid fixed custom K value (when multiplied by G, the resulting x coordinate mod N must not be zero)');
104
- }
105
- else {
106
- continue;
103
+ throw new Error('Invalid fixed custom K value (r == 0)');
107
104
  }
105
+ continue;
108
106
  }
109
- let s = k.invm(curve.n).mul(r.mul(key).iadd(msg));
110
- s = s.umod(curve.n);
111
- if (s.cmpn(0) === 0) {
107
+ // β€”β€” s = k⁻¹ Β· (msg + rΒ·key) mod n ─────────────────────────────────────
108
+ const kInv = (0, Point_js_1.modInvN)(kBig);
109
+ const rTimesKey = (0, Point_js_1.modMulN)(rBig, keyBig);
110
+ const sum = (0, Point_js_1.modN)(msgBig + rTimesKey);
111
+ let sBig = (0, Point_js_1.modMulN)(kInv, sum);
112
+ if (sBig === 0n) {
112
113
  if (BigNumber_js_1.default.isBN(customK)) {
113
- throw new Error('Invalid fixed custom K value (when used with the key, it cannot create a zero value for S)');
114
- }
115
- else {
116
- continue;
114
+ throw new Error('Invalid fixed custom K value (s == 0)');
117
115
  }
116
+ continue;
118
117
  }
119
- // Use complement of `s`, if it is > `n / 2`
120
- if (forceLowS && s.cmp(curve.n.ushrn(1)) > 0) {
121
- s = curve.n.sub(s);
118
+ // low‑S mitigation (BIP‑62/BIP‑340 style)
119
+ if (forceLowS && sBig > halfN) {
120
+ sBig = Point_js_1.N_BIGINT - sBig;
122
121
  }
122
+ // β€”β€” convert back to BigNumber & return ─────────────────────────────────
123
+ const r = new BigNumber_js_1.default(rBig.toString(16), 16);
124
+ const s = new BigNumber_js_1.default(sBig.toString(16), 16);
123
125
  return new Signature_js_1.default(r, s);
124
126
  }
125
127
  };
@@ -143,130 +145,6 @@ exports.sign = sign;
143
145
  * const isVerified = verify(msg, sig, key)
144
146
  */
145
147
  const verify = (msg, sig, key) => {
146
- // Curve parameters for secp256k1
147
- const zero = BigInt(0);
148
- const one = BigInt(1);
149
- const two = BigInt(2);
150
- const three = BigInt(3);
151
- const p = BigInt('0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F'); // Field prime
152
- const n = BigInt('0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141'); // Order of the curve
153
- const G = {
154
- x: BigInt('0x79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798'),
155
- y: BigInt('0x483ADA7726A3C4655DA4FBFC0E1108A8FD17B448A68554199C47D08FFB10D4B8')
156
- };
157
- // Modular arithmetic functions
158
- const mod = (a, m) => ((a % m) + m) % m;
159
- const modInv = (a, m) => {
160
- // Extended Euclidean Algorithm for modular inverse
161
- let [oldr, r] = [a, m];
162
- let [olds, s] = [BigInt(1), BigInt(0)];
163
- while (r !== zero) {
164
- const q = oldr / r;
165
- [oldr, r] = [r, oldr - q * r];
166
- [olds, s] = [s, olds - q * s];
167
- }
168
- if (oldr > one)
169
- return zero; // No inverse
170
- return mod(olds, m);
171
- };
172
- const modMul = (a, b, m) => mod(a * b, m);
173
- const modSub = (a, b, m) => mod(a - b, m);
174
- // Define constants
175
- const four = BigInt(4);
176
- const eight = BigInt(8);
177
- // Point Doubling
178
- const pointDouble = (P) => {
179
- const { X: X1, Y: Y1, Z: Z1 } = P;
180
- if (Y1 === zero) {
181
- return { X: zero, Y: one, Z: zero }; // Point at infinity
182
- }
183
- const Y1sq = modMul(Y1, Y1, p); // Y1^2
184
- const S = modMul(four, modMul(X1, Y1sq, p), p); // S = 4 * X1 * Y1^2
185
- const M = modMul(three, modMul(X1, X1, p), p); // M = 3 * X1^2
186
- const X3 = modSub(modMul(M, M, p), modMul(two, S, p), p); // X3 = M^2 - 2 * S
187
- const Y3 = modSub(modMul(M, modSub(S, X3, p), p), modMul(eight, modMul(Y1sq, Y1sq, p), p), p); // Y3 = M * (S - X3) - 8 * Y1^4
188
- const Z3 = modMul(two, modMul(Y1, Z1, p), p); // Z3 = 2 * Y1 * Z1
189
- return { X: X3, Y: Y3, Z: Z3 };
190
- };
191
- // Point Addition
192
- const pointAdd = (P, Q) => {
193
- if (P.Z === zero)
194
- return Q;
195
- if (Q.Z === zero)
196
- return P;
197
- const Z1Z1 = modMul(P.Z, P.Z, p);
198
- const Z2Z2 = modMul(Q.Z, Q.Z, p);
199
- const U1 = modMul(P.X, Z2Z2, p);
200
- const U2 = modMul(Q.X, Z1Z1, p);
201
- const S1 = modMul(P.Y, modMul(Z2Z2, Q.Z, p), p);
202
- const S2 = modMul(Q.Y, modMul(Z1Z1, P.Z, p), p);
203
- const H = modSub(U2, U1, p);
204
- const r = modSub(S2, S1, p);
205
- if (H === zero) {
206
- if (r === zero) {
207
- // P == Q
208
- return pointDouble(P);
209
- }
210
- else {
211
- // Point at infinity
212
- return { X: zero, Y: one, Z: zero };
213
- }
214
- }
215
- const HH = modMul(H, H, p);
216
- const HHH = modMul(H, HH, p);
217
- const V = modMul(U1, HH, p);
218
- const X3 = modSub(modSub(modMul(r, r, p), HHH, p), modMul(two, V, p), p);
219
- const Y3 = modSub(modMul(r, modSub(V, X3, p), p), modMul(S1, HHH, p), p);
220
- const Z3 = modMul(H, modMul(P.Z, Q.Z, p), p);
221
- return { X: X3, Y: Y3, Z: Z3 };
222
- };
223
- // Scalar Multiplication
224
- const scalarMultiply = (k, P) => {
225
- const N = { X: P.x, Y: P.y, Z: one };
226
- let Q = { X: zero, Y: one, Z: zero }; // Point at infinity
227
- const kBin = k.toString(2);
228
- for (let i = 0; i < kBin.length; i++) {
229
- Q = pointDouble(Q);
230
- if (kBin[i] === '1') {
231
- Q = pointAdd(Q, N);
232
- }
233
- }
234
- return Q;
235
- };
236
- // Verify Function Using Jacobian Coordinates
237
- const verifyECDSA = (hash, publicKey, signature) => {
238
- const { r, s } = signature;
239
- const z = hash;
240
- // Check r and s are in [1, n - 1]
241
- if (r <= zero || r >= n || s <= zero || s >= n) {
242
- return false;
243
- }
244
- const w = modInv(s, n); // w = s^-1 mod n
245
- if (w === zero) {
246
- return false; // No inverse exists
247
- }
248
- const u1 = modMul(z, w, n);
249
- const u2 = modMul(r, w, n);
250
- // Compute point R = u1 * G + u2 * Q
251
- const RG = scalarMultiply(u1, G);
252
- const RQ = scalarMultiply(u2, publicKey);
253
- const R = pointAdd(RG, RQ);
254
- if (R.Z === zero) {
255
- // Point at infinity
256
- return false;
257
- }
258
- // Compute affine x-coordinate x1 = X / Z^2 mod p
259
- const ZInv = modInv(R.Z, p);
260
- if (ZInv === zero) {
261
- return false; // No inverse exists
262
- }
263
- const ZInv2 = modMul(ZInv, ZInv, p);
264
- const x1affine = modMul(R.X, ZInv2, p);
265
- // Compute v = x1_affine mod n
266
- const v = mod(x1affine, n);
267
- // Signature is valid if v == r mod n
268
- return v === r;
269
- };
270
148
  // Convert inputs to BigInt
271
149
  const hash = BigInt('0x' + msg.toString(16));
272
150
  if ((key.x == null) || (key.y == null)) {
@@ -280,7 +158,31 @@ const verify = (msg, sig, key) => {
280
158
  r: BigInt('0x' + sig.r.toString(16)),
281
159
  s: BigInt('0x' + sig.s.toString(16))
282
160
  };
283
- return verifyECDSA(hash, publicKey, signature);
161
+ const { r, s } = signature;
162
+ const z = hash;
163
+ // Check r and s are in [1, n - 1]
164
+ if (r <= Point_js_1.BI_ZERO || r >= Point_js_1.N_BIGINT || s <= Point_js_1.BI_ZERO || s >= Point_js_1.N_BIGINT) {
165
+ return false;
166
+ }
167
+ // ── compute u₁ = zΒ·s⁻¹ mod n and uβ‚‚ = rΒ·s⁻¹ mod n ───────────────────────
168
+ const w = (0, Point_js_1.modInvN)(s); // s⁻¹ mod n
169
+ if (w === 0n)
170
+ return false; // should never happen
171
+ const u1 = (0, Point_js_1.modMulN)(z, w);
172
+ const u2 = (0, Point_js_1.modMulN)(r, w);
173
+ // ── R = u₁·G + uβ‚‚Β·Q (Jacobian, window‑NAF) ──────────────────────────────
174
+ const RG = (0, Point_js_1.scalarMultiplyWNAF)(u1, { x: Point_js_1.GX_BIGINT, y: Point_js_1.GY_BIGINT });
175
+ const RQ = (0, Point_js_1.scalarMultiplyWNAF)(u2, publicKey);
176
+ const R = (0, Point_js_1.jpAdd)(RG, RQ);
177
+ if (R.Z === 0n)
178
+ return false; // point at infinity
179
+ // ── affine x‑coordinate of R (mod p) ─────────────────────────────────────
180
+ const zInv = (0, Point_js_1.biModInv)(R.Z); // (Z⁻¹ mod p)
181
+ const zInv2 = (0, Point_js_1.biModMul)(zInv, zInv); // Z⁻²
182
+ const xAff = (0, Point_js_1.biModMul)(R.X, zInv2); // X / ZΒ² mod p
183
+ // ── v = xAff mod n and final check ───────────────────────────────────────
184
+ const v = (0, Point_js_1.modN)(xAff);
185
+ return v === r;
284
186
  };
285
187
  exports.verify = verify;
286
188
  //# sourceMappingURL=ECDSA.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ECDSA.js","sourceRoot":"","sources":["../../../../src/primitives/ECDSA.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ECDSA.js","sourceRoot":"","sources":["../../../../src/primitives/ECDSA.ts"],"names":[],"mappings":"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"}