書名: DAG區(qū)塊鏈技術(shù):原理與實踐作者名: 曹源本章字數(shù): 2920字更新時間: 2019-01-03 16:18:07
序一
“如果你沒有理解我的意思,我沒有時間說服你。”
——摘自中本聰語錄
近年來,隨著區(qū)塊鏈這一波發(fā)展高潮的來臨,業(yè)界發(fā)現(xiàn)除了與這個新生事物相關(guān)的法規(guī)及其監(jiān)管問題突出之外,制約這項偉大發(fā)明落地應(yīng)用推廣的桎梏主要有兩個方面:一是整個區(qū)塊鏈(公鏈)系統(tǒng)并發(fā)運行效率很低,二是共識機制和智能合約甚至整個生態(tài)系統(tǒng)的友好性、可用性,特別是安全性能非常不到位。所以本書集中講解了這兩方面的原理與近來國內(nèi)外對區(qū)塊鏈的探索進展。本書是一本理論聯(lián)系實際的好范本,非常適合涉獵面頗廣的大專院校師生和社會上從事區(qū)塊鏈相關(guān)工作或者對區(qū)塊鏈感興趣的各類讀者深入閱讀。
本書深入淺出,內(nèi)容豐富,幾乎涵蓋了整個區(qū)塊鏈相關(guān)的基本技術(shù),尤為突出的是DAG在區(qū)塊鏈領(lǐng)域的創(chuàng)造性應(yīng)用。從基本區(qū)塊鏈基礎(chǔ)概念知識入手,本書比較詳盡地介紹了DAG圖論常識及其屬性、特征以及數(shù)學(xué)定義,讓非計算機和數(shù)學(xué)專業(yè)的讀者也能讀懂。接著,對DAG區(qū)塊鏈的共識機制、DAG區(qū)塊鏈的智能合約、DAG區(qū)塊鏈中的密碼學(xué)技術(shù)、DAG區(qū)塊鏈安全問題,以及目前最有代表性的DAG區(qū)塊鏈項目案例等幾個方面進行了系統(tǒng)性闡述、分析和建設(shè)性展望。本書圖文并茂,理實交融,既可用作培訓(xùn)區(qū)塊鏈特別是基于DAG的區(qū)塊鏈的講義,又可用作自學(xué)教材。
全書主要圍繞DAG區(qū)塊鏈的共識機制和智能合約以及相關(guān)安全問題進行展開。為什么是DAG區(qū)塊鏈呢?因為其可以解決當(dāng)前區(qū)塊鏈成塊慢、缺乏并發(fā)處理機制,以至于無法滿足大規(guī)模場景應(yīng)用這個最基本的核心問題。相比圖論中的一般圖,DAG里的許多問題可以在多項式級甚至線性復(fù)雜條件下加以解決。以比特幣和以太坊為代表的區(qū)塊鏈,由于鏈?zhǔn)酱鎯C構(gòu),導(dǎo)致出塊無法并發(fā)執(zhí)行。所以,具有代表性的DAG區(qū)塊鏈項目,例如IOTA、Byteball、HashGraph及Intervalue等,都先后提出并采用了所謂“無區(qū)塊(blockless)”概念。創(chuàng)造性地運用DAG數(shù)據(jù)結(jié)構(gòu),讓每一筆交易直接參與維護全網(wǎng)的交易順序。這樣交易發(fā)起后就可以跳過區(qū)塊打包階段,直接融入全網(wǎng)。這樣連打包交易出塊的時間都節(jié)省了,效率自然也提高了很多。也正是DAG沒有“區(qū)塊”的概念,由用戶發(fā)出的數(shù)據(jù)單元前后鏈接構(gòu)成,每個單元可以有多個父數(shù)據(jù)單元,因而在這種區(qū)塊鏈上實現(xiàn)智能合約功能需要技術(shù)創(chuàng)新,充滿挑戰(zhàn)。因此,早期DAG區(qū)塊鏈項目IOTA并沒有支持智能合約,而知名的Byteball也僅支持非圖靈完備的簡單的聲明式智能合約。在本書中介紹的最令人振奮的兩個DAG區(qū)塊鏈智能合約進展案例是美國的Hedera Hashgraph和中國的InterValue。簡單實用安全可靠,是智能合約成功與否的關(guān)鍵。
本書作者們主要是DAG區(qū)塊鏈InterValue項目的技術(shù)領(lǐng)導(dǎo)和骨干人員。我作為這個項目的首席顧問,對整個項目團隊執(zhí)行力和集體的天賦充滿信心。所以我在此很高興地向讀者推薦,在讀懂本書有關(guān)區(qū)塊鏈基本原理和DAG數(shù)據(jù)結(jié)構(gòu)算法分析之后,建議重點圍繞InterValue的DAG區(qū)塊鏈章節(jié),全面系統(tǒng)地理解InterValue項目的目標(biāo)、愿景、生態(tài)體系、關(guān)鍵特征、技術(shù)和產(chǎn)品優(yōu)勢等,比如獨創(chuàng)的共識機制、技術(shù)創(chuàng)新的智能合約設(shè)計、更為嚴密的安全功能的技術(shù)實現(xiàn),以便步步深入并領(lǐng)略基于DAG區(qū)塊鏈的最新進展和對其未來前景的美好期待與展望。
下面就簡要介紹一下InterValue的主要特點和優(yōu)勢,拋磚引玉,希望對讀者詳盡閱讀本書各章節(jié)有所幫助。
在重點討論DAG區(qū)塊鏈InterValue項目之前,我們需要特別關(guān)注一下目前美國最有代表性的DAG區(qū)塊鏈項目——Hedera Hashgraph,因為有“標(biāo)桿”比較,才能更好地鑒別與判斷孰優(yōu)孰劣。首先,從共識機制的技術(shù)實現(xiàn)方面看,目前已有的Hashgraph共識算法是通過Gossip網(wǎng)絡(luò)和虛擬投票策略達到交易順序共識的。但實現(xiàn)該共識的前提是網(wǎng)絡(luò)節(jié)點超過2n/3的投票能力具有對famous witness事件的一致投票結(jié)果。其中n是全網(wǎng)的當(dāng)前投票能力的總和,該投票能力通常為節(jié)點的持股數(shù)量。雖然采用本地投票策略使得Hashgraph可以實現(xiàn)較快的交易確認,但此方法也帶來了許多問題:由于全網(wǎng)投票能力波動大,可能導(dǎo)致系統(tǒng)長時間無法找到滿足2n/3投票一致的事件,從而無法達成共識;不同節(jié)點處理事件的能力差別較大,可能會造成系統(tǒng)長時間無法達成共識;由于采用Gossip鄰居交換協(xié)議,節(jié)點會周期性剔除長時間未更新的鄰居,此時若子網(wǎng)規(guī)模較小,很容易使惡意節(jié)點在同一輪產(chǎn)生兩個famous witness事件,從而產(chǎn)生雙花交易;隨著系統(tǒng)規(guī)模變得越來越大,節(jié)點收到的同步信息也越來越多,以至于系統(tǒng)的吞吐率會隨著節(jié)點數(shù)目的增加而降低。鑒于Hashgraph以上種種問題,InterValue區(qū)塊鏈項目提出了自己的共識機制——HashNet。這種共識采用基于雙層Gossip拓撲的Hashgraph。上層Gossip網(wǎng)絡(luò)中的節(jié)點為全節(jié)點(full node),負責(zé)維護全網(wǎng)交易一致性。全節(jié)點通過DPOS的方式選舉出來,全節(jié)點之間通過Hashgraph達成共識,這樣有利于保持網(wǎng)絡(luò)穩(wěn)定性。每個全節(jié)點從下層網(wǎng)絡(luò)中接收兩類數(shù)據(jù):下層網(wǎng)絡(luò)內(nèi)部節(jié)點的交易數(shù)據(jù)和跨子網(wǎng)交易數(shù)據(jù)。下層Gossip網(wǎng)絡(luò)中的節(jié)點為局部全節(jié)點(local full node),負責(zé)維護子網(wǎng)內(nèi)部交易的一致性。與全節(jié)點不同,局部全節(jié)點的選舉需要綜合考量其Token數(shù)量、處理能力、帶寬、在線時長等因素,局部全節(jié)點之間通過Hashgraph達成子網(wǎng)交易共識。這樣HashNet共識有效地避免了Hashgraph共識中很多的問題與不足,可以說是“青出于藍而勝于藍”。并且,隨著InterValue項目不斷深入發(fā)展,基于HashNet的增強DAG共識和用于witness(公證人)選擇的BF-VRF共識機制相結(jié)合的雙層共識機制將日臻完善,不斷優(yōu)化更新,以滿足大規(guī)模化場景應(yīng)用的需求。
另外,DAG區(qū)塊鏈Byteball及Hashgraph在智能合約及其安全性能方面,DAG區(qū)塊鏈通過了非圖靈完備智能合約實現(xiàn)成功案例或者正在開發(fā)出實用性的圖靈完備智能合約。但Byteball智能合約雖簡單可用,卻無法滿足復(fù)雜應(yīng)用場景需求。而圖靈完備智能合約邏輯復(fù)雜,雖然支持應(yīng)用范圍廣泛,但合約內(nèi)容需要具備專業(yè)知識的程序員編寫,難以滿足廣大普通用戶的實際需要,并且智能合約出現(xiàn)安全漏洞的風(fēng)險很高。因此,在DAG區(qū)塊鏈上實現(xiàn)安全性能高的圖靈完備智能合約是目前業(yè)界迫切期待的創(chuàng)新點。如果能將在DAG區(qū)塊鏈上實現(xiàn)簡練實用的非圖靈完備智能合約和比較友好、安全、可用并且功能強大的圖靈完備智能合約的共生同存統(tǒng)一于平臺之中,將使得兩類智能合約優(yōu)勢互補,特別有利于區(qū)塊鏈平臺上建構(gòu)各類應(yīng)用生態(tài),從而極大地促進整個區(qū)塊鏈行業(yè)的繁榮發(fā)展。作為區(qū)塊鏈4.0的典型代表,InterValue項目的智能合約正著力實現(xiàn)這兩類智能合約于同一平臺友好共存,本人力薦廣大讀者重點閱讀本書有關(guān)InterValue的章節(jié)。除此之外,抗量子攻擊級別加密算法技術(shù)、密碼技術(shù)、新型智能合約語言等也十分值得一讀,相信真正喜歡區(qū)塊鏈或?qū)^(qū)塊鏈感興趣的讀者,一定會從本書中不斷理解區(qū)塊鏈特別是基于DAG區(qū)塊鏈的魅力和其相應(yīng)的“價值鏈接”——也就是項目名稱InterValue所賦予的豐富內(nèi)涵。
展望區(qū)塊鏈發(fā)展趨勢,公鏈平臺如InterValue和Byteball等項目,將有機整合撒手锏大規(guī)模應(yīng)用以及數(shù)字經(jīng)濟包括交易功能在內(nèi)的Token經(jīng)濟共同體形成三位一體的社會經(jīng)濟體系,應(yīng)該說這是區(qū)塊鏈行業(yè)帶動整個社會發(fā)展的大趨勢。公鏈基礎(chǔ)設(shè)施勢必會不斷創(chuàng)新和完善,保證大規(guī)模并發(fā)的處理能力,智能合約完備友好,整個公鏈體系安全可靠。區(qū)塊鏈金融一定是真正點對點分布式的,交易所僅僅是典型公鏈的一個功能。而基于龐大區(qū)塊鏈社區(qū)用戶的Token經(jīng)濟共同體生態(tài)的核心應(yīng)用場景,將是推動公鏈發(fā)展壯大的真正動力。期待DAG區(qū)塊鏈能引領(lǐng)區(qū)塊鏈時代創(chuàng)新發(fā)展?jié)L滾向前的大潮,實現(xiàn)人類史上又一次生產(chǎn)力(公鏈技術(shù))和生產(chǎn)關(guān)系(各類Token經(jīng)濟共同體生態(tài)的場景應(yīng)用)變革與飛躍。
原阿里巴巴集團產(chǎn)品技術(shù)委員會主要負責(zé)人之一
Higgs Accelerator創(chuàng)新創(chuàng)研加速器創(chuàng)始人、計算機科學(xué)家Allen Wu(吳載午)
加州灣區(qū)硅谷
- Advanced Splunk
- Oracle WebLogic Server 12c:First Look
- Maven Build Customization
- 深入實踐Spring Boot
- Django:Web Development with Python
- Building Mapping Applications with QGIS
- 焊接機器人系統(tǒng)操作、編程與維護
- Android程序設(shè)計基礎(chǔ)
- Linux Shell核心編程指南
- Visualforce Developer’s guide
- JBoss:Developer's Guide
- PHP與MySQL權(quán)威指南
- App Inventor少兒趣味編程動手做
- 你好!Python
- Java Script從入門到精通(第5版)