— Public privacy audit

We open the books.

Every contract in the core product is listed below. For each, we publish which fields are encrypted, which are public, and which FHE library calls the contract makes — that list is generated from the Solidity source, not typed by hand. Live counts come straight from the chain.

Core contracts
6
Contracts using FHE
5
Encrypted fields
12
Ops on ciphertext (25 FHE calls total)
9
Network:Ethereum SepoliachainId 11155111
Open block explorer

Per-contract privacy posture

Sealed-Bid Block Sale

Outcome revealedemits reveals

Sell a public lot to the highest sealed bid. Bids and the lot are escrowed in the vault, so settlement is atomic. Only the winning bid is ever decrypted; losers are refunded as ciphertext.

Encrypted on-chain
  • bids[auction][bidder] (amount actually locked)
  • highestBid, highestBidder (until reveal)
  • Blind Floor reserve (never decrypted)
  • lotLocked, lotFunded
Public on-chain
  • seller
  • lot token + size
  • payment token
  • deadline
  • bid count
  • status
  • winner + winning bid after reveal
FHE operations used
allowPublicallowSenderallowThisasEaddressasEboolasEuint64eqgtgtemaxreceiveEuint64FromCallselectshareEuint64verifyDecryptResult

Settlement Vault

Never decrypted

Encrypted balance ledger and escrow. Deposits credit only what actually arrived; feature contracts lock funds when users commit and can pay out only what they locked.

Encrypted on-chain
  • balance(user, token)
  • escrow(settler, token)
Public on-chain
  • supported tokens
  • authorized settlers
  • owner
FHE operations used
addallowallowSenderallowThisasEuint64gteltereceiveEuint64FromCallreceiveEuint64ParamselectshareEboolshareEuint64sub

Private Payroll

Never decrypted

Encrypted multi-recipient payroll. The whole split is locked from the creator up front; each recipient can unseal only their own amount, and the total stays encrypted.

Encrypted on-chain
  • amount per recipient
  • split total
Public on-chain
  • creator
  • token
  • recipient list
  • claimed count
  • status
FHE operations used
addallowallowThisandasEboolasEuint64asEuint64seqgtereceiveEuint64FromCallselectshareEuint64

Proof of Reserves

Outcome revealedemits reveals

Prove "my vault balance was at least X at this time" without revealing the balance. The comparison runs on ciphertext; only the yes/no outcome is published, with a Threshold Network signature.

Encrypted on-chain
  • vault balance (compared inside the vault)
  • outcome (until reveal)
Public on-chain
  • prover
  • token
  • threshold
  • requested at
  • outcome after reveal
FHE operations used
allowPublicallowThisasEuint64receiveEboolFromCallverifyDecryptResult

Test Token (FHERC-20)

Never decrypted

The CDEX test token: encrypted balances with a public faucet. Built from fhenix-confidential-contracts 0.2.0.

Encrypted on-chain
  • confidentialBalanceOf(address)
  • total supply
Public on-chain
  • name
  • symbol
  • decimals
  • balance indicator (not the amount)
  • operators
FHE operations used
addallowallowPublicallowThisasEboolasEuint64eqgteisAllowedisInitializedltereceiveEboolFromCallreceiveEuint64ParamselectshareEuint64subverifyDecryptResult

Platform Registry

Public

Fee schedule, fee collector and the emergency pause.

Encrypted on-chain

(no encrypted state — utility contract)

Public on-chain
  • fee (bps)
  • fee collector
  • paused

Aggregate FHE operations

Every distinct call into the FHE library across the entire codebase.

addallowallowPublicallowSenderallowThisandasEaddressasEboolasEuint64asEuint64seqgtgteisAllowedisInitializedltemaxreceiveEboolFromCallreceiveEuint64FromCallreceiveEuint64ParamselectshareEboolshareEuint64subverifyDecryptResult

Schema generated from src/lib/privacy-audit.ts. Live counts pulled at page load.

Found a discrepancy? Report it on the homepage.