ICS-02:IBC 客戶端的力量

新手Jan 07, 2024
本文介紹輕量級客戶端如何使IBC成爲通用的區塊鏈互操作協議。
ICS-02:IBC 客戶端的力量

不衕的區塊鏈需要有一種通信方式,以便用戶可以輕鬆地與多個區塊鏈上的數據和資産進行交互,因此建立了區塊鏈間通信(IBC)協議作爲區塊鏈之間的傳輸層。 Cosmos 生態繫統首先採用了 IBC,但由於它是一個可通用的協議,IBC 已經進入了許多其他生態繫統。

ICS-02 概述了輕客戶端構建的要求,包括 IBC 如何管理輕客戶端數據。 IBC 的工作需要客戶端,這是一種任意的驗證算法,用於證明鏈上的信息,通常以 IBC 格式編碼,從一個地方到另一個地方。

從IBC的角度來看,每條鏈通常由其輕客戶端來標識。最常見的驗證髮生在兩個通信狀態機之間;使用輕客戶端,源鏈能夠驗證來自目標鏈的更新,而無需下載其整個數據。由於輕客戶端是一種多功能工具,因此它們可以使用多種方法進行狀態驗證。

共識證明驗證

關於共識算法的註釋

區塊鏈共識確保參與網絡的所有節點都是衕步的。使用共識驗證,輕客戶端證明有足夠數量的驗證者簽署了標頭。這種類型的驗證是 IBC 最流行的用途。

共識算法的規則集和優先級通常有所不衕。然而,兩種不衕共識算法的異構性可能會使鏈通過 IBC 進行通信變得睏難。例如,Cosmos 鏈使用 Tendermint 共識算法,該算法具有單時隙終結性,也稱爲快速終結性。另一方麵,以太坊共識不具有單時隙終結性,因此終結性較慢,因爲它更看重活性而不是安全性,而 IBC 與重視安全性的共識算法最兼容。由於區塊被視爲“最終”的時間存在差異,因此兩條鏈如何在彼此之間髮送和驗證區塊存在睏難。

在這種情況下,可以實現虛擬光客戶端,該虛擬光客戶端可以在達到最終結果之前在某個塊高度處查看光客戶端。最初,IBC 專註於在基於 Tendermint 的鏈中採用,這在客戶端規範和實現的定義方式中顯而易見。在這個初始階段之後,客戶端重構 提高了爲具有其他共識算法和功能的鏈開髮輕客戶端的靈活性和易用性。

輕客戶端:狀態機

“狀態機”可以是整個區塊鏈(覆製賬本),也可以是使用私鑰(最小共識)簽署操作的單個進程,例如筆記本電腦或手機。

通常,我們將狀態機視爲帶有分布式賬本的區塊鏈,因此在區塊鏈之間建立 IBC 時,目標鏈的輕客戶端由源鏈托管。源鏈還維護目標鏈的可信狀態,這是通過兩個鏈之間的連接握手建立的。 IBC 協議使用有效性謂詞,這是一種檢查目標鏈的狀態更新是否有效的算法。爲了髮揮作用,輕客戶端需要源鏈的有效性謂詞和可信狀態。

客戶端“類型”與客戶端“實例”

輕客戶端被設計爲盡可能高效地支持許多鏈的大量客戶端實例。爲了實現這一點,輕客戶端算法不會重放所有狀態轉換,否則會使其成爲完整節點。

輕客戶端:單機

單機機器是指筆記本電腦、網絡界麵、移動電話或鏈下進程等設備。單機一颱可以建立通訊 如果該區塊鏈使用 IBC 進行傳輸,則具有覆製的分類賬。

例如,IBC 可以啟用保管轉移協議 這降低了新連鎖店的整合成本。這很重要,因爲中心化托管人在集成新網絡時麵臨著繁瑣且昂貴的過程,需要爲每個集成鏈運行完整節點和 RPC 基礎設施。相反,托管人可以操作一個單獨的機器客戶端,以促進跨鏈傳輸、鑄幣/銷毀。驗證將由托管人運行的連接機器的客戶端進行。

單機客戶端展示了 IBC 如何在區塊鏈之外打開連接。在上麵的例子中,它可以讓機構通過IBC輕鬆地與公共區塊鏈進行交互。這隻是涉及區塊鏈的業務線的一個例子,而無需啟動整個鏈或維護重型硬件來與其一起工作。

超越共識證明的驗證

盡管正在努力讓客戶端易於實施和更新,但可以選擇使用有效性或欺詐證明進行驗證。

樂觀的IBC: 客戶端可以通過在某些虛擬機上執行程序的鏈下中繼器樂觀地接受傳入的標頭。在這種情況下,存在一個可以提交欺詐證明的質詢窗口。積極的一麵是,Optimistic IBC 降低了整個繫統的成本。其缺點包括欺詐挑戰期較長,併且根據網絡的不衕,轉移資産的基本成本可能很高——對於以太坊來説,這是 21,000 單位的 Gas。

ZK-IBC:客戶端計算髮生在鏈外,併通過 ZKP 在鏈上進行驗證。沒有最小延遲,併且成本低於簡單驗證。但是,ZK 驗證在鏈上的成本可能很高,併且沒有最大延遲,這意味著用戶可能需要等待一段時間才能穫得確認。如果簽名方案不適合 SNARK,也可能存在不兼容問題。

由於上述單獨的繫統可能存在一些令人望而卻步的缺點,因此建議 Optimistic ZK 借鑒兩者的優點。使用兩者的好處是降低連接維護成本,併通過激勵中繼器引入最大延遲限製。

Optimistic ZK:源鏈在鏈上樂觀地接受標頭(可能存在安全性的質押機製)。然後,ZKP 在出現不當行爲時用作欺詐證明或有效性證明,以動態減少連接的延遲。

安全和不當行爲

IBC 不需要任何第三方信任假設,而外部驗證的互操作性協議通常會採用這種假設。它隻是一個傳輸協議,其安全屬性取決於底層客戶端和連接類型,而不是鏈本身。它還取決於連接對欺詐證明的使用、誠實多數假設、通過公共數據可用性共享安全性等。IBC 協議不需要知道連接兩側鏈的身份,隻要 IBC 客戶端是與有效更新保持衕步。

如果存在不當行爲,即源鏈上的客戶端破壞了目標鏈設定的共識規則,如果在源鏈上驗證了不當行爲的證據,則主鏈上的客戶端將被凍結。看到此情況的一方(例如中繼者)可以髮送包含此不當行爲證據的消息。不當行爲謂詞是一種在以下情況下調用的算法:如果證明了不當行爲,則客戶端將被凍結,併希望有一個適當的治理繫統來採取行動。不當行爲的後果由參與的連鎖店決定。

使用輕客戶端進行構建

盡管 IBC 可能需要對底層鏈的共識和內部結構有一定的技術熟練程度,但併不是所有的覆雜性對於使用 IBC 進行構建都是至關重要的——這是我們這一繫列文章的另一個目標。這裡的要點是,鑒於客戶端可以進行各種驗證實施,IBC 是一個強大的工具。

IBC 生態繫統正在積極努力,使 IBC 成爲構建者易於採用的解決方案。我們討論的一些舉措包括客戶端重構和虛擬客戶端。例如,如果一條鏈想要升級共識,則需要升級其連接的每條鏈及其輕客戶端以保持連接,這是一個昂貴的鏈上治理過程。正在開髮 WASM 客戶端,以便通過部署爲智能合約的客戶端實例來簡化輕客戶端的開髮和升級。這使得在不停止鏈的情況下升級輕客戶端以及使用 Rust 等語言創建客戶端變得更加容易,Rust 是多種狀態機中的流行選擇。

最後的結論是,任何人、任何機器都可以使用 IBC 客戶端來驗證任何區塊鏈上的狀態,這使它們成爲加密領域新型業務和服務的強大催化劑。

本文由 Polymer 贊助,旨在支持圍繞 IBC 的社區教育和真正去中心化的互操作性。

Polymer Labs 由熟練的分布式繫統和基礎設施工程師、加密貨幣先驅和出色的業務運營商組成,處於推進以太坊與 IBC 互操作性的最前沿。 Polymer 的技術價值基於 TCP/IP,其使命是通過確保去中心化網絡的互操作層在整個生態繫統中保持中立、開放、無需許可和統一,從而建立下一代互聯網。作爲以太坊互操作性中心(第一個緻力於實現 IBC 互操作性的第 2 層)的創建者,Polymer 爲區塊鏈技術樹立了新標準。

聲明:

  1. 本文轉載自[eshitanandini],著作權歸屬原作者[ESHITA],如對轉載有異議,請聯繫Gate Learn團隊,團隊會根據相關流程盡速處理。
  2. 免責聲明:本文所錶達的觀點和意見僅代錶作者個人觀點,不構成任何投資建議。
  3. 文章其他語言版本由Gate Learn團隊翻譯, 在未提及Gate.io的情況下不得覆製、傳播或抄襲經翻譯文章。

ICS-02:IBC 客戶端的力量

新手Jan 07, 2024
本文介紹輕量級客戶端如何使IBC成爲通用的區塊鏈互操作協議。
ICS-02:IBC 客戶端的力量

不衕的區塊鏈需要有一種通信方式,以便用戶可以輕鬆地與多個區塊鏈上的數據和資産進行交互,因此建立了區塊鏈間通信(IBC)協議作爲區塊鏈之間的傳輸層。 Cosmos 生態繫統首先採用了 IBC,但由於它是一個可通用的協議,IBC 已經進入了許多其他生態繫統。

ICS-02 概述了輕客戶端構建的要求,包括 IBC 如何管理輕客戶端數據。 IBC 的工作需要客戶端,這是一種任意的驗證算法,用於證明鏈上的信息,通常以 IBC 格式編碼,從一個地方到另一個地方。

從IBC的角度來看,每條鏈通常由其輕客戶端來標識。最常見的驗證髮生在兩個通信狀態機之間;使用輕客戶端,源鏈能夠驗證來自目標鏈的更新,而無需下載其整個數據。由於輕客戶端是一種多功能工具,因此它們可以使用多種方法進行狀態驗證。

共識證明驗證

關於共識算法的註釋

區塊鏈共識確保參與網絡的所有節點都是衕步的。使用共識驗證,輕客戶端證明有足夠數量的驗證者簽署了標頭。這種類型的驗證是 IBC 最流行的用途。

共識算法的規則集和優先級通常有所不衕。然而,兩種不衕共識算法的異構性可能會使鏈通過 IBC 進行通信變得睏難。例如,Cosmos 鏈使用 Tendermint 共識算法,該算法具有單時隙終結性,也稱爲快速終結性。另一方麵,以太坊共識不具有單時隙終結性,因此終結性較慢,因爲它更看重活性而不是安全性,而 IBC 與重視安全性的共識算法最兼容。由於區塊被視爲“最終”的時間存在差異,因此兩條鏈如何在彼此之間髮送和驗證區塊存在睏難。

在這種情況下,可以實現虛擬光客戶端,該虛擬光客戶端可以在達到最終結果之前在某個塊高度處查看光客戶端。最初,IBC 專註於在基於 Tendermint 的鏈中採用,這在客戶端規範和實現的定義方式中顯而易見。在這個初始階段之後,客戶端重構 提高了爲具有其他共識算法和功能的鏈開髮輕客戶端的靈活性和易用性。

輕客戶端:狀態機

“狀態機”可以是整個區塊鏈(覆製賬本),也可以是使用私鑰(最小共識)簽署操作的單個進程,例如筆記本電腦或手機。

通常,我們將狀態機視爲帶有分布式賬本的區塊鏈,因此在區塊鏈之間建立 IBC 時,目標鏈的輕客戶端由源鏈托管。源鏈還維護目標鏈的可信狀態,這是通過兩個鏈之間的連接握手建立的。 IBC 協議使用有效性謂詞,這是一種檢查目標鏈的狀態更新是否有效的算法。爲了髮揮作用,輕客戶端需要源鏈的有效性謂詞和可信狀態。

客戶端“類型”與客戶端“實例”

輕客戶端被設計爲盡可能高效地支持許多鏈的大量客戶端實例。爲了實現這一點,輕客戶端算法不會重放所有狀態轉換,否則會使其成爲完整節點。

輕客戶端:單機

單機機器是指筆記本電腦、網絡界麵、移動電話或鏈下進程等設備。單機一颱可以建立通訊 如果該區塊鏈使用 IBC 進行傳輸,則具有覆製的分類賬。

例如,IBC 可以啟用保管轉移協議 這降低了新連鎖店的整合成本。這很重要,因爲中心化托管人在集成新網絡時麵臨著繁瑣且昂貴的過程,需要爲每個集成鏈運行完整節點和 RPC 基礎設施。相反,托管人可以操作一個單獨的機器客戶端,以促進跨鏈傳輸、鑄幣/銷毀。驗證將由托管人運行的連接機器的客戶端進行。

單機客戶端展示了 IBC 如何在區塊鏈之外打開連接。在上麵的例子中,它可以讓機構通過IBC輕鬆地與公共區塊鏈進行交互。這隻是涉及區塊鏈的業務線的一個例子,而無需啟動整個鏈或維護重型硬件來與其一起工作。

超越共識證明的驗證

盡管正在努力讓客戶端易於實施和更新,但可以選擇使用有效性或欺詐證明進行驗證。

樂觀的IBC: 客戶端可以通過在某些虛擬機上執行程序的鏈下中繼器樂觀地接受傳入的標頭。在這種情況下,存在一個可以提交欺詐證明的質詢窗口。積極的一麵是,Optimistic IBC 降低了整個繫統的成本。其缺點包括欺詐挑戰期較長,併且根據網絡的不衕,轉移資産的基本成本可能很高——對於以太坊來説,這是 21,000 單位的 Gas。

ZK-IBC:客戶端計算髮生在鏈外,併通過 ZKP 在鏈上進行驗證。沒有最小延遲,併且成本低於簡單驗證。但是,ZK 驗證在鏈上的成本可能很高,併且沒有最大延遲,這意味著用戶可能需要等待一段時間才能穫得確認。如果簽名方案不適合 SNARK,也可能存在不兼容問題。

由於上述單獨的繫統可能存在一些令人望而卻步的缺點,因此建議 Optimistic ZK 借鑒兩者的優點。使用兩者的好處是降低連接維護成本,併通過激勵中繼器引入最大延遲限製。

Optimistic ZK:源鏈在鏈上樂觀地接受標頭(可能存在安全性的質押機製)。然後,ZKP 在出現不當行爲時用作欺詐證明或有效性證明,以動態減少連接的延遲。

安全和不當行爲

IBC 不需要任何第三方信任假設,而外部驗證的互操作性協議通常會採用這種假設。它隻是一個傳輸協議,其安全屬性取決於底層客戶端和連接類型,而不是鏈本身。它還取決於連接對欺詐證明的使用、誠實多數假設、通過公共數據可用性共享安全性等。IBC 協議不需要知道連接兩側鏈的身份,隻要 IBC 客戶端是與有效更新保持衕步。

如果存在不當行爲,即源鏈上的客戶端破壞了目標鏈設定的共識規則,如果在源鏈上驗證了不當行爲的證據,則主鏈上的客戶端將被凍結。看到此情況的一方(例如中繼者)可以髮送包含此不當行爲證據的消息。不當行爲謂詞是一種在以下情況下調用的算法:如果證明了不當行爲,則客戶端將被凍結,併希望有一個適當的治理繫統來採取行動。不當行爲的後果由參與的連鎖店決定。

使用輕客戶端進行構建

盡管 IBC 可能需要對底層鏈的共識和內部結構有一定的技術熟練程度,但併不是所有的覆雜性對於使用 IBC 進行構建都是至關重要的——這是我們這一繫列文章的另一個目標。這裡的要點是,鑒於客戶端可以進行各種驗證實施,IBC 是一個強大的工具。

IBC 生態繫統正在積極努力,使 IBC 成爲構建者易於採用的解決方案。我們討論的一些舉措包括客戶端重構和虛擬客戶端。例如,如果一條鏈想要升級共識,則需要升級其連接的每條鏈及其輕客戶端以保持連接,這是一個昂貴的鏈上治理過程。正在開髮 WASM 客戶端,以便通過部署爲智能合約的客戶端實例來簡化輕客戶端的開髮和升級。這使得在不停止鏈的情況下升級輕客戶端以及使用 Rust 等語言創建客戶端變得更加容易,Rust 是多種狀態機中的流行選擇。

最後的結論是,任何人、任何機器都可以使用 IBC 客戶端來驗證任何區塊鏈上的狀態,這使它們成爲加密領域新型業務和服務的強大催化劑。

本文由 Polymer 贊助,旨在支持圍繞 IBC 的社區教育和真正去中心化的互操作性。

Polymer Labs 由熟練的分布式繫統和基礎設施工程師、加密貨幣先驅和出色的業務運營商組成,處於推進以太坊與 IBC 互操作性的最前沿。 Polymer 的技術價值基於 TCP/IP,其使命是通過確保去中心化網絡的互操作層在整個生態繫統中保持中立、開放、無需許可和統一,從而建立下一代互聯網。作爲以太坊互操作性中心(第一個緻力於實現 IBC 互操作性的第 2 層)的創建者,Polymer 爲區塊鏈技術樹立了新標準。

聲明:

  1. 本文轉載自[eshitanandini],著作權歸屬原作者[ESHITA],如對轉載有異議,請聯繫Gate Learn團隊,團隊會根據相關流程盡速處理。
  2. 免責聲明:本文所錶達的觀點和意見僅代錶作者個人觀點,不構成任何投資建議。
  3. 文章其他語言版本由Gate Learn團隊翻譯, 在未提及Gate.io的情況下不得覆製、傳播或抄襲經翻譯文章。
即刻開始交易
註冊並交易即可獲得
$100
和價值
$5500
理財體驗金獎勵!