Terminology

密鑰聚合和簽名聚合有什麼區別?

  • May 26, 2021

密鑰聚合(例如 MuSig)和簽名聚合有什麼區別?

許多人(包括我自己)過去曾交替使用這些術語。為什麼在正確的設置中小心使用正確的術語很重要?

正如 Pieter Wuille 所說密鑰聚合是在地址創建時完成的,而不是在簽名時或簽名後時完成的。

當然,密鑰聚合對簽名算法有影響,這可能是在 CISA 之前做它有用的主要原因之一:支持 MuSig 在錢包中籤名所需的工作需要一段時間,但它與 CISA 非常相似簽署。

為什麼鍵聚合更好?因為這意味著原始密鑰永遠不會在鏈上結束。使用簽名聚合,您仍然擁有鏈上密鑰,但只有 1 個簽名……密鑰聚合意味著共識規則甚至可以完全忽略聚合的概念。

缺點:鍵聚合不能用於交叉輸入,因為您無法預測哪些 UTXO 將一起使用。

同時簽名聚合在簽名時或簽名後完成,而不是在地址創建時完成。為了實現它,它可能需要一個觀察多個鍵的特定操作碼。

簽名聚合意味著一種驗證算法,它接收(消息、公鑰)對列表和簽名。

您可以將密鑰聚合視為簽名聚合的一種特殊情況,因為聚合簽名也是聚合密鑰的有效“單密鑰”簽名。但從概念上講,它們的實施方式存在巨大差異。

為什麼在正確的設置中小心使用正確的術語很重要?

提議的 Taproot 軟分叉根本不啟用簽名聚合(交叉輸入或其他方式),它促進了密鑰聚合方案,例如 MuSig。正如 Pieter 所說,Taproot 和 Schnorr 的共識規則沒有任何聚合意識。因此,如果您說 Taproot 啟用簽名聚合,這是不正確的並且會造成混淆。此外,當討論哪些軟分叉可能跟隨 Taproot 時,啟用簽名聚合將是一個被認真考慮的候選功能,因為塊空間節省可能很重要。(注意見證數據在 SegWit 之後已經打折)。密鑰聚合允許您在一個輸入中聚合密鑰,但交叉輸入簽名聚合可能允許您聚合簽名跨輸入

不僅跨輸入而且跨交易聚合簽名可能意味著整個區塊只有一個簽名在鏈上。但是,這對於基於離散對數的密碼學是不可能的(參見下面 Pieter 的評論)。它需要非互動式聚合,因為您不能要求事務作者合作。這種聚合需要由礦工完成。

引用自:https://bitcoin.stackexchange.com/questions/106163