zkLedger: Privacy-Preserving Auditing for Distributed Ledgers
summary
Claims a private yet auditable ledger that gives an auditor provably correct answers while hiding transaction parties and amounts, using Schnorr-type non-interactive zero-knowledge proofs and a columnar ledger with per-bank commitments so the auditor can force opening every entry in a bank’s column (preventing omissions). No trusted setup, implemented in Go on secp256k1; per-entry cost ≈4.5KB, create ≈8ms/entry, verify ≈7ms/entry, a 10-bank transaction round takes ≈800ms, and queries over 100k rows return in milliseconds with caching.
AI-written summary · about
chapters (24)
- 0:00Intro
- 0:20Structure of the financial system
- 1:00A ledger records financial transactions
- 1:59Can verify important financial invariants
- 2:47Banks care about privacy
- 4:46zkLedger A private, auditable transaction ledger
- 5:29Outline
- 6:14An auditor can obtain correct answers on ledger contents
- 7:10Measurements zkLedger supports
- 8:09Security goals
- 8:59Threat model
- 9:45Example public transaction ledger
- 10:00Depositor injects assets to the ledger
- 14:04zkLedger design: an entry for every bank in every transaction
- 15:15Key insight: auditor audits every transaction
- 15:53A malicious bank can't produce a proof for a different answer
- 17:44Implementation
- 18:02Evaluation
- 18:22Simple auditing is fast and independent of ledger size
- 19:03More complex forms of auditing are linear in size of ledger
- 19:38Processing transactions scales linearly
- 20:13Cost in a transaction per bank
- 21:02Related Work
- 21:35Conclusion
related talks
47mFrom Zero Knowledge to Private Transactions
01h 12mScaling distributed ledgers: Achieving arbitrary throughput and sub-second latency
31mSecure Distributed Storage
28mScalable Privacy
01h 01mKey transparency: Blockchain meets NoiseSocket
23mBlockchain
30mLedger Databases and Managed Blockchain in the Cloud
44mAre Accounting Databases Interesting or Just Part of the Blockchain Hype?
