@aztec-labs/stdlib 6.0.0-nightly.20260923 → 6.0.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.
@@ -66,7 +66,7 @@ export declare function computeSiloedPublicInitializationNullifier(contract: Azt
66
66
  *
67
67
  * @dev Must match the implementation in noir-protocol-circuits/crates/types/src/hash.nr > compute_protocol_nullifier
68
68
  */
69
- export declare function computeProtocolNullifier(txRequestHash: Fr): Promise<Fr>;
69
+ export declare function computeProtocolNullifier(protocolNullifierValue: Fr): Promise<Fr>;
70
70
  /** Domain-separates a raw log tag with the given domain separator. */
71
71
  export declare function computeLogTag(rawTag: number | bigint | boolean | Fr | Buffer, domSep: DomainSeparator): Promise<Fr>;
72
72
  /**
@@ -125,4 +125,4 @@ export declare function computeL2ToL1MessageHash({ l2Sender, l1Recipient, conten
125
125
  rollupVersion: Fr;
126
126
  chainId: Fr;
127
127
  }): Fr;
128
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzaC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hhc2gvaGFzaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFHeEQsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRXJFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUV6RCw4R0FBOEc7QUFDOUcsd0JBQWdCLGlCQUFpQixDQUFDLElBQUksRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBRWxFO0FBRUQsaUVBQWlFO0FBQ2pFLHdCQUFnQiwwQkFBMEIsQ0FBQyxJQUFJLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUUzRTtBQUVELG1FQUFtRTtBQUNuRSx3QkFBZ0IsMkJBQTJCLENBQUMsSUFBSSxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FFNUU7QUFFRDs7OztHQUlHO0FBQ0gsd0JBQXNCLE1BQU0sQ0FBQyxXQUFXLEVBQUUsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUczRDtBQUVEOzs7OztHQUtHO0FBQ0gsd0JBQWdCLG9CQUFvQixDQUFDLGFBQWEsRUFBRSxFQUFFLEVBQUUsYUFBYSxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBRTFGO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsd0JBQWdCLFlBQVksQ0FBQyxRQUFRLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUU5RTtBQUVEOzs7OztHQUtH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
128
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzaC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hhc2gvaGFzaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFHeEQsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRXJFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUV6RCw4R0FBOEc7QUFDOUcsd0JBQWdCLGlCQUFpQixDQUFDLElBQUksRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBRWxFO0FBRUQsaUVBQWlFO0FBQ2pFLHdCQUFnQiwwQkFBMEIsQ0FBQyxJQUFJLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUUzRTtBQUVELG1FQUFtRTtBQUNuRSx3QkFBZ0IsMkJBQTJCLENBQUMsSUFBSSxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FFNUU7QUFFRDs7OztHQUlHO0FBQ0gsd0JBQXNCLE1BQU0sQ0FBQyxXQUFXLEVBQUUsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUczRDtBQUVEOzs7OztHQUtHO0FBQ0gsd0JBQWdCLG9CQUFvQixDQUFDLGFBQWEsRUFBRSxFQUFFLEVBQUUsYUFBYSxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBRTFGO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsd0JBQWdCLFlBQVksQ0FBQyxRQUFRLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUU5RTtBQUVEOzs7OztHQUtH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
@@ -1 +1 @@
1
- {"version":3,"file":"hash.d.ts","sourceRoot":"","sources":["../../src/hash/hash.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hash.d.ts","sourceRoot":"","sources":["../../src/hash/hash.ts"],"names":[],"mappings":"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"}
package/dest/hash/hash.js CHANGED
@@ -105,8 +105,8 @@ import { AztecAddress } from '../aztec-address/index.js';
105
105
  * @returns The siloed value of the protocol nullifier.
106
106
  *
107
107
  * @dev Must match the implementation in noir-protocol-circuits/crates/types/src/hash.nr > compute_protocol_nullifier
108
- */ export function computeProtocolNullifier(txRequestHash) {
109
- return siloNullifier(AztecAddress.NULL_MSG_SENDER, txRequestHash);
108
+ */ export function computeProtocolNullifier(protocolNullifierValue) {
109
+ return siloNullifier(AztecAddress.NULL_MSG_SENDER, protocolNullifierValue);
110
110
  }
111
111
  /** Domain-separates a raw log tag with the given domain separator. */ export function computeLogTag(rawTag, domSep) {
112
112
  return poseidon2HashWithSeparator([
@@ -117,10 +117,12 @@ export declare class PrivateCircuitPublicInputs {
117
117
  */
118
118
  contractClassLogsHashes: ClaimedLengthArray<CountedLogHash, typeof MAX_CONTRACT_CLASS_LOGS_PER_CALL>;
119
119
  /**
120
- * The tx request's salt. Keeps `tx_request.hash()` (the protocol nullifier) unpredictable, and lets the init
121
- * kernel bind this proof to a specific tx request (it asserts this equals `tx_request.salt`).
120
+ * The transaction's siloed protocol nullifier: the value the init kernel inserts at index 0 of the transaction's
121
+ * nullifiers, identical on every private call. The init kernel asserts the first call's value equals the one
122
+ * derived from the tx request, binding this proof to that request; every later kernel asserts each nested call's
123
+ * value equals the transaction constant.
122
124
  */
123
- txRequestSalt: Fr;
125
+ protocolNullifier: Fr;
124
126
  constructor(
125
127
  /**
126
128
  * Context of the call corresponding to this private circuit execution.
@@ -219,10 +221,12 @@ export declare class PrivateCircuitPublicInputs {
219
221
  */
220
222
  contractClassLogsHashes: ClaimedLengthArray<CountedLogHash, typeof MAX_CONTRACT_CLASS_LOGS_PER_CALL>,
221
223
  /**
222
- * The tx request's salt. Keeps `tx_request.hash()` (the protocol nullifier) unpredictable, and lets the init
223
- * kernel bind this proof to a specific tx request (it asserts this equals `tx_request.salt`).
224
+ * The transaction's siloed protocol nullifier: the value the init kernel inserts at index 0 of the transaction's
225
+ * nullifiers, identical on every private call. The init kernel asserts the first call's value equals the one
226
+ * derived from the tx request, binding this proof to that request; every later kernel asserts each nested call's
227
+ * value equals the transaction constant.
224
228
  */
225
- txRequestSalt: Fr);
229
+ protocolNullifier: Fr);
226
230
  /**
227
231
  * Create PrivateCircuitPublicInputs from a fields dictionary.
228
232
  * @param fields - The dictionary.
@@ -260,4 +264,4 @@ export declare class PrivateCircuitPublicInputs {
260
264
  toJSON(): Buffer<ArrayBufferLike>;
261
265
  static get schema(): import("zod").ZodType<PrivateCircuitPublicInputs, string, import("zod/v4/core").$ZodTypeInternals<PrivateCircuitPublicInputs, string>>;
262
266
  }
263
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9jaXJjdWl0X3B1YmxpY19pbnB1dHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9rZXJuZWwvcHJpdmF0ZV9jaXJjdWl0X3B1YmxpY19pbnB1dHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLGdDQUFnQyxFQUNoQywyQkFBMkIsRUFDM0Isb0NBQW9DLEVBQ3BDLDBCQUEwQixFQUMxQix3QkFBd0IsRUFDeEIsb0NBQW9DLEVBQ3BDLHVCQUF1QixFQUN2QixvQ0FBb0MsRUFDcEMsc0NBQXNDLEVBQ3RDLHlCQUF5QixFQUMxQixNQUFNLHVCQUF1QixDQUFDO0FBQy9CLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUV6RCxPQUFPLEVBQ0wsWUFBWSxFQUNaLFdBQVcsRUFJWixNQUFNLGtDQUFrQyxDQUFDO0FBQzFDLE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRTdELE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQzNHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDL0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDeEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDaEQsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDakQsT0FBTyxFQUNMLGtCQUFrQixFQUduQixNQUFNLDJC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
267
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9jaXJjdWl0X3B1YmxpY19pbnB1dHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9rZXJuZWwvcHJpdmF0ZV9jaXJjdWl0X3B1YmxpY19pbnB1dHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLGdDQUFnQyxFQUNoQywyQkFBMkIsRUFDM0Isb0NBQW9DLEVBQ3BDLDBCQUEwQixFQUMxQix3QkFBd0IsRUFDeEIsb0NBQW9DLEVBQ3BDLHVCQUF1QixFQUN2QixvQ0FBb0MsRUFDcEMsc0NBQXNDLEVBQ3RDLHlCQUF5QixFQUMxQixNQUFNLHVCQUF1QixDQUFDO0FBQy9CLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUV6RCxPQUFPLEVBQ0wsWUFBWSxFQUNaLFdBQVcsRUFJWixNQUFNLGtDQUFrQyxDQUFDO0FBQzFDLE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRTdELE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQzNHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDL0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDeEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDaEQsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDakQsT0FBTyxFQUNMLGtCQUFrQixFQUduQixNQUFNLDJC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
@@ -1 +1 @@
1
- {"version":3,"file":"private_circuit_public_inputs.d.ts","sourceRoot":"","sources":["../../src/kernel/private_circuit_public_inputs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"private_circuit_public_inputs.d.ts","sourceRoot":"","sources":["../../src/kernel/private_circuit_public_inputs.ts"],"names":[],"mappings":"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"}
@@ -41,7 +41,7 @@ import { CountedPublicCallRequest, PublicCallRequest } from './public_call_reque
41
41
  l2ToL1Msgs;
42
42
  privateLogs;
43
43
  contractClassLogsHashes;
44
- txRequestSalt;
44
+ protocolNullifier;
45
45
  constructor(/**
46
46
  * Context of the call corresponding to this private circuit execution.
47
47
  */ callContext, /**
@@ -93,9 +93,11 @@ import { CountedPublicCallRequest, PublicCallRequest } from './public_call_reque
93
93
  */ privateLogs, /**
94
94
  * Hash of the contract class logs emitted in this function call.
95
95
  */ contractClassLogsHashes, /**
96
- * The tx request's salt. Keeps `tx_request.hash()` (the protocol nullifier) unpredictable, and lets the init
97
- * kernel bind this proof to a specific tx request (it asserts this equals `tx_request.salt`).
98
- */ txRequestSalt){
96
+ * The transaction's siloed protocol nullifier: the value the init kernel inserts at index 0 of the transaction's
97
+ * nullifiers, identical on every private call. The init kernel asserts the first call's value equals the one
98
+ * derived from the tx request, binding this proof to that request; every later kernel asserts each nested call's
99
+ * value equals the transaction constant.
100
+ */ protocolNullifier){
99
101
  this.callContext = callContext;
100
102
  this.argsHash = argsHash;
101
103
  this.returnsHash = returnsHash;
@@ -119,7 +121,7 @@ import { CountedPublicCallRequest, PublicCallRequest } from './public_call_reque
119
121
  this.l2ToL1Msgs = l2ToL1Msgs;
120
122
  this.privateLogs = privateLogs;
121
123
  this.contractClassLogsHashes = contractClassLogsHashes;
122
- this.txRequestSalt = txRequestSalt;
124
+ this.protocolNullifier = protocolNullifier;
123
125
  }
124
126
  /**
125
127
  * Create PrivateCircuitPublicInputs from a fields dictionary.
@@ -147,7 +149,7 @@ import { CountedPublicCallRequest, PublicCallRequest } from './public_call_reque
147
149
  return new PrivateCircuitPublicInputs(CallContext.empty(), Fr.ZERO, Fr.ZERO, BlockHeader.empty(), TxContext.empty(), Fr.ZERO, false, 0n, Fr.ZERO, Fr.ZERO, Fr.ZERO, Fr.ZERO, ClaimedLengthArray.empty(ScopedReadRequest, MAX_NOTE_HASH_READ_REQUESTS_PER_CALL), ClaimedLengthArray.empty(ScopedReadRequest, MAX_NULLIFIER_READ_REQUESTS_PER_CALL), ClaimedLengthArray.empty(KeyValidationRequestAndSeparator, MAX_KEY_VALIDATION_REQUESTS_PER_CALL), ClaimedLengthArray.empty(PrivateCallRequest, MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL), ClaimedLengthArray.empty(CountedPublicCallRequest, MAX_ENQUEUED_CALLS_PER_CALL), PublicCallRequest.empty(), ClaimedLengthArray.empty(NoteHash, MAX_NOTE_HASHES_PER_CALL), ClaimedLengthArray.empty(Nullifier, MAX_NULLIFIERS_PER_CALL), ClaimedLengthArray.empty(CountedL2ToL1Message, MAX_L2_TO_L1_MSGS_PER_CALL), ClaimedLengthArray.empty(PrivateLogData, MAX_PRIVATE_LOGS_PER_CALL), ClaimedLengthArray.empty(CountedLogHash, MAX_CONTRACT_CLASS_LOGS_PER_CALL), Fr.ZERO);
148
150
  }
149
151
  isEmpty() {
150
- return this.callContext.isEmpty() && this.argsHash.isZero() && this.returnsHash.isZero() && this.anchorBlockHeader.isEmpty() && this.txContext.isEmpty() && this.minRevertibleSideEffectCounter.isZero() && !this.isFeePayer && !this.expirationTimestamp && this.startSideEffectCounter.isZero() && this.endSideEffectCounter.isZero() && this.expectedNonRevertibleSideEffectCounter.isZero() && this.expectedRevertibleSideEffectCounter.isZero() && this.noteHashReadRequests.isEmpty() && this.nullifierReadRequests.isEmpty() && this.keyValidationRequestsAndSeparators.isEmpty() && this.privateCallRequests.isEmpty() && this.publicCallRequests.isEmpty() && this.publicTeardownCallRequest.isEmpty() && this.noteHashes.isEmpty() && this.nullifiers.isEmpty() && this.l2ToL1Msgs.isEmpty() && this.privateLogs.isEmpty() && this.contractClassLogsHashes.isEmpty() && this.txRequestSalt.isZero();
152
+ return this.callContext.isEmpty() && this.argsHash.isZero() && this.returnsHash.isZero() && this.anchorBlockHeader.isEmpty() && this.txContext.isEmpty() && this.minRevertibleSideEffectCounter.isZero() && !this.isFeePayer && !this.expirationTimestamp && this.startSideEffectCounter.isZero() && this.endSideEffectCounter.isZero() && this.expectedNonRevertibleSideEffectCounter.isZero() && this.expectedRevertibleSideEffectCounter.isZero() && this.noteHashReadRequests.isEmpty() && this.nullifierReadRequests.isEmpty() && this.keyValidationRequestsAndSeparators.isEmpty() && this.privateCallRequests.isEmpty() && this.publicCallRequests.isEmpty() && this.publicTeardownCallRequest.isEmpty() && this.noteHashes.isEmpty() && this.nullifiers.isEmpty() && this.l2ToL1Msgs.isEmpty() && this.privateLogs.isEmpty() && this.contractClassLogsHashes.isEmpty() && this.protocolNullifier.isZero();
151
153
  }
152
154
  /**
153
155
  * Serialize into a field array. Low-level utility.
@@ -178,7 +180,7 @@ import { CountedPublicCallRequest, PublicCallRequest } from './public_call_reque
178
180
  fields.l2ToL1Msgs,
179
181
  fields.privateLogs,
180
182
  fields.contractClassLogsHashes,
181
- fields.txRequestSalt
183
+ fields.protocolNullifier
182
184
  ];
183
185
  }
184
186
  /**
@@ -211,7 +213,7 @@ import { CountedPublicCallRequest, PublicCallRequest } from './public_call_reque
211
213
  this.l2ToL1Msgs,
212
214
  this.privateLogs,
213
215
  this.contractClassLogsHashes,
214
- this.txRequestSalt
216
+ this.protocolNullifier
215
217
  ]);
216
218
  }
217
219
  /**
@@ -7,9 +7,9 @@ export declare class PrivateContextInputs {
7
7
  anchorBlockHeader: BlockHeader;
8
8
  txContext: TxContext;
9
9
  startSideEffectCounter: number;
10
- txRequestSalt: Fr;
11
- constructor(callContext: CallContext, anchorBlockHeader: BlockHeader, txContext: TxContext, startSideEffectCounter: number, txRequestSalt: Fr);
10
+ protocolNullifier: Fr;
11
+ constructor(callContext: CallContext, anchorBlockHeader: BlockHeader, txContext: TxContext, startSideEffectCounter: number, protocolNullifier: Fr);
12
12
  static empty(): PrivateContextInputs;
13
13
  toFields(): Fr[];
14
14
  }
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9jb250ZXh0X2lucHV0cy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2tlcm5lbC9wcml2YXRlX2NvbnRleHRfaW5wdXRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUd6RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDcEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVoRCxxQkFBYSxvQkFBb0I7SUFFdEIsV0FBVyxFQUFFLFdBQVc7SUFDeEIsaUJBQWlCLEVBQUUsV0FBVztJQUM5QixTQUFTLEVBQUUsU0FBUztJQUNwQixzQkFBc0IsRUFBRSxNQUFNO0lBQzlCLGFBQWEsRUFBRSxFQUFFO0lBTDFCLFlBQ1MsV0FBVyxFQUFFLFdBQVcsRUFDeEIsaUJBQWlCLEVBQUUsV0FBVyxFQUM5QixTQUFTLEVBQUUsU0FBUyxFQUNwQixzQkFBc0IsRUFBRSxNQUFNLEVBQzlCLGFBQWEsRUFBRSxFQUFFLEVBQ3RCO0lBRUosT0FBYyxLQUFLLElBQUksb0JBQW9CLENBRTFDO0lBRU0sUUFBUSxJQUFJLEVBQUUsRUFBRSxDQVF0QjtDQUNGIn0=
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9jb250ZXh0X2lucHV0cy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2tlcm5lbC9wcml2YXRlX2NvbnRleHRfaW5wdXRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUd6RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDcEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVoRCxxQkFBYSxvQkFBb0I7SUFFdEIsV0FBVyxFQUFFLFdBQVc7SUFDeEIsaUJBQWlCLEVBQUUsV0FBVztJQUM5QixTQUFTLEVBQUUsU0FBUztJQUNwQixzQkFBc0IsRUFBRSxNQUFNO0lBQzlCLGlCQUFpQixFQUFFLEVBQUU7SUFMOUIsWUFDUyxXQUFXLEVBQUUsV0FBVyxFQUN4QixpQkFBaUIsRUFBRSxXQUFXLEVBQzlCLFNBQVMsRUFBRSxTQUFTLEVBQ3BCLHNCQUFzQixFQUFFLE1BQU0sRUFDOUIsaUJBQWlCLEVBQUUsRUFBRSxFQUMxQjtJQUVKLE9BQWMsS0FBSyxJQUFJLG9CQUFvQixDQUUxQztJQUVNLFFBQVEsSUFBSSxFQUFFLEVBQUUsQ0FRdEI7Q0FDRiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"private_context_inputs.d.ts","sourceRoot":"","sources":["../../src/kernel/private_context_inputs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,qCAAqC,CAAC;AAGzD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,qBAAa,oBAAoB;IAEtB,WAAW,EAAE,WAAW;IACxB,iBAAiB,EAAE,WAAW;IAC9B,SAAS,EAAE,SAAS;IACpB,sBAAsB,EAAE,MAAM;IAC9B,aAAa,EAAE,EAAE;IAL1B,YACS,WAAW,EAAE,WAAW,EACxB,iBAAiB,EAAE,WAAW,EAC9B,SAAS,EAAE,SAAS,EACpB,sBAAsB,EAAE,MAAM,EAC9B,aAAa,EAAE,EAAE,EACtB;IAEJ,OAAc,KAAK,IAAI,oBAAoB,CAE1C;IAEM,QAAQ,IAAI,EAAE,EAAE,CAQtB;CACF"}
1
+ {"version":3,"file":"private_context_inputs.d.ts","sourceRoot":"","sources":["../../src/kernel/private_context_inputs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,qCAAqC,CAAC;AAGzD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,qBAAa,oBAAoB;IAEtB,WAAW,EAAE,WAAW;IACxB,iBAAiB,EAAE,WAAW;IAC9B,SAAS,EAAE,SAAS;IACpB,sBAAsB,EAAE,MAAM;IAC9B,iBAAiB,EAAE,EAAE;IAL9B,YACS,WAAW,EAAE,WAAW,EACxB,iBAAiB,EAAE,WAAW,EAC9B,SAAS,EAAE,SAAS,EACpB,sBAAsB,EAAE,MAAM,EAC9B,iBAAiB,EAAE,EAAE,EAC1B;IAEJ,OAAc,KAAK,IAAI,oBAAoB,CAE1C;IAEM,QAAQ,IAAI,EAAE,EAAE,CAQtB;CACF"}
@@ -8,13 +8,13 @@ export class PrivateContextInputs {
8
8
  anchorBlockHeader;
9
9
  txContext;
10
10
  startSideEffectCounter;
11
- txRequestSalt;
12
- constructor(callContext, anchorBlockHeader, txContext, startSideEffectCounter, txRequestSalt){
11
+ protocolNullifier;
12
+ constructor(callContext, anchorBlockHeader, txContext, startSideEffectCounter, protocolNullifier){
13
13
  this.callContext = callContext;
14
14
  this.anchorBlockHeader = anchorBlockHeader;
15
15
  this.txContext = txContext;
16
16
  this.startSideEffectCounter = startSideEffectCounter;
17
- this.txRequestSalt = txRequestSalt;
17
+ this.protocolNullifier = protocolNullifier;
18
18
  }
19
19
  static empty() {
20
20
  return new PrivateContextInputs(CallContext.empty(), BlockHeader.empty(), TxContext.empty(), 0, Fr.ZERO);
@@ -25,7 +25,7 @@ export class PrivateContextInputs {
25
25
  this.anchorBlockHeader,
26
26
  this.txContext,
27
27
  this.startSideEffectCounter,
28
- this.txRequestSalt
28
+ this.protocolNullifier
29
29
  ]);
30
30
  }
31
31
  }
@@ -321,7 +321,7 @@ function makeClaimedLengthArray(arraySize, makeItem, seed, length = arraySize) {
321
321
  anchorBlockHeader: makeBlockHeader(seed + 0xd00),
322
322
  txContext: makeTxContext(seed + 0x1400),
323
323
  isFeePayer: false,
324
- txRequestSalt: fr(seed + 0x1500)
324
+ protocolNullifier: fr(seed + 0x1500)
325
325
  });
326
326
  }
327
327
  export function makeGlobalVariables(seed = 1, overrides = {}) {
@@ -20,13 +20,13 @@ export declare class PrivateTxConstantData {
20
20
  */
21
21
  txContext: TxContext;
22
22
  /**
23
- * Salt of the transaction request (`TxRequest.salt`).
23
+ * The transaction's siloed protocol nullifier.
24
24
  *
25
25
  * Bound to the user's `tx_request` by the Init circuit and kept constant by every subsequent kernel so that each
26
- * app circuit's `txRequestSalt` public input can be checked against it. It is intentionally not carried into
27
- * `TxConstantData`: it is dropped by the Tail circuits rather than being exposed by the final (hiding) kernel.
26
+ * app circuit's `protocolNullifier` public input can be checked against it. Not carried into `TxConstantData`:
27
+ * the value is already published as the transaction's first nullifier.
28
28
  */
29
- txRequestSalt: Fr;
29
+ protocolNullifier: Fr;
30
30
  /**
31
31
  * Root of the vk tree for the protocol circuits.
32
32
  */
@@ -48,13 +48,13 @@ export declare class PrivateTxConstantData {
48
48
  */
49
49
  txContext: TxContext,
50
50
  /**
51
- * Salt of the transaction request (`TxRequest.salt`).
51
+ * The transaction's siloed protocol nullifier.
52
52
  *
53
53
  * Bound to the user's `tx_request` by the Init circuit and kept constant by every subsequent kernel so that each
54
- * app circuit's `txRequestSalt` public input can be checked against it. It is intentionally not carried into
55
- * `TxConstantData`: it is dropped by the Tail circuits rather than being exposed by the final (hiding) kernel.
54
+ * app circuit's `protocolNullifier` public input can be checked against it. Not carried into `TxConstantData`:
55
+ * the value is already published as the transaction's first nullifier.
56
56
  */
57
- txRequestSalt: Fr,
57
+ protocolNullifier: Fr,
58
58
  /**
59
59
  * Root of the vk tree for the protocol circuits.
60
60
  */
@@ -73,4 +73,4 @@ export declare class PrivateTxConstantData {
73
73
  getSize(): number;
74
74
  clone(): PrivateTxConstantData;
75
75
  }
76
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV90eF9jb25zdGFudF9kYXRhLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHgvcHJpdmF0ZV90eF9jb25zdGFudF9kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBd0MsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuSCxPQUFPLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUU3RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDaEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTVDOztHQUVHO0FBQ0gscUJBQWEscUJBQXFCO0lBRTlCLDZHQUE2RztJQUN0RyxpQkFBaUIsRUFBRSxXQUFXO0lBQ3JDOzs7Ozs7O09BT0c7SUFDSSxTQUFTLEVBQUUsU0FBUztJQUMzQjs7Ozs7O09BTUc7SUFDSSxhQUFhLEVBQUUsRUFBRTtJQUN4Qjs7T0FFRztJQUNJLFVBQVUsRUFBRSxFQUFFO0lBQ3JCOztPQUVHO0lBQ0ksaUJBQWlCLEVBQUUsaUJBQWlCO0lBM0I3QztJQUNFLDZHQUE2RztJQUN0RyxpQkFBaUIsRUFBRSxXQUFXO0lBQ3JDOzs7Ozs7O09BT0c7SUFDSSxTQUFTLEVBQUUsU0FBUztJQUMzQjs7Ozs7O09BTUc7SUFDSSxhQUFhLEVBQUUsRUFBRTtJQUN4Qjs7T0FFRztJQUNJLFVBQVUsRUFBRSxFQUFFO0lBQ3JCOztPQUVHO0lBQ0ksaUJBQWlCLEVBQUUsaUJBQWlCLEVBQ3pDO0lBRUosTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLHFCQUFxQixDQUFDLHlCQUVsRDtJQUVELE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQyxnRUFRdkQ7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxXQUFXLEdBQUcscUJBQXFCLENBU25FO0lBRUQsUUFBUSxJQUFJLEVBQUUsRUFBRSxDQVFmO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLFlBQVksR0FBRyxxQkFBcUIsQ0FTdEU7SUFFRCxRQUFRLDRCQUVQO0lBRUQsTUFBTSxDQUFDLEtBQUssMEJBUVg7SUFFRCxPQUFPLFdBUU47SUFFRCxLQUFLLElBQUkscUJBQXFCLENBRTdCO0NBQ0YifQ==
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV90eF9jb25zdGFudF9kYXRhLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHgvcHJpdmF0ZV90eF9jb25zdGFudF9kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBd0MsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuSCxPQUFPLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUU3RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDaEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTVDOztHQUVHO0FBQ0gscUJBQWEscUJBQXFCO0lBRTlCLDZHQUE2RztJQUN0RyxpQkFBaUIsRUFBRSxXQUFXO0lBQ3JDOzs7Ozs7O09BT0c7SUFDSSxTQUFTLEVBQUUsU0FBUztJQUMzQjs7Ozs7O09BTUc7SUFDSSxpQkFBaUIsRUFBRSxFQUFFO0lBQzVCOztPQUVHO0lBQ0ksVUFBVSxFQUFFLEVBQUU7SUFDckI7O09BRUc7SUFDSSxpQkFBaUIsRUFBRSxpQkFBaUI7SUEzQjdDO0lBQ0UsNkdBQTZHO0lBQ3RHLGlCQUFpQixFQUFFLFdBQVc7SUFDckM7Ozs7Ozs7T0FPRztJQUNJLFNBQVMsRUFBRSxTQUFTO0lBQzNCOzs7Ozs7T0FNRztJQUNJLGlCQUFpQixFQUFFLEVBQUU7SUFDNUI7O09BRUc7SUFDSSxVQUFVLEVBQUUsRUFBRTtJQUNyQjs7T0FFRztJQUNJLGlCQUFpQixFQUFFLGlCQUFpQixFQUN6QztJQUVKLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQyx5QkFFbEQ7SUFFRCxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMscUJBQXFCLENBQUMsZ0VBUXZEO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsV0FBVyxHQUFHLHFCQUFxQixDQVNuRTtJQUVELFFBQVEsSUFBSSxFQUFFLEVBQUUsQ0FRZjtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxZQUFZLEdBQUcscUJBQXFCLENBU3RFO0lBRUQsUUFBUSw0QkFFUDtJQUVELE1BQU0sQ0FBQyxLQUFLLDBCQVFYO0lBRUQsT0FBTyxXQVFOO0lBRUQsS0FBSyxJQUFJLHFCQUFxQixDQUU3QjtDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"private_tx_constant_data.d.ts","sourceRoot":"","sources":["../../src/tx/private_tx_constant_data.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,qCAAqC,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAwC,MAAM,kCAAkC,CAAC;AACnH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAE7D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C;;GAEG;AACH,qBAAa,qBAAqB;IAE9B,6GAA6G;IACtG,iBAAiB,EAAE,WAAW;IACrC;;;;;;;OAOG;IACI,SAAS,EAAE,SAAS;IAC3B;;;;;;OAMG;IACI,aAAa,EAAE,EAAE;IACxB;;OAEG;IACI,UAAU,EAAE,EAAE;IACrB;;OAEG;IACI,iBAAiB,EAAE,iBAAiB;IA3B7C;IACE,6GAA6G;IACtG,iBAAiB,EAAE,WAAW;IACrC;;;;;;;OAOG;IACI,SAAS,EAAE,SAAS;IAC3B;;;;;;OAMG;IACI,aAAa,EAAE,EAAE;IACxB;;OAEG;IACI,UAAU,EAAE,EAAE;IACrB;;OAEG;IACI,iBAAiB,EAAE,iBAAiB,EACzC;IAEJ,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,qBAAqB,CAAC,yBAElD;IAED,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,qBAAqB,CAAC,gEAQvD;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,GAAG,qBAAqB,CASnE;IAED,QAAQ,IAAI,EAAE,EAAE,CAQf;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,qBAAqB,CAStE;IAED,QAAQ,4BAEP;IAED,MAAM,CAAC,KAAK,0BAQX;IAED,OAAO,WAQN;IAED,KAAK,IAAI,qBAAqB,CAE7B;CACF"}
1
+ {"version":3,"file":"private_tx_constant_data.d.ts","sourceRoot":"","sources":["../../src/tx/private_tx_constant_data.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,qCAAqC,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAwC,MAAM,kCAAkC,CAAC;AACnH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAE7D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C;;GAEG;AACH,qBAAa,qBAAqB;IAE9B,6GAA6G;IACtG,iBAAiB,EAAE,WAAW;IACrC;;;;;;;OAOG;IACI,SAAS,EAAE,SAAS;IAC3B;;;;;;OAMG;IACI,iBAAiB,EAAE,EAAE;IAC5B;;OAEG;IACI,UAAU,EAAE,EAAE;IACrB;;OAEG;IACI,iBAAiB,EAAE,iBAAiB;IA3B7C;IACE,6GAA6G;IACtG,iBAAiB,EAAE,WAAW;IACrC;;;;;;;OAOG;IACI,SAAS,EAAE,SAAS;IAC3B;;;;;;OAMG;IACI,iBAAiB,EAAE,EAAE;IAC5B;;OAEG;IACI,UAAU,EAAE,EAAE;IACrB;;OAEG;IACI,iBAAiB,EAAE,iBAAiB,EACzC;IAEJ,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,qBAAqB,CAAC,yBAElD;IAED,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,qBAAqB,CAAC,gEAQvD;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,GAAG,qBAAqB,CASnE;IAED,QAAQ,IAAI,EAAE,EAAE,CAQf;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,qBAAqB,CAStE;IAED,QAAQ,4BAEP;IAED,MAAM,CAAC,KAAK,0BAQX;IAED,OAAO,WAQN;IAED,KAAK,IAAI,qBAAqB,CAE7B;CACF"}
@@ -9,7 +9,7 @@ import { TxContext } from './tx_context.js';
9
9
  */ export class PrivateTxConstantData {
10
10
  anchorBlockHeader;
11
11
  txContext;
12
- txRequestSalt;
12
+ protocolNullifier;
13
13
  vkTreeRoot;
14
14
  protocolContracts;
15
15
  constructor(/** Header of a block whose state is used during execution (not the block the transaction is included in). */ anchorBlockHeader, /**
@@ -20,19 +20,19 @@ import { TxContext } from './tx_context.js';
20
20
  * a situation we could be using header from a block before the upgrade took place but be using the updated
21
21
  * protocol to execute and prove the transaction.
22
22
  */ txContext, /**
23
- * Salt of the transaction request (`TxRequest.salt`).
23
+ * The transaction's siloed protocol nullifier.
24
24
  *
25
25
  * Bound to the user's `tx_request` by the Init circuit and kept constant by every subsequent kernel so that each
26
- * app circuit's `txRequestSalt` public input can be checked against it. It is intentionally not carried into
27
- * `TxConstantData`: it is dropped by the Tail circuits rather than being exposed by the final (hiding) kernel.
28
- */ txRequestSalt, /**
26
+ * app circuit's `protocolNullifier` public input can be checked against it. Not carried into `TxConstantData`:
27
+ * the value is already published as the transaction's first nullifier.
28
+ */ protocolNullifier, /**
29
29
  * Root of the vk tree for the protocol circuits.
30
30
  */ vkTreeRoot, /**
31
31
  * List of protocol contracts.
32
32
  */ protocolContracts){
33
33
  this.anchorBlockHeader = anchorBlockHeader;
34
34
  this.txContext = txContext;
35
- this.txRequestSalt = txRequestSalt;
35
+ this.protocolNullifier = protocolNullifier;
36
36
  this.vkTreeRoot = vkTreeRoot;
37
37
  this.protocolContracts = protocolContracts;
38
38
  }
@@ -43,7 +43,7 @@ import { TxContext } from './tx_context.js';
43
43
  return [
44
44
  fields.anchorBlockHeader,
45
45
  fields.txContext,
46
- fields.txRequestSalt,
46
+ fields.protocolNullifier,
47
47
  fields.vkTreeRoot,
48
48
  fields.protocolContracts
49
49
  ];
@@ -70,7 +70,7 @@ import { TxContext } from './tx_context.js';
70
70
  return new PrivateTxConstantData(BlockHeader.empty(), TxContext.empty(), Fr.ZERO, Fr.ZERO, ProtocolContracts.empty());
71
71
  }
72
72
  getSize() {
73
- return this.anchorBlockHeader.getSize() + this.txContext.getSize() + this.txRequestSalt.size + this.vkTreeRoot.size + this.protocolContracts.getSize();
73
+ return this.anchorBlockHeader.getSize() + this.txContext.getSize() + this.protocolNullifier.size + this.vkTreeRoot.size + this.protocolContracts.getSize();
74
74
  }
75
75
  clone() {
76
76
  return PrivateTxConstantData.fromBuffer(this.toBuffer());
@@ -16,7 +16,12 @@ export declare class TxRequest {
16
16
  txContext: TxContext;
17
17
  /** Function data representing the function to call. */
18
18
  functionData: FunctionData;
19
- /** A salt to make the hash difficult to predict. The hash is used as the first nullifier if there is no nullifier emitted throughout the tx. */
19
+ /**
20
+ * A fresh random field drawn by the wallet, acting as the tx request's nonce. With `origin`, `chainId` and `version`
21
+ * it is the whole preimage of the protocol nullifier, so it keeps that nullifier unpredictable and unique. The kernel
22
+ * cannot check that it is random; draw it fresh for every transaction, since two requests with the same origin and
23
+ * salt are mutually exclusive.
24
+ */
20
25
  salt: Fr;
21
26
  constructor(
22
27
  /** Sender. */
@@ -27,7 +32,12 @@ export declare class TxRequest {
27
32
  txContext: TxContext,
28
33
  /** Function data representing the function to call. */
29
34
  functionData: FunctionData,
30
- /** A salt to make the hash difficult to predict. The hash is used as the first nullifier if there is no nullifier emitted throughout the tx. */
35
+ /**
36
+ * A fresh random field drawn by the wallet, acting as the tx request's nonce. With `origin`, `chainId` and `version`
37
+ * it is the whole preimage of the protocol nullifier, so it keeps that nullifier unpredictable and unique. The kernel
38
+ * cannot check that it is random; draw it fresh for every transaction, since two requests with the same origin and
39
+ * salt are mutually exclusive.
40
+ */
31
41
  salt: Fr);
32
42
  static getFields(fields: FieldsOf<TxRequest>): readonly [AztecAddress, Fr, TxContext, FunctionData, Fr];
33
43
  static from(fields: FieldsOf<TxRequest>): TxRequest;
@@ -36,6 +46,17 @@ export declare class TxRequest {
36
46
  * @returns The buffer.
37
47
  */
38
48
  toBuffer(): Buffer<ArrayBufferLike>;
49
+ /**
50
+ * The unsiloed value of the protocol nullifier: the transaction's nonce commitment.
51
+ * The preimage is only `origin`, `chainId`, `version` and `salt`. Gas settings and the first call's arguments are
52
+ * left out so that a fee bump or a cancellation that reuses the salt produces the same nullifier.
53
+ */
54
+ computeProtocolNullifierValue(): Promise<Fr>;
55
+ /**
56
+ * The protocol nullifier as inserted into the nullifier tree, and as every private call receives it in
57
+ * `PrivateCircuitPublicInputs.protocolNullifier`: the value above siloed under `NULL_MSG_SENDER`.
58
+ */
59
+ computeProtocolNullifier(): Promise<Fr>;
39
60
  toFields(): Fr[];
40
61
  /**
41
62
  * Deserializes from a buffer or reader, corresponding to a write in cpp.
@@ -43,8 +64,7 @@ export declare class TxRequest {
43
64
  * @returns The deserialized TxRequest object.
44
65
  */
45
66
  static fromBuffer(buffer: Buffer | BufferReader): TxRequest;
46
- hash(): Promise<Fr>;
47
67
  static empty(): TxRequest;
48
68
  isEmpty(): boolean;
49
69
  }
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhfcmVxdWVzdC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R4L3R4X3JlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQXdDLE1BQU0sa0NBQWtDLENBQUM7QUFDdEcsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFNUM7O0dBRUc7QUFDSCxxQkFBYSxTQUFTO0lBR2xCLGNBQWM7SUFDUCxNQUFNLEVBQUUsWUFBWTtJQUMzQiwyQ0FBMkM7SUFDcEMsUUFBUSxFQUFFLEVBQUU7SUFDbkIsMkJBQTJCO0lBQ3BCLFNBQVMsRUFBRSxTQUFTO0lBQzNCLHVEQUF1RDtJQUNoRCxZQUFZLEVBQUUsWUFBWTtJQUNqQyxnSkFBZ0o7SUFDekksSUFBSSxFQUFFLEVBQUU7SUFWakI7SUFDRSxjQUFjO0lBQ1AsTUFBTSxFQUFFLFlBQVk7SUFDM0IsMkNBQTJDO0lBQ3BDLFFBQVEsRUFBRSxFQUFFO0lBQ25CLDJCQUEyQjtJQUNwQixTQUFTLEVBQUUsU0FBUztJQUMzQix1REFBdUQ7SUFDaEQsWUFBWSxFQUFFLFlBQVk7SUFDakMsZ0pBQWdKO0lBQ3pJLElBQUksRUFBRSxFQUFFLEVBQ2I7SUFHSixNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsU0FBUyxDQUFDLDREQUUzQztJQUVELE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxTQUFTLENBQUMsR0FBRyxTQUFTLENBRWxEO0lBRUQ7OztPQUdHO0lBQ0gsUUFBUSw0QkFFUDtJQUVELFFBQVEsSUFBSSxFQUFFLEVBQUUsQ0FNZjtJQUVEOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxHQUFHLFNBQVMsQ0FTMUQ7SUFFRCxJQUFJLGdCQUVIO0lBRUQsTUFBTSxDQUFDLEtBQUssY0FFWDtJQUVELE9BQU8sWUFRTjtDQUNGIn0=
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhfcmVxdWVzdC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R4L3R4X3JlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQXdDLE1BQU0sa0NBQWtDLENBQUM7QUFDdEcsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXpELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFNUM7O0dBRUc7QUFDSCxxQkFBYSxTQUFTO0lBR2xCLGNBQWM7SUFDUCxNQUFNLEVBQUUsWUFBWTtJQUMzQiwyQ0FBMkM7SUFDcEMsUUFBUSxFQUFFLEVBQUU7SUFDbkIsMkJBQTJCO0lBQ3BCLFNBQVMsRUFBRSxTQUFTO0lBQzNCLHVEQUF1RDtJQUNoRCxZQUFZLEVBQUUsWUFBWTtJQUNqQzs7Ozs7T0FLRztJQUNJLElBQUksRUFBRSxFQUFFO0lBZmpCO0lBQ0UsY0FBYztJQUNQLE1BQU0sRUFBRSxZQUFZO0lBQzNCLDJDQUEyQztJQUNwQyxRQUFRLEVBQUUsRUFBRTtJQUNuQiwyQkFBMkI7SUFDcEIsU0FBUyxFQUFFLFNBQVM7SUFDM0IsdURBQXVEO0lBQ2hELFlBQVksRUFBRSxZQUFZO0lBQ2pDOzs7OztPQUtHO0lBQ0ksSUFBSSxFQUFFLEVBQUUsRUFDYjtJQUdKLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxTQUFTLENBQUMsNERBRTNDO0lBRUQsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLFNBQVMsQ0FBQyxHQUFHLFNBQVMsQ0FFbEQ7SUFFRDs7O09BR0c7SUFDSCxRQUFRLDRCQUVQO0lBRUQ7Ozs7T0FJRztJQUNILDZCQUE2QixJQUFJLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FLM0M7SUFFRDs7O09BR0c7SUFDRyx3QkFBd0IsSUFBSSxPQUFPLENBQUMsRUFBRSxDQUFDLENBRTVDO0lBRUQsUUFBUSxJQUFJLEVBQUUsRUFBRSxDQU1mO0lBRUQ7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxZQUFZLEdBQUcsU0FBUyxDQVMxRDtJQUVELE1BQU0sQ0FBQyxLQUFLLGNBRVg7SUFFRCxPQUFPLFlBUU47Q0FDRiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"tx_request.d.ts","sourceRoot":"","sources":["../../src/tx/tx_request.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,EAAE,EAAE,MAAM,qCAAqC,CAAC;AACzD,OAAO,EAAE,YAAY,EAAwC,MAAM,kCAAkC,CAAC;AACtG,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAE7D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C;;GAEG;AACH,qBAAa,SAAS;IAGlB,cAAc;IACP,MAAM,EAAE,YAAY;IAC3B,2CAA2C;IACpC,QAAQ,EAAE,EAAE;IACnB,2BAA2B;IACpB,SAAS,EAAE,SAAS;IAC3B,uDAAuD;IAChD,YAAY,EAAE,YAAY;IACjC,gJAAgJ;IACzI,IAAI,EAAE,EAAE;IAVjB;IACE,cAAc;IACP,MAAM,EAAE,YAAY;IAC3B,2CAA2C;IACpC,QAAQ,EAAE,EAAE;IACnB,2BAA2B;IACpB,SAAS,EAAE,SAAS;IAC3B,uDAAuD;IAChD,YAAY,EAAE,YAAY;IACjC,gJAAgJ;IACzI,IAAI,EAAE,EAAE,EACb;IAGJ,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,4DAE3C;IAED,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,SAAS,CAElD;IAED;;;OAGG;IACH,QAAQ,4BAEP;IAED,QAAQ,IAAI,EAAE,EAAE,CAMf;IAED;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAS1D;IAED,IAAI,gBAEH;IAED,MAAM,CAAC,KAAK,cAEX;IAED,OAAO,YAQN;CACF"}
1
+ {"version":3,"file":"tx_request.d.ts","sourceRoot":"","sources":["../../src/tx/tx_request.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,EAAE,EAAE,MAAM,qCAAqC,CAAC;AACzD,OAAO,EAAE,YAAY,EAAwC,MAAM,kCAAkC,CAAC;AACtG,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAE7D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C;;GAEG;AACH,qBAAa,SAAS;IAGlB,cAAc;IACP,MAAM,EAAE,YAAY;IAC3B,2CAA2C;IACpC,QAAQ,EAAE,EAAE;IACnB,2BAA2B;IACpB,SAAS,EAAE,SAAS;IAC3B,uDAAuD;IAChD,YAAY,EAAE,YAAY;IACjC;;;;;OAKG;IACI,IAAI,EAAE,EAAE;IAfjB;IACE,cAAc;IACP,MAAM,EAAE,YAAY;IAC3B,2CAA2C;IACpC,QAAQ,EAAE,EAAE;IACnB,2BAA2B;IACpB,SAAS,EAAE,SAAS;IAC3B,uDAAuD;IAChD,YAAY,EAAE,YAAY;IACjC;;;;;OAKG;IACI,IAAI,EAAE,EAAE,EACb;IAGJ,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,4DAE3C;IAED,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,SAAS,CAElD;IAED;;;OAGG;IACH,QAAQ,4BAEP;IAED;;;;OAIG;IACH,6BAA6B,IAAI,OAAO,CAAC,EAAE,CAAC,CAK3C;IAED;;;OAGG;IACG,wBAAwB,IAAI,OAAO,CAAC,EAAE,CAAC,CAE5C;IAED,QAAQ,IAAI,EAAE,EAAE,CAMf;IAED;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAS1D;IAED,MAAM,CAAC,KAAK,cAEX;IAED,OAAO,YAQN;CACF"}
@@ -3,6 +3,7 @@ import { poseidon2HashWithSeparator } from '@aztec-labs/foundation/crypto/poseid
3
3
  import { Fr } from '@aztec-labs/foundation/curves/bn254';
4
4
  import { BufferReader, serializeToBuffer, serializeToFields } from '@aztec-labs/foundation/serialize';
5
5
  import { AztecAddress } from '../aztec-address/index.js';
6
+ import { computeProtocolNullifier } from '../hash/hash.js';
6
7
  import { FunctionData } from './function_data.js';
7
8
  import { TxContext } from './tx_context.js';
8
9
  /**
@@ -14,7 +15,12 @@ import { TxContext } from './tx_context.js';
14
15
  functionData;
15
16
  salt;
16
17
  // docs:start:constructor
17
- constructor(/** Sender. */ origin, /** Pedersen hash of function arguments. */ argsHash, /** Transaction context. */ txContext, /** Function data representing the function to call. */ functionData, /** A salt to make the hash difficult to predict. The hash is used as the first nullifier if there is no nullifier emitted throughout the tx. */ salt){
18
+ constructor(/** Sender. */ origin, /** Pedersen hash of function arguments. */ argsHash, /** Transaction context. */ txContext, /** Function data representing the function to call. */ functionData, /**
19
+ * A fresh random field drawn by the wallet, acting as the tx request's nonce. With `origin`, `chainId` and `version`
20
+ * it is the whole preimage of the protocol nullifier, so it keeps that nullifier unpredictable and unique. The kernel
21
+ * cannot check that it is random; draw it fresh for every transaction, since two requests with the same origin and
22
+ * salt are mutually exclusive.
23
+ */ salt){
18
24
  this.origin = origin;
19
25
  this.argsHash = argsHash;
20
26
  this.txContext = txContext;
@@ -42,6 +48,24 @@ import { TxContext } from './tx_context.js';
42
48
  ...TxRequest.getFields(this)
43
49
  ]);
44
50
  }
51
+ /**
52
+ * The unsiloed value of the protocol nullifier: the transaction's nonce commitment.
53
+ * The preimage is only `origin`, `chainId`, `version` and `salt`. Gas settings and the first call's arguments are
54
+ * left out so that a fee bump or a cancellation that reuses the salt produces the same nullifier.
55
+ */ computeProtocolNullifierValue() {
56
+ return poseidon2HashWithSeparator([
57
+ this.origin.toField(),
58
+ this.txContext.chainId,
59
+ this.txContext.version,
60
+ this.salt
61
+ ], DomainSeparator.PROTOCOL_NULLIFIER);
62
+ }
63
+ /**
64
+ * The protocol nullifier as inserted into the nullifier tree, and as every private call receives it in
65
+ * `PrivateCircuitPublicInputs.protocolNullifier`: the value above siloed under `NULL_MSG_SENDER`.
66
+ */ async computeProtocolNullifier() {
67
+ return computeProtocolNullifier(await this.computeProtocolNullifierValue());
68
+ }
45
69
  toFields() {
46
70
  const fields = serializeToFields(...TxRequest.getFields(this));
47
71
  if (fields.length !== TX_REQUEST_LENGTH) {
@@ -57,9 +81,6 @@ import { TxContext } from './tx_context.js';
57
81
  const reader = BufferReader.asReader(buffer);
58
82
  return new TxRequest(reader.readObject(AztecAddress), Fr.fromBuffer(reader), reader.readObject(TxContext), reader.readObject(FunctionData), Fr.fromBuffer(reader));
59
83
  }
60
- hash() {
61
- return poseidon2HashWithSeparator(this.toFields(), DomainSeparator.TX_REQUEST);
62
- }
63
84
  static empty() {
64
85
  return new TxRequest(AztecAddress.ZERO, Fr.zero(), TxContext.empty(), FunctionData.empty(), Fr.zero());
65
86
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec-labs/stdlib",
3
- "version": "6.0.0-nightly.20260923",
3
+ "version": "6.0.0-rc.1",
4
4
  "type": "module",
5
5
  "inherits": [
6
6
  "../package.common.json",
@@ -92,12 +92,12 @@
92
92
  },
93
93
  "dependencies": {
94
94
  "@aws-sdk/client-s3": "^3.892.0",
95
- "@aztec-foundation/bb.js": "6.0.0-nightly.20260921",
96
- "@aztec-foundation/noir-noirc_abi": "6.0.0-nightly.20260921",
97
- "@aztec-labs/blob-lib": "6.0.0-nightly.20260923",
98
- "@aztec-labs/constants": "6.0.0-nightly.20260923",
99
- "@aztec-labs/ethereum": "6.0.0-nightly.20260923",
100
- "@aztec-labs/foundation": "6.0.0-nightly.20260923",
95
+ "@aztec-foundation/bb.js": "6.0.0-rc.1",
96
+ "@aztec-foundation/noir-noirc_abi": "6.0.0-rc.1",
97
+ "@aztec-labs/blob-lib": "6.0.0-rc.1",
98
+ "@aztec-labs/constants": "6.0.0-rc.1",
99
+ "@aztec-labs/ethereum": "6.0.0-rc.1",
100
+ "@aztec-labs/foundation": "6.0.0-rc.1",
101
101
  "@google-cloud/storage": "^7.15.0",
102
102
  "axios": "^1.15.1",
103
103
  "json-stringify-deterministic": "1.0.12",
package/src/hash/hash.ts CHANGED
@@ -109,8 +109,8 @@ export async function computeSiloedPublicInitializationNullifier(contract: Aztec
109
109
  *
110
110
  * @dev Must match the implementation in noir-protocol-circuits/crates/types/src/hash.nr > compute_protocol_nullifier
111
111
  */
112
- export function computeProtocolNullifier(txRequestHash: Fr): Promise<Fr> {
113
- return siloNullifier(AztecAddress.NULL_MSG_SENDER, txRequestHash);
112
+ export function computeProtocolNullifier(protocolNullifierValue: Fr): Promise<Fr> {
113
+ return siloNullifier(AztecAddress.NULL_MSG_SENDER, protocolNullifierValue);
114
114
  }
115
115
 
116
116
  /** Domain-separates a raw log tag with the given domain separator. */
@@ -145,10 +145,12 @@ export class PrivateCircuitPublicInputs {
145
145
  */
146
146
  public contractClassLogsHashes: ClaimedLengthArray<CountedLogHash, typeof MAX_CONTRACT_CLASS_LOGS_PER_CALL>,
147
147
  /**
148
- * The tx request's salt. Keeps `tx_request.hash()` (the protocol nullifier) unpredictable, and lets the init
149
- * kernel bind this proof to a specific tx request (it asserts this equals `tx_request.salt`).
148
+ * The transaction's siloed protocol nullifier: the value the init kernel inserts at index 0 of the transaction's
149
+ * nullifiers, identical on every private call. The init kernel asserts the first call's value equals the one
150
+ * derived from the tx request, binding this proof to that request; every later kernel asserts each nested call's
151
+ * value equals the transaction constant.
150
152
  */
151
- public txRequestSalt: Fr,
153
+ public protocolNullifier: Fr,
152
154
  ) {}
153
155
 
154
156
  /**
@@ -287,7 +289,7 @@ export class PrivateCircuitPublicInputs {
287
289
  this.l2ToL1Msgs.isEmpty() &&
288
290
  this.privateLogs.isEmpty() &&
289
291
  this.contractClassLogsHashes.isEmpty() &&
290
- this.txRequestSalt.isZero()
292
+ this.protocolNullifier.isZero()
291
293
  );
292
294
  }
293
295
 
@@ -321,7 +323,7 @@ export class PrivateCircuitPublicInputs {
321
323
  fields.l2ToL1Msgs,
322
324
  fields.privateLogs,
323
325
  fields.contractClassLogsHashes,
324
- fields.txRequestSalt,
326
+ fields.protocolNullifier,
325
327
  ] as const;
326
328
  }
327
329
 
@@ -356,7 +358,7 @@ export class PrivateCircuitPublicInputs {
356
358
  this.l2ToL1Msgs,
357
359
  this.privateLogs,
358
360
  this.contractClassLogsHashes,
359
- this.txRequestSalt,
361
+ this.protocolNullifier,
360
362
  ]);
361
363
  }
362
364
 
@@ -11,7 +11,7 @@ export class PrivateContextInputs {
11
11
  public anchorBlockHeader: BlockHeader,
12
12
  public txContext: TxContext,
13
13
  public startSideEffectCounter: number,
14
- public txRequestSalt: Fr,
14
+ public protocolNullifier: Fr,
15
15
  ) {}
16
16
 
17
17
  public static empty(): PrivateContextInputs {
@@ -24,7 +24,7 @@ export class PrivateContextInputs {
24
24
  this.anchorBlockHeader,
25
25
  this.txContext,
26
26
  this.startSideEffectCounter,
27
- this.txRequestSalt,
27
+ this.protocolNullifier,
28
28
  ]);
29
29
  }
30
30
  }
@@ -653,7 +653,7 @@ export function makePrivateCircuitPublicInputs(seed = 0): PrivateCircuitPublicIn
653
653
  anchorBlockHeader: makeBlockHeader(seed + 0xd00),
654
654
  txContext: makeTxContext(seed + 0x1400),
655
655
  isFeePayer: false,
656
- txRequestSalt: fr(seed + 0x1500),
656
+ protocolNullifier: fr(seed + 0x1500),
657
657
  });
658
658
  }
659
659
 
@@ -24,13 +24,13 @@ export class PrivateTxConstantData {
24
24
  */
25
25
  public txContext: TxContext,
26
26
  /**
27
- * Salt of the transaction request (`TxRequest.salt`).
27
+ * The transaction's siloed protocol nullifier.
28
28
  *
29
29
  * Bound to the user's `tx_request` by the Init circuit and kept constant by every subsequent kernel so that each
30
- * app circuit's `txRequestSalt` public input can be checked against it. It is intentionally not carried into
31
- * `TxConstantData`: it is dropped by the Tail circuits rather than being exposed by the final (hiding) kernel.
30
+ * app circuit's `protocolNullifier` public input can be checked against it. Not carried into `TxConstantData`:
31
+ * the value is already published as the transaction's first nullifier.
32
32
  */
33
- public txRequestSalt: Fr,
33
+ public protocolNullifier: Fr,
34
34
  /**
35
35
  * Root of the vk tree for the protocol circuits.
36
36
  */
@@ -49,7 +49,7 @@ export class PrivateTxConstantData {
49
49
  return [
50
50
  fields.anchorBlockHeader,
51
51
  fields.txContext,
52
- fields.txRequestSalt,
52
+ fields.protocolNullifier,
53
53
  fields.vkTreeRoot,
54
54
  fields.protocolContracts,
55
55
  ] as const;
@@ -105,7 +105,7 @@ export class PrivateTxConstantData {
105
105
  return (
106
106
  this.anchorBlockHeader.getSize() +
107
107
  this.txContext.getSize() +
108
- this.txRequestSalt.size +
108
+ this.protocolNullifier.size +
109
109
  this.vkTreeRoot.size +
110
110
  this.protocolContracts.getSize()
111
111
  );
@@ -5,6 +5,7 @@ import { BufferReader, serializeToBuffer, serializeToFields } from '@aztec-labs/
5
5
  import type { FieldsOf } from '@aztec-labs/foundation/types';
6
6
 
7
7
  import { AztecAddress } from '../aztec-address/index.js';
8
+ import { computeProtocolNullifier } from '../hash/hash.js';
8
9
  import { FunctionData } from './function_data.js';
9
10
  import { TxContext } from './tx_context.js';
10
11
 
@@ -22,7 +23,12 @@ export class TxRequest {
22
23
  public txContext: TxContext,
23
24
  /** Function data representing the function to call. */
24
25
  public functionData: FunctionData,
25
- /** A salt to make the hash difficult to predict. The hash is used as the first nullifier if there is no nullifier emitted throughout the tx. */
26
+ /**
27
+ * A fresh random field drawn by the wallet, acting as the tx request's nonce. With `origin`, `chainId` and `version`
28
+ * it is the whole preimage of the protocol nullifier, so it keeps that nullifier unpredictable and unique. The kernel
29
+ * cannot check that it is random; draw it fresh for every transaction, since two requests with the same origin and
30
+ * salt are mutually exclusive.
31
+ */
26
32
  public salt: Fr,
27
33
  ) {}
28
34
  // docs:end:constructor
@@ -43,6 +49,26 @@ export class TxRequest {
43
49
  return serializeToBuffer([...TxRequest.getFields(this)]);
44
50
  }
45
51
 
52
+ /**
53
+ * The unsiloed value of the protocol nullifier: the transaction's nonce commitment.
54
+ * The preimage is only `origin`, `chainId`, `version` and `salt`. Gas settings and the first call's arguments are
55
+ * left out so that a fee bump or a cancellation that reuses the salt produces the same nullifier.
56
+ */
57
+ computeProtocolNullifierValue(): Promise<Fr> {
58
+ return poseidon2HashWithSeparator(
59
+ [this.origin.toField(), this.txContext.chainId, this.txContext.version, this.salt],
60
+ DomainSeparator.PROTOCOL_NULLIFIER,
61
+ );
62
+ }
63
+
64
+ /**
65
+ * The protocol nullifier as inserted into the nullifier tree, and as every private call receives it in
66
+ * `PrivateCircuitPublicInputs.protocolNullifier`: the value above siloed under `NULL_MSG_SENDER`.
67
+ */
68
+ async computeProtocolNullifier(): Promise<Fr> {
69
+ return computeProtocolNullifier(await this.computeProtocolNullifierValue());
70
+ }
71
+
46
72
  toFields(): Fr[] {
47
73
  const fields = serializeToFields(...TxRequest.getFields(this));
48
74
  if (fields.length !== TX_REQUEST_LENGTH) {
@@ -67,10 +93,6 @@ export class TxRequest {
67
93
  );
68
94
  }
69
95
 
70
- hash() {
71
- return poseidon2HashWithSeparator(this.toFields(), DomainSeparator.TX_REQUEST);
72
- }
73
-
74
96
  static empty() {
75
97
  return new TxRequest(AztecAddress.ZERO, Fr.zero(), TxContext.empty(), FunctionData.empty(), Fr.zero());
76
98
  }