What Is Public vs Private

ZKFund is designed around a strict and intentional separation between what must be publicly verifiable and what must remain confidential.

This separation is not an implementation detail—it is a core security model.

The system ensures that anyone can verify correctness and rule enforcement, while no sensitive organizational or financial intelligence is exposed.


Design Principle

ZKFund follows one foundational rule:

Public verifiability should never require public disclosure.

Everything that affects system integrity is verifiable. Everything that could be exploited if revealed is kept private.


Public (Observable On-Chain)

The following elements are intentionally public to ensure trustlessness, auditability, and composability.

1. Protocol Rules

  • Governance logic

  • Execution constraints

  • Threshold definitions

  • Circuit verification keys

These define how the system works and must be transparent.


2. Proposal Existence & Lifecycle

  • Proposal IDs

  • Creation timestamps

  • Proposal states:

    • Active

    • Finalized

    • Executed

    • Expired

Observers can see that a decision process exists, but not its internal details.


3. Final Outcomes

  • Approved / Rejected status

  • Execution success or failure

  • Finalization events

Only the end result is visible, never the voting process.


4. Proof Verification Results

  • Whether a proof is valid

  • Whether thresholds are satisfied

  • Whether execution conditions are met

Proofs confirm correctness, not content.


5. Proof Receipts & Minimal Logs

  • Action finalized

  • Action executed

  • Settlement completed

Logs contain hashes and status flags only.


Private (Never Publicly Exposed)

The following elements are cryptographically protected and never published in raw form.


1. Identities & Membership

  • Wallet addresses

  • zkID holders

  • Role assignments

  • Signer lists

  • LP lists

There is no public registry of participants.


2. Governance Data

  • Individual votes

  • Vote weights

  • Quorum size

  • Interim voting results

  • Voting timelines

Observers cannot infer governance dynamics.


3. Execution Authority

  • Signer identities

  • Approval order

  • Number of attempts per signer

  • Internal signer structure

Only threshold satisfaction is visible.


4. Treasury State

  • Balances

  • Asset composition

  • Token allocations

  • Historical treasury movements

The treasury has no observable on-chain footprint.


5. Settlement Details

  • Sender addresses

  • Recipient addresses

  • Transfer amounts

  • Swap routes

  • Counterparties

Settlement is unlinkable and non-traceable.


6. Strategy & Risk Data

  • Allocation ratios

  • Trading strategies

  • Risk parameters

  • Exposure timing

None of this can be reverse engineered from on-chain data.


Selective Disclosure (Explicit & Governed)

ZKFund supports selective disclosure, which exists between public and private.

Under explicit governance approval, the system may reveal:

  • Aggregated NAV metrics

  • Specific settlement proofs

  • Limited historical data for audits

  • Compliance attestations

Selective disclosure is:

  • Optional

  • Time-scoped

  • Proof-based

  • Non-escalating

Nothing becomes public by default.


Why This Separation Matters

Without this separation:

  • Governance becomes manipulable

  • Funds become front-run targets

  • Internal structures are exposed

  • Compliance becomes invasive

With this separation:

  • Decisions are safe from influence

  • Capital movements are protected

  • Organizations can operate competitively

  • Privacy does not compromise trust

Last updated