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






.png)





















