Summary: Iron Fish is worth cataloging not as just another privacy coin or generic ZK chain, but as a useful middle point between Zcash-style shielded transaction design and broader privacy-first settlement ambitions. The reviewed primary materials describe a proof-of-work L1 where every transfer-style transaction is private by default, validation of hidden state transitions is done with Groth16 zk-SNARKs, account structure is explicitly inspired by Sapling, and each wallet carries a full view key that can reveal inbound and outbound transaction details for that wallet without granting spending authority. That makes Iron Fish a useful comparison point for Zcash, Monero, Adamant, Merces, and other privacy-payment systems because the real control surfaces are not only note privacy and nullifier-based double-spend prevention, but also what remains public (fees, mint/burn actions, custom-asset supply), how auditability is delegated through view keys, and how consensus and mining policy are changed through FIPs and hard forks.
What it does:
Runs a proof-of-work Layer 1 blockchain where all ordinary transfer actions are private and validated with zero-knowledge proofs rather than transparent account balances
Uses a Sapling-inspired account model with a spending key, authorization/nullifier keys, outgoing and incoming view keys, and a transmission key for receiving funds
Represents value as encrypted notes, tracks global note commitments in a Merkle tree, and prevents double spends by publicly revealing nullifiers rather than plaintext note contents
Supports custom assets alongside the native asset, while keeping spend/output sender-recipient-amount-asset details hidden but leaving mint/burn and total asset-supply information public
Gives each wallet a full view key that can disclose that wallet’s incoming and outgoing transaction details for audits, tax reporting, or controlled third-party inspection without exposing spend authority
Uses proof-of-work consensus with heaviest-chain fork choice and governance-mediated protocol upgrades through the Fish Improvement Proposal process, including the FishHash memory-hard mining change
Key claims:
Iron Fish clears the corpus bar because it makes privacy-default settlement legible as a bundle of separate surfaces: Sapling-style hidden-value accounting, wallet-scoped disclosure through view keys, custom-asset issuance and supply visibility, and governance-routed consensus/mining changes.
The whitepaper intro is explicit that Iron Fish is a proof-of-work L1 where all transactions are private and validated by zero-knowledge proofs, not an opt-in privacy feature layered over a transparent base chain.
The account docs matter because they show Iron Fish is not merely copying shielded transactions as a black box. The wallet surface is decomposed into spending, nullifier, outgoing-view, incoming-view, and transmission keys, which makes disclosure and control pathways easier to compare against Zcash-style systems and compliance-oriented privacy rails.
The transaction docs expose a particularly useful split between hidden transfers and partially public asset policy. Spend/output sender, recipient, amount, and asset type remain encrypted, but mint and burn actions surface public asset and supply information. That is a more analytically useful decomposition than labeling the chain generically private.
The consensus and FIP materials are also important because they show Iron Fish is not pursuing Adamant-style anti-governance neutrality. Practical authority still routes through hard-fork activation, parameter changes, and community governance over mining policy, with FishHash serving as a concrete example.
Whitepaper: Iron Fish publishes its protocol whitepaper as a web-native document, supported by the main implementation repository and governance/FIP materials; see ../whitepapers/iron-fish-primary-sources-2026-05-14.md.