Skip to content

Latest commit

 

History

History
94 lines (68 loc) · 2.91 KB

File metadata and controls

94 lines (68 loc) · 2.91 KB

Zero-Proof Reserves

Zero-Proof Reserves is a Soroban starter repo for a decentralized application that generates cryptographically verifiable, privacy-preserving financial statements from Stellar wallet history.

The scaffold keeps the frontend, contract workspace, and debug tooling in place so the applied-cryptography work can ship alongside the product UI.

Overview

The project is centered on three outcomes:

  • Produce verifiable reserve or statement proofs from wallet history without exposing unnecessary account details.
  • Keep sensitive transaction data handled carefully across the contract, backend-style helpers, and frontend surfaces.
  • Provide a clear audit trail for users and reviewers through deterministic proof generation and testable verification paths.

Architecture

  • contracts/: Soroban contract crates for proof orchestration, hashing, statement commitments, and verification logic.
  • src/contracts/: TypeScript clients used by the frontend to call the generated contract interfaces.
  • src/pages/: Route-level UI for the homepage, debug explorer, and proof flows.
  • src/components/: Shared UI and wallet connection pieces.
  • src/hooks/: Wallet, notification, and subscription helpers.
  • target/: Build artifacts, WASM outputs, and generated contract metadata.

The repository still contains scaffold example contracts so the wallet and debug tools remain usable while the cryptography stack is introduced.

Getting Started

  1. Install dependencies.
npm install
  1. Install contract workspace dependencies and generated clients.
npm run install:contracts
  1. Start local development.
npm run dev
  1. Run the checks expected before review.
npm run lint
npm run typecheck
npm run build

When you touch proof generation or verification behavior, add focused Soroban tests that exercise the happy path and failure cases.

Roadmap

  • Replace scaffold examples with the Zero-Proof Reserves proof generation and verification contracts.
  • Add applied cryptography integrations for zk-SNARK or zk-STARK based statement proofs.
  • Implement secure handling for wallet history ingestion, commitments, and redaction boundaries.
  • Expand vulnerability testing for malformed inputs, replay attempts, proof verification failures, and data-leak regressions.

Wave Issue Strategy

Use issue waves to keep the work ordered and reviewable:

  • Wave 1: proof primitives, hashing, and contract interfaces.
  • Wave 2: privacy-preserving data handling, secure ingestion, and proof verification tests.
  • Wave 3: adversarial testing, edge cases, and frontend or docs polish.

Keep each issue small enough to be finished in one change set and anchored to a single proof path, security concern, or UI surface.

Repository