介紹
可擴展性是指系統不斷髮展以滿足不斷增長的需求的能力。在計算中,您可以通過升級硬件來提高設備的性能,以更快地執行某些任務。當我們談論區塊鏈的可擴展性時,我們談論的是它們處理大量交易的能力。
像比特幣這樣的協議有很多優點,但可擴展性並不是其中之一。如果比特幣在集中式數據庫上運行,管理員提高交易速度和吞吐量將相對容易,但比特幣的價值主張(即抗審查性)要求許多網絡參與者不斷同步區塊鏈網絡的副本。
擴展區塊鏈網絡的問題
運行比特幣節點相對便宜,甚至可以在技術薄弱的設備上完成。但由於數千個節點必須瞭解彼此的活動,因此它們的吞吐量存在一定的限制。
對鏈上可以處理的交易數量進行限制,所有這些都是爲了防止數據庫快速增長到巨大的比例。如果它變得太大太快,節點將無法快速相互交互。此外,如果塊太大,它們將無法通過網絡快速中繼。
其結果是情況複雜,解決方案的針對性也狹窄。區塊鏈可以被認爲是一列按照精確時間表出發的火車。每節車廂的座位數量有限,乘客必須出價預定座位才能獲得車票。如果每個人都試圖同時登上火車,座位的價格就會飆升。對於因待處理交易而堵塞的網絡也是如此,在這種情況下,用戶需要支付更高的費用才能及時將其交易添加到處理中。
一種解決方案是增加車廂的尺寸。這將提供更多的座位、更高的容量和更低的票價。但不能保證座位不會像以前那樣開始爆滿。它們無法持續擴展,就像區塊或區塊內的氣體限制一樣,它們根本無法無限擴展。後者使得維護節點變得更加昂貴,因爲節點的所有者將需要更昂貴的設備來與區塊鏈同步。
以太坊創始人 Vitalik Buterin 創造了可擴展性三難困境來描述區塊鏈面臨的問題。他認爲協議必須在可擴展性、安全性和去中心化之間進行權衡。這些屬性彼此有些矛盾,主要集中在兩個屬性上,而忽略了第三個屬性。
因此,許多人認爲可擴展性必須在鏈外實現,而安全性和去中心化必須在底層區塊鏈上最大化。
什麼是鏈下擴容?
鏈下擴展是指允許交易在不增加區塊鏈上的塊數量的情況下發生的方法。連接到鏈上的協議允許用戶發送和接收資金,而無需在主鏈上出現交易。我們將研究這個方向上兩個最著名的解決方案:側鏈和支付渠道。
側鏈簡介
什麼是側鏈?
Sidechain,側鏈(源自英文sidechain)是一條獨立的區塊鏈。然而,這不是一個獨立的平臺,因爲它與主鏈有一定的連接。主鏈和側鏈是可互操作的,這反過來意味着資產可以自由地從一條鏈轉移到另一條鏈。
有多種方法可以確保所謂的資金轉移。在某些情況下,通過將代幣發送到特殊地址來將資產從主鏈轉移。事實上,它們沒有被髮送到任何地方;相反,這些幣被封鎖在發送者的地址上,並在側鏈上分配相應的金額。一個更簡單(儘管是中心化)的選擇是將貨幣發送給負責資金保管和分配的參與者,其任務是在鏈之間交換貨幣。
怎麼運行的?
假設我們的朋友愛麗絲有五個比特幣。她想將它們兌換成比特幣側鏈上的五個等值單位,我們稱之爲側幣。目標側鏈採用雙向掛鉤,這意味着用戶可以將資產從主鏈轉移到側鏈,反之亦然。
請記住,側鏈或側鏈是一個單獨的區塊鏈。因此,它的區塊、節點和驗證機制都會與主鏈不同。爲了接收側幣,愛麗絲將五個比特幣發送到另一個地址。它可能屬於某個人,一旦收到付款,她就會將五個側幣記入她的側鏈地址。或者,它可以具有某種最低信任設置,一旦軟件檢測到付款,側幣就會自動記入貸方。

一旦愛麗絲將她的硬幣轉換成副幣,她可以隨時反轉該過程。現在她已經進入側鏈了,她可以在側鏈上自由地進行交易了。 Alice 可以發送和接收來自其他用戶的側幣,就像在主鏈上一樣。
例如,她可以向鮑勃支付一枚側幣來購買一件幣安帽衫。當她想返回比特幣時,她需要將剩餘的四個側幣發送到一個特殊地址。一旦交易被確認,這四個比特幣將被解鎖並傳送到其在主鏈上控制的地址。
側鏈有什麼用?
您可能想知道這有什麼意義?爲什麼我們不能只使用比特幣區塊鏈?
答案是側鏈可以做比特幣做不到的事情。區塊鏈是精心設計的權衡系統。儘管比特幣是最安全和去中心化的加密貨幣,但它在吞吐量方面並不是最好的。雖然比特幣交易比傳統交易更快,但與其他區塊鏈系統相比仍然相對較慢。每十分鐘開採一次區塊,當網絡擁塞時,費用可能會大幅增加。
當然,日常小額支付不需要這種級別的安全性。如果Alice買咖啡,她不會有絲毫願意站在那裏等待交易被確認。她會排隊等候,此外,她的飲料在端上來之前就會變冷。
側鏈並不由同一組規則綁定在一起。事實上,他們甚至不需要使用工作量證明算法來運行。此類系統可以使用任何共識機制,信任一個驗證器,或者使用任意數量的參數創建一組特定的設置。他們還可以進行主鏈上不存在的更新、創建更大的區塊並提高貨幣結算的速度。
一個有趣的事實是,如果發生嚴重錯誤,側鏈可以在不影響主鏈的情況下運行。這使得它們可以用作進行各種實驗和部署新功能的平臺,否則需要大多數網絡參與者達成共識。
如果用戶對網絡的權衡感到滿意,側鏈可以成爲實現高效擴展的不可或缺的一步。主鏈節點不需要存儲來自側鏈的每筆交易。 Alice 可以通過比特幣網絡上的一筆交易進入側鏈,並使用側幣執行一百個不同的交易,然後退出側鏈。也就是說,在比特幣區塊鏈中,它只會執行兩筆交易——一筆進入,一筆退出。
以太坊 Plasma 與類似的解決方案具有相似的功能,但它們之間也存在許多差異。有關更多詳細信息,請參閱文章:“什麼是以太坊 Plasma?”
支付渠道介紹
什麼是支付渠道?
支付渠道與側鏈具有相同的用途,但它們有根本的不同。與側鏈一樣,它們將交易移出主鏈以防止區塊鏈膨脹,但與側鏈不同的是,該解決方案不需要單獨的區塊鏈。
支付通道使用智能合約,允許用戶進行交易而無需在區塊鏈上發佈交易。這是通過兩個參與者之間的編程協議來實現的。
怎麼運行的?
在流行的閃電網絡等模型中,兩方首先將代幣存入他們共同擁有的地址。這是一個特殊的多重簽名地址,只有在存在兩個簽名的情況下才能使用資金。因此,如果Alice和Bob創建了這樣的地址,那麼資金只有在雙方同意後才能轉移。
假設他們每人向目標地址存入 10 BTC,之後錢包餘額將爲 20 BTC。在區塊鏈上,很容易查看他們的初始餘額,這可以向每個人確認 Alice 和 Bob 各有 10 BTC。如果愛麗絲給了鮑勃一枚硬幣,她可以更新它以瞭解 - 愛麗絲有 9 個比特幣,鮑勃有 11 個比特幣。他們不需要在區塊鏈上發佈數據,因爲地址上的總體餘額將保持不變。

然而,可能有一天,Alice 有 5 BTC,Bob 有 15 BTC。他們可以輕鬆創建一筆交易,在共同簽名並將交易傳輸到網絡後,將正確的餘額分配到他們的個人地址。
Alice 和 Bob 的資產負債表上可能有十筆、一百筆或一千筆交易。但就區塊鏈而言,他們在鏈上只進行了兩筆交易:一筆是初始存款,另一筆是資金最終在彼此之間重新分配之後。除了這兩項之外,所有其他交易都是免費的,並且幾乎是即時的,因爲它們發生在鏈外。與此同時,Alice和Bob沒有向礦工付款,也沒有等待區塊中交易的確認。
然而,上面的例子需要雙方的合作,這對於陌生人來說並不是一個理想的情況。然而,在特殊機制的幫助下,任何欺詐行爲都將被記錄下來,違規者將受到懲罰,因此各方可以平靜地、最重要的是安全地進行互動,而無需彼此信任。
付款路線
顯然,支付通道對於想要交換大量交易的兩方來說很方便,但在支付路由的幫助下,其功能變得更加出色。假設這些渠道的網絡可以擴展,這意味着愛麗絲可以向與她沒有直接聯繫的一方付款。如果 Bob 與 Carol 之間有開放的通道,Alice 可以向她轉賬,前提是有足夠的資金。爲此,她將硬幣交給鮑勃,鮑勃又將硬幣交給卡羅爾。如果卡羅爾連接到其他參與者,例如丹,那麼她也可以做同樣的事情。
這樣的網絡演變成同時聯繫多個對等點的分佈式網絡拓撲。在這樣的網絡中,往往會有多條到達目的地的路線,用戶可以選擇最合適、最高效的一條。
結論
我們討論了兩種可擴展性的方法,這些方法允許在不給底層區塊鏈帶來負擔的情況下進行交易。側鏈和支付通道技術尚未成熟,但越來越多的用戶使用它們來規避基礎交易的缺點。
隨着時間的推移,越來越多的用戶加入網絡,保持其去中心化變得極其重要。這隻能通過限制區塊鏈的增長來實現,以便新節點可以輕鬆加入。鏈下可擴展性解決方案的支持者認爲,隨着時間的推移,主區塊鏈將僅用於結算大型金融交易或鏈接傳入/傳出側鏈以及打開/關閉通道。
