本文由Priyeshu Garg编写,详尽讲解了比特币近期升级议案Taproot是如何拓展网络的智能合约灵活性并获取隐私特性的。以下为原文译文:提高比特币脚本能力的最受期望的改版之一Taproot,有可能迅速不会在比特币网络上发售。Taproot在2018年被首次明确提出,这个改版将拓展网络的智能合约灵活性,并获取前所未有的隐私特性,能让最简单的智能合约与常规账户看上去完全相差无几。解决问题简单智能合约的问题尽管比特币到目前为止是第一个也是最有野心的一个区块链项目,但它也由于缺少可扩展性与解决问题简单智能合约带给的隐私问题的能力而倍受抨击。
比特币开发者们早已为解决问题这些问题努力工作了相似十年。现在,一个几近极致的解决问题网络内脚本问题的解决方案就在眼前。同时有数个项目被托了出来,但Taproot是最有前途的一个。
Taproot在2018年1月首次由比特币核心开发者、Blockstream前CTO Gregory Maxwell明确提出,该方案致力于拓展比特币的智能合约灵活性。充满著Taproot对智能合约亲笔签名带给的意料之外的灵活性不讲,它还为账户带给了更好隐私特性。
像这样的根本性创意只有在实行隔绝亲眼的前提下才有可能。隔绝亲眼引进了脚本的版本控制,这是对比特币协议的拓展,容许在网络上实行新的密码学亲笔签名算法。Taproot的工作方式要解读Taproot怎样工作,我们必需撤回到比特币账户的基础上——脚本。
脚本是映射账户中、在区块链上运营的几行代码,它定义了被账户的币可以被花费的方式。在这些被账户的币能被花费之前,还有一些步骤必须已完成:这些币的所有权必需通过亲笔签名被证明;如果有时间锁住,则必须超过特定的区块高度或者日期;或者一个私钥子集中一定数量的私钥必须为账户获取亲笔签名。以上这些条件可以被人组一起构成一个非常复杂的智能合约。
智能合约的这些容许条件,或者说脚本,由于P2SH的不存在,仅有对这些币的新拥有者可见。这使得只有脚本的哈希值,或者说看上去只是一组随机数被还包括在区块链里。但是,当这些币被赚到之后,这个脚本最后不会被说明了出来。这意味著这笔账户的所有条件,还包括那些没有被启动时的条件,都会在链上表明出来。
虽然十分直截了当,但这个过程不会产生很多数据,网卓新闻网,而且在维护区块链链上账户的隐私方面十分有利。解决问题这个问题的一个方式是用于默克尔简化的抽象化语法树根(MAST)。这个建议基于默克尔树根,这是一种历史久远的灵活的数据结构,需要容许账户的所有有所不同容许条件被分开哈希。所有这些条件将被不存在一个默克尔树里,产生一个称作默克尔根的分开哈希值用来瞄准这些币。
如果默克尔树里的任何数据被说明了到区块链上,这些数据都可以通过默克尔根和树上的其他沦为默克尔路径的数据精彩检验。但是,默克尔树上的大多数其他数据将维持加密隐蔽的状态。MAST在维护数据隐私和有效性方面更加入了一步,因为它意味着说明了账户达成协议的条件。
Schnorr硬末端协议升级可以构建TaprootPieter Wuille,Blockstream的CEO,同时也是知名的区块链开发者,说明说道Taproot必要创建在MAST与默克尔分支之上。在它的GitHub建议中,它说明道Taproot将容许完全所有智能合约结构中包括一个条件,从而能让所有参与者对一个结果展开投票表决。参与者能联合合作,对一项整肃账户表示同意。Wuille回应,这不会节省更加多空间,并减少花费时的脚本隐私性。
虽然Taproot自己早已有极大的潜力,但只有与Schnorr融合一起,它才能充分发挥它确实的威力。这种新型的亲笔签名方式目前正在研发当中,将通过一次硬末端部署到区块链上。这将是比特币网络中最不受期望的一次升级之一。
这种亲笔签名方式以其发明者Claus-Peter Schnorr命名,它是一套将私钥、公钥和账户亲笔签名相连在一起的数学规则。Schnorr被普遍指出是加密货币领域最差的亲笔签名形式。Wuille告诉它可以在获取很好的正确性的同时又不损失延展性。
除此之外,Schnorr亲笔签名检验一起迅速,这意味著更慢的账户证实,以及飞快的账户时间。但是,最独有的一点是它构建了对多重亲笔签名的反对。
Schnorr亲笔签名不仅能将同一账户的几个亲笔签名拆分成一个,而且公钥和亲笔签名都能拆分成阈值公钥与阈值亲笔签名。这在区块链隐私方面意味著极大的变革,因为多投账户将与常规账户完全一样。简单的部分大多数开发者对亲笔签名机制更加简单的实行过程感兴趣。Schnorr可以用于数据来转变私钥和公钥。
这个转变可以像将这两把密钥除以2一样非常简单。“私钥除以2”与“公钥除以2”是比较不应的,“私钥除以2”可以对信息亲笔签名,可供“公钥除以2”检验。新的分解的密钥与其他密钥对看上去一样,无法辨别原本密钥是不是被改过自新。Taproot总有一天包括一个条件,称作“牵头重开”,一项账户中的所有参与者可以合作来花费这些资金。
通过用于Schnorr亲笔签名,“牵头重开”可以看上去与长时间的点对点账户异于。这是通过将提款中所有参与者的公钥加在一起来分解阈值公钥而构建的。
所有参与者的亲笔签名融合一起分解的与阈值公钥比较不应的阈值亲笔签名可以容许花费适当资金。但是,Schnorr亲笔签名也容许账户内的资金以非合作的方式展开花费。花费资金的替代方法被组合成一个有所不同的脚本。
这个脚本被哈希加密过,并被用来改动阈值公钥。阈值公钥与脚本的融合某种程度对应阈值亲笔签名与脚本的融合。
这种智能合约的简单结构获取了仅次于程度的隐私性,阈值公钥与脚本的融合看起来与常规公钥一样。在某些少见情况下,当区块链获知公钥实质上被变更过之后,账户的“牵头重开”就不会过热。这次协议升级有可能对整个比特币网络导致深刻影响。
增加区块体积意味著更慢的账户和更加较少的账户酬劳。这不会使Schnorr亲笔签名沦为区块链上人人都会用的方式。
本文来源:米乐|米乐·M6-www.elenaom.com