単元一覧 › 大学数学 暗号理論

暗号理論の問題

難易度 3期末試験の応用レベル大学数学 暗号理論

素数 と、法 の原始根 を公開パラメータとするエルガマル暗号を考える。受信者の公開鍵は である(秘密鍵 は を満たすが、公開されていない)。

平文 ( の整数)を暗号化するとき、送信者は乱数 を選び、

として暗号文 を送る。

ある送信者が、2 つの平文 , を暗号化する際に、誤って同じ乱数 を使ってしまった。その結果、暗号文はそれぞれ

となった。攻撃者は何らかの方法で であることを知った。このとき、秘密鍵 や乱数 を求めずに得られる ( の整数)を求めよ。

この問題で使うもの

この問題を解けるようになるまで(27 技能)

ヒント

行き詰まったら、上から順に 1 つずつ開いてください。

ヒント 1

2 つの暗号文で が等しいことから、同じ乱数 が使われ、 と には共通の因子 が掛かっていることに注目しよう。

ヒント 2

とおくと , 。よって 、 で求められる。逆元はユークリッドの互除法で求める。

ヒント 3

なので となる。あとは の法 での逆元を求めて に掛ければよい。

答えと解説

答えを見る
結果を記録する(このブラウザにだけ保存されます):
解説を読む

同じ乱数 を使っているので、2 つの暗号文に共通の値

が現れ、

が成り立つ(実際 であることからも同じ と分かる)。 は素数なので、 は法 で逆元をもつ。

を求める. である。 の法 での逆元を求める。ユークリッドの互除法より

これを逆にたどると


よって (確認: )。したがって

を求める. である。 の逆元は、 より なので (確認: )。よって

検算. 実際、()、()であり、、、 となって与えられた暗号文と一致する。

まとめると、 により、秘密鍵を知らなくても が得られる。

別解

同じ を使うと共有鍵 が同じになる。、 より

より 。したがって
。 より 、 より 。
検算: ()なので 。()。。一致。
よって 。

この問題の確認

AI が作成した問題です。公開前に次の確認を行いました。確認の方法について

間違いを報告する

この問題の誤り・分かりにくい点・難易度や学年のずれを知らせる
どこについての報告ですか

報告の内容と問題の番号を保存します。名前やメールアドレスは保存しません。

関連する問題