袁琛
摘 要 2008年,中本聰發(fā)表了一篇關(guān)于比特幣的論文,首次建立了點對點電子現(xiàn)金系統(tǒng)的概念,為缺乏第三方可信平臺和交易雙方互不信任情況下交易活動的安全進(jìn)行提供了一種選擇。區(qū)塊鏈技術(shù)是這種點對點電子現(xiàn)金系統(tǒng)的技術(shù)基礎(chǔ)和關(guān)鍵核心,是一種全新的去中心化結(jié)構(gòu)?,F(xiàn)階段,學(xué)術(shù)界對區(qū)塊鏈技術(shù)的研究才剛剛起步,研究成果較少且尚未成熟。在本論文中,筆者首先對區(qū)塊鏈技術(shù)的基礎(chǔ)架構(gòu)進(jìn)行分析,然后對區(qū)塊鏈的特點進(jìn)行了分析。然后對區(qū)塊鏈技術(shù)使用中的公示機制進(jìn)行了介紹,并對比了其特點。文章對于區(qū)塊鏈技術(shù)的發(fā)展有較一定的理論指導(dǎo)價值。
關(guān)鍵詞 區(qū)塊鏈;特點;共識機制
中圖分類號 TP3 文獻(xiàn)標(biāo)識碼 A 文章編號 1674-6708(2019)230-0153-02
1 區(qū)塊鏈基礎(chǔ)架構(gòu)及其特點
區(qū)塊鏈在比特幣系統(tǒng)中是作為一個分布式共享賬本的形式存在,同時也是比特幣的底層技術(shù),在其中發(fā)揮連接溝通的作用,使得網(wǎng)絡(luò)中所有節(jié)點之間形成穩(wěn)定的信任關(guān)系。有關(guān)區(qū)塊鏈的含義,學(xué)術(shù)界有著狹義和廣義兩種說法,前者認(rèn)為區(qū)塊鏈本質(zhì)上是一種數(shù)據(jù)結(jié)構(gòu),負(fù)責(zé)將數(shù)據(jù)信息進(jìn)行封裝,并以時間順序進(jìn)行排序,同時對內(nèi)容進(jìn)行加密,確保其不可偽造和篡改。后者則認(rèn)為區(qū)塊鏈實質(zhì)上是一種以塊鏈形式數(shù)據(jù)結(jié)構(gòu)存儲和驗證數(shù)據(jù)、以分布式共識算法生成和更新數(shù)據(jù)、以密碼學(xué)方式加密數(shù)據(jù)保障傳輸、同時以自動化腳本代碼進(jìn)行數(shù)據(jù)運算和系統(tǒng)運轉(zhuǎn)的分布式構(gòu)架。
傳統(tǒng)的第三方支付平臺是一種中心化的數(shù)據(jù)庫,網(wǎng)絡(luò)中所有的交易行為和交易信息必須經(jīng)由這個中心數(shù)據(jù)庫完成和記錄,因此需要確保中心與各節(jié)點之間的暢通,維護(hù)成本高,難度大[ 1 - 3 ]。
而區(qū)塊鏈?zhǔn)且环N去中心化的數(shù)據(jù)庫,去除了傳統(tǒng)第三方支付平臺中的中央數(shù)據(jù)庫,繼而由網(wǎng)絡(luò)中千千萬萬個節(jié)點來共同承擔(dān)數(shù)據(jù)庫的作用,儲存和維護(hù)發(fā)生在網(wǎng)絡(luò)中的每一筆交易信息,因此,每個節(jié)點既扮演數(shù)據(jù)庫維護(hù)者的角色,也發(fā)揮數(shù)據(jù)共享者的作用。然而,在區(qū)塊鏈系統(tǒng)中,僅僅做到去中心化還不能完全保障數(shù)據(jù)安全,還需將網(wǎng)絡(luò)中各個區(qū)塊之間進(jìn)行鏈接,共同記錄和監(jiān)管所有的交易數(shù)據(jù)。在區(qū)塊鏈中,各區(qū)塊之間是一種共生的關(guān)系,即下一區(qū)塊的內(nèi)容由上一區(qū)塊的內(nèi)容決定,區(qū)塊之間環(huán)環(huán)相扣,若要更改其中一個區(qū)塊的內(nèi)容需要獲取其他全部區(qū)塊的認(rèn)可,因此難度極大,繼而確保了數(shù)據(jù)的安全性[ 4 ]。
一般來說,區(qū)塊鏈的基礎(chǔ)架構(gòu)由數(shù)據(jù)層、區(qū)塊層、網(wǎng)絡(luò)層、共識層和激勵層、應(yīng)用層五層構(gòu)成(如圖2所示)。底層數(shù)據(jù)全部保存在數(shù)據(jù)層中,為了確保其安全性,采用了非對稱加密、哈希算法、時間戳、Merkle樹等密碼學(xué)技術(shù)進(jìn)行加密;區(qū)塊層中包括了區(qū)塊之間的連接方式及其內(nèi)部結(jié)構(gòu);網(wǎng)絡(luò)層是對數(shù)據(jù)安全性進(jìn)行驗證的,其應(yīng)該是對數(shù)據(jù)的安全性進(jìn)行驗證,除此之外,還要對信息的傳播方式進(jìn)行協(xié)議的統(tǒng)一。如圖所示,圖中的激勵和網(wǎng)絡(luò)層使用封裝的方法,對各節(jié)點之間的共識機制、經(jīng)濟(jì)激勵發(fā)行機制和分配機制;頂層應(yīng)用層則包括區(qū)塊鏈的各種應(yīng)用場景和案例。鏈?zhǔn)絽^(qū)塊結(jié)構(gòu)、分布式節(jié)點的共識算法、哈希值、非對稱加密、智能合約、經(jīng)濟(jì)激勵機制等基礎(chǔ)技術(shù)是該模型的核心部分[ 5 ]。
區(qū)塊鏈的特點如下所示:
1)去中心化。區(qū)塊鏈的核算和存儲技術(shù)是分布式的,相比與傳統(tǒng)數(shù)據(jù)結(jié)構(gòu),去除了中央數(shù)據(jù)庫,網(wǎng)絡(luò)中各節(jié)點具有相等的權(quán)利和義務(wù),由全體共同負(fù)責(zé)數(shù)據(jù)的維和和存儲。
2)自治性。區(qū)塊鏈中所有節(jié)點的數(shù)據(jù)交互遵循一套既定的協(xié)議和規(guī)范,任何人為的干預(yù)行為都將被拒絕,因此整個區(qū)塊鏈節(jié)點都能在自由安全的環(huán)境下交換數(shù)據(jù),從而確保交易活動的安全可靠。
3)不可篡改性。數(shù)據(jù)信息一旦通過各節(jié)點驗證寫入?yún)^(qū)塊鏈系統(tǒng),就將被各節(jié)點共識并封裝,在單個節(jié)點篡改數(shù)據(jù)信息不能達(dá)成共識,因而無效,從而極大程度地確保了區(qū)塊鏈信息的安全性。
4)匿名性。整個區(qū)塊鏈都遵循同一套協(xié)議和規(guī)范,因此網(wǎng)絡(luò)中任意兩個節(jié)點之間無需建立信任即可進(jìn)行數(shù)據(jù)交互,從而確保了數(shù)據(jù)信息的匿名性。
2 區(qū)塊鏈共識機制與特點
區(qū)塊鏈系統(tǒng)中如果各個節(jié)點能夠相互信任的話,那么用戶之間就能進(jìn)行信息的寫入和交換,這也是區(qū)塊鏈技術(shù)使用的技術(shù)支持前提。以往的用戶之間都是相互獨立的,各個節(jié)點之間很難進(jìn)行相互信任,但是如今的區(qū)塊鏈技術(shù)能夠打破該技術(shù)壁壘,實現(xiàn)用戶之間可信任的數(shù)據(jù)交換。
1)POW:顧名思義,工作量證明機制即對于工作量的證明,是指在分布式系統(tǒng)中,新區(qū)塊的生成必須滿足的要求。節(jié)點通過消耗自身算力計算隨機哈希散在數(shù)列的數(shù)值,最先求得該隨機數(shù)的節(jié)點體現(xiàn)了該節(jié)點的算力,獲得比特幣獎勵同時享有記賬權(quán)。在比特幣系統(tǒng)中,為了確保新區(qū)塊的生成時間維持在10分鐘,隨機數(shù)的計算的難度值每2016塊調(diào)整一次。在以太坊社區(qū)中,為了提高區(qū)塊的生成效率,使得每12秒生成一個新區(qū)塊,隨機數(shù)搜索算法和難度值調(diào)整算法均進(jìn)行了一定程度的優(yōu)化。
2)POS:POS(Proof of Stake)直譯意思為權(quán)益的證實,與前面所述對于工作量的證明不同的是,權(quán)益的證實是需要對使用者進(jìn)行權(quán)限的驗證。比如POS要對使用該算法的用戶,要求其提供貨幣的擁有證明,權(quán)益最高的節(jié)點將獲得記賬權(quán)。挖礦難度值方面,POW共識系統(tǒng)與POS系統(tǒng)有較大的差別,兩者雖然在難易程度上保持一致,有相同的難易度,但是POW共識系統(tǒng)的特點是其計算能力越強,其在進(jìn)行挖礦活動時就越容易;而后者則與幣齡成反比,即區(qū)塊中交易消耗的持有幣數(shù)量和時間越多,挖礦難度值越低。
3)PBFT:該共識機制的基礎(chǔ)原理是拜占庭容錯算法,對于區(qū)塊鏈中惡意節(jié)點的忍受限度為1/3,即只要全網(wǎng)要確保有超過2/3的節(jié)點是可以受到信任和信賴的,這樣就能使區(qū)塊鏈中的數(shù)據(jù)得到很好地安全保證。數(shù)據(jù)的前后一致和節(jié)點之間的一致性都能得到很好地保證,也能夠確保數(shù)據(jù)的相對安全性。因此,運用此共識機制的區(qū)塊鏈網(wǎng)絡(luò)至少具有4個節(jié)點,且要有3個可信節(jié)點。
上述內(nèi)容為目前比較有代表性的幾種共識算法的運作原理,表1對上述共識算法的抗攻擊性、效率、使用場景及適應(yīng)節(jié)點的規(guī)模進(jìn)行了歸納梳理[ 6 ]。
由共識算法性能比較表可以看出,POW共識算法與POS共識算法均適用于節(jié)點規(guī)模較大且任一節(jié)點都享有同等記賬權(quán)(即公有鏈)的場景,其中POW較POS能適應(yīng)更多的節(jié)點。DPOS共識算法的抗攻擊性和效率很高,同時也能適應(yīng)較大的節(jié)點規(guī)模,但是該算法只能在選出的擁有記賬權(quán)的節(jié)點(即聯(lián)盟鏈)的場景。PBFT共識算法的使用場景最廣,能同時適用于聯(lián)盟鏈或私有鏈,同時抗攻擊性與效率也非??捎^,但適應(yīng)節(jié)點的規(guī)模較小。RAFT共識算法是眾多主流算法中效率最高的,但是其缺點也非常多,如抗攻擊性低、適用節(jié)點規(guī)模小、使用場景局限。
參考文獻(xiàn)
[1]Ming Zheng Liu, Zong feng Zou.The application of blockchain technology in spot exchange [J]. Journal of Intelligent & Fuzzy Systems,2018,34(2).
[2]安慶文.基于區(qū)塊鏈的去中心化交易關(guān)鍵技術(shù)研究及應(yīng)用[D].上海:東華大學(xué),2017.
[3]唐塔普斯科特,亞力克斯·塔普斯科特.區(qū)塊鏈革命:比特幣底層技術(shù)如何改變貨幣、商業(yè)和世界[J].中國報道,2016(11):34-41.
[4]何蒲,于戈,張巖峰,等.區(qū)塊鏈技術(shù)與應(yīng)用前瞻綜述[J].計算機科學(xué),2017,44(4):1-7.
[5]沈鑫,裴慶祺,劉雪峰.區(qū)塊鏈技術(shù)綜述[J].網(wǎng)絡(luò)與信息安全學(xué)報,2016,2(11):52-61.
[6]朱巖,甘國華,鄧迪,等.區(qū)塊鏈關(guān)鍵技術(shù)中的安全性研究[J].信息安全研究,2016,2(12):1090-1097.