在一條區塊鏈中,鏈上各參與方借助區塊鏈共識機制建立信任體系。那么問題來了,在多條區塊鏈的跨鏈場景中,鏈與鏈間的信任如何傳遞?鏈間的信任,信的是什么?這種跨鏈信任,又該如何建立?
先說結論:鏈間的信任,以信任對方鏈的執行機制為前提,信的是符合執行機制的執行結果。
其中緣由,得從跨鏈的基礎操作談起。
跨鏈的基礎操作為:對方鏈執行某個操作完成后,本地鏈才可執行另一個操作。如下圖所示:區塊鏈A成功執行操作X后,區塊鏈B執行操作Y。X操作是Y操作執行的前提條件。
上述操作中,一個請求X經過簽名,變成一筆交易發到區塊鏈A上,經過區塊鏈A共識,生成區塊。區塊中包含了塊頭、交易列表等信息,塊頭中又包含了共識結果信息。上述信息都可統稱為區塊鏈的執行結果,具體流程如下圖所示:
Fantom錢包fWallet新增錢包內跨鏈、創建治理提案等功能:3月24日消息,Fantom基金會宣布Fantom錢包fWallet新增多項功能,包括對質押FTM的自由調整、創建治理提案、內置跨鏈橋、內置OpenOcean聚合交易、集成Unstoppable Domains域名等。[2023/3/24 13:24:41]
區塊鏈A的執行結果被發到區塊鏈B上。區塊鏈B在執行請求Y前,必須先判斷X是否上鏈。
判斷的方法是,在區塊鏈B的運行環境中,驗證區塊鏈A與X相關的執行結果是否有效。驗證通過,表示X已上鏈,區塊鏈B可繼續執行后續步驟:發送請求Y,在區塊鏈B進行上鏈。
需要注意的是,此操作基于一個前提,即區塊鏈B必須信任區塊鏈A的執行機制。區塊鏈A上正確的執行結果,代表的是區塊鏈A上各方意愿。區塊鏈B要驗證區塊鏈A上某個交易是否有效,必須信任區塊鏈A的執行機制,并按照區塊鏈A的執行機制,驗證區塊鏈A的執行結果,才可判斷區塊鏈A上的某個交易已上鏈。
可見,在整個過程中,通過驗證對方鏈的執行結果來判斷請求是否上鏈,是建立跨鏈信任的核心步驟。因而,鏈間的信任,以信任對方鏈的執行機制為前提,信的是符合執行機制的執行結果。
pNetwork跨鏈橋支持將USDT/USDC從以太坊轉至Algorand網絡:6月19日消息,據官方消息,跨鏈協議pNetwork近日宣布,用戶可以將原生USDT/USDC從以太坊轉移到Algorand網絡。[2022/6/19 4:38:40]
執行結果雖然在不同區塊鏈有不同實現方式,但萬變不離其宗,區塊鏈的核心數據結構是以區塊為單位的鏈式結構,交易存在于區塊中(本文不討論DAG形式的區塊鏈)。
因此,我們可將執行結果的驗證劃分為以下四層:
驗區塊連續:在驗證開始時,需確認數據來源,基于區塊鏈的連續性,驗證區塊是否歸屬于指定區塊鏈,防止攻擊者用任意區塊鏈的區塊進行偽造。
驗區塊共識:在確認來源后,需驗證區塊是否代表對方鏈的整體意愿。此步驟驗證區塊的共識信息是否符合要求,防止攻擊者用未經過共識的區塊進行偽造。
驗交易存在:區塊被驗證合法后,需驗證指定交易是否屬于此區塊。不同鏈有不同驗證方法,下一節會展開描述。
Cardano生態跨鏈橋SingularityNet Bridge正式上線:金色財經消息,Cardano 生態跨鏈橋 SingularityNet Bridge 正式上線,支持在以太坊和 Cardano 之間實現 AGIX 和 NTX 的跨鏈轉換。[2022/4/19 14:32:43]
驗交易正確:交易存在性得到驗證后,并不能代表此交易確實是跨鏈場景下預期的操作,還需結合業務場景,判斷交易的具體內容是否符合預期。
只有通過上述四層才算驗證通過。驗證通過后,說明操作已在對方鏈上上鏈,本地的鏈可執行后續步驟。
上節所述四層驗證,在不同區塊鏈上有不同的實現方式。WeCross的插件化框架,定義了通用的編程接口,開發者只需按照鏈類型實現四個層次的驗證邏輯即可。
下面,我們來看看各層次的具體實現方案。
驗區塊連續
在不同區塊鏈上的實現大同小異。當前區塊中記錄著上一個區塊的哈希值,當前區塊的哈希值又在下一個區塊中被記錄,多個區塊依次相連形成區塊鏈。不同區塊鏈只在哈希算法和計算區塊哈希的字段上存在差異。
跨鏈資產橋ChainSwap:團隊將遵循開發檢查流程以確保協議安全:跨鏈資產橋ChainSwap表示,未來將把安全放在首位,并形成團隊直接遵循的開發檢查流程,包括內部代碼審查、編寫測試環境和使用測試代碼進行壓力測試等。此外,ChainSwap表示,將努力推出ChainSwap V2。
此前消息,跨鏈資產橋ChainSwap遭攻擊。[2021/7/24 1:13:34]
在WeCross中,驗證區塊鏈連續性,只需按照相應鏈的實現,驗證區塊依次相連成鏈即可。
驗區塊共識
驗區塊共識,即驗證區塊的共識信息是否符合對應的算法條件。不同算法有不同的實現。此處給出最具代表性的兩種共識算法:POW(工作量證明)和PBFT(實用拜占庭容錯)。
POW屬于最終一致性共識算法,通過最長鏈和延遲確認的方式逐漸讓共識結果收斂一致。WeCross提供了POW驗證所需步驟:
驗難度:驗證區塊的nonce是否滿足工作量證明條件
驗延遲:驗證當前塊是否低于已知最高塊N個塊(N可取為10,表示1個小時前的區塊)
GKC宣布將支持ZSC鏈上資產,跨鏈接入ZSC鏈:4月22日消息,Zenith smart chain(ZSC)已與GKC達成戰略合作,GKC將作為跨鏈資產接入ZT智能鏈ZSC鏈。
屆時,GKC將深度參與ZSC生態,支持DEX、借貸、流動性挖礦等多種鏈上應用場景。
ZSC將攜手GKC共同打造多元化區塊鏈生態,促進區塊鏈技術項目的生態發展,豐富區塊鏈應用場景。[2021/4/22 20:47:44]
驗最長鏈:引入多方,驗證當前區塊處于最長鏈上,防止單方面謊造最高塊高和偽造分叉鏈進行作惡
PBFT算法在多方共識后立即達成一致,區塊鏈不存在分叉和回滾的可能。在算法中,節點通過多次相互廣播簽名以達到共識。
在區塊中,足夠數量的簽名代表了區塊的合法性。因此,WeCross中對PBFT的驗證較為簡單:
配置公鑰:事先配置對方鏈共識節點的公鑰
驗簽名:用事先配置的公鑰驗證區塊中簽名的有效性,并判斷有效簽名數量是否達到PBFT共識條件
驗交易存在
驗交易存在同樣需要根據不同實現判斷,比較有代表性的是SPV(簡單支付驗證)和背書策略。
SPV的初衷是為了實現輕客戶端,目前已在大多數區塊鏈上實現。隨著跨鏈技術興起,此技術也被用作驗證區塊中某數據的存在性。
以交易為例,區塊頭中記錄了當前區塊內所有交易哈希組成Merkle樹的樹根,即“交易根”。任何一筆交易,都唯一對應了一條通向交易根的Merkle path。區塊內不存在的交易,無法偽造出通向交易根的Merkle Path。
因此,在WeCross中只需驗證某交易的Merkle Path,即可判斷某交易是否屬于某區塊。
背書策略為Hyperledger Fabric所采用。在Fabric中,每筆交易都需滿足某個事先定義好的背書策略。
交易在執行時會被多個背書節點簽名,當各方簽名滿足背書策略時,此交易才被認為有效。Fabric將背書節點簽名信息作為交易的一部分保存于區塊中。多筆交易組成區塊內的交易列表。交易列表以二進制形式計算哈希值,此哈希值被記錄于區塊頭中。
因此,在WeCross目前的實現中,僅需判斷交易是否在交易列表中(且對應flag有效),并校驗交易列表哈希值,即可初步判斷交易的存在性。
WeCross后續將結合背書策略,驗證交易的背書節點簽名,進一步增強交易存在驗證的有效性。
驗交易正確
驗交易正確,是根據業務的預期參數判斷前三步驗證的交易哈希(或二進制)是否是業務預期的那個操作。
例如,預期操作為transfer(a, b, 100),則相應的交易內容不能是get(a)。驗證時,需根據交易的編碼方式和哈希算法,校驗業務預期參數與交易哈希(或二進制)是否對應。不同區塊鏈實現的差別只體現在交易編碼和哈希算法上,根據鏈實現采用相應方法進行校驗即可。
WeCross中不同鏈的插件實現了不同的校驗邏輯。FISCO BCOS插件采用的是RLP編碼和SHA-256哈希算法,驗證的是交易哈希是否正確;而Fabric插件則采用ProtoBuf編碼,驗證的是交易二進制是否正確。
為了更直觀進行說明,下圖給出了FISCO BCOS的完整驗證過程。
當某條鏈拿到了對方鏈的執行結果后,即可在本地進行驗證。
在驗區塊連續上,FISCO BCOS通過比對區塊頭中父區塊哈希與真實的父區塊哈希,驗證此區塊是對方鏈的區塊。
在驗區塊共識上,通過校驗當前區塊的簽名列表,判斷合法簽名數量是否滿足PBFT共識條件,確認當前區塊代表了對方鏈的整體意愿。
通過驗證交易哈希通向交易根的Merkle Path的正確性,可判斷交易已存在于區塊鏈上。
通過驗證業務預期、交易二進制、交易哈希的對應關系,可判斷交易是業務預期的那個操作。四個層次驗證通過后,說明業務所預期的操作已在對方鏈上上鏈,驗證完成。
鏈間的信任,以信任對方鏈的執行機制為前提,信的是符合執行機制的執行結果。執行結果是否正確,驗的是四個層次的數據。驗證機制在不同鏈有不同的實現,WeCross以插件化的方式提供支持。
對于目前比特幣的走勢,今年5月12日減半后至目前走勢,可以發現日線是一直處于圖中上行趨勢線上方運行的,目前價格已經4次觸碰這條趨勢線均能迎來反彈,近期的就是日線插針至10140美金.
1900/1/1 0:00:00DeFi流動性挖礦火爆一時,吸引了大量投資者參與。為了方便投資者及時了解DeFi挖礦項目的相關信息和挖礦流程,金色財經與Bitouq聯合推出了“金色說明書”系列挖礦教程。每周三,周五固定更新.
1900/1/1 0:00:009月15日0時,基于幣安智能鏈的DeFi產品BakerySwap高調上線,一時間很多用戶都將代幣投入其中進行挖礦.
1900/1/1 0:00:00從SushiSwap分叉Uniswap之后,各種swap數不過來了,不少的Swap只是簡單拷貝SushiSwap的流動性挖礦的代幣分配機制,導致這些swap高開低走,甚至走向死亡螺旋.
1900/1/1 0:00:00本周技術周刊包含比特幣、以太坊、波卡、COSMOS、Filecoin五個項目的技術類新聞。比特幣閃電版本存在未知漏洞,影響LND0.10.x及更低版本LightningLabs密碼工程負責人Co.
1900/1/1 0:00:00據比推數據,市值最高的加密貨幣比特幣在進入10月之后價格加速下跌。受到美國商品期貨交易委員會(CFTC)和美國聯邦調查局(FBI)對比特幣交易所BitMEX發起指控影響,比特幣在周四下挫約300.
1900/1/1 0:00:00