暗号理論の問題
素数 と、法 の原始根 を公開パラメータとするエルガマル暗号を考える。受信者の秘密鍵は である。受信者は、ある平文 ( の整数)を暗号化した暗号文
を受け取った。ただし、送信者は秘密の整数 を選び、, ( は受信者の公開鍵)として暗号文を作ったものとする。復号の式 を用いて、平文 を求めよ。
この問題で使うもの
- エルガマル暗号(説明と入口の問題)
この問題を解けるようになるまで(27 技能)
読み込み中…
右端(太枠)がこの問題で使う技能です。左へドラッグすると、さらに前の前提をさかのぼれます。技能を押すと、そこまでの道筋が光ります。
ヒント
行き詰まったら、上から順に 1 つずつ開いてください。
ヒント 1
エルガマル暗号の復号の式 をそのまま使う。まず 、次にその逆元、最後に との積を求める。
ヒント 2
は、 と分けて , を順に 2 乗して求め、 とする(繰り返し二乗法)。
ヒント 3
, より 。あとは を求めて に掛ければよい。
答えと解説
答えを見る
どこでつまずきましたか?(選ぶと、戻る場所を案内します)
解説を読む
エルガマル暗号の復号は、次の 3 つの手順で行う。
手順 1: を求める。
, なので を求める。(2 進法で )なので、繰り返し二乗法で
よって である。(これは送信者が使った と一致する値で、暗号化のときに平文に掛けられた「マスク」にあたる。)
手順 2: を求める。
より なので、 である。(拡張ユークリッドの互除法で から 、よって としてもよい。)
手順 3: を計算する。
より である。
確認: 公開鍵は で、, , より 。 なので であり、、 となって一致する。
答え:
別解
を求める。
より 。
より 。
より 。
の逆元は より 。
よって より 。
検算: なので 。公開鍵は 。。 となり一致する。
答え: 。