// security

No single key controls user funds. Here is exactly who can do what, and what is still missing.

Audit status

Not audited

Do not use with real funds.

Bug bounty

Not launched

Planned alongside the first audit.

Trust assumptions & open items

  • Vault circuit

    Blocker

    Not implemented. Must prove state transition, mandate compliance and NAV from the price root. Mock verifier accepts forgeries.

  • Shielded custody

    Blocker

    Not implemented. Assets are held in plain sight for now — positions would be visible onchain. The real layer is a shielded multi-asset pool with private batch trading.

  • Stress disclosure

    Proven stress losses reveal coarse aggregate exposure (e.g. roughly how much crypto). Scenarios are few and coarse on purpose.

  • Collateral integrations

    Collateral pricing is a reference design. Any lending market using it still needs its own liquidation design and risk review.

  • Price roots

    Posted by a single trusted poster in the MVP. Production: threshold of independent feeds (e.g. Chainlink, Pyth).

  • Securities law

    Tokenized-stock vaults are regulated products. Launch requires licensing, KYC, and auditor view-key access — privacy from the public, not from regulators.

  • ZK circuits

    Blocker

    Not implemented. The mock prover accepts forged proofs. Real circuits + trusted setup (or transparent system) + audit required.

  • Merkle hash

    keccak256 in the MVP. Circuits need a SNARK-friendly hash (Poseidon); tree and circuit must change together.

  • Association sets

    The ASP poster decides which deposits are in the accepted set. It can exclude deposits but cannot take funds: ragequit always returns them to the depositor.

  • Credential attestor

    Posts activity-state roots. Trusted until roots are computed onchain or via storage proofs.

  • Multisig

    3-of-5 Safe proposes to a 72h timelock; anyone can execute after the delay. Signers must be independent and use hardware wallets.

  • Relayers

    Can delay or refuse a proof, but can't change recipient or fee (bound in the proof). Users can switch relayer or self-relay.

  • Front-end

    Notes are stored in the browser. Production must encrypt notes with a wallet-derived key and offer backups.

Emergency pause — and its limits

  • • The guardian multisig can pause new deposits only.
  • • Each pause lasts at most 7 days, followed by a 3-day cooldown.
  • • Withdrawals and ragequit are never pausable.
  • • Nothing can mint, sweep, or upgrade.

Privacy limitations

  • • Deposits and withdrawals are public events. Privacy comes from not knowing which deposit funds which withdrawal.
  • • Small anonymity sets, unique amounts, fast withdrawals and address reuse all make linking easier.
  • • Off-chain data (IP addresses, exchange KYC, social posts about a payment) can deanonymise users regardless of onchain privacy.
  • • Software may contain bugs. Funds could be lost.
  • • Laws on privacy tools differ by jurisdiction and change. You are responsible for lawful use.