比特币Taproot升级终于要来了!一文了解它的过去_合约招商_数字货币代理_海外数字货币招商代理_数字货币招商_元宇宙代理加盟

数字货币代理_海外数字货币招商代理_数字货币招商_元宇宙代理加盟
数字货币平台火爆招募数字货币合约代理

比特币Taproot升级终于要来了!一文了解它的过去

更新时间:2021-10-28 17:45:01点击:74

约两周后,比特币将迎来其最重要的技术升级之一Taproot。

什么是Taproot? 维基百科上给出的一般定义如下:

“主根(taproot )”是大、中心、优势根,其他根从其侧面发芽。 通常,主根有点直,然后逐渐变细,直接向下生长。 例如胡萝卜这样的植物,主根是非常发达的储藏器官,作为蔬菜栽培。 '比特币采用的Taproot技术方案到底是什么? 那个名字是怎么来的?

比特币Taproot名字的由来

“我以为这个名字的由来是‘利用Merkle根’,但实际上不知道Gregory Maxwell的想法是什么”—— Pieter Wuille (出处)“一开始必须查这个词。 因为那是你做美味胡萝卜汤的中心,默克尔化的脚本会成为你想忽略的其他小根。 ”—— Anthony Towns (来源)和Taproot计划的提案者Gregory Maxwell给出的答案如下。

“这句话来源于像蒲公英主根一样有粗中心的树的形象化。 (这项技术非常方便。 因为假设有高概率的路径,剩下的路径会变得模糊。 这是一个很好的方法,因为它利用根中隐藏的commitment来验证脚本路径的成本。 ……啊,把带有排序内部节点的哈希树称为“桃金娘树”(Myrtle tree )已经不流行了。 (Myrtle tree是包括Melaleuca树、茶树(tea-tree )在内的树的家族,这听起来像‘merkle’。p ),因此,我认为在谈到比特币taproot时,我们脑海中浮现的图像如下。

资料来源: SHUTTERSTOCK

Taproot升级对比特币的影响是什么?

18年初,在Gregory Maxwell提出Taproot方案后,国内比特币社区提前报道了该方案。 当时社区的关注点如下。

“实施taproot升级后,闪电网络变得更加私有,无法区分LN交易和所有比特币交易,无法区分比特币链上交易和闪电网络链下交易”。 要适用Taproot的前提,首先需要使Schnorr签名方案落地。

到了2019年,除了提高比特币的隐私性外,Taproot方案还赋予了社区扩展新使命——比特币智能合约的灵活性。 因此,Taproot的升级和Schnorr签名升级为“比特币下一阶段的关键技术”。

2020年1月,作为bit酷睿代码库维护者之一的Pieter Wuille正式发布了BIP 340、BIP 341和BIP 342,包括升级Taproot/Schnorr软件叉。

今年6月,比特币全网支持Taproot升级的计算力超过90%,满足了锁定的最低要求。 也就是说,Taproot的意思是比特币区块的高度在709,632 (预计在北京时间11月13日前后)时正式与大家见面。

关于Taproot和Schnorr签名的一些趣事

1、比特币最初使用的是ECDSA签名方案,但实际上Schnorr签名比ECDSA签名诞生得早。 Schnorr签名之所以升级了比特币原始的ECDSA签名,是因为它可以更容易地实现各种密码学技术。 从时间上讲,Schnorr签名算法的诞生比基于ECDSA的DSA算法要早。 中本聪使用DSA的部分目的是回避Claus Peter Schnorr的Schnorr签名专利,他的专利于2011年失效。

2、虽然没有成功,但有人提出,在比特币采用Schnorr签名的初期发展中,Claus-Peter Schnorr的名字不应该与比特币相关联。 因为根据他的专利,这种有价值的密码学技术在20多年中没有被广泛使用。 Pieter Wuille曾经这样说过。

“我们确实想到了用DLS (离散对数签名)呼叫BIP340,但最终没有这样做。 因为Schnorr的名字已经被过多地谈论了。 ”3、Pay to contract:Ilja Gerhardt和Timo Hanke签订了一个叫Pay to contract的合同。 该合同由Hanke在2013年圣何塞比特币会议上提出,允许支付约定的哈希值。 拥有nonce以避免该协议的副本和特定攻击的人可以验证该约定(commitment ),但对其他人来说,该支付看起来与其他比特币支付相似。

2014年关于侧链的论文中,约定了对这种对等协议的轻微改善,其中也包括原支付公钥,但Taproot使用的是相同的结构。

Taproot落地之后,未来可能的比特币共识改变

那么,在激活Taproot之后,开发者们会在此基础上对比特币进行怎样的共识层改善呢?

1、交叉输入(Cross-input )签名聚合)通过Schnorr签名,一些不同的公钥和私钥对的所有者可以轻松地创建单个签名,证明所有密钥的所有者在创建签名时都进行了合作。 如果将来的协议改变,交易可能会包含单一签名。 该签名可以用于证明交易中使用的所有UTXO的所有者都被允许使用。 第一次输入后,这将为每个密钥路径节省约16个虚拟字节(vbytes ),从而节省集成和连接的开销。 可以使基于coinjoin的支出比通常的支出便宜,提供温和的激励,促进隐私交易的利用。

2、SIGHASH_ANYPREVOUT :每个普通比特币交易都包含一个或多个输入,每个输入都使用txid参考上一个交易的输出。 这说明了完全验证节点(如Bitcoin Core )可以在这笔交易上花费多少钱,以及必须满足哪些条件才能证明支出得到批准。 为比特币交易生成签名的所有方法都与是否存在taproot、提交给prevout的txid或prevout完全不相关。 这对于不想使用一组准确的预先安排的交易的多用户协议来说是个问题。 如果用户可以跳过特定事务,或者修改除witness验证数据以外的事务详细信息,则后续事务的txid将发生变化。 更改txid将使以前创建的签名无效。 这将强制链下的协议实现机制来惩罚提出旧交易的用户。 例如,LN的惩罚机制等。

SIGHASH_ANYPREVOUT可以通过允许跳过签名并将其提交给prevout txid来解决此问题。 这样可以在闪电网络(LN )中实施eltoo层,从而改进vault金库和其他合同协议。

3、委托(Delegation )和摘要)在编写脚本(taproot或其他)后,除了将私钥授予他人以外,几乎不能允许他人使用该脚本。 另外,对于希望使用“密钥路径”(keypath )的用户来说,taproot可以更经济,对于基于脚本的条件较少的用户来说。 开发者们提出了几种通过集中提供签名者的委托来加强taproot的方法

(1)移植根目录) taproot的想法诞生后不久,就提出了移植根目录。 该方案为能够制作taproot路径的人提供了附加功能。 “密钥路径”(keypath )签名者可以签署一个描述资金可用新条件的脚本,而不是直接支出资金,并将支出权限委托给满足该脚本要求的所有人。 满足签名、脚本和脚本所需的数据将在支出事务中提供。 通过这种方法,keypath签名者可以委托给无限数量的脚本,而无需在链上创建数据,直到发生实际支出。

)2)广义的taproot (g’root ) :几个月后,Anthony Towns提出了不使用类似MAST的结构,而使用公钥点) public key points )来承诺各种支出条件的方法。 这种广义的taproot (g’root )结构除了“taproot假设不成立时可能有效”外,还提供了一种构建软分支安全交叉输入聚合系统的简单方法。

3 ) entroot )移植根和g'root的最新合成方案。 简化许多情况,提高带宽效率。

4、新操作码和旧操作码(opcode ):taproot软分叉包括对tapscript的支持,提供向比特币添加新操作码的改进方法,即OP_SUCCESSx操作码。 一些新的操作码如下。

由于担心(1)恢复旧的操作码)安全漏洞,2010年开发者禁用了一些数学和字符串操作的操作码。 许多开发人员希望在安全审查后重新启用这些操作码。 此外,在某些情况下,为了处理更大的数字,还可以扩展操作码。

2 ) OP_ CAT )值得一提的以前被禁用的操作码之一是OP_ CAT,研究者们可以单独在比特币上实现各种有趣的行为,或者用其他新的操作码进行组合

)3) op _ tap leaf _ update _ verify :与taproot的密钥路径和脚本路径功能一起使用时,OP_TLUV操作码可以非常高效、有力地启用合同(covenants ) 它可以用于连接池、Vault和其他安全和隐私方面的改进。 也可以与OP_CHECKTEMPLATEVERIFY很好地组合。

请注意,以上所有的想法还只是建议,没有人能保证它们会得到很好的应用。 这需要研究人员和开发人员完成所有的提案,然后用户决定这些功能是否值得更改比特币的共识规则。

相关资料:

1、https://位元组态. org/en/newsletters/2021/10/27 /

2、https://位元组态. org/en/newsletters/2021/10/20 /

3https://www.8 BTC.com/article/223681

4、https://www.8 BTC.com/article/351969

官方微信