盲簽名被認為是有害的


介紹

這篇文章討論了比特幣和閃電網絡中的盲簽名者。盲簽名者不會讓用戶處於控制之中,並且會受到一長串漏洞利用的影響。

它還(重新)引入了開源驗證閃電簽名者項目。

背景

簽名者是一個執行加密貨幣操作的組件,與錢包分開。比特幣硬件錢包是簽名者的一個示例,其中私鑰在強化設備上進行控制。目前還沒有針對閃電網絡的硬件簽名者的完整解決方案。

盲人簽名者是不執行驗證的簽名者。到目前為止,有幾個消費者閃電錢包和節點實現僅支持盲簽名。我相信這些配置是不安全的。

驗證簽名者執行一組全面的策略檢查,以確保密鑰不會被濫用。例如,驗證比特幣硬件錢包與用戶合作檢查目的地、金額和更改輸出。

由於閃電協議的複雜性,第2 層驗證簽名者要復雜得多。

雖然盲簽名者是通往驗證簽名者更高安全性的技術步驟,但如果部署在生產環境中,它本身實際上會降低安全性。這是因為它提出了兩個攻擊點——節點和簽名者。

VLS項目

驗證閃電簽名者項目旨在縮小保護閃電生態系統的差距。它是一個開源的Rust 庫和參考實現。該項目正在接近Beta,這是將實現主要目標的點:即使節點完全受損,資金也是安全的。

由於閃電協議的複雜性,該任務相對複雜。有50 多項策略必須執行,其中許多都需要對協議進行狀態檢查。

服務器和消費設備都是目標,後者通過Rustno_std編譯模式。

簽名配置

以下是閃電節點的一些潛在配置:

單片節點具有單獨盲簽名者的節點具有單獨驗證簽名者的節點——簽名者確保閃電狀態機正確運行並且資金沒有風險

盲籤的(內)安全性

盲簽名被認為是有害的-1

單體案例有一個攻擊點——在節點上。盲簽名案例有兩個攻擊點——節點和簽名者。盲簽名者將執行節點請求的任何簽名操作,因此受損節點仍然會導致資金損失。顯然,受損的簽名者也會導致資金損失。這比單片節點更糟糕,因為如果其中任何一個受到損害,資金都可能丟失。經過驗證的簽名案例只有一個攻擊點,攻擊面很小

盲人錢包必須信任節點運營商

節點由LSP(閃電服務提供商)運行的盲簽名錢包不是自我託管的,因為LSP 可以單方面控制資金。 LSP 只需向簽名者提供將資金發送到LSP 或其他目的地的交易。

盲簽名漏洞的例子

受感染的節點可以單方面提交交易以由盲簽名者簽名。以下情況可能導致資金被盜:

節點提交相互關閉交易,將資金發送到攻擊者的地址節點要求盲簽名者簽署一個撤銷的交易,這將在發佈時導致所有資金損失還有很多…

受感染的節點如果不遵循閃電協議,也可能會損失資金。一些潛在的利用包括:

節點無法驗證對方的撤銷,對方廣播一個舊的承諾交易,將大部分資金發送給對方節點在路由支付時未能認領輸入的HTLC,導致所有資金逐漸損失還有很多…

驗證簽名者

在驗證簽名者的情況下,閃電節點的入侵不會導致資金損失。這種設置的安全性僅取決於簽名者的安全性。簽名者可以根據特定用例的需要進行強化。

經過驗證的簽名者可以實施的一些驗證規則包括:

不要簽署撤銷的承諾交易不要撤銷已簽署的承諾交易不要關閉通往未經批准目的地的頻道路由支付的輸入必須至少與輸出值一樣多付款必須至少從輸入中要求與我們在輸出中要求的一樣多還有很多…

結論

盲簽名者降低了閃電節點的安全性,並受到許多攻擊。驗證簽名者通過減少攻擊面來提高安全性。 VLS項目旨在為企業服務器和消費設備提供庫和參考實現。

Total
0
Shares
Related Posts