TRON4.0全球线上发布会回顾——「杜文轩」主题演讲:人类首个支持隐私计算的智能合约虚拟机

孙宇晨
6 min readJul 14, 2020

--

​​主持人:那么在接下来的发布会过程中,Justin提到了4.0的核心功能,就是TRONZ,也就是世界上首个支持隐私计算且无壁的智能合约虚拟机,接下来就有请演讲嘉宾杜文轩带来演讲《人类首个支持隐私计算的智能合约虚拟机的诞生》。杜文轩是波场基金会TRONZ项目的技术负责人,是专攻加密技术和算法的年轻计算机科学家,他的理想是让金融科技应用走进大众。来,我们有请!

杜文轩:大家好,我的名字叫杜文轩,是TRONZ团队的技术负责人,我们TRONZ是由一群经验丰富的波场社区开发者组成,我们专攻密码学,希望可以为用户提供更好的隐私,保护我们的用户。接下来我们给大家带来的就是一个非常令人激动的技术,也是第一个隐私合约和匿名交易,那么现在就给大家分享。

今天我就给大家介绍波场生态内的零知识证明,首先给大家解释一下零知识证明,我相信很多人都听过这个概念。但是它到底是什么呢?这其实是证明一个命题给验证者,但不告诉他其他的细节,比如我有100万美元,我想给验证者证明这件事,验证者就会说你把你的100万展示给我,这个时候就会有另外一种方式向他提供证明,却不需要提供实际的钱。它有三个特征,第一,如果这个命题是正确的,那么验证者就会确信这是一个诚信的证明者。第二,如果证明是错误的,这个撒谎的证明者就没有办法让验证者相信这是个正确的命题。第三,如果命题是正确的,那么验证者只会知道这是一个正确的命题,而不会得到其他的信息,这就是零知识证明的基本信息。几十年来,关于零知识证明的研究层出不穷,目前主要有三个零知识证明在区块链界非常知名,我们会一一介绍。

第一个是Bulletproofs防弹证明,第二个是zk-starks,然后是zk-snarks。我们会从不同的方面讨论这三个证明,相信大家很快也会知道哪一个是最好的。首先是验证时间,防弹证明是1分钟,zk-starks是16毫秒,而zk-snarks是10毫秒,对于证明者也是这样的,我们看到zk-snarks需要一个授信设置,但从其他维度来看它仍然是最佳的选择。zk-snarks技术有这几个过程,核心内容就是转换一个命题,假如我知道一个交易秘钥,我就可以生成二次方程程序,假如我知道这个方程的解就可以知道匿名交易。

我们有一系列的密钥,大家只要知道这些密钥都是由一个原始密钥生成就可以了,每个密钥都会有不同的功能。匿名交易协议是基于UTXO模型的,也就是“未花费交易输出”,我们只需要放入承诺就可以了,对于SpendDescription和ReceiveDescription也是如此,它们会形成交易的输入和输出,当你把一个交易跟其他交易相连的时候就会形成UTXO模型。

我们既然已经定义了匿名交易协议,我们接下来看一下如何创建匿名TRC20合约。我们可以隐藏原地址、目标地址、转账金额,我们是在TIP-135中完成这些功能的。这三个功能大家根据名字也已经猜到了它的功能,首先mint可以将公开的TRC20代币转化为匿名代币,需要透明输入和匿名输出。transfer用于匿名交易,可以隐藏原地址、目标地址以及转账金额,我们可以把两个交易放到这个功能里,需要小于等于2个匿名输入和小于等于2个匿名输出。第三个burn功能是匿名代币重新转化为公开的TRC20代币,所以是一个匿名的输入和一个透明的输出,在不同的场景下也可能有0个或者1个匿名输出。

这里我准备了一个流程图,大家可以清楚看到各个步骤,比如某人如果想要转账一个TRC20代币给他的朋友,首先需要用mint功能把它放到匿名的TRC20合约里,之后经过一系列的过程,这个代币会进入burn功能,然后就会由他的朋友收到,这是整个完整的过程,他可以秘密地获得这个代币。既然已经展示了创建过程,每个人都可以进行部署,所以我们也应该去实现一些指令,帮助大家更好地完成这些功能。

零知识证明是实现在TIP-137和TIP-138里的,它包括三个指令,包括verifyMintProof、verifytransferProof、verifyburnProof。顾名思义,verifyMintProof指的是验证零知识证明的有效性,这些大概只需要10毫秒就可以完成。PedersenHash是指用于计算默克尔数理的结点值,时间成本也只是1毫秒,所以我们的性能是非常好的,速度是非常快的。那么说了这些,还有一个需要做的就是授信机制,这也是我们为什么发起了多方计算火炬项目,这也是由我们在今年1月发起的项目,可以看到Justin Sun本人也参与到了这个项目当中。为了纪念在这个领域的先驱所作出的贡献,我们为每位参与者都提供了100美金,我们一共看到了196名参与者,他们有来自波场社区的开发者、区块链爱好者,还有来自传统行业的从业者和日活跃用户,以及一些意见领袖,这也是区块链历史上参与人数最多的MPC项目。

总结一下,我们与类似项目进行比较。

首先是Monero ,也是一个比较有名的提供隐私功能的项目,它使用的是防弹证明,就像我们刚刚说到的其实它的匿名性并不高。另外一个ZCash使用的是zk-snarks,跟我们一样,所以能够保证极强的隐私性。但是它并不支持匿名合约,也就是说如果你想要进一步扩大这种匿名性的话是无能为力的。另外一个是Grin,它使用的是Mimblewimble协议。但是同样的是,它也使用了防弹证明,此外它还需要交易发送方和接收方进行互动,所以其实并不方便。最后,也是一个以太坊上很受欢迎的项目Tornado,它支持匿名合约,但仅支持充值和提现,假如你想要把2个ETH给别人,其实你需要做两次这样的过程,此外它还使用了混合解决方案,也就是说它不能保证每个人的隐私性都可以得到保护。最后是Aztec,它可以隐藏掉转账的金额,但是发送者和接收者的地址仍然是公开的。

相比之下我们可以看到匿名的TRC20合约性能非常高,交易费极低,速度极快,隐秘性又极好。此外,它跟智能合约吻合性极强,这就是波场虚拟机零知识证明的大概情况。

下面给大家介绍一下我们的未来计划。我们致力于前沿的密码学技术,并且也希望为区块链界的隐私保护贡献出一份力量,我们将在未来实现更多的帮助用户保护隐私的技术,我们有很多想要去完成的使命,我们已经等不及那一天的到来了。非常感谢大家听我的分享,我希望我们这项技术能让波场4.0到达一个新的高度,非常感谢!

主持人:感谢杜文轩的精彩演讲。我相信屏幕前的男性观众一定会有所启迪,现在你们知道私房钱要怎么藏了吧,开一个玩笑。从互联网诞生以来,隐私问题一直困扰着大家,我相信TRONZ为大家引领了方向。

--

--

孙宇晨
孙宇晨

Written by 孙宇晨

波场@Tronfoundation创始人|@BitTorrent CEO|马云湖畔大学首批学员

No responses yet