去年,我寫了關於 Commerceblock 的Mercury 錢包兩者的實現 狀態鏈 和 代幣互換. 這同時引入了一種新的混合工具以及第一個實現新的第二層擴展解決方案的錢包。該團隊在Ruben Somsen 的原始狀態鏈提案的基礎上進行了一些更改,使其在不需要的情況下工作 ANYPREVOUT/Eltoo sighash 標誌,並集成了新的CoinSwap 設計,允許用戶多次混合,而無需為每次混合進行鏈上交易。
背景
為那些沒有讀過我之前文章的人快速總結一下:狀態鍊是一種鏈下機制,可以在完全鏈下的任何人之間自由轉移。原始所有者/用戶與狀態鏈運營商合作構建一個ECDSA-MPC 地址,其中私鑰被分片,一半由用戶持有,另一半由運營商持有,然後創建一個時間鎖定的、預簽名的提款交易並在將資金發送到新地址之前與運營商簽署。
任何一方都不能完全控制私鑰,並且用戶有一個預簽名的交易,允許他們在時間鎖定後單方面取回硬幣。當用戶希望轉移狀態鏈時,他們通知運營商然後與接收者合作。接收者和操作者生成一組新的對應於同一地址的私鑰共享,並生成一個新的預簽名交易,其時間鎖比上一個低,然後操作者刪除他們的舊密鑰共享。
密碼學的工作方式,運營商的新密鑰共享只能與新用戶的密鑰共享一起使用,因此如果他們刪除舊密鑰共享,他們甚至不可能與舊用戶合作花費硬幣。此外,由於較新的提款交易具有較低的時間鎖定,因此該交易始終可以在先前所有者的交易之前得到確認。這限制了狀態鏈在必須關閉之前可以轉移的次數,但如果運營商誠實行事,這可以防止老所有者竊取資金。
狀態鏈之上的閃電通道
Commerceblock 現在正在開發一個 新的BLIP (比特幣閃電改進提案)為Somsen 最初的狀態鏈提案中提出的內容實施設計:在狀態鏈之上建立閃電通道。
狀態鏈本身的缺點之一是必須立即傳輸整個UTXO。但是,如果狀態鏈提款交易花費在閃電通道而不是單個用戶的地址中,則狀態鏈的一部分可以通過通道中的初始餘額分配進行轉移,並且該通道可以按常規用於之後的閃電支付。
該過程首先從用戶創建狀態鏈開始。創建者和操作者通過創建分片密鑰並簽署帶有時間鎖的備份取款交易的正常過程,然後創建者(愛麗絲)找到一個將接受狀態鏈的交易對手(鮑勃)。 Alice 和Bob 參與創建分片密鑰的協議與Alice 與狀態鏈運營商所做的相同,並生成他們自己的共享密鑰。然後他們都將累積公鑰和他們各自的公鑰共享給狀態鏈運營商。這允許運營商挑戰他們兩人單獨簽署並證明他們同意合作關閉的當前餘額,而無需等待狀態鏈退出時間鎖到期。
從這裡開始,在Bob 的授權下,Alice 和狀態鏈運營商簽署交易,直接將狀態鏈花費到閃電通道多重簽名中,並處理閃電通道交易創建。此時,狀態鏈地址仍然僅由Alice 和運營商控制,但打開閃電通道的交易現在由Bob 擁有,其時間鎖定比原始狀態鏈取款時間更短,確保在Alice 單方面關閉狀態鏈之前可以確認它對她自己。然後,Alice 和Bob 通過完成與狀態鏈實體的最後一次更新來最終確定協議,使用他們與運營商的組合密鑰創建具有進一步遞減時間鎖的最終狀態鏈交易,以進行將資金花費到閃電通道的提款交易。他們現在都可以將Lightning 通道宣傳為開放並且協議已完成。
提高狀態鏈的效用
該提案將通過放鬆其工作方式的嚴格流動性動態來極大地提高狀態鏈的效用。每當有人願意接受狀態鏈但面額與付款不匹配時,發件人可以簡單地在他們之間打開一個閃電通道,然後等到他們需要花掉剩餘的資金(或者最終收到他們發送的東西返回)以完成整個狀態鏈餘額的轉移。這種可能性不僅增加了狀態鏈的效用,而且如果得到適當的支持,也會增加閃電網絡的效用。
通道重新平衡對於網絡上的節點來說是必要的,路由節點和邊緣節點都只是簡單地發送和接收交易。當資金完全流向通道的一側時,通道無法向一個方向傳遞付款(如果所有的錢都在你這邊,那麼你就收不到付款;如果在另一邊,那麼你無法發送付款)。這需要將資金從一個渠道轉移到另一個渠道,這也有助於在重新平衡您自己的渠道的過程中使渠道不平衡。最終,這種動態達到了必須通過在閃電網絡和鏈上基礎層之間交換資金來重新平衡事物的地步。
Statechains 允許流動性以鏈上提供的相同自由度移動,無需創建鏈上足跡或為其支付費用。假設你有一個耗盡的渠道,另一邊的所有流動性都在離開你,沒有支出能力,你也有一個狀態鏈。該狀態鏈可以自由轉移給任何願意接受它的人,如果您不發送全部價值,它甚至可以在其之上有一個閃電通道,並且它可以用於在您這邊的常規通道中重新平衡資金.
這允許在為了重新平衡您的渠道而必須通過多少渠道進行路由方面提高效率(請記住,您正在為改變您通過的所有其他渠道的平衡做出貢獻),在最好的情況下直接發送它與您擁有正在重新平衡的渠道的同一個同行。如果你想關閉一個與一個點的通道並與另一個點打開它,你甚至可以重新平衡事物,這樣你就擁有了通道的所有平衡,如果它是建立在狀態鏈。
狀態鍊和閃電網絡的未來
Commerceblock 的Nicolas Gregory 在討論他們未來的計劃時說:“我們的目標是建立一個標準化的方法來結合狀態鍊和閃電技術,以便通過使用狀態通道促進閃電通道的鏈下平衡。該規範將作為實現這一目標的基礎。”
從一開始,狀態鏈總是被提議與閃電網絡交互,以解決自己使用它們的問題:你必須轉移整個UTXO 的全部價值。它們還為閃電網絡提供了一定程度的靈活性,這是閃電網絡在流動性管理和網絡轉移方面所不具備的。
現在閃電網絡處於早期發展的健康階段,狀態鏈的具體實現已經存在一年多了,是時候開始考慮這兩種技術如何相互作用了。閃電網絡是一種在網絡圖上沒有直接連接的兩方之間進行原子託管傳輸的系統。該圖上的每個連接如何工作,嚴格來說,只要它有效,對付款的發送者和接收者來說應該無關緊要。
Statechains 和Lightning channels 在利益方面都可以相互提供很多,所有需要做的就是製定標準化兩者相互交互的標準。
這是Shinobi 的客座帖子。表達的觀點完全是他們自己的,不一定反映BTC Inc 或比特幣雜誌的觀點。