【心得】如何学习零知识证明

如何学习零知识证明, 明确动力、材料不那么重要,必要独自学习,多分享,不要怕提愚蠢的问题,看看可以做什么,不要对自己太苛刻了。

我不是来告诉你 ZK 是如何工作的。我也不是来告诉你应该学习什么。

这更多的是关于我在挖掘(巨大的)ZK 兔子洞时的感受。我是如何学习 ZK 的,哪些方法对我有用,哪些方法可能对你也有用。

请记住,没有正确的方法:每个人都有自己的学习方法。

学 ZK 你是认真的吗?

首先,你可能需要重新考虑一下你的人生选择。最终学会烹饪不是更容易吗?或者学做魔方?我是说,你确定要用 ZK 来折磨自己吗?

img

图片来源:Stable Diffusion

如果你想要更轻松的生活,请单击此浏览器标签旁边的 "X",你就可以回到舒适的生活中,养着可爱的小狗,玩着刺激的填字游戏。否则,请注意,请放心继续。

从魔法开始

ZK 很难。我是说,几乎每一个方面都很难。

虽然很难理解它是如何运作的,但它的基本思想非常简单。你要在不透露任何数据的情况下证明你掌握了某些数据。这听起来像魔术,而魔术基本上就是从这里开始的。而魔术是很难的。

动力

在我看来,动力是所有学习的核心。你有足够的动力学习 ZK 吗?还是仅仅因为妈妈让你学,你就学了?

我有时会想,如果我在正规学校学习时就有动力,我的生活会是什么样子。我花了 10 年时间 "学习 "法语,但没有任何动力,所以学得很少。试想一下,如果一个人花 10 年时间,带着极大的动力去学习某样东西,结果会是怎样 -- 你也许已经可以登月了。

打你一巴掌

先来一记漂亮的耳光。图片来源:Stable Diffusion

所以,找出是什么让你心动。是什么让你心动?你是否有明确的目标,或者是什么促使你去学习?

选什么材料

现在有很多 ZK 材料。我将在本帖末尾列出一些合适的材料,但我的目的不是告诉你该读什么。

我觉得大多数资料的主要问题在于,要么是针对一些铁杆密码学家,要么就是内容太多。很难理解自己应该关注哪些。

想象一下,一个 5 分钟的视频介绍了 20 个新概念。这意味着你将每隔 15 秒暂停一次视频,上网搜索(或使用 AI)更深入的资料,然后再返回到原始视频。这样做还算有效,但却非常令人泄气。这会让你觉得自己根本不适合学习 ZK。

学习 ZK 这样会更容易:有很多概念你都不会理解。你将不得不学习其中的许多概念,但你不应该试图一下子把它们都学会诀窍在于每次都要学习大拼图中的某一部分:它也许只是你听到的一个新术语,也许只是你找到的一些新资源。

不要独自学习

性格内向没关系,但如果能得到他人的反馈,一切都会变得容易得多。

对我来说最有效的一件事就是参加各种 ZK 学习小组。他们会给你带来同伴压力,让你真的想跟上别人的步伐,以同样的速度学习。看到别人在同样的问题上挣扎,这也是一种激励。这让你意识到自己可能并不是一个失败者。

你也不需要任何既定或约定俗成的学习小组。只要找到对学习 ZK 有兴趣的人,然后一起交流想法就可以了。

你可以从加入各种与 ZK 相关的聊天群组、论坛或其他社区开始。阅读其他人的发言,联系他们,然后开始行动。

分享

公开你的进展!分享你的收获。你将从(希望)收到的评论中学到更多。

img

在推特上分享 ZK 工作

作为额外的奖励,你还可以与其他有着同样热情的人建立联系。

(不要怕)提愚蠢的问题

我们都是从零起步的。

img

我为 ZK 敞开心扉

曾经有一位同事告诉我,他已经厌倦了回答初级开发人员提出的愚蠢问题。现在,想象一下你是一名初级 ZK 学习者,你遇到了一个愚蠢的问题。你可以自己想办法解决,也可以表明自己是初学者,公开提出问题。

我知道人们对这种问题的反应不尽相同,但在我看来,有人提出这种问题是件好事。在我看来,这表明这个人真的很想学习,而且在学习过程中融入他人,会更快取得成效。是的,有时提出愚蠢的问题会很丢人,但这也是一种收获。公开提出愚蠢的问题也会给其他人带来同样的勇气。

我的意思是,最坏的结果会是什么呢?

使用武力

根据你想使用 ZK 的目的,你也许可以在学习的第一天就开始编写一个项目。有多种 ZK 领域专用语言 (DSL) 可以抽象出几乎所有 ZK 难点:即使你对 ZK 零起点,也可以开始编写 ZK 程序。所有神奇的事情都在后台发生。

img

施展 ZK 魔法

我觉得实际看看你编写 ZK 程序时会发生什么很有帮助。你运行一些神秘的命令来生成证明,突然就会出现一个包含实际证明字符串的文件。你运行另一个神秘命令,也许会生成一个智能合约,用来验证你的证明。下一个命令就会使用你生成的证明来验证程序的执行。很酷吧?

不要对自己太苛刻

总的来说,不要对自己太苛刻。学习 ZK 很难。一开始,你可能无法理解很多概念。

要坚持不懈,不断学习,总有一天,一些难题会迎刃而解。

试着从不同的角度切入主题。找一些 YouTube 视频,阅读文章,问一些愚蠢的问题,犯一些错误。我无法只通过重读一篇文章就学到很多东西,但从不同的角度攻克同一难题对我来说确实很有效。

img

ZK 火箭科学

记住:学习不是火箭科学。只有教材才是。

关于学习材料

我尽量不推荐太多资料,因为每个人的学习方法都不一样。但这里有几个:

关于作者

我是一名 ZK 自由职业者。我喜欢说我在不同的 ZK 生态系统中游荡,用一根棍子戳它们,看看会发生什么。有时,一根简单的棍子就足以造成混乱。


本翻译由 DeCert.me 协助支持, 来DeCert码一个未来, 支持每一位开发者构建自己的可信履历。

点赞 0
收藏 3
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
翻译小组
翻译小组
0x9e64...7c84
大家看到好的文章可以在 GitHub 提 Issue: https://github.com/lbc-team/Pioneer/issues 欢迎关注我的 Twitter: https://twitter.com/UpchainDAO