蓋靜

距離中本聰在2008年11月發(fā)布白皮書《比特幣:一個(gè)點(diǎn)對(duì)點(diǎn)的電子支付系統(tǒng)》至今,已經(jīng)有十余年,而區(qū)塊鏈概念也隨著比特幣價(jià)值的火爆而逐漸進(jìn)入大眾視野,引起全球各界的廣泛關(guān)注。區(qū)塊鏈的去中心化、公開透明、不可篡改等特性,為金融領(lǐng)域的信任問題提供了新型解決方案,也在供應(yīng)鏈、政務(wù)服務(wù)、商品溯源等方面取得廣泛進(jìn)展。區(qū)塊鏈技術(shù)從公有鏈向聯(lián)盟鏈和私有鏈的發(fā)展,超級(jí)賬本等專注于提供基于區(qū)塊鏈的分布式賬本平臺(tái)的出現(xiàn),區(qū)塊鏈技術(shù)層面與應(yīng)用層面的松耦合狀態(tài),在拓寬區(qū)塊鏈技術(shù)的應(yīng)用領(lǐng)域的同時(shí),也大大降低了區(qū)塊鏈技術(shù)的應(yīng)用難度。
2019年10月24日,習(xí)近平總書記在中央政治局第十八次集中學(xué)習(xí)時(shí)強(qiáng)調(diào),區(qū)塊鏈技術(shù)的集成應(yīng)用在新的技術(shù)革新和產(chǎn)業(yè)變革中起著重要作用,要把區(qū)塊鏈作為核心技術(shù)自主創(chuàng)新的重要突破口,加快推動(dòng)區(qū)塊鏈技術(shù)和產(chǎn)業(yè)創(chuàng)新發(fā)展。這也為區(qū)塊鏈技術(shù)在我國的創(chuàng)新發(fā)展提供了新的增長動(dòng)能。
區(qū)塊鏈的技術(shù)特征
區(qū)塊鏈技術(shù)的去中心化依賴于共識(shí)機(jī)制。區(qū)塊鏈通過共識(shí)機(jī)制決定記賬權(quán)的歸屬,在去中心化程度最高的公有鏈中,每一個(gè)節(jié)點(diǎn)的地位均等,沒有中心節(jié)點(diǎn)的存在,因而中心節(jié)點(diǎn)被攻擊帶來系統(tǒng)崩潰、中心節(jié)點(diǎn)篡改賬本等問題的可能性大大降低。節(jié)點(diǎn)之間不需要相互信任,每一個(gè)節(jié)點(diǎn)通過工作量證明來競爭記賬權(quán),記賬完成后,各節(jié)點(diǎn)同步區(qū)塊鏈賬本的內(nèi)容。這種去中心化的特性,也意味著為了達(dá)成共識(shí),需要節(jié)點(diǎn)之間的多次交互,而每一次交互都可能存在延遲,因而對(duì)系統(tǒng)的可擴(kuò)展性形成了約束。區(qū)塊鏈技術(shù)的運(yùn)用就需要在系統(tǒng)可擴(kuò)展性與去中心化之間做出平衡。
區(qū)塊鏈的防篡改特性主要依賴于工作量累積。區(qū)塊鏈的數(shù)據(jù)結(jié)構(gòu)是一個(gè)有序的、反向鏈接的交易塊列表,每一個(gè)區(qū)塊均指向自己的父區(qū)塊,區(qū)塊鏈中的每一個(gè)區(qū)塊都由一個(gè)散列值來標(biāo)識(shí),這個(gè)散列值是對(duì)區(qū)塊頭使用SHA256函數(shù)加密散列算法得到。區(qū)塊頭的信息包括三類:一是父區(qū)塊的哈希值;二是默克爾樹根,也就是本區(qū)塊所有交易產(chǎn)生的默克爾樹根節(jié)點(diǎn)的哈希值;三是與挖礦競爭相關(guān)的信息,如時(shí)間戳、目標(biāo)難度值以及隨機(jī)數(shù)。如果一個(gè)區(qū)塊得到了6次確認(rèn),也就是在一個(gè)區(qū)塊的上面累積了6次工作量,那么這個(gè)區(qū)塊被更改的可能性幾乎為零。因?yàn)槿绻緟^(qū)塊中某一個(gè)交易更改,那么工作量證明中的隨機(jī)數(shù)就要重新計(jì)算,同時(shí)本區(qū)塊的哈希值也發(fā)生改變,為此需要對(duì)下一個(gè)區(qū)塊進(jìn)行更改,因?yàn)橄乱粋€(gè)區(qū)塊中包含了本區(qū)塊的哈希值,因而隨機(jī)數(shù)也需要重新計(jì)算,因而就意味著需要同時(shí)進(jìn)行6次工作量的重新計(jì)算,考慮到現(xiàn)有全網(wǎng)的算力,這幾乎不可能實(shí)現(xiàn)。
區(qū)塊鏈技術(shù)不等同于分布式賬本技術(shù)。人們常將區(qū)塊鏈技術(shù)與分布式賬本技術(shù)混為一談,但是實(shí)際上二者并非同一概念范疇。區(qū)塊鏈技術(shù)只是分布式賬本的一種實(shí)現(xiàn)形式,并非所有的分布式賬本都需要使用一連串的區(qū)塊來提供安全有效的分布式共識(shí)。分布式賬本是分布在多個(gè)節(jié)點(diǎn)或者計(jì)算設(shè)備上的數(shù)據(jù)庫,每一個(gè)節(jié)點(diǎn)都可以復(fù)制并保存一個(gè)分類賬,每一個(gè)節(jié)點(diǎn)都可以進(jìn)行獨(dú)立更新。分布式賬本的突破特征是分類賬不由任何中央節(jié)點(diǎn)維護(hù),而是由每一個(gè)節(jié)點(diǎn)獨(dú)立構(gòu)建和記錄。所有的區(qū)塊都分布在點(diǎn)對(duì)點(diǎn)的網(wǎng)絡(luò)中,由于它是一個(gè)分布式賬本,所以它可以在沒有服務(wù)器管理的情況下存在,數(shù)據(jù)質(zhì)量可以通過數(shù)據(jù)庫賦值和計(jì)算確認(rèn)來維護(hù),區(qū)塊鏈本質(zhì)上是一個(gè)不斷增長的記錄列表,它的結(jié)構(gòu)只允許將數(shù)據(jù)添加到數(shù)據(jù)庫中,所以不支持更改或者刪除之前輸入的數(shù)據(jù)。
當(dāng)前區(qū)塊鏈技術(shù)應(yīng)用中的兩難
區(qū)塊鏈技術(shù)有三大優(yōu)良特性:去中心化、公開透明、防篡改,但是這些技術(shù)上的優(yōu)良特性,與系統(tǒng)的可擴(kuò)展性、高并發(fā)性、隱私保護(hù)、信息容錯(cuò)機(jī)制等相互制約。
一是去中心化與高并發(fā)性之間存在兩難。去中心化是區(qū)塊鏈的一個(gè)核心優(yōu)勢,但去中心化機(jī)制的核心是節(jié)點(diǎn)的共識(shí),為了在區(qū)塊鏈中實(shí)現(xiàn)區(qū)塊的確認(rèn),就需要在不同的節(jié)點(diǎn)之間反復(fù)交互,而每一次交互都會(huì)帶來系統(tǒng)延遲,從而限制了系統(tǒng)的每秒處理交易總量(Transactions Per Second,簡稱TPS)。例如,在比特幣交易中,一個(gè)區(qū)塊的確認(rèn)時(shí)間是10分鐘,而要保證交易不會(huì)回滾,那么至少需要等到6個(gè)區(qū)塊得到確認(rèn)。比特幣每秒只能進(jìn)行7筆交易,這與金融領(lǐng)域特別是零售支付領(lǐng)域?qū)Ω卟l(fā)性的需求相差甚遠(yuǎn)。例如,中國2018年“雙十一”期間,網(wǎng)聯(lián)處理交易的并發(fā)量的峰值達(dá)到超過9.2萬筆每秒。人們嘗試通過增加區(qū)塊的大小或者增加區(qū)塊的出塊頻率等方式來提升系統(tǒng)的吞吐量,但是這樣的擴(kuò)展方案存在交易上限,且上限受到網(wǎng)絡(luò)延遲等因素的影響。聯(lián)盟鏈的典型代表Hyperledger Fabric,通過優(yōu)化共識(shí)機(jī)制、實(shí)現(xiàn)背書節(jié)點(diǎn)與排序節(jié)點(diǎn)的解耦、實(shí)施交易并發(fā)處理等方式提高了系統(tǒng)的交易量,然而最終也只能達(dá)到每秒幾百筆到幾千筆的交易量級(jí)。
二是區(qū)塊鏈的公開透明與隱私保護(hù)之間存在兩難。為了在公有鏈上達(dá)成共識(shí),鏈上所有的節(jié)點(diǎn)均需要對(duì)加入?yún)^(qū)塊的交易數(shù)據(jù)的真實(shí)性、有效性進(jìn)行驗(yàn)證,確認(rèn)后的交易被記錄在區(qū)塊鏈中,任何接入系統(tǒng)的節(jié)點(diǎn)只要愿意都可以下載自區(qū)塊創(chuàng)世開始發(fā)生的所有交易,從而給交易主體隱私保護(hù)帶來挑戰(zhàn)。比如,在比特幣系統(tǒng)中,從中本聰?shù)膭?chuàng)世區(qū)塊開始的所有交易均完整地記錄在區(qū)塊鏈之中,雖然通過比特幣地址很難與現(xiàn)實(shí)中個(gè)人的真實(shí)身份相互關(guān)聯(lián),但是依然可能通過數(shù)據(jù)分析挖掘出交易主體在現(xiàn)實(shí)中的真實(shí)身份,一旦身份被識(shí)別,那么交易方在系統(tǒng)中發(fā)生的所有交易都將暴露。
三是區(qū)塊鏈的防篡改特性與信息容錯(cuò)機(jī)制間存在兩難。區(qū)塊鏈的防篡改特性是指交易一旦寫入到區(qū)塊鏈之中將不能夠修改,防篡改性為交易溯源提供了應(yīng)用空間。但是該特性與歐盟2018年5月公布的史上最嚴(yán)格的隱私保護(hù)法案《通用數(shù)據(jù)保護(hù)條例》(General Data Protection Regulation,簡稱GDPR)存在沖突。如,按照GDPR的要求,公民享有對(duì)個(gè)人信息的若干隱私保護(hù)權(quán)利,包括知情權(quán)、訪問權(quán)、更正權(quán)、被遺忘權(quán)、限制處理權(quán)、拒絕權(quán)、數(shù)據(jù)可攜帶權(quán)、免受自動(dòng)決策權(quán)等。但是,對(duì)于區(qū)塊鏈技術(shù)而言,一條信息一旦被寫入?yún)^(qū)塊中,就難以被修改或者刪除,從而將對(duì)個(gè)人信息的更正、被遺忘等權(quán)利實(shí)施形成制約。
四是區(qū)塊鏈高出塊速度與系統(tǒng)高分叉存在兩難。為了提升系統(tǒng)的處理效能,減少交易排隊(duì)現(xiàn)象,人們?cè)噲D通過提高出塊速度來提高系統(tǒng)的吞吐量,但是出塊速度的加快,會(huì)相應(yīng)帶來不同節(jié)點(diǎn)對(duì)于最長交易鏈條認(rèn)識(shí)上的不一致,進(jìn)而導(dǎo)致各節(jié)點(diǎn)對(duì)于最長鏈認(rèn)識(shí)上的分歧,從而交易回滾和系統(tǒng)分叉的可能性顯著提升。
五是智能合約使用高級(jí)語言與執(zhí)行結(jié)果的不確定性存在兩難。比特幣所使用的腳本語言較為簡單,其無法執(zhí)行類似循環(huán)語句或者流控制,因而不是圖靈完備(如果一個(gè)語言能夠做到用圖靈機(jī)做到的所有事情,這種語言是圖靈完備的)的,也就是說一些復(fù)雜的功能在比特幣系統(tǒng)中無法實(shí)現(xiàn)。為此,以太坊擴(kuò)展了比特幣系統(tǒng)的語言,通過智能合約的方式拓展了區(qū)塊鏈技術(shù)的應(yīng)用。但是,使用高級(jí)語言編寫的智能合約,可能會(huì)帶來執(zhí)行結(jié)果的不確定性。同時(shí),智能合約的編寫難度高,開發(fā)人員編寫的智能合約可能在完備性上有所欠缺,更容易產(chǎn)生邏輯上的漏洞。同時(shí),由于區(qū)塊鏈技術(shù)編程語言的復(fù)雜性,很少有人能夠精通語言,大多是整段地復(fù)制智能合約的執(zhí)行代碼,這就造成了對(duì)黑客的防范極為困難。歷史上出現(xiàn)的The DAO事件,即是因?yàn)楹霞s漏洞造成了價(jià)值數(shù)千萬美元的加密貨幣損失。
六是區(qū)塊鏈的可追蹤特性的價(jià)值依賴于源頭信息準(zhǔn)確性。區(qū)塊鏈可追溯的特性,可以用于打假、質(zhì)量保證、品牌保護(hù)等,但前提是源頭信息真實(shí)準(zhǔn)確。源頭數(shù)據(jù)上鏈過程的真實(shí)性和準(zhǔn)確性與區(qū)塊鏈技術(shù)本身無關(guān)。現(xiàn)實(shí)中,很多商品源頭及跟蹤信息均需要人工參與,上鏈后信息不可修改,但是如果上鏈的信息本身真實(shí)性、準(zhǔn)確性存在不足,就喪失了追溯的意義。因而如何保證數(shù)據(jù)源頭的真實(shí)性、如何保證鏈下數(shù)據(jù)與鏈上數(shù)據(jù)的一致性都是重要問題。
區(qū)塊鏈的技術(shù)改進(jìn)方案
區(qū)塊鏈技術(shù)的應(yīng)用從比特幣應(yīng)用的1.0階段,進(jìn)入到了商業(yè)應(yīng)用的2.0階段,并隨著物聯(lián)網(wǎng)、第五代移動(dòng)通信技術(shù)(5G)、大數(shù)據(jù)、云計(jì)算等核心技術(shù)的發(fā)展,通過構(gòu)建人與人之間、人與物之間、物與物之間的萬物互聯(lián)的社會(huì)進(jìn)入到了價(jià)值應(yīng)用的3.0階段。區(qū)塊鏈技術(shù)發(fā)展至今,主要面臨兩大制約:一是區(qū)塊鏈的性能方面,主要體現(xiàn)在可擴(kuò)展性不足,交易吞吐量不高;二是隱私信息保護(hù)方面,難以滿足交易主體匿名以及個(gè)人隱私保護(hù)的需求,技術(shù)上仍需要在兼顧去中心化的同時(shí),保證用戶的隱私信息不因?yàn)榻灰坠_而暴露。
區(qū)塊鏈性能方面
區(qū)塊鏈性能的改善受到可擴(kuò)展性的制約,而可擴(kuò)展性無法得到解決的主要癥結(jié)就在共識(shí)形成機(jī)制。未來要拓展區(qū)塊鏈技術(shù)的應(yīng)用就需要在兼顧中心化、安全性的同時(shí),對(duì)系統(tǒng)的可擴(kuò)展性做出改進(jìn)。當(dāng)前的關(guān)鍵技術(shù)包括異步共識(shí)、隨機(jī)共識(shí)、分區(qū)方案、子鏈和側(cè)鏈技術(shù)、可信執(zhí)行環(huán)境、隱形中心化等。
一是共識(shí)算法的優(yōu)化。在公有鏈中,工作量證明的共識(shí)機(jī)制對(duì)資源造成了極大的浪費(fèi),而這種資源浪費(fèi)除了決定記賬權(quán)之外別無用處,類似金本位制度下,消耗大量資源將黃金從地下挖掘出來,再運(yùn)到美聯(lián)儲(chǔ)的金庫,造成對(duì)資源的極大浪費(fèi)。為此,人們嘗試在共識(shí)算法上做出改進(jìn),一方面是采用異步共識(shí)、隨機(jī)共識(shí)、分區(qū)方案等核心技術(shù);另一方面是讓渡一部分去中心化特性,將區(qū)塊鏈從公有鏈向聯(lián)盟鏈和私有鏈延伸,采用諸如拜占庭共識(shí)(BFT)/拜占庭容錯(cuò)共識(shí)(PBFT)、分布式一致性算法(Raft、Paxos)等共識(shí)機(jī)制提高運(yùn)行效率。
二是將傳統(tǒng)順序交易轉(zhuǎn)換為并行交易。如Hyperledger Fabric是一個(gè)帶有節(jié)點(diǎn)許可的聯(lián)盟鏈系統(tǒng),通過將過去交易在排序完成之后或者是在排序的過程當(dāng)中執(zhí)行,改進(jìn)為執(zhí)行-排序-驗(yàn)證-提交,提升系統(tǒng)的擴(kuò)展性和靈活性,同時(shí)將系統(tǒng)的順序交易,改進(jìn)為并發(fā)性交易,特別是不同的鏈碼(智能合約)指定不同的背書節(jié)點(diǎn)(負(fù)責(zé)驗(yàn)證交易有效性)。交易預(yù)先執(zhí)行的方式還避免了交易結(jié)果的不確定性,能夠使系統(tǒng)抵抗一些非確定性的攻擊。
三是子鏈和側(cè)鏈技術(shù)的運(yùn)用。典型的如比特幣的閃電網(wǎng)絡(luò)(Lighting Network)和以太坊的雷電網(wǎng)絡(luò)(Raiden Network)的應(yīng)用。以太坊將雷電網(wǎng)絡(luò)用于交易雙方的轉(zhuǎn)賬過程,交易雙方通過智能合約方式部署一條交易通道,并在通道中鎖定一定數(shù)量的以太幣,交易通過多重簽名的方式在通道中進(jìn)行,交易雙方可以隨時(shí)關(guān)閉交易通道,只有在通道關(guān)閉時(shí)才會(huì)發(fā)生寫入?yún)^(qū)塊鏈的動(dòng)作。通道中的任意一方持有的余額證明都是由對(duì)方簽名,任何一方都無法偽造出一份對(duì)自己更有利的余額證明。通過建立通道的方式,將部分鏈上動(dòng)作移出到鏈外,可以極大地節(jié)約區(qū)塊的共識(shí)過程,從而提升系統(tǒng)并發(fā)量。
用戶隱私信息保護(hù)方面
用戶隱私信息的保護(hù)是區(qū)塊鏈應(yīng)用過程中需要解決的重要問題,特別是在公有鏈中,由于用戶的信息在區(qū)塊鏈上是公開的,因而隱私保護(hù)面臨的挑戰(zhàn)更大。例如比特幣,盡管地址是匿名的,但是在與其他實(shí)體的交互過程中,容易被反匿名,從而導(dǎo)致用戶交易記錄的隱私泄露。為了實(shí)現(xiàn)區(qū)塊鏈的用戶隱私信息保護(hù),當(dāng)前的關(guān)鍵技術(shù)包括同態(tài)加密技術(shù)、可執(zhí)行環(huán)境、零知識(shí)證明、群簽名、環(huán)簽名等。一是同態(tài)加密技術(shù)的運(yùn)用。對(duì)于交易設(shè)定私鑰,保證只有交易的相關(guān)方可以看到交易的信息,進(jìn)而避免了交易在全網(wǎng)進(jìn)行傳播對(duì)于隱私性能的損害。二是可信執(zhí)行環(huán)境的運(yùn)用。可信執(zhí)行環(huán)境系統(tǒng)(Trusted ExecutionEnvironment,簡稱TEE)是一個(gè)獨(dú)立環(huán)境,受到硬件機(jī)制的保護(hù),與現(xiàn)有系統(tǒng)隔離,提供從文件到內(nèi)存的全方位的安全能力。在可信執(zhí)行環(huán)境的內(nèi)部,將密文解密成明文進(jìn)行計(jì)算,不需要擔(dān)心明文數(shù)據(jù)被竊取。同時(shí),在數(shù)據(jù)離開可執(zhí)行環(huán)境時(shí),先轉(zhuǎn)換成密文,再返回到通用操作系統(tǒng)。三是零知識(shí)證明的運(yùn)用。零知識(shí)證明是指證明者能夠在不向驗(yàn)證者提供有用信息的情況下,使驗(yàn)證者相信某個(gè)論斷是正確的,從而可以實(shí)現(xiàn)驗(yàn)證者不知道具體交易內(nèi)容的情況下驗(yàn)證交易有效性。此外,密碼學(xué)中的群簽名和環(huán)簽名等技術(shù)可以用來提升系統(tǒng)的隱私保護(hù)能力。群簽名技術(shù)因?yàn)榇嬖诠芾韱T的角色,最終可以揭示簽名者,但是環(huán)簽名技術(shù)由于去掉了管理員的角色,可以進(jìn)一步提升交易的匿名性。
區(qū)塊鏈技術(shù)的發(fā)展方興未艾,在降低社會(huì)交易成本、提高社會(huì)效率、實(shí)現(xiàn)交易透明及可監(jiān)管方面發(fā)揮了積極的作用,有人將區(qū)塊鏈的更新和發(fā)展與互聯(lián)網(wǎng)的周期性變化做類比,認(rèn)為如果說將20世紀(jì)末半導(dǎo)體、互聯(lián)網(wǎng)和核能技術(shù)看作第三次工業(yè)革命,那么很有可能區(qū)塊鏈技術(shù)將與人工智能、物聯(lián)網(wǎng)和量子計(jì)算等一起,成為第四代工業(yè)革命的中堅(jiān)力量。未來,隨著區(qū)塊鏈在性能、隱私保護(hù)、相關(guān)法律缺失等方面的改進(jìn),區(qū)塊鏈技術(shù)還將迎來新的發(fā)展機(jī)遇。