加密領域最讓人害怕的攻擊之一可能有了不錯的解決方案。
至少這是數字貨幣項目Horizen(其數字貨幣名為zencash)團隊的說法,他們在今年初這樣一次51%攻擊時損失超過50萬美元。
在一名有惡意的礦工控製了超過51%的區塊鏈網絡計算能力時,他能向係統注入錯誤交易,導致攻擊的產生。
Horizen團隊在近日發布的論文中聲稱已經發現了一項創新解決方案——通過“延時函數”升級他們的工作量驗證共識算法,來處罰蓄謀這種攻擊的礦工。Horizen是以私密為導向的數字貨幣zcash的分叉,而後者本身是比特幣的一個分叉。
Horizen的聯合創始人Rob Viglione表示,51%攻擊需要一名礦工在上傳至區塊鏈之前秘密生產這些區塊,延時函數會使得這些攻擊代價變得極為高昂。
采訪時他表示:“因此從本質上來說,是在嚐試推出這些攻擊時,它產生了巨大的成本,10倍的成本。”
繼今年6月5種主要數字貨幣因51%攻擊遭受損失後,許多加密愛好者意識到了這一問題。
這種攻擊從更廣泛的意義上來說損害了人們對數字貨幣安全性的信心,Viglione稱其為“整個行業的消極外部表現”。
而直接觀察可知,Horizen中發生的51%攻擊導致區塊鏈中產生了36了虛假區塊——Viglione稱:“在攻擊(發生)後我們的工程師立即開始了頭腦風暴,我們認為我們有一種非常簡單的解決方案,可確保這不會再次發生。”
他表示:“從技術上來說,在(這種攻擊)再次發生時讓其成本變高。”
處罰
為了實現這一點,Horizen的新算法引入了對延時區塊的處罰——延時區塊是在最新的區塊鏈產生很長時間後向網絡廣播的區塊。
實際上,新的代碼通過延遲函數修改了底層共識算法的一種特性,即所謂的“最長鏈規則”。
Viglione舉了一個例子,如果被提議的一次區塊是比最新的多5個以上,就會帶來處罰。礦工為了讓交易被鏈接受,需要生產一倍的區塊數量。
這樣51%攻擊(發生的)機會就降低了。
而由於Horizen的結構特性,這樣的處罰隻有在礦工懷有惡意的情況下才會發生。
Viglione解釋稱:“我們的平均塊查找時間是2.5分鍾,廣播到世界任何地方的最大延遲是1-2秒,因此不可能出現合法落後5個區塊的情況。”
Viglione指出,由於多個塊鏈都力爭成為誠實的那個,這會導致區塊鏈上出現網絡分區。在這種情況下,由礦工投票決定哪條鏈是合法的。
“他們實際上是在選擇合法的那條鏈,然後他們開始挖掘最長的規則鏈。”
此外,為了防止網絡被永久分裂,Viglione表示已接受鏈的處罰會減少。
他告訴CoinDesk:“添加了區塊後,此前評估的處罰會相應減少,這種一直存在的收斂會防止網絡被永久分裂。”
一個古老的問題
此次發布的白皮書指出,如果一條區塊鏈由於太過落後於最新的區塊而被拒絕,交易所可凍結、可存款直至問題解決。
此外,Viglione表示處罰的具體細節會根據網絡情況進行調整。
他說:“如果我們認為相對於全網算力hashrates等標準來說處罰不夠充足,我們可以調整成本。”
不過值得注意的是,這種變動一直是研究的主題,另外有一些人對Horizen是否能實現這些還持懷疑態度。
共識研究員Emin Gur Sirer對CoinDesk表達了他的懷疑態度:“這些協議非常精細,很難做到。”
不過在為期數月的測試之後,Viglione相信這項新算法會在實際應用中表現良好,並期望它為更廣泛的數字貨幣行業起到良好範例作用。
Viglione稱:“我們已經內部測試了幾個月的時間,所以我們對代碼充滿信心。”
“我認為其他項目也應該,且非常應該升級他們的代碼”
领取专属 10元无门槛券
私享最新 技术干货