木星链 木星链
Ctrl+D收藏木星链

区块链:区块链分叉带来的安全挑战

作者:

时间:1900/1/1 0:00:00

区块链分叉分为软分叉和硬分叉。本文主要探讨的是硬分叉,一种不支持向后兼容的软件升级方式。硬分叉是共识的分裂或者改变,共识就是区块链系统中各节点达成数据一致性的算法,正常情况下每个节点需要运行相同规则的算法,例如比特币运行的是基于 PoW(工作量证明)共识,以太坊曾经也是 PoW 共识,最近通过 “The Merge” 切换到了 PoS 共识算法。

分叉的原因有很多,在区块链当中是一种很常见的现象,通常是短距离的分叉,这和共识算法有关,同一个高度上有时会出现相互竞争的区块,但最终有的区块会被放弃,只保留一个区块。但硬分叉不同,这一种是有计划有目的的分叉,一些节点客户端部署了与原网络不同的程序版本,生产出的区块只能在分叉链上通过验证,无法被原网络接受,也不接受原网络的区块。例如近期热门的 EthereumPoW(ETHW)分叉。

贵阳贵安加快推进主权区块链贵阳节点建设:7月29日,《人民日报》整版刊文《中国数谷 爽爽贵阳 奋力在实施数字经济战略上抢新机》,报道了贵阳贵安以大数据重塑城市核心竞争力,完成大数据产业发展。贵阳贵安深入实施创新能力强化工程,加快推进贵阳市国产数据库应用试点工作,推进主权区块链贵阳节点建设,探索“享链”应用场景落地,全面开展《数典》、大数据法规体系及标准体系、大数据人才体系等理论体系创新。[2021/7/29 1:22:45]

如果要成功分叉一条区块链并不容易,并非直接复制原网络的代码即可,需要进行基本的修改才能保证它安全运行,为此,我们总结了几种常见的安全问题及防护方法。

网络层

由于分叉链是独立于原网络的区块链,首先需要在网络层(P2P)进行隔离:

1、种子节点

种子节点,也称 bootnode 或者 seednode,是区块链启动时网络首先会尝试进行连接的节点。分叉链在启动时首先连接种子节点列表里的节点,从而进一步发现网络中其它的对等节点,然后才能进一步同步区块,达成共识。因而必须要修改种子节点列表,防止连接到原网络的节点。

港股区块链概念股走强,火币科技涨近13%:港股区块链概念股走强,火币科技涨近13%,雄岸科技涨近11%,欧科云链涨9.6%,众安在线和小米集团涨约2.5%。[2021/1/29 14:17:41]

2、异形攻击

即使种子节点列表改变了,但并不代表分叉网络不会连接到原网络,因为双方的 P2P 协议是相同的,如果有一个节点无意中添加了另外一个网络的节点连接,那么两个节点将成功握手,并将对方添加到节点地址池。不仅如此,双方节点还会将自己节点里的地址分享给对方,进而造成双边网络节点池互相污染。关于这个问题,慢雾此前曾单独披露过《冲突的公链!来自 P2P 协议的异形攻击漏洞》。

为了解决地址池互相污染的问题,需要在通信协议上做网络识别。早期的以太坊并不支持网络分隔,但后续的版本中在协议里加入了 NetworkID 做为网络区分的标志,NetworkID 通常是每个链的 ChainID,例如以太坊主网的 NetworkID 和 ChainID 都为 1,而 ETHW 初始版本中并未对 NetworkID 进行分叉,可能存在异形攻击漏洞。

法国国防承包商Thales采用区块链技术以符合北约标准:法国国防承包商Thales周四(2020年11月5日)在其网站上发表声明,宣布了采用区块链的消息。根据声明,Thales正在部署这项新技术,以符合北约的标准。作为声明的一部分,Thales透露,计划中的基于区块链的管理系统将用于无线电通信、海军和航空航天设备。据悉,DLT部署活动将在该公司位于西班牙的中心进行。(BTCManager)[2020/11/7 11:56:36]

在比特币网络中,使用的是 Magic 值来标识不同的网络,通常在 chainparams 里进行定义,例如比特币主网值为 F9BEB4D9,测试网值为 FABFB5DA。

共识层

1、交易隔离

通常与区块链交互时,我们需要用自己的私钥签署一笔交易,随后这笔交易被广播到网络,并被矿工或者出块节点打包到区块中。但如果区块链出现分叉,这笔交易可能会被两个网络分别打包到不同的区块当中,假设这是一笔原链上 的转账,那么分叉链上也会有相同的一笔转账,显然这是一个非预期行为,会造成资产损失。

分析:若美国新法案和纳斯达克IPO新规实施,中国区块链公司或难以上市:美国参议院上周通过议案《外国公司问责法案》,禁止不遵守美国审计和监管标准的中国公司在美国证券交易所上市。对于中国ASIC硬件制造商而言,该议案影响很大,可能导致已经上市的公司退市。据路透社报道,纳斯达克将对IPO实施新的限制,此举将加大一些中国企业上市的难度。消息人士称,新规将要求包括中国在内一些国家的公司通过IPO筹资额必须超过2500万美元,或至少达到上市后市值的四分之一。纳斯达克将对审计中国上市公司账目的美国小公司进行审计。

CoinGeek文章称,中国小公司通常追求IPO,因为能让创始人和早期支持者套现。创始人能利用在纳斯达克上市的新身份,说服中国贷款机构为其提供资金,或在上市后从中国地方政府获得补贴。ASIC硬件制造商的未来并不能指望投资者。由于BTC价格停滞,对其产品没有需求。撇开地缘问题不谈,他们建立的收入模型是基于一种没有内在价值或效用的数字货币的需求增长。(CoinGeek)[2020/5/26]

这时就需要对交易进行重放保护,在早期以太坊的版本中没有做这样的保护,后来 EIP155 之后在交易结构中加入了 ChainID,确保用户签署的交易只用于当前网络。如果对以太坊进行分叉,那么也需要对 ChainID 进行重新定义,当然这并不是只修改配置里的 ChainID 这么简单,因为分叉链需要对旧的区块做兼容,所以需要在分叉高度之后使用新的 ChainID,才能保证分叉链正常运行。

动态 | 日本Recruit公司投资区块链公司Breez Development:据theglobalrecruiter报道,日本Recruit公司投资区块链公司Breez Development,该公司提供“Lightning Network wallet”以改善加密货币支付的处理。[2019/6/26]

比特币的交易结构中不存在 ChainID,那么它是如何做重放保护的呢?比特币使用了一种叫做 UTXO 的模型,简单说它是对一笔交易(UTXO)进行花费,而不是对账号进行花费,通常全新启动的网络不会存在相同的两笔交易,也就不存在重放的场景。

但是在硬分叉的情况下,还是会存在交易重放的问题,例如 2017 年的 BCH 分叉以及后来的BSV分叉。BCH 通过在交易数据签名添加SIGHASH_FORKID(0x40),使得 BCH 上的交易和 BTC 的交易不再互相兼容,从而达到重放保护的目的。

2、算力调整

在分叉前,原链占有全网所有的算力,那么依据 PoW 共识算法,它的出块计算难度也是比较高的。分叉后,算力分散到不同的区块链上,那么分叉链由于共识不足通常无法获得足够的算力去生产新的区块,区块的增长会陷入停滞。这时有必要降低分叉后的初始计算难度,给分叉链赢得一个快速调整算力的时间窗口。

3、防范 51% 攻击

网络和交易都隔离开了,区块链分叉了,新区块顺利产出,一切都看似正常。然而安全问题依旧突出,它依旧存在一种更普遍、更难以防御的攻击:51% 攻击。

挖矿是逐利的,当出现分叉币时,哪边的挖矿收益高矿工就会把算力切换到那个网络,但现实是分叉币往往币价低,导致整体的算力十分低。以 ETHW 分叉为例,我们从 2miners 上看到,原 ETH 网络算力峰值最高超过 900TH/s,而在写稿时 ETHW 的算力只有 30TH/s 左右,大量算力消失并不是好事,它随时可以对 ETHW 发起 51% 攻击。

对于这种 51% 攻击的防范几乎没有什么很好的方法,只能通过增加确认数来防范。

应用层

我们把建立在交易上的应用,如基于虚拟机的智能合约,统归为应用层。区块链在分叉时,也会对运行在区块链上的应用产生巨大影响。

1、签名重放

签名重放与上文提到的交易重放是相同道理的,有一些合约,例如 Gnosis Safe,它会在合约里验证用户的签名,如果签名里没有包含 ChainID,那么这个签名非常可能可以在两个链上重放,导致资产损失。

2、预言机失效

分叉后的区块链多数智能合约依旧可以正常运行,例如 Token 合约、AMM 合约,这些自运行系统不依赖于链下数据就可以稳定运行,但类似 MakerDAO 等借贷系统,高度依赖预言机的价格数据,在失去链下喂价支持后,它将无法继续运行下去。

3、价格剧变

区块链分叉了,一个应用同时运行在两个链上,用户该使用哪个链上的应用?哪个算是“正统”的呢?这个问题又回到了共识上,通常哪个区块链拥有正统的共识,那么它上面的资产就会保留原有的价值共识,而另一个区块链上的资产会在瞬间失去价值。

这种价格上的剧烈变化,会导致 DeFi 应用彻底崩溃,借贷应用永远无法平仓,有一些有识之士会抓住分叉的时间窗口,把“归零”的资产通过 AMM 等应用兑换成主链代币,从而保留了一些价值,在 ETHW 分叉事件中,我们观察到了大量分叉链上的套利行为。

总结

至此,我们从网络层、共识层和应用层对区块链分叉的安全性进行了分析,可以看到其中存在的技术风险,对于分叉我们需要十分审慎地对待。并且,不少分叉的背后不仅仅是技术变革的需要,有的可能存在商业上的直接利益,例如发起方在分叉中直接获取大量的分叉币,这些都需要用户准确认识,避免不必要的损失。

区块链是一种去中心化的系统,它的升级不依赖于单一个人或组织,因此分叉在区块链里难以避免,虽然给社区用户带来混乱,但也促进了系统向前发展以更好地服务社会。

慢雾科技

个人专栏

阅读更多

财经法学

成都链安

金色早8点

Bress

链捕手

PANews

Odaily星球日报

标签:区块链HAIChainCHA有人靠区块链4天就挣了30万吗RentalChainIENETChainLipChain

芝麻开门交易所下载热门资讯
Opyn:链上期权 迈入非线性加密衍生世界的窄门

金融市场的反身性告诉我们,去人少的地方,往往有更多的机会。加密期权,是一扇少有人走的窄门,却一路金光灿灿.

1900/1/1 0:00:00
以太坊:以太坊合并完成后专访V神:转POS后中心化风险被”过度炒作”

以太坊合并完成后,Vitalik Buterin (以下简称V神)接受 Bankless 专访,分享了他对合并、以太坊路线路、质押等的看法,比推编辑部为您整理了采访中的关键要点.

1900/1/1 0:00:00
WEB:为什么我说“链上KYC”是Web3失败的前奏

近日,Galxe(原 Project Galaxy)宣布推出 Galxe Passport。Galxe 称该项目可作为用户在 Web3 中的通用身份,且能够安全且匿名地存储身份信息.

1900/1/1 0:00:00
NFT:盘点互联网大厂的Web3布局

2021年以来,元宇宙、NFT、数字藏品等新概念、新技术的不断破圈,让 Web3 得到了前所未有的关注,即使是相对保守的国内市场,也有不少互联网大厂和传统品牌相继入局.

1900/1/1 0:00:00
ETH:以太坊合并后 展望质押经济前景与 DeFi 新机遇

撰文:Loki,Huobi Incubator一直以来大量的挖矿收益被矿工获取,以太坊 2022 年 7 月矿工总收入达到了 5.96 亿美元,按照这一数据估算.

1900/1/1 0:00:00
ETH:Cobo安全团队:ETH硬分叉里的隐藏风险和套利机会

随着 ETH 升级 PoS 共识系统,原有的 PoW 机制的 ETH 链在部分社区的支持下成功硬分叉(下文简称 ETHW).

1900/1/1 0:00:00