不是 ECDSA,也不是 Schnorr。 來認識一下 DahLIAS。
聚合簽名並非新鮮事物,早在 21 世紀初就已存在。 但構建一個真正適用於比特幣安全模型(利用比特幣的橢圓曲線)的聚合簽名從未得到證實。 開發者們推測這或許可行。 他們分享了手繪草圖,並表示:“也許它會像……一樣工作,但可以跨交易輸入。”這個想法縈繞了多年,因為開發者的民間傳說,接近,從未得到證實。
這種情況最近發生了改變,Blockstream ReseARch 的 Jonas Nick 和 Tim Ruffing 與 Ledger 的 Yannick Seurin 共同發表了一篇論文,將這個密碼鬼故事變成了一個具體的、可證明的結果。 這是第一個正式的、安全的適用於比特幣的原生曲線!
但這有很多話,所以讓我們分解一下:
- 完全聚合:不同輸入的多個簽名被組合成一個——結果是一個 64 字節的簽名,無論有多少簽名者或輸入,其大小都保持不變。
- 交叉輸入:每個簽名者可以授權不同的輸入,並且所有輸入都合併為一個簽名。
除了比特幣已經依賴的假設之外,它沒有添加任何重要的新假設。 DahLIAS 使用比特幣已經依賴的數學原理構建了一個新的加密原語,從而解鎖了一種全新的簽名。
讓我們談談曲線和簽名
數字簽名是比特幣證明用戶已授權交易的方式。 當你使用比特幣時,你的錢包會使用私鑰對消息進行簽名,然後網絡會使用匹配的公鑰來驗證該簽名。
比特幣使用曲線。 它快速、高效,並且經過了長時間的實踐檢驗。 它支持以下簽名方案:(比特幣的原始簽名算法)和(2021 年通過 Taproot 添加),這是目前比特幣共識允許的唯一簽名方案。
傳統上,完整的簽名聚合依賴於比特幣曲線 secp256k1 所不支持的數學運算,這使得它看起來遙不可及。 這些功能通常依賴於其他類型的橢圓曲線。 例如,BLS(Boneh–Lynn–Shacham)簽名使用一種稱為配對友好曲線的特殊曲線,這種曲線支持高級操作,例如將多個簽名(即使是不同消息上的簽名)合併為一個。
問題在於,BLS 簽名在 secp256k1 上不起作用。 雖然 Schnorr 是 ECDSA 的自然升級,因為它們都依賴於同一種橢圓曲線,但添加 BLS 將是一次更大的飛躍,並且會背離比特幣現有的安全模型。 雖然技術上可行,但它會引入新的加密假設,並顯著增加協議的複雜性。 支持像 secp256k1 這樣的配對友好型曲線,將是比特幣的重大變化.
這就是為什麼 secp256k1 上從未進行過完整簽名聚合的原因之一。
到目前為止。
聚合簽名實際上做什麼
大多數比特幣用戶都熟悉多重簽名。錢包中,多個人共同授權使用單個 UTXO 或某個特定的“幣”。 每個人都簽署相同的輸入數據。 這種設置對於共享託管錢包等場景非常有用。
工作方式有所不同。 與多人簽署同一輸入或代幣不同,每個簽名者在一筆交易中授權不同的 UTXO。 這些單獨的簽名隨後被壓縮成一個緊湊的證明。 使用 DahLIAS,這意味著在比特幣的 secp256k1 曲線上,可以同時驗證所有輸入。
這意味著,如果你有來自五個不同人的五個輸入,那麼這筆交易就需要五個不同的簽名。 有了聚合簽名,所有這些輸入都可以合併成一個。 即使每個簽名者使用不同的輸入並簽署交易的不同部分,最終結果仍然是一個簽名,證明整筆交易已獲得正確授權。
這就像把一整份批准列表壓縮成一個文件。 簽名雖然緊湊,但仍然可以驗證每個簽名者都授權了各自的 UTXO。
您無需驗證 10 個單獨的簽名,只需驗證一個即可。
這有助於重新調整隱私激勵機制。 通過將簽名開銷減少到單個 64 字節證明,從經濟角度來看,選擇隱私比不選擇隱私更明智
半聚合為何如此接近
在比特幣引入 Schnorr 簽名後不久,開發人員就探索了壓縮多個簽名的方法,但這些簽名的大小並非固定。 每個輸入都會增加簽名的大小,因此交易大小會隨著每個參與者的加入而增長。 DahLIAS 通過啟用跨輸入和簽名者。 無論涉及多少人或他們簽署了什麼,所有簽名都會壓縮成一個恆定大小的 64 字節證明。
DahLIAS 究竟能解鎖什麼
這裡的主要好處是 DahLIAS 正在減少複雜交易的規模。
DahLIAS 採用兩輪交互式簽名流程。 在這方面,它與 MuSig2 類似,但它並非多重簽名協議,因為它不要求所有參與者共同簽署同一條消息。 相反,它會在整個交易中聚合不同消息上的不同簽名。
DahLIAS 的驗證速度也比單獨檢查每個簽名更快,在某些情況下甚至快兩倍。 較低的驗證成本使更多人更容易運行完整節點,這有助於長期保持比特幣的去中心化。
重要的是,DahLIAS 具有強大的加密保障。 該方案包含正式的安全證明。 早期的“民間”全簽名聚合方法缺乏這一點,有些方法甚至後來被證明不安全。 幸運的是,這些方法並沒有被過早採用。
值得重複的是:從功能角度來看,它無法與 MuSig2 或 FROST 相提並論,即使它們共享類似的加密構建塊。 它服務於不同的目的。 它提供了一種新方法,將多個獨立的批准編碼成一個乾淨、可驗證的包。
未來方向
你可能會想:如果 DahLIAS 這麼強大,為什麼它不是一個 BIP? 為什麼不把它提議用於比特幣共識?
DahLIAS 簽名看起來不像 Schnorr 或 ECDSA 簽名。 驗證算法不同。 DahLIAS 驗證器不需要單一的公鑰、消息和簽名,而是需要公鑰和消息,以及單個 64 字節的證明。
這使得 DahLIAS 與比特幣當前的共識規則不兼容。 在底層支持它需要共識機制的改變。 本文並未提出這種改變,但它做了一些同樣重要的工作。
僅此一點就是向前邁出的一大步。
要使 DahLIAS 成為比特幣的一部分,需要有人編寫一份比特幣改進提案 (BIP),甚至可能使用 。 這意味著需要詳細闡述該方案,考量其對共識和實施的影響,並構建社區支持。 本文將為此類討論奠定密碼學基礎。
DahLIAS 論文的真正價值在於它所證明的東西。 secp256k1 上的完全簽名聚合不僅僅是一個思想實驗。 它是具體的、高效的、安全的。 多年來,這個想法一直存在於開發者的傳說中。 現在,它被記錄下來、分析並得到驗證。 剩下的就是把它帶到比特幣上——如果我們想要的話。
本文由 Kiara Bickers 客座撰寫。 文中觀點僅代表作者個人,並不一定反映 BTC Inc 或 Bitcoin Magazine 的觀點。