Skip to content

orbinum/proof-generator

Repository files navigation

@orbinum/proof-generator

Fast ZK-SNARK proof generator for Orbinum privacy protocol. Witness calculation (TypeScript/snarkjs) + Proof generation (WASM/arkworks)

npm version License Node.js

Generate 128-byte Groth16 ZK-SNARK proofs in ~6-8.5 seconds. Same TypeScript code runs identically in Node.js, browsers, Electron, and Tauri.

Quick Start

npm install @orbinum/proof-generator
import { generateProof, CircuitType } from '@orbinum/proof-generator';

const result = await generateProof(CircuitType.Unshield, {
  merkle_root: '0x...',
  nullifier: '0x...',
  amount: '100',
  // ... more inputs
});

console.log('Proof:', result.proof); // 0x... (128 bytes)
console.log('Signals:', result.publicSignals); // ['0x...', ...]

Documentation

Features

  • Fast: ~8.5s end-to-end (500ms witness + 5-8s proof)
  • Optimized: Direct decimal format pipeline (no conversion overhead)
  • Compact: 128-byte proofs (50% smaller than snarkjs)
  • Universal: Node.js, browsers, Electron, Tauri - same code
  • Simple: No build tools, no Rust, no setup
  • Type-Safe: Full TypeScript types

Supported Circuits

Circuit Use Case
Unshield Withdraw from pool to public address
Transfer Private-to-private transfer
Disclosure Selective revelation

Related Repositories

License

Dual-licensed under Apache 2.0 or GPL 3.0. See LICENSE-APACHE2 and LICENSE-GPL3.

About

No description, website, or topics provided.

Resources

License

Apache-2.0, GPL-3.0 licenses found

Licenses found

Apache-2.0
LICENSE-APACHE2
GPL-3.0
LICENSE-GPL3

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •