摘要:究竟區塊鏈具有多大的魔力能讓人如此信任,或者說,我們在說信的時候究竟信的是什么。那么我們說信區塊鏈時,信的是什么呢信密碼學算法區塊鏈是用算法達成信任的,其中最重要的算法之一,就是密碼學。信博弈論區塊鏈中最玄妙的部分是共識算法。
FISCO
BCOS是完全開源的聯盟區塊鏈底層技術平臺,由金融區塊鏈合作聯盟(深圳)(簡稱金鏈盟)成立開源工作組通力打造。開源工作組成員包括博彥科技、華為、深證通、神州數碼、四方精創、騰訊、微眾銀行、亦筆科技和越秀金科等金鏈盟成員機構。代碼倉庫:https://github.com/FISCO-BCOS
大家好,我是張開翔。
如你所見,【FISCO BCOS開源社區】開通了,很高興和你在此以文相會。這個號將由你,由我,由FISCO BCOS背后117家成員單位的工程師們,乃至社區沉淀下來的數千開發者通力打造。我們開放了多元化的社區協作通道,希望和你,和廣大區塊鏈愛好者,一起聊聊從事區塊鏈技術研發的切身感悟,一起分享踩過的每一個坑、越過的每一道檻,一起將咱中國自己的聯盟鏈技術推向世界的頂端。
這是本號第一篇文章,就從The trust machine、Code is Law、信鏈得永生這些近乎癡迷的口號說起吧。我會在今明的兩篇文章里拋磚引玉,談談在區塊鏈的世界里,我們的信與不信。
當前,“區塊鏈,信任的機器(Blockchain:The trust machine)”已經成為了一句口號,緊接著就是“去中心化、群體共識、不可篡改、高一致性、安全和保護隱私”等一系列聽起來很厲害的術語。究竟區塊鏈具有多大的魔力能讓人如此信任,或者說,我們在說“信”的時候究竟信的是什么。
信息,指身份、資產、價格、地理位置等自然屬性和行為信息,它并不是先天可信任的,因為信息散亂、不完整,可能虛假,甚至可能會有人利用信息的不對稱性牟利。
把信息整理成結構化數據,通過數據校驗的方式,保證其在傳播中可保持完整性、全網一致性、可追溯性,不會被惡意篡改;通過冗余存儲的方式,保證其公開、共享、可訪問,保證數據一直有效。那么,這信息本身就可以被“信任”,從而成為大家的“公共知識”,成為全網參與者都認可的“最大公約數”。
如果信息體現著價值,且這些價值被大家認知、認可,能被量化,具有可交易的等價物屬性,或可能隨著時間增值,甚至得到司法背書承認,這些信息才具有商業意義上的“信用”。
好比我們認識一個人,但不代表我們信任他。然而這個人一貫表現不錯,在社群里言行一致,漸漸地獲得了大家的信任。這時的信任依舊不等于信用,除非這個人擁有可觀的資產,或者其個人歷史上有盈利和償還的能力,未來也大概率能持續持有資產和承兌債務,那么這個人才具備了“信用”。
區塊鏈體系基于算法而不是人治,有望通過其獨特的分布式架構、加密算法、數據結構、共識機制等,把信息固化成大家的信任錨點;有望通過技術手段把各種現實世界的資源轉換成可兌付的數字資產,并展開一系列多方商業協作的活動,這就是所謂的 “信息到信任到信用”,甚至于因為區塊鏈這個黑科技的、行之有效且難以理解的玄妙,這個“信”字仿佛升華成了“信仰”。
那么我們說信區塊鏈時,信的是什么呢?
區塊鏈是用算法達成信任的,其中最重要的算法之一,就是密碼學。區塊鏈中最基本的密碼學應用是HASH摘要、對稱加密和非對稱加密算法,以及相關的簽名驗簽算法。
HASH算法的舊版本已經被證明可破解而被拋棄了,目前在用的SHA256等算法依舊堅不可破。HASH算法的特性是把一堆數據單向生成一段定長的數據,基本不會發生碰撞,可起到原始數據的“指紋”作用,其單向性不可逆,推不出原始數據,具有一定的抗量子性,是能隱藏原始數據又能在必要時提供校驗憑據的最佳方式。
數字簽名一般基于公私鑰體系,用私鑰簽名,公鑰驗簽或者反之。數字簽名源自密碼學的牢靠性,使得不可能有人能偽造別人的私鑰簽名,所以一個擁有私鑰的人可以通過數字簽名,對他的資產簽名確權,或者在雙方交易時,采用對手方的公鑰發起交易,將資產轉移給對方,對方用自己的私鑰才能驗簽解開,以獲得所有權。
AES、RSA、ECC橢圓曲線等幾種對稱和非對稱算法廣泛地用于數據加解密、安全通信等場景,其安全級別取決于算法本身和密鑰長度,當AES使用128~512位密鑰,RSA/ECC采用1024甚至2048位密鑰時,其保護的數據理論上需要普通計算機上億年的計算時間才能暴力破解。這些算法在商業、科學、軍事領域都經受了考驗。
加密學領域里還有同態加密、零知識證明、環簽名群簽名、格密碼等新的方向,目前都處于從理論發展到工程的階段,都在功能、安全強度、效率方面快速優化中,已經可以看到落地使用的可能性了。同時我們也意識到,密碼學通常需要經過長期的發展、驗證,穩定后才能獲得廣泛認可,要么實踐中經歷了大量考驗,要么經過權威機構的審核和認證,才能在生產領域大放異彩。密碼學里的理論到工程,常常有很長的時間周期。
加密算法的一個基本哲學是計算成本,當一個算法保護的資產價值,遠低于攻破該算法所需的成本時,就是安全的。但如果用一個算法保護一個無價之寶,自然就會有人不計成本地去攻擊獲利,所以,密碼學的安全,也是辯證的、需要量化的。
隨著量子計算機等學說的興起,經典密碼學可能會經受一些挑戰,但量子計算機的理論完善和工程實現還有待時日,目前來看,基本上我們可以近乎“無條件”相信區塊鏈里已經采用的密碼學算法,同時,區塊鏈領域的實踐者也在陸續引入各種抗量子的密碼學算法,這是一場持續的博弈。
2 、信數據區塊鏈的數據結構,無非是區塊+鏈。新區塊將自己的區塊高度、交易列表,和上一個區塊的HASH,共同再生成一個HASH做為新區塊的標識,如此循環,形成了一個環環相扣的數據鏈。這個鏈條里的任何一個字節甚至一個Bit被修改,都會因為HASH算法的特性被校驗發現。
同時,區塊數據被廣播給全網所有參與者,參與者越多,規模效應越強。少數人即使強行修改、刪剪自己的區塊數據,也很容易被其他人校驗出異常并不予采納,只有多數人認可的數據得以留存和流傳。也就是說,數據是大家人盯人的形態盯著的,且存在多份副本,一旦落地,只要鏈還在,數據就可以永遠留存。
基于容易驗證的鏈式數據結構、群體冗余保存、共同鑒證,區塊鏈數據是“難以篡改”的,所有人拿到的數據也都是一致的,信息公開透明,公共知識得以彰顯和固化。
從另一個角度看,數據達到信任,但能否達到“信用”還要看數據的價值,也就是數據本身攜帶的信息,是否能代表有價的資產、有用的信息,諸如身份、交易關系、交易行為、大數據等等,都能代表一定的商業價值。這些數據如果分享出來,足以構建完整的商業基礎。
但如果是在過于強調隱私的場景里,大家愿意分享的信息本來就很少,那樣就很難達到信用的“最大公約數”。然而,在當前的商業環境里,信息隔離和隱私保護是硬訴求,信息共享和隱私保護成了嚴峻的矛和盾的關系,除非整個商業關系和商業邏輯出現了革新。
所以,隱私保護相關的研究被大量關注,諸如“多方安全計算”、“零知識證明”的理論大行其道。理論上講,確實可以做到公布很少的信息就能做到可驗證,但其復雜性和計算開銷,又是工程層面要去解決的事情了。
3 、信博弈論區塊鏈中最玄妙的部分是“共識算法”。共識算法的定義是在一個群體中,用一種機制協調大家共同或輪流記賬,得出無爭議的、唯一性的結果,且保證這個機制可以持續下去。
換句話說,大家一起維護一個賬本,選擇誰做為記賬者?憑什么相信記賬者的動作是正確的?怎么防止記賬者作惡?如果記賬者正確記賬如何得到激勵?共識機制完整地回答了這些問題。
共識的邏輯是發生在線上的,但實際上,背后是現實世界的競爭博弈。
POW(工作量證明)采用算力去競爭記賬者的席位和獲得記賬者的獎勵?,F實生活中,為了構建具有競爭力的算力工廠,礦工通常需要研發或購買大量的新型號礦機,運輸到有穩定和便宜電力供應地區,消耗大量的電費、網費以及其他運營費用,在被監管時又得舉家搬遷,浪跡全球,實際上投入了大量(現實世界的)資金、精力以及背著巨大的風險。如果要在POW競爭中獲得穩定可觀的收益,投入的資金動輒以億計,并不亞于辦一家企業。
POS和DPOS用權益證明代替了算力消耗,看起來是環保多了。而代表權益的token,除了創始團隊自己發行的之外,“礦工們”一般需要通過幣幣兌換,或者直接法幣購買數字幣的方式獲得,即使是幣幣兌換,掏出來的幣也常常是采用法幣購買的,或者至少這些權益都能以法幣進行標價,這其實也是現實世界里的財富注入和背書。
然而,和現實的商業關系對比,POW和POS等共識并沒有法律和監管機制兜底,也容易受不斷變化的博弈形勢所影響,比如社群的規模、礦工的更迭、核心技術運營團隊的變化。慢慢地,本來有錢和有能力的人,或許會更加有錢和有權力,去中心化的網絡可能逐漸變成了卡特爾組織,礦工和技術社區的瓜葛也會不停地掀起波瀾,造成分叉、回滾、價格傾軋、對韭當割等現象。
總的來說,人們還是信任區塊鏈上的“自治”,在這種分布式自治里,單個事件(如一筆交易)具有“概率性”,同時全網又追求“最終一致性”(公共賬本的一致)。這種短期的概率性和長期的確定性,一定程度上可以達成動態的“納什均衡”,支撐起鏈的生態,給人演化出一種玄妙的“信仰”感。
另一方面,聯盟鏈的記賬者一般是機構級的角色。聯盟鏈要求記賬者身份可知,參與者們經過許可才能接入網絡,他們之間是一種合作博弈。聯盟鏈引入了現實世界里的身份信息作為信用背書,如工商注冊信息、商業聲譽、承兌信用、周轉資金,或者行業地位、執業牌照、法律身份等,參與者在鏈上的一切行為均可審計、追查,也讓相關的監管部門在必要時可以有的放矢,精準懲戒,強制執行,具有很高的威懾力。
在這種環境里,聯盟鏈的參與者一起協作維護網絡,共享必要的信息,在平等透明、安全可信的網絡里開展交易,只需要防止少量記賬者的惡意操作風險,避免系統上的可用性風險。因引入了現實世界里必要的信任背書,即使聯盟鏈業務邏輯非常復雜,而信任模型卻更直觀。
所以,所謂的共識機制,背后依舊是現實世界里財力物力的競爭和信用背書,以及相應行之有效的激勵和懲戒機制。
天下并沒有免費的午餐,也沒有平白無故的愛恨?!靶拧币粋€記賬者,是信他在現實世界里所投入的成本、付出的代價,以及考慮到整個機制有震懾他的懲罰,相信記賬者為了持續的收益和增值,不會無故破壞這個網絡。
4 、信智能合約智能合約是由多產的跨領域法律學者尼克·薩博(Nick Szabo)提出來的。他在發表于自己的網站的幾篇文章中提到了智能合約的理念,定義如下:
“一個智能合約是一套以數字形式定義的承諾(promises),包括合約參與方可以在上面執行這些承諾的協議"。
簡單地說,可以理解為紙質合約的電子版,用代碼實現,無差別地運行在區塊鏈網絡的每一個節點上,在共識的作用下執行既定的合約規則。
智能合約一般基于一個特制的虛擬機,使用沙盒模式運行,屏蔽掉可能導致不一致性的一些功能。比如獲取系統時間這個操作,在不同的機器上,時鐘都可能不同,這就可能導致依賴時間的業務邏輯出現問題。再比如隨機數,以及外部文件系統、外部網站輸入等,這些都可能導致虛擬機執行結果不同,都會被虛擬機沙盒環境隔離。
如果要采用java語言寫合約,要么裁減掉jdk里的相關函數(系統時間、隨機數、網絡、文件等),要么放到一個有嚴密權限管控和隔離設定的docker里運行?;蛘吒纱嘣O計一門新的語言,如以太坊的Solidity,只實現特定的指令。又或者放棄掉一些“智能”特性,用簡單的堆棧指令序列完成關鍵的驗證判斷邏輯。
所以,在區塊鏈上執行智能合約,基于沙盒機制控制,憑借區塊鏈的共識算法,達到全網一致、難以篡改、不可否認等特性,運行結果輸出就是全網認可的一份合同,江湖人稱“Code is Law”。
然而,只要是代碼,就一定有出現bug或漏洞的概率,可能來自底層虛擬機和網絡漏洞,更多的可能來自邏輯實現。隨便搜一下“智能合約 安全 漏洞”,就有一堆搜索結果,包括溢出、重入、權限錯誤等,甚至就是低級錯誤。近年來,這些漏洞已經造成各種資產損失,最著名的是DAO項目代碼漏洞、Parity的多簽錢包漏洞、某互聯網公司的代幣交易過程溢出歸零……
技術文章可以參考:
https://paper.seebug.org/601/
目前,行業里對智能合約的安全也是各出奇招,包括安全公司和白帽子審查、形式化證明、眾測等,對安全問題會有一定地改善。如果再出問題,要么是黑客太厲害,或者只能抓程序員祭天了:)
所以,信智能合約,是有條件的,是要信經過嚴格測試、長時間穩定運行、萬一出錯還有辦法補救(而不是絕望的只能等分叉大招)的合約。聯盟鏈里的智能合約一般是經過嚴格測試的,上線時會執行灰度驗證流程,運營中監控運行過程,且根據治理規則設計事后追責、補救(沖正,調賬,凍結...)等措施,還是比較可信的。
5 、信中間人(?)注意本小節標題打了問號,區塊鏈推崇“去中心或多中心,去中介或弱中介”的運作模式,但是由于目前發展尚未完善,很多場景實際上還是引入了中介,如幣幣兌換通常需要經過交易所,尤其是中心化的交易所。其交易原理是要求用戶把資產存入交易所的帳戶里,交易時其實是在交易所的數據庫里進行記賬,只有在存幣或提幣時,才會和區塊鏈網絡發生交互。
交易所的信任模型和區塊鏈某種程度上是脫鉤了,這時,交易所本身的資質,運營方的技術能力、安全防護能力、資產信用和承兌能力,才是用戶最需要關心的。一旦交易所出了問題,比如跑路、破產、暗盤操作、監守自盜,基本上散戶就只能做韭菜了。
多的不說,參見著名的“門頭溝事件”:
https://baike.baidu.com/item/...
所以,相信一個托管者,是一個見仁見智的事情,只是現行的模式里,類似交易所這樣的角色還在某些區域運作著。2018年,全球虛擬數字資產交易所有1萬多家,其中多少能做到高規格的安全,運營規范,干凈……那就看情況了。
最后提一點:聯盟鏈默認是沒有公鏈那種虛擬數字資產交易所的。
區塊鏈領域的細節還有很多,以上先羅列主要的幾個點,信任技術,信任共識機制,信任規模化的社群博弈,超過了信任“人”。“人”是一種不確定因素,你可以信任一個你很熟悉很老鐵的人,也可以信任一大群有共同理念且有完善機制協作的人,但你不能信任某一小撮居心叵測的人,要不分分鐘變成韭菜:)
總結一下,在區塊鏈世界中,人們可以建立以下基本的信心:
我持有的資產和信息,只有我能動用或披露
我可以按公允的規則參與交易,分享信息,轉入轉出資產
別人給我轉過來的資產一定是有效的,不會被重復花費而失效
一旦交易完成,就是板上釘釘的事情
一切已經發生的事情都可驗證,可追溯
違反規則的人會損失更大
維護網絡的人付出了勞動會有恰當的回報,整個模式可持續
基于這些信心和信任,在合法合規的前提下,人們給網絡注入各種資產,開展互補互利、規則透明、公開公平公正的商業行為,將會是一種理想的狀態。
我們鼓勵機構成員、開發者等社區伙伴參與開源共建事業,有你在一起,會更了不起。多樣參與方式:
1?進入微信社群,隨時隨地與圈內最活躍、最頂尖的團隊暢聊技術話題(進群請添加小助手微信,微信ID:fiscobcosfan);2?訂閱我們的公眾號:“FISCO BCOS開源社區”,我們為你準備了開發資料庫、最新FISCO BCOS動態、活動、大賽等信息;
3?來Meetup與開發團隊面對面交流,FISCO
BCOS正在全國舉辦巡回Meetup,深圳、北京、上海、成都……歡迎您公眾號在菜單欄【找活動】中找到附近的Meetup,前往結識技術大咖,暢聊硬核技術;4?參與代碼貢獻,您可以在Github提交Issue進行問題交流,歡迎向FISCO BCOS提交Pull
Request,包括但不限于文檔修改、修復發現的bug、提交新的功能特性。代碼貢獻指引:
https://github.com/FISCO-BCOS...
本文首發于公眾號【FISCO BCOS開源社區】,如轉載請注明出處,原創不易,謝謝珍惜
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/24714.html
摘要:被譽為區塊鏈的互聯網,旨在解決區塊鏈可互操作性和可擴展性問題。摘要本文給出了互聯鏈通信協議的技術規范,這個協議在年月白皮書中有過首次描述。使用消息傳遞范式,并允許參與鏈保持獨立。 Cosmos被譽為區塊鏈的互聯網,旨在解決區塊鏈可互操作性和可擴展性問題。其區塊鏈間通訊協議可以實現區塊鏈的互聯,支持不同區塊鏈之間的資產轉移。隨著區塊鏈協同操作的需求越發強烈, Cosmos作為跨鏈技術的佼...
摘要:被譽為區塊鏈的互聯網,旨在解決區塊鏈可互操作性和可擴展性問題。摘要本文給出了互聯鏈通信協議的技術規范,這個協議在年月白皮書中有過首次描述。使用消息傳遞范式,并允許參與鏈保持獨立。 Cosmos被譽為區塊鏈的互聯網,旨在解決區塊鏈可互操作性和可擴展性問題。其區塊鏈間通訊協議可以實現區塊鏈的互聯,支持不同區塊鏈之間的資產轉移。隨著區塊鏈協同操作的需求越發強烈, Cosmos作為跨鏈技術的佼...
摘要:有身份的許可鏈上,我們也能夠構造不一樣的治理機制,我們可以形成一個鏈外的治理委員會,在有緊急狀況發生時,可以由治理委員會在鏈外形成人的共識,達成決議來決定我們是否要去做一些操作。公有許可鏈是未來許可鏈現在存在的第二個問題是經濟激勵機制。 在前兩期秘猿科技區塊鏈小課堂中,我們理解了什么是區塊鏈,以及區塊鏈的發展史。那么,區塊鏈能夠為我們帶來什么呢?秘猿科技 CEO 謝晗劍分享了對區塊鏈技...
摘要:區塊鏈的跨鏈技術是什么自比特幣年前誕生以來,數以千計的區塊鏈公鏈被開發出來,基于各種公鏈的加密貨幣數量更呈現井噴式增長。現有的跨鏈技術方案目前主流的區塊鏈跨鏈技術有公證人機制側鏈中繼哈希鎖定。 區塊鏈的跨鏈技術是什么? 自比特幣10年前誕生以來,數以千計的區塊鏈公鏈被開發出來,基于各種公鏈的加密貨幣數量更呈現井噴式增長。客觀來看,各條公鏈都具有自己獨特的優勢和特征,以 EOS 為代表的...
摘要:區塊鏈的跨鏈技術是什么自比特幣年前誕生以來,數以千計的區塊鏈公鏈被開發出來,基于各種公鏈的加密貨幣數量更呈現井噴式增長?,F有的跨鏈技術方案目前主流的區塊鏈跨鏈技術有公證人機制側鏈中繼哈希鎖定。 區塊鏈的跨鏈技術是什么? 自比特幣10年前誕生以來,數以千計的區塊鏈公鏈被開發出來,基于各種公鏈的加密貨幣數量更呈現井噴式增長??陀^來看,各條公鏈都具有自己獨特的優勢和特征,以 EOS 為代表的...
閱讀 2785·2021-10-14 09:42
閱讀 3608·2021-10-11 10:59
閱讀 2940·2019-08-30 11:25
閱讀 3073·2019-08-29 16:25
閱讀 3223·2019-08-26 17:40
閱讀 1224·2019-08-26 13:30
閱讀 1143·2019-08-26 11:46
閱讀 1329·2019-08-23 15:22