亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

Cosmos互聯(lián)鏈通信技術(shù)規(guī)范(上)

iliyaku / 2857人閱讀

摘要:被譽(yù)為區(qū)塊鏈的互聯(lián)網(wǎng),旨在解決區(qū)塊鏈可互操作性和可擴(kuò)展性問題。摘要本文給出了互聯(lián)鏈通信協(xié)議的技術(shù)規(guī)范,這個(gè)協(xié)議在年月白皮書中有過首次描述。使用消息傳遞范式,并允許參與鏈保持獨(dú)立。

Cosmos被譽(yù)為“區(qū)塊鏈的互聯(lián)網(wǎng)”,旨在解決區(qū)塊鏈可互操作性和可擴(kuò)展性問題。其區(qū)塊鏈間通訊協(xié)議可以實(shí)現(xiàn)區(qū)塊鏈的互聯(lián),支持不同區(qū)塊鏈之間的資產(chǎn)轉(zhuǎn)移。隨著區(qū)塊鏈協(xié)同操作的需求越發(fā)強(qiáng)烈, Cosmos作為跨鏈技術(shù)的佼佼者,值得我們關(guān)注和學(xué)習(xí)。

摘要
本文給出了Cosmos IBC(互聯(lián)鏈通信)協(xié)議的技術(shù)規(guī)范,這個(gè)協(xié)議在2016年6月Cosmos白皮書中有過首次描述[1]。其它一些技術(shù)也可以在一個(gè)原子操作中涵蓋兩個(gè)鏈,比如“哈希時(shí)間鎖定合同”[2],不過很多(此類技術(shù))都僅限于保證兩個(gè)交易同時(shí)成功或失敗。IBC則創(chuàng)建了完整的雙向“側(cè)鏈”,真正地允許跨鏈傳遞價(jià)值,并充分利用Tendermint的即時(shí)最終性來實(shí)現(xiàn)代幣的快速傳遞。

IBC使用消息傳遞范式,并允許參與鏈保持獨(dú)立。每個(gè)鏈都維護(hù)一個(gè)局部的部分順序,而消息則用于跟蹤所有跨鏈的因果關(guān)系。一旦兩個(gè)鏈之間注冊(cè)了信任關(guān)系,就可以安全地將數(shù)據(jù)包從一個(gè)鏈發(fā)送到另一個(gè)鏈上,代表從一個(gè)鏈上的一個(gè)賬戶轉(zhuǎn)移代幣到另一個(gè)鏈上的賬戶。該協(xié)議也可擴(kuò)展到代幣轉(zhuǎn)移之外(的其它功能) – 盡管為其他應(yīng)用類型設(shè)計(jì)安全的通信邏輯還待深入研究。該協(xié)議對(duì)鏈之間傳輸數(shù)據(jù)包時(shí)的阻塞時(shí)間或網(wǎng)絡(luò)延遲不做假設(shè),因此在異構(gòu)環(huán)境中具有很強(qiáng)的魯棒性。

本文闡述了Cosmos IBC協(xié)議的要求和結(jié)構(gòu),目標(biāo)是提供足夠的細(xì)節(jié)來充分理解和分析協(xié)議的安全性。

以下是《Cosmos互聯(lián)鏈通信技術(shù)規(guī)范》譯文的前半部分。

一 、簡(jiǎn)介

Cosmos IBC是圍繞Cosmos網(wǎng)絡(luò)和Tendermint共識(shí)引擎而設(shè)計(jì)的,從根本上依賴于Tendermint的即時(shí)最終性屬性(意味著永遠(yuǎn)不會(huì)創(chuàng)建分叉)。Cosmos網(wǎng)絡(luò)將由Cosmos樞紐和多個(gè)獨(dú)立的分區(qū)組成,這些分區(qū)都通過IBC與樞紐進(jìn)行通信。Cosmos樞紐還可以通過在它們之間中繼IBC消息來橋接不同的分區(qū)。

我們從一個(gè)簡(jiǎn)單情形的具體例子入手,它可用于為后續(xù)的抽象解釋提供一個(gè)形式框架。在此之后,將解釋這個(gè)例子中使用的消息傳遞語義。接下來就是安全證明和數(shù)據(jù)包傳輸所依賴的技術(shù)基礎(chǔ)。

在此之后,將討論更高級(jí)的消息類型,例如超時(shí)和路由(以使更大的網(wǎng)絡(luò)在相當(dāng)長(zhǎng)時(shí)間內(nèi)能高效運(yùn)作),還要對(duì)協(xié)議處理所有可能情況的能力予以充分考慮。

除了為IBC協(xié)議提供理論理解和參考文檔之外,本文還旨在為協(xié)議的安全基礎(chǔ)提出令人信服的論據(jù)。本文是對(duì)正在進(jìn)行的Cosmos項(xiàng)目的一個(gè)報(bào)告,隨著來自實(shí)踐的數(shù)據(jù)不斷更新理論,我們也將持續(xù)調(diào)整它的內(nèi)容。

二、 示例場(chǎng)景

為了使討論不那么抽象,這里用例子說明一個(gè)具體情形是如何工作的。Alice想從她在Cosmos分區(qū)X上的賬戶發(fā)送30個(gè)wink幣(示例代幣名稱)給Cosmos樞紐上的Bob。假設(shè)分區(qū)X已經(jīng)跟樞紐建立了一個(gè)IBC連接,Alice將在分區(qū)X上創(chuàng)建一個(gè)交易來發(fā)起傳輸。分區(qū)X會(huì)將那些代幣凍結(jié)在某個(gè)托管賬戶,然后創(chuàng)建一個(gè)IBC數(shù)據(jù)包請(qǐng)求樞紐在Bob的賬戶中創(chuàng)建相應(yīng)數(shù)量的代幣。本質(zhì)上,分區(qū)X上的驗(yàn)證節(jié)點(diǎn)集合會(huì)保證銷毀這些代幣以換取在樞紐上重鑄它們。

一個(gè)獨(dú)立的中繼進(jìn)程(任何人都可運(yùn)行的客戶端軟件)可以從分區(qū)X提取那個(gè)IBC數(shù)據(jù)包的證明并將其發(fā)布到樞紐。樞紐將驗(yàn)證區(qū)塊頭,Merkle證明和順序號(hào)來確保這是一個(gè)從分區(qū)X來的有效的IBC數(shù)據(jù)包。這下我們面臨兩個(gè)選擇:要么分區(qū)X在樞紐上有足夠信用來鑄這30個(gè)wink幣從而數(shù)據(jù)包被接受,要么信用不夠而數(shù)據(jù)包被拒絕。如果數(shù)據(jù)包被接受,樞紐就在Bob的賬戶中鑄30個(gè)新鮮的wink幣,并將數(shù)據(jù)包連同成功記錄存在它的傳入隊(duì)列中;如果數(shù)據(jù)包被拒絕,則不會(huì)創(chuàng)建代幣,且隊(duì)列中會(huì)存入一個(gè)失敗記錄。

我說的“信用”指的是什么?我們不希望每個(gè)連接到樞紐的鏈都能在樞紐上隨意創(chuàng)建任意數(shù)量的任意代幣,否則所有經(jīng)濟(jì)保證很快就變得毫無意義。樞紐必須使用它自己的邏輯來驗(yàn)證它是否足夠信任分區(qū)X并接受那30個(gè)wink幣。如果分區(qū)X是wink幣的本源(X的原生代幣),那么在發(fā)送wink幣到樞紐這件事上,它將得到樞紐的極大信任。如果樞紐之前已經(jīng)向分區(qū)X發(fā)送過500個(gè)wink幣,那么它必須記住這個(gè)信息并允許分區(qū)X將(不超過)那500個(gè)wink幣發(fā)送回樞紐,從而實(shí)現(xiàn)代幣的自由流動(dòng)。這個(gè)邏輯可以為代幣傳輸提供安全性,其它應(yīng)用則需要在不完全信任網(wǎng)絡(luò)中所有分區(qū)的情況下,運(yùn)用它們自己的邏輯來維護(hù)全局約束條件。

在樞紐成功或不成功地執(zhí)行了那個(gè)交易之后,我們希望將交易的收據(jù)(連同證明)傳回到分區(qū)X以完成這個(gè)循環(huán)。此收據(jù)只是另一種類型的IBC數(shù)據(jù)包,其執(zhí)行方式與發(fā)送一樣。唯一區(qū)別是,在發(fā)起分區(qū)處理收據(jù)絕不能產(chǎn)生錯(cuò)誤。(根據(jù)收據(jù)內(nèi)容)如果交易是成功的,則分區(qū)X將銷毀托管的30個(gè)wink幣,代幣在分區(qū)間轉(zhuǎn)移成功;如果交易因任何原因被拒絕,那么托管代幣就會(huì)釋放回Alice的賬戶 – 就像什么都沒有發(fā)生過一樣。

這意味著,在收到響應(yīng)(成功或失敗)之前,誰也不能碰分區(qū)X上的托管代幣。除非我們有證據(jù)證明該數(shù)據(jù)包被接收鏈拒絕,已經(jīng)發(fā)出的代幣不會(huì)被釋放。沒有代幣會(huì)被無端創(chuàng)建或銷毀,也不可能執(zhí)行雙花,代幣不會(huì)莫名消失在跨鏈操作中。發(fā)送方只需要等待兩個(gè)數(shù)據(jù)包的轉(zhuǎn)發(fā)和執(zhí)行(很多情況下是十來秒鐘)。對(duì)處理硬分叉分區(qū)(如ETH/ETC或BTC/BCH)的考慮會(huì)在下面的高級(jí)章節(jié)討論。

三、 消息傳遞語義

在試圖擴(kuò)展區(qū)塊鏈時(shí),必須找到一種不違反任何安全保證的可行方法,來增加并行寫的數(shù)量。防止雙花需要為任何給定賬戶提供嚴(yán)格的串行訪問(讀和寫),但是我們需要一些安全的方法來允許多個(gè)交易同時(shí)執(zhí)行,而又不給惡意利用競(jìng)態(tài)條件提供可能性。

通過IBC協(xié)議,我們尋求避免一個(gè)問題,那就是允許多個(gè)獨(dú)立節(jié)點(diǎn)將交易應(yīng)用到相同的狀態(tài)空間。如果你不想丟失任何數(shù)據(jù)(比如:強(qiáng)最終一致性),這個(gè)問題即便不考慮拜占庭角色也是困難的,在面對(duì)惡意行動(dòng)人尋求利用任何不一致為自身牟利的情況下,則變得極其困難。安全地將不同的部分排序協(xié)調(diào)成一致的全局排序的最嚴(yán)謹(jǐn)方法是CRDTs(無沖突數(shù)據(jù)復(fù)制類型),它保證一組固定交易的所有可選的部分排序都將收斂到相同結(jié)果。CRDTs確實(shí)很有趣,但由于其固有特性,不允許在區(qū)塊鏈用例中強(qiáng)制執(zhí)行約束條件(例如,賬戶余額永遠(yuǎn)不能為負(fù)數(shù))。

這個(gè)問題的另一個(gè)解決方案是使用分片,每個(gè)分片都只能訪問狀態(tài)空間的一部分。這可以增加吞吐量,但也會(huì)使任何涉及多個(gè)分片的交易極難正確執(zhí)行。觸及多個(gè)分片并需要一致視圖的查詢可以通過使用快照來執(zhí)行,但是在高度分布的環(huán)境中這可能很困難。如果您想在兩個(gè)分片上安全地、原子地查詢和修改數(shù)據(jù),就需要類似鎖和三階段提交的機(jī)制,這在許多數(shù)據(jù)庫中都使用過。但是,如果您想要保證順序并在通信層引入同步和定時(shí)假設(shè),這就是一個(gè)阻塞操作,這使得它不適合分布式(多)區(qū)塊鏈的場(chǎng)景。

我們通過定義“分區(qū)”而走了一條不同的路。每個(gè)分區(qū)都是一個(gè)獨(dú)立的區(qū)塊鏈,有自己的應(yīng)用邏輯,自己的交易和數(shù)據(jù)存儲(chǔ)。分區(qū)應(yīng)該沿使用界線分開,因此絕大多數(shù)交易只影響一個(gè)分區(qū),但我們可以保證任何跨鏈交易擁有安全和非阻塞的語義。每個(gè)分區(qū)都是一個(gè)完整的獨(dú)立系統(tǒng),它們使用消息傳遞進(jìn)行通信。它們能夠保證本地分區(qū)中的交易正確排序和執(zhí)行,同時(shí)允許其它分區(qū)里的交易并行執(zhí)行。唯一需要全局排序的東西是系統(tǒng)之間發(fā)送的消息。

分布式系統(tǒng)中的消息傳遞是一個(gè)已經(jīng)被深入研究的領(lǐng)域,也是許多其它系統(tǒng)的搭建基礎(chǔ)。我們能夠?qū)Ξ惒较⑦M(jìn)行建模,且對(duì)信道不做時(shí)序假設(shè)。這樣的結(jié)果是,我們?cè)试S每個(gè)分區(qū)以自己的速度行動(dòng),不被任何其它分區(qū)阻塞,卻能夠以當(dāng)時(shí)網(wǎng)絡(luò)允許的最快速度通信。

使用消息傳遞作為原語的另一個(gè)好處是,接收方能夠?qū)魅氲南?yīng)用自己的安全檢查。僅僅因?yàn)橐粋€(gè)我們了解的分區(qū)發(fā)送了一條消息給某個(gè)特定帳戶添加50個(gè)以太幣,并不意味著我們必須增加余額。我們可以在接收消息時(shí)添加我們自己的業(yè)務(wù)邏輯,以決定我們是否想拒絕該消息,以及我們想如何處理它(如果我們接受它)。在一個(gè)共享狀態(tài)的場(chǎng)景中,很難甚至不可能做到這一點(diǎn)。消息傳遞允許每個(gè)分區(qū)確保其安全性和自治性,同時(shí)允許不同的系統(tǒng)作為一個(gè)整體協(xié)同工作。這可以看作是微服務(wù)體系架構(gòu)的一個(gè)類比,但是跨越了組織邊界。

為了在一個(gè)可證明的異步消息傳遞原語上構(gòu)建有用的算法,我們需要定義一些更高階的結(jié)構(gòu)在所有系統(tǒng)間共享,從而允許我們和一些更容易的保證打交道。

3.1 可靠消息隊(duì)列

我們?cè)谶@里引入的第一個(gè)原語是可靠的消息隊(duì)列(以下簡(jiǎn)稱隊(duì)列),這是異步消息傳遞的典型構(gòu)造,它使我們能夠確保因果排序并避免阻塞。

這個(gè)隊(duì)列在每個(gè)區(qū)塊鏈的Merkle數(shù)據(jù)存儲(chǔ)中以多個(gè)鍵值對(duì)的形式永續(xù)保存。每個(gè)隊(duì)列有一個(gè)獨(dú)特的前綴,鍵是通過把一個(gè)代表其順序號(hào)的8字節(jié)大端模式整數(shù)追加在這個(gè)前綴后面生成的。注意這個(gè)編碼方式為我們提供了一個(gè)與鍵的順序號(hào)相一致的鍵的字典序,這讓我們能快速找到最新的數(shù)據(jù)包,也能證明在某個(gè)給定順序位的數(shù)據(jù)包內(nèi)容(或沒有數(shù)據(jù)包) -- 假設(shè)像在我們的IAVL+ Merkle樹[3]里那樣訪問范圍證明。

新增的任何一個(gè)數(shù)據(jù)包的順序號(hào)只能比當(dāng)前最高數(shù)據(jù)包的順序號(hào)大1。為了使證明更容易,我們會(huì)將順序號(hào)也存在數(shù)據(jù)包本身(鍵值對(duì)的值)里面。一旦一個(gè)數(shù)據(jù)包被寫入,它就是不可變的(除了在清理期間刪除,這在后面會(huì)解釋)。這使得接收分區(qū)可以接受位于源分區(qū)高度H的數(shù)據(jù)包Z的證明,而接收分區(qū)處理交易時(shí)盡可放心數(shù)據(jù)包在源分區(qū)里仍然以相同狀態(tài)存在(異步性的要求)。區(qū)塊鏈應(yīng)用邏輯必須為所有隊(duì)列保證這些約束條件,以確保消息層的正常運(yùn)行。

假設(shè)我們的IBC隊(duì)列的前綴是0xCAFE,我們可以看到多個(gè)數(shù)據(jù)包是如何存在Merkle樹中的,而它們的順序號(hào)又是如何追加(生成鍵)的,這樣我們就可以輕松地為某個(gè)給定數(shù)據(jù)包的存在(或不存在)提供一個(gè)Merkle證明。下面圖示了構(gòu)建順序號(hào)為2的數(shù)據(jù)包的Merkle證明的路徑,用橙色高亮顯示。

本節(jié)的其余部分將定義可通過此隊(duì)列發(fā)送的基本消息類型。

3.2 注冊(cè)鏈(需經(jīng)許可)

在兩個(gè)鏈之間建立起連接之前,我們需要先讓它們彼此注冊(cè)。這一點(diǎn)尤為重要,因?yàn)樗休p客戶端證明都需要一個(gè)對(duì)驗(yàn)證消息頭至關(guān)重要的信任種子,當(dāng)有未經(jīng)共識(shí)算法批準(zhǔn)的惡意分支存在時(shí),它能讓我們確認(rèn)那條真的鏈。

為了在A和B之間形成連接,我們必須在B上注冊(cè)A,也要在A上注冊(cè)B。這些過程是對(duì)稱的,所以在這里我們只描述如何在A上注冊(cè)B。在注冊(cè)時(shí),A為B添加一個(gè)可信的消息頭和驗(yàn)證節(jié)點(diǎn)集合,保存在它的安全數(shù)據(jù)存儲(chǔ)中。這用于驗(yàn)證來自B的所有未來的消息頭,以及驗(yàn)證節(jié)點(diǎn)集合的變更。A還要?jiǎng)?chuàng)建兩個(gè)具有不同名稱(前綴)的隊(duì)列。

ibc::out – 存放所有以B為目的地的傳出數(shù)據(jù)包

ibc::in – 存放所有來自B的傳入數(shù)據(jù)包連同它們的執(zhí)行結(jié)果

注意,注冊(cè)鏈應(yīng)該是一個(gè)需要獲得許可的操作,且執(zhí)行時(shí)要有人工驗(yàn)證。這將產(chǎn)生一個(gè)信任聲明,即這個(gè)消息頭和驗(yàn)證節(jié)點(diǎn)集合代表了對(duì)應(yīng)鏈的正確狀態(tài),它們不屬于試圖鏡像這條鏈的某些影子鏈。不像PoW的最長(zhǎng)鏈勝出算法,對(duì)權(quán)益證明而言信任必須在某個(gè)時(shí)點(diǎn)被明確授予。

而且,注冊(cè)過程還必須定義好我們用來驗(yàn)證Merkle證明的算法(這些證明存在于隊(duì)列中的IBC數(shù)據(jù)包里)。缺省設(shè)置是來自我們的IAVL樹的Merkle證明格式,但是其他Merkle化的數(shù)據(jù)存儲(chǔ),比如Patricia Trie,也可以得到支持。這個(gè)算法必須在注冊(cè)時(shí)設(shè)置一次,并且必須被參與鏈所支持。隊(duì)列的整個(gè)生命周期都會(huì)基于可信的消息頭,一致地使用該算法驗(yàn)證每個(gè)數(shù)據(jù)包或收據(jù)。

3.3 驗(yàn)證節(jié)點(diǎn)變更

任何生產(chǎn)鏈的驗(yàn)證節(jié)點(diǎn)集合都會(huì)隨著時(shí)間推移而發(fā)展變化。當(dāng)我們注冊(cè)一個(gè)新鏈時(shí),會(huì)針對(duì)一個(gè)特定的驗(yàn)證節(jié)點(diǎn)集合做一個(gè)信任聲明 (更具體而言,我們的信任綁定的是這樣一個(gè)條件:消息頭擁有超過一定閾值數(shù)量的與給定公鑰集相匹配的數(shù)字簽名)。當(dāng)我們信任的這組公鑰變化時(shí),我們需要一個(gè)消息來把這個(gè)變更通知給其它鏈。由于驗(yàn)證節(jié)點(diǎn)變更對(duì)共識(shí)算法至關(guān)重要,所以我們用一個(gè)標(biāo)準(zhǔn)格式把它存儲(chǔ)在Tendermint的區(qū)塊頭內(nèi)。

我們定義一個(gè)特殊的更新數(shù)據(jù)包,它包含一個(gè)Tendermint區(qū)塊頭和新的驗(yàn)證節(jié)點(diǎn)集合,我們可以將它發(fā)送給接收鏈。接收鏈可以核實(shí)驗(yàn)證節(jié)點(diǎn)集合變更的有效性,并使用它來驗(yàn)證所有未來的數(shù)據(jù)包。

3.4 發(fā)送數(shù)據(jù)包

發(fā)送一個(gè)IBC數(shù)據(jù)包涉及區(qū)塊鏈應(yīng)用邏輯調(diào)用IBC模塊,告訴它需要發(fā)送的數(shù)據(jù)包以及目標(biāo)鏈的標(biāo)識(shí)。如果目標(biāo)鏈已經(jīng)注冊(cè)好,IBC模塊只需計(jì)算下一個(gè)順序號(hào)并將其添加到傳出隊(duì)列out queue。順序號(hào)與特定連接相關(guān)并由發(fā)送鏈生成,它們必須是單調(diào)遞增和連續(xù)的。

數(shù)據(jù)包被寫入Merkle化的數(shù)據(jù)存儲(chǔ),這樣它就嵌入了和區(qū)塊頭相關(guān)聯(lián)的證明當(dāng)中。這些代表了數(shù)據(jù)包的鍵值對(duì)證明接下來就會(huì)被傳送給其它鏈。

區(qū)塊鏈應(yīng)用程序必須對(duì)誰可以寫一個(gè)隊(duì)列的鍵空間做出限制,不是隨便哪個(gè)智能合約都可以在那里寫交易數(shù)據(jù),只有當(dāng)區(qū)塊鏈邏輯判定數(shù)據(jù)包有效,且與數(shù)據(jù)包類型相關(guān)的全局約束條件得到滿足(比如:上面例子中的托管代幣被凍結(jié)),才會(huì)生成(并寫入)數(shù)據(jù)包。

3.5 中繼數(shù)據(jù)包

為了讓數(shù)據(jù)包到達(dá)目標(biāo)鏈,我們依靠一個(gè)或多個(gè)中繼進(jìn)程把鏈A上的傳出證明out proof發(fā)布到鏈B的傳入隊(duì)列in queue中。由于這里只需要輕客戶端證明,中繼進(jìn)程不需要是驗(yàn)證節(jié)點(diǎn),甚至都不需要是全節(jié)點(diǎn)。實(shí)際上,如果每個(gè)發(fā)起創(chuàng)建IBC數(shù)據(jù)包的用戶也負(fù)責(zé)將它中繼到接收鏈,那就太理想了。唯一的限制是,中繼進(jìn)程必須能夠在目標(biāo)鏈上支付適當(dāng)?shù)馁M(fèi)用。

為了系統(tǒng)自舉,鏈開發(fā)人員可以提供一個(gè)有足夠資金的特殊賬號(hào)給中繼進(jìn)程,為所有數(shù)據(jù)包支付費(fèi)用,直到用戶在兩個(gè)鏈上都有代幣。不過,使用IBC的人應(yīng)該自己負(fù)責(zé)支付這些費(fèi)用。注意,更新消息頭是一種代價(jià)高昂的交易(大約100個(gè)數(shù)字簽名校驗(yàn)),而為一個(gè)已知消息頭發(fā)布證明則要便宜得多(大約20個(gè)哈希計(jì)算)。因此,為了優(yōu)化,許多數(shù)據(jù)包可以捆綁在一起在同一區(qū)塊高度發(fā)送,即使它們是在不同的區(qū)塊高度創(chuàng)建的,這樣可以通過增加一點(diǎn)延遲來節(jié)省計(jì)算成本。

系統(tǒng)必須允許多個(gè)中繼進(jìn)程安全地并行運(yùn)行,拒絕掉任何重復(fù)的消息發(fā)布。但更理想的是能在起初就防止他們嘗試重復(fù)發(fā)布,因?yàn)檫@會(huì)浪費(fèi)帶寬和鏈上的計(jì)算時(shí)間。

3.6 收據(jù)

當(dāng)一個(gè)IBC數(shù)據(jù)包發(fā)布到另一個(gè)鏈上并被認(rèn)為是有效的(即,數(shù)據(jù)包的證明跟源鏈的已知消息頭相匹配),則不管執(zhí)行是否成功,我們都必須將它存儲(chǔ)在傳入隊(duì)列in queue里,這樣就有證據(jù)表明它已經(jīng)被處理過。相關(guān)交易應(yīng)該發(fā)送到合適的智能合約加以驗(yàn)證和執(zhí)行,然后返回標(biāo)準(zhǔn)的ABCI結(jié)果(成功或錯(cuò)誤);收到的數(shù)據(jù)包連同處理結(jié)果被寫進(jìn)傳入隊(duì)列。

另一個(gè)中繼進(jìn)程可以獲得這個(gè)數(shù)據(jù)包已經(jīng)在鏈B上處理過的證明,把它作為收據(jù)發(fā)布到鏈A。此收據(jù)將由鏈A處理,觸發(fā)進(jìn)一步的應(yīng)用邏輯,以及對(duì)隊(duì)列的清理(參見高級(jí)部分)。將請(qǐng)求從A中繼到B的那個(gè)進(jìn)程可以將響應(yīng)從B中繼回A,但也可以使用一個(gè)不同的進(jìn)程來做這件事。

作者:Ethan Frey, frey@tendermint.com
譯者:奚海峰 Haifeng Xi
校對(duì):曹恒 Harriet Cao
本文首發(fā)于萬云Wancloud微信號(hào),未經(jīng)授權(quán)不允許轉(zhuǎn)載。

。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/11346.html

相關(guān)文章

  • Cosmos互聯(lián)通信技術(shù)規(guī)范

    摘要:被譽(yù)為區(qū)塊鏈的互聯(lián)網(wǎng),旨在解決區(qū)塊鏈可互操作性和可擴(kuò)展性問題。摘要本文給出了互聯(lián)鏈通信協(xié)議的技術(shù)規(guī)范,這個(gè)協(xié)議在年月白皮書中有過首次描述。使用消息傳遞范式,并允許參與鏈保持獨(dú)立。 Cosmos被譽(yù)為區(qū)塊鏈的互聯(lián)網(wǎng),旨在解決區(qū)塊鏈可互操作性和可擴(kuò)展性問題。其區(qū)塊鏈間通訊協(xié)議可以實(shí)現(xiàn)區(qū)塊鏈的互聯(lián),支持不同區(qū)塊鏈之間的資產(chǎn)轉(zhuǎn)移。隨著區(qū)塊鏈協(xié)同操作的需求越發(fā)強(qiáng)烈, Cosmos作為跨鏈技術(shù)的佼...

    Jonathan Shieber 評(píng)論0 收藏0
  • 技術(shù)的分析和思考

    摘要:主流跨鏈機(jī)制概述截至目前,主流的區(qū)塊鏈跨鏈技術(shù)方案按照其具體的實(shí)現(xiàn)方式主要分為三大類,分別是公證人機(jī)制側(cè)鏈中繼和哈希鎖定公證人機(jī)制公證人也稱見證人機(jī)制,公證人機(jī)制本質(zhì)上是一種中介的方式。 本文首發(fā)于[深入淺出區(qū)塊鏈社區(qū)(https://learnblockchain.cn/)原文鏈接:跨鏈技術(shù)的分析和思考原文已更新,請(qǐng)讀者前往原文閱讀 當(dāng)前的區(qū)塊鏈底層技術(shù)平臺(tái)百花齊放,不同的業(yè)務(wù)、不同...

    Freeman 評(píng)論0 收藏0
  • 區(qū)塊的跨技術(shù)

    摘要:在區(qū)塊鏈所面臨的諸多問題中,區(qū)塊鏈之間互通性極大程度的限制了區(qū)塊鏈的應(yīng)用空間。是在以太坊基金會(huì)支持之下誕生并成長(zhǎng)起來的,它被認(rèn)為是區(qū)塊鏈上的第一個(gè)側(cè)鏈。它旨在解決當(dāng)今兩大阻止區(qū)塊鏈技術(shù)傳播和接受的難題即時(shí)拓展性和延伸性。 在區(qū)塊鏈所面臨的諸多問題中,區(qū)塊鏈之間互通性極大程度的限制了區(qū)塊鏈的應(yīng)用空間。對(duì)于公有鏈還是私有鏈來說,跨鏈技術(shù)就是實(shí)現(xiàn)區(qū)塊鏈價(jià)值的關(guān)鍵,是區(qū)塊鏈向外拓展和連接的橋梁...

    Snailclimb 評(píng)論0 收藏0
  • 以太坊、EOS和Hyperledger等不同區(qū)塊的比較

    摘要:以太坊背后的主要人物是。以太坊通過在區(qū)塊鏈上引入智能合約,徹底改變了加密世界。以太坊使用名為以太坊虛擬機(jī)的虛擬機(jī)執(zhí)行其智能合約。以太坊最終將利用協(xié)議轉(zhuǎn)向權(quán)益證明。截至目前,以太坊在可擴(kuò)展性方面都失敗了。 不同的區(qū)塊鏈智能合約和區(qū)塊鏈技術(shù)現(xiàn)在風(fēng)靡一時(shí)。越來越多的人出于某種原因試圖進(jìn)入這個(gè)神奇的世界。如果你是這項(xiàng)技術(shù)的新手并正在尋找基于區(qū)塊鏈的開發(fā)平臺(tái)的快速入門,那么本指南非常適合你。我們...

    harriszh 評(píng)論0 收藏0
  • 干貨 | 區(qū)塊快速通道:從技術(shù)原理到應(yīng)用落地

    摘要:萬云專注于將區(qū)塊鏈技術(shù)應(yīng)用于各個(gè)行業(yè),促進(jìn)區(qū)塊鏈在業(yè)務(wù)中的真正落地。共識(shí)算法是區(qū)塊鏈比較核心的技術(shù)之一,保證區(qū)塊一致性是其主要作用。 作者:萬云首席架構(gòu)師兼產(chǎn)品總監(jiān)李晨原文鏈接:http://mp.weixin.qq.com/s/snl...如需轉(zhuǎn)載請(qǐng)聯(lián)系萬云官方微信:萬云Wancloud 2018年開始,好像所有的人都在談?wù)搮^(qū)塊鏈,資本、精英、草根不斷進(jìn)場(chǎng)投身到區(qū)塊鏈的浪潮之中。在外...

    noONE 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<