Skip to content

Auditable dark pool on Solana: private SOL transfers with 2-of-3 auditable compliance via RLWE threshold decryption.

Notifications You must be signed in to change notification settings

Ham3798/auditable-dark-pool

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Auditable dark pool

One-line description
Auditable dark pool on Solana: private SOL transfers with 2-of-3 auditable compliance via RLWE threshold decryption.

Submission for Solana Privacy Hack (Jan 12 – Feb 2, 2026).

Project Description

Solana Auditable Dark Pool is a compliance-first privacy solution enabling anonymous SOL transfers with an auditable identity for regulators. we implement a 2-of-3 Threshold Decryption mechanism using RLWE encryption. While users maintain privacy from the public, designated auditors can recover transaction identities if, and only if, a threshold of auditors agree.

Sponsor Technologies Used

  • Noir (Aztec): Used to write ZK circuits (noir_circuit for withdrawal, audit_circuit for compliance proof).
  • Sunspot (Reilabs): Utilized for compiling Noir circuits into Solana-compatible verifiers and generating proofs via the Go wrapper.
  • Helius RPC: All Solana RPC interactions (deposits, withdrawals, state queries) are powered by Helius' high-performance devnet RPC infrastructure.

🪿 URLs

Track

Track — Private payments
Build innovative solutions for confidential or private transfers on Solana.

Sponsor Bounties (applicable)

This project also qualifies for the following sponsor bounties:

  • Aztec — ZK with Noir
  • Helius — Best Privacy Project (leveraging Helius RPC for all Solana interactions)
  • Range — Compliant Privacy

Team

Technical Detail

Core idea: ZK for privacy + RLWE (FHE) for compliance. Two circuits share wa_commitment as the bridge: (1) Shielded Pool proves valid withdrawal; (2) RLWE Audit proves identity is correctly encrypted. No single party can decrypt; only 2-of-3 designated auditors can jointly recover identity via Shamir.

Key mechanism:

  • wa_commitment = Poseidon(owner_x, owner_y) — shared public input linking both circuits
  • Identity encrypted with RLWE; ZK proves encryption correctness on-chain
  • Constant PK optimization: 42x fewer constraints (1.1M → 26K) via negacyclic row hardcoding

Stack: Noir · Sunspot · Pinocchio · BabyJubJub · RLWE + Shamir 2-of-3 · Poseidon · 🪿 Honk

Flow: Initialize (relayer) → Deposit (Merkle root update) → Withdraw (ZK + Audit proof verified on-chain)

Next: WASM proof gen, multi-asset (SPL), relayer network

Telegram @Scarrots


Disclaimer: Not audited. Use at your own risk.

About

Auditable dark pool on Solana: private SOL transfers with 2-of-3 auditable compliance via RLWE threshold decryption.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Noir 99.7%
  • TypeScript 0.2%
  • Python 0.1%
  • Rust 0.0%
  • Shell 0.0%
  • CSS 0.0%