For faster navigation, this Iframe is preloading the Wikiwand page for ElGamal署名.

ElGamal署名

この記事は検証可能参考文献や出典が全く示されていないか、不十分です。 出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方)出典検索?"ElGamal署名" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL (2020年1月)

ElGamal署名(エルガマルしょめい)とは離散対数問題の困難性に基づく電子署名方式である。en:Taher ElGamalによって1984年に提案された[1]

この記事に書かれているElGamal署名がそのまま実際に使われることはあまりない。NISTが定めたElGamal署名の改良型であるDigital Signature Algorithm (DSA) が用いられることが多い。他にもElGamal署名の改良型が数多く提案されている (例えば, K. Nyberg and R. A. Rueppel[2])。また、同じくTaher ElGamalによって提案されたElGamal暗号[1]と混同してはならない。

ElGamal署名では、安全でない通信路によって検証者が得たメッセージと署名の組から、検証者は署名者が送ったメッセージmの正当性を確認することができる。

署名方式

[編集]

システムパラメータ

[編集]

これらのパラメータはユーザ間で共有される。

鍵生成

[編集]
  • 1 < x < p-1なる整数xをランダムに選ぶ。
  • y = gx mod pを計算する。
  • 公開鍵は (p, g, y)。
  • 秘密鍵はxである。

署名生成

[編集]

署名を付けたいメッセージをmとする。

  • 0 < k < p-1かつgcd(k,p-1)=1となるkをランダムに選ぶ。
  • gcd(k,p-1) を計算する際に拡張されたユークリッドの互除法を使用すれば、bk + c (p-1) = 1 を満たす整数 b,cも同時に得られる。この式を書き換えれば bk ≡ 1 (mod p-1) であり、bk-1と置く(つまり、k-1剰余類環 における 可逆元 k の逆元である)。
  • rgk (mod p) を計算する。
  • s ≡ (H(m) - x r) k-1 (mod p-1) を計算する。
  • もしs=0であればkを選ぶところからやり直す(これは H(m) - x rp-1 の倍数の場合に起こる非常なレアケースであり、k を変えることにより r が変わり、s が 0 でなくなる可能性が高い)。
  • 整数の組 (r, s)がmに対する署名となる。

検証

[編集]

メッセージ m と署名 (r, s) の検証は以下のように行われる。

  • 0 < r < p かつ 0 < s < p - 1かどうかを確かめる。
  • gH(m)yr rs (mod p)かどうかを確かめる。

もし両方を通れば受理する。そうでなければ拒否する。

完全性

[編集]

署名者が正しく署名したメッセージと署名の組は必ず検証を通るという意味で、このアルゴリズムは完全である。

署名生成アルゴリズムより、

H(m) ≡ x r + s k (mod p-1)

が成立する。 フェルマーの小定理より、

gH(m)gxr gks (mod p)

が得られる。 右辺を計算すると、

gxr gksyr rs (mod p)

が成立する。

安全性

[編集]

署名を偽造するには、

  • 署名者の秘密鍵xを求める
  • H(m) ≡ H(M) (mod p-1)が成立する(m, M)を得る

が必要であると思われる。両者とも難しいと思われている問題である。 1984年の提案ではHは使われていないため、存在的偽造が可能である。

署名者は毎回kをランダムに選ぶ必要がある。また、kの情報を部分的にでも漏らしてはいけない。 そうでない場合、攻撃者が秘密鍵xを得ることが簡単になり、現実的な時間でxが得られるかも知れない。 特に、二つの別々のメッセージに同じ乱数kで署名を行った場合、攻撃者は直接xを得ることが可能になる。

脚注

[編集]
  1. ^ a b Elgamal, T. (1985-07). “A public key cryptosystem and a signature scheme based on discrete logarithms” (英語). IEEE Transactions on Information Theory 31 (4): 469–472. doi:10.1109/TIT.1985.1057074. ISSN 0018-9448. http://ieeexplore.ieee.org/document/1057074/. 
  2. ^ Nyberg, Kaisa; Rueppel, Rainer A. (1996-01). “Message recovery for signature schemes based on the discrete logarithm problem” (英語). Designs, Codes and Cryptography 7 (1-2): 61–81. doi:10.1007/BF00125076. ISSN 0925-1022. http://link.springer.com/10.1007/BF00125076. 

関連項目

[編集]
{{bottomLinkPreText}} {{bottomLinkText}}
ElGamal署名
Listen to this article

This browser is not supported by Wikiwand :(
Wikiwand requires a browser with modern capabilities in order to provide you with the best reading experience.
Please download and use one of the following browsers:

This article was just edited, click to reload
This article has been deleted on Wikipedia (Why?)

Back to homepage

Please click Add in the dialog above
Please click Allow in the top-left corner,
then click Install Now in the dialog
Please click Open in the download dialog,
then click Install
Please click the "Downloads" icon in the Safari toolbar, open the first download in the list,
then click Install
{{::$root.activation.text}}

Install Wikiwand

Install on Chrome Install on Firefox
Don't forget to rate us

Tell your friends about Wikiwand!

Gmail Facebook Twitter Link

Enjoying Wikiwand?

Tell your friends and spread the love:
Share on Gmail Share on Facebook Share on Twitter Share on Buffer

Our magic isn't perfect

You can help our automatic cover photo selection by reporting an unsuitable photo.

This photo is visually disturbing This photo is not a good choice

Thank you for helping!


Your input will affect cover photo selection, along with input from other users.

X

Get ready for Wikiwand 2.0 🎉! the new version arrives on September 1st! Don't want to wait?