z2o-k7e / halo2-step-by-step

halo2-step-by-step
23 stars 9 forks source link

学习Halo2,对于新手的建议? #27

Open EricDecen opened 10 months ago

EricDecen commented 10 months ago

对于一名零基础的纯新手(非Web3非IT),目前所了解和掌握的是:对看了郭老师的Plonk系列(除第六章外其余大体看懂,但细节不究)。其它相关的背景知识包括:对椭圆曲线、比特币及以太坊的框架和原理有初步的了解(理解了《精通比特币》与《精通以太坊》),也理解了郭老师写的zk-snark(part1\part2)这部分内容。

目前在看Halo2的时候,杵在这好久、也参阅了些其它资料。难以理解、不得入其门。想请大家可否帮我指点一下 (1)像这样的知识背景,建议采用何种路线如何来学这个内容? (2)是否我需要再补充一些什么基础知识? (3)有没有一些更形象化、实例化的例子或介绍,再“傻瓜式”一点地概述这个演化的过程呢?

dajuguan commented 10 months ago

因为你问的问题太宽泛了,回答的话要涉及的东西很多,我可能也不是很适合回答这个问题。最重要的建议就是心态放好,坚持长期主义,很多知识的理解需要时间来沉淀;区块链里基本上所有的知识都是开源的,遇到不懂的就搜索学习包括在群里提问,在1万小时定律支配下,量变就会引起质变

Demian101 commented 10 months ago

可以看看实例是怎么应用零知识证明的,加深印象:

使用了 halo2 的 Applications:

ZK Email https://github.com/zkemail halo2 ZK Wordle: https://zordle.xyz/ halo2 Hammster: https://github.com/ytham/hammster halo2 zk-draw : Verifiable random draw with zero-knowledge of the random seed https://github.com/jae-cuz/zk-draw halo2 ZK Microphone: https://github.com/Miyamura80/ZKMicrophone Building a Zero Knowledge web app with Halo 2 and Wasm (part 1) zk-img: Fighting Deepfakes with Zero-Knowledge Proofs https://medium.com/@danieldkang/zk-img-fighting-deepfakes-with-zero-knowledge-proofs-9b76c23e3789 尚未开源

大部分由 @Kurt Pan 博士整理


另外一个建议可能是学学 Circom ? 🤣


还有一个难点其实是 rust,如果那些闭包语法你不熟悉的话,其实看得是很懵逼的...