當前位置:
首頁 > 科技 > 區塊鏈技術如何改變數據的存儲和管理?

區塊鏈技術如何改變數據的存儲和管理?

由於大數據的迅猛發展,數據正在呈指數級增長。隨著越來越多的個人數據被泄露,數據存儲和獲取的方式也受到了質疑。 全面數字化時代的個人信息應該如何被管理以發揮效能並降低濫用的風險,不僅是各類企業,更是各國政府必須解決的監管難題。

就數據管理方式的技術變革而言,區塊鏈技術正在獲得動力。全球研究公司 Gartner 預測,到 2025 年,區塊鏈的商業價值將達到近 2000 億美元,其中很大一部分將用於數據存儲。與雲存儲不同的是,區塊鏈是去中心化的計算和存儲技術,提供存儲能力的節點可以分布在不同位置。

現在,大多區塊鏈公鏈受到了擴展性的限制。區塊鏈技術最大的特徵就是去中心化,這就要求網路中的所有賬本都需要處理記賬流程。分散式記賬的安全性高,誤操作率低,還具有政治中立性和正確性。但是區塊鏈技術在擁抱了這些特性的同時,犧牲掉了擴展性,無法滿足個性化監管,在保護數據隱私方面略顯不足。而且,隨著的賬本數量的增長,交互延遲會呈指數式增長,也就是說區塊鏈網路中的賬本越多延遲就會越高。

令人頭疼的問題越來也多,以下內容可能有你想要的答案。2018 年 11 月 24 日,在上海的迅雷鏈技術沙龍現場,來自:

迅雷鏈開放平台研發負責人 張慧勇

迅雷鏈底層研發工程師 張小剛

復旦大學計算機學院教授、博士生導師 趙運磊

迅雷鏈開放平台產品負責人 馬雙陽

分別就區塊鏈底層架構、數據存儲、加密技術、DApp 現狀進行深入淺出的主題分享。我們從具體案例的角度,聊聊區塊鏈如何改變數據的存儲和管理。

迅雷鏈的架構設計特點

區塊鏈的通用的技術架構:包括應用層連接服務,核心層的共識演算法、密碼學、塊鏈式數據結構,基礎層的 P2P 網路、存儲、計算。其中,共識機制是區塊鏈技術的核心,不同類型的共識演算法應用於不同類型的場景;而存儲模型更是決定了區塊鏈項目管理數據的能力,優質的數據模型會使資料庫更簡單易用,並且方便擴展和查詢。

區塊鏈的特性天生可以降低信任成本,即利用區塊鏈的技術的可回溯、不可篡改、共識演算法、P2P 節點以及智能合約可以達成低成本信任。但同時,需要保證鏈上的高並發性和商業化高可用性,還需要隱私保護。那麼,能滿足低成本、高可用、高並發的迅雷鏈,在架構設計方面有哪些特點?

1、「採用同構多鏈架構」可以動態擴鏈,達到按需供應降成本的目的;

2、「支持平行擴展」對未來需求有擴展能力,同時保證損耗較小;

3、「合約上鏈審核機制」保護整個鏈生態的安全,保證 DApp 為實體企業或實名開發者所做,方便事後追查和管控;也可以通過限制外界對有安全漏洞的合約進行訪問,降低安全漏洞的影響。

4、「介面級的安全管控」避免不良信息上鏈,保護開發者免受不良信息產生的影響。

5、「DPoA+PBFT 共識演算法」使用 DPoA 選擇性地利用迅雷百萬級的共享節點,保障 PBFT 演算法的穩定性;使用 PBFT 可以達成秒級確認,同時提供區塊的確定性,有效避免回滾和分叉,進而提供商業級的服務。

6、「豐富的外圍系統」降低企業開發成本與難度,讓企業更容易將業務上鏈;其中包含訂單系統、事件訂閱系統、合約標準、模板庫等都可以幫助合作夥伴更好的使用智能合約;還提供迅雷鏈文件系統(TCFS),將不適合放在區塊鏈系統上的超大數據統一存儲,只將摘要信息上鏈,同樣可以達到不可篡改和可回溯的目的,同時可以通過分區存儲保證數據的安全性。

在這種架構上,區塊鏈的數據存儲怎麼做?

傳統資料庫的安全,靠的是企業信任、數據管理員和其他安全策略,但這些在很多場景下並不可靠。如果你擔心數據丟失、篡改等數據安全問題,就可以使用區塊鏈來進行存儲。

區塊鏈是分散式的存儲,用戶可以隨時隨地建立節點,加入區塊鏈網路同步數據。甚至可以貢獻自己的存儲和算力獲得獎勵。共識機制能夠防止作惡,使數據都公開透明。同時由於分散式存儲,它的鏈式結構配合哈希演算法的應用,使得區塊數據幾乎無法篡改。如果要篡改需要改掉足夠多的數據才能使篡改生效,這樣的高成本使得篡改幾乎不可能。另外,數據可回溯。

數據層是最底層的技術,主要實現了兩個功能:數據存儲、賬戶和交易的實現與安全。

數據層的一大功能是存儲,存儲模型的選擇原則是性能和易用性。一個網路系統的整體性能,主要取決於網路或本地數據存儲系統的 I/O 性能,比如比特幣用的是谷歌的 LevelDB,這個資料庫寫性能非常好,但是當數據量大時的讀性能會明顯下降,而且其只是單機單盤存儲,當數據量大時不具備擴展性。迅雷鏈的同構多鏈框架在設計上支持任何 KV 存儲,在框架的使用時可以針對不同場景採用不同的資料庫模型,解決海量數據下的資料庫性能和擴展能力的同時也保證了極大的靈活性。

這裡簡單對比了比特幣、以太坊、Ripple、Fabric、迅雷鏈的存儲類型,如下圖所示:

區塊鏈底層大致存儲三種類型的數據,分別是區塊與交易數據、狀態數據、索引數據。區塊與交易數據是區塊鏈系統總最核心的數據。狀態數據可以用來快速驗證新塊的交易是否合法。而索引數據則用來提高查詢的效率。由於共識演算法的不同,可能有些區塊鏈還會單獨存儲共識數據,用於節點之間進行共識。

隨著時間的推移、交易量的增大,佔用的存儲依舊會越來越大。迅雷鏈採用同構多鏈架構,將整個系統劃分為多個分區,對於賬戶按賬戶地址做分區,每個賬戶屬於一個分區。同構多鏈結構既可以有效提高並發交易性能,又可以分散存儲數據,就相當於提升存儲空間。當某個分區需要更高的性能或者更大的存儲空間,可以執行平滑擴鏈方案,將這個分區平滑的切分為更多分區,來達到提升性能和提升存儲空間的目的。

此外,還可以將大數據大文件存儲在迅雷鏈文件系統 TCFS 中,將對應的 Hash 存儲上鏈,這樣能既能保證大數據大文件的安全與高可用,又能有效減少區塊鏈的存儲空間壓力。迅雷鏈文件系統將文件經過冗餘編碼分成若干片,分別保存在不同節點上,讀取時只要把部分切片組合到一起,就能還原出整個原文件,所以任何一個單一節點無法還原整個文件,保證了安全和可靠性。可能你知道 IPFS,2017 年,這個項目在區塊鏈資本市場上創造了史上最強募資記錄,募到了 2.52 億美元。但迅雷鏈文件系統比 IPFS 更適合區塊鏈應用作為存儲平台

據了解,除此之外迅雷鏈還在持續優化鏈上的存儲方案,以更好的支持區塊鏈大數據存儲。

數據隱私如何保護

在當今的加密技術中,隱私是一個很重要的話題。無論是公司還是個人都不希望將自己的所有信息發布到公共區塊鏈上,不受任何限制,被本國政府、外國政府、家庭成員、同事或商業競爭對手隨意讀取。密碼學在區塊鏈中的應用很多,這裡著重探討零知識證明和聚合簽名。

零知識證明

用區塊鏈實現隱私保護逐漸成為各類應用的重要賣點之一。雖然我們知道鏈上的每一筆交易,但卻不知道是誰來操作的這筆交易。這種匿名特性在一定程度上保護了個人的隱私,它是如何實現的呢?這要從零知識證明說起。

零知識證明是保護證明者隱私的一種證明,其中證明者知道問題的答案,他需要向驗證者證明「他知道答案」這一事實,但是要求驗證者不能獲得答案的任何信息,而驗證者的驗證擁有隨機性。

一個典型的零知識證明示例是阿里巴巴和強盜的故事:

阿里巴巴知道打開藏著財寶的山洞的咒語。強盜抓住他,讓他說出咒語。如果阿里巴巴說出咒語,就會因為沒有利用價值而被殺死。如果阿里巴巴堅持不說,強盜不會相信他真的掌握咒語,也會殺死他。但阿里巴巴想了一個好辦法,他對強盜說:「你們離我一箭之地,用弓箭指著我,你們舉起右手我就念咒語打開石門,舉起左手我就念咒語關上石門,如果我做不到或逃跑,你們就用弓箭射死我。」

也就是說無論是個人還是機構,不想讓第三方看到的「東西」景可以用是零知識證來解決點。零知識證明,如何用,怎麼用,怎麼最貼近實際的應用場,些就需要具體的分析和策劃。例如下圖所示,是一個這是關於離散對數的驗證,根據 h 求 w 是很難的。以下驗證 w 的過程,用到的就是 Schnorr 數字簽名演算法:

後來,美國國家安全局基於 Schnorr 重做了一種新的簽名方案 DSA,這也是目前比特幣、以太坊等絕大多數密碼貨幣里用到的數據證明。

區塊鏈擴容與聚合簽名

區塊鏈經過了 10 年的高速發展,一直在不斷完善來嘗試適應工業產品化需求。但是仍然存在許多亟待解決的困難,例如:吞吐量過低、區塊鏈體積龐重、可擴展性差、交易費過高、延展攻擊等。

目前,比特幣的交易吞吐量是每秒大約 7 筆。這無疑加劇了:過長時間的交易確認延遲、過高的手續費,且很容易受到垃圾數據攻擊 (spam attacks )。也為交易延展攻擊創造了條件。

聚合簽名 (Aggregate signature) 是一種減少「數據傳輸所需帶寬、數據存儲所需容量」 的有效手段,對於區塊鏈這種「通信與存儲比計算更加昂貴」 的技術,尤其有吸引力。但是通常演算法的聚合簽名或是實現複雜,或是安全性弱。

基於此,圖靈獎得主姚期智院士與趙運磊教授提出的 Gamma 簽名,能更好地構造一般群模型下的聚合簽名。實踐發現,將基於 Gamma 簽名的聚合簽名應用到比特幣後:簽名的存儲體積將減少一半;簽名的驗證時間提升 4-5 倍。

聚合 Gamma- 簽名的優點是:通過將一個區塊內的多個簽名,壓縮到一個簽名,來達到區塊鏈容量擴展的目的。因此,會有更多的體積來存儲交易;簽名者可以離線預處理,並且可以存儲一些列中間過程,來加速簽名與驗證的過程;減少了驗證交易的壓力,通過每個區塊僅需要驗證一個簽名,從而得到了一個更快的確認速度。

存儲技術創新可以更好地提升 DApp 的開發效率。與傳統 App 不同,DApp 運行在去中心化的網路上,網路中不存在中心化的節點可以完整的控制 DApp,所以基本不會出現數據丟失、被盜、篡改的情況出現。DApp 上所有的數據進行加密後存儲在去中心化的區塊鏈應用平台上,數據的安全性能更高,能夠有效防止信息篡改和偽造,同時很大程度上提高了項目的穩定性,降低了宕機風險和運營成本。

但是,我們也遇到了棘手問題:區塊鏈典型用戶是非常少,在產品設計過程中可參考的用戶畫像比較稀缺;性能方面有很大瓶頸;行業分布比較雞肋;企業信息公開正在經歷陣痛期;區塊鏈的專業人才非常稀缺。

開發者需要一個強大的數據基礎和管理模式,提高 DApp 開發的安全和效率。而市場中的底層平台,能為 DApp 開發提供哪些幫助和支持呢有興趣的朋友可以參考下以迅雷,迅雷鏈是利用 150 萬 + 雲計算節點打造的存儲系統,擁有百萬級 TPS 和秒級確認能力,可以它提括鏈克兌換、合約接入、TCFS、鏈克商等功能,可以很好的彌補工聯繫統在商業化運用上的天然缺陷城。開源文檔見鏈接

https://open.onethingcloud.com/site/docode.html

同時,迅雷正在不斷完善針對在各行的業解決方上不斷優化數據存儲技術,希望能幫助區塊鏈開發者做出更豐富、優秀的 DAPP,早日實現區塊鏈技術的商用落地。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 InfoQ 的精彩文章:

「黑五」引發的Facebook宕機,運維能學到些啥?
微博「三爆不癱」,從未有過如此順暢的吃瓜體驗

TAG:InfoQ |