5月15日,比特幣現金網絡進行了升級。但是,比特幣現金的用戶可能會在升級后驚奇地發現他們的交易沒有得到即時的確認。這是因為比特幣ABC中
5月15日,比特幣現金網絡進行了升級。但是,比特幣現金的用戶可能會在升級后驚奇地發現他們的交易沒有得到即時的確認。這是因為比特幣ABC中的一個漏洞導致無效的交易進入了內存池,而且這些無效的交易似乎還是惡意的。
由于這一漏洞,ABC節點將在沒有交易的情況下開挖區塊,因為提議無效交易的區塊將是無效的。這導致比特幣現金網絡在超過一個小時的時間里都沒有處理任何交易。此類事件意味著比特幣現金升級第二次出現紕漏,上一次的問題則是升級不暢并導致區塊鏈分叉。
為什么比特幣現金的升級流程是有問題的?
在事件發生后及時反思可能的防范手段有助于避免類似錯誤。且讓我們比較一下比特幣現金與達世幣的升級流程。
比特幣現金網絡提前了升級的日期。這給開發人員增加了壓力,因為他們必須在軟件完備之前就予以發布。為了順應這一變化,比特幣現金使用MTP來發布升級的訊號。這意味著,即使網絡上的其它節點沒有準備就緒,新的規則也會被強制執行。
與此不同的是,達世幣借助在比特幣優化提案009的基礎上加以改進的達世幣優化提案 001中概述的方法進行升級。具體來說,達世幣在升級過程中要求礦工發出信號表明他們已經做好了升級的準備。相反,比特幣在節點尚未準備就緒的時候也會強制升級。
達世幣的方法更為謹慎
由于達世幣不會將升級日程提前,因此研發團隊有時間來進行謹慎而充分的測試。目前,達世幣正在為計劃中的0.14版本升級做準備,目前共有五個候選版本。更有甚者,達世幣0.13版本在發布到網絡之前有11個候選版本。達世幣這一全球支付網絡可以合理地延遲升級,這是為安全性和可靠性所作的小小妥協。
信息更新:比特幣現金的上述漏洞僅發現于比特幣ABC。比特幣ABC在交易操作上新增了一條新規則,從而防止防止二次算力攻擊。達世幣沒有這個新規,相反,它以交易規模限制為共識規則,這同樣可以防范此類攻擊。(Darren Tapp)