Skip to content

Commit

Permalink
cleanup
Browse files Browse the repository at this point in the history
  • Loading branch information
benesjan committed Jul 9, 2024
1 parent 400a302 commit eaa2761
Show file tree
Hide file tree
Showing 39 changed files with 121 additions and 163 deletions.
6 changes: 3 additions & 3 deletions yarn-project/accounts/src/schnorr/account_contract.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { type AuthWitnessProvider } from '@aztec/aztec.js/account';
import { AuthWitness, type CompleteAddress, type EmbeddedCurveScalar } from '@aztec/circuit-types';
import { AuthWitness, type CompleteAddress, type GrumpkinScalar } from '@aztec/circuit-types';
import { Schnorr } from '@aztec/circuits.js/barretenberg';
import { type ContractArtifact } from '@aztec/foundation/abi';
import { type Fr } from '@aztec/foundation/fields';
Expand All @@ -12,7 +12,7 @@ import { SchnorrAccountContractArtifact } from './artifact.js';
* verified against a Grumpkin public key stored in an immutable encrypted note.
*/
export class SchnorrAccountContract extends DefaultAccountContract {
constructor(private signingPrivateKey: EmbeddedCurveScalar) {
constructor(private signingPrivateKey: GrumpkinScalar) {
super(SchnorrAccountContractArtifact as ContractArtifact);
}

Expand All @@ -28,7 +28,7 @@ export class SchnorrAccountContract extends DefaultAccountContract {

/** Creates auth witnesses using Schnorr signatures. */
class SchnorrAuthWitnessProvider implements AuthWitnessProvider {
constructor(private signingPrivateKey: EmbeddedCurveScalar) {}
constructor(private signingPrivateKey: GrumpkinScalar) {}

createAuthWit(messageHash: Fr): Promise<AuthWitness> {
const schnorr = new Schnorr();
Expand Down
6 changes: 3 additions & 3 deletions yarn-project/accounts/src/schnorr/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
*/
import { AccountManager, type Salt } from '@aztec/aztec.js/account';
import { type AccountWallet, getWallet } from '@aztec/aztec.js/wallet';
import { type EmbeddedCurveScalar, type PXE } from '@aztec/circuit-types';
import { type GrumpkinScalar, type PXE } from '@aztec/circuit-types';
import { type AztecAddress, type Fr } from '@aztec/circuits.js';

import { SchnorrAccountContract } from './account_contract.js';
Expand All @@ -25,7 +25,7 @@ export { SchnorrAccountContractArtifact } from './artifact.js';
export function getSchnorrAccount(
pxe: PXE,
secretKey: Fr,
signingPrivateKey: EmbeddedCurveScalar,
signingPrivateKey: GrumpkinScalar,
salt?: Salt,
): AccountManager {
return new AccountManager(pxe, secretKey, new SchnorrAccountContract(signingPrivateKey), salt);
Expand All @@ -41,7 +41,7 @@ export function getSchnorrAccount(
export function getSchnorrWallet(
pxe: PXE,
address: AztecAddress,
signingPrivateKey: EmbeddedCurveScalar,
signingPrivateKey: GrumpkinScalar,
): Promise<AccountWallet> {
return getWallet(pxe, address, new SchnorrAccountContract(signingPrivateKey));
}
6 changes: 3 additions & 3 deletions yarn-project/accounts/src/single_key/account_contract.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { type AuthWitnessProvider } from '@aztec/aztec.js/account';
import { AuthWitness, type CompleteAddress, type EmbeddedCurveScalar } from '@aztec/circuit-types';
import { AuthWitness, type CompleteAddress, type GrumpkinScalar } from '@aztec/circuit-types';
import { Schnorr } from '@aztec/circuits.js/barretenberg';
import { type ContractArtifact } from '@aztec/foundation/abi';
import { type Fr } from '@aztec/foundation/fields';
Expand All @@ -12,7 +12,7 @@ import { SchnorrSingleKeyAccountContractArtifact } from './artifact.js';
* the note encryption key, relying on a single private key for both encryption and authentication.
*/
export class SingleKeyAccountContract extends DefaultAccountContract {
constructor(private encryptionPrivateKey: EmbeddedCurveScalar) {
constructor(private encryptionPrivateKey: GrumpkinScalar) {
super(SchnorrSingleKeyAccountContractArtifact as ContractArtifact);
}

Expand All @@ -31,7 +31,7 @@ export class SingleKeyAccountContract extends DefaultAccountContract {
* by reconstructing the current address.
*/
class SingleKeyAuthWitnessProvider implements AuthWitnessProvider {
constructor(private privateKey: EmbeddedCurveScalar, private account: CompleteAddress) {}
constructor(private privateKey: GrumpkinScalar, private account: CompleteAddress) {}

createAuthWit(messageHash: Fr): Promise<AuthWitness> {
const schnorr = new Schnorr();
Expand Down
4 changes: 2 additions & 2 deletions yarn-project/accounts/src/single_key/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
*/
import { AccountManager, type Salt } from '@aztec/aztec.js/account';
import { type AccountWallet, getWallet } from '@aztec/aztec.js/wallet';
import { type EmbeddedCurveScalar, type PXE } from '@aztec/circuit-types';
import { type GrumpkinScalar, type PXE } from '@aztec/circuit-types';
import { type AztecAddress, type Fr, deriveMasterIncomingViewingSecretKey } from '@aztec/circuits.js';

import { SingleKeyAccountContract } from './account_contract.js';
Expand Down Expand Up @@ -36,7 +36,7 @@ export function getSingleKeyAccount(pxe: PXE, secretKey: Fr, salt?: Salt): Accou
export function getSingleKeyWallet(
pxe: PXE,
address: AztecAddress,
signingKey: EmbeddedCurveScalar,
signingKey: GrumpkinScalar,
): Promise<AccountWallet> {
return getWallet(pxe, address, new SingleKeyAccountContract(signingKey));
}
Expand Down
1 change: 0 additions & 1 deletion yarn-project/aztec.js/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,6 @@ export {
EventType,
ExtendedNote,
FunctionCall,
EmbeddedCurveScalar,
L1Actor,
L1ToL2Message,
L2Actor,
Expand Down
4 changes: 2 additions & 2 deletions yarn-project/aztec.js/src/utils/pub_key.ts
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
import { type EmbeddedCurveScalar, type PublicKey } from '@aztec/circuits.js';
import { type GrumpkinScalar, type PublicKey } from '@aztec/circuits.js';
import { Grumpkin } from '@aztec/circuits.js/barretenberg';

/**
* Method for generating a public grumpkin key from a private key.
* @param privateKey - The private key.
* @returns The generated public key.
*/
export function generatePublicKey(privateKey: EmbeddedCurveScalar): PublicKey {
export function generatePublicKey(privateKey: GrumpkinScalar): PublicKey {
const grumpkin = new Grumpkin();
return grumpkin.mul(grumpkin.generator(), privateKey);
}
2 changes: 1 addition & 1 deletion yarn-project/circuit-types/src/index.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
export { CompleteAddress, EmbeddedCurveScalar, type PartialAddress, type PublicKey } from '@aztec/circuits.js';
export { CompleteAddress, GrumpkinScalar, type PartialAddress, type PublicKey } from '@aztec/circuits.js';
export * from './auth_witness.js';
export * from './aztec_node/rpc/index.js';
export * from './body.js';
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@ describe('encrypt buffer', () => {

it('derive shared secret', () => {
// The following 2 are arbitrary fixed values - fixed in order to test a match with Noir
const ownerSecretKey: GrumpkinScalar = new Fq(0x23b3127c127b1f29a7adff5cccf8fb06649e7ca01d9de27b21624098b897babdn);
const ephSecretKey: GrumpkinScalar = new Fq(0x1fdd0dd8c99b21af8e00d2d130bdc263b36dadcbea84ac5ec9293a0660deca01n);
const ownerSecretKey = new Fq(0x23b3127c127b1f29a7adff5cccf8fb06649e7ca01d9de27b21624098b897babdn);
const ephSecretKey = new Fq(0x1fdd0dd8c99b21af8e00d2d130bdc263b36dadcbea84ac5ec9293a0660deca01n);

const ownerPubKey = grumpkin.mul(Grumpkin.generator, ownerSecretKey);
const ephPubKey = grumpkin.mul(Grumpkin.generator, ephSecretKey);
Expand Down
10 changes: 3 additions & 7 deletions yarn-project/circuit-types/src/logs/l1_payload/encrypt_buffer.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { type EmbeddedCurveScalar, type PublicKey } from '@aztec/circuits.js';
import { type GrumpkinScalar, type PublicKey } from '@aztec/circuits.js';
import { Grumpkin } from '@aztec/circuits.js/barretenberg';
import { Point } from '@aztec/foundation/fields';

Expand All @@ -17,11 +17,7 @@ import { deriveAESSecret } from './encryption_utils.js';
* @param incomingViewingPublicKey - The note owner's incoming viewing public key.
* @returns A Buffer containing the encrypted data and the ephemeral public key.
*/
export function encryptBuffer(
data: Buffer,
ephSecretKey: EmbeddedCurveScalar,
incomingViewingPublicKey: PublicKey,
): Buffer {
export function encryptBuffer(data: Buffer, ephSecretKey: GrumpkinScalar, incomingViewingPublicKey: PublicKey): Buffer {
const aesSecret = deriveAESSecret(ephSecretKey, incomingViewingPublicKey);
const aesKey = aesSecret.subarray(0, 16);
const iv = aesSecret.subarray(16, 32);
Expand All @@ -40,7 +36,7 @@ export function encryptBuffer(
* @param incomingViewingSecretKey - The secret key used for decryption.
* @returns The decrypted plaintext as a Buffer or undefined if decryption fails.
*/
export function decryptBuffer(data: Buffer, incomingViewingSecretKey: EmbeddedCurveScalar): Buffer | undefined {
export function decryptBuffer(data: Buffer, incomingViewingSecretKey: GrumpkinScalar): Buffer | undefined {
// Extract the ephemeral public key from the end of the data
const ephPubKey = Point.fromBuffer(data.subarray(-Point.SIZE_IN_BYTES));
// Derive the AES secret key using the secret key and the ephemeral public key
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,12 +29,8 @@ describe('encrypt log header', () => {

it('encrypt a log header, generate input for noir test', () => {
// The following 2 are arbitrary fixed values - fixed in order to test a match with Noir
const viewingSecretKey: GrumpkinScalar = new GrumpkinScalar(
0x23b3127c127b1f29a7adff5cccf8fb06649e7ca01d9de27b21624098b897babdn,
);
const ephSecretKey: GrumpkinScalar = new GrumpkinScalar(
0x1fdd0dd8c99b21af8e00d2d130bdc263b36dadcbea84ac5ec9293a0660deca01n,
);
const viewingSecretKey = new GrumpkinScalar(0x23b3127c127b1f29a7adff5cccf8fb06649e7ca01d9de27b21624098b897babdn);
const ephSecretKey = new GrumpkinScalar(0x1fdd0dd8c99b21af8e00d2d130bdc263b36dadcbea84ac5ec9293a0660deca01n);

const viewingPubKey = grumpkin.mul(Grumpkin.generator, viewingSecretKey);

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { AztecAddress, type EmbeddedCurveScalar, type PublicKey } from '@aztec/circuits.js';
import { AztecAddress, type GrumpkinScalar, type PublicKey } from '@aztec/circuits.js';
import { Aes128 } from '@aztec/circuits.js/barretenberg';

import { deriveAESSecret } from './encryption_utils.js';
Expand Down Expand Up @@ -34,7 +34,7 @@ export class EncryptedLogHeader {
* @param publicKey - The incoming or outgoing viewing key of the "recipient" of this log
* @returns The ciphertext of the encrypted log header
*/
public computeCiphertext(secret: EmbeddedCurveScalar, publicKey: PublicKey) {
public computeCiphertext(secret: GrumpkinScalar, publicKey: PublicKey) {
const aesSecret = deriveAESSecret(secret, publicKey);
const key = aesSecret.subarray(0, 16);
const iv = aesSecret.subarray(16, 32);
Expand All @@ -54,7 +54,7 @@ export class EncryptedLogHeader {
*/
public static fromCiphertext(
ciphertext: Buffer | bigint[],
secret: EmbeddedCurveScalar,
secret: GrumpkinScalar,
publicKey: PublicKey,
): EncryptedLogHeader {
const input = Buffer.isBuffer(ciphertext) ? ciphertext : Buffer.from(ciphertext.map((x: bigint) => Number(x)));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,12 +34,8 @@ describe('encrypt log incoming body', () => {

it('encrypt an event log incoming body, generate input for noir test', () => {
// The following 2 are arbitrary fixed values - fixed in order to test a match with Noir
const ephSecretKey: GrumpkinScalar = new GrumpkinScalar(
0x23b3127c127b1f29a7adff5cccf8fb06649e7ca01d9de27b21624098b897babdn,
);
const viewingSecretKey: GrumpkinScalar = new GrumpkinScalar(
0x1fdd0dd8c99b21af8e00d2d130bdc263b36dadcbea84ac5ec9293a0660deca01n,
);
const ephSecretKey = new GrumpkinScalar(0x23b3127c127b1f29a7adff5cccf8fb06649e7ca01d9de27b21624098b897babdn);
const viewingSecretKey = new GrumpkinScalar(0x1fdd0dd8c99b21af8e00d2d130bdc263b36dadcbea84ac5ec9293a0660deca01n);

const viewingPubKey = grumpkin.mul(Grumpkin.generator, viewingSecretKey);

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Fr, type EmbeddedCurveScalar, type PublicKey } from '@aztec/circuits.js';
import { Fr, type GrumpkinScalar, type PublicKey } from '@aztec/circuits.js';
import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';

import { Event } from '../payload.js';
Expand Down Expand Up @@ -51,7 +51,7 @@ export class EncryptedEventLogIncomingBody extends EncryptedLogIncomingBody {
*/
public static fromCiphertext(
ciphertext: Buffer | bigint[],
ivskAppOrEphSk: EmbeddedCurveScalar,
ivskAppOrEphSk: GrumpkinScalar,
ephPkOrIvpkApp: PublicKey,
): EncryptedEventLogIncomingBody {
const buffer = super.fromCiphertextToBuffer(ciphertext, ivskAppOrEphSk, ephPkOrIvpkApp);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { type EmbeddedCurveScalar, type PublicKey } from '@aztec/circuits.js';
import { type GrumpkinScalar, type PublicKey } from '@aztec/circuits.js';
import { Aes128 } from '@aztec/circuits.js/barretenberg';

import { deriveAESSecret } from '../encryption_utils.js';
Expand All @@ -20,7 +20,7 @@ export abstract class EncryptedLogIncomingBody {
*/
protected static fromCiphertextToBuffer(
ciphertext: Buffer | bigint[],
ivskAppOrEphSk: EmbeddedCurveScalar,
ivskAppOrEphSk: GrumpkinScalar,
ephPkOrIvpkApp: PublicKey,
): Buffer {
const input = Buffer.isBuffer(ciphertext) ? ciphertext : Buffer.from(ciphertext.map((x: bigint) => Number(x)));
Expand All @@ -41,7 +41,7 @@ export abstract class EncryptedLogIncomingBody {
*
* @returns The ciphertext of the encrypted log body
*/
public computeCiphertext(ephSk: EmbeddedCurveScalar, ivpkApp: PublicKey) {
public computeCiphertext(ephSk: GrumpkinScalar, ivpkApp: PublicKey) {
const aesSecret = deriveAESSecret(ephSk, ivpkApp);
const key = aesSecret.subarray(0, 16);
const iv = aesSecret.subarray(16, 32);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,12 +35,8 @@ describe('encrypt log incoming body', () => {

it('encrypt a note log incoming body, generate input for noir test', () => {
// The following 2 are arbitrary fixed values - fixed in order to test a match with Noir
const ephSecretKey: GrumpkinScalar = new GrumpkinScalar(
0x23b3127c127b1f29a7adff5cccf8fb06649e7ca01d9de27b21624098b897babdn,
);
const viewingSecretKey: GrumpkinScalar = new GrumpkinScalar(
0x1fdd0dd8c99b21af8e00d2d130bdc263b36dadcbea84ac5ec9293a0660deca01n,
);
const ephSecretKey = new GrumpkinScalar(0x23b3127c127b1f29a7adff5cccf8fb06649e7ca01d9de27b21624098b897babdn);
const viewingSecretKey = new GrumpkinScalar(0x1fdd0dd8c99b21af8e00d2d130bdc263b36dadcbea84ac5ec9293a0660deca01n);

const viewingPubKey = grumpkin.mul(Grumpkin.generator, viewingSecretKey);

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Fr, type EmbeddedCurveScalar, type PublicKey } from '@aztec/circuits.js';
import { Fr, type GrumpkinScalar, type PublicKey } from '@aztec/circuits.js';
import { NoteSelector } from '@aztec/foundation/abi';
import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';

Expand Down Expand Up @@ -53,7 +53,7 @@ export class EncryptedNoteLogIncomingBody extends EncryptedLogIncomingBody {
*/
public static fromCiphertext(
ciphertext: Buffer | bigint[],
ivskAppOrEphSk: EmbeddedCurveScalar,
ivskAppOrEphSk: GrumpkinScalar,
ephPkOrIvpkApp: PublicKey,
): EncryptedNoteLogIncomingBody {
const buffer = super.fromCiphertextToBuffer(ciphertext, ivskAppOrEphSk, ephPkOrIvpkApp);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import { AztecAddress, Fr, GeneratorIndex, EmbeddedCurveScalar, Point, type PublicKey } from '@aztec/circuits.js';
import { AztecAddress, Fr, GeneratorIndex, GrumpkinScalar, Point, type PublicKey } from '@aztec/circuits.js';
import { Aes128 } from '@aztec/circuits.js/barretenberg';
import { poseidon2Hash } from '@aztec/foundation/crypto';
import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';

export class EncryptedLogOutgoingBody {
constructor(public ephSk: EmbeddedCurveScalar, public recipient: AztecAddress, public recipientIvpkApp: PublicKey) {}
constructor(public ephSk: GrumpkinScalar, public recipient: AztecAddress, public recipientIvpkApp: PublicKey) {}

/**
* Serializes the log body
Expand All @@ -27,7 +27,7 @@ export class EncryptedLogOutgoingBody {
const reader = BufferReader.asReader(buf);
const high = reader.readObject(Fr);
const low = reader.readObject(Fr);
const ephSk = EmbeddedCurveScalar.fromHighLow(high, low);
const ephSk = GrumpkinScalar.fromHighLow(high, low);
const recipient = reader.readObject(AztecAddress);
const recipientIvpkApp = reader.readObject(Point); // PublicKey = Point

Expand All @@ -42,7 +42,7 @@ export class EncryptedLogOutgoingBody {
*
* @returns The ciphertext of the encrypted log body
*/
public computeCiphertext(ovskApp: EmbeddedCurveScalar, ephPk: PublicKey) {
public computeCiphertext(ovskApp: GrumpkinScalar, ephPk: PublicKey) {
// We could use `ephSk` and compute `ephPk` from it.
// We mainly provide it to keep the same api and potentially slight optimization as we can reuse it.

Expand All @@ -68,7 +68,7 @@ export class EncryptedLogOutgoingBody {
*/
public static fromCiphertext(
ciphertext: Buffer | bigint[],
ovskApp: EmbeddedCurveScalar,
ovskApp: GrumpkinScalar,
ephPk: PublicKey,
): EncryptedLogOutgoingBody {
const input = Buffer.isBuffer(ciphertext) ? ciphertext : Buffer.from(ciphertext.map((x: bigint) => Number(x)));
Expand All @@ -91,7 +91,7 @@ export class EncryptedLogOutgoingBody {
* @param ephPk - The ephemeral public key
* @returns The derived AES symmetric key
*/
private static derivePoseidonAESSecret(ovskApp: EmbeddedCurveScalar, ephPk: PublicKey) {
private static derivePoseidonAESSecret(ovskApp: GrumpkinScalar, ephPk: PublicKey) {
// For performance reasons, we do NOT use the usual `deriveAESSecret` function here and instead we compute it using
// poseidon. Note that we can afford to use poseidon here instead of deriving shared secret using Diffie-Hellman
// because for outgoing we are encrypting for ourselves and hence we don't need to perform a key exchange.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { GeneratorIndex, type EmbeddedCurveScalar, type PublicKey } from '@aztec/circuits.js';
import { GeneratorIndex, type GrumpkinScalar, type PublicKey } from '@aztec/circuits.js';
import { Grumpkin } from '@aztec/circuits.js/barretenberg';
import { sha256 } from '@aztec/foundation/crypto';
import { numToUInt8 } from '@aztec/foundation/serialize';
Expand All @@ -16,7 +16,7 @@ import { numToUInt8 } from '@aztec/foundation/serialize';
* TODO(#5726): This function is called point_to_symmetric_key in Noir. I don't like that name much since point is not
* the only input of the function. Unify naming once we have a better name.
*/
export function deriveAESSecret(secretKey: EmbeddedCurveScalar, publicKey: PublicKey): Buffer {
export function deriveAESSecret(secretKey: GrumpkinScalar, publicKey: PublicKey): Buffer {
if (publicKey.isZero()) {
throw new Error(
`Attempting to derive AES secret with a zero public key. You have probably passed a zero public key in your Noir code somewhere thinking that the note won't broadcasted... but it was.`,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { AztecAddress, type EmbeddedCurveScalar, type KeyValidationRequest, type PublicKey } from '@aztec/circuits.js';
import { AztecAddress, type GrumpkinScalar, type KeyValidationRequest, type PublicKey } from '@aztec/circuits.js';
import { EventSelector } from '@aztec/foundation/abi';
import { Fr } from '@aztec/foundation/fields';
import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
Expand Down Expand Up @@ -64,7 +64,7 @@ export class L1EventPayload extends L1Payload {
return new L1EventPayload(Event.random(), AztecAddress.random(), Fr.random(), EventSelector.random());
}

public encrypt(ephSk: EmbeddedCurveScalar, recipient: AztecAddress, ivpk: PublicKey, ovKeys: KeyValidationRequest) {
public encrypt(ephSk: GrumpkinScalar, recipient: AztecAddress, ivpk: PublicKey, ovKeys: KeyValidationRequest) {
return super._encrypt(
this.contractAddress,
ephSk,
Expand All @@ -88,7 +88,7 @@ export class L1EventPayload extends L1Payload {
* @returns The decrypted log payload
* @remarks The encrypted log is assumed to always have tags.
*/
public static decryptAsIncoming(encryptedLog: EncryptedL2Log, ivsk: EmbeddedCurveScalar) {
public static decryptAsIncoming(encryptedLog: EncryptedL2Log, ivsk: GrumpkinScalar) {
const reader = BufferReader.asReader(encryptedLog.data);

// We skip the tags
Expand Down Expand Up @@ -123,7 +123,7 @@ export class L1EventPayload extends L1Payload {
* @param ovsk - The outgoing viewing secret key, used to decrypt the logs
* @returns The decrypted log payload
*/
public static decryptAsOutgoing(encryptedLog: EncryptedL2Log, ovsk: EmbeddedCurveScalar) {
public static decryptAsOutgoing(encryptedLog: EncryptedL2Log, ovsk: GrumpkinScalar) {
const reader = BufferReader.asReader(encryptedLog.data);

// Skip the tags
Expand Down
Loading

0 comments on commit eaa2761

Please sign in to comment.