劉貴浙
區塊鏈(Blockchain)是指通過去中心化和去信任的方式集體維護一個可靠數據庫的技術方案,是一種全民參與記賬的技術方式。而此前的記賬方式都是中心化的,需要中心化的中介,無論這個中介是傳統的政府、金融機構、公證機構還是新興的電商平臺、網絡支付平臺。
經濟學假設中,信息是充分的。實際上,正是因為信息不充分,才存在非常龐大的中介機構。而中介機構的存在,增加了交易成本,提高了交易門檻。區塊鏈技術本質上來說是一個大規模協作工具,它首次使用純技術方式讓直接的價值轉移成為可能,并延續了互聯網去中心化和去中介化的趨勢。去中介的區塊鏈技術將極大地顛覆信息中介行業。
源自比特幣的區塊鏈技術
2008年11月1日,一位化名中本聰(Satoshi Nakamoto)的程序員,在MIT計算機系統安全組的網站上發表了一篇僅8頁長的學術論文,《Bitcoin:A Peer-to-Peer Electronic Cash System》。中本聰描述了一種完全基于點對點的電子現金系統,使支付可以由交易雙方直接進行,擺脫了通過第三方中介(如商業銀行)的傳統支付模式,創造了—種全新的貨幣體系。
2009年1月,第一個序號為0的比特幣區塊——創世區塊誕生。幾天后的1月9日出現序號為1的區塊,并與序號為0的創世區塊相連接形成了鏈,標志著比特幣區塊鏈的誕生。
比特幣因其劇烈的價格波動、高度的匿名性、與犯罪相連的壞名聲以及其他技術原因,2009年誕生至今仍遠未進入主流。然而2014年以后,作為比特幣背后的數據結構,區塊鏈卻越來越受到廣泛關注。
區塊鏈技術是構建比特幣數據結構與交易信息加密傳輸的基礎技術,該技術實現了比特幣的發行與交易。區塊鏈技術的核心是所有當前參與的節點共同維護交易及數據庫,使交易基于密碼學原理而不基于信任,使得任何達成一致的雙方,能夠直接進行支付交易,不需第三方的參與。
從技術上來講,區塊是一種記錄交易的數據結構,反映了一筆交易的資金流向。系統中已經達成交易的區塊連接在一起形成了一條主鏈,所有參與計算的節點都記錄了主鏈或主鏈的一部分。
比特幣的產生需要依據特定的算法,通過大量復雜的運算才能生成,俗稱“挖礦”。挖礦就是指產生新區塊并計算隨機數的過程,以解決一項復雜的數學問題來保證比特幣網絡分布式記賬系統的一致性。這項復雜的數學問題是尋找一個隨機數散列值(也稱為哈希值)。散列值由散列函數生成,散列函數的功能是將任意長度的不同信息(例如數字、文本或其他信息)轉化為長度相等但內容不同的二進制數列(由0和1組成)。
比特幣采用的是散列算法中的SH256算法,任意長度的信息輸入通過這個函數都可以轉換成一組長度為256的二進制數字,以便統一存儲和識別。256個0或1最多可以組合成2256個不同的數,這個龐大的集合能夠滿足與比特幣相關的任何標記需要。且散列還有一個重要特征,若想要生成一個特殊的輸出數字,只能通過隨機嘗試的辦法逐個進行正向運算,而不能由輸出結果逆向推出輸入信息。這個特征是比特幣能夠順利運行的重要基石。挖礦就是通過改變隨機數來生成不同的散列值,直到符合要求。
一個區塊包含以下三部分:交易信息、前一個區塊形成的哈希散列和隨機數。交易信息是區塊所承載的任務數據,具體包括交易雙方的私鑰、交易的數量、電子貨幣的數字簽名等;前一個區塊形成的哈希散列用來將區塊連接起來,實現過往交易的順序排列;隨機數是交易達成的核心,
分布式記賬成為可能
比特幣使用整個P2P網絡中眾多節點構成的分布式數據庫來確認并記錄所有的交易行為。在信息傳遞過程中,發送方通過一把密鑰將信息加密,接收方在收到信息后,再通過配對的另一把密鑰對信息進行解密,這就保證了信息傳遞過程的私密性與安全性。比特幣的交易并非簡單的支付貨幣本身。由于每筆交易單都記錄了該筆資金的前一個擁有者、當前擁有者以及后一個擁有者,依據交易單可實現對資金的全程追溯。這也是比特幣的典型特征之一。最后,當每一筆交易完成時,系統都會向全網進行廣播,告訴所有用戶這筆交易的實施。
比特幣系統大約每十分鐘創建一個區塊,其中包含了這段時間里全球范圍內發生的所有交易。每個區塊中也包含了前一個區塊的ID,這種設計使得每個區塊都能找到其前一個節點,如此可一直倒推至起始節點,從而形成了一條完整的交易鏈條。
因此,從比特幣的誕生之日起,全網就形成一條唯一的主區塊鏈,其中記錄了從比特幣誕生以來的所有交易記錄,并以每十分鐘新增一個節點的速度無限擴展。這條主區塊鏈在每添加一個節點后,都會向全網廣播,從而使得每臺參與比特幣交易的電腦上都有—份拷貝。
在現實世界里每筆非現金交易都由銀行系統進行記錄,一旦銀行計算機網絡崩潰所有數據都會遺失。而在互聯網世界里,比特幣的所有交易記錄都保存在全球數量巨大且分散的計算機中,只要有一臺裝有比特幣程序的計算機還能工作,這條主區塊鏈就可以被完整地讀取。如此高度分散化的交易信息存儲,使得比特幣主區塊鏈完全遺失的可能性極小。
每個人在對交易的有效性進行驗證后,都可以根據這些交易數據生成新區塊。為了避免虛假交易或重復交易,使這一新區塊被信任需要構建工作量證明機制。如果想要修改某個區塊內的交易信息,就必須完成該區塊及其后續連接區塊的所有工作量,這種機制大幅提高了篡改信息的難度。同時,工作量證明也解決了全網共識問題,全網認可最長的鏈,因為最長的鏈包含了最大的工作量。
綜上所述,區塊鏈是一串使用密碼學方法相關聯產生的數據塊。在比特幣的應用中,整個區塊鏈就是比特幣的公共賬本,網絡中的每一個節點都有比特幣交易信息的備份。當發起一個比特幣交易時,信息被廣播到網絡中,通過算力的比拼而獲得合法記賬權的礦工將交易信息記錄成一個新的區塊連接到區塊鏈中,一旦被記錄,信息就不能被隨意篡改。比特幣是區塊鏈的一個“殺手級應用”,區塊鏈是比特幣的底層技術,且作用絕不僅僅局限在比特幣上。
區塊鏈系統同任何一個數字系統一樣,都離不開計算機硬件的支持。去除了第三方機構的同時,也無法得到第三方機構提供的硬件支持。區塊鏈集體記賬的特點要求每個支持交易的節點都能夠為系統提供計算能力,由此提出了一種鼓勵節點競相提供計算能力的機制——挖礦。
新區塊的生成將獎勵礦工新的電子貨幣,還可以通過設置交易費用來獎勵挖礦這種提供算力的行為,系統通過這樣的方式完成電子貨幣的發行,這也讓礦工有利可圖,成為了礦工挖礦的主要動機。
每個節點接收到交易信息以后,生成新的區塊并計算該區塊的隨機數答案,最快得到答案的節點將促成這筆交易的實現,完成交易的區塊記錄,并將該區塊廣播至所有節點。同時該節點將有可能獲得一枚新的電子貨幣作為獎勵。
截至2016年1月,支持比特幣運行的區塊鏈的計算能力已經達到了800,000,000Gh/s,代表每秒能夠進行8×1016次運算,全球Top500的超級計算機的算力加在一起都遠遠不及這個數量級。中國的算力占比特幣全網的50%以上。隨著全網算力提高,找到散列值的難度也會提升,從而維持10分鐘找到一次的頻率。
區塊鏈技術的特點
區塊鏈通過去中心化和去信任的方式集體維護一個可靠數據庫,該技術方案讓參與系統的任意多個節點,把一段時間系統內全部信息交流的數據,通過密碼學算法計算和記錄到一個數據塊,并且生成該數據塊的指紋用于鏈接下個數據塊和校驗,系統所有參與節點來共同認定記錄是否為真。
區塊鏈是一種類似于NoSQL(非關系型數據庫)的技術解決方案統稱,并不是某種特定技術,能夠通過很多編程語言和架構來實現。并且實現區塊鏈的方式種類也有很多,目前常見除運用于比特幣的POW(Proof of Work,工作量證明)外,還有POS(Proof of Stake,權益證明),DPOS(Delegate Proof of Stake,股份授權證明機制)等。
去中心化:分布式記錄+分布式儲存。區塊鏈與傳統網絡記錄體系不同,沒有設立中心記錄者,而是通過建立公開記錄體系,使全網每一個節點在參與記錄的同時也來驗證其他節點記錄結果的正確性,在全部參與者確認后完成信息記錄,以確保記錄結果真實性。
目前傳統數據庫是中心化記錄、中心化儲存,即使采用異地災備、云存儲,也只是將存儲地從一處變為多處,從本地變為云端,如果中央服務器出現問題,則災備數據庫也將停止更新數據。而區塊鏈數據庫是分布式記錄、分布式儲存、分布式傳播,每一條信息都由單個節點傳播給全網其它所有節點,每個節點都負責數據的記錄、儲存,沒有中心化或第三方機構負責管理,一個節點出現問題,其他節點會繼續數據的更新和存儲,通過去中心化的方式,維持系統穩定運行。
去信任化:非對稱加密數學+可靠數據庫。傳統互聯網模式通過可信任的中央節點或第三方通道進行信息匹配驗證和信任積累,這些中央節點或通道是否可信任對整個體系的信用影響極大。而區塊鏈,通過數學方法解決了信任問題,依靠非對稱加密和可靠數據庫完成了信用背書,所有的規則事先都以算法程序的形式表述出來,參與方不需要知道交易對手信用度,更不需要借助第三方機構來進行交易背書或者擔保驗證,而只需要信任共同的算法就可以建立互信,通過算法為參與者創造信用、產生信任和達成共識,完成去信任化。
區塊鏈采用非對稱加密算法,即在加密和解密的過程中使用+“密鑰對”,“密鑰對”中的兩個密鑰具有非對稱的特點:一是用其中一個密鑰加密后,只有另一個密鑰才能解開;二是其中一個密鑰公開后,根據公開的密鑰其他人也無法算出另外一個密鑰。在區塊鏈的應用場景中,一是加密時的密鑰是公開所有參與者可見的(公鑰),每個參與者都可以用自己的公鑰來加密一段信息,在解密時只有信息的擁有者才能用相應的私鑰來解密,用于接收價值。二是使用私鑰對信息簽名,公開后通過其對應的公鑰來驗證簽名,確保信息為真正的持有人發出。
整個系統將通過分數據庫的形式,讓每個參與節點都能獲得一份完整數據庫的拷貝。除非能夠同時控制整個系統中超過51%的節點,否則單個節點上對數據庫的修改是無效的,也無法影響其他節點上的數據內容。而在實際中,發動51%攻擊是無意義的,為掌握全網51%算力所需投入的成本,遠遠大于成功實施攻擊后獲得的收益,因此,從理論上來說,區塊鏈技術可以保障數據庫安全可靠,且參與系統中的節點越多和計算能力越強,該系統中的數據安全性越高。
區塊鏈仍存在一些問題
目前,區塊鏈技術的應用還處于初級階段,仍面臨著諸多問題。以區塊鏈最成熟的應用比特幣為例:
首先,技術層面上,網絡容量有限、確認時間長、能量消耗大。在區塊鏈中,每隔10分鐘增加一個區塊,由于區塊的容量有限(1MB),每個區塊最多可以容納4096筆交易,區塊鏈網絡每秒鐘只能處理7筆交易,遠低于Visa/Master網絡每秒4.7萬筆和支付寶雙十一8.59萬筆/秒的交易能力。在能耗方面,比特幣礦工目前的“挖礦”設備已經由300MH/秒的CPU升級到了5TH/秒的ASICs。據估計,目前比特幣網絡處理一筆交易的耗電量相當于美國一個家庭一天的耗電量,而碳排放是534噸/日或825萬噸/年。
其次,在安全層面上,比特幣交易平臺易遭到黑客攻擊。如2015年1月世界第三大比特幣交易所BitStamp因一次黑客攻擊丟失了540萬美元的比特幣。隨后,總部位于斯洛文尼亞的這家公司被迫停止交易。這次攻擊大約損失了19000個比特幣。這一幕同樣可能發生在通過區塊鏈交易的資產上。而比黑客攻擊更尷尬的是,丟失私鑰的用戶將無法挽回自己的資產。
再次,政策層面上,需要平衡監管與隱私?!叭ブ行幕弊屩行幕恼蓱]重重,監管政策不樂觀,而對于一個分散式網絡來說,監管的難度也不小。此外,人們對區塊鏈的理解程度和接受意愿不夠,這導致新技術及新應用很難推廣。
第四,事后不可追索。不可篡改是區塊鏈的一大好處,但在實際應用中,卻造成了無法事后追索的問題。一旦區塊寫入,就不能修改或取消,而一定需要進行新的一筆逆向交易。因此在構建區塊鏈的交易結算系統中,需要預先設置追索機制和例外機制。
區塊鏈的應用前景
無論是金融、公證、醫療、房地產還是物聯網領域,只要有過多的中介參與、過高的中介成本或者是低追蹤成本和高信息安全的需求,都會有區塊鏈技術的用武之地。
通信:通信領域是最早的區塊鏈應用之一。傳統的通信程序都是考慮如何用最短的時間和路徑傳送信息,如今除了速度,安全性成了關注重點,基于區塊鏈的比特信(Bitmessage)應運而生。區別與傳統點對點傳輸方式,比特信不需要信任溝通協議,一份郵件會發送給網絡系統中的所有人,只有真正擁有密鑰的人才能打開信件,這也避免了被追蹤收件方和發件方的風險。跟蹤信件的路徑是沒有意義的,因為所有人都收到了,這可以解決路徑的安全問題。由于這種方式對網絡帶寬和運算能力要求很高,只有在如今具備軟硬件基礎的情況下,才能承擔這種由快到安全的轉變。
域名管理也是區塊鏈在通信領域的潛在應用之一。傳統的域名管理系統是由ICANN分配給不同的機構,但這樣的樹狀結構非常不安全,尤其是像中國這種不控制任何根服務器的國家。基于區塊鏈技術的第二代域名管理系統從傳統的中心化管理系統轉變為去中心化的域名管理,使其更安全也更有效率。
金融:金融領域存在大量諸如銀行、證券交易所等中介機構,對區塊鏈技術的巨大需求使金融領域成為目前區塊鏈應用最多的領域。金融系統的去中心化將大大提高系統的運行效率。近年來開發出其他區塊鏈協議,使區塊鏈有機會在金融業和其他行業中得到實際應用。以太坊(Ethereum)、Ripple、Stellar、Eris、Tendermint、HyperLedger等,以權益證明、股份授權證明等機制取代了費時費力的比特幣工作量證明機制,從而提高了交易速度,降低了能耗。
匯豐銀行的報告稱,央行未來可以通過區塊鏈技術來發行貨幣。例如政府要實行量化寬松,央行可以低成本且精確的發放到每個人的帳戶,也可以查到每一筆錢的流轉。并且可以通過智能合約,在錢上設定條件。例如,這筆錢必須進入農業,則這筆錢的預設程序限制了這筆錢只能流向農業,在發放之前就能寫成合約。未來的金融發展方向之一是可編程金融,區塊鏈技術將是重要的實現手段。
銀行很大的一個風險是單點錯誤,典型例子是巴林銀行,因為一個交易員作假虛報,最終導致巴林銀行破產清算。如果銀行采取更嚴格的審查和審計勢必提高經營成本。如果使用區塊鏈可以從根本上避免單點錯誤的發生,任何細微的造假系統會馬上識別,進而降低審查和審計成本。
互聯網已經實現了信息的自由傳遞,但是價值的自由傳遞尚未實現。下一步是將資產數字化,在互聯網上登記各類權益資產,實現權益資產的自由流通。區別于信息的可復制,權益資產對應的價值是不可復制的,其傳輸方式顯然與信息不同,區塊鏈技術有望實現從信息互聯網到價值互聯網的轉變。
醫療:目前醫療領域是除了金融領域外的區塊鏈第二大應用領域,包括病例、指紋等在內的很多資料具有隱私性,需要很高的權限保護。盡管目前對與個人信息的管理能基本符合要求,未來技術的發展將獲得大量特定基因數據,當前的中心化資料系統也會變得很吃力,容易出現大規模數據泄漏的問題。
而區塊鏈技術可以通過多簽名私鑰和加密技術來防止這種情況的出現。當數據放置在區塊鏈上后,使用多簽名技術,就能夠讓那些獲得授權的人們才可以對數據進行訪問。使用這種技術,將能夠制定一定的規則來對數據進行訪問,必須獲得授權才能夠進行,無論是醫生、護士或者病人本身都需要獲得許可;在某些情況下,可以設定需要3個人中2個人授權才可以進行。
物聯網:傳統物聯網模式是由一個中心化的數據中心收集所有已聯接設備的信息,這種方式在生命周期成本、收入方面有嚴重缺陷。如果設備的運行環境可以去中心化,彼此相連,形成分布式云網絡,整個網絡的生命周期就可以變得非常長,同時運行成本可以顯著降低。
區塊鏈對于物聯網的意義在于,為物聯網中數以億計的設備之間建立低成本的、P2P的溝通橋梁;同時,通過去中心化的共識機制保證了信息的安全性和私密性,又能做到開放和透明化的數據管理。
基于區塊鏈技術的智能合約,可以使智能設備成為自我維護、自我調節的獨立個體,能夠自主的與其他設備核實身份、交換信息,并按照事先擬定的規則合約,執行相應的動作。
公證:公證作為當前社會的重要需求,具有較高的成本并嚴重依賴政府機關和權威單位的信用,也造成了門檻較高、國內知識產權保護不夠的問題。利用區塊鏈去中心化的特點,使用數學信用背書可以完成全自動化公證。如果從重要信息到生活痕跡都能夠證明所有權,且數據永久保存并隨時可追溯源頭,微信息和微知識產權將形成體量驚人的交易市場。當前已有不少公司在公證領域做出嘗試。Bitproof專注于學校學歷證書的認證,M0negraph試圖把藝術品進行區塊鏈登記,Factom提供對所有文書、文件的數據資料公證服務。
政府:基于區塊鏈技術的分布式賬本在政府公共事務管理中可以發揮重要作用。分布式賬本有潛力幫助政府在收集稅收、傳遞福利、簽發護照、記錄土地注冊、保證商品供應鏈、投票等方面,確保政府記錄和服務的完整性。目前,已經有一些國家政府開始了區塊鏈實踐。區塊鏈對于限制權力腐敗,提供政府公信力也有幫助。不可更改的公共賬本便于政府審計和公民監督。智能合約還可以使一些可電子化、可編程的行政過程自動化,避免人為干擾。
華爾街的應用
從云計算到開源軟件到第二代信息安全技術,華爾街在新技術的應用和推廣上緊跟前沿。鑒于區塊鏈技術的潛在影響,華爾街的金融機構也已開始主動研發。幾乎所有歐美大型金融機構當前各自都有10~20個項目在開發測試中。
美國已經在基于區塊鏈技術的證券交易方面做了很多的探索,一旦區塊鏈技術的證券交易做大,意味著可能成為真正意義上的全球交易所。區塊鏈技術的交易平臺可以跨過所有的法律障礙來完成交易。納斯達克在2015年12月30日完成了基于區塊鏈平臺的首個證券交易,推出基于區塊鏈的數字分類賬技術Linq平臺,進行股票的記錄交易與發行。SEC近期批準了美國上市電商Overstock將自己公司的股票放在Overstock自己的區塊鏈技術交易平臺上進行交易。
2014年以來,包括巴萊克銀行、瑞士信貸銀行、摩根大通在內多家銀行都已經加入了由金融技術公司R3領導的組織,著手為區塊鏈技術在銀行業中的使用制定行業標準和協議。傳統的跨國轉賬SWIFT協議結算清算時間很長,一般來說資金電匯按天來結算,而R3區塊鏈聯盟可以實現銀行間的跨國準時清算。全球范圍內加入R3聯盟的銀行已超過42家。
人民銀行研究區塊鏈技術
1月20日央行召開數字貨幣研討會,提出爭取早日推出央行發行的數字貨幣。2月15日,《財新周刊》刊發對央行行長周小川的專訪,談及數字貨幣的未來。周小川認為紙幣必然要被取代。央行發行的數字貨幣不會影響現有的貨幣供給、創造機制和貨幣政策傳導,其防偽性和安全性則有賴于多種信息技術手段的保障。
周小川稱,“央行發行數字貨幣,主要體現這么幾個原則:一是提供便利性和安全性。二是做到保護隱私與維護社會秩序、打擊違法犯罪行為的平衡,尤其針對洗錢、恐怖主義等犯罪行為要保留必要的遏制手段。三是要有利于貨幣政策的有效運行和傳導。四是要保留貨幣主權的控制力,數字貨幣是自由可兌換的,同時也是可控的。為此,我們認為數字貨幣作為法定貨幣必須由央行來發行。數字貨幣的發行、流通和交易,都應當遵循傳統貨幣與數字貨幣一體化的思路,實施同樣原則的管理。”
關于區塊鏈技術,周小川稱,“數字貨幣的技術路線可分為基于賬戶和不基于賬戶兩種,也可分層并用而設法共存。區塊鏈技術是一項可選的技術,其特點是分布式簿記、不基于賬戶,而且無法篡改。如果數字貨幣重點強調保護個人隱私,可選用區塊鏈技術,人民銀行部署了重要力量研究探討區塊鏈應用技術,但是到目前為止區塊鏈占用資源還是太多,不管是計算資源還是存儲資源,應對不了現在的交易規模,未來能不能解決,還要看。除了區塊鏈技術,人民銀行數字貨幣研究團隊還深入研究了數字貨幣涉及的其他相關技術,比如移動支付、可信可控云計算、密碼算法、安全芯片等等。”