Search

Search projects, tokens and protocols by name or address

About

A shielded ledger for ETH with private transfers, proven in the browser, with immutable contracts and an app stored on Ethereum.


  • Total Value Locked
    $17.52 K3.59%
    across 1 assets and 1 buckets
  • TVL
    $17.52 K3.59%
  • Assets tracked
    1
  • Buckets tracked
    1
  • Deposits 7D
    2325.8%
  • Deposits 30D
    94
  • Deposits Total
    210
  • Active Relayers 30D
    1

  • Privacy
    Link privacy
  • Trusted setup
  • Exit window
  • Reproducibility

  • Tracked on
    Ethereum logo
  • Runs on
    Base Chain logoRobinhood Chain logoMegaETH logo
  • Attributes
    ZKTransfersAny amount
  • Reference app
    anon.weimost private of 2 checked
  • Public observerChain analystNetwork observerPrivileged insiderFuture adversary

    About

    A shielded ledger for ETH with private transfers, proven in the browser, with immutable contracts and an app stored on Ethereum.

    Tacit Pay lets you shield ETH into a private balance, pay any Tacit address privately and withdraw any part to any address. Inside the pool, who pays whom and how much stays hidden, and a withdrawal does not show which deposit paid it. Deposits and withdrawals show address and amount.

    The contracts have no owner, pause or upgrade. Users trust Tacit’s relay, which sends spends by default. They also trust Tacit’s app owner, a single key that controls the app’s name and the endpoints the app reads. Users can send their own spends and withdraw without Tacit.

    Architecture

    A note is a private record of ETH, published only as a hashA fixed-length fingerprint of variable-size input, produced by a hash function. of its value, its owner’s key and a random value. The TacitEvmPool holds all deposits, a tree of note hashes and the spent nullifiers. Spending a note publishes its nullifier, a hash only the owner can compute, which marks the note spent without naming it. Each transaction carries one proof that spends up to two notes and creates up to two. Each new note carries a memo with its value, encrypted to the recipient’s view key. Wallets find their notes by decrypting memos on the device.

    Deposit addresses

    A deposit address is an ordinary address derived from the user’s keys. Anyone can pay it, and anyone can sweep its balance into the pool as a note for that user. The app issues a new one for each payer who asks. A payment link names one deposit address and carries a signature over it by the payee’s view key.

    Flow

    1. Sign in. Your wallet signs a fixed message, and the page derives your Tacit keys from the signature. Nothing goes onchain.
    2. Shield. You deposit from your wallet, or pay one of your deposit addresses from any wallet, which the relay then sweeps in. Your address and the amount are public.
    3. Send. The page proves on your device and the relay submits the proof. Only nullifiers, note hashes and encrypted memos become public.
    4. Withdraw. The relay pays the address and amount you choose and takes its fee from your balance. The recipient and amount are public, the change stays a note.

    Keys

    All keys derive from one signature of the user’s wallet over a fixed message, so whoever obtains that signature controls the funds. Contract wallets cannot sign in. A Tacit address holds three public keys: one that checks spends, one behind each note’s nullifier and one that payers encrypt memos to. A .wei, .gwei or .eth name can publish the whole address onchain in its finance.tacit text record, so payers can pay the name. Deposit addresses can be found again from the keys alone.

    App

    anon.wei is one HTML page stored as contract code on Ethereum, each version immutable. The reviewed version is the TacitPay8244 contract below. Save it from your own nodeA software client that participates in the network. with cast call 0x0000000d42137547140b0812E1178F025e08bc49 "html()(string)" --rpc-url <node> --json | jq -j '.[0]' > anon.html, check that the file’s sha256 is 3b94ab980316470756345dd754cd212dde57067e0ef95dce1531fcaecfde9c08 and serve it from localhost. Its sign-in note sends users to anon.wei.limo, which serves whichever version the app owner names. The page checks the proving files against pinned hashes.

    NetworkA constellation of nodes (peers) that communicate via a peer-to-peer protocol, for example, in propagating transactions and blocks to other nodes.

    The page reads the chain through public RPC nodes and syncs from the relay’s history feed. It keeps a feed page only where the tree it builds matches a root the pool has held. The feed can still hide a note, which Rebuild recovers from chain logs. Under Endpoints the user can set their own node and another relay or none.

    Exits

    Any account can submit a proof, and the proof fixes recipient, amount, relayer and fee, so a relayer can change none of them. A withdrawal that creates no notes cannot be made stale by other transactions. Any account can sweep a deposit address, and its owner can do so without a fee.

    Fees

    The contracts take no fee. The relay charges the transaction’s gasA virtual fuel used to execute smart contracts on a rollup. The EVM (or other VM within the rollup) uses an accounting mechanism to correspond the consumption of gas to the consumption of computing resources, and to limit the consumption of computing resources. plus a margin, which the page checks against a ceiling. Sweeping a deposit address costs at most 0.25% of its balance, and the relay sweeps only balances that cover its gas.

    Anonymity setIn privacy protocols, anonymity set denotes all users, to which a particular withdrawal could be plausibly attributed. Anonymity set depends on a particular withdrawal, the size of the anonymity set is a metric for level of user's privacy.

    The set counts each account that sent a deposit into the ETH pool on Ethereum. A deposit through a deposit address counts the account that sent the sweep, usually the relay. Accounts that withdraw their deposits back to themselves still count, though they hide no one.

    What the protocol promises: Hides which deposit funds which withdrawal, and who pays whom and how much inside the pool. Deposits and withdrawals show address and amount.

    • anon.weiReference

      The ratings assume this app, since 2026-11-09 · Source bf39cc0

    • tacit.financeLeaks more

      Sends ten of the user's deposit addresses per request to one public node at every sign-in, with no setting for the user's own node.

      Fix: Read each deposit address in its own request and offer an own-node setting, as anon.wei does. · Source (checked 2026-11-09)

    Ethereum is public by default. Each protocol is rated on its main privacy promise, like hiding who paid, who received, how much, or which deposit became which withdrawal. Against each adversary, the colour says whether it holds for a careful user with the app's own settings: green yes, yellow only with significant extra work, red no. Fields marked at risk stay private only under the condition in their note.

    Public observerChain analystNetwork observerPrivileged insiderFuture adversary
    Public observer
    Private

    A zero-knowledgeA cryptographic technology and sub-discipline of cryptography that allows an individual to prove that a statement or computation is true without revealing any additional information. proof hides which notes a withdrawal or transfer spends, and a transfer publishes only note hashes and encrypted memos. Payments to one deposit address are public and linked to each other. Anyone holding a payment link can tell its deposit address belongs to the payee.

    Advice: Exit through a relay, so none of the user's wallets pay gas for the receiving address. Give each payer its own deposit address.

    InsideSenderprivateRecipientprivateAmountprivateAssetexposedLinkat risk
    Chain analyst
    Exposed

    Fewer than 50 wallets deposited into the Ethereum pool, besides wallets that only cycle funds back, so timing and amounts can pair the two ends. Any amount is allowed, so an unusual amount pairs the two ends. Paying gasA virtual fuel used to execute smart contracts on a rollup. The EVM (or other VM within the rollup) uses an accounting mechanism to correspond the consumption of gas to the consumption of computing resources, and to limit the consumption of computing resources. from the user’s wallet instead of a relay exposes its fingerprint, account implementation and fee habits, even from a fresh address.

    Compared with a public observer
    InsideLinkexposed
    Network observer
    Private

    The user’s own Ethereum nodeA software client that participates in the network. can take every read that names a deposit address or the recipient, leaving third parties only pool-wide logs. By default, Tenderly and dRPC receive the deposit addresses and the withdrawal recipient in one session, so either can tie both sides. Base and Robinhood Chain nodes still receive the deposit addresses, which are the same on every chain.

    Advice: Set your own Ethereum node under Endpoints and in your wallet before signing in, and shield from that wallet rather than through a deposit address.

    Compared with a public observer
    InsideLinkat risk
    Privileged insider
    At risk

    Tacit holds no key to any note, but its app owner can change the page anon.wei serves, its relay host and RPC nodes without delay. The reviewed page version is an immutable contract, but running a saved copy of it takes command-line work. Tacit’s relay sees the IP at sign-in, each exit’s recipient with the IP that asked, and each deposit address the user views in the app.

    Advice: Serve the page from localhost as the App section describes, not from anon.wei.limo. Exit as the network observer advice says.

    Compared with a public observer
    InsideRecipientat riskLinkat risk
    Future adversary
    Exposed

    Whoever breaks elliptic-curve cryptography recovers the key of each wallet that signed in and sent a transaction, which opens its notes and links. Accounts created from a wallet signature reduce to that wallet’s key. A Tacit address published in a name record yields its view and nullifier keys the same way, exposing its incoming notes and their spends.

    Compared with a public observer
    InsideSenderexposedRecipientexposedAmountexposedLinkexposed

    30 day historic anonymity set

    How many unique depositors you could have blended in with if you withdrew on a particular day after depositing during the previous 30 days. This metric is a proxy for the historic anonymity set and shows how it developed over time.

    The metric looks backwards: it counts deposits that already happened, including from addresses that have since withdrawn. Your real anonymity also depends on deposits made after yours, which cannot be known in advance.

    Estimated anonymity set by holding duration

    An estimate of how many unique depositors you blend in with, depending on how long you leave your deposit in the pool. It is based on historic data of past deposits: each point counts depositors from the preceding period, so holding for up to 30 days effectively means blending in with everyone who deposited during the last 30 days.

    Asset
    Deposits 7D
    Deposits 30D
    Deposits Total
    Value Locked
    ETHETH
    23
    $11.90 K
    94
    $112.30 K
    210
    $327.65 K
    $17.52 K
    Total
    23
    $11.90 K
    94
    $112.30 K
    210
    $327.65 K
    $17.52 K

    anon.wei app stored onchain

    3 Oct 2026

    The reference app is published as contract code on Ethereum, each version immutable.

    Learn more

    Tacit Pay pool launch

    27 Sep 2026

    The ETH pool, router and verifierAn entity in a ZK-Rollup, often a smart contract, that verifies zero-knowledge proofs submitted by a prover. go live with the ceremony key and no owner.

    Learn more

    Funds can be stolen if

    1. the zk proof systemThe infrastructure that allows projects to verify their state transitions. It is composed by onchain verifiers and offchain provers. The main two flavors are optimistic and ZK proof systems, but they can be combined in a hybrid model. In general though, if a system is able to accept state roots optimistically, even if it has a ZK component, it is considered an optimistic proof system. is broken, allowing invalid spends or withdrawals.
    2. all trusted setup participants collude or leak their secrets, allowing forged proofs.

    Funds can be lost if

    1. a user loses the wallet whose signature derives their keys.
    2. a user signs the Tacit identity message on a malicious site, which can then spend their notes.
    3. a user sends a token other than ETH to a deposit address, which releases only ETH.

    Privacy can be lost if

    1. few depositors use the pool, so timing and amounts can pair a withdrawal with its deposit (see chain analyst).
    2. Tacit’s relay, the only one running, refuses a withdrawal, so the user must self-relay from a public wallet (see chain analyst).
    3. a user keeps the default RPC nodes, which receive the deposit addresses and the withdrawal recipient in one session (see networkA constellation of nodes (peers) that communicate via a peer-to-peer protocol, for example, in propagating transactions and blocks to other nodes. observer).
    4. Tacit’s app owner points anon.wei at another page or changes the default relay host and RPC nodes, without delay (see privileged insider).
    5. elliptic-curve cryptography is broken, which opens every note derived from a wallet that signed in and sent a transaction (see future adversary).

    The TacitEvmPool, its router, zap and verifierAn entity in a ZK-Rollup, often a smart contract, that verifies zero-knowledge proofs submitted by a prover. are immutable and have no owner, pause or admin function. A new circuitA program written for the purpose of being proven within a proving system. A circuit is a mathematical representation of the computation to be executed, arithmetic circuits and zkVM execution trace are examples of circuits. Circuits can be written in different languages, ranging from low-level to high-level. or rule needs a new pool at a new address, and users move by withdrawing and depositing again.

    The anon.wei app is a chain of immutable page contracts. Tacit’s app owner, a single key, appends new versions and owns the name anon.wei, which it can point at any contract. It also owns two registries the app reads every six hours. Through these it can add RPC nodes, replace the relay host and add proving-key mirrors, all without delay. An RPC nodeA software client that participates in the network. or relay the user sets in the app takes precedence.

    Transact circuit ceremony

    Groth16: Snarkjs
    1. Phase 1 · Universal54contributions
    2. Phase 2 · Circuit-specific176contributions

      Under self-made keys, 171 named "anonymous" and 5 operator test entries. One key could contribute any number of times.

    Detailed description

    CircuitA program written for the purpose of being proven within a proving system. A circuit is a mathematical representation of the computation to be executed, arithmetic circuits and zkVM execution trace are examples of circuits. Circuits can be written in different languages, ranging from low-level to high-level.-specific Phase 2For Groth16 trusted setup, phase 2 represents circuit-dependent part of the trusted setup. It generates a part of the secret cryptographic data required for Groth16 ZK protocol to work. If the outcome of phase 2 trusted setup ceremony is known, arbitrary proofs could be forged. trusted setupGeneration of a piece of data that must then be used for some cryptographic protocol to run. Generating this data requires some secret information. The "trust" comes from the fact the secret must be destroyed after the ceremony, otherwise cryptographic properties of the protocol could be broken. Once the data is generated, and the secrets are forgotten, no further participation from the creators of the ceremony is required. There are two types of trusted setups for SNARKs: (i) trusted setup per circuit where it is generated from scratch for each circuit, (ii) trusted universal setup per proving system where it can be used for several circuits. for the single Groth16A zk-SNARK proving system introduced by Groth in 2016 that proves arithmetic circuits and requires a separate trusted setup for each circuit. It allows extremely efficient proof verification. circuit, transact.circom (2 inputs, 2 outputs, 44,414 constraints), over the BN254 curve. It builds on the Hermez ceremony as Phase 1For Groth16 trusted setup, phase 1 represents circuit-independent part of the trusted setup (e.g. Perpetual Powers of Tau), which could be reused across different circuits. It generates a part of the secret cryptographic data required for Groth16 ZK protocol to work. If the outcome of phase 1 trusted setup ceremony is known, arbitrary proofs could be forged., using powersOfTau28_hez_final_16.ptau, which contains 54 Perpetual Powers of Tau participant contributions and one public randomness beacon.

    Tacit’s own server coordinated Phase 2 from its website. It opened to everyone on 26 September 2026 at 18:21 UTC and closed 18 hours later. The hashA fixed-length fingerprint of variable-size input, produced by a hash function. of Bitcoin blockAn ordered list of transactions and chain-related metadata that gets bundled together and published to the L1/DA layer. Nodes execute the transactions contained within blocks to change the rollup chain’s state. Protocol rules dictate what constitutes a valid block, and invalid blocks are skipped over. 968840 sealed it as a beacon. The transcript lists 176 contributions. 171 are named “anonymous” and 5 are Tacit test entries. A contributor proves only a key they generate themselves. The coordinator accepts any number of contributions from one key, so the contributions identify no participants. We found no public announcement of the ceremony. The final key verifies against the circuit and the Phase 1 file with snarkjs, and its contribution hashes equal the transcript’s.

    Verification
    Used in
    Known deployments
    Transact verifier
    by
    Tacit Pay logo


    Known deployments1
    Used in
    Tacit Pay logo
    Tacit Pay

    Verification steps

    Tacit Pay uses one Groth16A zk-SNARK proving system introduced by Groth in 2016 that proves arithmetic circuits and requires a separate trusted setup for each circuit. It allows extremely efficient proof verification. circuitA program written for the purpose of being proven within a proving system. A circuit is a mathematical representation of the computation to be executed, arithmetic circuits and zkVM execution trace are examples of circuits. Circuits can be written in different languages, ranging from low-level to high-level., transact.circom (2 inputs, 2 outputs, 44,414 constraints). The TacitEvmPool names the TransactVerifier, which hard-codes the circuit’s verification key. The steps below tie the deployed bytecodeGenerally, an instruction set designed for efficient execution by a software interpreter or a virtual machine. Unlike human-readable source code, bytecode is expressed numerically. Within the context of rollups, often related to the concept of compatibility: whether the bytecode of programs on the rollup are capable of being run as-is on Ethereum as well, and vice versa. to the published circuit and ceremony key.

    Steps, all on src-company/tacit commit 389dd680cf18541eca1c0de922368fde2f5596f5:

    1. In dapp/circuits, install the locked dependencies (circomlib 2.0.5, snarkjs 0.7.6) and compile evm-pool/transact.circom with circom 2.2.3 and --O2. The sha256 of transact.r1cs is b0a246d1790151c722e42ccfa89450cb96c7f5a9f4b70a2162b7d9fc79b6ddb3 and of transact_js/transact.wasm is 02dd5e84970e5bc629a7a3cd4d7eae5fc9ca05579fa22c9b39b5ea70c8d8a6c1, as dapp/evm-pool/pin.json records.
    2. Download the phase 1For Groth16 trusted setup, phase 1 represents circuit-independent part of the trusted setup (e.g. Perpetual Powers of Tau), which could be reused across different circuits. It generates a part of the secret cryptographic data required for Groth16 ZK protocol to work. If the outcome of phase 1 trusted setup ceremony is known, arbitrary proofs could be forged. file powersOfTau28_hez_final_16.ptau, BLAKE2b 6a6277a2f74e1073601b4f9fed6e1e55226917efb0f0db8a07d98ab01df1ccf43eb0e8c3159432acd4960e2f29fe84a4198501fa54c8dad9e43297453efec125 as the snarkjs README lists it. Tacit pins a copy at IPFS bafybeie73kd3suqjeshnitj6pmr3qxf6ckjbwxxuqyaaixk77ezeoohtau.
    3. The committed dapp/evm-pool/transact_final.zkey has sha256 40758061a0786fb0bdc5e5dec4c354bbf85fc106f7412716e25e781af4e79c4b, like the copy in the ceremony bundle bafybeia4yvn2zoggvgpjwg5vpwpt6aivjbcm6tgzxoxsukao2nm5yyypfy.
    4. Run snarkjs zkey verify transact.r1cs powersOfTau28_hez_final_16.ptau transact_final.zkey. The key verifies with 176 contributions and a beacon from the hashA fixed-length fingerprint of variable-size input, produced by a hash function. of Bitcoin blockAn ordered list of transactions and chain-related metadata that gets bundled together and published to the L1/DA layer. Nodes execute the transactions contained within blocks to change the rollup chain’s state. Protocol rules dictate what constitutes a valid block, and invalid blocks are skipped over. 968840, and the contribution hashes equal those in the bundle’s transcript.json.
    5. Run snarkjs zkey export verificationkey transact_final.zkey. It equals the committed dapp/evm-pool/transact_vk.json, and every coordinate of vk_alpha_1, vk_beta_2, vk_gamma_2, vk_delta_2 and the 12 IC points equals a constant of contracts/src/TransactVerifier.sol.
    6. The source of the verifierAn entity in a ZK-Rollup, often a smart contract, that verifies zero-knowledge proofs submitted by a prover. at 0x000000b1c0e84CEc8AdF8278B90c4d6400DfB153, verified on Etherscan and Sourcify, equals contracts/src/TransactVerifier.sol, and VERIFIER() of the pool returns that address.

    Ossification

    Contracts our research team classifies as critical form the project's critical perimeter. Its clock starts at the ossification genesis, and every critical change resets it (changes within 24 hours count as one). The ossification score is the share of recorded code-bug exploits whose exploited code was younger than this perimeter is today. Battle-tested exposure is the value secured, summed over that unchanged period.

    Ossification %
    53since 27 Sep 2026
    TVS & changes (1Y)
    Battle-tested exposure
    Battle-tested exposure
    27 Sep — 10 Nov 2026
    $8.04 K average TVS × 0.12 years unchanged.TVS now $17.52 K, peaking at $22.29 K over the past year.
    Critical changes / year
    0across 5 contracts
    Exit window

    Discovery updates

    10changes

    Initial discovery of Tacit Pay on Ethereum: the ETH pool, its router, zap, Groth16 verifier, box implementation and Poseidon hasher, and the anon.wei page contract with the two registries the page reads its endpoints from.

    Initial discovery

    + Status: CREATED
    contract TacitPay8244 (eth:0x0000000d42137547140b0812E1178F025e08bc49) [tacit-pay/TacitPay8244]
    +++ description: One version of the anon.wei web app stored as contract code (ERC-8244). html() returns the page from immutable chunk contracts and checks it against PAGE_HASH. The steward can append one successor version, which latest() follows.
    + Status: CREATED
    contract zEndpoints (eth:0x00000051F365d898132f4ebF345Cd3968e02F288) [tacit-pay/zEndpoints]
    +++ description: Owner-curated registry of service URLs per key and chain, which apps read at load to find their RPC nodes, relays and file mirrors.
    + Status: CREATED
    contract TacitEvmPoolRouter (eth:0x0000006C96Afa6f1cD4DF8FE19bc0d8B6A6Cd7B5) [tacit-pay/TacitEvmPoolRouter]
    +++ description: Periphery of one pool. It derives deposit and receive boxes, addresses anyone can pay and anyone can sweep into the pool as notes the owner fixed in advance, and runs withdrawals that call other contracts in the same transaction.
    + Status: CREATED
    contract TacitEvmPoolZap (eth:0x0000008EbBF2323f95c4fBc18254f3D65C53998c) [tacit-pay/TacitEvmPoolZap]
    +++ description: Swaps the caller's token for ETH through zRouter and deposits it into the pool with the caller's proof, in one transaction. It holds nothing between transactions.
    + Status: CREATED
    contract TransactVerifier (eth:0x000000b1c0e84CEc8AdF8278B90c4d6400DfB153) [tacit-pay/TransactVerifier]
    +++ description: Groth16 verifier for the transact circuit, with the verification key of its trusted setup hard-coded.
    + Status: CREATED
    contract TacitEvmPool (eth:0x000000c2A20657CE25f2Ba99737933D031AFBEE9) [tacit-pay/TacitEvmPool]
    +++ description: Shielded pool for one asset. Each transaction carries one Groth16 proof that deposits, transfers inside the pool or withdraws, and inserts its new notes into a Poseidon tree the proof updates. It stores every root it has held and the spent nullifiers.
    + Status: CREATED
    EOA (eth:0x1C0Aa8cCD568d90d61659F060D1bFb1e6f855A20)
    +++ description: None
    + Status: CREATED
    contract TacitBox (eth:0x4618B85d52F0d5b4a5540961F98b180b4313a0ea) [tacit-pay/TacitBox]
    +++ description: Implementation behind the router's boxes: clones at addresses fixed by each intent, which hold payments and release them only when the router instructs.
    + Status: CREATED
    contract PoseidonT5 (eth:0x555333f3f677Ca3930Bf7c56ffc75144c51D9767) [tacit-pay/PoseidonT5]
    +++ description: Four-input Poseidon hash from poseidon-solidity. The router computes the note of each receive box sweep with it.
    + Status: CREATED
    contract zRpcList (eth:0x8C7348D039f58C4e9cfA936EF410eec759213b12) [tacit-pay/zRpcList]
    +++ description: Owner-curated list of Ethereum RPC URLs that apps read at load.
    A dashboard to explore contracts and permissions
    Go to Disco
    Disco UI Banner

    Ethereum

    Actors:

    • Can interact with TacitPay8244
      • append the successor version of the app, which latest() then returns
      • point the name anon.wei at any contract, which anon.wei.limo then serves
    • Can interact with zEndpoints
      • replace the URLs apps read from this registry, such as their RPC nodes, relay host and file mirrors, effective at their next read
    • Can interact with zRpcList
      • replace the RPC URLs apps read from this list, effective at their next read
    A dashboard to explore contracts and permissions
    Go to Disco
    Disco UI Banner

    Ethereum

    TacitEvmPoolRouter0x0000…d7B5

    Periphery of one pool. It derives deposit and receive boxes, addresses anyone can pay and anyone can sweep into the pool as notes the owner fixed in advance, and runs withdrawals that call other contracts in the same transaction.

    TacitEvmPoolZap0x0000…998c

    Swaps the caller’s token for ETH through zRouter and deposits it into the pool with the caller’s proof, in one transaction. It holds nothing between transactions.

    TacitEvmPool0x0000…BEE9

    Shielded pool for one asset. Each transaction carries one Groth16A zk-SNARK proving system introduced by Groth in 2016 that proves arithmetic circuits and requires a separate trusted setup for each circuit. It allows extremely efficient proof verification. proof that deposits, transfers inside the pool or withdraws, and inserts its new notes into a Poseidon tree the proof updates. It stores every root it has held and the spent nullifiers.

    Implementation behind the router’s boxes: clones at addresses fixed by each intent, which hold payments and release them only when the router instructs.

    TransactVerifier0x0000…B153

    Groth16A zk-SNARK proving system introduced by Groth in 2016 that proves arithmetic circuits and requires a separate trusted setup for each circuit. It allows extremely efficient proof verification. verifierAn entity in a ZK-Rollup, often a smart contract, that verifies zero-knowledge proofs submitted by a prover. for the transact circuitA program written for the purpose of being proven within a proving system. A circuit is a mathematical representation of the computation to be executed, arithmetic circuits and zkVM execution trace are examples of circuits. Circuits can be written in different languages, ranging from low-level to high-level., with the verification key of its trusted setupGeneration of a piece of data that must then be used for some cryptographic protocol to run. Generating this data requires some secret information. The "trust" comes from the fact the secret must be destroyed after the ceremony, otherwise cryptographic properties of the protocol could be broken. Once the data is generated, and the secrets are forgotten, no further participation from the creators of the ceremony is required. There are two types of trusted setups for SNARKs: (i) trusted setup per circuit where it is generated from scratch for each circuit, (ii) trusted universal setup per proving system where it can be used for several circuits. hard-coded.

    PoseidonT50x5553…9767

    Four-input Poseidon hashA fixed-length fingerprint of variable-size input, produced by a hash function. from poseidon-solidity. The router computes the note of each receive box sweep with it.

    TacitPay82440x0000…bc49

    One version of the anon.wei web app stored as contract code (ERC-8244). html() returns the page from immutable chunk contracts and checks it against PAGE_HASH. The steward can append one successor version, which latest() follows.

    • Roles:
      • anonWeiOwner: EOA 1
      • steward: EOA 1
    zEndpoints0x0000…F288

    Owner-curated registry of service URLs per key and chain, which apps read at load to find their RPC nodes, relays and file mirrors.

    • Roles:
      • owner: EOA 1

    Owner-curated list of Ethereum RPC URLs that apps read at load.

    • Roles:
      • owner: EOA 1