分布式數(shù)據(jù)存儲:確保數(shù)據(jù)可追溯
既然區(qū)塊鏈?zhǔn)且粋€去中心化的分布式賬本數(shù)據(jù)庫,首先涉及的就是分布式數(shù)據(jù)如何進行存儲的問題。
先來說分布式存儲。過去的網(wǎng)絡(luò)存儲系統(tǒng)都是采用集中的存儲設(shè)備來存放所有設(shè)備,存儲設(shè)備往往會帶來系統(tǒng)性能問題,以及可靠性和安全性等問題,無法滿足大規(guī)模存儲的需要;而分布式存儲就是將數(shù)據(jù)分散存儲在多臺獨立的設(shè)備上。打個比方,過去是把100個雞蛋放在一個籃子里,而現(xiàn)在則是把100個雞蛋放在100個籃子里。
再說說區(qū)塊鏈中的數(shù)據(jù)存儲,借助分布式數(shù)據(jù)存儲技術(shù),區(qū)塊鏈采用了區(qū)塊的鏈?zhǔn)浇Y(jié)構(gòu)存儲。也就是說,新增的區(qū)塊就知道前一個區(qū)塊是什么,可以一級一級向上追溯。每一個區(qū)塊都有自己的“哈希值”或者“時間戳”,你可以理解這是區(qū)塊的“指紋”;而鏈?zhǔn)浇Y(jié)構(gòu)則是為了記錄業(yè)務(wù)軌跡,在新增交易時根據(jù)前面的記錄進行校驗,確保區(qū)塊的內(nèi)容不被篡改。
點對點傳輸:真正去中心化
點對點傳輸也就是我們過去所說的P2P,還記得用電驢下載電影和音樂的經(jīng)歷嗎?電驢采取的就是一種基于點對點傳輸原理的文件共享網(wǎng)絡(luò),它可以通過檢索分段從多個用戶那里下載文件,最終將下載的文件片斷拼成整個文件,因此每個人既是下載方也是上傳方,越多的人參與其中,資源下載的速度就越快。
區(qū)塊鏈既然是一個分布式的賬本數(shù)據(jù)庫,就必須要解決數(shù)據(jù)可靠傳輸問題。而點對點傳輸依賴網(wǎng)絡(luò)中參與者的計算能力和帶寬,而不是依賴和聚集在較少的幾臺服務(wù)器上,這就大大增加了網(wǎng)絡(luò)傳輸?shù)目煽啃?。正因為如此,點對點傳輸成功應(yīng)用到了區(qū)塊鏈中。
區(qū)塊鏈中的點對點傳輸,也就是讓用戶之間可以直接進行轉(zhuǎn)賬和交易,而不需要經(jīng)過中間機構(gòu)的確認和授權(quán)。這樣一來,不僅節(jié)省了成本,也提高了交易的效率,并且保證了數(shù)據(jù)安全。目前,區(qū)塊鏈的記賬節(jié)點之間、非記賬節(jié)點之間、客戶端與記賬節(jié)點之間的數(shù)據(jù)傳輸都是采用的這一模式。區(qū)塊鏈的去中心化特性正是由此而來。
共識機制:靈魂所在
分布式數(shù)據(jù)存儲和點對點傳輸也帶來了一個新問題,那就是不同的區(qū)塊所記錄的交易事務(wù)順序不可能完全一致,共識機制順勢而生。
所謂共識機制,就是在一個時間段內(nèi)對事物的前后順序達成共識的一種算法,它就像是區(qū)塊鏈領(lǐng)域的法律一樣,持續(xù)維系著區(qū)塊鏈的正常運轉(zhuǎn)。打個比方,在區(qū)塊鏈上每個人都有一個記錄鏈上交易的賬本,如果干壞事的人發(fā)布了一個錯誤信息,這時就需要一個人把所有人接收到的信息進行驗證,最后公布最正確的信息。
以下是幾種常用的共識機制。
工作量證明機制(Proof of Work-PoW):誰能最快的猜出這個唯一的數(shù)字,誰就能做信息公示人;
權(quán)益證明機制(Proof of Stake-PoS):持有最多Token(區(qū)塊鏈上可流通的加密數(shù)字權(quán)益證明)的人來公示最終信息;
拜占庭共識算法(Practical Byzantine Fault Tolerance-PBFT):由鏈上所有人參與投票,少于(N-1)/3個節(jié)點反對時就獲得公示信息的權(quán)利。
共識機制很大程度上決定了整個區(qū)塊鏈系統(tǒng)節(jié)點間的相互信任程度,也決定了其他使用者對于區(qū)塊鏈上數(shù)據(jù)的信任程度,因此它也被看作是區(qū)塊鏈的靈魂。
加密算法:為數(shù)據(jù)加把鎖
嚴(yán)格來說,在互聯(lián)網(wǎng)中是沒有秘密可言的;而加密算法就是在我們希望保密的內(nèi)容上加上一把“鎖”,只有那些拿到“鑰匙”的人才能看到。這有點類似于QQ中的加密相冊,即便是好友也需要輸入訪問密碼才能打開相冊。
在區(qū)塊鏈中,交易數(shù)據(jù)是相對透明的,既需要在一定程度上公開,又要有所保留,因此如何加密非常關(guān)鍵。因為一旦加密方法遭到破解,區(qū)塊鏈的數(shù)據(jù)安全將受到挑戰(zhàn),區(qū)塊鏈的不可篡改性將不復(fù)存在。
現(xiàn)代加密算法的典型組件包括:加解密算法、加密密鑰、解密密鑰。其中,加解密算法自身是固定不變的,一般是公開可見的;密鑰則往往每次不同,并且需要保護起來。一般來說,對同一種算法,密鑰長度越長,則加密強度越大。根據(jù)加解密的密鑰是否相同,算法又可以分為對稱加密和非對稱加密以及混合加密,它們負責(zé)確保區(qū)塊鏈中的信息安全。
百度的“超級鏈”
了解了以上的幾個關(guān)鍵性技術(shù),再來看看百度做了哪些事?
通過成立區(qū)塊鏈實驗室,百度在區(qū)塊鏈領(lǐng)域的研究已經(jīng)取得突破進展,同時借助百度云的to B商業(yè)化技術(shù)優(yōu)勢,并行打造起具有高性能、安全可靠的一站式區(qū)塊鏈基礎(chǔ)設(shè)施平臺,在區(qū)塊鏈科研和區(qū)塊鏈商業(yè)化領(lǐng)域都具備領(lǐng)先的產(chǎn)品和技術(shù)能力。
其中,超級鏈?zhǔn)前俣扔媱濋_源的具備強大的網(wǎng)絡(luò)吞吐力和高并發(fā)的通用智能合約處理能力的區(qū)塊鏈3.0解決方案。它基于可插拔的共識機制、DAG可并行計算網(wǎng)絡(luò)和立體網(wǎng)絡(luò),真正突破了當(dāng)前區(qū)塊鏈的技術(shù)瓶頸。是可信公有鏈、可信聯(lián)盟鏈的最強大標(biāo)準(zhǔn),百度云也將推出超級鏈的BaaS服務(wù),讓企業(yè)用戶也能夠低成本、快捷方便地享受最先進的區(qū)塊鏈技術(shù)。