Rsa

在 RSA 上使用 ElGamal-SIGNATURE 的任何場景?

  • January 26, 2018

在家庭作業中,我們被要求舉一個例子,在這種情況下,人們將使用 ElGamal 簽名而不是 RSA 簽名。我發現了這個問題,但答案也只描述了為什麼 RSA 更勝一籌。我現在搜尋了一段時間,但我真的找不到任何理由使用 Schoolbook-ElGamal(不是 DSA 或橢圓曲線)而不是 RSA。

有沒有人有其他想法?

ElGamal 簽名的工作原理如下。定義一個大素數 $ p = 2qs + 1 $ 在哪裡 $ q $ 是一個素數。讓 $ g $ 成為秩序的要素 $ q $ 和一個雜湊函式 $ H\colon {0,1}^* \to \mathbb{Z}_q $ . 公鑰是 $ y = g^x \bmod p $ 和私鑰是 $ x \in \mathbb{Z}_q $ . 消息的簽名 $ m $ 由一對給出 $ (r,s) $ 在哪裡

$$ r=g^k \bmod p\quad\text{and}\quad s = k^{-1}(H(m) - xr) \bmod q $$ 對於隨機整數 $ k \in \mathbb{Z}_q $ . 簽名的有效性 $ (r,s) $ 留言 $ m $ 通過驗證來檢查 $ r^sy^r \equiv g^{H(m)} \pmod p $ . 值得一看的是,簽名生成中的兩個代價高昂的操作,即計算 $ g^k \bmod p $ 和 $ k^{-1} \bmod q $ , 獨立於要簽名的消息。因此可以預先計算它們。當需要快速完成簽名時,ElGamal 簽名可能是首選,例如在收費橋上對汽車進行身份驗證。在這種模式下(稱為離線/線上),

  1. **$$ off-line phase $$**幾張優惠券 $ (r_i, t_i) $ , 和 $ r_i = g^{k_i} \bmod p $ 和 $ t_i = k_i^{-1} \bmod q $ , 對於隨機整數 $ k_i \in \mathbb{Z}_q $ 是預先計算的;
  2. **$$ on-line phase $$**當一條消息 $ m $ 必須簽名,簽名者拿一張新的優惠券 $ (r_i, t_i) $ 並將簽名計算為 $ r = r_i $ 和 $ s = t_i(H(m) - xr_i) \bmod q $ .

筆記。

  1. 一張優惠券只能使用一次。每個簽名都需要一張的優惠券。
  2. 在線上階段,一個 ElGamal 簽名的成本只是幾個乘法模 $ q $ (在 RSA 的情況下,這比完全模冪運算要快得多)。

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