@aztec/aztec.js 0.7.0 → 0.7.3

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.
@@ -96,7 +96,7 @@
96
96
  }
97
97
  ],
98
98
  "returnTypes": [],
99
- "bytecode": "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",
99
+ "bytecode": "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",
100
100
  "verificationKey": "0000000200000800000000740000000f00000003515f3109623eb3c25aa5b16a1a79fd558bac7a7ce62c4560a8c537c77ce80dd339128d1d37b6582ee9e6df9567efb64313471dfa18f520f9ce53161b50dbf7731bc5f900000003515f322bc4cce83a486a92c92fd59bd84e0f92595baa639fc2ed86b00ffa0dfded2a092a669a3bdb7a273a015eda494457cc7ed5236f26cee330c290d45a33b9daa94800000003515f332729426c008c085a81bd34d8ef12dd31e80130339ef99d50013a89e4558eee6d0fa4ffe2ee7b7b62eb92608b2251ac31396a718f9b34978888789042b790a30100000003515f342be6b6824a913eb7a57b03cb1ee7bfb4de02f2f65fe8a4e97baa7766ddb353a82a8a25c49dc63778cd9fe96173f12a2bc77f3682f4c4448f98f1df82c75234a100000003515f351f85760d6ab567465aadc2f180af9eae3800e6958fec96aef53fd8a7b195d7c000c6267a0dd5cfc22b3fe804f53e266069c0e36f51885baec1e7e67650c62e170000000c515f41524954484d455449430d9d0f8ece2aa12012fa21e6e5c859e97bd5704e5c122064a66051294bc5e04213f61f54a0ebdf6fee4d4a6ecf693478191de0c2899bcd8e86a636c8d3eff43400000003515f43224a99d02c86336737c8dd5b746c40d2be6aead8393889a76a18d664029096e90f7fe81adcc92a74350eada9622ac453f49ebac24a066a1f83b394df54dfa0130000000c515f46495845445f42415345060e8a013ed289c2f9fd7473b04f6594b138ddb4b4cf6b901622a14088f04b8d2c83ff74fce56e3d5573b99c7b26d85d5046ce0c6559506acb7a675e7713eb3a00000007515f4c4f4749430721a91cb8da4b917e054f72147e1760cfe0ef3d45090ac0f4961d84ec1996961a25e787b26bd8b50b1a99450f77a424a83513c2b33af268cd253b0587ff50c700000003515f4d05dbd8623b8652511e1eb38d38887a69eceb082f807514f09e127237c5213b401b9325b48c6c225968002318095f89d0ef9cf629b2b7f0172e03bc39aacf6ed800000007515f52414e474504b57a3805e41df328f5ca9aefa40fad5917391543b7b65c6476e60b8f72e9ad07c92f3b3e11c8feae96dedc4b14a6226ef3201244f37cfc1ee5b96781f48d2b000000075349474d415f3125001d1954a18571eaa007144c5a567bb0d2be4def08a8be918b8c05e3b27d312c59ed41e09e144eab5de77ca89a2fd783be702a47c951d3112e3de02ce6e47c000000075349474d415f3223994e6a23618e60fa01c449a7ab88378709197e186d48d604bfb6931ffb15ad11c5ec7a0700570f80088fd5198ab5d5c227f2ad2a455a6edeec024156bb7beb000000075349474d415f3300cda5845f23468a13275d18bddae27c6bb189cf9aa95b6a03a0cb6688c7e8d829639b45cf8607c525cc400b55ebf90205f2f378626dc3406cc59b2d1b474fba000000075349474d415f342d299e7928496ea2d37f10b43afd6a80c90a33b483090d18069ffa275eedb2fc2f82121e8de43dc036d99b478b6227ceef34248939987a19011f065d8b5cef5c0000000010000000000000000100000002000000030000000400000005000000060000000700000008000000090000000a0000000b0000000c0000000d0000000e0000000f"
101
101
  }
102
102
  ]
@@ -9,13 +9,50 @@ import { DEFAULT_CHAIN_ID, DEFAULT_VERSION } from '../../utils/defaults.js';
9
9
  import { buildPayload, hashPayload } from './entrypoint_payload.js';
10
10
  import { Entrypoint } from './index.js';
11
11
 
12
+ /**
13
+ * An extended interface for entrypoints that support signing and adding auth witnesses.
14
+ */
15
+ export interface IAuthWitnessAccountEntrypoint extends Entrypoint {
16
+ /**
17
+ * Sign a message hash with the private key.
18
+ * @param message - The message hash to sign.
19
+ * @returns The signature as a Buffer.
20
+ */
21
+ sign(message: Buffer): Buffer;
22
+
23
+ /**
24
+ * Creates an AuthWitness witness for the given message. In this case, witness is the public key, the signature
25
+ * and the partial address, to be used for verification.
26
+ * @param message - The message hash to sign.
27
+ * @param opts - Options.
28
+ * @returns [publicKey, signature, partialAddress] as Fr[].
29
+ */
30
+ createAuthWitness(message: Buffer): Promise<Fr[]>;
31
+
32
+ /**
33
+ * Returns the transaction request and the auth witness for the given function calls.
34
+ * Returning the witness here as a nonce is generated in the buildPayload action.
35
+ * @param executions - The function calls to execute
36
+ * @param opts - The options
37
+ * @returns The TxRequest, the auth witness to insert in db and the message signed
38
+ */
39
+ createTxExecutionRequestWithWitness(executions: FunctionCall[]): Promise<{
40
+ /** The transaction request */
41
+ txRequest: TxExecutionRequest;
42
+ /** The auth witness */
43
+ witness: Fr[];
44
+ /** The message signed */
45
+ message: Buffer;
46
+ }>;
47
+ }
48
+
12
49
  /**
13
50
  * Account contract implementation that uses a single key for signing and encryption. This public key is not
14
51
  * stored in the contract, but rather verified against the contract address. Note that this approach is not
15
52
  * secure and should not be used in real use cases.
16
53
  * The entrypoint is extended to support signing and creating eip1271-like witnesses.
17
54
  */
18
- export class AuthWitnessAccountEntrypoint implements Entrypoint {
55
+ export class AuthWitnessAccountEntrypoint implements IAuthWitnessAccountEntrypoint {
19
56
  constructor(
20
57
  private address: AztecAddress,
21
58
  private partialAddress: PartialAddress,
@@ -25,21 +62,10 @@ export class AuthWitnessAccountEntrypoint implements Entrypoint {
25
62
  private version: number = DEFAULT_VERSION,
26
63
  ) {}
27
64
 
28
- /**
29
- * Sign a message hash with the private key.
30
- * @param message - The message hash to sign.
31
- * @returns The signature as a Buffer.
32
- */
33
65
  public sign(message: Buffer): Buffer {
34
66
  return this.signer.constructSignature(message, this.privateKey).toBuffer();
35
67
  }
36
68
 
37
- /**
38
- * Creates an AuthWitness witness for the given message. In this case, witness is the public key, the signature
39
- * and the partial address, to be used for verification.
40
- * @param message - The message hash to sign.
41
- * @returns [publicKey, signature, partialAddress] as Fr[].
42
- */
43
69
  async createAuthWitness(message: Buffer): Promise<Fr[]> {
44
70
  const signature = this.sign(message);
45
71
  const publicKey = await generatePublicKey(this.privateKey);
@@ -5,7 +5,7 @@ import { FunctionCall, PackedArguments, emptyFunctionCall } from '@aztec/types';
5
5
 
6
6
  import partition from 'lodash.partition';
7
7
 
8
- // These must match the values defined in yarn-project/noir-libs/aztec-noir/src/entrypoint.nr
8
+ // These must match the values defined in yarn-project/aztec-nr/aztec/src/entrypoint.nr
9
9
  export const ACCOUNT_MAX_PRIVATE_CALLS = 2;
10
10
  export const ACCOUNT_MAX_PUBLIC_CALLS = 2;
11
11
 
@@ -16,7 +16,7 @@ import {
16
16
  TxReceipt,
17
17
  } from '@aztec/types';
18
18
 
19
- import { AuthWitnessAccountEntrypoint, Entrypoint } from '../account/entrypoint/index.js';
19
+ import { Entrypoint, IAuthWitnessAccountEntrypoint } from '../account/entrypoint/index.js';
20
20
  import { CompleteAddress } from '../index.js';
21
21
 
22
22
  /**
@@ -121,7 +121,7 @@ export class EntrypointWallet extends BaseWallet {
121
121
  * to provide authentication data to the contract during execution.
122
122
  */
123
123
  export class AuthWitnessEntrypointWallet extends BaseWallet {
124
- constructor(rpc: AztecRPC, protected accountImpl: AuthWitnessAccountEntrypoint) {
124
+ constructor(rpc: AztecRPC, protected accountImpl: IAuthWitnessAccountEntrypoint, protected address: CompleteAddress) {
125
125
  super(rpc);
126
126
  }
127
127
 
@@ -151,12 +151,33 @@ export class AuthWitnessEntrypointWallet extends BaseWallet {
151
151
  * This is useful for signing messages that are not directly part of the transaction payload, such as
152
152
  * approvals .
153
153
  * @param messageHash - The message hash to sign
154
+ * @param opts - The options.
154
155
  */
155
156
  async signAndAddAuthWitness(messageHash: Buffer): Promise<void> {
156
157
  const witness = await this.accountImpl.createAuthWitness(messageHash);
157
158
  await this.rpc.addAuthWitness(Fr.fromBuffer(messageHash), witness);
158
159
  return Promise.resolve();
159
160
  }
161
+
162
+ /**
163
+ * Signs the `messageHash` and adds the witness to the RPC.
164
+ * This is useful for signing messages that are not directly part of the transaction payload, such as
165
+ * approvals .
166
+ * @param messageHash - The message hash to sign
167
+ */
168
+ async signAndGetAuthWitness(messageHash: Buffer): Promise<Fr[]> {
169
+ return await this.accountImpl.createAuthWitness(messageHash);
170
+ }
171
+
172
+ /** Returns the complete address of the account that implements this wallet. */
173
+ public getCompleteAddress() {
174
+ return this.address;
175
+ }
176
+
177
+ /** Returns the address of the account that implements this wallet. */
178
+ public getAddress() {
179
+ return this.address.address;
180
+ }
160
181
  }
161
182
 
162
183
  /**
@@ -6,7 +6,7 @@ import { DeployMethod } from './deploy_method.js';
6
6
 
7
7
  /**
8
8
  * A class for deploying contract.
9
- * @remarks Keeping this around even though we have noir contract types because it can be useful for non-TS users.
9
+ * @remarks Keeping this around even though we have Aztec.nr contract types because it can be useful for non-TS users.
10
10
  */
11
11
  export class ContractDeployer {
12
12
  constructor(private abi: ContractAbi, private arc: AztecRPC, private publicKey?: PublicKey) {}
@@ -151,7 +151,7 @@ export class EthCheatCodes {
151
151
 
152
152
  /**
153
153
  * Computes the slot value for a given map and key.
154
- * @param baseSlot - The base slot of the map (specified in noir contract)
154
+ * @param baseSlot - The base slot of the map (specified in Aztec.nr contract)
155
155
  * @param key - The key to lookup in the map
156
156
  * @returns The storage slot of the value in the map
157
157
  */
@@ -228,13 +228,13 @@ export class AztecCheatCodes {
228
228
 
229
229
  /**
230
230
  * Computes the slot value for a given map and key.
231
- * @param baseSlot - The base slot of the map (specified in noir contract)
231
+ * @param baseSlot - The base slot of the map (specified in Aztec.nr contract)
232
232
  * @param key - The key to lookup in the map
233
233
  * @returns The storage slot of the value in the map
234
234
  */
235
235
  public computeSlotInMap(baseSlot: Fr | bigint, key: Fr | bigint | AztecAddress): Fr {
236
236
  // Based on `at` function in
237
- // aztec3-packages/yarn-project/noir-libs/aztec-noir/src/state_vars/map.nr
237
+ // aztec3-packages/yarn-project/aztec-nr/aztec/src/state_vars/map.nr
238
238
  return Fr.fromBuffer(
239
239
  pedersenPlookupCommitInputs(
240
240
  this.wasm,