1.1?區(qū)塊鏈跨鏈技術(shù)
????????在區(qū)塊鏈的設(shè)計(jì)中朱躺,區(qū)塊中記錄著所有的信息负蠕。但區(qū)塊鏈也有其封閉性,這個(gè)封閉性使得每個(gè)區(qū)塊鏈更像一個(gè)數(shù)據(jù)“孤島”,而價(jià)值互聯(lián)網(wǎng)價(jià)值的流通離不開鏈間信息傳遞驰弄,這便是跨鏈技術(shù)出現(xiàn)的必然性麻汰,近期眾多跨鏈項(xiàng)目的落地給跨鏈技術(shù)帶來極大的關(guān)注度。
1.2?目前主流跨鏈技術(shù)
????????1戚篙、公證人機(jī)制(Notary schemes): 公證人也稱見證人機(jī)制五鲫,公證人機(jī)制本質(zhì)上是一種中介的方式。具體而言岔擂,假設(shè)區(qū)塊鏈A和B本身是不能直接進(jìn)行互操作的位喂,那么他們可以引入一個(gè)共同信任的第三方作為中介,由這個(gè)共同信任的中介進(jìn)行跨鏈消息的驗(yàn)證和轉(zhuǎn)發(fā)乱灵。公證人機(jī)制的優(yōu)點(diǎn)在于能夠靈活地支持各種不同結(jié)構(gòu)的區(qū)塊鏈(前提是公證人能夠訪問相關(guān)方的鏈上信息)塑崖,缺點(diǎn)在于存在中心化風(fēng)險(xiǎn)。
????????2痛倚、側(cè)鏈/中繼(Sidechains/relays):側(cè)鏈?zhǔn)侵竿耆珦碛心虫湹墓δ艿牧硪粭l區(qū)塊鏈规婆,側(cè)鏈可以讀取和驗(yàn)證主鏈上的信息。主鏈不知道側(cè)鏈的存在蝉稳,由側(cè)鏈主動(dòng)感知主鏈信息并進(jìn)行相應(yīng)的動(dòng)作抒蚜。而中繼鏈則是側(cè)鏈和公證人機(jī)制的結(jié)合體,中繼鏈具有訪問需要和驗(yàn)證進(jìn)行互操作的鏈的關(guān)鍵信息并對(duì)兩條鏈的跨鏈消息進(jìn)行轉(zhuǎn)移耘戚。從這個(gè)角度看中繼鏈也是一種去中心的公證人機(jī)制嗡髓。
????????3、哈希鎖定(Hash-locking):哈希鎖定技術(shù)主要是支持跨鏈中的原子資產(chǎn)交換收津,最早起源自比特幣的閃電網(wǎng)絡(luò)饿这。其典型實(shí)現(xiàn)是哈希時(shí)間鎖定合約HTLC(Hashed TimeLock Contract)。哈希鎖定的原理是通過時(shí)間差和影藏哈希值來達(dá)到資產(chǎn)的原子交換撞秋。哈希鎖定只能做到交換而不能做到資產(chǎn)或者信息的轉(zhuǎn)移长捧,因此其使用場(chǎng)景有限。
????????4部服、分布式私鑰控制(Distributed private key control):私密資產(chǎn)通過分布式私鑰生成與控制技術(shù)被映射到基于協(xié)議的內(nèi)置資產(chǎn)模板的區(qū)塊鏈上唆姐,根據(jù)跨鏈交易信息部署新的智能合約的創(chuàng)建新的資產(chǎn)拗慨。當(dāng)一種已注冊(cè)資產(chǎn)由原有鏈轉(zhuǎn)移到跨鏈上時(shí)廓八,跨鏈節(jié)點(diǎn)會(huì)為用戶在已有合約中發(fā)放相應(yīng)等值代幣。為確保原有鏈資產(chǎn)在跨鏈上仍然可以相互交易流通赵抢,實(shí)現(xiàn)和解除分布式控制權(quán)管理的操作稱為:鎖入(Lock-in)和解鎖(Lock-out)剧蹂。鎖入是對(duì)所有通過密鑰控制的數(shù)字資產(chǎn)實(shí)現(xiàn)分布式控制權(quán)管理和資產(chǎn)映射的過程。這時(shí)需要委托去中心化的網(wǎng)絡(luò)掌管用戶的私鑰烦却,用戶自己掌握跨鏈上那部分代理資產(chǎn)的私鑰宠叼。當(dāng)解鎖時(shí)再將數(shù)字資產(chǎn)的控制權(quán)交還給所有者。
????????本文著重介紹的Cosmos區(qū)塊鏈就是屬于中繼技術(shù)的一種跨鏈技術(shù)。
1.3?Cosmos愿景
????????Cosmos的愿景是讓開發(fā)人員可以輕松構(gòu)建區(qū)塊鏈冒冬,并通過允許區(qū)塊鏈相互交易來打破區(qū)塊鏈之間的障礙伸蚯。目標(biāo)是創(chuàng)建一個(gè)區(qū)塊鏈互聯(lián)網(wǎng),能夠以分散的方式相互通信简烤。使用Cosmos區(qū)塊鏈可以維持自身特色剂邮,快速處理交易并與生態(tài)系統(tǒng)中的其他區(qū)塊鏈進(jìn)行通信。
2.1 Cosmos技術(shù)分析
在Cosmos的介紹中它從三個(gè)方面解決了目前區(qū)塊鏈問題横侦。
????可拓展性
POW共識(shí)機(jī)制緩慢挥萌,昂貴,不可擴(kuò)展且對(duì)環(huán)境有害枉侧。Tendermint是一項(xiàng)安全的BFT共識(shí)協(xié)議引瀑,為Cosmos Bonded Proof-of-bet提供支持。
????可用性
目前區(qū)塊鏈應(yīng)用程序較為復(fù)雜榨馁,對(duì)開發(fā)人員來說難以理解憨栽。Cosmos SDK是一個(gè)開發(fā)人員友好的模塊化框架,用于構(gòu)建區(qū)塊鏈辆影。
????互通性
區(qū)塊鏈經(jīng)濟(jì)是孤立的徒像,不能在彼此之間轉(zhuǎn)移資產(chǎn)。但Cosmos的Interblockchain Communication(IBC)是一種類似TCP / IP的區(qū)塊鏈消息傳遞協(xié)議蛙讥。
2.2 Zone與Hub
????????Cosmos上的第一個(gè)Hub叫做Cosmos Hub锯蛀。Cosmos Hub是一種多資產(chǎn)權(quán)益證明加密貨幣網(wǎng)絡(luò),它通過簡(jiǎn)單的管理機(jī)制來實(shí)現(xiàn)網(wǎng)絡(luò)的改動(dòng)與更新次慢。此外旁涤,Cosmos Hub還可以通過連接其他Zone來實(shí)現(xiàn)擴(kuò)展。
????????Cosmos網(wǎng)絡(luò)的Hub及各個(gè)Zone可以通過區(qū)塊鏈間通信(IBC)協(xié)議進(jìn)行溝通迫像,這種協(xié)議就是針對(duì)區(qū)塊鏈的虛擬用戶數(shù)據(jù)報(bào)協(xié)議(UDP)或者傳輸控制協(xié)議(TCP)劈愚。代幣可以安全快速地從一個(gè)Zone傳遞到另一個(gè)Zone,兩者之間無需體現(xiàn)匯兌流動(dòng)性闻妓。Zome內(nèi)部所有代幣的轉(zhuǎn)移都會(huì)通過Cosmos Hub菌羽,它會(huì)記錄每個(gè)Zone所持有的代幣總量。這個(gè)中心會(huì)將每個(gè)Zone與其他故障Zone隔離開由缆。因?yàn)槊總€(gè)人都將新Zone連接到Cosmos Hub注祖,所以個(gè)Zone今后也可以兼容新的區(qū)塊鏈技術(shù)。
2.3 共識(shí)機(jī)制與IBC協(xié)議
????????Tendermint是部分同步運(yùn)作的拜占庭容錯(cuò)共識(shí)協(xié)議均唉,Tendermint的特點(diǎn)就在于其簡(jiǎn)易性是晨、高性能以及分叉責(zé)任制。協(xié)議要求有固定且熟知的一組驗(yàn)證人舔箭,其中每個(gè)驗(yàn)證人通過公鑰進(jìn)行身份驗(yàn)證罩缴。這些驗(yàn)證人會(huì)嘗試在某個(gè)區(qū)塊上同時(shí)達(dá)成共識(shí)(這里的區(qū)塊是指一份交易列表)。每個(gè)區(qū)塊的共識(shí)輪流進(jìn)行,每一輪都會(huì)有個(gè)領(lǐng)頭人箫章,或者提議人烙荷,由他們來發(fā)起區(qū)塊。之后驗(yàn)證人分階段對(duì)是否接受該區(qū)塊檬寂,或者是否進(jìn)入下一輪做出投票奢讨。每輪的提議人會(huì)從驗(yàn)證人順序列表中按照其選票比例來選擇確定。
????????Tendermint采用由絕對(duì)多數(shù)的選票三分之二選定的最優(yōu)拜占庭容錯(cuò)算法焰薄。
????????想要違背安全必須有超過三分之一的選票出現(xiàn)拜占庭問題拿诸。
????????如果有任何驗(yàn)證組引起了安全問題,或者說是企圖這么做塞茅,那么就會(huì)被協(xié)議發(fā)現(xiàn)亩码,一方面針對(duì)有沖突的區(qū)塊進(jìn)行投票,同時(shí)廣播那些有問題的選票野瘦。
2.4 驗(yàn)證人
????????在經(jīng)典拜占庭容錯(cuò)(BFT)算法中描沟,每個(gè)節(jié)點(diǎn)都同樣重要。在Tendermint網(wǎng)絡(luò)里鞭光,擁有投票權(quán)的節(jié)點(diǎn)被稱作“驗(yàn)證人”吏廉。驗(yàn)證人通過傳播加密簽名或選票,來參與共識(shí)協(xié)議并商定下一區(qū)塊惰许。
????????驗(yàn)證人的投票權(quán)計(jì)算規(guī)則是一開始就確定好的席覆,根據(jù)治理由區(qū)塊鏈來決定是否有改變。比如汹买,在Cosmos Hub這種權(quán)益證明類應(yīng)用程序中佩伤,投票權(quán)就是通過綁定為保證金的代幣數(shù)量來確定的[2]。
????????截至2019年4月10日晦毙,主網(wǎng)驗(yàn)證節(jié)點(diǎn)已達(dá)100個(gè)其中活躍節(jié)點(diǎn)97個(gè)生巡,抵押ATOM數(shù)量121,160,316個(gè)約占總量的51%。平均出塊時(shí)間為6.65秒见妒,與主網(wǎng)上線前官方預(yù)測(cè)的5秒差距較大孤荣,社區(qū)正在討論是否修改參數(shù)以達(dá)到預(yù)期目標(biāo)值。
????????驗(yàn)證人節(jié)點(diǎn)硬件設(shè)備
????????成為 Cosmos 節(jié)點(diǎn)的硬件配置:
????????CPU 核數(shù):2 內(nèi)存容量:6GB 磁盤空間:256GB SSD 操作系統(tǒng):Ubuntu 18.04 LTS/16.04 LTS须揣。
? ? ? ? ?帶寬: 20Mbps 盐股。任何云服務(wù)器都可以運(yùn)行節(jié)點(diǎn),如 AWS返敬、GCP遂庄、DigitalOcean 等云服務(wù)器寥院,具備上述服務(wù)器后按照官方配置教程來就可以運(yùn)行節(jié)點(diǎn)劲赠。
????????值得注意的是以上節(jié)點(diǎn)配置并不是一成不變,隨著區(qū)塊高度的增加數(shù)據(jù)也會(huì)相應(yīng)增加,節(jié)點(diǎn)配置同樣需要升級(jí)凛澎。
2.5 Cosmos Hub主網(wǎng)的三個(gè)階段
1)?第一階段:主網(wǎng)穩(wěn)定階段
????????根據(jù)官方博客給出的資料霹肝,主網(wǎng)剛剛啟動(dòng)時(shí)娄蔼,網(wǎng)絡(luò)狀態(tài)和安全性無法得到足夠的保障只泼,在啟用代幣轉(zhuǎn)賬之前,如果Cosmos Hub中存在錯(cuò)誤或漏洞载城,有可能會(huì)出現(xiàn)狀態(tài)回滾或者重啟網(wǎng)絡(luò)最铁。但在這個(gè)階段中可以進(jìn)行委托給任意驗(yàn)證人進(jìn)行出塊讯赏,在驗(yàn)證人出塊的時(shí)間內(nèi),委托人也能得到獎(jiǎng)勵(lì)冷尉。同時(shí)漱挎,pos共識(shí)機(jī)制中,越多的代幣被抵押出塊雀哨,被惡意攻擊的可能性就越低磕谅,網(wǎng)絡(luò)就越發(fā)安全。
2)?第二階段:?jiǎn)⒂么鷰呸D(zhuǎn)移階段
????????一旦被認(rèn)定主網(wǎng)足夠穩(wěn)定安全雾棺,Cosmos Hub中代幣ATOM的持有者將會(huì)投票決定是否開啟ATOM鏈上轉(zhuǎn)移膊夹,這一部分也會(huì)通過區(qū)塊鏈上投票治理的方式實(shí)現(xiàn)。如果第二階段開啟后捌浩,用戶將可以轉(zhuǎn)移ATOM放刨,同時(shí)交易所也將可以對(duì)ATOM進(jìn)行充提,更多的人可以購買ATOM尸饺,并參與到委托驗(yàn)證人出塊的環(huán)節(jié)宏榕。[3]
3)?第三階段:?jiǎn)⒂肐BC
????????如果IBC協(xié)議已經(jīng)完成測(cè)試并發(fā)布,ATOM持有者同樣需要鏈上治理來進(jìn)行投票是否將IBC整合到Cosmos-SDK中侵佃。
????????如果主網(wǎng)到達(dá)第三階段麻昼,使用Cosmos-SDK或Tendermint BFT構(gòu)建的應(yīng)用專有鏈將能夠連接到 Cosmos Hub,并與連接到Hub上的其他任意區(qū)塊鏈進(jìn)行跨鏈交互馋辈。但根據(jù)Cosmos中國(guó)區(qū)負(fù)責(zé)人Harriet表示IBC是Cosmos第二季度開發(fā)的核心目標(biāo)抚芦。等到IBC開發(fā)完以后,跨鏈服務(wù)也將可以進(jìn)行通信轉(zhuǎn)移迈螟,由此可知第三階段還需要一定時(shí)間才能完成叉抡。
參考資料
????[1]https://36kr.com/p/5117175.html
????[2]Cosmos白皮書
????[3]https://github.com/cosmos/cosmos-sdk/blob/develop/docs/gaia/launch/blog-2-cn.md
????[4]Conflux中文社區(qū)
????[5]https://forum.cosmos.network/t/list-of-projects-in-cosmos-tendermint-ecosystem/243