零知识证明在BSV网络上的应用
发表时间:2023年6月15日
2024年7月19日,BSV区块链主网上成功通过使用零知识证明验证了一笔交易。
零知识证明是一种技术,它允许一方(证明者)在不透露任何秘密的情况下,向另一方(验证者)证明某个秘密是正确的。由于零知识证明的隐私特性,它在需要保护隐私的场合非常有用。更重要的是,它还可以作为构建更复杂协议的基础。
nChain的研究部门总监张伟在Medium上发表的一篇博客文章中解释说,BSV网络首次成功地通过验证一个交易中的Groth16零知识证明,从而完成了交易有效性的验证。
前往此链接阅读相关技术博客:
https://medium.com/@w.zhang/snark-verification-on-a-bitcoin-mainnet-c467991d931c
值得注意的是,在行业现存的所有区块链中,这也是一项前所未有的突破,同时也是比特币节点一个重要的里程碑,因为它为链上智能合约的发展铺平了道路。
由于比特币的设计初衷是为了确保网络的安全性和去中心化,而不是为了处理复杂的计算任务;与此同时,比特币的脚本语言相对简单,只能执行一些基本的操作,如验证交易签名,而不支持更复杂的编程逻辑。由此一来,比特币系统一直以来都被人们认为计算能力不足。
但现在,通过BSV区块链的实现,比特币网络具备了能够验证计算是否正确完成的能力。这意味着比特币网络可以处理更复杂的任务,如智能合约。这种对智能合约的支持不仅提高了比特币网络的可扩展性,允许它处理更多的交易和复杂的操作,而且还解决了在公共区块链上进行交易时的隐私问题。
张伟对此强调:“我们选择实现Groth16,因为它的特性非常适合优化交易大小,从而降低交易费用。在所有SNARKS中,Groth16具有最小的证明大小和非常高效的验证算法。我们迄今为止最小的实现是针对BLS12-381曲线的Groth16,它实现了480KB的锁定脚本大小和40KB的解锁脚本大小。我们选择在BSV上实现它,因为BSV支持大数运算,并且在其主网上有500KB的默认脚本大小限制。此外,利用BSV上低交易费的优势,我们创建和花费这笔交易仅支付了大约0.015美元。我和我的团队现在正在完善和改进目前Groth16的实现方式,以便在链上部署递归Groth16。”
请在GitHub上关注这个项目的进展:
https://github.com/nchain-innovation/zkscript_package
最近,BitVM和StarkWare这两家公司也发布了一些引人注目的新闻。StarkWare展示了一系列的交易,这些交易使用了一种名为STARK的先进的零知识证明技术来验证它们的正确性。与此同时,BitVM则展示了他们验证了一种叫做SNARK的零知识证明。
STARK和SNARK都是零知识证明的一种形式,它们允许一方在不透露任何敏感信息的情况下,向另一方证明某个陈述是正确的。这在区块链技术中非常有用,因为它可以在不牺牲用户隐私的前提下,验证交易的有效性。
这些交易的主要特点在于,它们都是在比特币的测试网络Signet上发布的,而不是在比特币的主网络上。测试网络是一个模拟环境,用于在不影响实际比特币的情况下测试新技术和交易。这些交易只有在比特币网络启用了一个名为OP_CAT的操作码之后,才能被迁移到主网络。OP_CAT是一个特殊的指令,它的作用是将多个输入连接在一起,这对于某些类型的交易来说是必需的。
sCrypt是第一个在BSV测试网络上实现Groth16验证的。Groth16验证是一种零知识证明技术,它允许在不透露任何敏感信息的情况下验证交易的正确性。sCrypt的验证脚本最初大小为5MB,但在今年的一个黑客马拉松活动中,一个名为ZkBaguette的参赛作品对其进行了改进,将其大小减少到了1.2MB。这种优化使得验证过程更加高效,更易于在实际的区块链网络中得到实施。
目前,全球已有超过400个项目构建于BSV区块链之上。凭借坚如磐石的协议及超高的网络性能,BSV生态系统迅猛发展,我们期待未来出现更多前所未有的商业应用。
- 对BSV区块链开发感兴趣的朋友,可以前往我们的中文开发者专区:BSV区块链