這是比特幣領域自學成才的教育家和麵向技術的比特幣播客主持人Shinobi 的評論社論。
信道干擾是閃電網絡最具威脅的突出問題之一。它為網絡上的拒絕服務攻擊節點提供了一種開放機制,以防止它們路由、在流動性被鎖定時損失資金以及無法轉發可賺取費用的付款。攻擊者可以通過其他節點將付款從他們自己路由到他們自己,並拒絕完成付款。這使得流動性無法用於轉發其他付款,直到散列時間鎖定合約(HTLC) 時間鎖定到期並且付款退款。
上個月,Lightning 開發人員Antoine Riard 提出了解決此問題的正式規範。 8 月,Riard 和Gleb Naumenko 發表了 研究 著眼於一般問題本身,以及許多可用於緩解或解決它的不同解決方案。其中一個提議的解決方案是一種匿名憑證形式,節點可以使用這種形式為用戶建立一種聲譽評分系統,以便用戶通過它們路由支付,而無需對該聲譽進行dox 或將其與靜態標識符相關聯,這會對人們的隱私產生負面影響。該解決方案現已成為 正式協議提案 Riard 上個月製作的。
Inside The Channel 干擾緩解提案
這個想法的核心是Chaumian ecash 代幣。這些是由鑄幣局發行的集中式代幣,其發行方式可以防止代幣的發行與以後代幣的贖回相關聯。這是通過以盲的方式簽署令牌來完成的,允許令牌的接收者在不使簽名無效的情況下對其進行解密。然後,發行者可以驗證它是一個合法的令牌,而無需將該令牌連接到它的發行時間。
該提案建議使用這些由網絡上的每個路由節點發行的Chaumian 代幣作為信譽證明的一種形式。在路由支付時,支付躍點中每個節點發行的Chaumian ecash 代幣將被包裹在支付過程中該節點的洋蔥包中。代幣單位將代表允許的HTLC 的價值以及退款時間鎖定期。在轉發HTLC 之前,每個節點將驗證包含在其洋蔥blob 中的令牌是否有效並且之前從未被贖回,只有在這兩個條件都為真時才轉發HTLC。
如果HTLC 成功結算並顯示原像,則支付路徑上的每個節點都會簽名並包含一個新發行的Chaumian 代幣,與HTLC 原像一起返回給發送方。如果HTLC 未成功結算,則路由節點通過將令牌包含在其用過的令牌表中來“銷毀”令牌並且不發行新令牌。這迫使發件人必須從這些節點獲取新令牌,以便再次通過它們路由支付。整個概念是乾擾攻擊總是無法解決,所以在這個方案中,如果你執行干擾攻擊,你路由經過的每個節點發出的這些令牌都會被燒毀,並產生獲取更多以再次執行的成本。現在,干擾攻擊只花費時間,因此這會增加他們的經濟成本。
那麼,是時候討論房間裡的大象了:如何引導這些代幣在網絡中的發行和流通?您希望通過的每個節點都需要由它們發行的令牌。解決辦法:付錢給他們。通道堵塞問題的另一個建議解決方案是預付費用,即即使嘗試路由支付也不管它是否成功都收取費用。因此,即使付款失敗也會向發件人收取費用。
Riard 的提議是直接從每個節點購買這些代幣作為一次性購買。從那時起,只要之前的付款成功結算,您將不再為每筆付款支付預付費用,而是重新發行“路由令牌”,使您的下一次擬議付款能夠免費進行路由。這樣,成功的支付只支付實際的路由費用,失敗的支付只支付預付費用,避免了成功支付的“雙倍費用”。至少在經濟上,將其視為一種折衷方案,介於失敗的支付不產生任何費用且只有成功的支付才付費的當前狀況與所有支付都支付預付費用且完全預付費用的模型之間。成功的人也會支付路由費。
提案的要點
就我個人而言,我認為這種提前直接支付代幣的方式可能會給使用閃電網絡的過程帶來很大程度的用戶體驗摩擦。但是,我認為有一個非常簡單的解決方案,可以通過稍微調整提案來解決這個問題。
不必提前為Chaumian 代幣直接向每個節點支付費用,該提案可以更直接地與預付費用提案混合。如果你有一個節點的代幣,那麼將它們包含在洋蔥blob 中,如果不是直接在HTLC 提案中直接支付預付費用,如果付款成功結算,你將按比例獲得Chaumian 代幣- 前台費用是。這樣,您不必提前從許多不同的節點收集代幣,您只需在進行初始付款的過程中獲取它們,直到您從經常使用的不同節點收集到良好的代幣,而這些節點很少需要承擔成本的前期費用來實現它們。
另一個潛在的摩擦來源是節點運營商,歸結為Chaumian ecash 本身的基本問題。為了確保代幣只被花費一次,發行者需要維護一個包含所有已花費代幣的數據庫。這會永遠增長,使得檢查令牌有效性的查找變得越來越昂貴並且耗時隨著數據庫的增長而增加。正因為如此,Riard 建議讓這些Chaumian 令牌在每個節點的八卦協議中公佈的區塊高度定期到期。這意味著發件人需要定期回購這些代幣,或者如果實現支持它,則在前一個代幣到期後將它們兌換成由新簽名密鑰簽名的新代幣。
這要么會給付款的發送者帶來定期的經濟成本,要么要求他們定期檢查以確保在舊代幣到期時重新發行。實際上,對於運行自己的閃電網絡節點的人來說,這可以是自動化的,對於任何圍繞閃電網絡服務提供商(LSP) 模型構建的錢包,LSP 本身實際上可以代表其用戶處理代幣的獲取和維護,處理為其用戶付款提供代幣。然而,在邊緣地帶,如果沒有完整的閃電網絡節點或LSP,這可能會讓輕錢包用戶感到有些煩惱。
我認為這個提議實際上可以大大減輕作為攻擊媒介的頻道干擾,特別是如果與基本的預付費用計劃更緊密地混合,並且對於LSP 用戶來說,大多數UX 摩擦都可以很容易地處理,並且操作自己的閃電網絡節點的人。即使前期費用確實存在很大的摩擦,也有可能只是 證明對比特幣UTXO 的控制 可以用來代替實際支付費用來獲取代幣。
這是Shinobi 的客座帖子。表達的觀點完全是他們自己的,不一定反映BTC Inc 或比特幣雜誌的觀點。