minauth-simple-preimage-plugin
Version:
A very simple Minauth plugin that allows users to authenticate by providing a preimage to a given hash.
74 lines (73 loc) • 5.63 kB
TypeScript
export declare const ProvePreimageProgram: {
name: string;
compile: (options?: {
cache?: import("o1js/dist/node/lib/proof-system/cache").Cache | undefined;
forceRecompile?: boolean | undefined;
} | undefined) => Promise<{
verificationKey: {
data: string;
hash: import("o1js/dist/node/lib/field").Field;
};
}>;
verify: (proof: import("o1js/dist/node/lib/proof_system").Proof<import("o1js/dist/node/lib/field").Field, import("o1js/dist/node/lib/field").Field>) => Promise<boolean>;
digest: () => string;
analyzeMethods: () => {
baseCase: {
rows: number;
digest: string;
result: unknown;
gates: import("o1js/dist/node/snarky").Gate[];
publicInputSize: number;
print(): void;
summary(): Partial<Record<import("o1js/dist/node/snarky").GateType | "Total rows", number>>;
};
};
publicInputType: typeof import("o1js/dist/node/lib/field").Field & ((x: string | number | bigint | import("o1js/dist/node/lib/field").Field | import("o1js/dist/node/lib/field").FieldVar | import("o1js/dist/node/lib/field").FieldConst) => import("o1js/dist/node/lib/field").Field);
publicOutputType: typeof import("o1js/dist/node/lib/field").Field & ((x: string | number | bigint | import("o1js/dist/node/lib/field").Field | import("o1js/dist/node/lib/field").FieldVar | import("o1js/dist/node/lib/field").FieldConst) => import("o1js/dist/node/lib/field").Field);
privateInputTypes: {
baseCase: [typeof import("o1js/dist/node/lib/field").Field & ((x: string | number | bigint | import("o1js/dist/node/lib/field").Field | import("o1js/dist/node/lib/field").FieldVar | import("o1js/dist/node/lib/field").FieldConst) => import("o1js/dist/node/lib/field").Field)];
};
rawMethods: {
baseCase: (publicInput: import("o1js/dist/node/lib/field").Field, ...args: [import("o1js/dist/node/lib/field").Field] & any[]) => import("o1js/dist/node/lib/field").Field;
};
} & {
baseCase: (publicInput: import("o1js/dist/node/lib/field").Field, ...args: [import("o1js/dist/node/lib/field").Field] & any[]) => Promise<import("o1js/dist/node/lib/proof_system").Proof<import("o1js/dist/node/lib/field").Field, import("o1js/dist/node/lib/field").Field>>;
};
export declare const ProvePreimageProofClass: {
new ({ proof, publicInput, publicOutput, maxProofsVerified, }: {
proof: unknown;
publicInput: import("o1js/dist/node/lib/field").Field;
publicOutput: import("o1js/dist/node/lib/field").Field;
maxProofsVerified: 0 | 1 | 2;
}): {
publicInput: import("o1js/dist/node/lib/field").Field;
publicOutput: import("o1js/dist/node/lib/field").Field;
proof: unknown;
maxProofsVerified: 0 | 1 | 2;
shouldVerify: import("o1js/dist/node/lib/bool").Bool;
verify(): void;
verifyIf(condition: import("o1js/dist/node/lib/bool").Bool): void;
toJSON(): import("o1js/dist/node/lib/proof_system").JsonProof;
};
publicInputType: typeof import("o1js/dist/node/lib/field").Field & ((x: string | number | bigint | import("o1js/dist/node/lib/field").Field | import("o1js/dist/node/lib/field").FieldVar | import("o1js/dist/node/lib/field").FieldConst) => import("o1js/dist/node/lib/field").Field);
publicOutputType: typeof import("o1js/dist/node/lib/field").Field & ((x: string | number | bigint | import("o1js/dist/node/lib/field").Field | import("o1js/dist/node/lib/field").FieldVar | import("o1js/dist/node/lib/field").FieldConst) => import("o1js/dist/node/lib/field").Field);
tag: () => {
name: string;
publicInputType: typeof import("o1js/dist/node/lib/field").Field & ((x: string | number | bigint | import("o1js/dist/node/lib/field").Field | import("o1js/dist/node/lib/field").FieldVar | import("o1js/dist/node/lib/field").FieldConst) => import("o1js/dist/node/lib/field").Field);
publicOutputType: typeof import("o1js/dist/node/lib/field").Field & ((x: string | number | bigint | import("o1js/dist/node/lib/field").Field | import("o1js/dist/node/lib/field").FieldVar | import("o1js/dist/node/lib/field").FieldConst) => import("o1js/dist/node/lib/field").Field);
};
fromJSON<S extends (new (...args: any) => import("o1js/dist/node/lib/proof_system").Proof<unknown, unknown>) & {
prototype: import("o1js/dist/node/lib/proof_system").Proof<any, any>;
publicInputType: import("o1js/dist/node/lib/circuit_value").FlexibleProvablePure<any>;
publicOutputType: import("o1js/dist/node/lib/circuit_value").FlexibleProvablePure<any>;
tag: () => {
name: string;
};
fromJSON: typeof import("o1js/dist/node/lib/proof_system").Proof.fromJSON;
dummy: typeof import("o1js/dist/node/lib/proof_system").Proof.dummy;
} & {
prototype: import("o1js/dist/node/lib/proof_system").Proof<unknown, unknown>;
}>(this: S, { maxProofsVerified, proof: proofString, publicInput: publicInputJson, publicOutput: publicOutputJson, }: import("o1js/dist/node/lib/proof_system").JsonProof): import("o1js/dist/node/lib/proof_system").Proof<import("o1js/dist/node/bindings/lib/provable-snarky").InferProvable<S["publicInputType"]>, import("o1js/dist/node/bindings/lib/provable-snarky").InferProvable<S["publicOutputType"]>>;
dummy<Input, OutPut>(publicInput: Input, publicOutput: OutPut, maxProofsVerified: 0 | 1 | 2, domainLog2?: number | undefined): Promise<import("o1js/dist/node/lib/proof_system").Proof<Input, OutPut>>;
};
export default ProvePreimageProgram;