區塊鏈可擴展性 – 側鏈和支付管道
首頁
文章
區塊鏈可擴展性 – 側鏈和支付管道

區塊鏈可擴展性 – 側鏈和支付管道

進階
發佈時間 Feb 20, 2020更新時間 Feb 9, 2023
9m

目錄


前言

廣義上講,可擴展性指系統增長以適應日益增長需求的能力。在運算方面,您可以透過升級機器的硬體來提升機器的效能,以便更快地執行某些任務。當我們談到區塊鏈的可擴展性時,我們指的是增長其處理更多交易的能力。
比特幣之類的協定有眾多優點,但可擴展性並非其中之一。如果比特幣在中央擁有的資料庫中執行,管理員可以相對容易地提高速度和吞吐量。但比特幣的價值主張(即抗審查性)要求許多參與者同步區塊鏈的副本。


區塊鏈可擴展性問題

執行比特幣節點相對實惠,即使簡易的裝置也能做到。但由於數千個節點需要相互保持最新狀態,因此其容量存在一定限制。
針對可在鏈上處理的交易數目來設定上限,以免資料庫增長至難處理的大小。如果變得太大且太快,節點將無法跟上。而且,如果區塊太大,則無法在網路周圍迅速轉送。

因此,我們會發現自己遇到瓶頸。區塊鏈可以被視為按設定的時間間隔發車的火車服務。每節車廂的座位有限,若要獲得車票,旅客必須競價以保證座位。如果每個人都設法同時上火車,則價格會很高。同樣,因待處理交易堵塞的網路將需要用戶支付更高的費用,才能及時查看其交易。

一種解決方案是增大車廂。這意味著更多的座位、更高的吞吐量和更實惠的票價。但座位可能不會像以前那樣坐滿,這無法做出保證。車廂無法一直加寬,就像區塊或區塊燃料限制不能無限擴展一樣。後者使節點保留在網路上的成本更高,因為需要更昂貴的硬體來保持同步。

以太坊建立者 Vitalik Buterin 提出了可擴展性三難問題,來描述區塊鏈面臨的挑戰。他認為協議必須在可擴展性、安全性和去中心化間進行權衡。這彼此之間有些矛盾 – 過多地關注其中兩個屬性,第三個屬性就會較差。

出於此原因,許多人將可擴展性視為需要在鏈下實現,而區塊鏈本身應最大限度地提高安全性和去中心化。


什麼是鏈下擴展解決方案?

鏈下擴展是指允許在不膨脹區塊鏈的情況下執行交易的方法。插入區塊鏈的協定允許用戶支付或收取資金,而交易不會出現在主鏈上。我們將深入探討這方面最顯著的兩個進步:側鏈和支付管道。


側鏈簡介

什麼是側鏈?

側鏈是一個單獨的區塊鏈。然而,它並非獨立的平台,因為它以某種方式與主鏈掛鉤。主鏈和側鏈可互操作,這意味著資產可以自由地從一個流向另一個。

有多種方法可以確保資金可以轉移。在某些情況下,資產透過存入特殊地址而從主鏈轉移。它們並沒有真正傳送過來 – 而是被鎖在地址中,並且在側鏈上發出相符的金額。更直接的方式(儘管是中心化選項)是將資金傳送給託管方,託管方則將存款換成側鏈上的資金。


側鏈如何運作?

假設我們的朋友 Alice 有五個比特幣。她想將它們換成比特幣側鏈上的五個等價單位 – 我們稱之為側幣。相關側鏈使用雙向掛鉤,這意味著用戶可以將其資產從主鏈轉移至側鏈,反之亦然。

請記住,側鏈是一個單獨的區塊鏈。因此,它將具有不同的區塊、節點和驗證機制。為了獲得她的側幣,Alice 會將她的五個比特幣傳送至另一個地址。它可能由某人擁有,一旦他們收到比特幣,就會將五個側幣記入她的側鏈地址。或者,可能有某種信任最小化的設定,在軟體偵測到支付後,側幣會自動記入貸方。



Alice 現在已經將其代幣轉換為側幣,但她始終可以逆轉該程序來收回她的比特幣。現在她已經進入側鏈,她可以隨時在這個單獨的區塊鏈上進行交易。她可以傳送側幣或從其他人接收側幣,就像在主鏈上一樣。

例如,她可以向 Bob 支付一個側幣來購買幣安連帽衫。當她想返回比特幣時,可以將剩餘的四個側幣傳送至特殊地址。交易確認後,四個比特幣將會解鎖,並交付至其在主鏈上控制的地址。


為什麼使用側鏈?

您可能想知道這有什麼意義。為什麼 Alice 不直接使用比特幣區塊鏈?

答案是側鏈或許能夠完成比特幣無法做到的事情。區塊鏈是精心設計的權衡系統。雖然比特幣是最安全和去中心化的加密貨幣,但它在吞吐量方面並非最出色的。而且,雖然比特幣交易比傳統方法快,但相較於其他區塊鏈系統,它仍然相對較慢。區塊鏈每十分鐘開採一次,並且在網路擁塞時,費用會顯著增加。

誠然,小額日常支付可能不需要這種級別的安全性。如果 Alice 支付一杯咖啡,她就不會等待交易確認。她會排長隊,等拿到時她的咖啡已經涼了。

側鏈則不受相同規則的約束。事實上,他們甚至不需要使用工作量證明來運作。您可以使用任何共識機制、信任單一驗證人,或調整任意數量的參數。您可以新增主鏈上不存在的升級,產生更大的區塊,並強制執行快速結算。

有趣的是,側鏈甚至可能存在嚴重錯誤而不影響底層鏈。這可讓其用作實驗平台,並推出需要網路上絕大多數人達成共識的功能。

如果用戶對權衡感到滿意,則側鏈可能是實現有效擴展至關重要的一步。主鏈節點不需要儲存來自側鏈的每筆交易。Alice 可透過單一比特幣交易進入側鏈,執行數百次側鏈交易,然後退出側鏈。就比特幣區塊鏈而言,她只做了兩件事 – 一次進入和一次退出。

以太坊的等離子體是相似的,但有一些主要差異。閱讀更多相關資訊: 什麼是以太坊等離子體?


支付管道介紹

什麼是支付管道?

支付管道在可擴展性方面的作用與側鏈相同,但兩者在根本上差異顯著。與側鏈一樣,支付管道將交易推離主鏈,以防止區塊鏈膨脹。然而,與側鏈不同的是,它們不需要單獨的區塊鏈來運作。

支付管道使用智能合約,讓用戶無需將交易發佈到區塊鏈即可進行交易。它藉由兩個參與者之間的軟體強制協議來實現。


支付管道如何運作?

在常用的閃電網路等模型中,雙方首先將代幣存入其共同擁有的地址。這是一個多重簽名地址,需要兩個簽名才能使用資金。因此,如果 Alice 和 Bob 建立了這樣的地址,則只有在得到他們雙方同意的情況下才能將資金轉移出去。

假設他們每個人將 10 BTC 存入一個現在擁有 20 BTC 的地址。他們很容易保持資產負債表,開始提到 Alice 和 Bob 各有 10 BTC。如果 Alice 想給 Bob 一個代幣,他們可以將其更新為 Alice 有 9 個比特幣,Bob 有 11 個比特幣。當他們繼續更新這些餘額時,不必發佈到區塊鏈。



假設 Alice 到時有 5 BTC,Bob 有 15 BTC。然後他們可以建立一筆交易,將這些餘額傳送至各方擁有的地址,簽名並推播。

Alice 和 Bob 可以在其資產負債表上記錄 10、100 或 1000 筆交易。但就區塊鏈而言,他們只執行了兩種鏈上操作:一種用於初始資金交易,另一種用於在完成後重新分配餘額。除了這兩個之外,所有其他交易都免費且近乎即時,因為交易發生在鏈下。無需支付礦工費,也無需等待區塊確認。

當然,上面討論的範例需要雙方合作,這對於陌生人來說不是理想的情況。但是, 可以使用特殊機制來懲罰任何作弊企圖,因此各方可以在無信任的情況下安全地互動。


支付路徑

顯然,支付管道對於預期交易量大的兩方來說是便捷的。而且會變得更好。這些管道的網路可以充實,意味著 Alice 能夠支付其無直接連線的一方。如果 Bob 與 Carol 有一個開放的管道,Alice 可以向她支付,前提是擁有足夠的容量。她會將資金推送至管道的 Bob 側,而後者又會將資金推送至 Carol 的一側。如果 Carol 連線至另一位參與者 Dan,則可以執行相同的操作。

這樣的網路演進為分散式拓撲,每個人都連線至多個對等點。通常會有多條路線到達目的地,用戶能夠選擇最有效的一條。


總結

我們已經討論了兩種可擴展性方法,其允許在不增加底層區塊鏈負擔的情況下進行交易。側鏈和支付管道技術都尚未成熟,但希望規避基礎層交易缺點的用戶正越來越多地利用該技術。

隨著時間的推移和越來越多的用戶加入網路,堅持去中心化非常重要。這只有針對區塊鏈的增長強制執行限制才能實現,以便新節點可以輕鬆加入。鏈下可擴展性解決方案的支持者認為,隨著時間的推移,主鏈將僅用於結算高價值交易,或用於換入/換出側鏈和開啟/關閉管道。