主页 > 安卓怎么下载imtoken钱包 > 比特币共识层两年未变,这些升级可能是今年

比特币共识层两年未变,这些升级可能是今年

安卓怎么下载imtoken钱包 2023-07-07 05:19:37

两年多来,比特币的共识层保持不变。自 2017 年 8 月推出隔离见证(SegWit)以来,比特币没有经历过硬分叉或软分叉协议升级比特币最开始是怎么挖的,这是迄今为止比特币保持无共识分叉的最长时间。

比特币共识层两年未变,今年可能会有这些升级

然而,这种状态可能很快就会结束:目前正在开发几个向后兼容的软分叉。乐观地说,如果他们能够从比特币生态系统中获得足够的支持,其中一些可能会在 2020 年启动。

本文列出了那些可能是比特币在新的一年……或新十年的协议升级。

Schnorr/Taproot/Tapscript

许多密码学家认为 Schnorr 签名是该领域中最好的密码签名类型。它们提供了很高的准确性,不受延展性的影响,验证速度相对较快,而且,也许最有趣的是,可以做数学。比特币的优点之一是可以将多个签名聚合成一个签名,例如,这可以经济地刺激增强隐私的 CoinJoin 交易。

将 Schnorr 签名添加到比特币协议的计划已经进行了一段时间。但在过去的一年中,致力于 Schnorr 签名方案的开发人员,如 Blockstream 的 Pieter Wuille、Jonas Nick 和 Xapo 的 Anthony Towns,已经透露了更雄心勃勃的计划。Schnorr 签名将成为软分叉协议升级 Taproot 的一部分,Taproot 是由比特币核心贡献者 Gregory Maxwell 提出的协议升级,其本身受到称为 MAST(Merkelized Abstract Syntax Tree)的旧方案的启发。

比特币只能在几种不同的条件下被锁定和使用,例如需要时间锁,这需要几个参与者提供的密码才能解锁这些比特币。使用 MAST,各种条件被散列并包含在 Merkle 树中:一种紧凑的加密数据结构。这些硬币将被锁定在 Merkle 树的最后一个哈希中,即 Merkle Root。要花费这些硬币,你只需要告诉你最终使用了什么。这些硬币可能被解锁的其他方式将永远隐藏。

Taproot 基于一个有趣的部署:几乎任何 MAST 结构,无论多么复杂,都可以(或应该)包含一个条件,允许所有参与者就结果达成一致并一起签署结算交易。这种“合作解决”将凌驾于所有其他条件之上。

Taproot 利用此部署并利用 Schnorr 签名使协作结算看起来像常规交易。简单来说,协作结算将使用聚合签名完成,看起来就像普通签名一样。在这个过程中,MAST 结构对外界是完全封闭的!这有利于隐私和效率。

Taproot 还可能附带比特币编程语言 Tapscript 的升级版本,这将使将来向比特币编程语言添加新功能(“操作码”)变得更加容易。

虽然开发人员仍在讨论部署细节,但 Taproot 似乎并没有太大的争议。

“大共识清理”

Great Consensus Cleanup 是 Square Crypto 开发人员 Matt Corallo 提出的软分叉。与大多数协议升级(包括本文中列出的其他协议)不同,The Great Consensus Cleanup 并非旨在通过新功能或新可能性来丰富比特币。相反,顾名思义,这个软分叉将消除比特币协议中的一些边缘案例漏洞。

这些虫子技术含量很高,而且“杂草丛生”。示例包括需要大量处理能力来验证的边缘交易类型、升级部分协议的冗余技巧以及比特币难度调整算法的弱点。这些漏洞已经为人所知一段时间,但人们普遍认为,利用它们要么成本太高而无法盈利,要么在它们发生时相对容易处理。但是,修复这些错误将使比特币更加健壮,也将使比特币的开发更容易一些。

反对“大共识清理”的主要论据可能是一些升级理论上可能会使一些现有的代币(UTXO)无法使用。虽然这样的 UTXO 根本不可能存在,但无法确定它们是否存在。一些人认为,使这些代币无法使用是一种原则上不应该冒险的风险。

“无输入类别”

比特币交易包含加密签名,用于证明公钥的所有者确实希望在特定交易中使用相应的比特币。但不是整个交易都被签名,交易的哪一部分被签名由称为“sighash 标志”的东西指示。

Blockstream 开发人员 Christian Decker 和 Xapo 的 Towns 提出了一类新的 sighash 标志,包括 SIGHASH_NOINPUT、SIGHASH_ANYPREVOUT 和 SIGHASH_ANYPREVOUTANYSCRIPT,它们提供了类似的解决方案,因此我们将它们都称为“Noinput 类”。

如果 Noinput 类别中的 sighash 标志包含在交易中,则意味着输出(交易的“接收”部分)和其他一些交易数据将被签名,而不是输入(交易的“发送”部分)交易)。如果输入未签名,即使在交易签名之后,也可以将其交换为不同但兼容的输入。

通常,不会有其他兼容的输入。签名仍然对应一个公钥比特币最开始是怎么挖的,它只对应一个特定的硬币(或它的一部分)。切换到随机输入会破坏这种连接并使交易无效。

但也有一些输入可以交换的例外情况。值得注意的是,用于名为 Eltoo 的新闪电网络支付通道协议的比特币交易可能需要将其输入交换为另一个兼容的输入。这将大大简化支付渠道的执行方式。最值得注意的是,错误和其他诚实的错误不会导致频道的所有资金损失,用户可以使用更少的备份数据。

Noinput 类别的主要缺点是如果使用不当,特别是 SIGHASH_NOINPUT 可能是不安全的。SIGHASH_ANYPREVOUT 和 SIGHASH_ANYPREVOUTANYSCRIPT 以增加复杂性为代价解决了这个问题(并使其与 Taproot 兼容)。一些人还建议 OP_CHECKTEMPLATEVERIFY(见下文)或 OP_cat(可以重新启用已通过 Tapscript 禁用的操作码)也可以实现类似的目标。

OP_CHECKTEMPLATEVERIFY

OP_CHECKTEMPLATEVERIFY (CTV),原名 OP_SECURETHEBAG,是比特币核心贡献者 Jeremy Rubin 提出的新操作码。它的主要优点是可以帮助缓解比特币在高峰时段的网络拥塞和费用,有效提高网络吞吐量。

更具体地说,CTV 会以某种方式将比特币交易一分为二。交易的“发送”部分将包括输入,基本上是硬币的来源地址。交易的“接收”部分包括输出,基本上是发送硬币的地址。

这两个部分将通过“发送”交易中包含的“承诺输出”的特殊输出相互绑定。提交输出将包含一个加密散列:一个看似随机但相对较短的数字短字符,充当唯一的序列号,将其链接到“收到的”交易。在“发送”交易中“发送”的硬币只能由“接收”交易“接收”。

关键是交易的“发送”和“接收”部分都广播到网络,有重要区别。“发送”交易包含相对较大的费用,以确保快速确认。“接收”交易包含相对较低的费用,这意味着可能需要一段时间才能确认。

等待低费用交易的确认对于交易的接收者来说应该不是什么大问题。一旦“发送”交易被确认,它将确保所有的钱都进入“接收”交易。这些资金固定在区块链中,除了发给收款人外,不能用于任何其他用途。

如果接收方确实需要加速“接收”交易,例如,因为他们必须重新花费硬币,他们可以直接从未确认的“接收”交易中花费资金。如果新交易的费用足够高,“收到”交易和新交易都会很快得到确认。更有趣的是,CTV 可以通过将“接收”交易拆分为更小的交易(称为 Tree Payments)来提高效率。

可能反对 CTV 的主要论点是可能有更好或更简单的方法来实现相同的目标。也有人认为Noinput category或者OP_cat就可以了。

传动链 BIP

侧链是“锚定”到比特币区块链的区块链,允许比特币有效地在比特币区块链和侧链之间来回移动。一旦硬币在侧链上,它们就会遵守侧链的协议规则。例如,我们可以建立一个带有隐私功能的“Zcash 侧链”,一个带有智能合约的“以太坊侧链”,或者一个带有低费用区块链的“大区块侧链”。

一些侧链已经存在,最著名的是 Blockstream 的 Liquid 和 RSK Labs 的 RSK。这些是“联盟侧链”:比特币区块链和侧链之间的连接由该领域知名公司的“联盟”管理。他们控制比特币区块链上的多重签名地址,并通过集体签名“移动”比特币。

驱动链将由比特币矿工保护:比特币区块链的矿工。要将资金从侧链“转移”回主链,需要很长一段时间内的大量计算能力。另外,驱动链需要合并挖矿,也就是说比特币区块链上的算力也保护了这条侧链。

为此,Tierion 开发人员 Paul Sztorc 和 CryptAxe 提出了两个软分叉。第一个称为哈希率托管,将资金锁定在比特币的区块链合约中(“移动”到侧链),只有当足够的哈希率投票(“移动”到侧链)到比特币区块链时才解锁它们。第二个软分叉,称为 Blind merge Mining,将赋予侧链与比特币区块链相同的计算能力。

驱动链争议在于它可能赋予比特币矿工更多的权力。有些人还建议使用 Noinput 类别来实现盲合并挖掘。

————