@nori-zk/ethprocessor
Version:
zkApp for verifying SP1 Helios Nori proof and storing latest execution state root on Mina
25 lines (24 loc) • 1.07 kB
TypeScript
import { UInt64, UInt8 } from 'o1js';
import { Logger } from '@nori-zk/proof-conversion';
import { PlonkProof } from './types.js';
export declare function padUInt64To32Bytes(num: UInt64): UInt8[];
export declare function decodeConsensusMptProof(ethSP1Proof: PlonkProof): {
inputSlot: UInt64;
inputStoreHash: import("o1js/dist/node/lib/provable/bytes.js").Bytes;
outputSlot: UInt64;
outputStoreHash: import("o1js/dist/node/lib/provable/bytes.js").Bytes;
executionStateRoot: import("o1js/dist/node/lib/provable/bytes.js").Bytes;
verifiedContractDepositsRoot: import("o1js/dist/node/lib/provable/bytes.js").Bytes;
nextSyncCommitteeHash: import("o1js/dist/node/lib/provable/bytes.js").Bytes;
};
export declare function compileAndVerifyContracts(logger: Logger): Promise<{
ethVerifierVerificationKey: {
data: string;
hash: import("o1js").Field;
};
ethProcessorVerificationKey: {
data: string;
hash: import("o1js/dist/node/lib/provable/field.js").Field;
};
}>;
export declare const rootDir: string;