區(qū)塊鏈基礎(chǔ)
區(qū)塊鏈的基本概念
區(qū)塊技術(shù)的產(chǎn)生和發(fā)展離不開比特幣,隨著比特幣的誕生,區(qū)塊鏈技術(shù)得以公布于眾
區(qū)塊鏈技術(shù)是一個去中心化的分布式數(shù)據(jù)庫,該數(shù)據(jù)庫由一串使用密碼學(xué)方法產(chǎn)生的數(shù)據(jù)區(qū)塊有序鏈接而成,區(qū)塊中包含有一定時間內(nèi)產(chǎn)生的無法被篡改的數(shù)據(jù)記錄信息
區(qū)塊中包含數(shù)據(jù)記錄,當(dāng)前區(qū)塊根哈希(Hash),前一區(qū)塊根根哈希,時間戳以及其他信息.數(shù)據(jù)記錄的類型可以根據(jù)場景決定,比如資產(chǎn)交易記錄,資產(chǎn)發(fā)行記錄,清算記錄,智能合約記錄甚至物聯(lián)網(wǎng)數(shù)據(jù)記錄等. 數(shù)據(jù)在記錄的過程中通常組織為數(shù)形式,比如默克爾樹,而區(qū)塊哈希實(shí)際就是在數(shù)據(jù)記錄樹的根節(jié)點(diǎn)哈希,為根據(jù)數(shù)據(jù)記錄樹自下而上足部通過SHA-256等哈希算法計(jì)算得出,時間戳為區(qū)塊的生成時間,其他信息包括區(qū)塊簽名,隨機(jī)信息值等信息,也可根據(jù)具體應(yīng)用場景靈活定義
區(qū)塊鏈技術(shù)不是一種單一的技術(shù),而是多種技術(shù)整合的結(jié)果,包括密碼學(xué),數(shù)學(xué),經(jīng)濟(jì)學(xué),網(wǎng)絡(luò)科學(xué)等,這些技術(shù)以特定的方式組合在一起,形成了一種新的去中心化數(shù)據(jù)記錄與存儲體系,并且給存儲數(shù)據(jù)的區(qū)塊打上時間戳使其形成一個連續(xù)的前后關(guān)聯(lián)的誠實(shí)數(shù)據(jù)記錄存儲結(jié)構(gòu),最終目的是創(chuàng)建一個保證誠實(shí)的數(shù)據(jù)系統(tǒng),可將其稱為能夠保證系統(tǒng)誠實(shí)的分布式數(shù)據(jù)庫
區(qū)塊鏈的發(fā)展體系可以劃分為四個象限,第一象限為比特幣區(qū)塊鏈;第二象限是使用比特幣區(qū)塊鏈協(xié)議,但不使用比特幣貨幣的系統(tǒng),比如萬事達(dá)幣,彩色幣,合約幣,以及采用合并挖礦的域名幣等;第三象限是同時使用獨(dú)立貨幣和獨(dú)立區(qū)塊鏈的系統(tǒng),比如以太坊,瑞波,萊特幣和未來幣等,第四象限是側(cè)鏈,采用獨(dú)立的網(wǎng)絡(luò)單筆比特幣作為底層貨幣的系統(tǒng),比如說BTCRealay
區(qū)塊鏈的分類
目前已知的區(qū)塊鏈分為三類
公共區(qū)塊鏈(Public Blockchain): 是指全世界任何人都可讀取可大宋交易進(jìn)行有效性確認(rèn),任何人都能參與與其共識過程的區(qū)塊鏈(共識過程是維持區(qū)塊鏈這種分布式數(shù)據(jù)庫的一致性,準(zhǔn)去性的關(guān)鍵技術(shù)),區(qū)塊鏈上的數(shù)據(jù)記錄公開,所有人都可以訪問,都可以發(fā)出交易請求,并通過驗(yàn)證被寫入?yún)^(qū)塊鏈,公示過程的參與者通過密碼學(xué)技術(shù)共同維護(hù)公共區(qū)塊鏈數(shù)據(jù)的安全,透明,不可篡改.公共區(qū)塊鏈的典型應(yīng)用包括比特幣,以太坊等
公共區(qū)塊鏈?zhǔn)峭耆植际降膮^(qū)塊鏈,區(qū)塊鏈數(shù)據(jù)公開,用戶參與程度高,同時易于產(chǎn)生網(wǎng)絡(luò)效應(yīng),便于應(yīng)用推廣.然而系統(tǒng)的運(yùn)行需要依賴于內(nèi)建的激勵機(jī)制,公共區(qū)塊鏈?zhǔn)窃噲D保存的數(shù)據(jù)越有價(jià)值,越要審視其安全性以及安全性帶來的交易成本,系統(tǒng)可擴(kuò)展性問題共同體區(qū)塊鏈(Consortium Blockchains): 又稱為聯(lián)盟鏈,是指參與區(qū)塊鏈的節(jié)點(diǎn)是事先選擇好的,節(jié)點(diǎn)間通常有良好的網(wǎng)絡(luò)鏈接等合作關(guān)系,區(qū)塊鏈上的數(shù)據(jù)可以是公開的也可以是內(nèi)部的,為部分意義上的分布式,可視為"部分去中心化",比如說有若干家金融機(jī)構(gòu)之間創(chuàng)建了某個共同體區(qū)塊鏈,每一個機(jī)構(gòu)都運(yùn)行著一個節(jié)點(diǎn),而且為了每一個區(qū)塊生效需要獲取至少其中10個機(jī)構(gòu)的確認(rèn).區(qū)塊鏈可以允許每個機(jī)構(gòu)可讀取,或者只受限于共識驗(yàn)證參與者,或者走混合路線,例如區(qū)塊的根哈希及應(yīng)用程序接口對外公開.允許外界用來進(jìn)行區(qū)塊鏈數(shù)據(jù)和區(qū)塊鏈專題信息查詢等,其典型應(yīng)用包括超級賬本(Hyperledger),區(qū)塊鏈聯(lián)盟R3CEV等,共同體區(qū)塊鏈的參與節(jié)點(diǎn)間的鏈接狀態(tài)較好,驗(yàn)證效率較高,只需要較低成本即可維持運(yùn)行,提供高速交易處理的同時較低交易費(fèi)用,有很好的擴(kuò)展性,數(shù)據(jù)可以保持一定的隱私性,但是這也意味著在共識體達(dá)成的狀態(tài)之下,參與節(jié)點(diǎn)可以一起篡改數(shù)據(jù)
-
私有區(qū)塊鏈(Private Blockchain): 參與的節(jié)點(diǎn)只有有限的范圍,比如特定機(jī)構(gòu)的自身用戶等,數(shù)據(jù)的訪問及使用有嚴(yán)格的權(quán)限管理,比如特定機(jī)構(gòu)的自身用戶等,數(shù)據(jù)的訪問及使用的有嚴(yán)格的權(quán)限管理,完全私有的區(qū)塊鏈中寫入的權(quán)限僅在參與者的手里,讀取權(quán)限可以對外開放,也可以進(jìn)行任意程度的限制,相關(guān)的應(yīng)用馕括數(shù)據(jù)庫管理,數(shù)據(jù)庫審計(jì)甚至公司管理,盡管在有些情況下希望私有區(qū)塊鏈可以具有公共的可審計(jì)行,但是更多情況下沒有公共的可讀性,由于是私有用戶說了算,,里面的數(shù)據(jù)沒有無法篡改的特性,對于第三方的保障力度大大降低,一次目前有很多私有區(qū)塊鏈會通過依附在比特幣等已有區(qū)塊鏈的方式存在,定期講系統(tǒng)快照數(shù)據(jù)記錄到比特幣系統(tǒng)中,其典型應(yīng)用入Eris Industries
私有區(qū)塊鏈可以帶來規(guī)則的改變,如果需要的花,運(yùn)行著私有區(qū)塊鏈的機(jī)構(gòu)可以很容易的修改區(qū)塊鏈的規(guī)則,回滾交易,這一點(diǎn)似乎有違背區(qū)塊鏈的本質(zhì),但是卻適用于一些特殊的場景需求,由于私有區(qū)塊鏈的驗(yàn)證者是內(nèi)部公開的,所以并不存在的部分驗(yàn)證節(jié)點(diǎn)工謀進(jìn)行51%攻擊的風(fēng)險(xiǎn),私有區(qū)塊鏈交易成本更低,交易只需要被幾個手心的高算力節(jié)點(diǎn)驗(yàn)證即可,而不是需要數(shù)萬個節(jié)點(diǎn)的確認(rèn),因此交易成本會降低,但是從長遠(yuǎn)來看,隨著區(qū)塊鏈技術(shù)的進(jìn)步,公共區(qū)的成本可能降低1-2個數(shù)量級,大致與高效的私有區(qū)塊鏈系統(tǒng)類似,私有區(qū)塊鏈節(jié)點(diǎn)間的鏈接情況好,故障可以迅速通過人工干預(yù)來修復(fù),從而提升交易速度并且可以更好的保護(hù)隱私
總結(jié)
公共區(qū)塊鏈,共同體區(qū)塊鏈和私有區(qū)塊鏈各有優(yōu)勢,公共區(qū)塊鏈很難實(shí)現(xiàn)的很完美,共同體區(qū)塊鏈及私有區(qū)塊鏈需要找到實(shí)際迫切需求的應(yīng)用需求和場景,至于具體選擇哪一套方案取決于具體需求,有時使用公共區(qū)塊鏈更好,有時又需要一定的私有控制,適用于使用共同體區(qū)塊鏈或者私有區(qū)塊鏈
區(qū)塊鏈的特征
去中心化
去中心化是區(qū)塊鏈的基本特征,意味著區(qū)塊鏈不再依賴于中央處理節(jié)點(diǎn),實(shí)現(xiàn)了數(shù)據(jù)的分布式記錄,存儲和更新;由于存在分布式存儲和算力,不存在中心化的硬件和管理機(jī)構(gòu),全網(wǎng)的節(jié)點(diǎn)的權(quán)利和義務(wù)均等,系統(tǒng)中的數(shù)據(jù)本質(zhì)是由全網(wǎng)節(jié)點(diǎn)共同維護(hù),由于每一個區(qū)塊的節(jié)點(diǎn)都必須遵守同一規(guī)則,當(dāng)然這個規(guī)則基于密碼算法而非信用,同時每次數(shù)據(jù)更新需要網(wǎng)絡(luò)內(nèi)其他用戶的批準(zhǔn),所以不需要一套第三方中介結(jié)構(gòu)或者信任結(jié)構(gòu)背書.在傳統(tǒng)的中心化網(wǎng)絡(luò)中,對一個中心節(jié)點(diǎn)實(shí)行攻擊即可破壞整個系統(tǒng),而在一個去中心化的區(qū)塊鏈網(wǎng)絡(luò)中,共計(jì)單個節(jié)點(diǎn)無法控制或者破壞整個網(wǎng)絡(luò),掌握網(wǎng)內(nèi)超過51%的節(jié)點(diǎn)知識獲取控制權(quán)的開始而已
透明性
區(qū)塊鏈的數(shù)據(jù)記錄對全網(wǎng)的節(jié)點(diǎn)是透明的,數(shù)據(jù)記錄的更新操作對全網(wǎng)節(jié)點(diǎn)也是透明的,這是區(qū)塊鏈系統(tǒng)值得信任的基礎(chǔ),由于區(qū)塊鏈系統(tǒng)使用開源的程序,開放的規(guī)則和高參與度,區(qū)塊鏈數(shù)據(jù)記錄和運(yùn)行規(guī)則可以被全網(wǎng)節(jié)點(diǎn)審查,追溯,具有很高的透明度
開放性
區(qū)塊鏈系統(tǒng)為開放性質(zhì),除了數(shù)據(jù)直接相關(guān)各方的私有信息被加密外,區(qū)塊鏈的數(shù)據(jù)對所有人公開,當(dāng)然也不包括有特殊權(quán)限要求的區(qū)塊鏈.任何人或參與節(jié)點(diǎn)都可以通過公開的接口查詢區(qū)塊鏈數(shù)據(jù)記錄或者開發(fā)相關(guān)應(yīng)用,因此整個系統(tǒng)信息高度透明
自治性
區(qū)塊鏈采用基于協(xié)商一致的規(guī)范和協(xié)議,使得整個系統(tǒng)的所有節(jié)點(diǎn)能夠在信用的節(jié)點(diǎn)自由的安全交換數(shù)據(jù),記錄數(shù)據(jù),更新數(shù)據(jù),把對個人或者機(jī)構(gòu)信任改成對體系的信任,任何人為的干預(yù)都將不起作用
信息不可篡改
區(qū)塊系統(tǒng)一旦經(jīng)過驗(yàn)證并且驗(yàn)證添加至區(qū)塊鏈后,就會得到永久的存儲,無法更改,當(dāng)然也有具備特殊權(quán)限更改需求的私有區(qū)塊鏈系統(tǒng)除外,除非能夠同時控制系統(tǒng)中超過51%的節(jié)點(diǎn),否則單個節(jié)點(diǎn)對數(shù)據(jù)庫的修改是無效的,因此區(qū)塊鏈的數(shù)據(jù)穩(wěn)定性和可靠性極高
匿名性
區(qū)塊鏈技術(shù)解決了節(jié)點(diǎn)間信任問題,因此數(shù)據(jù)交換甚至交易均可在匿名的情況下進(jìn)行,由于節(jié)點(diǎn)間的數(shù)據(jù)交換遵循固定并且已經(jīng)預(yù)知的算法,因而數(shù)據(jù)交換是無需信任的,可以基于地址而非個人身份進(jìn)行,因此交易雙方無需通過公開身份的方式讓對方產(chǎn)生信任
參考區(qū)塊鏈
吃粑粑的畢教授