在万向区块链实验室举办的国际区块链周活动中,Findora联合创始人兼首席科学家BenediktBünz在其中一场分论坛中分享了一种全新的零知识证明技术Supersonic。BenediktBünz不仅是Bulletproofs的发明人之一,还是以太坊2.0的密码学核心组件「可验证延迟函数」概念的作者之一,所以他是加密货币领域非常重要的前沿密码学研究者,在隐私计算领域更是超一流的专家,当然这与他是斯坦福大学计算机密码学博士的教育背景密不可分。
以太坊2.0的VDF研究进展
Supersonic是一种新型的零知识证明技术。它代表了一种特定的加密货币用户的需求:匿名,也就是用户不希望自己的资产和交易记录被完全公开。零知识证明是满足这类需求的一种技术的统称,但是在具体实现上又有非常多的类别,最常见的是zk-SNARK和zk-STARK。
Zcash是zk-SNARKs的首个广泛应用,可能现在也算是零知识证明最常见和最被熟知的一种。而这个技术的最大问题是证明者和验证者之间需要一个「初始化可信设置」——这意味着需要一组公共参数来构建zk-SNARKs,也就是可能存在信任问题。所以「初始化可信设置」是其他新技术努力尝试克服的最核心问题。
后来Bulletproof被BenediktBünz等人提出,相比zk-SNARKs,不需要初始化可信设置,但是验证成本可能会高一些,但还是远低于其他技术比如zk-STARKs。在今年,全球密码学研究人员也陆续提出了各种各样的零知识证明相关的技术,比如说PLONK、Halo、Sonic、DARKproofs、Supersonic。
美国参议员:我们正在用20世纪的法规来监管这一21世纪的技术:金色财经报道,美国参议员Cynthia Lummis在社交媒体上表示,超过3400万美国人报告拥有某种形式的数字资产。我们正在用20世纪的法规来监管这一21世纪的技术。现在是升级的时候了,Lummis-Gillibrand计划实现了这一点。[2022/6/15 4:28:22]
链闻有幸在上海国际区块链周期间采访了BenediktBünz博士,听听他对于最新的零知识证明技术有哪些看法。采访内容在不影响原意基础上有所编辑。
核心看点:
对于最新的零知识证明技术:PLONK、Halo、Sonic、DARKproofs、Supersonic,该如何选择适合的工具?
除了隐私相关的密码学算法,还有哪些密码学工具值得关注?
通用型的多方安全计算MPC平台是不是能和区块链契合的很好?
以太坊的智能合约设计有哪些问题吗?
微信是否可以在区块链上重现?
在CESC2017大会中的BenediktBünz
链闻:对于零知识证明技术,其实有很多的种类,比如Zcash使用的zk-SNARKs和VitalikButerin经常提到的zk-STARKs。相比之下,您提出的Bulletproofs有什么特点?
Tether:我们与Terra完全不同,且拥有足够的储备维持USDT稳定:5月23日消息,Tether官方发文表示,稳定币维持稳定的前提是每一个稳定币均可以固定的价值赎回。而USDT和Terra的设计、机制和抵押品完全不同。Terra是算法稳定币,具有旨在实现稳定的机制,但是最终失败了。相对而言,USDT完全由抵押品支持,每一个USDT均可兑换为1美元。
当交易所的USDT的价格不等于1美元时,只能表明用户对流动性的需求超过了该交易所的订单簿,并不意味着USDT脱锚。Tether拥有超过700亿美元的抵押品,以用于这赎回USDT,满足用户的流动性需求。且可以在几天内完成用户超出流通USDT 10%的赎回请求。
此外,Tether宣布USDT的储备中超过55%是美国国债,商业票据的占比不到29%。[2022/5/24 3:36:53]
BenediktBünz:Bulletproofs更适合在中或低复杂度的交易中使用,但是对于那些非常高复杂度的交易中,验证过程就会非常耗时。SNARK的优势是具有很高效的验证速度,但SNARK最大的问题是需要初始化可信设置。
链闻:上个月,两位研究人员发表了一个名为PLONK的零知识证明论文,试图优化zk-SNARKs的问题,而且相比另一个名为Sonic的技术有显著的性能提升,而Sonic又可以和你们提到的DARKproofs结合而成Supersonic,这些技术有些什么样的关联?
BenediktBünz:Sonic和PLONK在零知识证明技术的某些方面有一些进展了,虽然他们还是需要进行初始化可信设置的,但这个初始可信设置再也不是专用的了。我们最近发布的DARKProofs算是一种加密学工具,它可以帮助Sonic和PLONK,让他们变得更好,因为可以移除他们的可信设置。所以我们将Sonic与DarkProof组合的技术称之为Supersonic,用一句话来说的话,Supersonic是一种无需初始化可信设置的SNARK。
欧洲央行行长:我们将拥有一个数字欧元:欧洲央行行长拉加德:我们将拥有一个数字欧元,希望5年内推出。[2021/1/13 16:04:37]
所以如果有一个复杂度非常高的交易或需要提供一个证明,Supersonic的验证将会是非常高效的。而且该证明的体积也非常小,比如说只要10到20kb。虽然没有Bulletproofs小,但已经非常小了,远小于STARK这类需要几百kb的证明。
链闻:在本月初,Zcash开发公司的密码学家作为第一作者发表了一种名为Halo的新技术,Zcash创始人称该研究发现了「无需信任的」零知识证明递归组合,是密码学「长期以来取得的突破」,可能成为「保护和扩展区块链」的关键。对于该技术,您有什么看法?
BenediktBünz:Halo是一种有趣的新技术,他们的论文中还提到了Bulletproofs。但他们并不是一个SNARK,因为还是需要一个可信或不可信的第三方才可以更高效。如果只有一笔交易或一个声明,那就不算是SNARK了,验证过程也不会很高效。它只在需要验证很多不同声明的时候才会高效,也就是说在批量验证时的效率会比做单笔验证效率高,所以没有体现出SNARK的全部能力。但是Halo依旧是一个有意思的想法,可能有潜力会进一步提升Bulletproofs或其他技术。Halo这种新技术还在发展中,还没有经过安全上的证明,还有很多工作需要进行,所以目前还不能算是一个无需信任的SNARK。
链闻:既然有这么多的零知识证明的相关研究,那对于项目来说,应该如何选择这些不同的技术呢?
V神:ETH2.0技术执行层面确实比预计的更难,但是我们能完成:以太坊联合创始人Vitalik Buterin在一场名为“Bitcoin VS Ethereum”的播客活动中表示“我承认,ETH2.0技术执行层面确实比我们预计的更难,但是我们没有遇到什么底层上的问题,随着时间的推移,我们能够推出ETH2.0,最近一切进展迅速,从应用的层面讲,以太坊有不同的应用领域,如果一个领域行不通,也可以尝试其他领域。”[2020/8/17]
BenediktBünz:当然了,肯定是要选用最适合的工具满足特定场景的需求。有些场景中,Bulletproofs非常适用,效率高并且证明可能只需要2kb,但对于其他更复杂的应用场景,Supersonic会更好。其实对于很多特定的应用和场景,通用的工具可能不是很高效,所以我们会花很多时间在探索和优化不同场景中使用更合适并且更高效的算法。
链闻:除了以上提到的和零知识证明相关的密码学算法,还有哪些其他的密码学工具值得关注?目前你们会把精力放到这些新技术的研发上吗?
BenediktBünz:还有很多,不过可以提两个,其中一个是「匿名凭据」。如果系统中用户存储了身份信息,类似于护照一样会有很多数据比如姓名、性别、年龄等等,一般在做KYC的时候会需要使用这类的身份信息。如果用户参与某个活动的要求是18至22岁,那这个功能就会发挥作用,不需要揭露其他的数据,也不需要揭露用户的实际年龄,但是可以通过系统证明自己的年龄是否在这个范围内,所以也可以称为「选择性揭露凭据」。这个密码学工具在金融领域的应用里非常重要。
Reddit的联合创始人认为我们正处于“加密之春”:Reddit的联合创始人Alexis Ohanian在描述虚拟货币当前的生态系统是称,我们现在确实正处于加密的春天,同时看到了顶级的工程师、产品开发人员和设计师,在区块链上构建能够真正解决问题的方案,并强调围绕区块链技术应用程序去发展虚拟货币是十分有意义的。(Cointelegraph)[2020/5/25]
另外值得一提的是在部分场景中需要的多方安全计算,简写为MPC。使用这个工具可以之后,可以实现比如说很多人共同参与一个拍卖,但是没有人需要泄露自己的拍卖价格。
但我们还是会把目前的精力放在优化目前已经规划的这些算法,把它们做到更高效。虽然有些项目声称使用了非常厉害的技术,但是这些技术可能还不具有实用性,效率低甚至不可扩展。
链闻:现在也有一些核心主打通用型的MPC区块链项目,在现阶段MPC可以和区块链契合的很好吗?
BenediktBünz:如果真的想把多方安全计算MPC带入通用计算领域,「低效」是最需要克服的问题。比如说,在一次计算中可能需要多轮的交互,所有计算的参与者都需要在线,所效率会很低,而且在这种去中心化的场景中,你并不知道计算进行中的对手方是谁。
比如说多个医院需要共同研究一组的数据,每一方都有自己病人的数据,也知道其他医院是哪些,它们IP地址是什么。MPC的整个计算过程就是这些参与者互相发送数据,比如量级在MB甚至GB的数据,之后他们就可以得出一个最终的结果,这才是MPC最擅长的场景。这其实和区块链的环境和设定还不太一样,因为区块链可能会有上千个节点,而且节点之间也互不认识。
链闻:作为公认的第一个图灵完备的区块链项目,以太坊在通用型的智能合约的设计上还有些什么问题吗?
BenediktBünz:从智能合约实现上来说,以太坊是基于账户的系统,合约的语言类似于Javascript,叫做Solidity。出于性能的考虑,我们认为区块链本身并不擅长处理通用的计算,比如说以太坊虽然可以做类似于4+3的运算,通过Solidity语言的处理和计算可以得出结果为7,但这样做比较愚蠢,因为可能全球上千个矿工都在计算这个题目。所以这类问题我们还不如心算出结果,或者可以通过其他方式计算。所以我们的项目并不会关注在通用计算上。
链闻:对于一个专注于金融领域的区块链项目,和通用型公链项目有何不同?
BenediktBünz:比如说对于投资基金或借贷平台,他们对于隐私和透明度都有特殊需求。从透明度来说,因为他们需要符合监管条例,还需要给用户和监管方显示他们的偿付能力,并可以被审计。金融应用还有隐私的需求,比如说不能公开用户的余额,公司的商业机密,投资过哪些公司等等。
零知识证明和密码学非常擅长于平衡隐私和透明的需求。
链闻:那在密码学和共识算法上与其他通用型的公链有哪些区别?
BenediktBünz:对于密码学,从交易角度来看,是需要专注于建立一种平衡的。Zcash为用户提供了很多隐私特性,但没有提供可审计性,无法公开其中一部分数据。但比如说在Findora平台中,资产可以称之为「智能资产」,可以给这些资产设立一些预设的规则,例如只能将该资产发送给特定国籍的用户,因为不同国家的监管规定可能不同。每个人都可以看到这些预设的规则被执行了,但是关于转账金额、何种资产和转账者的信息数据是可以保持隐私不公开的。
而且这些技术都会被模块化实施,所以可以被不同的共识算法使用。但是我们也会公开的一套共识算法,叫做Finsense。这会是一个基于PoS和声望系统的共识协议,用来保证如果PoS失败的话也会有相应的回退机制。
链闻:我们知道预言机是一个对于区块链非常重要的工具,可以将链下的数据带到链上,这将会极大程度上打开区块链的实际应用场景。那在预言机方案上,你们是如何考虑的?
BenediktBünz:我们一直在积极寻找合作方为我们提供预言机工具。不过我们的数据还是会先聚焦在金融机构和金融业务的需求上,比如说让经纪商在链上发行股票,我们已经有一些合作伙伴会提供这类数据了,他们可以帮助提供很多金融数据和金融资产到Findora区块链上,我相信这些才是我们所需要的预言机和数据。
对于其他应用类的数据,比如说什么天气数据,或者是运动比赛的数据,这些可能都不是Findora目前需要关注的数据,不过我们的平台还是可以与其他的预言机工具互操作的。
链闻:在中国,微信是一个绕不开的工具,我们是不是可能通过区块链技术搭建一个微信这种平台,实现聊天、支付、借贷等综合性场景?
BenediktBünz:或许聊天工具的部分,是发生在其他平台中,甚至可能不一定是区块链,但是支付和借贷,完全是可以通过区块链实现的。目前中国用户都在用微信,他们储存了用户所有的资产,如果发生了破产那可能就是金融危机了。但是如果将这些业务运行在注重隐私的区块链上,会带来的好处包括,去中心,无需信任,而且当你转账的时候,就不需要将转账的信息给任何其他人知道,交易可以很快的被处理。
还有一个很酷的事情是,区块链还可以提供一种标准化和公开的接入方式。如果微信的支付运作在区块链上,哪怕他们是一个中心化的区块链,用户还是可以基于这些区块链上数据搭建其他App,他们也就不需要微信的许可和API了,所以区块链对于这类标准化是非常有帮助的,相当于给金钱加上了一种开放式的API。
既然是跨场景的应用,可能会和跨链技术相关,也就是原子交换和跨链协议。以Findora项目为例,Findora本身会有一个公开的网络,但还可能会有很多小的私密网络,比如说许可式的网络。这些私密网络是可以连接至Findora公链的,虽然各条区块链可能采用了不同的共识算法,但还是可以在各条链之间转移资产的,因为我们采用了原子交换技术让跨链更无缝。
撰文/采访:潘致雄
来源:链闻
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。