Skip to content

Parad0x-Labs/Dark-Null-Protocol

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dark Null Protocol: Canonical Public Devnet Track

Status: Canonical Root Proofs: Groth16 License: MIT

Dark Null Header

Private settlement research on Solana, published without pretending more than the repo proves.

This repo now has one canonical public root:

Historical branches and artifact bundles are still published, but they are no longer the main integration target.

Search tags: solana, zk-snarks, zero-knowledge proofs, groth16, circom, bn254, privacy payments, anchor, snarkjs, solana program

One Command Bootstrap

sh scripts/bootstrap.sh

That installs npm dependencies and runs the public repo checks.

If you want the extended validation path:

FULL_VALIDATION=1 sh scripts/bootstrap.sh

Canonical Network Selection

npm run config:devnet
npm run config:localnet

For machine-readable output:

npm run config:json:devnet

Canonical defaults also live in .env.example.

npm SDK

npm install @dark-null/protocol

For Anchor-based integrations:

npm install @dark-null/protocol @coral-xyz/anchor @solana/web3.js

What Is Canonical

Area Root path
Program binding MANIFEST.json, Anchor.toml, src/lib.rs
Network config NETWORKS.json, .env.example, scripts/network-config.mjs
Verifier src/verifying_key.rs, circuits/vk.json
Circuit artifacts circuits/null_proof.circom, circuits/null_proof_final.zkey, circuits/null_proof_js/null_proof.wasm
Public IDL idl/paradox.json
JavaScript SDK sdk/index.mjs, sdk/index.d.ts
Python helper client client/dark_client.py
Canonical proof-flow test tests/canonical-proof-flow.test.mjs

What Is Historical

Area Historical path
Promoted provenance branch historical/null-mint
Archived toy public root historical/root-toy-prototype
Older full-cycle artifact bundle LIVE_TEST_RESULTS.md, full_cycle_results.json

What This Repo Does Prove

  • a real Groth16 verifier path is published in the root
  • the root circuit, zkey, wasm, and vk are internally consistent
  • the root proof flow is reproducible locally with npm test
  • the root devnet/localnet selection now resolves through one published config surface
  • root updates are no longer open to any signer in the current root source
  • bounded root, leaf, and nullifier storage now fail closed instead of overwriting silently
  • the public root fails closed before payout if a proof does not bind withdrawal amount and recipient semantics
  • the repo has one canonical public root path instead of a placeholder root plus side branch

What This Repo Does Not Prove

  • third-party audit completion
  • mainnet readiness
  • that every historical deployment in the repo used the current root files
  • that switching devnet to mainnet is enough to ship
  • append-only root derivation on-chain; the current source still trusts a privileged root updater
  • a safe public withdrawal payout path from the canonical root; the current source now rejects payout until amount/recipient binding is promoted into the canonical circuit and manifest

Verification Flow

  1. Run sh scripts/bootstrap.sh.
  2. Run npm run config:devnet or npm run config:localnet.
  3. Read MANIFEST.json, NETWORKS.json, and docs/PROGRAM_IDS.md.
  4. Run npm test.
  5. Run cargo test --offline.
  6. If Python client dependencies are installed, run npm run test:python:unit.

For Integrators and Agent Builders

If you need... Use Dark Null for...
privacy-oriented settlement research deposit flows, root updates, proof artifact verification, and source/security review
public code review root Rust program, circuits, client helpers, SDK, IDL, and historical evidence
machine-speed per-request API payments not this repo - use dna-x402

Review Status

  • No third-party audit has been completed yet.
  • The repo includes an AI-assisted internal review summary in INTERNAL_REVIEW.md.
  • The canonical root is now bound by MANIFEST.json.
  • The current source security model is documented in SECURITY_MODEL.md.
  • Historical program IDs are cataloged in docs/PROGRAM_IDS.md instead of being implied as one release.

License

Everything currently in this repository is released under the MIT License. See LICENSE.