区块链百科

深度解析合并挖矿:技术原理、安全优势及未来演进

什么是合并挖矿?技术优势、竞争者与未来方向

本指南旨在深入解析合并挖矿(Merge Mining)的技术内核、历史演变及其在区块链生态系统中的战略地位。通过阐释如何利用这一机制以较低边际成本增强区块链安全性,读者将能透彻理解其在保障网络健壮性方面的关键作用。这是一份面向致力于构建或维护高安全性区块链架构专业人士的综合参考资料。

工作量证明(PoW)构成了中本聪共识(Nakamoto Consensus)的基石。其核心职能包括两方面:一是作为抵御女巫攻击的选择区块生产者机制;二是通过不断增加的挖掘成本为区块链提供恢复基线的安全保障。正是基于这两点,PoW确立了比特币区块链的安全性基础。

合并挖矿技术允许矿工在保护一条区块链的同时,利用相同的计算资源保护另一条区块链。正如PoW驱动中本聪共识一样,合并挖矿也为多链共识提供了动力支持。采用合并挖矿的链条可沿用中本聪共识或其变体(如GHOST或DECOR协议)。实施该技术的行为统称为“合并挖矿”。实现两条链合并挖矿的唯一前提条件是它们必须使用相同的块头哈希函数及难度检查机制来达成PoW。

合并挖矿的运行逻辑相对直观。假设存在一条主链(例如比特币)和一条辅助链S。设hB和hS分别为两者的新区块头,H代表任意加密哈希函数。矿工需构建hB模板,使其显式引用H(hS)。挖矿过程与普通PoW差异微小:矿工寻找满足比特币网络难度目标(即SHA256D(hB) < targetB)的随机数以生成有效的比特币区块头。若找到的区块头同时满足辅助链的难度要求(SHA256D(hB) < targetS),则该hB、hS及相关链接信息共同构成合并挖矿区块的有效PoW。完整的合并挖矿区块不仅包含PoW数据,还附带辅助链特定的剩余数据(如hS引用的交易)。随后,该区块被发送至辅助链网络以完成上链。简言之,合并挖矿实现了以单次PoW成本生成两个独立工作量证明的目标。

什么是合并挖矿?

合并挖矿本质上是一种“一次运算、双重收益”的策略。其核心在于矿工无需额外增加电力消耗或硬件负荷,即可利用同一套算力同时开采两种代币。这两种代币通常共享相同的挖矿算法(例如均使用Scrypt算法)。主链与子链通过一种名为“父子链验证”的机制实现协同运作。

可以将此过程类比为手持一张彩票参与两项抽奖活动:若幸运中奖,两份奖励均可领取。对矿工而言,操作流程与普通挖矿无异,几乎无感,但潜在收益可能实现翻倍。

历史

合并挖矿的历史几乎与比特币本身同样悠久。2010年,中本聪首次提出利用合并挖矿技术保护拟建的BitDNS侧链,该侧链旨在存储去中心化域名。这一构想迅速落地,并以Namecoin山寨币的形式问世。2011年,Namecoin正式开启与比特币的合并挖矿模式,以此提升自身网络的安全性。

此后,其他区块链项目纷纷效仿,尝试与比特币进行合并挖矿,但结果参差不齐。2012年,LukeJr对Coiledcoin发动了51%攻击,当时该项目正与比特币合并挖矿。这一事件警示业界:合并挖矿并非万能的安全药方。新的合并挖矿链必须与原有链保持高度一致的激励机制,方能确保机制的安全有效。

2014年发生了一件标志性事件。由于狗狗币(Dogecoin)与莱特币(Litecoin)采用了相同的挖矿算法,矿工开始在两者间集体切换算力流向。当狗狗币盈利更高时,全网算力转向狗狗币,加速了其出块速度;而当狗狗币难度上调导致挖矿利润下降时,矿工又集体回流至莱特币以最大化收益。这种循环导致算力波动剧烈,进而引发区块率和代币发行速率的不稳定。最终,狗狗币因算力过低而被认为缺乏足够安全性。为此,狗狗币社区决定接受来自莱特币的合并挖矿区块。直至今日,双方社区未再发生相互攻击事件,原因主要包括:首先,合并挖矿使双方区块难度和出块率趋于稳定,符合两方利益;其次,矿工能在难度调整前的宽限期内获得收入翻倍的红利;第三,拥有相当算力的情况下,单一实体难以轻易攻击另一条链;第四,两个社区间不存在严重的意识形态对立(相较于某些具有强烈归属感的社区)。归根结底,矿工始终追逐最赚钱的链条。

独立区块链

合并挖矿备受青睐的原因之一,在于它能催生出完全独立的区块链系统。所谓“独立”,是指即便主链因技术故障暂停运营,或因社区分裂而停滞,二级链仍能依靠合并矿工持续运行。即使主链消失,辅助链依然能从合并矿工处获取工作负载。早期比特币尚不确定未来走向时,这一特性尤为重要。例如,Rootstock侧链选择合并挖矿作为其共识协议(而非像Liquid那样采用联合共识),部分原因是它在“区块大小战争”期间诞生,面临比特币被黑客攻击或社区分裂的真实风险。

区块率

相较于继承比特币安全性的其他替代方案,人们更倾向于合并挖矿的一个重要原因在于,在此模式下二级链能够实现更高的出块率。

继比特币之后诞生的多数区块链均旨在支持更高的区块率(即更短的区块间隔时间)。尽管有人担忧这会影响去中心化(可能导致单个矿工产生更多孤立块,迫使他们加入大型矿池以维持竞争力),但高区块率亦有显著优势,最直观的是用户交易确认速度更快。此外,较高的区块率还有一个反直觉的好处:支付奖励的波动幅度减小。这在一定程度上降低了矿工加入大型矿池的动力,从而促进了去中心化。出块率实质上代表了可用性去中心化之间的权衡,找到理想平衡点颇具挑战。

因此,在设计基于比特币合并挖矿的区块链时,需谨慎设定区块率。若平均出块间隔低于10秒且未采用更普惠的共识协议,可能会给合并矿池带来巨大的带宽压力,增加运营成本,使其在与非合并矿池的竞争处于劣势。

合并挖矿的竞争者

除中本聪合并挖矿外,还有其他继承主链安全性的方法。最早由Mastercoin/OMNI协议实现,其次是Counterparty协议。新项目如RGB也采用了类似思路。该方法的核心是在比特币交易中嵌入替代账本的数据。在RGB中,这种嵌入完全隐藏在Taproot树结构中。然而,Mastercoin、Counterparty和RGB的账本历史并未形成独立的区块链,它们仅是比特币区块中嵌入的特殊交易的串行记录。另有一些方法试图通过完全或部分同步两条区块链来创建独立的安全链,通常涉及在OP_RETURN输出中发布数据。代表性案例包括Veriblock、PoX和Syncchains。在这些“同步”链中,主链区块的回滚会自动导致后续出现的次链区块失效。其缺点在于,二级节点必须同时运行主链节点。虽然链接的区块链能提供共享安全性及快速的跨链传输,但若引入另一个交换共识协议(如比特币NG的微区块),同步共识无法为辅助链提供更快的出块率。相比之下,合并挖矿链可使用任意区块率,尽管如前所述,存在一个阈值限制,一旦超出,高昂的带宽需求将使合并挖矿不再经济可行。

评判与发展

学术界已对中本聪共识下的合并挖矿进行了分析,并涌现出支持与反对的相关研究论文。然而,现有研究多聚焦于合并挖矿对去中心化的实际影响,缺乏形式化的方法论研究。学术领域尚未广泛探讨Namecoin合并挖矿之外的其他方法,尽管Namecoin的模式已得到大幅改进。2018年,Rootstock比特币合并挖矿侧链的推出重燃了这一领域的研究热情,促成了如分叉感知变体(fork-aware variants)等更安全协议的出现,其中部分改进已在Rootstock的连续网络升级中落地。然而,新的理论研究仍分散于在线文章和RSKIP(砧木改进提案)中,亟需进一步系统化整理。新一代合并挖矿变种(将在下文讨论)能够抵御已知攻击。普遍认为,当合并挖矿算力占比极低(即小于主链算力的10%)时,侧链难以抵御双花攻击;但对于某些新协议变体,在稍微不同的安全性和活性假设下,它可以抵御此类攻击。

Namecoin 合并挖矿设计

Namecoin与比特币的合并挖矿机制十分简洁。在生成交易时,矿工在coinbase字段末尾写入4个字节,标记后续存在AuxPow记录。这4个字节被称为魔术字节,Namecoin借此快速定位AuxPow记录。接着,矿工需存储Merkle树的根哈希摘要,该树包含了正在合并挖矿的不同区块链的块哈希。随后是treeSize字段,指定树中包含的不同区块链合并挖矿块的数量,以及treeNonce字段(旨在防止链ID冲突,但因设计缺陷未被使用)。下图展示了一个带有AuxPow记录的比特币区块,该记录链接了来自4个不同合并挖矿区块链(W、X、Y和Z)的区块:

Namecoin 合并挖矿设计

为了使Namecoin节点验证Namecoin区块的工作量证明,该区块必须包含以下数据字段:

  • 证明Coinbase交易存在于比特币区块交易树中的Merkle路径
  • Coinbase交易本身,其中包含AuxPow树根
  • 在AuxPow树中查找Namecoin区块哈希所需的Merkle路径

Namecoin共识包含一条规则,用于验证合并挖矿证明及比特币块投的工作量证明(忽略其他无关字段)。

主链/次级链的区别

我们通常区分单个主区块链与所有合并挖矿的二级区块链,因为二级链区块需要额外的Merkle证明来验证工作量。但从博弈论角度看,主链的概念并不绝对。所有链条共同为安全预算做出贡献。如果主区块链算力下降至合并挖矿总算力的10%,那么可以说辅助区块链实际上已成为事实上的主链,因为它现在承担了大部分安全预算。这种界限可能更加模糊,因为合并挖矿的“二级”区块链可以从多个“主”链获取工作量,Rootstock即为典型例子。虽然Rootstock的大部分算力来自比特币矿工,但有时也有一部分来自比特币现金矿工,因此它继承了多条主链的算力。

即使出于哲学原因不愿从比特币SV等获取算力,这也难以强行阻止。从Rootstock共识的角度看,比特币和比特币SV的区块头外观相同(虽可利用父区块或难度字段粗略区分,但并不精确)。因此,结合所有基于SHA256D的区块链(包括比特币)的算力,Rootstock可能拥有超过比特币自身的总算力。

因此,我们遵循语法定义:主链是具有较短合并挖矿证明的链,通常仅含单个块头;而辅助链则是那些需要附加块头及其嵌入在第一个块头中的哈希的链。

区块链中立

2011年至2013年间,bitcointalk.org论坛上提出了多项提案,建议运行比特币硬分叉,将工作量证明提取到单独的“主”块头链中,并使所有合并挖矿区块链(含比特币)均源自此主链。所有区块链块的哈希将成为单个PoW Merkle树的一部分。然而,这些提案未获关注(总体而言,任何比特币硬分叉提案均未得到重视)。

事实上,主块头根本无需成为链的一部分。块头可以非常精简,仅需指定链块哈希的Merkle树根以及寻找PoW所需的随机数。正如后续文章所示,在这个小块头中加入时间戳字段有助于提升所有合并挖矿链的安全性。这个虚构的小块头结构如下图所示,其中X和Y指代其他合并挖矿区块链:

没有任何主区块链的合并挖矿设计

若采用此种数据结构,比特币合并挖矿将不再有传统意义上的主链之分。

在分析矿工使用相同工作量证明保护多条区块链的动机时,我们必须将所有这些区块链视为平等链条进行分析。为了评估合并挖矿激励,应关注SHA256D矿工(实际使用的哈希函数)而非单纯的比特币矿工。我们需要综合分析所有合并挖矿区块链及其为矿工提供的激励措施。

合并挖矿侧链

比特币侧链增强了比特币的效用,从而为其价值增值贡献力量。借助侧链,比特币持有者可以进行私密支付、创建DAO并探索创新用例,而无需将比特币兑换成其他波动性更大的货币(常被比特币至上主义者蔑称为“垃圾币”)。目前主流的比特币侧链包括采用联合共识的Liquid和采用合并挖矿的Rootstock。

Rootstock侧链提供更低廉的支付费用和更优越的去中心化金融(DeFi)应用体验。对于比特币爱好者而言,一项极具价值的去中心化应用是由rBTC抵押支持的稳定币自贷服务。该方案允许持有者使用以法定货币计价的代币,避免在日常支出中被迫抛售比特币。

业界普遍预计,比特币上的DeFi在未来几年将显著增长,并涌现出许多不可预见的新用例。这也是大多数比特币用户支持Rootstock并期待其快速发展的原因。

Rootstock侧链专门旨在为比特币社区提供激励,特别是吸引比特币矿工参与。这种共享激励和社区纽带使得比特币与Rootstock的成功合并挖矿成为可能。

在下篇文章中,我将详细解读Rootstock的合并挖矿共识模型,展示其社区创造的多项大幅提高安全性的创新举措,并阐述合并挖矿如何通过扩大长期安全预算使比特币受益。

总结

合并挖矿是基于PoW的共识协议的重要组成部分,它使区块链能够在不重复投入挖矿成本的前提下继承主链的安全性。相较于权威证明(PoA)或权益证明(PoS),采用合并挖矿的中本聪共识能带来更高程度的去中心化。然而,主链安全性的共享仅在互惠互利的基础上成立。因此,合并挖矿是比特币侧链的最佳选择之一,能为比特币网络增添巨大价值。Rootstock作为首个图灵完备的比特币智能合约侧链,目前有超过50%的比特币算力参与其合并挖矿,且该比例逐年上升,使其成为目前最安全的智能合约网络之一。Rootstock采用了该协议的分叉感知变体,相关内容将在下一篇文章中深入探讨。

至此,关于什么是合并挖矿?技术优势、竞争者与未来方向的文章介绍完毕。如需了解更多合并挖矿的详细内容,请查阅往期文章或继续关注后续更新,感谢大家的支持!