Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@aztec/key-store

Package Overview
Dependencies
Maintainers
6
Versions
144
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@aztec/key-store - npm Package Compare versions

Comparing version 0.1.0-alpha23 to 0.1.0-alpha40

29

dest/key_pair.d.ts

@@ -1,5 +0,4 @@

/// <reference types="node" resolution-mode="require"/>
import { Curve } from '@aztec/circuits.js/barretenberg';
import { Point } from '@aztec/foundation/fields';
import { KeyPair } from '@aztec/types';
import { PrivateKey } from '@aztec/circuits.js';
import { Grumpkin } from '@aztec/circuits.js/barretenberg';
import { KeyPair, PublicKey } from '@aztec/types';
/**

@@ -20,3 +19,3 @@ * The ConstantKeyPair class is an implementation of the KeyPair interface, which allows generation and management of a constant public and private key pair. It provides methods for creating a random instance of the key pair, retrieving the public key, getting the private key. This class ensures the persistence and consistency of the generated keys, making it suitable for cryptographic operations where constant key pairs are required.

*/
static random(curve: Curve): ConstantKeyPair;
static random(curve: Grumpkin): ConstantKeyPair;
/**

@@ -29,19 +28,7 @@ * Creates a new instance from a private key.

*/
static fromPrivateKey(curve: Curve, privateKey: Buffer): ConstantKeyPair;
constructor(publicKey: Point, privateKey: Buffer);
/**
* Retrieve the public key from the KeyPair instance.
* The returned public key is a Point object which represents a point on the elliptic curve secp256k1.
*
* @returns The public key as an elliptic curve point.
*/
getPublicKey(): Point;
/**
* Retrieves the private key of the KeyPair instance.
* The function returns a Promise that resolves to a Buffer containing the private key.
*
* @returns A Promise that resolves to a Buffer containing the private key.
*/
getPrivateKey(): Promise<Buffer>;
static fromPrivateKey(curve: Grumpkin, privateKey: PrivateKey): ConstantKeyPair;
constructor(publicKey: PublicKey, privateKey: PrivateKey);
getPublicKey(): PublicKey;
getPrivateKey(): Promise<PrivateKey>;
}
//# sourceMappingURL=key_pair.d.ts.map

@@ -1,3 +0,2 @@

import { randomBytes } from '@aztec/foundation/crypto';
import { Point } from '@aztec/foundation/fields';
import { PrivateKey } from '@aztec/circuits.js';
/**

@@ -17,4 +16,4 @@ * The ConstantKeyPair class is an implementation of the KeyPair interface, which allows generation and management of a constant public and private key pair. It provides methods for creating a random instance of the key pair, retrieving the public key, getting the private key. This class ensures the persistence and consistency of the generated keys, making it suitable for cryptographic operations where constant key pairs are required.

static random(curve) {
const privateKey = randomBytes(32);
const publicKey = Point.fromBuffer(curve.mul(curve.generator(), privateKey));
const privateKey = PrivateKey.random();
const publicKey = curve.mul(curve.generator(), privateKey);
return new ConstantKeyPair(publicKey, privateKey);

@@ -30,3 +29,3 @@ }

static fromPrivateKey(curve, privateKey) {
const publicKey = Point.fromBuffer(curve.mul(curve.generator(), privateKey));
const publicKey = curve.mul(curve.generator(), privateKey);
return new ConstantKeyPair(publicKey, privateKey);

@@ -38,17 +37,5 @@ }

}
/**
* Retrieve the public key from the KeyPair instance.
* The returned public key is a Point object which represents a point on the elliptic curve secp256k1.
*
* @returns The public key as an elliptic curve point.
*/
getPublicKey() {
return this.publicKey;
}
/**
* Retrieves the private key of the KeyPair instance.
* The function returns a Promise that resolves to a Buffer containing the private key.
*
* @returns A Promise that resolves to a Buffer containing the private key.
*/
getPrivateKey() {

@@ -58,2 +45,2 @@ return Promise.resolve(this.privateKey);

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5X3BhaXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMva2V5X3BhaXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUdqRDs7R0FFRztBQUNILE1BQU0sT0FBTyxlQUFlO0lBQzFCOzs7Ozs7OztPQVFHO0lBQ0ksTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFZO1FBQy9CLE1BQU0sVUFBVSxHQUFHLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNuQyxNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFDN0UsT0FBTyxJQUFJLGVBQWUsQ0FBQyxTQUFTLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBWSxFQUFFLFVBQWtCO1FBQzNELE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUM3RSxPQUFPLElBQUksZUFBZSxDQUFDLFNBQVMsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRUQsWUFBb0IsU0FBZ0IsRUFBVSxVQUFrQjtRQUE1QyxjQUFTLEdBQVQsU0FBUyxDQUFPO1FBQVUsZUFBVSxHQUFWLFVBQVUsQ0FBUTtJQUFHLENBQUM7SUFFcEU7Ozs7O09BS0c7SUFDSSxZQUFZO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxhQUFhO1FBQ2xCLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDMUMsQ0FBQztDQUNGIn0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5X3BhaXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMva2V5X3BhaXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBSWhEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGVBQWU7SUFDMUI7Ozs7Ozs7O09BUUc7SUFDSSxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQWU7UUFDbEMsTUFBTSxVQUFVLEdBQUcsVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3ZDLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQzNELE9BQU8sSUFBSSxlQUFlLENBQUMsU0FBUyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxNQUFNLENBQUMsY0FBYyxDQUFDLEtBQWUsRUFBRSxVQUFzQjtRQUNsRSxNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUMzRCxPQUFPLElBQUksZUFBZSxDQUFDLFNBQVMsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRUQsWUFBb0IsU0FBb0IsRUFBVSxVQUFzQjtRQUFwRCxjQUFTLEdBQVQsU0FBUyxDQUFXO1FBQVUsZUFBVSxHQUFWLFVBQVUsQ0FBWTtJQUFHLENBQUM7SUFFckUsWUFBWTtRQUNqQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVNLGFBQWE7UUFDbEIsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUMxQyxDQUFDO0NBQ0YifQ==

@@ -1,4 +0,3 @@

/// <reference types="node" resolution-mode="require"/>
import { Curve } from '@aztec/circuits.js/barretenberg';
import { Point } from '@aztec/circuits.js';
import { PrivateKey } from '@aztec/circuits.js';
import { Grumpkin } from '@aztec/circuits.js/barretenberg';
import { KeyStore, PublicKey } from '@aztec/types';

@@ -12,35 +11,8 @@ /**

private accounts;
constructor(curve: Curve);
constructor(curve: Grumpkin);
addAccount(privKey: PrivateKey): PublicKey;
createAccount(): Promise<PublicKey>;
getAccounts(): Promise<PublicKey[]>;
getAccountPrivateKey(pubKey: PublicKey): Promise<PrivateKey>;
/**
* Adds an account to the key store from the provided private key.
* @param curve - The curve to use for generating the public key.
* @param privKey - The private key of the account.
* @returns - The account's public key.
*/
addAccount(privKey: Buffer): PublicKey;
/**
* Adds a new account to the TestKeyStore with a randomly generated ConstantKeyPair.
* The account will have its own private and public key pair, which can be used for signing transactions.
* @param curve - The curve to use for generating the public key.
* @returns A promise that resolves to the newly created account's AztecAddress.
*/
createAccount(): Promise<Point>;
/**
* Retrieves the public addresses of all accounts stored in the TestKeyStore.
* The returned addresses are instances of `AztecAddress` and can be used for subsequent operations
* such as signing transactions or fetching public/private keys.
*
* @returns A Promise that resolves to an array of AztecAddress instances.
*/
getAccounts(): Promise<Point[]>;
/**
* Retrieves the private key of the account associated with the specified AztecAddress.
* Throws an error if the provided address is not found in the list of registered accounts.
*
* @param pubKey - The AztecAddress instance representing the account for which the private key is requested.
* @returns A Promise that resolves to a Buffer containing the private key.
* @deprecated We should not require a keystore to expose private keys in plain.
*/
getAccountPrivateKey(pubKey: PublicKey): Promise<Buffer>;
/**
* Retrieve the KeyPair object associated with a given pub key.

@@ -47,0 +19,0 @@ * Searches through the 'accounts' array for a matching public key and returns the corresponding account (KeyPair).

@@ -11,8 +11,2 @@ import { ConstantKeyPair } from './key_pair.js';

}
/**
* Adds an account to the key store from the provided private key.
* @param curve - The curve to use for generating the public key.
* @param privKey - The private key of the account.
* @returns - The account's public key.
*/
addAccount(privKey) {

@@ -28,8 +22,2 @@ const keyPair = ConstantKeyPair.fromPrivateKey(this.curve, privKey);

}
/**
* Adds a new account to the TestKeyStore with a randomly generated ConstantKeyPair.
* The account will have its own private and public key pair, which can be used for signing transactions.
* @param curve - The curve to use for generating the public key.
* @returns A promise that resolves to the newly created account's AztecAddress.
*/
createAccount() {

@@ -40,20 +28,5 @@ const keyPair = ConstantKeyPair.random(this.curve);

}
/**
* Retrieves the public addresses of all accounts stored in the TestKeyStore.
* The returned addresses are instances of `AztecAddress` and can be used for subsequent operations
* such as signing transactions or fetching public/private keys.
*
* @returns A Promise that resolves to an array of AztecAddress instances.
*/
getAccounts() {
return Promise.resolve(this.accounts.map(a => a.getPublicKey()));
}
/**
* Retrieves the private key of the account associated with the specified AztecAddress.
* Throws an error if the provided address is not found in the list of registered accounts.
*
* @param pubKey - The AztecAddress instance representing the account for which the private key is requested.
* @returns A Promise that resolves to a Buffer containing the private key.
* @deprecated We should not require a keystore to expose private keys in plain.
*/
getAccountPrivateKey(pubKey) {

@@ -79,2 +52,2 @@ const account = this.getAccount(pubKey);

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdF9rZXlfc3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdGVzdF9rZXlfc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUloRDs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sWUFBWTtJQUV2QixZQUFvQixLQUFZO1FBQVosVUFBSyxHQUFMLEtBQUssQ0FBTztRQUR4QixhQUFRLEdBQWMsRUFBRSxDQUFDO0lBQ0UsQ0FBQztJQUVwQzs7Ozs7T0FLRztJQUNJLFVBQVUsQ0FBQyxPQUFlO1FBQy9CLE1BQU0sT0FBTyxHQUFHLGVBQWUsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztRQUVwRSw2Q0FBNkM7UUFDN0MsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsWUFBWSxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDekYsSUFBSSxPQUFPLEVBQUU7WUFDWCxPQUFPLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQztTQUMvQjtRQUVELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzVCLE9BQU8sT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLGFBQWE7UUFDbEIsTUFBTSxPQUFPLEdBQUcsZUFBZSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUIsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxXQUFXO1FBQ2hCLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSSxvQkFBb0IsQ0FBQyxNQUFpQjtRQUMzQyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3hDLE9BQU8sT0FBTyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0ssVUFBVSxDQUFDLE1BQWlCO1FBQ2xDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFlBQVksRUFBRSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDWixNQUFNLElBQUksS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUM7U0FDckM7UUFDRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0NBQ0YifQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdF9rZXlfc3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdGVzdF9rZXlfc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVoRDs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sWUFBWTtJQUV2QixZQUFvQixLQUFlO1FBQWYsVUFBSyxHQUFMLEtBQUssQ0FBVTtRQUQzQixhQUFRLEdBQWMsRUFBRSxDQUFDO0lBQ0ssQ0FBQztJQUVoQyxVQUFVLENBQUMsT0FBbUI7UUFDbkMsTUFBTSxPQUFPLEdBQUcsZUFBZSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRXBFLDZDQUE2QztRQUM3QyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN6RixJQUFJLE9BQU8sRUFBRTtZQUNYLE9BQU8sT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO1NBQy9CO1FBRUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUIsT0FBTyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVNLGFBQWE7UUFDbEIsTUFBTSxPQUFPLEdBQUcsZUFBZSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUIsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFTSxXQUFXO1FBQ2hCLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVNLG9CQUFvQixDQUFDLE1BQWlCO1FBQzNDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDeEMsT0FBTyxPQUFPLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSyxVQUFVLENBQUMsTUFBaUI7UUFDbEMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsWUFBWSxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDekUsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNaLE1BQU0sSUFBSSxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztTQUNyQztRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7Q0FDRiJ9
{
"name": "@aztec/key-store",
"version": "0.1.0-alpha23",
"version": "0.1.0-alpha40",
"exports": "./dest/index.js",
"type": "module",
"dependencies": {
"@aztec/circuits.js": "0.1.0-alpha23",
"@aztec/foundation": "0.1.0-alpha23",
"@aztec/types": "0.1.0-alpha23",
"@aztec/circuits.js": "0.1.0-alpha40",
"@aztec/foundation": "0.1.0-alpha40",
"@aztec/types": "0.1.0-alpha40",
"tslib": "^2.4.0"
}
}

@@ -1,5 +0,4 @@

import { Curve } from '@aztec/circuits.js/barretenberg';
import { randomBytes } from '@aztec/foundation/crypto';
import { Point } from '@aztec/foundation/fields';
import { KeyPair } from '@aztec/types';
import { PrivateKey } from '@aztec/circuits.js';
import { Grumpkin } from '@aztec/circuits.js/barretenberg';
import { KeyPair, PublicKey } from '@aztec/types';

@@ -19,5 +18,5 @@ /**

*/
public static random(curve: Curve) {
const privateKey = randomBytes(32);
const publicKey = Point.fromBuffer(curve.mul(curve.generator(), privateKey));
public static random(curve: Grumpkin) {
const privateKey = PrivateKey.random();
const publicKey = curve.mul(curve.generator(), privateKey);
return new ConstantKeyPair(publicKey, privateKey);

@@ -33,25 +32,13 @@ }

*/
public static fromPrivateKey(curve: Curve, privateKey: Buffer) {
const publicKey = Point.fromBuffer(curve.mul(curve.generator(), privateKey));
public static fromPrivateKey(curve: Grumpkin, privateKey: PrivateKey) {
const publicKey = curve.mul(curve.generator(), privateKey);
return new ConstantKeyPair(publicKey, privateKey);
}
constructor(private publicKey: Point, private privateKey: Buffer) {}
constructor(private publicKey: PublicKey, private privateKey: PrivateKey) {}
/**
* Retrieve the public key from the KeyPair instance.
* The returned public key is a Point object which represents a point on the elliptic curve secp256k1.
*
* @returns The public key as an elliptic curve point.
*/
public getPublicKey() {
public getPublicKey(): PublicKey {
return this.publicKey;
}
/**
* Retrieves the private key of the KeyPair instance.
* The function returns a Promise that resolves to a Buffer containing the private key.
*
* @returns A Promise that resolves to a Buffer containing the private key.
*/
public getPrivateKey() {

@@ -58,0 +45,0 @@ return Promise.resolve(this.privateKey);

@@ -1,6 +0,7 @@

import { Curve } from '@aztec/circuits.js/barretenberg';
import { ConstantKeyPair } from './key_pair.js';
import { Point } from '@aztec/circuits.js';
import { PrivateKey } from '@aztec/circuits.js';
import { Grumpkin } from '@aztec/circuits.js/barretenberg';
import { KeyPair, KeyStore, PublicKey } from '@aztec/types';
import { ConstantKeyPair } from './key_pair.js';
/**

@@ -12,11 +13,5 @@ * TestKeyStore is an implementation of the KeyStore interface, used for managing key pairs in a testing environment.

private accounts: KeyPair[] = [];
constructor(private curve: Curve) {}
constructor(private curve: Grumpkin) {}
/**
* Adds an account to the key store from the provided private key.
* @param curve - The curve to use for generating the public key.
* @param privKey - The private key of the account.
* @returns - The account's public key.
*/
public addAccount(privKey: Buffer): PublicKey {
public addAccount(privKey: PrivateKey): PublicKey {
const keyPair = ConstantKeyPair.fromPrivateKey(this.curve, privKey);

@@ -34,9 +29,3 @@

/**
* Adds a new account to the TestKeyStore with a randomly generated ConstantKeyPair.
* The account will have its own private and public key pair, which can be used for signing transactions.
* @param curve - The curve to use for generating the public key.
* @returns A promise that resolves to the newly created account's AztecAddress.
*/
public createAccount(): Promise<Point> {
public createAccount(): Promise<PublicKey> {
const keyPair = ConstantKeyPair.random(this.curve);

@@ -47,22 +36,7 @@ this.accounts.push(keyPair);

/**
* Retrieves the public addresses of all accounts stored in the TestKeyStore.
* The returned addresses are instances of `AztecAddress` and can be used for subsequent operations
* such as signing transactions or fetching public/private keys.
*
* @returns A Promise that resolves to an array of AztecAddress instances.
*/
public getAccounts() {
public getAccounts(): Promise<PublicKey[]> {
return Promise.resolve(this.accounts.map(a => a.getPublicKey()));
}
/**
* Retrieves the private key of the account associated with the specified AztecAddress.
* Throws an error if the provided address is not found in the list of registered accounts.
*
* @param pubKey - The AztecAddress instance representing the account for which the private key is requested.
* @returns A Promise that resolves to a Buffer containing the private key.
* @deprecated We should not require a keystore to expose private keys in plain.
*/
public getAccountPrivateKey(pubKey: PublicKey): Promise<Buffer> {
public getAccountPrivateKey(pubKey: PublicKey): Promise<PrivateKey> {
const account = this.getAccount(pubKey);

@@ -69,0 +43,0 @@ return account.getPrivateKey();

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc