Blind-Signature

盲簽名與散列值的簽名有根本不同嗎?

  • January 9, 2018

我一直在閱讀盲簽名,並試圖圍繞這個概念展開思考——特別是在使用憑證的匿名區塊鏈交易的背景下。我遇到的一個特殊問題是了解盲簽名的確切組成部分。這些與散列值的簽名不同嗎?

以下是否有資格作為盲簽名:

  1. 某人(A)對一些數據進行雜湊處理並簽名。
  2. 雜湊發送給另一方(B),後者也對其進行簽名。
  3. 數據、雜湊和簽名被發送給另一方(C),後者可以驗證這一切。

或者他們是否意味著 A 創建數據並將其隱藏,B 簽署隱藏數據說 A 創建它和/或被授權這樣做,C 接收盲目簽名和數據而無法將其與 A 相關聯 - 但是通過B 的方式可以告訴數據是以有效的方式創建的嗎?

目標僅僅是讓 C 永遠不知道 A 是誰,而是確認它是通過 B 以有效方式創建的嗎?

盲簽名背後的想法是那個派對 $ \mathcal{A} $ 有消息 $ m $ 他們想要派對 $ \mathcal{B} $ 簽字,但他們不想參加聚會 $ \mathcal{B} $ 學習價值 $ m $ . 使用 RSA,其中 $ (e, N) $ 是 $ \mathcal{B} $ 的公鑰和 $ d $ 它是私鑰嗎,這可能看起來像:

  1. $ \mathcal{A} $ 計算 $ x = m*r^e \mod N $ , 在哪裡 $ r $ 是一個隨機採樣的值。
  2. $ \mathcal{B} $ 跡象 $ x $ IE $ y = x^d \mod N $ 並將簽名發送給 $ \mathcal{A} $ .
  3. $ \mathcal{A} $ 計算 $ s \equiv y * r^{-1} \equiv (m * r^e)^d * r^{-1} \equiv m^d * r * r^{-1} \equiv m^d \mod N $ ,即 $ \mathcal{B} $ 的簽名 $ m $ .

注意 $ \mathcal{A} $ 現在有一個簽名來自 $ \mathcal{B} $ 上 $ m $ , 和 $ \mathcal{B} $ 不知道 $ m $ 因為他們無法恢復 $ m $ 從 $ x $ .$$ 1 $$任何人都可以使用驗證此簽名 $ \mathcal{B} $ 的公鑰。


請注意,這不適用於散列,因為散列是單向的。如果我們說 $ x = H(m) $ 然後在第 3 步中。我們無法恢復原始值的簽名 $ m $ .

$$ 1 $$:正如雨披指出的那樣,盲簽名具有比這更強的屬性,即如果 $ \mathcal{B} $ 為雙方簽名消息 $ \mathcal{A} $ 和 $ \mathcal{C} $ ,然後給定一個非盲消息和簽名對 $ \mathcal{B} $ 無法確定簽名是給誰的

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