@nori-zk/proof-conversion
Version:
Verifying zkVM proofs inside o1js circuits, to generate Mina compatible proof
58 lines (57 loc) • 2.67 kB
TypeScript
import type { O1jsVK, O1jsProof, Groth16Bn254Proof, PlonkBn254Proof, SP1ProofWithPublicValues } from '@nori-zk/proof-conversion-utils';
export type Sp1Groth16Vk = O1jsVK;
export type Sp1Groth16Proof = O1jsProof;
export type Sp1PlonkInputTransformed = {
hexPi: string;
programVK: string;
encodedProof: string;
pi2: string;
pi3: string;
pi4: string;
};
export type SP1ProofWithPublicValuesGroth16NoTee = Omit<SP1ProofWithPublicValues, 'proof' | 'tee_proof'> & {
proof: {
Groth16: Groth16Bn254Proof;
};
tee_proof: null;
};
export type SP1ProofWithPublicValuesPlonkNoTee = Omit<SP1ProofWithPublicValues, 'proof' | 'tee_proof'> & {
proof: {
Plonk: PlonkBn254Proof;
};
tee_proof: null;
};
export declare const sp1PlonkInputSchema: {
proof: {
Plonk: {
public_inputs: import("../validation/guards/core.js").ValidatorFn<[string, string, string, string, string]>;
encoded_proof: import("../validation/guards/core.js").ValidatorFn<string>;
raw_proof: import("../validation/guards/core.js").ValidatorFn<string>;
plonk_vkey_hash: import("../validation/guards/core.js").ValidatorFn<[number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number]>;
};
};
public_values: {
buffer: {
data: import("../validation/guards/core.js").ValidatorFn<number[]>;
};
};
sp1_version: import("../validation/guards/core.js").ValidatorFn<string>;
tee_proof: null;
};
export declare const sp1Groth16InputSchema: {
proof: {
Groth16: {
public_inputs: import("../validation/guards/core.js").ValidatorFn<[string, string, string, string, string]>;
encoded_proof: import("../validation/guards/core.js").ValidatorFn<string>;
raw_proof: import("../validation/guards/core.js").ValidatorFn<string>;
groth16_vkey_hash: import("../validation/guards/core.js").ValidatorFn<[number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number]>;
};
};
public_values: {
buffer: {
data: import("../validation/guards/core.js").ValidatorFn<number[]>;
};
};
sp1_version: import("../validation/guards/core.js").ValidatorFn<string>;
tee_proof: null;
};