寫在前面:原文作者是LibraCalibra數字貨幣錢包項目的首席研究員DahliaMalkhi,在這篇文章中,她介紹了Calibra團隊最新研發的Twins拜占庭容錯系統檢測方法,以用于檢測LibraBFT算法的相關安全及活性漏洞。
以下是譯文:
使用拜占庭容錯算法設計分布式協議并非是一件易事。
BFT模型是一個分布式系統,其中故障節點可以任意的、完全無約束的方式運行。然而,當拜占庭節點的偏離行為不可檢測時,它們很可能成功地破壞了BFT協議。也就是說,最強大的拜占庭攻擊實際是來自內部:攻擊者發送具有正確格式的消息,并且它們與其他節點的交互似乎也遵循了協議。
超9252萬枚XRP轉入Ripple聯合創始人Jed McCaleb錢包:金色財經報道,Whale Alert數據顯示,北京時間00:30,92,521,450枚XRP從Jed Mccaleb Settlement轉至Ripple聯合創始人、前首席技術官Jed McCaleb的錢包,價值約2182.5萬美元。根據此前Whale Alert對相同地址間轉賬的解釋,此次轉移或是根據McCaleb和Ripple之間達成的協議進行的常規轉移。McCaleb的銷售活動仍受到與Ripple達成的協議的限制,該協議可能在今年到期。[2020/11/5 11:40:24]
實際上,在對BFT協議的幾種已知攻擊中中,拜占庭節點以簡單的方式偏離了正確的行為:它們表現為模棱兩可、省略消息,以及刪除內部狀態變量等。
Calibra的Twins解決方案
Paxful總交易量首次超越LocalBitcoins:Arcane Research數據顯示,點對點加密貨幣交易平臺Paxful的總交易量在歷史上首次超越了長期以來的點對點交易平臺龍頭LocalBitcoins。圖表顯示,在數次出現凍結交易員賬戶的狀況發生后,LocalBitcoins的交易量一直在持續下降。(CoinGape)[2020/6/17]
利用這種洞察力,Calibra開發了Twins,一種用于BFT測試的“重要”方法。
Twins系統地生成有趣的拜占庭行為,這些行為可以被有效地枚舉和測試,它放棄了對協議的無趣偏離,例如發送格式錯誤的消息或發送不合理的消息,而誠實的接收者很容易拒絕這些消息。
最重要的是,沒必要去開發攻擊邏輯來使用Twins測試。節點執行未經修改的正確代碼來攻擊系統。Twins測試人員只是通過部署攻擊節點的兩個實例,而不是一個實例來“錯誤配置”系統。兩個實例使用相同的標識,因此,對于系統的其余部分節點而言,“孿生”節點顯示為單個“行為不正常”的節點。
Novi發言人:Calibra最初起名特意與Libra相似,更名旨在避免混淆:據此前報道,5月26日,Facebook宣布將Calibra錢包更名為Novi。Libra項目負責人David Marcus最近在Facebook發表的帖子中稱,更名的主要原因是舊名字與Libra支付網絡的名字有點太接近了,因此已經做了更新,以確保有明確的區別和清晰度。Novi將只是最終建立在Libra網絡上的錢包之一。
Novi一位發言人表示,這僅僅是品牌重塑,錢包的功能不會有任何變化。最初Libra和Calibra的名稱相似是有意的,但后來發現人們對此感到困惑,所以公司決定在兩者之間進行區分。
不過一些分析人士認為,更名可能是為了讓錢包與Facebook保持距離。OKCoin首席營銷官Haider Rafique解釋,將Libra項目以及Calibra與Facebook進行區分,可能對該網絡和錢包的未來都很重要。Zcoin項目負責人Reuben Yap表示,“我真的相信官方的原因是為了防止數字貨幣Libra和Calibra混淆,而Calibra只是Facebook的錢包。”(Finance Magnates)[2020/5/29]
關于有趣的拜占庭行為
聲音 | Calibra負責人:Libra的設計本質上是一種很好的交換媒介,將降低跨境支付障礙:據CNBC報道,Facebook Calibra部門負責人David Marcus表示,目前其他加密貨幣是“投資工具或投資資產,而不是一個很好的交換媒介。Libra的設計本質上是一種很好的交換媒介,是一種非常高質量的數字貨幣形式,可用于日常支付。Marcus表示,Libra將降低跨境支付的障礙。[2019/6/19]
為了演示如何覆蓋有趣的拜占庭行為,讓我們設計一個簡單的服務:一個只有一個條目的鍵-值存儲。我們希望鍵-值存儲能夠容忍n=3f+1臺服務器中的f臺拜占庭式服務器,這與解決共識所需的數量相同。
聲音 | Calvin Ayre:SV是唯一可擴展且具有效用的比特幣:CoinGeek創始人、BCH SV的支持者Calvin Ayre發推文稱,Segwit Coin(BTC)沒有價值,因為它不能擴展,只是一個幻想。用戶可以撤回的唯一加密貨幣是原始比特幣,現在比特幣SV是唯一可擴展且具有效用的比特幣。但這肯定是行業的崩潰,實際上可能會殺死BTC,因為BTC已暴露其沒有任何效用。[2018/11/27]
為了簡化任務,我們將讓客戶端在請求更新存儲值時簽署更新。因此,拜占庭服務器將無法編造非法值,因為它無法偽造客戶端的簽名,但它可能會用過時的值響應查詢,或者它根本不會響應。
存儲協議:客戶端更新存儲值的協議有兩個階段:第一階段,客戶端為獲取最新version在3f+1臺服務器中查詢2f+1臺服務器。在第二階段,客戶端請求3f+1服務器中的2f+1臺服務器,將存儲值更新至versionv+1。
讓我們看一個例子。假設有四臺服務器{A,B,C,D},其中C是拜占庭式的。第一個客戶端連接到網絡,向{A,B,C}查詢當前version(為0)。客戶端存儲version=1的第一個值,并從{A,B,C}接收確認。第二個客戶端查詢{B,C,D}以獲得當前version。我們說C是拜占庭式的,它可能說謊并返回version0,隱藏version1。這樣就是沒問題的,因為B服務器會返回version1。
查詢協議:現在我們需要處理服務器的查詢問題。問題是,當客戶端查詢服務器時,它可能會捕獲未完成的更新。例如,假設到目前為止,version2只寫到{A,C}。查詢{A,C,D}的客戶端將從C獲得包含version2的響應。但是,如果客戶端查詢{B,C,D},由于C是拜占庭式的,并且它可能會隱藏version2,則僅返回version1。更糟糕的是,C可能會來回切換,使用version2來響應某些客戶端,而對其他客戶端則保持隱藏狀態。
為了解決這個問題,我們將在查詢協議中使用兩個階段:第一階段,客戶端為當前version查詢2f+1臺服務器,第二階段將最高的version寫回給2f+1臺服務器。這樣,假設客戶端查詢{A,C,D},并返回version2。那它就將version2寫回給2f+1臺服務器,比如{A,C,D},從而保證version2的更新已經完成。
注:由于解決鍵-值存儲一直不是我們的重點,我們掩蓋了上面的某些細節。另外,作為補充說明,在n=3f+1的情況下,解決鍵-值存儲問題不需要客戶端簽名,請參閱此處的示例解決方案。
有趣場景的系統生成
注意我們在設計鍵-值存儲時所做的一些事情:
我們創建了一些簡單的場景,每個場景都有少量的服務器和少量的交換步驟;
在每個交換步驟中,我們選擇f臺服務器來進行排除:第一個客戶端從階段1和階段2中排除{D},第二個客戶端從階段1中排除{A},依此類推;
我們允許拜占庭服務器C返回到舊狀態并用舊值響應;
將上述內容放入一個結構化的場景中,我們通過拜占庭式服務器創建了以下一系列的交換,分區和“內部狀態遺忘”:
Exchange1:client-1phase-1with{A,B,C};
Exchange2:client-1phase-2with{A,B,C};
Exchange3:client-2phase-1with{B,C,D};
Exchange4(partial):client-2phase-2with{A,C}(andcrash);
Exchange5:client-3with{B,C,D},Chasitsinternalstateerased.
Twins系統地生成類似上面的場景,并通過拜占庭節點的孿生實例模擬遺忘等行為。重要的是,對于相當小的場景,Twins可以有效地枚舉上述場景,以暴露協議漏洞。
總結
使用拜占庭容錯算法設計分布式協議并不容易。數十年來,研究人員一直在努力應對令人擔憂的安全與活性漏洞,在某些情況下,這些漏洞需要花上數十年的時間才能夠被人發現。
Twins是一種新的BFT測試方法,它覆蓋了很多拜占庭式攻擊,關于該方案的具體設計,讀者可以看原論文。
Twins:White-GloveApproachforBFTTesting:https://arxiv.org/pdf/2004.10617.pdf
5月9日,深圳市稅務局與騰訊集團、平安集團、中裝建設、欣旺達電子股份有限公司聯合簽署合作框架協議,共同打造“稅務-產業”聯盟鏈.
1900/1/1 0:00:00在前一篇文章中,我和大家分享了傳統投資領域價值投資者對價值的判斷:是有價值的東西一定要能產生我們看得見、摸得著的需求。這種判斷方法對成熟的行業領域適用,對新的領域我認為不太適用.
1900/1/1 0:00:00區塊鏈技術的兩大標桿中美兩國的產業區塊鏈發展各自進入了怎樣的階段?兩國間的發展有何不同及側重?算力大學邀請了HashKeyGroup首席生態官Ben?El-Baz帶來《中美產業區塊鏈差異》的視頻.
1900/1/1 0:00:00來源:量子學派,原題《比特幣折疊》 作者:海島算師 引2020年5月12日3:23,比特幣在區塊高度630000處完成誕生以來第三次“減半”,出塊獎勵從12.5BTC降至6.25BTC.
1900/1/1 0:00:00作者|哈希派分析團隊 最近30分鐘合約市場爆倉1100萬美元 BTC爆倉457萬美元:據合約帝行情統計報告顯示:最近30分鐘合約市場全網總計爆倉1100萬美元,其中BTC爆倉457萬美元.
1900/1/1 0:00:00作者:Joyce 來源:區塊鏈前哨 北京時間12日凌晨3點23分,比特幣達到減半區塊高度630000,由螞蟻礦池挖出,區塊獎勵從12.5個BTC減產至6.25個.
1900/1/1 0:00:00