专题研究N2183:Vitalik关注的人(项目)之十四0Xparc

659 字

专题研究N2183:VITALIK关注的人(项目)之十四0xPARC

按:VITALIK是以太坊区块链的创始人、精神领袖,年纪轻,入行早,理论水平高;人以群分,物以类聚;能被VITALIK在推特上关注的人,现在也只有三百余人;在今年早期,VITALIK曾经在推特上公开回答问题,也只是针对他关注的数百人开放;可见,他关注的人都是他欣赏、认可的人;故此,做个VITALIK关注的人专题,也是从区块链精英维度来了解他们对区块链和加密经济认知、观点的一个重要和精华的部分;个人觉得十分有意义。(当然这些人里面肯定有在我前期研究过的两千多个专题中的,就不再重复),此志。

0xPARC,
@0xPARC,
Program for Applied Research in Cryptography: supporting application-level R&D on Ethereum and decentralized platforms.
0xPARC.org,
2021年5月 加入,
0 正在关注,
5,659 关注者,

1/ 【新帖】链上程序生成,
@nibnalin
和@gubsheep
发表了一篇关于使用过程生成构建链上游戏世界的新博客文章。
2/ @0xparc
社区的大部分都致力于链上游戏和自治世界: @darkforest_eth
、 @latticexyz
、 @exgrasia
等,
所有这三个项目都使用程序生成(尤其是 Perlin 噪声)来有效地构建丰富、复杂的链上世界。
3/ 为什么链上游戏使用 procgen?
与其他现代游戏不同,链上游戏有一个很大的限制——存储成本!
使用程序生成允许链上游戏按需计算地图瓦片,从而节省大型/无限地图的存储成本。
4/ 程序生成算法本质上是将复杂世界压缩为可执行文件的技巧。
就像 90 年代资源受限时代的 gamedev 一样,开发链上世界是一种在可用计算有限的情况下进行创造性和 hacky 的练习。
5/ 游戏如何使用 procgen?
完全随机生成的世界,没有更深层次的连贯性,很快就会开始感觉陈旧。如果没有地方性或进展,游戏玩法就会退化为拉动老虎机杠杆。 Procgen 弥补了这一差距——创造了结构化、一致的随机性。
6/ 这篇博文建立在 Perlin Noise procgen 算法之上,从简单的波函数叠加开始,创建一个局部一致但全局随机的波。7/ 接下来,将这些波函数扩展到2-D网格,创建热图或“地形图”。然后可以对函数输出进行阈值化以创建类似于群岛的斑点地图。8/ 这篇文章展示了如何将其他全局模式强加到这些链上世界,探索用于创建全局一致性的不同技巧:叠加手写功能、切换坐标系或简单地给地图涂上一层新油漆!
9/ 博客中的所有探索都附有开源的solidity和TS代码演示。该博客还将读者链接到 Perlin Noise 的 solidity 库和 ZK-SNARK 电路实现 (s/o @darkforest_eth
),以便在他们自己的实验中使用。10/ 我们希望这篇博客能激发读者通过创建自己的加密原生游戏和构建有趣的区块链体验来探索区块链的独特功能。
感谢@alanluo_0
向我们介绍 procgen 并分享许多教育资源!
上午5:33 · 2022年7月1日

嘿,匿名,
现在会变得有点严重!
@heyanonxyz
和@0xPARC
致力于谨慎且负责任地发布这项技术。 (1/n)
https://twitter.com/heyanonxyz/status/1542301696281366528

0xPARC 社区成员发布的新版本:https://twitter.com/heyanonxyz/status/1542259075404251136,上午5:29 · 2022年6月30日

数字物理的一大步。
@latticexyz
、 @0xPARC
和@darkforest_eth
都押注它会成为主导的设计范式——这与虚拟世界和大型开放虚拟世界的自上而下的游戏设计--不同。

zkREPL 是第一次写 snarks 时的天赐之物。对于第一批@0xPARC
的每个人来说,它都是主食。
ZK 开发中最困难的部分之一是工具,而 zkREPL 是改进 DX 的第一步。
谢谢@antimatter15

. @gitcoin
GR14 明天开始,一直运行到 22 年 6 月 23 日!我们正在与@ZKValidator
合作,帮助管理 ZK Tech 匹配池。 (1/n)通过过滤下面的“zkTech”标签来查看 ZK 项目: (2/n)得益于@Figment_io
、 @RiscZero
、 @Scroll_ZKP
、 @BainCapCrypto
和 Factor 的慷慨捐赠,本轮我们用 14.5 万美元的匹配池支持 ZK 项目。 (3/n)对于那些从事开源 ZK 项目的人,您可以通过创建 Gitcoin 资助并选择“ZKTech”标签来申请加入这一轮。确保您的项目符合资格标准,链接如下。 (4/n)在接下来的几天里,我们将重点介绍一些 ZK 项目。您可以在下面的 GR13 博客文章中查看我们上一轮的一些最爱! (5/5)上午7:44 · 2022年6月8日

1/ [新帖] zkREPL:zkSNARKs 的在线开发环境

@antimatter15
展示了 zkREPL 和一组新的工具,用于与浏览器内的 Circom 工具栈交互。
2/ 在下面的链接中试用 zkREPL!在几秒钟内在浏览器中构建、编译和测试您的电路——无需安装或依赖管理。在过去的几个月里,多个 0xPARC 团队一直在使用 zkREPL 对复杂电路进行原型设计和测试。zkrepl.dev,3/ 首先,为什么我们需要像 zkREPL 这样的工具?有点历史…4/ REPL (read-evaluate-print-loop) 是一种使程序员能够快速构建和执行程序的工具。从历史上看,REPL 是一些关键技术之一,它们使对计算感兴趣的非专家/爱好者更容易和更容易地进行编程。5/ 随着 ZK 和其他“可编程密码学”原语的成熟,我们需要构建类似的新工具,让更多开发人员可以使用这项技术。 zkREPL 建立在@identhree
和@BlaineBublitz
等贡献者的工作之上,使 ZK 开发堆栈更进一步。6/ 基于浏览器的低摩擦编辑器似乎是一个有用的工具,既适用于学习 ZK 电路的新进入者,也适用于经验丰富的 ZK 开发人员原型电路组件。但是实现 zkREPL 的路径包括许多有趣的挑战。7/ 通常,要开始在 circom 中编写 ZK 程序,您需要安装整个 Rust 工具链并从源代码编译编译器。构建 zkREPL 的第一步是让 Circom 编译器编译成 WebAssembly,以便它可以在浏览器中可移植地运行。8/ 要做到这一点, @antimatter15
和其他人必须解决许多障碍——替换像 WABT 这样的外部库,与 WASM 的 WASI 运行时接口,以及查找 Circom 及其依赖项的各种错误修复并将其上传到上游——你可以阅读在链接的帖子中。9/ 最终结果是 Circom2 的 WASM 端口,它也被打包成一个任何人都可以安装和使用的 NodeJS 模块。 @BlaineBublitz
还添加了一个编程 API,可以与 hardhat-circom 等构建工具集成。10/ zkREPL 还包含开发人员可能会发现有用的附加功能。你可以:
- 从外部 URL 导入代码
- 使用特殊注释语法指定测试输入
- 将电路直接保存到 Github gists
- 通过将鼠标悬停在信号值上来检查信号值,
11/ 仍有许多有用的补充:通过在 CodeMirror 6 之上构建来提高移动兼容性;协作编辑;与 Ecne 等静态分析工具集成。12/ 另一方面,zkREPL 可用于制作新工具和教育体验:例如,嵌入 zkREPL iframe 的交互式教程!13/ 如果您有兴趣检查代码或做出任何贡献,请查看下面的 Github 存储库。14/ 感谢 0xPARC 学习小组 #1 和许多社区成员的启发和反馈,感谢@identhree
和 circom/snarkjs 生态系统(尤其是 @jordibaylina 和@BlaineBublitz
)的贡献和支持。我们希望看到 zkREPL 等工具的进一步工作!

如果您正在开发一个开源 ZK 项目,或者希望支持 ZK 技术,那么即将到来的@gitcoin
GR14 轮将在 8 天后开始,在此处查看受助人资格规则及更多信息:

1/ [6/1 周三申请] Halo2 学习小组,
我们将在 6 月 13 日至 7 月 8 日期间举办一个学习小组,专注于 PLONK 和 Halo2。有关该计划的详细信息以及如何申请,请参阅下面的帖子(和此线程)。
较早的申请将被优先考虑。
2/ Halo2 学习小组面向零知识工程师。它非常适合使用 R1CS 算法(例如 groth16)使用证明系统的 ZK 开发人员,他们有兴趣了解更多关于使用 PLONKish 算法构建 ZK 应用程序的知识。3/ 会议(暂定)通常在太平洋标准时间 6 月 13 日至 7 月 8 日的工作日上午 9 点至 11 点之间举行。该计划的前半部分将侧重于研讨会和互动讲座;在后半部分,您将构建一个与 Halo2 相邻的项目。4/ 在本月,我们将涵盖:
- 使用 Halo2 构建电路
- 常用小工具的实现
- PLONK 和 turboPLONK 背后的数学原理
... 和更多!5/ 如果您已经习惯在另一个工具栈(例如 circom 或 arkworks)中编写 ZK 电路,并且您对 Rust 有一些基本的了解,那么您将充分利用这个程序。请参阅下面的先决条件列表。6/ 为什么是 Halo2 / PLONK?
Halo2 证明系统最初由@ElectricCoinCo
开发,与 groth16 等证明系统相比具有几个优势,目前由@darkforest_eth
和@TornadoCash
等 ZK 应用程序用于生产。
7/ PLONK 友好的证明系统是支持下一代 ZK 应用程序的主要候选者,原因有几个。首先,此类系统不需要特定于电路的可信设置,从而消除了为每个新的 zkSNARK 用例运行仪式的操作开销。8/ 其次,由于 TurboPLONK 支持的自定义约束和 plookup 模式,这些证明系统提供了更丰富的优化设计空间。我们可以设计比它们的 groth16 等效电路小几倍的 PLONK 电路。9/ 我们正在与来自以太坊基金会@PrivacyScaling
、 @Scroll_ZKP
和@zcash
的开发人员合作,他们自愿抽出时间来帮助加入这群新的 Halo2 开发人员。10/ 在下一个星期三 6 月 6 日/1 日之前通过下面的链接申请!如果我们达到容量,将首先考虑早期的应用程序。airtable.com/shrh5RbfjhAySb10/ 在下一个星期三 6 月 6 日/1 日之前通过下面的链接申请!如果我们达到容量,将首先考虑早期的应用程序。

[新帖子] zkPairing:用于椭圆曲线配对的 zkSNARKs,
@jonathanpwang
、 @vvhuang_
和@theyisun
在 circom 中呈现椭圆曲线配对——在 groth16 (1/n)中解锁 BLS 签名、递归验证、多项式提交验证等,你可以看看下面的电路。这些电路是尚未审核的概念验证实现; circom-pairing 还没有打算用作生产级应用程序的库。 (2/n)下面的 zkpairing 演示展示了这些电路的运行情况。您可以使用 webapp 生成任何 BLS 签名有效性的证明,包括来自以太坊信标链的签名。 (3/n)zkpairing.xyz,这个玩具示例启用了 EVM 上的 BLS 验证,这目前(很容易)不可能。很容易看出这可以如何扩展——可以想象整个以太坊权益证明共识算法的组件的 SNARK 证明。 (4/n),那么为什么配对的 SNARK 很重要呢?
基于配对的密码学 (PBC) 建立在椭圆曲线密码学的基础上,使用称为“椭圆曲线配对”的数学对象的存在。虽然配对的定义相对复杂......(5 / n)它们是我们许多现代加密工具的基础,例如 BLS 签名、KZG 多项式承诺和 zkSNARK 本身 (groth16/PLONK)。
在 zkSNARKs 中实现配对允许我们以强大的新方式组合这些原语。 (6/n)https://twitter.com/0xPARC/status/1525248798842228736

1/ [新帖] Ecne:ZK 电路的自动验证,
@franklyn_wang
介绍了 Ecne,这是第一个证明从 ZK 电路编译的 R1CS 约束的健全性的工具。2/ 源代码和基准测试如下:3/ 随着 ZK 电路复杂性的增加,我们需要更好的工具来理解它们的作用,并获得对不可能产生“无效”证明的信心。4/ 今天的标准做法是委托人工审核并执行见证测试——测试电路(输入/输出)的一组“预期”分配是否满足电路。
这减轻了一些恐惧,但还远远不够……5/ 使用这些方法,不可能知道我们电路的一组给定输入是否决定了唯一输出,无法测试每个可能的输入(~2^254 种可能性)!
这就是 Ecne 的用武之地。 Ecne 执行@franklyn_wang
所谓的“弱验证”:6/ 弱验证很重要,因为它确保我们的电路不受约束。在最坏的情况下,受约束不足的电路可能允许攻击者为任何输出生成有效证明,这将是一个严重的安全问题.....7/ 例如,保护隐私的加密货币系统中的 ZK 电路约束不足将允许攻击者花费其他人的钱!
在实践中,ZK 开发人员已经在野外发现了一些约束不足的电路。 @ecnerwala
@feministPLT,https://twitter.com/0xPARC/status/1524896860619436034

我们在@0xPARC
/ @ETHUniversity
社区中的一位学生的项目 - 很高兴看到更多加密原生游戏推动链上互操作性的极限!

[新帖子] zk-ECDSA 第 2 部分:引擎盖下,
@theyisun
、 Tony L、 @xu3kev
和@gubsheep
挖掘了 circom-ecdsa 背后的一些构建块,其中许多正在用于其他正在进行的项目中。 (1/n)在 zkSNARK 电路中实现许多加密操作的第一步是实现 bigint 算术,这有时被称为“非本地”或“错误”字段算术。这使我们能够模拟对 254 位素数字段中的 256 位数字的操作。 (2/n)https://twitter.com/0xPARC/status/1522343108494729218

1/ [新帖] ZK机器学习,
@troutspew
@fho888
和@henripal
呈现 zk-mnist,这是一种在 MNIST 数据集上训练的卷积神经网络,可以对在 SNARK 内*的数字图像进行分类(你没看错!),2/ ML 模型在 SNARK 中分类的可能性并不是一个新的(即@LiaoPeiyuan
来自@ETHUniversity
https://github.com/zk-ml/demo的 ZK-ML 项目),
然而,zk-mnist 是(据我们所知)第一个在 SNARK 中运行神经网络的开源示例,https://twitter.com/0xPARC/status/1520142606700847106

1/ [新帖子] ZK 身份:为什么以及如何(第 2 部分),
支持 ZK 的去中心化身份系统的原语正在迅速上线。在我们关于该主题的上一篇文章中,我们谈到了 ZK 身份的“原因”。这一次,我们将深入探讨“如何”。2/ 作为第 1 部分的提醒,SNARK 承诺彻底改变在线身份,因为它们 (1) 允许我们做出任意可信的声明,同时 (2) 维护隐私。https://twitter.com/0xPARC/status/1519713203885903872

本周末在@EFDevconnect
举行的应用 ZK 研讨会的议程现已在线提供。提供有关电路原语、概念验证应用、工具和基础设施、电路验证等方面的演示、演示和研讨会。 (1/2)对于那些不能亲自参加的人,上午的会议将在下面的链接中进行流式传输和录制。
感谢我们来自 Ethereum @PrivacyScaling
@EFDevconnect
团队的联合主办方让这次活动成为可能! (2/2)

新EP! @AnnaRRose
赶上@gubsheep
在 Dark Forest 中的所有新事物,在@0xPARC
进行的许多 ZK 研究实验,回顾 Gitcoin #GR13 ZK Tech 侧轮,回顾未来 ZK 项目的一些登月想法 &更多!e

我们已经向所有申请参加@EFDevconnect
的 Applied ZK Showcase 的人发送了回复。如果您没有收到我们或 EF @PrivacyScaling
的任何人的回复,请检查您的垃圾邮件文件夹!

我们正在@EFDevconnect
与 EF @PrivacyScaling
团队共同举办应用 ZK 研讨会,将团队聚集在一起,了解 ZK 应用领域的最新发展。
本次活动容量有限。在 3/25 之前在下方申请! (1/n)https://twitter.com/0xPARC/status/1505718063840198661

这对于黑暗森林,格子, @0xPARC
一般来说是一个巨大的力量。没有代币经济学。我认为 DF 是第一个因为与金钱无关的原因而拥有狂热用户的以太坊应用程序。

还剩五天可以捐赠给@gitcoin
GR13,并且通过我们的 ZK 匹配池让您的捐赠达到 200 倍 - 是的,200 倍!这是一个包含一些我们很兴奋的项目的线程: (1/n)https://twitter.com/0xPARC/status/1504927929935052807

DEFCON:2022 年 4 月 19 日,阿姆斯特丹。
http://defcon.0xparc.org

查看@gubsheep
的 Applied ZK Gems @gitcoin
收藏!我们将在下周重点介绍一些 ZK 项目。