火星链 火星链
Ctrl+D收藏火星链
首页 > 非小号 > 正文

区块链:一文浅析区块链分叉带来的安全挑战

作者:

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

区块链分叉分为软分叉和硬分叉。本文主要探讨的是硬分叉,一种不支持向后兼容的软件升级方式。硬分叉是共识的分裂或者改变,共识就是区块链系统中各节点达成数据一致性的算法,正常情况下每个节点需要运行相同规则的算法,例如比特币运行的是基于PoW共识,以太坊曾经也是PoW共识,最近通过“TheMerge”切换到了PoS共识算法。分叉的原因有很多,在区块链当中是一种很常见的现象,通常是短距离的分叉,这和共识算法有关,同一个高度上有时会出现相互竞争的区块,但最终有的区块会被放弃,只保留一个区块。但硬分叉不同,这一种是有计划有目的的分叉,一些节点客户端部署了与原网络不同的程序版本,生产出的区块只能在分叉链上通过验证,无法被原网络接受,也不接受原网络的区块。例如近期热门的EthereumPoW分叉。

巴塞尔委员会批准将于2025年实施的全球加密银行规则:金色财经报道,根据周五的一份声明,巴塞尔银行监管委员会(BCBS)已批准其全球加密银行规则,将于2025年1月1日实施。BCBS是银行审慎监管的主要全球标准制定者,新规则建议银行对某些加密资产的敞口不得超过2%,通常应低于1%。这些特定资产是代币化的传统资产,包括NFT、稳定币和不符合分类条件的无担保加密资产。此外,清单中确实符合标准的资产“根据现有巴塞尔框架中规定的基础风险权重的资本要求”。BCBS设定的分类条件包括确保加密货币通过赎回风险测试和基础风险测试,报告称,赎回风险测试是为了确保储备资产足以使加密资产随时可赎回,基础风险测试旨在确保加密资产的持有人能够在市场上以合理的锚定价值出售。[2022/12/17 21:50:13]

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

数据:8月以来ETH2.0新质押14.87万枚ETH:金色财经消息,数据显示,当前以太坊2.0存款合约地址已收到约1334万枚ETH,价值超218.47亿美元。8月以来,ETH2.0 合约新质押14.87万枚ETH,占流通供应量的0.12%。[2022/8/20 12:37:32]

由于分叉链是独立于原网络的区块链,首先需要在网络层进行隔离:1、种子节点种子节点,也称bootnode或者seednode,是区块链启动时网络首先会尝试进行连接的节点。分叉链在启动时首先连接种子节点列表里的节点,从而进一步发现网络中其它的对等节点,然后才能进一步同步区块,达成共识。因而必须要修改种子节点列表,防止连接到原网络的节点。2、异形攻击即使种子节点列表改变了,但并不代表分叉网络不会连接到原网络,因为双方的P2P协议是相同的,如果有一个节点无意中添加了另外一个网络的节点连接,那么两个节点将成功握手,并将对方添加到节点地址池。不仅如此,双方节点还会将自己节点里的地址分享给对方,进而造成双边网络节点池互相污染。关于这个问题,慢雾此前曾单独披露过《冲突的公链!来自P2P协议的异形攻击漏洞》。为了解决地址池互相污染的问题,需要在通信协议上做网络识别。早期的以太坊并不支持网络分隔,但后续的版本中在协议里加入了NetworkID做为网络区分的标志,NetworkID通常是每个链的ChainID,例如以太坊主网的NetworkID和ChainID都为1,而ETHW初始版本中并未对NetworkID进行分叉,可能存在异形攻击漏洞。在比特币网络中,使用的是Magic值来标识不同的网络,通常在chainparams里进行定义,例如比特币主网值为F9BEB4D9,测试网值为FABFB5DA。共识层

Tether、Bitfinex和Hypercore合作推出点对点通信应用Keet:金色财经消息,Tether、Bitfinex与Hypercore开源协议团队合作推出基于底层技术Holepunch的点对点(P2P)加密通信应用Keet。目前该应用为Alpha版本,正式版本预计将于2022年11月推出。

Keet仅可在通话参与者之间共享端到端加密数据,视频通过直接连接进行操作,而无需使用限制性能的服务器,另外,在Keet共享文件时不必等待上传,其他点对点参与者可以立即从源下载。此外,Keet还内置比特币闪电和USDT小额付款。(Cointelegraph)[2022/7/25 2:36:25]

1、交易隔离通常与区块链交互时,我们需要用自己的私钥签署一笔交易,随后这笔交易被广播到网络,并被矿工或者出块节点打包到区块中。但如果区块链出现分叉,这笔交易可能会被两个网络分别打包到不同的区块当中,假设这是一笔原链上的转账,那么分叉链上也会有相同的一笔转账,显然这是一个非预期行为,会造成资产损失。这时就需要对交易进行重放保护,在早期以太坊的版本中没有做这样的保护,后来EIP155之后在交易结构中加入了ChainID,确保用户签署的交易只用于当前网络。如果对以太坊进行分叉,那么也需要对ChainID进行重新定义,当然这并不是只修改配置里的ChainID这么简单,因为分叉链需要对旧的区块做兼容,所以需要在分叉高度之后使用新的ChainID,才能保证分叉链正常运行。比特币的交易结构中不存在ChainID,那么它是如何做重放保护的呢?比特币使用了一种叫做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%攻击的防范几乎没有什么很好的方法,只能通过增加确认数来防范。应用层

Binance谈救市:会选择性帮助行业参与者:6月23日消息,Binance在其官网发文表示,针对当前的市场环境,Binance有责任保护用户,并帮助行业参与者生存和发展。同时Binance表示,救助会针对项目情况区别对待:单纯因为设计不佳、管理不善、经营不善导致失败的糟糕项目,救助没有意义;对产品与市场的契合度高、潜力巨大、商业模式良好但现金流出现困难的团队,Binance会对其项目进行救助。

Binance最后表示当前市场与2018年的区别在于现在市场上有较大杠杆参与,Binance提醒行业和用户注意杠杆风险。[2022/6/23 1:26:51]

我们把建立在交易上的应用,如基于虚拟机的智能合约,统归为应用层。区块链在分叉时,也会对运行在区块链上的应用产生巨大影响。1、签名重放签名重放与上文提到的交易重放是相同道理的,有一些合约,例如GnosisSafe,它会在合约里验证用户的签名,如果签名里没有包含ChainID,那么这个签名非常可能可以在两个链上重放,导致资产损失。2、预言机失效分叉后的区块链多数智能合约依旧可以正常运行,例如Token合约、AMM合约,这些自运行系统不依赖于链下数据就可以稳定运行,但类似MakerDAO等借贷系统,高度依赖预言机的价格数据,在失去链下喂价支持后,它将无法继续运行下去。3、价格剧变区块链分叉了,一个应用同时运行在两个链上,用户该使用哪个链上的应用?哪个算是“正统”的呢?这个问题又回到了共识上,通常哪个区块链拥有正统的共识,那么它上面的资产就会保留原有的价值共识,而另一个区块链上的资产会在瞬间失去价值。这种价格上的剧烈变化,会导致DeFi应用彻底崩溃,借贷应用永远无法平仓,有一些有识之士会抓住分叉的时间窗口,把“归零”的资产通过AMM等应用兑换成主链代币,从而保留了一些价值,在ETHW分叉事件中,我们观察到了大量分叉链上的套利行为。总结

Coin98 Labs宣布收购越南游戏工作室Yunero Studios:6月21日消息,DeFi开发商Coin98 Labs宣布收购越南游戏工作室Yunero Studios,以通过GameFi加速Web3大规模采用。Yunero计划在今年晚些时候推出首款Web3游戏Rongos。[2022/6/22 4:43:49]

至此,我们从网络层、共识层和应用层对区块链分叉的安全性进行了分析,可以看到其中存在的技术风险,对于分叉我们需要十分审慎地对待。并且,不少分叉的背后不仅仅是技术变革的需要,有的可能存在商业上的直接利益,例如发起方在分叉中直接获取大量的分叉币,这些都需要用户准确认识,避免不必要的损失。区块链是一种去中心化的系统,它的升级不依赖于单一个人或组织,因此分叉在区块链里难以避免,虽然给社区用户带来混乱,但也促进了系统向前发展以更好地服务社会。

标签:区块链ETHChainAIN区块链技术通俗讲解中山大学Ether DatagenesischainCaptain Inu

非小号热门资讯
ENS:OpenSea首席财务官Brian Roberts离职,将继续担任该公司顾问

Odaily星球日报译者|念银思唐摘要:-OpenSea首席财务官BrianRoberts通过领英账户称自己已经离开了公司。-此时正值加密货币行业高管纷纷离职之际.

1900/1/1 0:00:00
Cronos:盘点入围Cronos第5批生态捐赠的7个项目

本文来自Medium,Odaily星球日报译者|MoniCronos是第一个基于CosmosSDK构建的EVM兼容Layer1,目前正在建设一个开放性生态系统.

1900/1/1 0:00:00
ETH:详细解读一夜爆火、引发Gas费高涨的XEN Crypto

10月9日凌晨,以太坊Gas突然暴涨,以太坊浏览器显示200gwei。寻其源头,原来是各个社交媒体和社群正在不断铸造、传播和讨论项目XENCrypto.

1900/1/1 0:00:00
ANC:专访何一:管理75亿美元的Binance Labs更青睐这三类Web3项目

在BinanceLabs管理数十亿美元投资组合的何一正在寻求投资Web3.0项目,从基础设施、应用、数据到分析和安全.

1900/1/1 0:00:00
NFT:a16z合伙人:最成功的应用是被包装的游戏

在区块链或者Web3的叙事中,最常见的一个思路是,用“Token”激励行为,因此很多创业者的常见叙事是,“因为我给了激励,所以自然而言就可以吸引用户……”我对此类表达通常持怀疑态度.

1900/1/1 0:00:00
COPPER:加密托管公司Copper正在进行C轮融资,现已获投1.96亿美元

Odaily星球日报译者|念银思唐加密货币托管公司CopperTechnologiesLtd今年获得了1.96亿美元的新融资,这是该公司正在进行的C轮融资的一部分.

1900/1/1 0:00:00