即使你是加密货币的早期参与者,你可能也没有听说过比特币有这么多的重大升级。
原因很简单。比特币是目前世界上时间最长、最顶级的加密货币,其特点是拥有当今最具弹性的计算机网络,正常运行时间接近99.99%,整个历史上只有两次停机(总共持续不到15小时)。
因此,比特币开发者必须确保他们推出的升级在经历了多轮严格的测试后是100%稳定的。这样,他们可以避免给BTC社区带来严重后果。
试想一个当代码中的一个缺陷允许黑客双花BTC或使大部分网络瘫痪的情况。这将对比特币和整个加密货币行业造成不可弥补的损失。
出于这个原因,在一次比特币升级之后,通常需要好几年的时间来进行另一次升级。上一次网络经历重大变化是在2017年8月,当时矿工们激活了隔离见证(SegWit),这是一个允许链上更有效地存储数据的解决方案。然而,这在社区中引发了激烈的辩论,导致了链的分叉和比特币现金的硬分叉。
此外,由于BTC的特点是一个庞大的社区——包括数以百万计的终端用户、矿工、投资者、企业和开发人员——很难就升级建议达成共识。
也就是说,这一次,似乎大多数比特币网络参与者已经同意推出一个名为Taproot的新升级方案,该方案最近在矿工中达到了90%的关键共识水平。
Taproot预计将改善BTC交易的隐私,降低转账费用,允许更多的灵活性,并增强区块链的可扩展性。
但什么是Taproot,它是如何工作的?
什么是Taproot升级?这次升级对比特币有哪些好处?
Taproot是一个软分叉,计划在709,632区块进行,预计将在2021年11月14日左右发生。
Taproot最初是由比特币核心贡献者(前首席技术官)Gregory Maxwell在2018年提出的,它将把BTC目前的ECDSA数字签名算法改为Schnorr(后面有更多介绍)。
简单地说,通过这样做,复杂的签名(例如,需要多方签名的交易)可以组合在一起。因此,复杂的交易看起来将与标准(用户对用户)的比特币交易相同,这增加了参与者的隐私。
此外,将交易中的众多签名合并成一个签名(而不是将它们逐一纳入一个区块),减少了需要在区块链上传输和存储的数据量。
由于更有效的数据存储,比特币将能够每秒处理更多的交易(TPS),而在Taproot升级后,复杂的传输成本预计会降低。
有趣的是,由于目前数字签名的算法将被改变,预计Taproot升级将在11月与新的Schnorr算法一起实施。
Taproot是如何工作的?
现在,你已经知道了关于Taproot的基本情况,以及升级对比特币意味着什么。
接下来,我们将更深入地探讨我们的主题,了解Taproot将如何改变网络中的数字签名。
数字签名,P2SH,ECDSA
为了更好地理解我们的主题,重温一下关于比特币网络交易的一些基本知识是很关键的。
你可能已经知道,加密货币利用公钥加密技术(因此而得名),每个人有两个密钥:一个私钥和一个公钥。
虽然你可以分享你的公钥来接收他人的资金,但私钥被用来对交易进行数字签名(也可以访问资金和恢复钱包)。
数字签名在比特币生态系统中起着至关重要的作用,因为它们可以证明你对数字货币的所有权,以及进行消费。
而这正是脚本发挥作用的地方。
在实践中,加密货币网络中的所有币都被 “锁定 “在脚本中,脚本指的是交易中包含的几行代码,然后锁定在区块链上(在矿工确认之后)。
比特币网络中的脚本决定了参与者在下一次交易中如何花费他们的BTC。最简单的条件是通过用你的私钥对转账进行数字签名来证明你的币的所有权。
然而,在比特币生态系统中,有比简单的用户对用户的余额转移更复杂的交易,其特点是消费条件更复杂。
这方面的例子包括时间锁和多签名交易。前者允许用户在特定日期或区块高度后花费他们的硬币,而多签名则要求交易必须由预先确定的一组(私钥)授权签署转让的一定数量的私钥签署(例如,需要五个签名中的三个签名才能成功地从多签名钱包向收件人发送BTC)。
简而言之,多签名交易被用于多方集体控制资金的钱包,以分担风险和提高安全性。例如,AAX将多签名技术用于其强大的钱包系统,以消除单点故障,确保客户的资金安全。
在比特币交易方面,开发者可以结合不同的条件来创建和部署复杂的智能合约(各方之间自动执行的数字协议,自动执行预先商定的规则)。
例如,如果满足以下任何一个条件,多重签名钱包中的BTC可以被花费。
双方用他们的私钥签署交易
其中一方在两天过后提供一个秘密号码
两个私钥中的其中一个在达到690,000个区块高度后用于签署交易
从2012年开始,当pay to script hash(P2SH)——比特币网络中的一种交易和地址类型——开始实施,包含消费条件的脚本是不公开的。而不是整个脚本,只有它的哈希值(一长串的数字)可以在公共账簿上看到。
然而,当发件人满足执行交易和花费BTC的条件之一时,它就会显示整个脚本以及它所包含的所有数据。这包括所有满足和未满足的条件,网络参与者可以通过使用脚本的初始哈希值,在区块链上轻松审计。
正如你所看到的,这可能会给发送者带来一些隐私问题,因为任何人都可以分析脚本的哈希值,以看到里面的条件,这也可能显示敏感信息,如用于转移的钱包类型。
除了源于P2SH的隐私问题,比特币还面临着进一步的匿名性和效率相关的问题,因为它目前的数字签名算法被称为椭圆曲线数字签名算法(ECDSA),最初由中本聪实施。
简单地说,ECDSA的主要问题是,与交易有关的每个签名都被单独包括在内(例如,如果在一个转移中有15个签名,所有15个签名都被逐一包括在内)。
这样做增加了多签名和其他复杂交易类型的规模。而且,由于规模的增长,转让中包含的签名越多,成本就越高。
此外,由于这些复杂的交易后来被矿工处理成区块,并记录在区块链上,由于数据使用量的增加,它们减慢了网络的速度,降低了其效率。
最重要的是,由于多个签名在交易中被逐一添加,网络参与者–其中可能包括从区块链分析师和标准用户到恶意的人–很容易发现多签名交易、智能合约和其他复杂的转移。
例如,这对像CoinJoin这样的硬币混合器来说是一个重大问题,它允许用户在转移BTC时实现更高的隐私水平。
然而,由于ECDSA算法,CoinJoin交易在区块链上的显示与标准交易不同,这为分析师提供了识别它们的能力,使这种转让的大多数隐私功能无法使用。
将这一点与P2SH的缺点结合起来,就很容易识别多义词交易,并了解花费资金的条件以及关于发件人的潜在细节。
Schnorr
以奠定其基础的德国著名数学家和密码学家Claus P. Schnorr命名,Schnorr是一种数字签名算法,利用线性数学来聚合签名。
换句话说,与ECDSA算法的不同,Schnorr数字签名是线性的。
因此,所有的签名和它们对应的公钥都可以汇总成一个单一的阈值签名和阈值公钥。
由于这个原因,一个多签名交易只需要包含一个公钥和一个签名(而不是几个),这使得他们在数据存储方面比ECDSA更便宜和更有效。由于比特币区块链的负载减少,它将能够每秒处理更多交易。
最重要的是,Schnorr的聚合签名和公钥看起来与标准签名完全一样,这使得比特币网络中的多义词交易与其他交易无法区分,增加了用户的隐私。
在这一切之上,Schnorr算法允许开发者在交易方面获得更多的功能。
Taproot
有了Schnorr,签名和它们对应的公钥可以结合在一起,使多重签名和其他复杂的交易像普通交易一样显示在比特币区块链上。
利用Schnorr,Taproot以Merkelized Abstract Syntax Tree(MAST)为基础,在隐私方面更进一步。简单地说,在多义词交易的情况下,MAST只显示花费BTC后满足的条件。
像其他基于MAST的结构一样,Taproot包括一个被称为合作关闭的条件,在这个条件下,所有参与者就结果达成一致,共同签署多义词交易并进行结算。
当合作关闭条件得到满足时,所有参与者将他们的公钥和数字签名结合起来。之后,在修改阈值密钥和签名的脚本的帮助下,他们一起花费硬币。
在这种情况下,由于Taproot和Schnorr的存在,多义词交易将看起来像一个普通的交易,而不会透露任何条件或脚本本身。
但是,当另一个条件被满足时(当参与者未能相互合作时)会发生什么?
在这种情况下,未修改的门槛公钥和调整它的脚本会在区块链上显示出来,作为交易中包含的硬币在满足替代条件之一的情况下可以被花费的证明。
也就是说,在所有参与者合作的正常情况下,Taproot可以完全隐藏交易的复杂元素,并将其伪装成普通人。
Taproot: 自SegWit以来最重要的比特币升级
Taproot显然是自2017年8月SegWit推出以来最重要和最令人期待的网络升级。
而且有一个很好的理由。
就像SegWit一样,Taproot通过用Schnorr取代目前的ECDSA算法,将众多签名批量化为一个签名,使区块链上的数据存储更有效率。
虽然这使得复杂的交易——如多签名传输、(第二层)闪电网络操作、定时器和智能合约——成本降低,但它也使比特币能够提高其可扩展性和吞吐量。
此外,由于Taproot隐藏了消费条件,同时使复杂交易与其他交易无法区分,它增强了网络参与者的隐私。
虽然,必须指出的是,由于发送者和接收者的BTC地址仍然可以被公开审计,Taproot不会使比特币交易变得匿名。相反,它将在一定程度上增加网络内的隐私。
虽然比特币很少推出重大升级,因为它需要确保其网络的最大稳定性,但在去中心化的金融领域正在进行许多实验,其中有一小部分可能会失败。
然而,最好的——经过无数次测试和试验的——可能会成为成熟的BTC功能,或者至少是比特币进一步分层的重要部分。