当前位置:首页>区块链

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

日期:2023-03-14

来源:玫瑰财经网

浏览:

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

    区块链分叉分为软分叉和硬分叉。本文主要讨论硬分支,这是一种不支持向后兼容性的软件升级方法。硬分叉是共识的分裂或变化。共识是区块链系统中各节点实现数据一致性的算法。通常,每个节点必须运行相同的规则。例如,比特币在PoW(工作量证明)共识的基础上运行,以太坊也是PoW共识,最近通过“The Merge”转换为PoS共识算法。

    分叉有很多原因。这是区块链中常见的现象,一般是短距离的分叉,这与共识算法有关,有时会出现在同一高度相互竞争的区块,但最终有些区块被丢弃,只剩下一个区块。但是硬分叉不同。这是一个有计划的分叉,部分节点客户端分发了与原网络不同的程序版本,生产的区块只能在分叉链上通过验证,不能被原网络接受,也不接受原网络的区块

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

    。(阿尔伯特爱因斯坦,Northern Exposure,成功)例如,最近流行的EthereumPoW(ETHW)分叉。

    成功分离区块链并不容易。需要进行基本修改,以确保安全操作,而不是直接复制原始网络中的代码。为此,总结了一些常见的安全问题和保护方法。

    网络层

    分支链是独立于原始网络的块链,因此必须首先与网络层(P2P)隔离。

    1、种子节点

    种子节点(也称为bootnode或seednode)是在区块链开始时网络首先尝试连接的节点。分叉链在启动时,首先连接种子节点列表中的节点,找到网络中的其他对等节点,然后进一步同步块,以达成协议。因此,必须修改种子节点列表,以防止连接到原始网络的节点。

    2、外星人攻击。

    种子节点列表发生变化并不意味着分区网络不连接到原始网络。因为双方的P2P协议相同。如果一个节点不小心添加到另一个网络的节点连接,则两个节点成功握手,并将彼此添加到节点地址池中。此外,双方节点将自己节点的地址共享给对方,使双方网络节点池相互污染。对于这个问题,慢雾以前曾单独公开过《冲突的公链!来自 P2P 协议的异形攻击漏洞》。

    为了解决地址相互污染的问题,需要对通信协议进行网络识别。以前的etherboard不支持网络分隔,但以后的版本添加了NetworkID作为网络分隔符。NetworkID通常是每个链的ChainID。例如,etherboard的NetworkID和ChainID均为1,ETHW的早期版本中没有分支NetworkID

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

    共识

    1、交易隔离。

    通常与区块链交互时,我们需要用自己的私钥签署交易,然后这笔交易通过网络广播,由矿工或出区块节点包装成区块。(阿尔伯特爱因斯坦,Northern Exposure

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

    ,成功)但是,如果区块链中出现分叉,这笔交易可以被两个网络分别包装成不同的区块。假设这是原始链中的转移,分支链中也可能存在相同的转移。很明显,这是可能导致资产损失的意想不到的行为。

    此时需要再生保护交易,之前以太坊版本没有进行这种保护,之后EIP155之后在交易结构中添加了ChainID,使用户签署的交易只用于当前网络。如果你指以太坊,就要重新定义ChainID。当然,配置中不仅仅修改ChainID。因为分叉链必须与旧块兼容,所以在分叉高度后使用新的ChainID,这样分叉链才能正常工作。

    如果比特币的交易结构中没有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、价格剧变。

    区块链断裂,一个应用程序在两条链上同时运行。用户应该使用哪个链的应用程序(约翰f肯尼迪,应用程序,应用程序,应用程序,应用程序,应用程序,应用程序)哪个是“正统”的这个问题又回到共识上来了。一般来说,如果某个区块链有正统的共识,那么上面的资产将保持原来的价值共识,而其他区块链的资产将瞬间失去价值。

    这种价格的急剧变化可能导致DeFi应用程序彻底崩溃,贷款应用程序绝对不可能平仓。一些有识之士抓住分叉的时间窗口,通过AMM等方式将“0”的资产转换为主体代币,从而保留了部分价值,在ETHW季度事件中,我们观察到了大量分叉链的套利行为。

    摘要

    因此,可以在网络层、共识层、应用层分析区块链分叉的安全性

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

    ,以确定技术风险,对分叉要非常小心地处理。另外,很多分叉背后不仅有技术变化的需要,还可能有事业上的直接利益。例如,发起人可以直接从分叉处获得大量分叉,这都需要用户正确认识,避免不必要的损失。

    区块链是一个不依赖于一个个人或组织的集中式系统,它给社区用户带来混乱,但为了更好地服务社会,它促进了系统的发展。

    单击下载

    European Exchange金融投资European Exchange(也称为Eurokx)是世界领先的数字资产交易所,为全球用户提供比特币、莱特货币、以太网货币等数字资产的现货和衍生品交易服务,并使用区块链技术为全球交易者提供高级金融服务。这是一个非常古老的数字货币交易平台,平台为我们提供安全、专业的数字货币交易经验,为新手提供完整的流程指导,使其易于启动,通过客服24小时在线回复提供最佳服务。

相关文章阅读

Copyright (c) 2022 玫瑰财经网 版权所有

备案号:冀ICP备17019481号

玫瑰财经网发布此信息的目的在于传播更多信息,与本站立场无关。玫瑰财经网不保证该信息(包含但不限于文字、视频、音频、数据及图表)全部或者部分内容的准确性、真实性、完整性、有效性、及时性、原创性等。
相关信息并未经过本网站证实,不对您构成任何投资建议,据此操作,风险自担。