区块链快速通道:从技术原理到应用落地
2018 年開始,好像所有的人都在談?wù)搮^(qū)塊鏈。資本、精英、草根也不斷進(jìn)場(chǎng)投身到區(qū)塊鏈的浪潮之中。在外圍觀望的你或許懂技術(shù)而對(duì)區(qū)塊鏈一知半解,或許有場(chǎng)景與創(chuàng)意卻礙于其研發(fā)門檻,或許是已身處于行業(yè)卻難于前行。區(qū)塊鏈?zhǔn)菣C(jī)遇也是挑戰(zhàn),如何在這風(fēng)起云涌的區(qū)塊鏈?zhǔn)澜缋铽@得加速卡實(shí)現(xiàn)彎道超車?沒有區(qū)塊鏈技術(shù)基礎(chǔ)的你又怎樣迅速部署屬于自己的第一個(gè)應(yīng)用?
為了解決一部分粉絲的困惑,我們邀請(qǐng)到萬向區(qū)塊鏈旗下萬云平臺(tái)首席架構(gòu)師兼產(chǎn)品總監(jiān)李晨,從以下兩個(gè)方面為大家分享他和萬云團(tuán)隊(duì)對(duì)區(qū)塊鏈技術(shù)及應(yīng)用的思考:一是對(duì)區(qū)塊鏈技術(shù)進(jìn)行基本介紹,尤其是區(qū)塊鏈的發(fā)展歷史和核心技術(shù);二是分享萬云平臺(tái)在區(qū)塊鏈行業(yè)當(dāng)中的探索。
Part 1 技術(shù)原理
下圖展現(xiàn)的是當(dāng)下區(qū)塊鏈在互聯(lián)網(wǎng)上的熱度,兩個(gè)最大的互聯(lián)網(wǎng)平臺(tái) Google 和百度均顯示區(qū)塊鏈的搜索指數(shù)呈數(shù)級(jí)增長,可以發(fā)現(xiàn)當(dāng)下區(qū)塊鏈的熱度十分高。
從區(qū)塊鏈的資本市場(chǎng)來看:二級(jí)市場(chǎng)相比一級(jí)市場(chǎng)更為嚴(yán)肅,更為傳統(tǒng)也相對(duì)穩(wěn)健,從公告和研報(bào)的數(shù)量來看,區(qū)塊鏈在資本市場(chǎng)的表現(xiàn)也十分出色,公告有 443 篇,研報(bào) 1000+。綜合以上只能用一個(gè)字來形容當(dāng)下的區(qū)塊鏈——“熱”,非常“熱”。
從以上兩張圖所呈現(xiàn)的數(shù)字也反映出兩種情況:從搜索指數(shù)來看,普通大眾對(duì)區(qū)塊鏈關(guān)注度日益增高且勢(shì)頭不減,從相關(guān)二級(jí)市場(chǎng)的情況來看,專業(yè)機(jī)構(gòu)對(duì)區(qū)塊鏈也越來越青睞有加。
0.0區(qū)塊鏈到底是什么,區(qū)塊鏈有哪些技術(shù)特色?
區(qū)塊鏈的誕生之路:在人類歷史上經(jīng)歷了幾次重大技術(shù)革命,第一次工業(yè)革命解放了基本生產(chǎn)力;第一臺(tái)計(jì)算機(jī)的誕生開啟了信息化的進(jìn)程;而互聯(lián)網(wǎng)時(shí)代的到來建立起數(shù)據(jù)在不同主體之間的瞬間連接和交換,對(duì)信息流通產(chǎn)生了根本性變革;2008 年“中本聰”第一次提出了區(qū)塊鏈的概念,開啟了信息互聯(lián)網(wǎng)到價(jià)值互聯(lián)網(wǎng)的變遷,其根本意義在于將原來的數(shù)據(jù)交換變成價(jià)值互聯(lián),而價(jià)值互聯(lián)也正是區(qū)塊鏈所重構(gòu)的商業(yè)邏輯的關(guān)鍵所在。
從技術(shù)的角度定義區(qū)塊鏈 :區(qū)塊鏈?zhǔn)且詤^(qū)塊結(jié)構(gòu)存儲(chǔ)數(shù)據(jù),多方參與、多方維護(hù),通過密碼學(xué)、P2P 網(wǎng)絡(luò)、共識(shí)算法等保證數(shù)據(jù)可靠的傳輸、存儲(chǔ)、訪問的技術(shù)體系。?
區(qū)塊鏈最主要的技術(shù)特點(diǎn):去中心化、不可篡改、可追溯。
去中心化。在區(qū)塊鏈的網(wǎng)絡(luò)中分布著眾多的節(jié)點(diǎn),節(jié)點(diǎn)和節(jié)點(diǎn)之間地位平等,可以自由連接進(jìn)行數(shù)據(jù)交換,不存在中心節(jié)點(diǎn)。所謂的去中心化和傳統(tǒng)的分布式有稍微意義上的不同,傳統(tǒng)分布式還是有中心的節(jié)點(diǎn),最常見的就是所謂的負(fù)載均衡節(jié)點(diǎn)(Load Balance),只不過在中心節(jié)點(diǎn)后有很多其它節(jié)點(diǎn),在數(shù)據(jù)結(jié)構(gòu)上通常會(huì)形成“樹”的形式,去中心化是“圖”的結(jié)構(gòu),“圖”的結(jié)構(gòu)中每個(gè)節(jié)點(diǎn)是對(duì)等的。
不可篡改性。利用密碼學(xué)的技術(shù)保證區(qū)塊鏈上的數(shù)據(jù)不可被篡改,主要是兩個(gè)點(diǎn):哈希和非對(duì)稱加密。
可追溯性。區(qū)塊鏈的數(shù)據(jù)結(jié)構(gòu)保證了從第一個(gè)區(qū)塊(創(chuàng)世區(qū)塊)開始所有的數(shù)據(jù)形成了一條鏈,在鏈上的任何記錄都可以通過鏈的結(jié)構(gòu)追溯到本源(也就是創(chuàng)世區(qū)塊的信息)。
保證區(qū)塊鏈落地應(yīng)用的技術(shù)基石
第一塊基石是 P2P 網(wǎng)絡(luò),P2P 的網(wǎng)絡(luò)去中心化,高性能,高可靠通訊的保證。
第二塊基石是密碼學(xué),密碼學(xué)保證數(shù)據(jù)無法被篡改而且是安全并可驗(yàn)證的。
第三塊基石是共識(shí)算法,區(qū)塊鏈網(wǎng)絡(luò)各節(jié)點(diǎn)達(dá)成一致性的保障,也是現(xiàn)在評(píng)判區(qū)塊鏈技術(shù)的核心指標(biāo)之一。
P2P 網(wǎng)絡(luò)是什么? 如下圖所示:傳統(tǒng)的網(wǎng)絡(luò)是中心化的網(wǎng)絡(luò),所有的機(jī)器、通訊都要走過一個(gè)中心化的節(jié)點(diǎn)完成通訊,一旦這個(gè)節(jié)點(diǎn)出現(xiàn)了問題整個(gè)網(wǎng)絡(luò)就癱瘓了。就像現(xiàn)在如果電信、移動(dòng)、聯(lián)通的基站出現(xiàn)問題周圍的網(wǎng)絡(luò)通訊將會(huì)受到影響。而 P2P 網(wǎng)絡(luò)并沒有一個(gè)中心化的節(jié)點(diǎn),所有的節(jié)點(diǎn)之間直接互聯(lián)互通。同時(shí)也因?yàn)闆]有中心化的節(jié)點(diǎn),其中任意一點(diǎn)出現(xiàn)問題依舊能夠保證整個(gè)網(wǎng)絡(luò)還能通訊,因?yàn)槟憧梢赃B接到其它節(jié)點(diǎn)上。所以 P2P 網(wǎng)絡(luò)是去中心化的,參與各方地位對(duì)等,從而保證網(wǎng)絡(luò)的健壯性、擴(kuò)展性、高性能。
?
到這里,李晨補(bǔ)充道:其實(shí)所有區(qū)塊鏈的底層技術(shù)大多都在區(qū)塊鏈概念提出之前就已經(jīng)存在,只是區(qū)塊鏈的出現(xiàn)將它們天才有效地結(jié)合在一起。比如 P2P 網(wǎng)絡(luò)很早就出現(xiàn)了,我們常用的 BT 下載,它就是最早的 P2P 網(wǎng)絡(luò)。
密碼學(xué)在區(qū)塊鏈當(dāng)中用的非常多。這里著重看如何通過“Merkle Tree”保證區(qū)塊鏈上的數(shù)據(jù)不可被篡改。下圖中的區(qū)塊鏈數(shù)據(jù)結(jié)構(gòu),上方每一個(gè)大長方形就是一個(gè)區(qū)塊 (block),該區(qū)塊內(nèi)所有的交易數(shù)據(jù)都被存儲(chǔ)在這個(gè)區(qū)塊上;最下方的第三個(gè)交易 Tx3,簡單說每一個(gè)交易會(huì)生成一個(gè)哈希,Hash3 就是第三筆交易 Tx3 的哈希值。Hash2 下面沒有畫,是第二筆交易 Tx2 的值,Hash3 和 Hash2 組合在一起就是 Hash23,最后變成“Merkle Tree”的根節(jié)點(diǎn)“Merkle Root”。
每一個(gè)區(qū)塊都有 Merkle Tree,區(qū)塊上所有的交易都會(huì)被存儲(chǔ)在 Merkle Tree 上。區(qū)塊和區(qū)塊之間也是相互鏈接的,每一個(gè)區(qū)塊都知道上一個(gè)區(qū)塊的 Hash 值。那為什么這樣的區(qū)塊結(jié)構(gòu)能實(shí)現(xiàn)數(shù)據(jù)不可篡改呢?假設(shè)我要篡改 Tx3,那我們將要篡改 Hash3 的值,接下來改變了 Hash3 就要改變 Hash23,以此類推一直要改變 Merkle Root 的 Hash 值。因?yàn)閰^(qū)塊的 HASH 中包括了該區(qū)塊 Merkle Tree Root 的 HASH 值,所以一旦你改變了區(qū)塊的 HASH,就必須要修改之后所有區(qū)塊的哈希值。同時(shí)這樣的修改還要被網(wǎng)絡(luò)中超過共識(shí)算法要求的節(jié)點(diǎn)接受。這就造成了篡改數(shù)據(jù)樹的成本極高,幾乎是不可能的。比特幣網(wǎng)絡(luò)運(yùn)行了那么久,在沒有一個(gè)人去專門維護(hù)它的情況下,從來沒有發(fā)生過任何篡改,也就是這個(gè)道理。
共識(shí)算法是區(qū)塊鏈比較核心的技術(shù)之一,保證區(qū)塊一致性是其主要作用。常用的共識(shí)算法有:POW、POS、DPOS、PAXOS、PNFT。
1.POW 共識(shí)算法。也就是常見的比特幣網(wǎng)絡(luò)的共識(shí)算法,它通過哈希算力作為工作量證明去競(jìng)爭記賬權(quán)。POW 的幾個(gè)缺點(diǎn):性能比較低;消耗大量的資源,尤其是算力;出塊比較慢,10 分鐘左右。但它也優(yōu)點(diǎn),抗容錯(cuò)性很好,只有超過 51% 的節(jié)點(diǎn)攻擊網(wǎng)絡(luò),網(wǎng)絡(luò)才會(huì)失敗, 容錯(cuò)性 50%。
2.POS 共識(shí)算法。相對(duì) POW,POS 是用所謂的權(quán)益計(jì)算法。相對(duì) POW 來說它有幾大改進(jìn):不再消耗資源;提高性能,2 分鐘左右出塊;同樣容錯(cuò)性也是 50%。
3.DPOS 共識(shí)算法。POS 實(shí)現(xiàn) 2 分鐘左右出塊是比較大的提高,但距離業(yè)務(wù)的要求還有一定距離,所以在此基礎(chǔ)上進(jìn)行優(yōu)化產(chǎn)生了 DPOS,簡單來說 DPOS 不要求每個(gè)節(jié)點(diǎn)記帳,而是有代理節(jié)點(diǎn)來記帳,這比較像現(xiàn)實(shí)生活當(dāng)中的議會(huì)制度,大家選出代表幫忙記帳,這樣參與記帳的節(jié)點(diǎn)會(huì)相對(duì)集中,性能也就會(huì)提高。所以在 DPOS 情況下基本可以做到秒級(jí)出塊,容錯(cuò)性也是 50%。
4.PBFT 共識(shí)算法。PBFT 也就是所謂的拜占廷容錯(cuò),它的性能非常非常快,可以達(dá)到秒級(jí)出塊甚至比秒級(jí)還要快,但是它的容錯(cuò)性相對(duì)差一些,一般是 33% 左右。
5.PXOS 共識(shí)算法。PXOS 假設(shè)的前提是沒有惡意參與者,簡單說就是節(jié)點(diǎn)不會(huì)發(fā)送錯(cuò)誤的信息,但有可能漏發(fā)信息。在這種前提下容錯(cuò)性 50%,性能也是很快的,基本上秒級(jí)出塊。
通過李晨對(duì)這5 種共識(shí)算法的分析,我們也可以看到,評(píng)判共識(shí)算法大概有 3 個(gè)標(biāo)準(zhǔn):
效率,達(dá)成共識(shí)確認(rèn)的效率,簡單就是出塊的效率。
資源消耗,可能消耗電力、存儲(chǔ)或者其他資源;
容錯(cuò)性,就是網(wǎng)絡(luò)可以抵抗多大比例的節(jié)點(diǎn)出錯(cuò)。
區(qū)塊鏈的分代和分類
區(qū)塊鏈分代
按照《區(qū)塊鏈:新經(jīng)濟(jì)藍(lán)圖》一書中的概念,把比特幣以及相關(guān)的數(shù)字貨幣劃分為區(qū)塊鏈 1,0,以以太坊為代表的智能合約劃分為區(qū)塊鏈 2.0,而在非貨幣和金融領(lǐng)域外,在其他領(lǐng)域里的區(qū)塊鏈的應(yīng)用劃分為區(qū)塊鏈 3.0。
區(qū)塊鏈 1.0 是基礎(chǔ)的區(qū)塊鏈,實(shí)現(xiàn)了數(shù)字貨幣所需的所有特性。區(qū)塊鏈 2.0 的核心概念是智能合約,簡單說就是可編程的數(shù)字貨幣。雖然只是加了一個(gè)前綴,但卻是巨大的進(jìn)步。這意味著不僅僅價(jià)值本身,價(jià)值相關(guān)的商業(yè)規(guī)則也可以被數(shù)字化,是價(jià)值互聯(lián)網(wǎng)的一個(gè)巨大進(jìn)度。關(guān)于區(qū)塊鏈 3.0,我們無法給出一個(gè)統(tǒng)一的評(píng)定標(biāo)準(zhǔn)。目前看有幾大技術(shù)可以算是區(qū)塊鏈 3.0 的潛在標(biāo)準(zhǔn)。比如解決鏈上數(shù)據(jù)隱私和協(xié)作矛盾的零知識(shí)證明技術(shù),或者解決連接各種不同鏈的跨鏈技術(shù)等。
這里簡單介紹一個(gè)跨鏈技術(shù) COSMOS。我們認(rèn)為世界不可能是有一兩個(gè)區(qū)塊鏈所主導(dǎo)的,會(huì)有比較多的區(qū)塊鏈,每一個(gè)鏈都完成它自己特有的功能。我們會(huì)將來生活在一個(gè)多鏈的世界里。通過跨鏈技術(shù)可以形成一個(gè)統(tǒng)一的生態(tài)系統(tǒng),包括聯(lián)盟鏈和私有鏈。跨鏈技術(shù)是實(shí)現(xiàn)價(jià)值互聯(lián)網(wǎng)的關(guān)鍵,它連接起不同區(qū)塊鏈的孤島,也是區(qū)塊鏈向外拓展的橋梁。
COSMOS 是一種前沿的跨鏈技術(shù),基于 Tendermint 共識(shí)引擎。Tendermint 共識(shí)引擎實(shí)現(xiàn)了跨鏈技術(shù)中的基本技術(shù)需求(高性能和一致性)。同時(shí) Tendermint 將共識(shí)引擎和底下的 P2P 網(wǎng)絡(luò)層打包在一起形成 Tendermint Core,加上具有很好擴(kuò)張性的 COSMOS SDK(實(shí)現(xiàn)多代幣賬戶體系,見證人機(jī)制和出塊等功能),這些都為跨鏈功能打下了扎實(shí)的技術(shù)基礎(chǔ)。 COSOMS 跨鏈網(wǎng)絡(luò)通過 IBC(inter-blockchain communication)協(xié)議通信,而 COSMOS HUB 扮演樞紐角色,簡單說就是鏈之間的路由。通過 COSMOS 網(wǎng)絡(luò)不但可以進(jìn)行價(jià)值跨鏈轉(zhuǎn)移,擴(kuò)展 IBC 協(xié)議中的 PAYLOAD,還可以進(jìn)行其他信息的跨鏈轉(zhuǎn)移。
區(qū)塊鏈的分類
區(qū)塊鏈分類目前有三種:1. 公有鏈;2. 聯(lián)盟鏈;3. 私有鏈。
所謂的公有鏈?zhǔn)侨魏稳硕伎勺x取的、任何人都能發(fā)送交易且交易能獲得有效確認(rèn)的、任何人都能參與其中共識(shí)過程的區(qū)塊鏈。 隨著公鏈規(guī)模的擴(kuò)大,目前一些主流公鏈的性能都有待提高。 聯(lián)盟鏈主要針對(duì)有競(jìng)爭又需要合作的場(chǎng)景,技術(shù)上聯(lián)盟區(qū)塊鏈?zhǔn)侵钙涔沧R(shí)過程受到預(yù)選節(jié)點(diǎn)控制的區(qū)塊鏈。只有獲準(zhǔn)進(jìn)入聯(lián)盟的節(jié)點(diǎn)才可以參與其中。私有鏈一般僅在一個(gè)公司或者組織內(nèi)使用,它更像一個(gè)分布式賬本。
Part 2 應(yīng)用實(shí)踐圍繞區(qū)塊鏈技術(shù)的兩大核心特征
數(shù)據(jù)不可篡改性。基于這個(gè)特征行業(yè)中用的比較多的場(chǎng)景是信托。在市場(chǎng)加速釋放的前提下,傳統(tǒng)信托行業(yè)所存在的如文檔安全性、時(shí)間有效性等信任問題日益凸顯,而利用區(qū)塊鏈不可篡改的特性能有效解決信托業(yè)務(wù)中所存在“互不信任”的市場(chǎng)痛點(diǎn)。如何實(shí)現(xiàn)?利用區(qū)塊鏈技術(shù)可以將信托業(yè)務(wù)中的關(guān)鍵材料經(jīng)過哈希加密處理,轉(zhuǎn)換成不可逆推的特征值存儲(chǔ)在區(qū)塊鏈上,信托公司和用戶如需進(jìn)行數(shù)據(jù)驗(yàn)證,只要將已有的材料和信息經(jīng)過哈希加密處理,再次與區(qū)塊鏈上與其對(duì)應(yīng)的信息進(jìn)行對(duì)比,即可驗(yàn)證材料是否曾經(jīng)被進(jìn)行篡改。具體大家可以參考一個(gè)案例:萬云團(tuán)隊(duì)幫助萬向信托所開發(fā)的基于區(qū)塊鏈的家族信托業(yè)務(wù),此業(yè)務(wù)已經(jīng)上線。
?
可追溯性。鉆石一直以來被視為是愛情、權(quán)利、地位和富貴的象征,一方面因人類的情感賦予讓鉆石有了高昂的價(jià)值,另一方面也因其價(jià)格誘人讓市場(chǎng)滋生了走私的風(fēng)氣,從而使得產(chǎn)品與價(jià)格混亂,國家稅收損失和難于監(jiān)管。而利用區(qū)塊鏈的可溯源特性,以構(gòu)造共享數(shù)據(jù)庫的聯(lián)盟鏈為基礎(chǔ),通過多中心的方式與海外鉆石平臺(tái)、鉆石交易所等共享數(shù)據(jù),以行業(yè) 4C 為標(biāo)準(zhǔn)定義每一顆鉆石的身份標(biāo)簽和流轉(zhuǎn)體系,促進(jìn)鉆石交易的正規(guī)化。通過可溯源讓每一顆存儲(chǔ)在區(qū)塊鏈上的鉆石信息都可查證,讓市場(chǎng)上存在的黑手無孔可尋,從而讓鉆石市場(chǎng)真正回歸“透明”。
當(dāng)然除此之外,區(qū)塊鏈技術(shù)還可為更多行業(yè)提供解決方案,如版權(quán)交易、數(shù)字存證、智慧醫(yī)療等。
簡單看萬云的區(qū)塊鏈生態(tài)
萬云生態(tài)的底層,主要是底層鏈。我們有兩部分,一部分是公鏈的節(jié)點(diǎn),一部分是聯(lián)盟鏈的節(jié)點(diǎn),所有的這些節(jié)點(diǎn)都部署在萬云的基礎(chǔ)設(shè)施上,在萬云產(chǎn)品的模塊中稱之為“極速萬云”。在節(jié)點(diǎn)之上有跨鏈技術(shù),將所有鏈整合在一起。這樣即做到了統(tǒng)一,又各具特色。萬云的底層鏈上提供兩套模塊:醫(yī)師萬云 API,直接提供萬云上承載的鏈原始的 API,用戶可以在上面部署一個(gè)智能合約,也可以直接查詢區(qū)塊鏈數(shù)據(jù)。二是萬云的 IDE。其特色是既能直接在萬云上使用,也可以在本地安裝。
李晨提到,更有價(jià)值的是在上層。上層不僅有業(yè)務(wù) API,也有依據(jù)不同行業(yè)制定的解決方案。業(yè)務(wù) API 落地在區(qū)塊鏈上,但是對(duì)外呈現(xiàn)的形式和業(yè)務(wù)本身比較契合。通過業(yè)務(wù) API,可以節(jié)省開發(fā)和運(yùn)維成本從而更專注于業(yè)務(wù)創(chuàng)新。
舉個(gè)小栗子
“萬云抽獎(jiǎng)”是一款基于區(qū)塊鏈的抽獎(jiǎng)程序,也是一個(gè)完全部署在萬云平臺(tái)上的 DApp,李晨以此為例來從技術(shù)的角度重點(diǎn)介紹其誕生流程。
萬云抽獎(jiǎng)是基于公有鏈的應(yīng)用,主要是為解決抽獎(jiǎng)過程中的“公開”、“公正”問題,該程序通過將所有抽獎(jiǎng)的信息記錄在區(qū)塊鏈上,保證數(shù)據(jù)不可被篡改以及可溯源來實(shí)現(xiàn)抽獎(jiǎng)結(jié)果公開。而實(shí)現(xiàn)“公正”是抽獎(jiǎng)的難點(diǎn)所在,萬云團(tuán)隊(duì)通過基于區(qū)塊鏈來生成隨機(jī)數(shù)解決了這個(gè)問題。
傳統(tǒng)算法生成的隨機(jī)數(shù)實(shí)際上并不是完全不可預(yù)測(cè)的,在隨機(jī)種子的基礎(chǔ)上結(jié)合算法自動(dòng)生成的的數(shù)實(shí)際上是可復(fù)制的,算不上真正的隨機(jī)(偽隨機(jī)數(shù))。隨機(jī)數(shù)的隨機(jī)性問題是基礎(chǔ)算法面臨的問題。我們的思路是隨機(jī)性的生成,不被任何個(gè)體所控制,通過這個(gè)來解決隨機(jī)性問題。
隨機(jī)數(shù)通過所有參與者共同產(chǎn)生。首先在區(qū)塊鏈中創(chuàng)建一個(gè)合約,它定義了參與規(guī)則。具體的生成一個(gè)隨機(jī)數(shù)的基本過程可以分為三個(gè)階段:?
第一階段:收集有效的 HASH(S), 其中 S 就是隨機(jī)種子。參與隨機(jī)數(shù)生成的賬號(hào)都在指定的時(shí)間段內(nèi)向合約發(fā)送一定的代幣作為質(zhì)押,同時(shí)提供 HASH(S),S 是參與者選擇的隨機(jī)種子。
第二階段:收集有效的 S。在第一步完成之后,成功申請(qǐng) HASH(S) 的人需要在第一階段的指定時(shí)間內(nèi)發(fā)送隨機(jī)種子的 S 到合約。合約將運(yùn)行 HASH 并將結(jié)果與之前提交的數(shù)據(jù)進(jìn)行比較來檢查 S 是否有效。有效 S 將被保存到種子集合中,用來生成隨機(jī)數(shù)。
第三階段:計(jì)算隨機(jī)數(shù),退還質(zhì)押的代幣和獎(jiǎng)金。在所有隨機(jī)種子被成功收集之后,合約通過這些種子生成隨機(jī)數(shù)。同時(shí)將來自于消費(fèi)隨機(jī)數(shù)方提供的利潤分配給參與方,并將質(zhì)押的代幣退回參與方。 以上,就從技術(shù)上實(shí)現(xiàn)了一個(gè)基本的區(qū)塊鏈抽獎(jiǎng)應(yīng)用。同時(shí)利用了公有鏈的激勵(lì)機(jī)制使得這個(gè)模式可以運(yùn)行。
為了方便開發(fā)者對(duì)分享內(nèi)容進(jìn)行更好的理解,大家可以親自去這個(gè)鏈接中點(diǎn)擊萬云市場(chǎng)體驗(yàn)一下
https://user.wancloud.io/login.html
作為本次活動(dòng)的最后一張 PPT,李晨放了一張這樣的圖。這是 2016 年兩張關(guān)于區(qū)塊鏈技術(shù)的研報(bào)。其中兩句話在當(dāng)時(shí)說的特別好:“區(qū)塊鏈?zhǔn)腔ヂ?lián)網(wǎng)的詩和遠(yuǎn)方”、“理論照進(jìn)現(xiàn)實(shí)”。當(dāng)時(shí)大家都看好區(qū)塊鏈,認(rèn)為它是未來有可能會(huì)改變整個(gè)商業(yè)模式至關(guān)重要的技術(shù)。但當(dāng)時(shí)區(qū)塊鏈技術(shù)還不成熟,只是停留在想法層面,并沒有找到切實(shí)落地的場(chǎng)景和方案。?
當(dāng)時(shí)間的車輪駛向 2018 年以后,我們相信區(qū)塊鏈將不再是詩和遠(yuǎn)方,理論最終也會(huì)照進(jìn)現(xiàn)實(shí),成為時(shí)代變遷的標(biāo)志。而我們身處浪潮之中,所要做的是心無旁騖,努力讓區(qū)塊鏈實(shí)現(xiàn)落地,讓所構(gòu)想的未來圖紙成為現(xiàn)實(shí),不只是吟唱詩與遠(yuǎn)方,而是真正地走到遠(yuǎn)方。
現(xiàn)場(chǎng)觀眾問題解答
分享結(jié)束后,收集到了十幾個(gè)現(xiàn)場(chǎng)提問,我們著重選取了兩個(gè)比較細(xì)致的問題請(qǐng)李晨回答。
問題 1:公有鏈和聯(lián)盟鏈在具體應(yīng)用場(chǎng)景解決各種問題上的區(qū)別是?請(qǐng)舉出實(shí)際應(yīng)用中的區(qū)別案例及案例采用的架構(gòu)。
公有鏈?zhǔn)峭耆ブ行幕?#xff0c;任何人都可以參與,全球范圍內(nèi)可以訪問,不依賴于單個(gè)公司或轄區(qū),最經(jīng)典的應(yīng)用案例則是大家都所熟知的比特幣。聯(lián)盟鏈主要針對(duì)有競(jìng)爭又需要合作的場(chǎng)景,技術(shù)上聯(lián)盟區(qū)塊鏈?zhǔn)侵钙涔沧R(shí)過程受到預(yù)選節(jié)點(diǎn)控制的區(qū)塊鏈。只有獲準(zhǔn)進(jìn)入聯(lián)盟的節(jié)點(diǎn)才可以參與其中。
另外從聯(lián)盟鏈場(chǎng)景出發(fā),會(huì)有一些企業(yè)級(jí)的特性需要滿足:
高性能,聯(lián)盟鏈需要滿足企業(yè)級(jí)的性能標(biāo)準(zhǔn),由于聯(lián)盟鏈節(jié)點(diǎn)數(shù)有限,采用 PBFT 或者 RAFT 這樣的共識(shí)算法,一般都能做到秒級(jí)出塊。
隱私性,通常聯(lián)盟鏈涉及到多方參與、對(duì)等合作的場(chǎng)景,其中隱私性顯的比較要緊。比如 A 和 B 的一筆交易,交易的明細(xì)只有參與方 A 和 B 知曉,其他節(jié)點(diǎn)無權(quán)獲取,但是又要進(jìn)行見證,這就是一個(gè)具體需求。
集成性,聯(lián)盟鏈和現(xiàn)有系統(tǒng)進(jìn)行對(duì)接的能力。
易用性,比如合約和賬號(hào)的地址都是一長串字符集,難以閱讀和記憶,這里就需要一個(gè)將地址和簡單名稱進(jìn)行映射的需求。
跨鏈能力,各個(gè)聯(lián)盟鏈之間如何跨鏈,聯(lián)盟鏈和公有鏈之間如何跨鏈。另外還需要考慮運(yùn)維和治理能力,聯(lián)盟鏈升級(jí)的平滑性,某些行業(yè)還要考慮合規(guī)性。
關(guān)于聯(lián)盟鏈應(yīng)用架構(gòu)問題,這里給一個(gè)聯(lián)盟鏈優(yōu)化數(shù)據(jù)交換平臺(tái)的例子。
中心化的數(shù)據(jù)交換平臺(tái)一般都會(huì)面臨幾個(gè)痛點(diǎn):參與方必須為信任平臺(tái);監(jiān)管困難;數(shù)據(jù)控制權(quán)不在用戶手中;數(shù)據(jù)隱私缺乏保護(hù)。
具體的解決方案是:建立一個(gè)平臺(tái),平臺(tái)用戶和第三方監(jiān)管共同建立的聯(lián)盟鏈。通過聯(lián)盟鏈賬本對(duì)所有數(shù)據(jù)相關(guān)操作進(jìn)行存證;第三方通過其記賬節(jié)點(diǎn)對(duì)整個(gè)業(yè)務(wù)過程進(jìn)行監(jiān)管;數(shù)據(jù)交換平臺(tái)只能通過聯(lián)盟鏈智能合約的接口獲取數(shù)據(jù),而智能合約只由用戶按照標(biāo)準(zhǔn)編寫,這樣數(shù)據(jù)控制權(quán)就完全在用戶手中了;通過零知識(shí)證明來保證數(shù)據(jù)相關(guān)的隱私性。
問題 2:區(qū)塊鏈如何保證數(shù)據(jù)隱私性?
按照區(qū)塊鏈的基本定義,其實(shí)不涉及數(shù)據(jù)的隱私性問題,只是保證了數(shù)據(jù)的不可篡改性和可追溯。
但是區(qū)塊鏈的架構(gòu)確實(shí)對(duì)數(shù)據(jù)隱私性造成了挑戰(zhàn),李晨認(rèn)為核心問題就如以太坊創(chuàng)始人 Vitalik 所說的區(qū)塊鏈上的很多節(jié)點(diǎn)驗(yàn)證了每一筆交易。每一筆在區(qū)塊鏈上的交易過程都會(huì)被全網(wǎng)廣播讓所有節(jié)點(diǎn)知道。
數(shù)據(jù)隱私性是個(gè)很大的課題。李晨分享了 3 個(gè)方法。
區(qū)塊鏈上只存數(shù)據(jù)的 HASH 值,保證具體的數(shù)據(jù)還是在鏈下存儲(chǔ)。簡單說,通過鏈上的數(shù)據(jù) HASH 值,證明數(shù)據(jù)的存在而不體現(xiàn)數(shù)據(jù)明細(xì)。
利用環(huán)簽名機(jī)制,環(huán)簽名是一種特殊的群簽名協(xié)議。如果你擁有著這組群簽名中的任意一個(gè)簽名的簽署權(quán),就能夠通過這組環(huán)簽名中專屬于我的簽名來證實(shí)我就是我,但僅能證明你的簽名存在于這組環(huán)簽名之中,不能證明確切哪個(gè)是你的的簽名。這樣通過環(huán)簽名簽署的交易,可以證明交易的資產(chǎn)屬于你,卻不用知道具體你是誰。
利用零知識(shí)證明技術(shù),這是目前相對(duì)前沿的隱私保護(hù)解決方案。零知識(shí)證明就是指的是證明者能夠在不向驗(yàn)證者提供任何有用的信息的情況下,使驗(yàn)證者相信某個(gè)論斷是正確的。比如通過告訴一個(gè)知道盒子里有什么東西的人,那個(gè)東西是什么。就可以證明你擁有盒子的鑰匙卻不用展示鑰匙。ZCash 則是有名的用零知識(shí)證明實(shí)現(xiàn)匿名交易的例子。
轉(zhuǎn)載于:https://www.cnblogs.com/davidwang456/articles/8744370.html
總結(jié)
以上是生活随笔為你收集整理的区块链快速通道:从技术原理到应用落地的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微服务架构漫谈
- 下一篇: 微服务实战(三):深入微服务架构的进程间