a16z crypto出過一系列經典文獻,從去年的DAO經典到更早的NFT經典(以及在此之前是最初的加密經典)。
本文, a16z crypto為那些尋求理解、深入和構建零知識的人挑選了一組資源:強大的基礎技術,這些基礎技術掌握著區塊鏈可擴展性的關鍵,代表著隱私應用程序的未來,包括加密/web3中的應用程序,以及無數其他創新。
這些創新由來已久:Shafi Goldwasser、Silvio Micali和Charles Rackoff於1985年引入了零知識證明系統,並對密碼學領域產生了變革性的影響;他們因此獲得了2012年ACM圖靈獎。由於這項工作已經醞釀了數十年,尤其是在從理論到實踐的過程中,我們還首次在我們的經典系列中分享了第二部分,由Justin Thaler按主題和年表組織註釋的閱讀清單。
本文為第一部分。
基礎、背景、演變
其中一些論文也更多地涉及一般的密碼學(並非都是零知識本身),包括概述當今零知識證明解決的問題或關鍵進展:如何確保開放網絡中的隱私和身份驗證。
New directions in cryptography (1976)——密碼學新方向(1976)
作者:Whitfield Diffie和Martin Hellman
https://ee.stanford.edu/~hellman/publications/24.pdf
A method for obtaining digital signatures and public-key cryptosystems——一個獲得數字簽名和公鑰密碼系統的方法
作者:Ronald Rivest、Adi Shamir、Leonard Adelman
https://citeseerx.ist.psu.edu/viewdoc/download;jsessionid=856E21BC2F75800D37FD611032C30B9C?doi=10.1.1.40.5588&rep=rep1&type= pdf
Protocols for public key cryptosystems (1980)——公鑰密碼系統協議(1980)
作者:Ralph Merkle
http://www.merkle.com/papers/Protocols.pdf
Secure communications over insecure channels (1978)——通過不安全通道進行安全通信(1978)
作者:Ralph Merkle
https://www.merkle.com/1974/PuzzlesAsPublished.pdf
Use of elliptic curves in cryptography (1988)——在密碼學中使用橢圓曲線(1988)
作者:Victor Miller
https://link.springer.com/content/pdf/10.1007%2F3-540-39799-X_31.pdf
The knowledge complexity of interactive proof-systems (1985)——交互式證明系統的知識複雜性(1985)
作者:Shafi Goldwasser、Silvio Micali、Charles Rackof
https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.419.8132&rep=rep1&type=pdf
Computationally sound proofs (2000)——計算健全證明(2000)
作者:Silvio Micali
https://people.csail.mit.edu/silvio/Selected%20Scientific%20Papers/Proof%20Systems/Computationally_Sound_Proofs.pdf
From extractable collision resistance to succinct non-interactive arguments of knowledge [SNARKs]and back again (2011)——從可提取的抗碰撞性到簡潔的非交互式知識證明 [SNARKs],然後再返回(2011 年)
作者:Nir Bitansky、Ran Canetti、Alessandro Chiesa、Eran Tromer
https://eprint.iacr.org/2011/443.pdf
Efficient zero-knowledge argument for correctness of a shuffle (2012)——對洗牌正確性的有效零知識論證(2012)
作者:Stephanie Bayer、Jens Groth http://www0.cs.ucl.ac.uk/staff/J.Groth/MinimalShuffle.pdf
Succinct non-interactive zero knowledge for a von Neumann Architecture (2013)——為von Neumann架構提供簡潔非交互式零知識(2013 年)
作者:Eli Ben-Sasson、Alessandro Chiesa、Eran Tromer、Madars Virza
https://eprint.iacr.org/2013/879.pdf
Scalable, transparent, and post-quantum secure computational integrity (2018)——可擴展、透明和後量子安全計算完整性(2018 年)
作者:Eli Ben-Sasson、Iddo Bentov、Yinon Horesh、Michael Riabzev
https://eprint.iacr.org/2018/046.pdf
Public-coin zero-knowledge arguments with (almost) minimal time and space overheads (2020)——具有(幾乎)最小時間和空間開銷的公共代幣零知識論證(2020)
作者:Alexander Block、Justin Holmgren、Alon Rosen、Ron Rothblum、Pratik Soni
https://www.iacr.org/cryptodb/data/paper .php?pubkey=30645
綜述和介紹
Proofs, arguments, and zero-knowledge——證明、論證和零知識
本文綜述了可驗證計算和交互式證明和論證,使證明者能夠向驗證者保證證明者正確執行了請求計算的加密協議,包括零知識(證明,除了他們自己的有效性之外不揭示任何其他信息)。 Zk論證在密碼學中有無數的應用,並且在過去十年中已經從理論躍升到實踐。
作者:Justin Thaler
https://people.cs.georgetown.edu/jthaler/ProofsArgsAndZK.pdf
An evolution of models for zero-knowledge proofs——零知識證明模型的演化
對零知識證明的回顧,Meiklejohn(倫敦大學學院,谷歌)著眼於推動其發展的應用程序,為捕捉這些新交互而出現的不同模型,我們可以實現的結構,以及其他工作。
作者:Sarah Meiklejohn
ZK whiteboard sessions——ZK白板會議:介紹性文章
作者Dan Boneh 等
Security and privacy for crypto with zkps——zkps加密的安全性和隱私性
在實踐中領先的零知識證明;zkps是什麼以及它們是如何工作的……包括現場“演示”
作者:Zooko Wilcox
Top tech topics, explained——頂級技術主題解釋
包括零知識的一般定義和含義
作者:Joe Bonneau、Tim Roughgarden、Scott Kominers、Ali Yahya、Chris Dixon
https://web3-with-a16z.simplecast.com/episodes/hot-research-summer-blockchain-crypto-tech-topics-explainers-overviews-seminar-videos
零知識解釋—— 5級別難度
作者:Amit Sahai from Wired
How the coming privacy layer will fix a broken web——即將到來的隱私層將如何修復損壞的互聯網
作者:Howard Wu
Introduction to zkSNARKs——zkSNARKs介紹
作者:Howard Wu、Anna Rose
Why and how zk-SNARK Works: a definitive explanation——zk-SNARK機制以及如何工作:一個權威解釋
作者:Maksym Petkus
https://arxiv.org/pdf/1906.07221.pdf
An introduction to zero-knowledge proofs——零知識證明簡介
作者:Fredrik Harrysson、Anna Rose
https://www.zeroknowledge.fm/21
[以及其他地方的总结文章https://blog.goodaudience.com/understanding-zero-knowledge-proofs-through-simple-examples-df673f796d99]
Zk-SNARKs: under the hood——Zk-SNARKs:本質
作者:Vitalik Buterin
https://medium.com/@VitalikButerin/zk-snarks-under-the-hood-b33151a013f6
https://vitalik.ca/general/2016/12/10/qap.html
https://vitalik.ca/general/2017/01/14/exploring_ecp.html
https://vitalik.ca/general/2017/02/01/zk_snarks.html
Decentralized speed——去中心化速度
關於零知識證明、去中心化硬件的進展
作者:Elena Burger
Cutting edge zk research——zk前沿研究
來自以太坊基金會zk研究員Mary Maller、Anna Rose、Kobi Gurkan
Exploring zk research——探索zk 研究
嘉賓:DFINITY研究主管;以及來自Groth16的Jens Groth、Anna Rose、Kobi Gurkan
SNARK research & pedagogy——SNARK研究與教學法
來自ZCash和Starkware聯合創始人之一以及Alessandro Chiesa, Anna Rose
Episode 200: SNARK Research & Pedagogy with Alessandro Chiesa
深入:課程、分解、建造者指南
Foundations of probabilistic proofs——概率證明的基礎
包含5個單元的交互式證明課程以及更多內容
作者:Alessandro Chiesa
9th BIU Winter School on Cryptography——第9屆BIU密碼學冬季學校
來自應用密碼學和網絡安全研究中心
作者:Yehuda Lindell、Benny Pinkas、Eli Ben-Sasson、Jens Groth、Carmit Hazay、Yuval Ishai、Alon Rosen、Ron Rothblum
https://cyber.biu.ac.il/event/the-9th-biu-winter-school-on-cryptography/
Interactive proofs and zero knowledge——交互式證明和零知識
來自斯坦福CSS 355密碼學主題(2018)
作者:Henry Corrigan-Gibbs、Sam Kim、David Wu
https://crypto.stanford.edu/cs355/18sp/lec3.pdf
Interactive demonstration of the zero knowledge proof protocol for 3-colorable graphs——3色圖的零知識證明協議的交互式演示
允許一個人說服驗證者相信一個事實的真實性(即,一個圖是3色的),而無需透露該圖的實際三種顏色
http://web.mit.edu/~ezyang/Public/graph/svg.html [更多信息参见https://www.cs.cmu.edu/~goyal/s18/15503/scribe_notes/lecture23.pdf]
SNARK design, part 1 ——SNARK設計,第1部分
調查,在Rollup中使用及更多
作者:Justin Thaler
SNARK design, part 2——SNARK設計,第2部分
Rollup、性能、安全性
作者:Justin Thaler
STARKs:part I, II, III——STARKs:第一、二、三部分
作者Vitalik Buterin
https://vitalik.ca/general/2017/11/09/starks_part_1.html
https://vitalik.ca/general/2017/11/22/starks_part_2.html
https ://vitalik.ca/general/2018/07/21/starks_part_3.html
Anatomy of a STARK——STARK剖析
六部分教程,解釋了STARK證明系統機制
作者:Alan Szepieniec
https://aszepieniec.github.io/stark-anatomy/
Measuring SNARK performance——測量SNARK性能
前端、後端,更多內容
作者:Justin Thaler
Measuring SNARK performance: Frontends, backends, and the future
Understanding PLONK——了解PLONK
作者:Vitalik
https://vitalik.ca/general/2019/09/22/plonk.html
The PLONK zero-knowledge proof system——PLONK零知識證明系統
12個關於PLONK如何工作的短視頻系列
作者:David Wong
From AIRs to RAPs ——從AIRs到RAPs
PLONK風格的算法如何工作
作者:Ariel Gabizon
https://hackmd.io/@aztec-network/plonk-arithmetiization-air
Multiset checks in PLONK and Plookup——PLONK和Plookup中的多集檢查
作者:Ariel Gabizon
https://hackmd.io/@arielg/ByFgSDA7D
Halo2 design——Halo2設計
來自ECC
https://zcash.github.io/halo2/design.html
Plonky2
https://github.com/mir-protocol/plonky2/blob/main/plonky2/plonky2.pdf
應用程序和教程:概念證明、演示、工具等
Applied zk
學習資源,為沒有正式數學背景的工程師提供材料,以加快對基礎理論的紮實理解
作者:0xPARC
https://learn.0xparc.org/materials/intro
An online development environment for zkSNARKs——zkSNARKs的在線開發環境zkREPL
zkREPL是一組新的工具,用於與瀏覽器內的Circom工具棧進行交互
作者:Kevin Kwok
https://zkrepl.dev
Quadratic arithmetic programs from zero to hero——二次算術程序:從0到精通
作者:Vitalik Buterin
https://medium.com/@VitalikButerin/quadratic-arithmetic-programs-from-zero-to-hero-f6d558cea649
On zkEVMs——論zkEVM
嘉賓:Alex Gluchowski、Anna Rose
Different types of zkEVMs——不同類型的zkEVM
作者:Vitalik Buterin
https://vitalik.ca/general/2022/08/04/zkevm.html
ZK machine learning——ZK機器學習
將神經網絡引入SNARK的教程和演示
作者:Horace Pan、Francis Ho 、Henri Palacci
https://0xparc.org/blog/zk-mnist
On ZK languages——討論ZK語言
嘉賓:Alex Ozdemir 和Anna Rose
Arkworks—使用zkSNARKs開發和編程的Rust生態系統
https://github.com/arkworks-rs
Dark Forest — applying zk cryptography to games:Dark Forest,將zk密碼學應用於遊戲
完全去中心化且持久的RTS(實時策略)遊戲
https://blog.zkga.me/announcing-darkforest
ZKPs for engineers——面向工程師的ZKP
Dark Forest ZKP研究
https://blog.zkga.me/df-init-circuit
A dive into zero knowledge——深入了解零知識
嘉賓:Elena Nadolinkski、Anna Rose、James Prestwich
Episode 182: The dive into ZK with Iron Fish’s Elena Nadolinski
zkDocs: Zero-knowledge information sharing——zkDocs: 零知識信息共享
作者:Sam Ragsdale、Dan Boneh
Privacy-protecting crypto airdrops with zero knowledge proofs——零知識證明的隱私保護加密空投
作者:Sam Ragsdale的
Privacy-Protecting Crypto Airdrops with Zero Knowledge Proofs
ZK Hack — 謎題,更多
https://zkhack.dev/events/mini.html#puzzles
On-chain trusted setup ceremonies——鏈上可信設置儀式
作者:Valeria Nikolaenko、Sam Ragsdale
Crypto regulations, illicit finance, privacy, and beyond——加密法規、非法金融、隱私等
包括監管/合規環境中的零知識部分;“隱私保護”與混淆技術之間的區別
嘉賓:Michele Korver、Jai Ramaswamy、Sonal Chokshi
https://web3-with-a16z.simplecast.com/episodes/crypto-regulations-sanctions-compliance-aml-ofac-news-explained
其他資源
zkMesh通訊
每月通訊,分享最新的去中心化隱私保護技術、隱私協議開發和零知識系統
https://zkmesh.substack.com/
Zero Knowledge podcast——零知識播客
關於最新的zk研究和zk應用程序以及一起構建加密隱私技術的專家
嘉賓:Anna Rose