@aztec/stdlib 2.1.0-rc.8 → 2.1.1-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 (67) hide show
  1. package/dest/block/attestation_info.d.ts +30 -0
  2. package/dest/block/attestation_info.d.ts.map +1 -0
  3. package/dest/block/attestation_info.js +39 -0
  4. package/dest/block/index.d.ts +1 -0
  5. package/dest/block/index.d.ts.map +1 -1
  6. package/dest/block/index.js +1 -0
  7. package/dest/block/l2_block_source.d.ts +34 -5
  8. package/dest/block/l2_block_source.d.ts.map +1 -1
  9. package/dest/block/published_l2_block.d.ts +0 -6
  10. package/dest/block/published_l2_block.d.ts.map +1 -1
  11. package/dest/block/published_l2_block.js +0 -9
  12. package/dest/interfaces/archiver.d.ts +1 -1
  13. package/dest/interfaces/archiver.d.ts.map +1 -1
  14. package/dest/interfaces/archiver.js +10 -3
  15. package/dest/interfaces/aztec-node-admin.d.ts +35 -34
  16. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  17. package/dest/interfaces/aztec-node-admin.js +2 -2
  18. package/dest/interfaces/aztec-node.d.ts +24 -0
  19. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  20. package/dest/interfaces/aztec-node.js +4 -0
  21. package/dest/interfaces/p2p.d.ts +2 -0
  22. package/dest/interfaces/p2p.d.ts.map +1 -1
  23. package/dest/interfaces/p2p.js +2 -1
  24. package/dest/interfaces/tx_provider.d.ts +1 -1
  25. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  26. package/dest/interfaces/validator.d.ts +93 -1
  27. package/dest/interfaces/validator.d.ts.map +1 -1
  28. package/dest/interfaces/validator.js +6 -0
  29. package/dest/p2p/block_attestation.d.ts +13 -13
  30. package/dest/p2p/block_attestation.d.ts.map +1 -1
  31. package/dest/p2p/block_attestation.js +27 -25
  32. package/dest/p2p/block_proposal.d.ts +4 -8
  33. package/dest/p2p/block_proposal.d.ts.map +1 -1
  34. package/dest/p2p/block_proposal.js +10 -13
  35. package/dest/p2p/gossipable.d.ts +4 -12
  36. package/dest/p2p/gossipable.d.ts.map +1 -1
  37. package/dest/p2p/gossipable.js +4 -7
  38. package/dest/p2p/topic_type.d.ts +4 -8
  39. package/dest/p2p/topic_type.d.ts.map +1 -1
  40. package/dest/p2p/topic_type.js +14 -8
  41. package/dest/tests/factories.d.ts +1 -1
  42. package/dest/tests/factories.d.ts.map +1 -1
  43. package/dest/tests/factories.js +6 -5
  44. package/dest/tests/mocks.d.ts +3 -1
  45. package/dest/tests/mocks.d.ts.map +1 -1
  46. package/dest/tests/mocks.js +33 -11
  47. package/dest/zkpassport/index.d.ts +15 -11
  48. package/dest/zkpassport/index.d.ts.map +1 -1
  49. package/dest/zkpassport/index.js +18 -17
  50. package/package.json +9 -9
  51. package/src/block/attestation_info.ts +62 -0
  52. package/src/block/index.ts +1 -0
  53. package/src/block/l2_block_source.ts +37 -5
  54. package/src/block/published_l2_block.ts +0 -17
  55. package/src/interfaces/archiver.ts +12 -4
  56. package/src/interfaces/aztec-node-admin.ts +2 -2
  57. package/src/interfaces/aztec-node.ts +36 -0
  58. package/src/interfaces/p2p.ts +4 -0
  59. package/src/interfaces/tx_provider.ts +1 -0
  60. package/src/interfaces/validator.ts +14 -1
  61. package/src/p2p/block_attestation.ts +31 -24
  62. package/src/p2p/block_proposal.ts +9 -16
  63. package/src/p2p/gossipable.ts +4 -12
  64. package/src/p2p/topic_type.ts +15 -8
  65. package/src/tests/factories.ts +7 -10
  66. package/src/tests/mocks.ts +53 -17
  67. package/src/zkpassport/index.ts +37 -33
@@ -1 +1 @@
1
- {"version":3,"file":"factories.d.ts","sourceRoot":"","sources":["../../src/tests/factories.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"factories.d.ts","sourceRoot":"","sources":["../../src/tests/factories.ts"],"names":[],"mappings":"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"}
@@ -3,9 +3,9 @@ import { makeBatchedBlobAccumulator, makeBlockBlobPublicInputs, makeSpongeBlob }
3
3
  import { ARCHIVE_HEIGHT, AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED, AZTEC_MAX_EPOCH_DURATION, BLOBS_PER_BLOCK, CONTRACT_CLASS_LOG_SIZE_IN_FIELDS, FIELDS_PER_BLOB, FIXED_DA_GAS, FIXED_L2_GAS, GeneratorIndex, L1_TO_L2_MSG_SUBTREE_SIBLING_PATH_LENGTH, MAX_CONTRACT_CLASS_LOGS_PER_TX, MAX_ENQUEUED_CALLS_PER_CALL, MAX_ENQUEUED_CALLS_PER_TX, MAX_KEY_VALIDATION_REQUESTS_PER_CALL, MAX_L2_TO_L1_MSGS_PER_CALL, MAX_L2_TO_L1_MSGS_PER_TX, MAX_NOTE_HASHES_PER_CALL, MAX_NOTE_HASHES_PER_TX, MAX_NOTE_HASH_READ_REQUESTS_PER_CALL, MAX_NULLIFIERS_PER_CALL, MAX_NULLIFIERS_PER_TX, MAX_NULLIFIER_READ_REQUESTS_PER_CALL, MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL, MAX_PRIVATE_LOGS_PER_CALL, MAX_PRIVATE_LOGS_PER_TX, MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, MAX_PUBLIC_LOGS_PER_TX, MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, NESTED_RECURSIVE_PROOF_LENGTH, NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH, NOTE_HASH_SUBTREE_SIBLING_PATH_LENGTH, NULLIFIER_SUBTREE_SIBLING_PATH_LENGTH, NULLIFIER_TREE_HEIGHT, NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP, NUM_BASE_PARITY_PER_ROOT_PARITY, NUM_MSGS_PER_BASE_PARITY, PRIVATE_LOG_SIZE_IN_FIELDS, PUBLIC_DATA_TREE_HEIGHT, PUBLIC_LOG_SIZE_IN_FIELDS, RECURSIVE_PROOF_LENGTH, TUBE_PROOF_LENGTH, VK_TREE_HEIGHT } from '@aztec/constants';
4
4
  import { makeHalfFullTuple, makeTuple } from '@aztec/foundation/array';
5
5
  import { compact, padArrayEnd } from '@aztec/foundation/collection';
6
- import { SchnorrSignature, poseidon2HashWithSeparator, sha256 } from '@aztec/foundation/crypto';
6
+ import { Grumpkin, SchnorrSignature, poseidon2HashWithSeparator, sha256 } from '@aztec/foundation/crypto';
7
7
  import { EthAddress } from '@aztec/foundation/eth-address';
8
- import { BLS12Point, Fr, GrumpkinScalar, Point } from '@aztec/foundation/fields';
8
+ import { BLS12Point, Fq, Fr, GrumpkinScalar, Point } from '@aztec/foundation/fields';
9
9
  import { MembershipWitness } from '@aztec/foundation/trees';
10
10
  import { FunctionSelector } from '../abi/function_selector.js';
11
11
  import { ContractStorageRead } from '../avm/contract_storage_read.js';
@@ -751,14 +751,15 @@ export function makeMap(size, fn, offset = 0) {
751
751
  export async function makeMapAsync(size, fn, offset = 0) {
752
752
  return new Map(await makeArrayAsync(size, (i)=>fn(i + offset)));
753
753
  }
754
- export function makePublicKeys(seed = 0) {
755
- return new PublicKeys(new Point(new Fr(seed + 0), new Fr(seed + 1), false), new Point(new Fr(seed + 2), new Fr(seed + 3), false), new Point(new Fr(seed + 4), new Fr(seed + 5), false), new Point(new Fr(seed + 6), new Fr(seed + 7), false));
754
+ export async function makePublicKeys(seed = 0) {
755
+ const f = (offset)=>new Grumpkin().mul(Grumpkin.generator, new Fq(seed + offset));
756
+ return new PublicKeys(await f(0), await f(1), await f(2), await f(3));
756
757
  }
757
758
  export async function makeContractInstanceFromClassId(classId, seed = 0, overrides) {
758
759
  const salt = new Fr(seed);
759
760
  const initializationHash = overrides?.initializationHash ?? new Fr(seed + 1);
760
761
  const deployer = overrides?.deployer ?? new AztecAddress(new Fr(seed + 2));
761
- const publicKeys = overrides?.publicKeys ?? makePublicKeys(seed + 3);
762
+ const publicKeys = overrides?.publicKeys ?? await makePublicKeys(seed + 3);
762
763
  const saltedInitializationHash = await poseidon2HashWithSeparator([
763
764
  salt,
764
765
  initializationHash,
@@ -43,6 +43,8 @@ export declare const randomDeployedContract: () => Promise<{
43
43
  }>;
44
44
  export interface MakeConsensusPayloadOptions {
45
45
  signer?: Secp256k1Signer;
46
+ attesterSigner?: Secp256k1Signer;
47
+ proposerSigner?: Secp256k1Signer;
46
48
  header?: BlockHeader;
47
49
  archive?: Fr;
48
50
  stateReference?: StateReference;
@@ -52,7 +54,7 @@ export interface MakeConsensusPayloadOptions {
52
54
  export declare const makeAndSignCommitteeAttestationsAndSigners: (attestationsAndSigners: CommitteeAttestationsAndSigners, signer?: Secp256k1Signer) => import("../block/index.js").Signature;
53
55
  export declare const makeBlockProposal: (options?: MakeConsensusPayloadOptions) => BlockProposal;
54
56
  export declare const makeBlockAttestation: (options?: MakeConsensusPayloadOptions) => BlockAttestation;
55
- export declare const makeBlockAttestationFromBlock: (block: L2Block, signer?: Secp256k1Signer) => BlockAttestation;
57
+ export declare const makeBlockAttestationFromBlock: (block: L2Block, attesterSigner?: Secp256k1Signer, proposerSigner?: Secp256k1Signer) => BlockAttestation;
56
58
  export declare function randomPublishedL2Block(l2BlockNumber: number, opts?: {
57
59
  signers?: Secp256k1Signer[];
58
60
  }): Promise<PublishedL2Block>;
@@ -1 +1 @@
1
- {"version":3,"file":"mocks.d.ts","sourceRoot":"","sources":["../../src/tests/mocks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mocks.d.ts","sourceRoot":"","sources":["../../src/tests/mocks.ts"],"names":[],"mappings":"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"}
@@ -153,7 +153,7 @@ export const makeAndSignCommitteeAttestationsAndSigners = (attestationsAndSigner
153
153
  return signer.sign(hash);
154
154
  };
155
155
  export const makeBlockProposal = (options)=>{
156
- const { blockNumber, payload, signature } = makeAndSignConsensusPayload(SignatureDomainSeparator.blockProposal, options);
156
+ const { payload, signature } = makeAndSignConsensusPayload(SignatureDomainSeparator.blockProposal, options);
157
157
  const txHashes = options?.txHashes ?? [
158
158
  0,
159
159
  1,
@@ -162,21 +162,43 @@ export const makeBlockProposal = (options)=>{
162
162
  4,
163
163
  5
164
164
  ].map(()=>TxHash.random());
165
- return new BlockProposal(blockNumber, payload, signature, txHashes, options?.txs ?? []);
165
+ return new BlockProposal(payload, signature, txHashes, options?.txs ?? []);
166
166
  };
167
167
  // TODO(https://github.com/AztecProtocol/aztec-packages/issues/8028)
168
168
  export const makeBlockAttestation = (options)=>{
169
- const { blockNumber, payload, signature } = makeAndSignConsensusPayload(SignatureDomainSeparator.blockAttestation, options);
170
- return new BlockAttestation(blockNumber, payload, signature);
169
+ const header = options?.header ?? makeHeader(1);
170
+ const { signer, attesterSigner = signer ?? Secp256k1Signer.random(), proposerSigner = signer ?? Secp256k1Signer.random(), archive = Fr.random(), stateReference = header.state } = options ?? {};
171
+ const payload = ConsensusPayload.fromFields({
172
+ header: header.toPropose(),
173
+ archive,
174
+ stateReference
175
+ });
176
+ // Sign as attester
177
+ const attestationHash = getHashedSignaturePayloadEthSignedMessage(payload, SignatureDomainSeparator.blockAttestation);
178
+ const attestationSignature = attesterSigner.sign(attestationHash);
179
+ // Sign as proposer
180
+ const proposalHash = getHashedSignaturePayloadEthSignedMessage(payload, SignatureDomainSeparator.blockProposal);
181
+ const proposerSignature = proposerSigner.sign(proposalHash);
182
+ return new BlockAttestation(payload, attestationSignature, proposerSignature);
171
183
  };
172
- export const makeBlockAttestationFromBlock = (block, signer)=>{
173
- return makeBlockAttestation({
174
- signer,
175
- header: block.header,
176
- archive: block.archive.root,
177
- stateReference: block.header.state,
178
- txHashes: block.body.txEffects.map((tx)=>tx.txHash)
184
+ export const makeBlockAttestationFromBlock = (block, attesterSigner, proposerSigner)=>{
185
+ const header = block.header;
186
+ const archive = block.archive.root;
187
+ const stateReference = block.header.state;
188
+ const payload = ConsensusPayload.fromFields({
189
+ header: header.toPropose(),
190
+ archive,
191
+ stateReference
179
192
  });
193
+ // Sign as attester
194
+ const attestationHash = getHashedSignaturePayloadEthSignedMessage(payload, SignatureDomainSeparator.blockAttestation);
195
+ const attestationSigner = attesterSigner ?? Secp256k1Signer.random();
196
+ const attestationSignature = attestationSigner.sign(attestationHash);
197
+ // Sign as proposer
198
+ const proposalHash = getHashedSignaturePayloadEthSignedMessage(payload, SignatureDomainSeparator.blockProposal);
199
+ const proposalSignerToUse = proposerSigner ?? Secp256k1Signer.random();
200
+ const proposerSignature = proposalSignerToUse.sign(proposalHash);
201
+ return new BlockAttestation(payload, attestationSignature, proposerSignature);
180
202
  };
181
203
  export async function randomPublishedL2Block(l2BlockNumber, opts = {}) {
182
204
  const block = await L2Block.random(l2BlockNumber);
@@ -1,15 +1,20 @@
1
1
  import { Buffer32 } from '@aztec/foundation/buffer';
2
2
  import { Fr } from '@aztec/foundation/fields';
3
3
  export type ViemZkPassportProofParams = {
4
- vkeyHash: `0x${string}`;
5
- proof: `0x${string}`;
6
- publicInputs: `0x${string}`[];
7
- committedInputs: `0x${string}`;
8
- committedInputCounts: bigint[];
9
- validityPeriodInSeconds: bigint;
10
- domain: string;
11
- scope: string;
12
- devMode: boolean;
4
+ proofVerificationData: {
5
+ vkeyHash: `0x${string}`;
6
+ proof: `0x${string}`;
7
+ publicInputs: `0x${string}`[];
8
+ };
9
+ commitments: {
10
+ committedInputs: `0x${string}`;
11
+ };
12
+ serviceConfig: {
13
+ validityPeriodInSeconds: bigint;
14
+ domain: string;
15
+ scope: string;
16
+ devMode: boolean;
17
+ };
13
18
  };
14
19
  export declare class ZkPassportProofParams {
15
20
  devMode: boolean;
@@ -17,11 +22,10 @@ export declare class ZkPassportProofParams {
17
22
  proof: Buffer;
18
23
  publicInputs: Fr[];
19
24
  committedInputs: Buffer;
20
- committedInputCounts: bigint[];
21
25
  validityPeriodInSeconds: bigint;
22
26
  domain: string;
23
27
  scope: string;
24
- constructor(devMode: boolean, vkeyHash: Buffer32, proof: Buffer, publicInputs: Fr[], committedInputs: Buffer, committedInputCounts: bigint[], validityPeriodInSeconds: bigint, domain: string, scope: string);
28
+ constructor(devMode: boolean, vkeyHash: Buffer32, proof: Buffer, publicInputs: Fr[], committedInputs: Buffer, validityPeriodInSeconds: bigint, domain: string, scope: string);
25
29
  toBuffer(): Buffer<ArrayBufferLike>;
26
30
  static random(): ZkPassportProofParams;
27
31
  static fromBuffer(buffer: Buffer): ZkPassportProofParams;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/zkpassport/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEpD,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAI9C,MAAM,MAAM,yBAAyB,GAAG;IACtC,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAC;IACxB,KAAK,EAAE,KAAK,MAAM,EAAE,CAAC;IACrB,YAAY,EAAE,KAAK,MAAM,EAAE,EAAE,CAAC;IAC9B,eAAe,EAAE,KAAK,MAAM,EAAE,CAAC;IAC/B,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,uBAAuB,EAAE,MAAM,CAAC;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAIF,qBAAa,qBAAqB;IAEvB,OAAO,EAAE,OAAO;IAChB,QAAQ,EAAE,QAAQ;IAClB,KAAK,EAAE,MAAM;IACb,YAAY,EAAE,EAAE,EAAE;IAClB,eAAe,EAAE,MAAM;IACvB,oBAAoB,EAAE,MAAM,EAAE;IAC9B,uBAAuB,EAAE,MAAM;IAC/B,MAAM,EAAE,MAAM;IACd,KAAK,EAAE,MAAM;gBARb,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,EAAE,EAAE,EAClB,eAAe,EAAE,MAAM,EACvB,oBAAoB,EAAE,MAAM,EAAE,EAC9B,uBAAuB,EAAE,MAAM,EAC/B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM;IAGtB,QAAQ;IAkBR,MAAM,CAAC,MAAM;IAqBb,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM;IAehC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,yBAAyB;IAcjD,MAAM,IAAI,yBAAyB;CAapC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/zkpassport/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEpD,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAI9C,MAAM,MAAM,yBAAyB,GAAG;IACtC,qBAAqB,EAAE;QACrB,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAC;QACxB,KAAK,EAAE,KAAK,MAAM,EAAE,CAAC;QACrB,YAAY,EAAE,KAAK,MAAM,EAAE,EAAE,CAAC;KAC/B,CAAC;IACF,WAAW,EAAE;QACX,eAAe,EAAE,KAAK,MAAM,EAAE,CAAC;KAChC,CAAC;IACF,aAAa,EAAE;QACb,uBAAuB,EAAE,MAAM,CAAC;QAChC,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,OAAO,CAAC;KAClB,CAAC;CACH,CAAC;AAIF,qBAAa,qBAAqB;IAEvB,OAAO,EAAE,OAAO;IAChB,QAAQ,EAAE,QAAQ;IAClB,KAAK,EAAE,MAAM;IACb,YAAY,EAAE,EAAE,EAAE;IAClB,eAAe,EAAE,MAAM;IACvB,uBAAuB,EAAE,MAAM;IAC/B,MAAM,EAAE,MAAM;IACd,KAAK,EAAE,MAAM;gBAPb,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,EAAE,EAAE,EAClB,eAAe,EAAE,MAAM,EACvB,uBAAuB,EAAE,MAAM,EAC/B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM;IAGtB,QAAQ;IAgBR,MAAM,CAAC,MAAM;IAoBb,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM;IAchC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,yBAAyB;IAajD,MAAM,IAAI,yBAAyB;CAkBpC"}
@@ -11,17 +11,15 @@ export class ZkPassportProofParams {
11
11
  proof;
12
12
  publicInputs;
13
13
  committedInputs;
14
- committedInputCounts;
15
14
  validityPeriodInSeconds;
16
15
  domain;
17
16
  scope;
18
- constructor(devMode, vkeyHash, proof, publicInputs, committedInputs, committedInputCounts, validityPeriodInSeconds, domain, scope){
17
+ constructor(devMode, vkeyHash, proof, publicInputs, committedInputs, validityPeriodInSeconds, domain, scope){
19
18
  this.devMode = devMode;
20
19
  this.vkeyHash = vkeyHash;
21
20
  this.proof = proof;
22
21
  this.publicInputs = publicInputs;
23
22
  this.committedInputs = committedInputs;
24
- this.committedInputCounts = committedInputCounts;
25
23
  this.validityPeriodInSeconds = validityPeriodInSeconds;
26
24
  this.domain = domain;
27
25
  this.scope = scope;
@@ -36,8 +34,6 @@ export class ZkPassportProofParams {
36
34
  this.publicInputs,
37
35
  this.committedInputs.length,
38
36
  this.committedInputs,
39
- this.committedInputCounts.length,
40
- this.committedInputCounts,
41
37
  this.validityPeriodInSeconds,
42
38
  this.domain,
43
39
  this.scope
@@ -56,26 +52,31 @@ export class ZkPassportProofParams {
56
52
  const publicInputs = Array.from({
57
53
  length: Number(publicInputsCount)
58
54
  }, ()=>Fr.random());
59
- return new ZkPassportProofParams(false, Buffer32.random(), randomBytes(1024), publicInputs, committedInputs, committedInputCounts, BigInt(100 * 60 * 60 * 24), 'sequencer.alpha-testnet.aztec.network', 'personhood');
55
+ return new ZkPassportProofParams(false, Buffer32.random(), randomBytes(1024), publicInputs, committedInputs, BigInt(7 * 24 * 60 * 60), 'sequencer.alpha-testnet.aztec.network', 'personhood');
60
56
  }
61
57
  static fromBuffer(buffer) {
62
58
  const reader = BufferReader.asReader(buffer);
63
- return new ZkPassportProofParams(reader.readBoolean(), reader.readObject(Buffer32), reader.readBuffer(), reader.readVector(Fr), reader.readBuffer(), reader.readUint256Vector(), reader.readUInt256(), reader.readString(), reader.readString());
59
+ return new ZkPassportProofParams(reader.readBoolean(), reader.readObject(Buffer32), reader.readBuffer(), reader.readVector(Fr), reader.readBuffer(), reader.readUInt256(), reader.readString(), reader.readString());
64
60
  }
65
61
  static fromViem(params) {
66
- return new ZkPassportProofParams(params.devMode, Buffer32.fromString(params.vkeyHash), Buffer.from(withoutHexPrefix(params.proof), 'hex'), params.publicInputs.map((input)=>Fr.fromString(input)), Buffer.from(withoutHexPrefix(params.committedInputs), 'hex'), params.committedInputCounts, params.validityPeriodInSeconds, params.domain, params.scope);
62
+ return new ZkPassportProofParams(params.serviceConfig.devMode, Buffer32.fromString(params.proofVerificationData.vkeyHash), Buffer.from(withoutHexPrefix(params.proofVerificationData.proof), 'hex'), params.proofVerificationData.publicInputs.map((input)=>Fr.fromString(input)), Buffer.from(withoutHexPrefix(params.commitments.committedInputs), 'hex'), params.serviceConfig.validityPeriodInSeconds, params.serviceConfig.domain, params.serviceConfig.scope);
67
63
  }
68
64
  toViem() {
69
65
  return {
70
- devMode: this.devMode,
71
- vkeyHash: this.vkeyHash.toString(),
72
- proof: `0x${this.proof.toString('hex')}`,
73
- publicInputs: this.publicInputs.map((input)=>input.toString()),
74
- committedInputs: `0x${this.committedInputs.toString('hex')}`,
75
- committedInputCounts: this.committedInputCounts,
76
- validityPeriodInSeconds: this.validityPeriodInSeconds,
77
- domain: this.domain,
78
- scope: this.scope
66
+ serviceConfig: {
67
+ devMode: this.devMode,
68
+ validityPeriodInSeconds: this.validityPeriodInSeconds,
69
+ domain: this.domain,
70
+ scope: this.scope
71
+ },
72
+ proofVerificationData: {
73
+ vkeyHash: this.vkeyHash.toString(),
74
+ proof: `0x${this.proof.toString('hex')}`,
75
+ publicInputs: this.publicInputs.map((input)=>input.toString())
76
+ },
77
+ commitments: {
78
+ committedInputs: `0x${this.committedInputs.toString('hex')}`
79
+ }
79
80
  };
80
81
  }
81
82
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec/stdlib",
3
- "version": "2.1.0-rc.8",
3
+ "version": "2.1.1-rc.1",
4
4
  "type": "module",
5
5
  "inherits": [
6
6
  "../package.common.json",
@@ -70,13 +70,13 @@
70
70
  },
71
71
  "dependencies": {
72
72
  "@aws-sdk/client-s3": "^3.892.0",
73
- "@aztec/bb.js": "2.1.0-rc.8",
74
- "@aztec/blob-lib": "2.1.0-rc.8",
75
- "@aztec/constants": "2.1.0-rc.8",
76
- "@aztec/ethereum": "2.1.0-rc.8",
77
- "@aztec/foundation": "2.1.0-rc.8",
78
- "@aztec/l1-artifacts": "2.1.0-rc.8",
79
- "@aztec/noir-noirc_abi": "2.1.0-rc.8",
73
+ "@aztec/bb.js": "2.1.1-rc.1",
74
+ "@aztec/blob-lib": "2.1.1-rc.1",
75
+ "@aztec/constants": "2.1.1-rc.1",
76
+ "@aztec/ethereum": "2.1.1-rc.1",
77
+ "@aztec/foundation": "2.1.1-rc.1",
78
+ "@aztec/l1-artifacts": "2.1.1-rc.1",
79
+ "@aztec/noir-noirc_abi": "2.1.1-rc.1",
80
80
  "@google-cloud/storage": "^7.15.0",
81
81
  "axios": "^1.12.0",
82
82
  "json-stringify-deterministic": "1.0.12",
@@ -87,7 +87,7 @@
87
87
  "msgpackr": "^1.11.2",
88
88
  "pako": "^2.1.0",
89
89
  "tslib": "^2.4.0",
90
- "viem": "2.23.7",
90
+ "viem": "npm:@spalladino/viem@2.38.2-eip7594.0",
91
91
  "zod": "^3.23.8"
92
92
  },
93
93
  "devDependencies": {
@@ -0,0 +1,62 @@
1
+ import { recoverAddress } from '@aztec/foundation/crypto';
2
+ import type { EthAddress } from '@aztec/foundation/eth-address';
3
+
4
+ import { ConsensusPayload } from '../p2p/consensus_payload.js';
5
+ import { SignatureDomainSeparator, getHashedSignaturePayloadEthSignedMessage } from '../p2p/signature_utils.js';
6
+ import type { L2Block } from './l2_block.js';
7
+ import type { CommitteeAttestation } from './proposal/committee_attestation.js';
8
+
9
+ /**
10
+ * Status indicating how the attestation address was determined
11
+ */
12
+ export type AttestationStatus = 'recovered-from-signature' | 'provided-as-address' | 'invalid-signature' | 'empty';
13
+
14
+ /**
15
+ * Information about an attestation extracted from a published block
16
+ */
17
+ export type AttestationInfo =
18
+ | {
19
+ /** The validator's address, undefined if signature recovery failed or empty */
20
+ address?: undefined;
21
+ /** How the attestation address was determined */
22
+ status: Extract<AttestationStatus, 'invalid-signature' | 'empty'>;
23
+ }
24
+ | {
25
+ /** The validator's address */
26
+ address: EthAddress;
27
+ /** How the attestation address was determined */
28
+ status: Extract<AttestationStatus, 'provided-as-address' | 'recovered-from-signature'>;
29
+ };
30
+
31
+ /**
32
+ * Extracts attestation information from a published L2 block.
33
+ * Returns info for each attestation, preserving array indices.
34
+ */
35
+ export function getAttestationInfoFromPublishedL2Block(block: {
36
+ attestations: CommitteeAttestation[];
37
+ block: L2Block;
38
+ }): AttestationInfo[] {
39
+ const payload = ConsensusPayload.fromBlock(block.block);
40
+ const hashedPayload = getHashedSignaturePayloadEthSignedMessage(payload, SignatureDomainSeparator.blockAttestation);
41
+
42
+ return block.attestations.map(attestation => {
43
+ // If signature is empty, check if we have an address directly
44
+ if (attestation.signature.isEmpty()) {
45
+ if (attestation.address.isZero()) {
46
+ // No signature and no address - empty
47
+ return { status: 'empty' as const };
48
+ }
49
+ // Address provided without signature
50
+ return { address: attestation.address, status: 'provided-as-address' as const };
51
+ }
52
+
53
+ // Try to recover address from signature
54
+ try {
55
+ const recoveredAddress = recoverAddress(hashedPayload, attestation.signature);
56
+ return { address: recoveredAddress, status: 'recovered-from-signature' as const };
57
+ } catch {
58
+ // Signature present but recovery failed
59
+ return { status: 'invalid-signature' as const };
60
+ }
61
+ });
62
+ }
@@ -9,3 +9,4 @@ export * from './published_l2_block.js';
9
9
  export * from './proposal/index.js';
10
10
  export * from './validate_block_result.js';
11
11
  export * from './l2_block_info.js';
12
+ export * from './attestation_info.js';
@@ -1,4 +1,5 @@
1
1
  import type { EthAddress } from '@aztec/foundation/eth-address';
2
+ import type { Fr } from '@aztec/foundation/fields';
2
3
  import type { TypedEventEmitter } from '@aztec/foundation/types';
3
4
 
4
5
  import { z } from 'zod';
@@ -66,6 +67,34 @@ export interface L2BlockSource {
66
67
  /** Equivalent to getBlocks but includes publish data. */
67
68
  getPublishedBlocks(from: number, limit: number, proven?: boolean): Promise<PublishedL2Block[]>;
68
69
 
70
+ /**
71
+ * Gets a published block by its hash.
72
+ * @param blockHash - The block hash to retrieve.
73
+ * @returns The requested published block (or undefined if not found).
74
+ */
75
+ getPublishedBlockByHash(blockHash: Fr): Promise<PublishedL2Block | undefined>;
76
+
77
+ /**
78
+ * Gets a published block by its archive root.
79
+ * @param archive - The archive root to retrieve.
80
+ * @returns The requested published block (or undefined if not found).
81
+ */
82
+ getPublishedBlockByArchive(archive: Fr): Promise<PublishedL2Block | undefined>;
83
+
84
+ /**
85
+ * Gets a block header by its hash.
86
+ * @param blockHash - The block hash to retrieve.
87
+ * @returns The requested block header (or undefined if not found).
88
+ */
89
+ getBlockHeaderByHash(blockHash: Fr): Promise<BlockHeader | undefined>;
90
+
91
+ /**
92
+ * Gets a block header by its archive root.
93
+ * @param archive - The archive root to retrieve.
94
+ * @returns The requested block header (or undefined if not found).
95
+ */
96
+ getBlockHeaderByArchive(archive: Fr): Promise<BlockHeader | undefined>;
97
+
69
98
  /**
70
99
  * Gets a tx effect.
71
100
  * @param txHash - The hash of the tx corresponding to the tx effect.
@@ -81,14 +110,14 @@ export interface L2BlockSource {
81
110
  getSettledTxReceipt(txHash: TxHash): Promise<TxReceipt | undefined>;
82
111
 
83
112
  /**
84
- * Returns the current L2 slot number based on the current L1 timestamp.
113
+ * Returns the current L2 slot number based on the currently synced L1 timestamp.
85
114
  */
86
- getL2SlotNumber(): Promise<bigint>;
115
+ getL2SlotNumber(): Promise<bigint | undefined>;
87
116
 
88
117
  /**
89
- * Returns the current L2 epoch number based on the current L1 timestamp.
118
+ * Returns the current L2 epoch number based on the currently synced L1 timestamp.
90
119
  */
91
- getL2EpochNumber(): Promise<bigint>;
120
+ getL2EpochNumber(): Promise<bigint | undefined>;
92
121
 
93
122
  /**
94
123
  * Returns all blocks for a given epoch.
@@ -120,8 +149,11 @@ export interface L2BlockSource {
120
149
  */
121
150
  getL1Constants(): Promise<L1RollupConstants>;
122
151
 
152
+ /** Returns values for the genesis block */
153
+ getGenesisValues(): Promise<{ genesisArchiveRoot: Fr }>;
154
+
123
155
  /** Latest synced L1 timestamp. */
124
- getL1Timestamp(): Promise<bigint>;
156
+ getL1Timestamp(): Promise<bigint | undefined>;
125
157
 
126
158
  /**
127
159
  * Returns whether the latest block in the pending chain on L1 is invalid (ie its attestations are incorrect).
@@ -7,8 +7,6 @@ import type { FieldsOf } from '@aztec/foundation/types';
7
7
 
8
8
  import { z } from 'zod';
9
9
 
10
- import { BlockAttestation } from '../p2p/block_attestation.js';
11
- import { ConsensusPayload } from '../p2p/consensus_payload.js';
12
10
  import { L2Block } from './l2_block.js';
13
11
  import { CommitteeAttestation } from './proposal/committee_attestation.js';
14
12
 
@@ -82,18 +80,3 @@ export class PublishedL2Block {
82
80
  );
83
81
  }
84
82
  }
85
-
86
- /**
87
- * Extracts block attestations from a published L2 block.
88
- * Returns undefined for attestations with empty signatures, preserving array indices.
89
- */
90
- export function getAttestationsFromPublishedL2Block(
91
- block: Pick<PublishedL2Block, 'attestations' | 'block'>,
92
- ): (BlockAttestation | undefined)[] {
93
- const payload = ConsensusPayload.fromBlock(block.block);
94
- return block.attestations.map(attestation =>
95
- attestation.signature.isEmpty()
96
- ? undefined
97
- : new BlockAttestation(block.block.number, payload, attestation.signature),
98
- );
99
- }
@@ -44,7 +44,7 @@ export type ArchiverSpecificConfig = {
44
44
  /** The max number of logs that can be obtained in 1 "getPublicLogs" call. */
45
45
  maxLogs?: number;
46
46
 
47
- /** The maximum possible size of the archiver DB in KB. Overwrites the general dataStoreMapSizeKB. */
47
+ /** The maximum possible size of the archiver DB in KB. Overwrites the general dataStoreMapSizeKb. */
48
48
  archiverStoreMapSizeKb?: number;
49
49
 
50
50
  /** Whether to skip validating block attestations (use only for testing). */
@@ -83,10 +83,14 @@ export const ArchiverApiSchema: ApiSchemaFor<ArchiverApi> = {
83
83
  .function()
84
84
  .args(schemas.Integer, schemas.Integer, optional(z.boolean()))
85
85
  .returns(z.array(PublishedL2Block.schema)),
86
+ getPublishedBlockByHash: z.function().args(schemas.Fr).returns(PublishedL2Block.schema.optional()),
87
+ getPublishedBlockByArchive: z.function().args(schemas.Fr).returns(PublishedL2Block.schema.optional()),
88
+ getBlockHeaderByHash: z.function().args(schemas.Fr).returns(BlockHeader.schema.optional()),
89
+ getBlockHeaderByArchive: z.function().args(schemas.Fr).returns(BlockHeader.schema.optional()),
86
90
  getTxEffect: z.function().args(TxHash.schema).returns(indexedTxSchema().optional()),
87
91
  getSettledTxReceipt: z.function().args(TxHash.schema).returns(TxReceipt.schema.optional()),
88
- getL2SlotNumber: z.function().args().returns(schemas.BigInt),
89
- getL2EpochNumber: z.function().args().returns(schemas.BigInt),
92
+ getL2SlotNumber: z.function().args().returns(schemas.BigInt.optional()),
93
+ getL2EpochNumber: z.function().args().returns(schemas.BigInt.optional()),
90
94
  getBlocksForEpoch: z.function().args(schemas.BigInt).returns(z.array(L2Block.schema)),
91
95
  getBlockHeadersForEpoch: z.function().args(schemas.BigInt).returns(z.array(BlockHeader.schema)),
92
96
  isEpochComplete: z.function().args(schemas.BigInt).returns(z.boolean()),
@@ -110,7 +114,11 @@ export const ArchiverApiSchema: ApiSchemaFor<ArchiverApi> = {
110
114
  getL1ToL2MessageIndex: z.function().args(schemas.Fr).returns(schemas.BigInt.optional()),
111
115
  getDebugFunctionName: z.function().args(schemas.AztecAddress, schemas.FunctionSelector).returns(optional(z.string())),
112
116
  getL1Constants: z.function().args().returns(L1RollupConstantsSchema),
113
- getL1Timestamp: z.function().args().returns(schemas.BigInt),
117
+ getGenesisValues: z
118
+ .function()
119
+ .args()
120
+ .returns(z.object({ genesisArchiveRoot: schemas.Fr })),
121
+ getL1Timestamp: z.function().args().returns(schemas.BigInt.optional()),
114
122
  syncImmediate: z.function().args().returns(z.void()),
115
123
  isPendingChainInvalid: z.function().args().returns(z.boolean()),
116
124
  getPendingChainValidationStatus: z.function().args().returns(ValidateBlockResultSchema),
@@ -9,7 +9,7 @@ import { type ArchiverSpecificConfig, ArchiverSpecificConfigSchema } from './arc
9
9
  import { type SequencerConfig, SequencerConfigSchema } from './configs.js';
10
10
  import { type ProverConfig, ProverConfigSchema } from './prover-client.js';
11
11
  import { type SlasherConfig, SlasherConfigSchema } from './slasher.js';
12
- import { ValidatorClientConfigSchema, type ValidatorClientFullConfig } from './validator.js';
12
+ import { type ValidatorClientFullConfig, ValidatorClientFullConfigSchema } from './validator.js';
13
13
 
14
14
  /**
15
15
  * Aztec node admin API.
@@ -62,7 +62,7 @@ export type AztecNodeAdminConfig = ValidatorClientFullConfig &
62
62
 
63
63
  export const AztecNodeAdminConfigSchema = SequencerConfigSchema.merge(ProverConfigSchema)
64
64
  .merge(SlasherConfigSchema)
65
- .merge(ValidatorClientConfigSchema)
65
+ .merge(ValidatorClientFullConfigSchema)
66
66
  .merge(
67
67
  ArchiverSpecificConfigSchema.pick({
68
68
  archiverPollingIntervalMS: true,
@@ -224,6 +224,20 @@ export interface AztecNode
224
224
  */
225
225
  getBlock(number: L2BlockNumber): Promise<L2Block | undefined>;
226
226
 
227
+ /**
228
+ * Get a block specified by its hash.
229
+ * @param blockHash - The block hash being requested.
230
+ * @returns The requested block.
231
+ */
232
+ getBlockByHash(blockHash: Fr): Promise<L2Block | undefined>;
233
+
234
+ /**
235
+ * Get a block specified by its archive root.
236
+ * @param archive - The archive root being requested.
237
+ * @returns The requested block.
238
+ */
239
+ getBlockByArchive(archive: Fr): Promise<L2Block | undefined>;
240
+
227
241
  /**
228
242
  * Method to fetch the latest block number synchronized by the node.
229
243
  * @returns The block number.
@@ -399,6 +413,20 @@ export interface AztecNode
399
413
  */
400
414
  getBlockHeader(blockNumber?: L2BlockNumber): Promise<BlockHeader | undefined>;
401
415
 
416
+ /**
417
+ * Get a block header specified by its hash.
418
+ * @param blockHash - The block hash being requested.
419
+ * @returns The requested block header.
420
+ */
421
+ getBlockHeaderByHash(blockHash: Fr): Promise<BlockHeader | undefined>;
422
+
423
+ /**
424
+ * Get a block header specified by its archive root.
425
+ * @param archive - The archive root being requested.
426
+ * @returns The requested block header.
427
+ */
428
+ getBlockHeaderByArchive(archive: Fr): Promise<BlockHeader | undefined>;
429
+
402
430
  /** Returns stats for validators if enabled. */
403
431
  getValidatorsStats(): Promise<ValidatorsStats>;
404
432
 
@@ -516,6 +544,10 @@ export const AztecNodeApiSchema: ApiSchemaFor<AztecNode> = {
516
544
 
517
545
  getBlock: z.function().args(L2BlockNumberSchema).returns(L2Block.schema.optional()),
518
546
 
547
+ getBlockByHash: z.function().args(schemas.Fr).returns(L2Block.schema.optional()),
548
+
549
+ getBlockByArchive: z.function().args(schemas.Fr).returns(L2Block.schema.optional()),
550
+
519
551
  getBlockNumber: z.function().returns(z.number()),
520
552
 
521
553
  getProvenBlockNumber: z.function().returns(z.number()),
@@ -589,6 +621,10 @@ export const AztecNodeApiSchema: ApiSchemaFor<AztecNode> = {
589
621
 
590
622
  getBlockHeader: z.function().args(optional(L2BlockNumberSchema)).returns(BlockHeader.schema.optional()),
591
623
 
624
+ getBlockHeaderByHash: z.function().args(schemas.Fr).returns(BlockHeader.schema.optional()),
625
+
626
+ getBlockHeaderByArchive: z.function().args(schemas.Fr).returns(BlockHeader.schema.optional()),
627
+
592
628
  getValidatorsStats: z.function().returns(ValidatorsStatsSchema),
593
629
 
594
630
  getValidatorStats: z