Signature

盲簽名有多安全?

  • September 27, 2019

來自維基百科

盲簽名也可用於提供不可連結性,這可以防止簽名者將其簽名的盲消息連結到可能被要求驗證的稍後的非盲版本。在這種情況下,簽名者的響應在驗證之前首先是“未隱藏的”,這樣簽名對於未隱藏的消息仍然有效。

毫無疑問,這是一個有用的功能。繼續維基百科的文章,它認為消息 $ m $ 和盲目的資訊 $ m’ $ ,並指出:

$$ m’ \equiv mr^{e} \pmod N $$ 這意味著 $ r^e \pmod N $ 部分是使消息對簽署方保密的原因。

通過保留他們簽署的盲消息日誌,簽名方將盲消息連結到後來披露的非盲版本有多難。Wikipedia 文章指出這很難,但沒有說明原因。然而,它確實指定攻擊者可能使用盲簽名來獲取與簽名內容不同的簽名,但這可以通過簽名散列來緩解正如這個接受的答案中所解釋的那樣,這不會破壞不可連結性嗎?

通過保留他們簽署的盲消息日誌,簽名方將盲消息連結到後來披露的非盲版本有多難。

假設 $ r $ 值是從值中統一選擇的 $ [1, N-1] $ 相對於 $ N $ (並保密,例如,使用後歸零),並且沒有 $ m $ 值是相對質數 $ N $ ,那麼以後就不可能將它們連結起來(這不依賴於計算假設,而是資訊假設)。

對於任何這樣的可能消息數組 $ m_1, m_2, … m_n $ 以任何順序和盲目的消息 $ m’_1, m’_2, …, m’_n $ ,有一組唯一的值 $ r_1, r_2, …, r_n $ 和 $ m’_i \equiv m_ir_i^e $ . 沒有一組值 $ r_1, r_2, …, r_n $ 比任何其他都更有可能,因此伺服器沒有得到任何資訊 $ m_1 $ 對應於 $ m’_1 $ 或者 $ m’_2 $ (或者,就此而言,它是否是已簽名的值之一)

但是,它確實指定攻擊者可能會使用盲簽名來獲取與簽名內容不同的簽名

Wikipedia 文章擔心的是,攻擊者可以使用“盲簽名”工具做其他事情,而不是對消息進行簽名。例如,如果 RSA 密鑰也用於加密消息,那麼攻擊者可以要求“盲簽名”,而是解密消息。這種盲簽名方法確實是對 RSA 私有操作的預言,並且沒有簡單的方法將其限制為僅生成簽名。

(簽署雜湊)不會破壞不可連結性嗎?

是的(除非你用零知識證明做了很多工作)。這種簡單的盲簽名方案依賴於伺服器沒有得到關於正在簽名的消息的資訊的想法。一旦你給它一些,事情就開始可以連結了。這可以解決,但是最簡單的方法可能是將此 RSA 密鑰僅用於簽名(因此攻擊者無法使用 RSA 預言機,除了生成簽名)。

引用自:https://crypto.stackexchange.com/questions/42239