lambdaworks-groth16-ts
Version:
TypeScript bindings for LambdaWorks Groth16 SNARK prover
38 lines • 1.25 kB
JavaScript
export class TrustedSetupManager {
constructor(wasmInstance) {
this.wasmInstance = wasmInstance;
}
/**
* Generate trusted setup for a circuit
* WARNING: This is for testing only! Production should use ceremony-generated setups
*/
generateUnsafeSetup(circuit) {
console.warn('WARNING: Using unsafe setup generation. Only for testing!');
return this.wasmInstance.generate_unsafe_setup(circuit);
}
/**
* Load trusted setup from files (Powers of Tau + circuit-specific)
*/
async loadSetup(powersOfTauBuffer, circuitSetupBuffer) {
return this.wasmInstance.load_trusted_setup(powersOfTauBuffer, circuitSetupBuffer);
}
/**
* Export verifying key for on-chain verification
*/
exportVerifyingKey(setup) {
return this.wasmInstance.export_verifying_key(setup.verifyingKey);
}
/**
* Serialize proving key for storage
*/
serializeProvingKey(provingKey) {
return this.wasmInstance.serialize_proving_key(provingKey);
}
/**
* Deserialize proving key from storage
*/
deserializeProvingKey(data) {
return this.wasmInstance.deserialize_proving_key(data);
}
}
//# sourceMappingURL=setup.js.map