推遲分叉,切換新版客戶端,但這些以太坊礦工似乎渾然不知
1月16日,以太坊開發者發出安全警告,旨在延遲君士坦丁堡升級。但並非所有人都聽從了開發者的建議,目前有些礦工依然在非官方的君士坦丁堡鏈上進行挖礦,並未升級其客戶端。
本次升級之所以延期是因為其中涉及的某EIP(以太坊改進協議)存在漏洞。為此, ofollow,noindex" target="_blank">以太坊團隊發表了公開宣告 :
我們正在調查所有潛在的漏洞,並將在這篇部落格文章和各媒體渠道進行更新。
出於極大的謹慎立場,以太坊社群的主要利益相關者決定,最好的做法是推遲原定於在區塊高度7080,000(北京時間大約2019年1月17日)實施的君士坦丁堡硬分叉升級。
為避免違背共識,使用者必須安裝新版的客戶端。
但似乎並不是所有礦工都知道了這個訊息。截至發稿時至少還有10TH/S的算力依然在非官方的鏈上進行挖礦。
這部分算力甚至超出了ETC全網算力:
本次升級出現的漏洞可能造成欺詐,理解起來比較困難。簡單來說就是以太坊儲存收費方式的改變可能啟動一輪攻擊,提高建立dApp的成本。“重入攻擊”專門針對智慧合約,與重放攻擊或雙花不同,是一個難題。發現程式碼漏洞的ChainSecurity解釋道:
1.必須有一個函式A,在該函式中,一個transfer/send後面跟著一個狀態更改操作。這有時是不明顯的,例如一個二次transfer或與另一個智慧合約的互動。 2.必須有一個函式B可以被攻擊者訪問, (a)改變狀態,(b)其狀態改變與函式A的狀態發生衝突。 3.函式B需要在小於1600 gas的情況下執行(2300 gas津貼——700gas用於呼叫)。
儘管這一漏洞並非存在於區塊鏈上,保險起見還是要進行全面調查,以太坊官方部落格中提到:
安全研究人員,像ChainSecurity和TrailOfBits,對整個區塊鏈進行(目前仍在進行)分析。雖然他們在自然環境下沒有發現任何受到這個漏洞影響的情況。然而,仍存在一些合約可能受到影響的非零風險。
在一個大型的去中心化網路中,資訊是不可能及時傳遞到每個人手上的,這是可以理解的。比特幣的各個節點也都活躍在不同版本的客戶端。目前少數挖礦節點依然在君士坦丁堡客戶端上進行挖礦,遺憾的是在這個過程中並不能獲得有效的以太坊。