背景
Gitcoin是Web3.0领域最大的融资和建设平台,Web3.0项目的创造者和建设者可以在Gitcoin上面获得社区用户的资助。截止3月底,在Gitcoin有超过2400个项目和31.2万名活跃开发者,资助金额高达5460万美元。Gitcoin Grants是Gitcoin定期举办的众筹活动,社区用户可以不定额地支持潜在优质的新项目。Gitcoin第13轮项目Gitcoin Grants活动(GR13)在3月9日开始,3月24日结束,共有超过800个项目,项目按多个标签分类,而zkTech标签下面有20多个项目。
zkTech类项目是指以零知识证明(ZKP)为中心的早期、开源或公共应用的项目。ZKP在区块链发挥着越来越重要的作用,例如著名的隐私类项目Zcash采用了ZKP来保护用户的交易隐私。而ZKP在以太坊扩容也获得了高度重视,Vitalik在多个场合高度评价以ZKP为基础的ZK Rollup,甚至认为ZK Rollup是以太坊二层扩容的长期方案(https://zeroknowledge.fm/120-2/)。根据L2BEAT(https://l2beat.com)的数据统计,目前TVL前10的二层项目有4个ZK项目,包括有zkSync、dYdX和Loopring等。本文将主要盘点zkTech标签下面的20多个ZK项目,以窥探ZK世界的一角。
社区教育
项目:learn.0xparc.org
0xPARC基金会旨在促进以太坊和其他去中心化应用的研究和教育发展,目前已经资助、提供运营支持或以其他方式参与的项目包括Dark Forest、EthUniversity、Reboot、Project Sophon等。0xPARC从应用ZK的学习小组中整理了学习资源并整合在learn.0xparc.org。在这个learn.0xparc.org的网站上,我们可以看到学前资料要求、学习小组讲义和Demo等资源。这是一个不断更新的学习资源集合平台,旨在为学习ZK空间的爱好者提供、整理最佳的资源。0xPARC从捐助中获得的资金主要用于支持管理员和志愿者维护整个项目的资源。
项目:ZK Travel Scholarships
这个项目同样由0xPARC基金会发起,它有点类似助学金,0xPARC计划和斯坦福区块链研究中心合作,资助加密领域的研究员或学生参与ZK相关的或其他加密的会议。该计划希望通过让学术研究人员参加以太坊、区块链社区活动和会议,将这些研究人员与区块链社区更紧密地联系起来,从而为区块链的长期应用提供持续的基础研究。
项目:Blaine Bublitz
这个项目有点特别,它是直接对开发人员Blaine Bublitz的工作进行资助。Blaine是一位活跃的ETH/ZK基础设施和生态开发者,曾参与多个开源的ZK工具开发。
项目:ZK HACK
网站:https://www.zkhack.dev/mini.html
ZK HACK是一个短周期的在线活动平台。通过介绍性研讨会和高级解谜比赛,参与者可以学习如何使用ZK工具。
项目:MoonMath Manual to zk-SNARKs
网站:https://leastauthority.com/
Least Authority是一家提供安全服务的咨询公司,他们希望通过自己整理的zk-SNARKs指南,提供给密码学和编程方面的新人,使读者能够逐步实现复杂的的ZK设计。
项目:zkApe
网站:https://zkape.substack.com/
zkApe是土耳其语的ZK信息通讯简报,定期汇集了关于ZK技术的发展、更新、刊物和播客。
开发类
项目:Circom
Circom是ZK领域重要的电路编程语言和编译器,允许程序员为零知识证明设计和创建自己的算术电路。以太坊扩容解决方案技术团队iden3的Jordi Baylina于2018年开发了Circom第一个版本。作为零知识技术的重要开发工具,Circom已经成功用于Tornado Cash,Dark Forest,Polygon Hermez等项目。
Circom是一种新颖的领域特定语言,它旨在为开发人员提供一个整体框架,通过简单操作的界面构建算术电路,并概述证明机制的复杂性。其中CircomLib是一个开源的模板库,它提供数百个电路模板,如比较器,哈希函数,数字签名,二进制和十进制转换器等,所有模板都经过人工验证,并通过构造保证安全。Circom通过定义小片段并将它们组合以创建描述复杂现实世界问题的大型电路,帮助程序员以模块化的方式工作。另外,用户也可以创建自己的自定义模板。
项目:CirC
CirC是一个编译器基础结构,支持从高级语言到电路的编译,例如它已经可以用于将{C,ZoKrates,Circom}编译为{SMT,ILP,R1CS,MPC}。
项目:ZKxZK
网站:https://0xparc.org/blog/zk-ecdsa-1
ZKxZK是一项获得0xPARC基金会资助的开源工作,旨在通过Circom语言为加密学里的椭圆曲线加密算法(ECC)和基于双线性对密码学(PBC)实现有效的概念验证ZK电路。其捐助获得的资金主要用于服务器的租金,以运行所需要的程序。
项目:ZKML
网站:https://github.com/0xZKML/zk-mnist
ZKML希望通过Circom语言开发有关机器学习的zkSNARK电路,它是在2021年0xPARC第一次学习小组中完成概念化和启动的项目。
项目:Zk Block
这个项目希望通过开发一个统一的ZK模板(称为zkblock),支持最新的网页开发技术和ZK的常用代码库,让开发者可以快速专注于开发高质量的ZK Dapps。
项目:zkREPL
zkREPL是一个基于zk-SNARK技术的在线互动游乐场,初学者和专家都可以在线上顺畅练习和构建新的ZK创意想法。zkREPL是一个基于Web的SNARK开发环境,社区成员可以使用该工具协作构建越来越复杂的电路,也可以充当新的开发人员体验功能的测试平台。例如,在zkREPL上,用户可以将鼠标悬停在任何变量上以查看其值,就像零知识电路的连续调试器一样。
应用类
项目:ZeroPool
ZeroPool是一个多区块链DApp,允许发送完全匿名的、廉价的、非托管的交易。ZeroPool 最近和Gnosis Chain(前xDai Chain)达成合作,Gnosis Chain将通过ZeroPool技术将隐私功能内置到EVM链和跨链桥。
项目:Otter Cash
Otter Cash类似Solana的TornadoCash,但是交易费用便宜很多,甚至不到1美元。
项目:zkC.R.E.A.M
zkC.R.E.A.M是允许日本普通公民以完全匿名的方式参与选举,同时保持最终投票计数的完整性和可验证性。该项目已经得到以太坊基金会的Grant,目前已在官网发布DEMO,后续将开发出一个对用户友好的桌面版和移动客户端。
视频链接:https://youtu.be/plhcYwBmGY8
项目:ZK Data Marketplace
ZK Data Marketplace是一个基于ZK实现的数据交易市场。它的业务逻辑大致是,卖方先承诺他们出售的数据能满足某些计算属性,然后买方将代币锁定在托管中,最后卖方使用买方的公钥对数据进行加密,并提交ZK证明以验证数据与承诺相符。如果有效,卖方可以获得代币,买方获得数据。
项目:Decentralisedvoting
网站:https://github.com/EDGDrummond/DeVo/blob/main/DeVo.pdf
这是一个早期的项目,目前只有白皮书。它希望基于PLONK的电路和MPC实现去中心化的匿名投票系统,用密钥生成共享和投票计数,以支持更多DAO向去中心化治理结构的过渡。
总结
我们可以看到GR13的zkTech项目主要分为三类。社区教育类占了约1/3,其中包括有0xPARC发起的学习小组资料和助学金,也有ZK HACK的在线活动等。开发类占了约1/3,基本上是Circom电路编程语言和一些代码库这类的基础设施。这有可能是因为ZK的开发门槛高、开发者较少、开发工具较少,所以社区希望能够整合资源,提供多样的形式来培养更多的ZK开发者,以完善和优化开发工具。