導讀
Cosmos是由Tendermint團隊構建的開源社區項目,它是一個由獨立的稱為Zone的區塊鏈組成的支持跨鏈交互的異構多鏈系統,和Polkadot一樣,也由中繼技術實現。Cosmos提供一套能夠完整搭建區塊鏈的SDK,作為一個跨鏈系統,其中最為關鍵的就是跨鏈協議相關的設計,今天我們就來詳細分析一下IBC協議的具體內容。
IBC初探
IBC是屬于Cosmos-SDK中一個特殊的模塊。之所以特殊,主要體現在IBC提供了區塊鏈之間的跨鏈能力。
從總體的流程來說,IBC的技術并沒有很復雜,應該來說協議本身不應太過復雜,這對于協議的使用者來說約束更小,更加靈活。
現在比如說A鏈上的Alice上需要發送10個ATOM代幣到B鏈上的Bob上,會經過下面的四個步驟。
▲?Tracking
A鏈上的IBC模塊會不斷的同步B鏈上的區塊頭信息,B鏈上的IBC同理。通過這種方式,雙方能夠實現跟蹤對方區塊鏈上的驗證者集合的變化,本質上來說,就是A鏈、B鏈相互維護了一個對方的輕節點。
天津市:運用區塊鏈等技術 發現可能發生的突發公共衛生事件:5月18日,《天津市突發公共衛生事件應急管理辦法》正式出臺。管理辦法指出,本市將建立和完善突發公共衛生事件監測與預警系統。衛生健康主管部門應當指定醫療機構、疾病預防控制機構等專門機構負責突發公共衛生事件的日常監測,確保監測與預警系統的正常運行;會同有關部門健全監測網絡,根據需要設立監測點,充分運用大數據、云計算、區塊鏈、人工智能等技術,綜合評價監測數據,及時發現潛在隱患和可能發生的突發公共衛生事件。(天津網)[2020/5/18]
▲?Bonding
當使用IBC初始化一筆跨鏈轉賬之后,A鏈上的10個ATOM事實上處于鎖定的狀態。
▲?Proof中繼
一份證明A鏈上已經鎖定10ATOM的“證據”會被路由到B鏈上的IBC模塊。
金色晨訊 | 人民日報:區塊鏈不只是下一代互聯網技術 更是下一代合作機制和組織形式;BitMEX泄漏的用戶郵箱至少有23000個:1.上周8只區塊鏈概念股接交易所監管函 “炒作股價配合股東減持”成問詢重點;
2.愛沙尼亞加密交易所DX.Exchange暫時關閉交易所,尋求合并或出售;
3.上海市人民政府參事:區塊鏈第一重要的是落地 要為實體經濟服務;
4.人民日報:區塊鏈不只是下一代互聯網技術 更是下一代合作機制和組織形式;
5.全球化智庫副主席:區塊鏈會對誠信、信任帶來一次革命性的變化;
6.Ripple創始人:美國制定明確的指導方針以支持區塊鏈等金融科技解決方案至關重要;
7.雄安新區4大水利防洪項目將于近期實施 建設內容要求以區塊鏈等為基礎
8.濟南市副市長:基于區塊鏈技術和大數據的新系統助力政府審批流程;;
9.報告:全球Top10的加密基金主要集中在美國;
10.Calibra產品副總裁:無法決定Libra何時發布,這是Libra協會的事;
11.數據:Bakkt比特幣月度期貨合約交易量近期增長明顯;
12.報告:64%的數字證券投資者來自傳統風投公司,僅28%來自區塊鏈風投公司;
13.云南省委:積極應用區塊鏈技術,大力發展云南中醫藥事業;
14.The Block研究總監:BitMEX泄漏的用戶郵箱至少有23000個。[2019/11/4]
聲音 | 農行劉剛:基于大數據和區塊鏈技術 緩解三農地區信用體系不完善的問題:據金融界消息,3月22日,2019中國數字普惠金融大會在北京召開。中國農業銀行科技與產品管理局高級專家劉剛在會上表示,以前很難想象我們能夠把金融服務產品,尤其是信貸服務產品,能送到村里去。隨著技術的發展,我們能夠采用“云+端”的模式,把各種各樣的終端形式,在村一級的地方部署,基于大數據和區塊鏈技術,實現交易信息和客戶信息真實性、隱私保護和防篡改,有效緩解三農地區信用體系不完善的問題。[2019/3/22]
▲?驗證
B鏈結合A鏈的輕節點信息,對這份“證據”驗證通過之后,B鏈上會“鑄造”10份ATOMVoucher,這些Voucher可以進行后續的流通使用。當然這些Voucher也可以通過同樣的跨鏈方式返回到A鏈,A鏈上的ATOM代幣相應執行解鎖的操作。
IBC握手流程
IBC協議是Cosmos中最核心的接口協議,能夠實現區塊鏈間跨鏈消息的可信、可靠轉發,并有效進行流量控制、多路復用等功能。
金色財經現場報道 SEC執法部網絡部門負責人:SEC不監管技術 而是管理金融行業和市場:金色財經現場報道,今日在Coindesk 2018共識會議上,SEC執法部網絡部門負責人Robert A. 表示:“SEC鼓勵籌集資金的不同方式,我們不監管技術,而是管理金融行業和市場。SEC一直在與行業內人士會面,與員工見面,談論他們的想法,新的發展,并就新的技術進行討論。”Cohen還表示,主要問題在于加密貨幣或人們擁有的任何資產是否是證券,SEC已經給出了相關指導。他認為如果一個公司或個人在遵守法律方面做出了足夠誠意的努力,而且一步到位,那就是他們正在與監管機構進行對話。然而不幸的是,當人們沒有做出誠意的努力來遵守法律時,很明顯SEC就需要介入。我認為對我們的投資者保護措施是我們市場如此強大的原因的一部分,投資者保護讓人們感到安慰,認為這是一個他們可以投資的行業。我們不能僅僅想把壞人趕到海外,這會使我們的使命更加艱難。[2018/5/16]
在Cosmos中,每個功能都是高度模塊化的,每個功能通過加載不同的模塊來實現,IBC也是如此。在IBC設計時,借鑒了傳輸層的TCP協議,也是希望成為區塊鏈領域的“TCP協議”。不僅如此,在IBC的各個方面也能看到TCP的身影,首先我們來看IBC中的一些基本概念。CosmosIBC采用了有連接的、可靠的跨鏈消息傳輸。
應用區塊鏈技術 數字票據交易平臺實驗性生產系統上線試運行:本月2日據上海票交所指出,根據中國人民銀行的安排部署,上海票據交易所會同數字貨幣研究所,組織中鈔信用卡公司、工商銀行、中國銀行、浦發銀行和杭州銀行共同開展了基于區塊鏈技術的數字票據交易平臺建設相關工作。2018年1月25日,數字票據交易平臺實驗性生產系統成功上線試運行,工商銀行、中國銀行、浦發銀行和杭州銀行在數字票據交易平臺實驗性生產系統順利完成基于區塊鏈技術的數字票據簽發、承兌、貼現和轉貼現業務。實驗性生產系統的成功上線試運行實現了數字票據的突破性進展,對于票據市場發展具有里程碑意義。[2018/2/3]
在此基礎上提出了以下幾個關鍵定義:
Client
Connection
Channel
下圖是IBC協議和TCP相關概念的對比。
可以看到連接、端口都是TCP協議中的規范,但是其中的內涵發生了變化,為了適應跨鏈場景下的使用。同時增加了通道和客戶端等新的內容,能夠支持跨鏈中的有序發送和跨鏈交易的驗證。
接下來我們來看一下一次完整IBC協議的握手和通信流程。
一筆跨鏈交易的連接流程如上圖,和TCP協議類似,IBC的建立需要建立多次的握手過程,并增加了一步初始化客戶端的操作,這對于跨鏈來說很關鍵的一環。
▲?鏈內客戶端
跨鏈雙方需要在鏈上初始化一個對方鏈的輕客戶端,這個Client實質上是另一個區塊鏈的輕客戶端,而且必須滿足Cosmos規定的一套Client接口。之所以要在IBC建立之前初始化這個輕客戶端,是因為Cosmos需要保證在本鏈上能夠驗證來自來源鏈的跨鏈交易是能夠驗證的,否則無法保證在本鏈上執行該交易的有效性和合法性。
為了方便后續后續更多不同種類的區塊鏈接入,這個輕客戶端規定了一套通用的接口,不同類型的區塊鏈通過實現該Client來達到接入的效果。現階段Cosmos能夠支持TendermintClient和SoloClient,也就是同構鏈之間原生支持跨鏈。這也決定了不是使用Cosmos構建的區塊鏈想要接入CosmosHub進行跨鏈的話,必須通過一個額外的“轉接橋”,實現起來也更加復雜了。
▲?握手連接
在輕客戶端的基礎上建立握手連接,握手連接基本上分別為三個部分。
啟動跨鏈的用戶向鏈A發起OpenInit請求,等待Relayer接收到該請求。Relayer進行路由跨鏈消息包的工作,如果收到OpenInit的請求,Relayer會構造一個的OpenTry的請求發送到鏈B上。鏈B收到OpenTry請求之后,如果同意的話,會對該消息進行確認(生成OpenACK數據包,并按照之前的方式由?Relayer轉發給鏈A。鏈A通過OpenACK數據包判斷此次握手是否成功,如果成功,對此次握手發送最后的?OpenConfirm數據包返回鏈B。如果握手失敗,此次連接也就是建立失敗了。上面的步驟不僅是指Connection的建立過程,Channel的建立也是遵循同樣的流程,只是數據包的名稱和內容會有不同,像建立Connection的時候發送的便是ConnOpenInit請求,建立的Channel的時候便是ChanOpenInit請求,之后的請求依次類推。
需要說明的是,Connection和Channel在跨鏈扮演的角色和功能并不相同,按照Cosmos的設計,Connection和Client一起負責跨鏈交易的“合法性”——包括跨鏈交易確實在目的鏈上發生,以及跨鏈交易只提交了一次。而Channel用來保證跨鏈交易的有序性,每筆交易按照SequenceNumber來進行發送。
雖然在Cosmos設計中有提到可以實現無序的Channel,但是默認實現上是采用了有序的模式。如果按照TCP協議簇來類比的話,有序Channel和TCP類似,無序Channel類似于UDP,無序Channel按照UDP來講的話,在某些不太關注跨鏈消息包順序的場景下也是適用的。同時Cosmos設計中也考慮到Channel的消息發送能力,允許一條Connection上建立多個Channel,在不同的跨鏈應用場景中,可以使用不同的Channel發送消息,從而隔離不同業務。
▲?發送跨鏈數據包
完成上述的一系列握手之后,應用層便可以在Channel上發送自己的數據了。Cosmos規定了發送跨鏈交易的一些必要字段,如下圖:
其中Sequence和SourcePort字段都是承擔其字面意思的功能,也是必須指定的字段,而TimeoutHeight和TimeoutTimestamp是Cosmos提供的一種超時機制。如果某個區塊高度或者某個時間這筆跨鏈交易還沒有完成的話,用戶能夠指定將這筆交易回退。而Data字段是留給用戶進行自定義,以應對可能的各種復雜的跨鏈場景。
總結
通過上面對IBC的分析,我們可以看到IBC采用了建立連接的方式進行跨鏈,不同于Polkadot的XCMP協議,XCMP協議中平行鏈可以直接進行跨鏈消息的轉發。
而且Cosmos并沒有過分關注Zone作惡的情況,只是通過維護Zone的輕客戶端的方式驗證跨鏈交易的有效性,這種方式下是相信Zone不會出現集體作惡的情況,也就是Zone安全性由自身負責。不同于Polkadot設計上中繼鏈維護全局的安全性,CosmosIBC的設計上是減少了跨鏈系統的維護成本和降低了設計實現難度的。
作者簡介
陶勇星
來自數據網格實驗室BitXHub團隊主要負責區塊鏈賬本互操作技術相關研究工作
據Cointelegraph報道,eToro委托咨詢公司AiteGroup發布的一份新報告顯示,機構采用加密貨幣仍存在障礙.
1900/1/1 0:00:00香港多家港媒1月5日消息稱,香港柴灣一名男子4日晚在車內跟南亞人交收虛擬貨幣比特幣,正在數錢時,被4名南亞男子搶走300萬港元巨款.
1900/1/1 0:00:001月4日,Furucombo公布首個贈款計劃。從1月15日開始,在Balancer上推出COMBO代幣后,官方將向早期支持者和用戶分發100萬枚COMBO.
1900/1/1 0:00:00Brave瀏覽器用戶人數已經超過2000萬,并且已經開始支持本地IPFS協議,讓人們可以更輕松簡單的使用分布式網絡,這一實現標志著更具彈性、用戶至上的互聯網發展的邁出重要一步.
1900/1/1 0:00:00近日,颯姐團隊接到多起幣圈投資引發的糾紛咨詢,由于訴訟標的為虛擬貨幣,無論是提起民事訴訟還是刑事報案都會遇到區別于傳統維權的特殊法律問題.
1900/1/1 0:00:00本文來自Bloomberg,原文作者:KritiGupta&EdwardRobinson譯者:Odaily星球日報Moni 在經歷了十多年的起起伏伏之后,比特幣終于爆發了.
1900/1/1 0:00:00