金色观察|零知识证明经典文献大汇总(可收藏)

 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

https://www.youtube.com/watch?v=HO97kVMI3SE

ZK whiteboard sessions——ZK白板会议:介绍性文章

作者Dan Boneh 等

https://zkhack.dev/whiteboard/

Security and privacy for crypto with zkps——zkps加密的安全性和隐私性

在实践中领先的零知识证明;zkps是什么以及它们是如何工作的……包括现场“演示”

作者:Zooko Wilcox

https://a16z.com/2019/08/29/security-and-privacy-for-crypto-with-zero-knowledge-proofs/

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

https://youtu.be/fOGdb1CTu5c

How the coming privacy layer will fix a broken web——即将到来的隐私层将如何修复损坏的互联网

作者:Howard Wu

https://future.com/a-privacy-layer-for-the-web-can-change-everything/

Introduction to zkSNARKs——zkSNARKs介绍

作者:Howard Wu、Anna Rose

https://zeroknowledge.fm/38-2/

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

https://a16z.com/2022/04/15/zero-knowledge-proofs-hardware-decentralization-innovation/

Cutting edge zk research——zk前沿研究

来自以太坊基金会zk研究员Mary Maller、Anna Rose、Kobi Gurkan

https://zeroknowledge.fm/232-2/

Exploring zk research——探索 zk 研究

嘉宾:DFINITY研究主管;以及来自Groth16的Jens Groth、Anna Rose、Kobi Gurkan

https://zeroknowledge.fm/237-2/

SNARK research & pedagogy——SNARK研究与教学法

来自ZCash和Starkware联合创始人之一以及Alessandro Chiesa, Anna Rose

https://zeroknowledge.fm/episode-200-snark-research-pedagogy-with-alessandro-chiesa/

深入:课程、分解、建造者指南

Foundations of probabilistic proofs——概率证明的基础

包含5个单元的交互式证明课程以及更多内容

作者:Alessandro Chiesa

https://www.youtube.com/playlist?list=PLGkwtcB-DfpzST-medFVvrKhinZisfluC

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

https://www.youtube.com/watch?v=tg6lKPdR_e4

SNARK design, part 2——SNARK设计,第2部分

Rollup、性能、安全性

作者:Justin Thaler

https://www.youtube.com/watch?v=cMAI7g3UcoI

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

https://a16zcrypto.com/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

https://www.youtube.com/playlist?list=PLBJMt6zV1c7Gh9Utg-Vng2V6EYVidTFCC

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

https://zeroknowledge.fm/175-2/

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

https://zeroknowledge.fm/172-2/

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

https://zeroknowledge.fm/182-2/

zkDocs: Zero-knowledge information sharing——zkDocs: 零知识信息共享

作者:Sam Ragsdale、Dan Boneh

https://a16zcrypto.com/zkdocs-zero-knowledge-information-sharing/

Privacy-protecting crypto airdrops with zero knowledge proofs——零知识证明的隐私保护加密空投

作者:Sam Ragsdale的

https://a16z.com/2022/03/27/crypto-airdrop-privacy-tool-zero-knowledge-proofs/

ZK Hack — 谜题,更多

https://zkhack.dev/events/mini.html#puzzles

On-chain trusted setup ceremonies——链上可信设置仪式

作者:Valeria Nikolaenko、Sam Ragsdale

https://a16zcrypto.com/on-chain-trusted-setup-ceremony/

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

https://zeroknowledge.fm/