MIT開發新加密貨幣,用戶所需數據比比特幣減少99%

MIT的研究人員開發了一種新的加密貨幣,大大減少了用戶加入網絡和驗證交易所需的數據,與當今流行的加密貨幣相比,最高可達99%。這意味着網絡更具擴展性。

像比特幣之類流行的加密貨幣都是構建於區塊鏈上的網絡,而區塊鏈是按照一系列單個區塊格式化的金融分類賬,其中的每個區塊都包含交易數據。這些網絡是去中心化的,意味着沒有銀行或組織來管理資金和餘額,因此,用戶聯合起來存儲和驗證交易。

但是,去中心化導致擴展方面的問題。爲了加入一種加密貨幣,新用戶必須從成百上千個單獨的區塊那裏下載和存儲所有交易數據。爲了使用服務和幫助驗證交易,他們還必須存儲這些數據。這讓處理過程速度變慢,或對某些人來說產生了毫無必要的計算。

在下個月將要舉行的網絡和分佈式系統安全研討會上,MIT的研究人員將發表一篇論文,介紹Vault這種加密貨幣,用戶只需下載一部分交易數據就可以加入網絡。它還集成了刪除佔用空間的空賬戶的技術,只需要使用整個網絡中劃分和共享的最新交易數據就可以驗證,從而最大限度地降低了單個用戶的數據存儲和處理要求。

在實驗中,Vault與比特幣相比,減少了99%的加入網絡帶寬要求,與以太坊相比,則減少了90%,而以太網被認爲是如今最有效率的加密貨幣之一。重要的是,Vault還確保所有節點驗證所有交易,提供與現有節點相同的嚴格安全性。

論文合著者之一的Derek Leung說:“目前存在很多加密貨幣,但是,在新用戶加入系統和存儲方面遇到了瓶頸。這裏的主要目標是使加密貨幣有良好的擴展性,能爲越來越多的用戶服務。”他是計算科學和人工智能實驗室(Computer Science and Artificial Intelligence Laboratory,簡稱CSAIL)的研究生。論文的其他合著者是CSAIL研究人員Yossi Gilad、電氣工程和計算科學系(the Department of Electrical Engineering and Computer Science,簡稱EECS)的教授Nickolai Zeldovich以及2018屆校友Adam Suhl。

Vault與區塊的比較

加密貨幣網絡中的每個區塊都包含一個時間戳,其在區塊鏈中的位置,以及由數字和字母組成的固定長度的字符串,被稱爲“哈希”,本質上這就是區塊的標識。每個新區塊包含區塊鏈中前一個區塊的哈希值。Vault中的區塊還包含高達1萬個交易(或10MB的數據),這些必須全部由用戶驗證。該區塊鏈的結構,尤其是哈希鏈,確保對手無法在不被檢測到的情況下攻擊區塊。

通過下載所有過去的交易數據以確保它們是安全的和最新的,新用戶就可以加入加密貨幣網絡,或“引導程序(bootsrap)”。例如,去年要加入比特幣,用戶需要下載50萬個區塊,總計約150GB的數據。用戶也必須存儲所有賬戶餘額以幫助驗證新用戶和確保用戶有足夠的資金來完成交易。存儲需求正變得越來越大,因爲比特幣的賬戶擴展了,目前超過了2千2百萬個。

研究人員在一個被稱爲“Algorand”的新加密貨幣網絡上構建了自己的系統,Algorand是由MIT的工程福特教授Silvio Micali發明的,它是安全的、去中心化的,並且比其他加密貨幣有更好的擴展性。

對於傳統的加密貨幣,用戶在解驗證區塊的方程上競爭,第一個解得方程的獲得資金。隨着網絡的擴展,這將減慢交易的處理。Algorand利用“股權證明”概念以更高效地驗證區塊並更好地支持新用戶加入。對於每個區塊,選擇一個代表性的驗證“委員會”。網絡中擁有更多資金(或股權)的用戶被選中的概率更高。要加入網絡,用戶驗證每個證書而非每個交易。

但是,每個區塊都包含一些關鍵信息以在此之前立即驗證證書,意味着新用戶必須從鏈上的第一個區塊開始,連同其證書,按順序逐一驗證,這將非常耗時。爲了加快速度,研究人員根據區塊其後數百個或1千個區塊給出每個新的證書驗證信息,這被稱爲“breadcrumb”。當新用戶加入時,他們把前面一個區塊的breadcrumb和1千個區塊之前的breadcrumb進行比較。這些breadcrumb可以與另外1千個區塊之前的breadcrumb匹配,以此類推。

Derek Leung說道:“論文的標題是個雙關語。Vault是可以存儲資金的地方,但是,在加入網絡時,區塊鏈也讓你‘超’過區塊。當我進行引導時,只需要一個過去的區塊來驗證將來的區塊。我可以跳過中間的所有區塊,這爲我們節省了很多帶寬。”

劃分和丟棄

爲了減少數據存儲需求,研究人員用一種新穎的“分片”方案設計了Vault。該技術把交易數據劃分成更小的部分(或分片),並且在整個網絡中共享這些分片,因此,單個用戶只需要處理少量的數據就能驗證交易。

爲了實現安全地共享,Vault使用二進制默克爾樹,這是一種衆所周知的數據結構 。在二叉樹中,單個頂部節點分爲兩個“子”節點,並且,這兩個子節點各自又被分爲兩個子節點,以此類推。

在默克爾樹中,頂部節點包含一個哈希,稱爲根哈希。但是,默克爾樹是從底部開始向上構造的。該樹將底部的每個子哈希對組合起來形成其父哈希。重複該過程直到樹的頂部,從每對子節點分配一個父節點,直到把一切都組合到根哈希。在加密貨幣中,頂部節點包含單個區塊的哈希。每個底部節點包含一個哈希,表示該區塊中涉及交易的賬戶的餘額信息。該餘額哈希和區塊哈希是綁定在一起的。

爲了驗證任何一個交易,網絡把兩個子節點組合起來以獲得父節點哈希。在樹上重複處理過程。如果最終組合的哈希匹配該區塊的根哈希,則交易獲得驗證。但是,對於傳統的加密貨幣,用戶必須存儲整個樹結構。

對於Vault,研究人員把默克爾樹分成片,分配給分離的用戶組。每個用戶賬號只存儲其被分配片的賬戶餘額及根哈希。訣竅是讓所有用戶存儲一層節點,該層節點橫切整個默克爾樹。當用戶需要驗證其分片外部的交易時,他們追溯到共同層的路徑。從共同層,他們可以決定其分片外部賬戶的餘額,並繼續進行正常的驗證。

Derek Leung說:“每個網絡分片負責存儲大數據結構的一小片,但是這一小片允許用戶驗證所有網絡其他部分的交易。”

此外,研究人員設計了一種新穎的方案,來識別和丟棄用戶分配到的在一段時間內餘額爲零的分片賬戶。其他加密貨幣保留所有的空賬戶,這增加了數據存儲的需求,但因爲無需驗證,而沒有任何實際意義。當用戶在Vault中存儲賬戶數據時,會忽略這些舊的空賬戶。

原文鏈接:http://news.mit.edu/2019/vault-faster-more-efficient-cryptocurrency-0124

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章