早于本月 15 日,由于以太坊(Ethereum)开发团队宣布于即将来临的君士坦丁堡升级中,找到严重安全漏洞,故需要将升级延期,团队现时希望能于以太坊区块链高度 7,280,000 (时间约为 2 月 27 日)再作更新。
但是,有些矿工未有撤回相关升级,导致出现“区块链分裂”(Chain Split),意指在大部份矿工未有共识前,有节点因为与主链的软件版本不同版本且两边互不相容时,将出现两条或以上使用不同软件版本的区块链。
截至截稿时间,仍有矿工于已升级君士坦丁堡的非官方以太坊链上挖矿。
矿工需要升级软件暂停君士坦丁堡升级
根据以太坊开发团队声明,在安全审计公司 ChainSecurity 回报有关智能合约的安全漏洞后,以太坊开发团队正积极找寻及修正任何潜在漏洞,会密切关注各大社交媒体及更新消息。经社群上主要持份者决定,原定于以太坊区块链高度 7,080,000 (时间约为本月 16 日)进行的君士坦丁堡更新,将会延期至另行通知为止。
而矿工需要更新其挖矿程式才能避免违反区块链的共识机制,但是并非每个矿工都能在短时间内进行相关更新。根据 forkmon.ethdevops.io,截至截稿时间,仍有约 93 TH/s 算力于已升级君士坦丁堡更新的非官方以太坊上挖掘,与现时于以太坊经典(Ethereum Classic)主链上约 120 TH/s 的算力只差 30 TH/s。
此次安全漏洞是针对智能合约,属于可重入攻击(Reentrancy Attack),不像是重送攻击(Replay Attack)或双重支付攻击(Double Spending)。发现漏洞的 ChainSecurity 在文章中解释漏洞触发条件将会在君士坦丁堡更新后,智能合约储存操作手续费由 5000 Gas 减至 200 Gas,令恶意人士可透过相关变更来控制智能合约中的变量,在前一个合约的函数仍在执行时提取资金。
虽然该漏洞并未实际出现于以太坊链上,以太坊开发团队亦对此表示歉意,他们指出一些安全研究公司如 ChainSecurity 及 TrailOfBits 现时仍在对整个以太坊链进行分析,虽然并未于主链上找到漏洞,但可能一些智能合约上仍藏有风险。
尽管是比特币的主链更新,也有出现矿工未能适时更新的情况,导致区块链分裂至不同版本,而现时在非官方以太坊链上挖矿的矿工,是不能赚取任何有效的 ETH 的。