主页 > 下载imtoken官方网站 > 比特币框图:隐式与显式 AsicBoost
比特币框图:隐式与显式 AsicBoost
摘要:我们提供了比特币区块的图形说明,包括 Merkle 树,并解释了为什么在隔离见证升级期间有必要在区块中包含额外的 Merkle 树。 然后,在我们 2017 年 9 月关于 AsciaBoost 的文章之后,我们仔细研究了显式和隐式 AsciaBoost 的一些潜在缺点。 根据专利所有者最近的公告,我们得出结论,新的区块链防御专利许可 (BDPL) 方案如果稳健,则显式 AsicBoost 对网络系统造成的风险有限。 另一方面,效率较低的隐蔽 AsicBoost 可能仍然存在一些问题。
这是对比特币区块和 Merkle 树结构的简化描述。 其他更详细的插图由 Jeremy Rubin 和 Timo Hanke 绘制。 (来源:BitMEX 研究)
组件图
块头
比特币区块的头部(灰色)大约为 80 字节,包括区块版本、前一个区块的哈希、Merkle 根、时间戳、比特(难度)和随机数。
候选区块头
它包含块头中除 nonce 之外的所有内容。
子块
上图显示了 Merkle 根一分为二,这是比特币 SHA256 工作量证明功能所必需的。 可以在我们之前关于 AsicBoost 的文章中找到对此的解释。
第二颗默克尔树
隔离见证升级引入了一个新的 Merkle 树,它与主 Merkle 树具有基本相同的结构,除了它包含见证数据并排除 coinbase 交易。 每笔交易的相对位置必须与主默克尔树的位置一致。
为什么会有第二棵 Merkle 树
第二个 Merkle 树增加了块的复杂性,一些人认为这对整个系统有害。 隔离见证是比特币网络的升级,修复了某些缺陷,例如 sighash 操作的二次扩展和交易延展性。 见证数据不能添加到主 Merkle 树中,否则旧节点会认为这些交易无效,从而导致硬分叉。
然而,那些声称如果 SegWit 通过硬分叉而不是软分叉升级就可以避免额外的 Merkle 树的人是不正确的。 硬分叉会在主 Merkle 树中包含见证数据,导致现有钱包认为新交易格式无效,并使其与新交易格式不兼容,无论它们是否有足够的验证节点。 结果,一些用户将无法相互通信,可能导致资金损失。 在像比特币这样的实时网络上实现这种升级而不造成任何网络中断是不切实际的。 因此,即使通过硬分叉升级 SegWit,也需要添加第二颗复杂的 Merkle 树。
AsicBoost
正如我们在之前关于 AsicBoost 的文章中所解释的,隐式 AsicBoost 利用哈希算法将 Merkle 根拆分为两个块,然后在 Merkle 根的最后 4 个字节中寻找碰撞点。 隐式 AsicBoost 可能会与事务混淆,而显式 AsicBoost 可以避免这种情况。 第二个 Merkle 树使隐式 AsicBoost 操作更加困难,除非块变得更小,这可以被检测到。
AsicBoost 的潜在负面影响
隐蔽的 AsicBoost
显性 AsicBoost
专利保护
AsicBoost 的潜在负面影响是相同的,无论是隐式的还是显式的。 AsicBoost 是一项专利技术,正如我们在之前关于专利的文章中所解释的那样,这些技术可能会对区块链领域产生不利影响。 这似乎是 AsicBoost 的主要负面因素之一,因为它有可能为矿业公司提供超越其他竞争对手的不可逾越的优势,从而造成法律保护无法弥合的差距。 这可能会破坏比特币的核心价值。 如果专利引起的问题变得严重,比特币社区可能会实施软分叉以阻止使用 AsicBoost。 为了缓解这个问题,专利所有者可以开放专利——例如,包括防御性专利担保。 看起来 AsicBoost 专利持有人最近做出了这样的承诺。 如果承诺足够强大,这个问题可以在现阶段得到解决,至少在专利申请的地方。
小块和低容量
隐式 AsicBoost 可能会激励小块甚至空白块的产生,这将使隐式 AsicBoost 更有效率。 但这会降低网络容量并增加交易费用。 小块或空块对容量有负面影响,因为它们维持网络难度但对任何交易积累没有显着贡献。
不适用
不愿升级到隔离见证和不诚实的原因
也许 AsicBoost 最具破坏性的负面影响是它可能会导致一些矿工不愿意升级到隔离见证。 这本身可能不会产生太大的负面影响,但传播有关隔离见证的不诚实信息可能会对生态系统产生巨大的负面影响。 但是,我们想指出,这只是一个没有定论和未经证实的指控为什么比特币升级那么难为什么比特币升级那么难,尚不清楚这是否是反对 SegWit 的动机之一。
不适用
调整默克尔树或交易的激励措施
如上图所示,隐式 AsicBoost 依赖于矿工调整 Merkle 树或交易的能力。 这可能比小块对网络更有害。 隐式 AsicBoost 似乎是一个更简单的解决方案,只需要更改块头中的字段块。
不适用
优于竞争对手
与已知优势相比,Covert AsicBoost 可能不会被竞争对手检测到,因此可能会给它带来一些秘密的竞争优势。 虽然我们通常认为透明度是一件好事,但我们不清楚使用隐蔽的 AsicBoost 操作网络是否会因此对网络造成任何不利影响,除了本表中提到的以外。
不适用
通过发出版本信号和警告消息降低在比特币核心中执行软分叉升级的能力
不适用
显式 AsicBoost 使用版本字段,如上图左上角所示。 这具有表明矿工已准备好通过软分叉升级的功能。 Explicit AsicBoost 可能会在此字段中使用空格,这可能会阻止它用作增强信号。 然而: 1. 显式 AsicBoost 可能不需要所有 4 个字节,因此一些字节可能会保留用于软分叉信号。 这减少了同时软分叉的数量。
2. 很多人认为软分叉信号系统无论如何都是一个失败的系统。 矿工经常提供相互矛盾的信号,导致信号不可靠。
显式 AsicBoost 的另一个缺点是比特币核心软件可能会看到一个不寻常的版本字段,并认为网络已经以未知方式升级,从而向用户发送警告消息。
我们认为 AsicBoost 不一定是整体网络的负面因素。 虽然隐式 AsicBoost 激励小块的挖掘确实是一个问题,但与显式 AsicBoost 相关的大多数问题都可以减轻或规避。 特别是,如果 BDPL 系统被证明是有效的,那么使用显式 AsicBoost 可能不会产生显着的负面影响——至少目前是这样。