@sig-net/midnight 0.24.0 → 0.25.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/README.md +9 -8
  2. package/dist/abi-serde.d.ts +7 -5
  3. package/dist/abi-serde.d.ts.map +1 -1
  4. package/dist/abi-serde.js +9 -6
  5. package/dist/abi-serde.js.map +1 -1
  6. package/dist/compact-descriptors.d.ts +5 -7
  7. package/dist/compact-descriptors.d.ts.map +1 -1
  8. package/dist/compact-descriptors.js +7 -19
  9. package/dist/compact-descriptors.js.map +1 -1
  10. package/dist/constants.d.ts +7 -4
  11. package/dist/constants.d.ts.map +1 -1
  12. package/dist/constants.js +7 -4
  13. package/dist/constants.js.map +1 -1
  14. package/dist/ecdsa-attestation.d.ts +61 -12
  15. package/dist/ecdsa-attestation.d.ts.map +1 -1
  16. package/dist/ecdsa-attestation.js +92 -39
  17. package/dist/ecdsa-attestation.js.map +1 -1
  18. package/dist/epsilon-derivation.d.ts +9 -7
  19. package/dist/epsilon-derivation.d.ts.map +1 -1
  20. package/dist/epsilon-derivation.js +6 -5
  21. package/dist/epsilon-derivation.js.map +1 -1
  22. package/dist/index.d.ts +1 -1
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +2 -2
  25. package/dist/index.js.map +1 -1
  26. package/dist/managed/compiler/contract-info.json +251 -143
  27. package/dist/managed/compiler/contract-manifest.json +8 -8
  28. package/dist/managed/contract/index.d.ts +75 -46
  29. package/dist/managed/contract/index.js +604 -585
  30. package/dist/managed/contract/index.js.map +1 -1
  31. package/dist/mpc-output-cache.d.ts +7 -5
  32. package/dist/mpc-output-cache.d.ts.map +1 -1
  33. package/dist/mpc-output-cache.js +6 -5
  34. package/dist/mpc-output-cache.js.map +1 -1
  35. package/dist/signet-contract-events.d.ts +20 -11
  36. package/dist/signet-contract-events.d.ts.map +1 -1
  37. package/dist/signet-contract-events.js +9 -6
  38. package/dist/signet-contract-events.js.map +1 -1
  39. package/dist/signet-evtype2tx-record-decoding.js +2 -2
  40. package/dist/signet-evtype2tx-requests.d.ts +3 -5
  41. package/dist/signet-evtype2tx-requests.d.ts.map +1 -1
  42. package/dist/signet-evtype2tx-requests.js +2 -4
  43. package/dist/signet-evtype2tx-requests.js.map +1 -1
  44. package/dist/signet-requests.d.ts +7 -6
  45. package/dist/signet-requests.d.ts.map +1 -1
  46. package/dist/signet-requests.js +2 -2
  47. package/dist/signet-requests.js.map +1 -1
  48. package/dist/testing.js +1 -1
  49. package/dist/testing.js.map +1 -1
  50. package/package.json +2 -2
  51. package/src/Signet.compact +138 -70
  52. package/src/circuits.compact +40 -32
@@ -1,23 +1,23 @@
1
1
  // secp256k1 ECDSA helpers: the TS side of Signet.compact's respond flows:
2
2
  // SIGNING (which needs the secret scalar, so it cannot be a circuit), key
3
3
  // parsing/formatting, the signature-record codecs both respond events
4
- // share, and the attestation digest's TS twin.
4
+ // share, and the attested output hash's TS twin.
5
5
  // Everything provable stays in Compact where possible: in-circuit
6
- // verification is `verifyRespondBidirectionalEventV1`. The digest circuit is
7
- // size-generic and the compiler cannot export size-generic circuits
8
- // top-level, so the digest is
9
- // the ONE sanctioned TS twin here, pinned byte-for-byte against the
10
- // fixed-width oracle circuits circuits.compact exports (see
11
- // tests/ecdsa-attestation.test.ts).
6
+ // verification is `verifyRespondBidirectionalEventV1`, and the attestation
7
+ // digest is the compiled `calculateSignetAttestationDigestV1`. The output
8
+ // hash circuit is size-generic and the compiler cannot export size-generic
9
+ // circuits top-level, so the output hash is the ONE sanctioned TS twin here,
10
+ // pinned byte-for-byte against the fixed-width oracle circuits
11
+ // circuits.compact exports (see tests/ecdsa-attestation.test.ts).
12
12
  //
13
13
  // This belongs in github.com/sig-net/signet.js as its Midnight adapter,
14
14
  // kept here until upstreamed.
15
15
  import { transientHash, upgradeFromTransient, } from "@midnight-ntwrk/compact-runtime";
16
16
  import { secp256k1 } from "@noble/curves/secp256k1.js";
17
17
  import { decodeBase58, Signature, toBeHex } from "ethers";
18
- import { bigintToBytes32BE, bytesToBigintBE, stripHexPrefix } from "./byte-codecs.js";
19
- import { attestationPreimageDescriptor } from "./compact-descriptors.js";
20
- import { HashDomain } from "./managed/contract/index.js";
18
+ import { bigintToBytes32BE, bytesToBigintBE, bytesToHex, stripHexPrefix } from "./byte-codecs.js";
19
+ import { attestedOutputPreimageDescriptor } from "./compact-descriptors.js";
20
+ import { HashDomain, pureCircuits } from "./managed/contract/index.js";
21
21
  /** secp256k1 curve (group) order n. */
22
22
  export const SECP256K1_ORDER = secp256k1.Point.Fn.ORDER;
23
23
  /**
@@ -270,27 +270,56 @@ export function secp256k1PublicKeyOf(secretKey) {
270
270
  };
271
271
  }
272
272
  /**
273
- * The attestation digest of a respond-bidirectional response:
274
- * `upgradeFromTransient(transientHash([HashDomain.attestationDigest, requestId, blockHeight, outputKind, outputLength, serializedOutput]))`,
275
- * the 32-byte digest the MPC ECDSA-signs to attest a remote execution. TS
276
- * twin of the size-generic Compact circuit `calculateSignetAttestationDigestV1`.
273
+ * The hash of a serialised execution output that the attestation digest
274
+ * commits to: `upgradeFromTransient(transientHash([HashDomain.attestedOutput, serializedOutput]))`.
275
+ * TS twin of the size-generic Compact circuit `calculateAttestedOutputHashV1`.
276
+ * The hash does not commit to the output's width (outputs that differ only
277
+ * in trailing zero bytes hash alike), so the attestation commits to the
278
+ * width separately and a verifier checks both.
279
+ *
280
+ * @param serializedOutput - The serialised execution output, exact unpadded bytes.
281
+ * @returns The 32-byte output hash.
282
+ */
283
+ export function calculateAttestedOutputHash(serializedOutput) {
284
+ return upgradeFromTransient(transientHash(attestedOutputPreimageDescriptor(serializedOutput.length), [
285
+ HashDomain.attestedOutput,
286
+ serializedOutput,
287
+ ]));
288
+ }
289
+ /**
290
+ * Whether `serializedOutput` is the output an attestation declares: its width
291
+ * is `attestedOutputLength` and its {@link calculateAttestedOutputHash} is
292
+ * `attestedOutputHash`. TS twin of the size-generic Compact circuit
293
+ * `verifyAttestedOutputV1`. Both checks are needed, as the hash alone does not
294
+ * commit to the width. Proves nothing about the attestation itself: the length
295
+ * and hash must come from a post that passed
296
+ * {@link verifyRespondBidirectionalAttestation}.
297
+ *
298
+ * @param serializedOutput - The serialised execution output, exact unpadded bytes.
299
+ * @param attestedOutputLength - The attested output width, in bytes.
300
+ * @param attestedOutputHash - The attested 32-byte output hash.
301
+ * @returns Whether the output is the attested one.
302
+ */
303
+ export function verifyAttestedOutput(serializedOutput, attestedOutputLength, attestedOutputHash) {
304
+ return (attestedOutputLength === BigInt(serializedOutput.length) &&
305
+ bytesToHex(attestedOutputHash) === bytesToHex(calculateAttestedOutputHash(serializedOutput)));
306
+ }
307
+ /**
308
+ * The attestation digest of a respond-bidirectional response for an output
309
+ * in hand: the compiled `calculateSignetAttestationDigestV1` over the
310
+ * output's width and {@link calculateAttestedOutputHash}. The 32-byte digest
311
+ * the MPC ECDSA-signs to attest a remote execution.
277
312
  *
278
313
  * @param requestId - The 32-byte request id the response answers.
279
- * @param blockHeight - Height of the finalised destination block holding the
280
- * attested transaction, in the destination chain's own numbering.
314
+ * @param blockHeight - Height of the finalised target-chain block holding the
315
+ * transaction the outcome describes (for unviable, the transaction that
316
+ * used up the replay protection), in the target chain's own numbering.
281
317
  * @param outputKind - The MPC's verdict on the execution.
282
318
  * @param serializedOutput - The serialised execution output, exact unpadded bytes.
283
319
  * @returns The 32-byte attestation digest.
284
320
  */
285
321
  export function calculateSignetAttestationDigest(requestId, blockHeight, outputKind, serializedOutput) {
286
- return upgradeFromTransient(transientHash(attestationPreimageDescriptor(serializedOutput.length), [
287
- HashDomain.attestationDigest,
288
- requestId,
289
- blockHeight,
290
- outputKind,
291
- BigInt(serializedOutput.length),
292
- serializedOutput,
293
- ]));
322
+ return pureCircuits.calculateSignetAttestationDigestV1(requestId, blockHeight, outputKind, BigInt(serializedOutput.length), calculateAttestedOutputHash(serializedOutput));
294
323
  }
295
324
  /**
296
325
  * Mint the record the MPC posts for an outcome: the attestation digest over
@@ -306,12 +335,15 @@ export function calculateSignetAttestationDigest(requestId, blockHeight, outputK
306
335
  */
307
336
  export function attestRespondBidirectional(attestation, secretKey) {
308
337
  const { requestId, blockHeight, outputKind, serializedOutput } = attestation;
309
- const digest = calculateSignetAttestationDigest(requestId, blockHeight, outputKind, serializedOutput);
338
+ const serializedOutputLength = BigInt(serializedOutput.length);
339
+ const outputHash = calculateAttestedOutputHash(serializedOutput);
340
+ const digest = pureCircuits.calculateSignetAttestationDigestV1(requestId, blockHeight, outputKind, serializedOutputLength, outputHash);
310
341
  return {
311
342
  requestId,
312
343
  blockHeight,
313
344
  outputKind,
314
- serializedOutputLength: BigInt(serializedOutput.length),
345
+ serializedOutputLength,
346
+ outputHash,
315
347
  digest,
316
348
  signature: ecdsaSignatureToMpcSignature(signAttestationDigest(digest, secretKey)),
317
349
  };
@@ -354,32 +386,31 @@ export function respondBidirectionalEventToCircuitInput(event) {
354
386
  };
355
387
  }
356
388
  /**
357
- * Off-chain twin of the in-circuit `verifyRespondBidirectionalEventV1`: checks
358
- * a posted respond-bidirectional attestation against the execution output
359
- * and the contract's pinned MPC response key, over the request id, block
360
- * height and output kind the post declares. Clients run it to sift candidate posts
361
- * before calling a contract: a post this accepts verifies in-circuit (once
362
- * flipped to circuit-input form, see
363
- * {@link respondBidirectionalEventToCircuitInput}). Takes the record as read
364
- * off the ledger (big-endian). Malformed records return `false` rather than
389
+ * Off-chain twin of the in-circuit `verifyRespondBidirectionalAttestationV1`:
390
+ * checks a posted respond-bidirectional attestation's signature against the
391
+ * contract's pinned MPC response key, over the request id, block height,
392
+ * output kind, output length and output hash the post declares, without the
393
+ * output. A post this accepts is an outcome the MPC attested for the request
394
+ * it names; the output it attests is checked by
395
+ * {@link verifyRespondBidirectionalSignature}. Takes the record as read off
396
+ * the ledger (big-endian). Malformed records return `false` rather than
365
397
  * throwing.
366
398
  *
367
- * @param serializedOutput - The serialised execution output, exact unpadded bytes.
368
399
  * @param event - The posted record to check, as read off the ledger.
369
400
  * @param mpcResponseKey - The response key the requesting contract pinned
370
401
  * (see {@link deriveMidnightResponseKey}).
371
- * @returns Whether the post is a genuine attestation of that output for the
372
- * request it names.
402
+ * @returns Whether the post is a genuine attestation for the request it names.
373
403
  */
374
- export function verifyRespondBidirectionalSignature(serializedOutput, event, mpcResponseKey) {
404
+ export function verifyRespondBidirectionalAttestation(event, mpcResponseKey) {
375
405
  let signature;
406
+ let digest;
376
407
  try {
377
408
  signature = mpcSignatureToEcdsaSignature(event.signature);
409
+ digest = pureCircuits.calculateSignetAttestationDigestV1(event.requestId, event.blockHeight, event.outputKind, event.serializedOutputLength, event.outputHash);
378
410
  }
379
411
  catch {
380
412
  return false;
381
413
  }
382
- const digest = calculateSignetAttestationDigest(event.requestId, event.blockHeight, event.outputKind, serializedOutput);
383
414
  // Compact form the verifier takes: r || s big-endian, and the key as
384
415
  // uncompressed SEC1 (0x04 || x || y).
385
416
  const compactSignature = new Uint8Array(64);
@@ -399,4 +430,26 @@ export function verifyRespondBidirectionalSignature(serializedOutput, event, mpc
399
430
  return false;
400
431
  }
401
432
  }
433
+ /**
434
+ * Off-chain twin of the in-circuit `verifyRespondBidirectionalEventV1`: checks
435
+ * that `serializedOutput` is the output a posted respond-bidirectional
436
+ * attestation declares ({@link verifyAttestedOutput}) and
437
+ * that the post's signature verifies ({@link verifyRespondBidirectionalAttestation}).
438
+ * Clients run it to sift candidate posts before calling a contract: a post
439
+ * this accepts verifies in-circuit (once flipped to circuit-input form, see
440
+ * {@link respondBidirectionalEventToCircuitInput}). Takes the record as read
441
+ * off the ledger (big-endian). Malformed records return `false` rather than
442
+ * throwing.
443
+ *
444
+ * @param serializedOutput - The serialised execution output, exact unpadded bytes.
445
+ * @param event - The posted record to check, as read off the ledger.
446
+ * @param mpcResponseKey - The response key the requesting contract pinned
447
+ * (see {@link deriveMidnightResponseKey}).
448
+ * @returns Whether the post is a genuine attestation of that output for the
449
+ * request it names.
450
+ */
451
+ export function verifyRespondBidirectionalSignature(serializedOutput, event, mpcResponseKey) {
452
+ return (verifyAttestedOutput(serializedOutput, event.serializedOutputLength, event.outputHash) &&
453
+ verifyRespondBidirectionalAttestation(event, mpcResponseKey));
454
+ }
402
455
  //# sourceMappingURL=ecdsa-attestation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ecdsa-attestation.js","sourceRoot":"","sources":["../src/ecdsa-attestation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ecdsa-attestation.js","sourceRoot":"","sources":["../src/ecdsa-attestation.ts"],"names":[],"mappings":"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"}
@@ -21,15 +21,16 @@ export declare const MIDNIGHT_CAIP2_ID = "midnight:mainnet";
21
21
  * (sig-net/mpc chain-signatures/node/src/respond_bidirectional.rs). The
22
22
  * response key is derived PER CLIENT CONTRACT from (the client contract's
23
23
  * own address, this path): it is not the MPC root key and not the key that
24
- * signs the requested transaction. Client contracts pin its hash with a
25
- * one-shot `initialise` circuit after deploy and verify
26
- * RespondBidirectionalEvents against the pin.
24
+ * signs the requested transaction. Client contracts store the key itself
25
+ * with a one-shot `initialise` circuit after deploy and verify
26
+ * RespondBidirectionalEvents against it.
27
27
  */
28
28
  export declare const MIDNIGHT_RESPOND_BIDIRECTIONAL_PATH = "midnight response key";
29
29
  /**
30
- * The two fields of a request record that select its request signing key.
31
- * The record's tx-params decomposition plays no part, so a record over any
32
- * decomposition satisfies it.
30
+ * The two fields of a request record that, with the root key of its
31
+ * `keyVersion`, select its request signing key. The record's tx-params
32
+ * decomposition plays no part, so a record over any decomposition satisfies
33
+ * it.
33
34
  */
34
35
  export type SignBidirectionalEventKeySelector = Pick<SignBidirectionalEvent, "sender" | "path">;
35
36
  /**
@@ -94,7 +95,8 @@ export declare function deriveSignBidirectionalEventSigningKey(mpcSecp256k1Publi
94
95
  /**
95
96
  * Derive the EVM address of an on-ledger request record's request signing
96
97
  * key (see {@link deriveSignBidirectionalEventSigningKey}): the signer a
97
- * response to that request must recover to.
98
+ * signature response (SignatureRespondedEvent) to that request must recover
99
+ * to.
98
100
  *
99
101
  * @param mpcSecp256k1PublicKey - The MPC root secp256k1 public key of the
100
102
  * record's `keyVersion`, in any spelling `parseSecp256k1PublicKey`
@@ -1 +1 @@
1
- {"version":3,"file":"epsilon-derivation.d.ts","sourceRoot":"","sources":["../src/epsilon-derivation.ts"],"names":[],"mappings":"AAWA,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAEnE;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB,0CAA0C,CAAC;AAEjF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,qBAAqB,CAAC;AAEpD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,mCAAmC,0BAA0B,CAAC;AAE3E;;;;GAIG;AACH,MAAM,MAAM,iCAAiC,GAAG,IAAI,CAAC,sBAAsB,EAAE,QAAQ,GAAG,MAAM,CAAC,CAAC;AAehG;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,+BAA+B,CAC7C,qBAAqB,EAAE,MAAM,EAC7B,eAAe,EAAE,MAAM,EACvB,IAAI,EAAE,MAAM,GACX,cAAc,CAEhB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,gBAAgB,CAC9B,qBAAqB,EAAE,MAAM,EAC7B,eAAe,EAAE,MAAM,EACvB,IAAI,EAAE,MAAM,GACX,MAAM,CAMR;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,sCAAsC,CACpD,qBAAqB,EAAE,MAAM,EAC7B,OAAO,EAAE,iCAAiC,GACzC,cAAc,CAMhB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,4CAA4C,CAC1D,qBAAqB,EAAE,MAAM,EAC7B,OAAO,EAAE,iCAAiC,GACzC,MAAM,CAMR;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAKrE;AAuBD;;;;;;;;;;;;GAYG;AACH,wBAAgB,yBAAyB,CACvC,qBAAqB,EAAE,MAAM,EAC7B,qBAAqB,EAAE,MAAM,GAC5B,cAAc,CAMhB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,+BAA+B,CAC7C,gBAAgB,EAAE,UAAU,EAC5B,qBAAqB,EAAE,MAAM,GAC5B,UAAU,CAcZ"}
1
+ {"version":3,"file":"epsilon-derivation.d.ts","sourceRoot":"","sources":["../src/epsilon-derivation.ts"],"names":[],"mappings":"AAWA,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAEnE;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB,0CAA0C,CAAC;AAEjF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,qBAAqB,CAAC;AAEpD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,mCAAmC,0BAA0B,CAAC;AAE3E;;;;;GAKG;AACH,MAAM,MAAM,iCAAiC,GAAG,IAAI,CAAC,sBAAsB,EAAE,QAAQ,GAAG,MAAM,CAAC,CAAC;AAehG;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,+BAA+B,CAC7C,qBAAqB,EAAE,MAAM,EAC7B,eAAe,EAAE,MAAM,EACvB,IAAI,EAAE,MAAM,GACX,cAAc,CAEhB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,gBAAgB,CAC9B,qBAAqB,EAAE,MAAM,EAC7B,eAAe,EAAE,MAAM,EACvB,IAAI,EAAE,MAAM,GACX,MAAM,CAMR;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,sCAAsC,CACpD,qBAAqB,EAAE,MAAM,EAC7B,OAAO,EAAE,iCAAiC,GACzC,cAAc,CAMhB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,4CAA4C,CAC1D,qBAAqB,EAAE,MAAM,EAC7B,OAAO,EAAE,iCAAiC,GACzC,MAAM,CAMR;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAKrE;AAuBD;;;;;;;;;;;;GAYG;AACH,wBAAgB,yBAAyB,CACvC,qBAAqB,EAAE,MAAM,EAC7B,qBAAqB,EAAE,MAAM,GAC5B,cAAc,CAMhB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,+BAA+B,CAC7C,gBAAgB,EAAE,UAAU,EAC5B,qBAAqB,EAAE,MAAM,GAC5B,UAAU,CAcZ"}
@@ -2,7 +2,7 @@
2
2
  //
3
3
  // This belongs in github.com/sig-net/signet.js, kept here until upstreamed.
4
4
  //
5
- // v2.0.0 (COLON-separated) is the only scheme the MPC answers: the Compact
5
+ // v2.0.0 (COLON-separated) is the only scheme this SDK derives: the Compact
6
6
  // contracts assert `keyVersion >= 1`, which selects v2.
7
7
  import { secp256k1 } from "@noble/curves/secp256k1.js";
8
8
  import { computeAddress, keccak256, toUtf8Bytes } from "ethers";
@@ -29,9 +29,9 @@ export const MIDNIGHT_CAIP2_ID = "midnight:mainnet";
29
29
  * (sig-net/mpc chain-signatures/node/src/respond_bidirectional.rs). The
30
30
  * response key is derived PER CLIENT CONTRACT from (the client contract's
31
31
  * own address, this path): it is not the MPC root key and not the key that
32
- * signs the requested transaction. Client contracts pin its hash with a
33
- * one-shot `initialise` circuit after deploy and verify
34
- * RespondBidirectionalEvents against the pin.
32
+ * signs the requested transaction. Client contracts store the key itself
33
+ * with a one-shot `initialise` circuit after deploy and verify
34
+ * RespondBidirectionalEvents against it.
35
35
  */
36
36
  export const MIDNIGHT_RESPOND_BIDIRECTIONAL_PATH = "midnight response key";
37
37
  /**
@@ -114,7 +114,8 @@ export function deriveSignBidirectionalEventSigningKey(mpcSecp256k1PublicKey, re
114
114
  /**
115
115
  * Derive the EVM address of an on-ledger request record's request signing
116
116
  * key (see {@link deriveSignBidirectionalEventSigningKey}): the signer a
117
- * response to that request must recover to.
117
+ * signature response (SignatureRespondedEvent) to that request must recover
118
+ * to.
118
119
  *
119
120
  * @param mpcSecp256k1PublicKey - The MPC root secp256k1 public key of the
120
121
  * record's `keyVersion`, in any spelling `parseSecp256k1PublicKey`
@@ -1 +1 @@
1
- {"version":3,"file":"epsilon-derivation.js","sourceRoot":"","sources":["../src/epsilon-derivation.ts"],"names":[],"mappings":"AAAA,sFAAsF;AACtF,EAAE;AACF,4EAA4E;AAC5E,EAAE;AACF,2EAA2E;AAC3E,wDAAwD;AAExD,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAEhE,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClG,OAAO,EACL,wBAAwB,EACxB,mCAAmC,EACnC,eAAe,GAEhB,MAAM,wBAAwB,CAAC;AAGhC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,uCAAuC,CAAC;AAEjF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,kBAAkB,CAAC;AAEpD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,mCAAmC,GAAG,uBAAuB,CAAC;AAS3E;;;;;;;;GAQG;AACH,SAAS,yBAAyB,CAAC,eAAuB;IACxD,OAAO,cAAc,CAAC,eAAe,CAAC,CAAC,WAAW,EAAE,CAAC;AACvD,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,+BAA+B,CAC7C,qBAA6B,EAC7B,eAAuB,EACvB,IAAY;IAEZ,OAAO,cAAc,CAAC,qBAAqB,EAAE,yBAAyB,CAAC,eAAe,CAAC,EAAE,IAAI,CAAC,CAAC;AACjG,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,gBAAgB,CAC9B,qBAA6B,EAC7B,eAAuB,EACvB,IAAY;IAEZ,OAAO,cAAc,CACnB,wBAAwB,CACtB,+BAA+B,CAAC,qBAAqB,EAAE,eAAe,EAAE,IAAI,CAAC,CAC9E,CACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,sCAAsC,CACpD,qBAA6B,EAC7B,OAA0C;IAE1C,OAAO,+BAA+B,CACpC,qBAAqB,EACrB,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAChC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CACzB,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,4CAA4C,CAC1D,qBAA6B,EAC7B,OAA0C;IAE1C,OAAO,cAAc,CACnB,wBAAwB,CACtB,sCAAsC,CAAC,qBAAqB,EAAE,OAAO,CAAC,CACvE,CACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,aAAa,CAAC,SAAiB,EAAE,IAAY;IAC3D,MAAM,QAAQ,GAAG,GAAG,yBAAyB,IAAI,iBAAiB,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;IAC1F,uEAAuE;IACvE,iDAAiD;IACjD,OAAO,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC;AACpE,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,cAAc,CACrB,qBAA6B,EAC7B,SAAiB,EACjB,IAAY;IAEZ,MAAM,OAAO,GAAG,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAC/C,MAAM,SAAS,GAAG,mCAAmC,CAAC,qBAAqB,CAAC,CAAC;IAC7E,MAAM,UAAU,GACd,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;IACrF,OAAO,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AAC/D,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,yBAAyB,CACvC,qBAA6B,EAC7B,qBAA6B;IAE7B,OAAO,cAAc,CACnB,qBAAqB,EACrB,yBAAyB,CAAC,qBAAqB,CAAC,EAChD,mCAAmC,CACpC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,+BAA+B,CAC7C,gBAA4B,EAC5B,qBAA6B;IAE7B,IAAI,gBAAgB,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,6CAA6C,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAClG,CAAC;IACD,MAAM,IAAI,GAAG,eAAe,CAAC,gBAAgB,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,aAAa,CAC3B,yBAAyB,CAAC,qBAAqB,CAAC,EAChD,mCAAmC,CACpC,CAAC;IACF,MAAM,KAAK,GAAG,CAAC,IAAI,GAAG,OAAO,CAAC,GAAG,eAAe,CAAC;IACjD,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,iBAAiB,CAAC,KAAK,CAAC,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"epsilon-derivation.js","sourceRoot":"","sources":["../src/epsilon-derivation.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -12,7 +12,7 @@ export { abiWordToBool, abiWordToUint128, assembleCalldata, boolAbiWord, calcula
12
12
  export { calculateRequestId } from "./signet-request-id.ts";
13
13
  export * from "./signet-request-response-reader.ts";
14
14
  export { type ContractAddress, contractAddressFromHex, type Maybe, MPCDestination, MPCSignatureAlgorithm, parseRequestIdHex, PATH_BYTES, type RequestId, requestIdBytes, type RequestIdHex, requestIdHex, type RequestIdPreimage, type SignBidirectionalEvent, type SignBidirectionalEventIndex, type SignBidirectionalEventLedgerMap, toSignBidirectionalEventIndex, TxParamType, } from "./signet-requests.ts";
15
- export { formatSecp256k1PublicKey, normaliseSecp256k1PublicKey, parseSecp256k1PublicKey, respondBidirectionalEventToCircuitInput, SECP256K1_ORDER, type Secp256k1Point, signatureRespondedEventToSignature, verifyRespondBidirectionalSignature, } from "./ecdsa-attestation.ts";
15
+ export { calculateAttestedOutputHash, formatSecp256k1PublicKey, normaliseSecp256k1PublicKey, parseSecp256k1PublicKey, respondBidirectionalEventToCircuitInput, SECP256K1_ORDER, type Secp256k1Point, signatureRespondedEventToSignature, verifyAttestedOutput, verifyRespondBidirectionalAttestation, verifyRespondBidirectionalSignature, } from "./ecdsa-attestation.ts";
16
16
  /**
17
17
  * Compiled pure circuits and protocol enums of Signet.compact (run
18
18
  * `yarn compile` first). Off-chain code MUST use these instead of re-porting
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,SAAS,EACT,aAAa,EACb,eAAe,EACf,UAAU,EACV,UAAU,EACV,cAAc,GACf,MAAM,kBAAkB,CAAC;AAI1B,cAAc,gBAAgB,CAAC;AAG/B,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,+BAA+B,EAC/B,yBAAyB,EACzB,4CAA4C,EAC5C,sCAAsC,EACtC,yBAAyB,EACzB,iBAAiB,EACjB,mCAAmC,EACnC,KAAK,iCAAiC,GACvC,MAAM,yBAAyB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,OAAO,EAAE,KAAK,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACvF,cAAc,sCAAsC,CAAC;AACrD,cAAc,sCAAsC,CAAC;AACrD,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,oCAAoC,EAAE,MAAM,uCAAuC,CAAC;AAC7F,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,EACX,+BAA+B,EAC/B,KAAK,kBAAkB,EACvB,iBAAiB,EACjB,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,cAAc,EACd,4CAA4C,EAC5C,8CAA8C,GAC/C,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,cAAc,qCAAqC,CAAC;AACpD,OAAO,EACL,KAAK,eAAe,EACpB,sBAAsB,EACtB,KAAK,KAAK,EACV,cAAc,EACd,qBAAqB,EACrB,iBAAiB,EACjB,UAAU,EACV,KAAK,SAAS,EACd,cAAc,EACd,KAAK,YAAY,EACjB,YAAY,EACZ,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC3B,KAAK,2BAA2B,EAChC,KAAK,+BAA+B,EACpC,6BAA6B,EAC7B,WAAW,GACZ,MAAM,sBAAsB,CAAC;AAK9B,OAAO,EACL,wBAAwB,EACxB,2BAA2B,EAC3B,uBAAuB,EACvB,uCAAuC,EACvC,eAAe,EACf,KAAK,cAAc,EACnB,kCAAkC,EAClC,mCAAmC,GACpC,MAAM,wBAAwB,CAAC;AAEhC;;;;GAIG;AACH,OAAO,EACL,UAAU,EACV,UAAU,EACV,KAAK,YAAY,EACjB,YAAY,GACb,MAAM,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,SAAS,EACT,aAAa,EACb,eAAe,EACf,UAAU,EACV,UAAU,EACV,cAAc,GACf,MAAM,kBAAkB,CAAC;AAI1B,cAAc,gBAAgB,CAAC;AAG/B,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,+BAA+B,EAC/B,yBAAyB,EACzB,4CAA4C,EAC5C,sCAAsC,EACtC,yBAAyB,EACzB,iBAAiB,EACjB,mCAAmC,EACnC,KAAK,iCAAiC,GACvC,MAAM,yBAAyB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,OAAO,EAAE,KAAK,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACvF,cAAc,sCAAsC,CAAC;AACrD,cAAc,sCAAsC,CAAC;AACrD,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,oCAAoC,EAAE,MAAM,uCAAuC,CAAC;AAC7F,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,EACX,+BAA+B,EAC/B,KAAK,kBAAkB,EACvB,iBAAiB,EACjB,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,cAAc,EACd,4CAA4C,EAC5C,8CAA8C,GAC/C,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,cAAc,qCAAqC,CAAC;AACpD,OAAO,EACL,KAAK,eAAe,EACpB,sBAAsB,EACtB,KAAK,KAAK,EACV,cAAc,EACd,qBAAqB,EACrB,iBAAiB,EACjB,UAAU,EACV,KAAK,SAAS,EACd,cAAc,EACd,KAAK,YAAY,EACjB,YAAY,EACZ,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC3B,KAAK,2BAA2B,EAChC,KAAK,+BAA+B,EACpC,6BAA6B,EAC7B,WAAW,GACZ,MAAM,sBAAsB,CAAC;AAK9B,OAAO,EACL,2BAA2B,EAC3B,wBAAwB,EACxB,2BAA2B,EAC3B,uBAAuB,EACvB,uCAAuC,EACvC,eAAe,EACf,KAAK,cAAc,EACnB,kCAAkC,EAClC,oBAAoB,EACpB,qCAAqC,EACrC,mCAAmC,GACpC,MAAM,wBAAwB,CAAC;AAEhC;;;;GAIG;AACH,OAAO,EACL,UAAU,EACV,UAAU,EACV,KAAK,YAAY,EACjB,YAAY,GACb,MAAM,6BAA6B,CAAC"}
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  // Midnight-side sig-net integration: the client-agnostic signet protocol
2
- // library (wire structs, state readers, event decoders, request feed,
2
+ // library (wire structs, state readers, event decoders, event source,
3
3
  // crypto) plus the compiled pure circuits of the shared Compact module.
4
4
  export * from "./abi-serde.js";
5
5
  export { bigintToBytes32, bigintToBytes32BE, BLS_ORDER, bytesToBigint, bytesToBigintBE, bytesToHex, hexToBytes, stripHexPrefix, } from "./byte-codecs.js";
@@ -24,7 +24,7 @@ export { contractAddressFromHex, MPCDestination, MPCSignatureAlgorithm, parseReq
24
24
  // (the attestation-minting helpers that take a secret key live THERE), and
25
25
  // its record decoder (mpcSignatureToEcdsaSignature) and noble-point parser
26
26
  // (parseSecp256k1PublicKeyToNoblePoint) are package-internal.
27
- export { formatSecp256k1PublicKey, normaliseSecp256k1PublicKey, parseSecp256k1PublicKey, respondBidirectionalEventToCircuitInput, SECP256K1_ORDER, signatureRespondedEventToSignature, verifyRespondBidirectionalSignature, } from "./ecdsa-attestation.js";
27
+ export { calculateAttestedOutputHash, formatSecp256k1PublicKey, normaliseSecp256k1PublicKey, parseSecp256k1PublicKey, respondBidirectionalEventToCircuitInput, SECP256K1_ORDER, signatureRespondedEventToSignature, verifyAttestedOutput, verifyRespondBidirectionalAttestation, verifyRespondBidirectionalSignature, } from "./ecdsa-attestation.js";
28
28
  /**
29
29
  * Compiled pure circuits and protocol enums of Signet.compact (run
30
30
  * `yarn compile` first). Off-chain code MUST use these instead of re-porting
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,sEAAsE;AACtE,wEAAwE;AAExE,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,SAAS,EACT,aAAa,EACb,eAAe,EACf,UAAU,EACV,UAAU,EACV,cAAc,GACf,MAAM,kBAAkB,CAAC;AAC1B,uEAAuE;AACvE,4EAA4E;AAC5E,4EAA4E;AAC5E,cAAc,gBAAgB,CAAC;AAC/B,2EAA2E;AAC3E,yEAAyE;AACzE,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,+BAA+B,EAC/B,yBAAyB,EACzB,4CAA4C,EAC5C,sCAAsC,EACtC,yBAAyB,EACzB,iBAAiB,EACjB,mCAAmC,GAEpC,MAAM,yBAAyB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,OAAO,EAAyB,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACvF,cAAc,sCAAsC,CAAC;AACrD,cAAc,sCAAsC,CAAC;AACrD,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,oCAAoC,EAAE,MAAM,uCAAuC,CAAC;AAC7F,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,EACX,+BAA+B,EAE/B,iBAAiB,EAGjB,cAAc,EACd,4CAA4C,EAC5C,8CAA8C,GAC/C,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,cAAc,qCAAqC,CAAC;AACpD,OAAO,EAEL,sBAAsB,EAEtB,cAAc,EACd,qBAAqB,EACrB,iBAAiB,EACjB,UAAU,EAEV,cAAc,EAEd,YAAY,EAKZ,6BAA6B,EAC7B,WAAW,GACZ,MAAM,sBAAsB,CAAC;AAC9B,2EAA2E;AAC3E,2EAA2E;AAC3E,2EAA2E;AAC3E,8DAA8D;AAC9D,OAAO,EACL,wBAAwB,EACxB,2BAA2B,EAC3B,uBAAuB,EACvB,uCAAuC,EACvC,eAAe,EAEf,kCAAkC,EAClC,mCAAmC,GACpC,MAAM,wBAAwB,CAAC;AAEhC;;;;GAIG;AACH,OAAO,EACL,UAAU,EACV,UAAU,EAEV,YAAY,GACb,MAAM,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,sEAAsE;AACtE,wEAAwE;AAExE,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,SAAS,EACT,aAAa,EACb,eAAe,EACf,UAAU,EACV,UAAU,EACV,cAAc,GACf,MAAM,kBAAkB,CAAC;AAC1B,uEAAuE;AACvE,4EAA4E;AAC5E,4EAA4E;AAC5E,cAAc,gBAAgB,CAAC;AAC/B,2EAA2E;AAC3E,yEAAyE;AACzE,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,+BAA+B,EAC/B,yBAAyB,EACzB,4CAA4C,EAC5C,sCAAsC,EACtC,yBAAyB,EACzB,iBAAiB,EACjB,mCAAmC,GAEpC,MAAM,yBAAyB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,OAAO,EAAyB,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACvF,cAAc,sCAAsC,CAAC;AACrD,cAAc,sCAAsC,CAAC;AACrD,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,oCAAoC,EAAE,MAAM,uCAAuC,CAAC;AAC7F,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,EACX,+BAA+B,EAE/B,iBAAiB,EAGjB,cAAc,EACd,4CAA4C,EAC5C,8CAA8C,GAC/C,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,cAAc,qCAAqC,CAAC;AACpD,OAAO,EAEL,sBAAsB,EAEtB,cAAc,EACd,qBAAqB,EACrB,iBAAiB,EACjB,UAAU,EAEV,cAAc,EAEd,YAAY,EAKZ,6BAA6B,EAC7B,WAAW,GACZ,MAAM,sBAAsB,CAAC;AAC9B,2EAA2E;AAC3E,2EAA2E;AAC3E,2EAA2E;AAC3E,8DAA8D;AAC9D,OAAO,EACL,2BAA2B,EAC3B,wBAAwB,EACxB,2BAA2B,EAC3B,uBAAuB,EACvB,uCAAuC,EACvC,eAAe,EAEf,kCAAkC,EAClC,oBAAoB,EACpB,qCAAqC,EACrC,mCAAmC,GACpC,MAAM,wBAAwB,CAAC;AAEhC;;;;GAIG;AACH,OAAO,EACL,UAAU,EACV,UAAU,EAEV,YAAY,GACb,MAAM,6BAA6B,CAAC"}