英字 文字を と数に対応させる。長さ の鍵語の文字を表す数を (それぞれ 以上 以下の整数)とし、平文の 文字目()を表す数 を
で定まる の文字に置き換えるヴィジュネル暗号を考える。
平文 をこの方法で暗号化したところ、暗号文は になった。組 を求めよ。
鍵語の各文字をずらし量として周期的に使い、 で暗号化・復号でき、平文と暗号文の一部から鍵語を求められる
読み込み中…
右端(太枠)がこの技能です。左へドラッグすると、さらに前の前提をさかのぼれます。技能を押すと、そこまでの道筋が光ります。
ヴィジュネル暗号は、アルファベットを 〜 の数に置き換え、鍵語の文字が表す数だけ各文字をずらす暗号です。ずらし量には鍵語の文字を順に繰り返して使います。そのため、同じ平文の文字でも、位置によって違う暗号文の文字になります。この技能を身につけると、合同式の計算だけで暗号化と復号ができ、平文と暗号文の一部が分かっているときには鍵語も割り出せます。
まず文字を と数に置き換えます。 で割った余りで考えるので、 の次は に戻ります。 を法とする合同式では、 を に移す操作は 〜 の並べ替えになります。 に移せば元に戻るからです。これは、すべての文字を同じ だけずらす暗号(シーザー暗号)にあたります。
ヴィジュネル暗号では、このずらし量を位置ごとに変えます。鍵語の長さを とし、鍵語の文字を数にしたものを とします。平文の 文字目( と から数える)には、 を で割った余りを番号とする鍵 を使います。式で書くと です。位置 を で割った余りで分類すると、同じ余りの位置どうしは、同じずらし量のシーザー暗号になっています。
合同式では差をとる計算もそのまま使えます。したがって、この式は とも とも書き換えられます。前者が復号の式です。後者からは、余りが になる位置を つずつ含む 文字分について、平文と暗号文の対応が分かれば鍵語がすべて決まることが分かります。
文字を数に直す: とする。空白や記号は除き、文字だけに と番号を振る
鍵語の文字も数にして とする。 番目の文字に使う鍵は
暗号化: を計算し、〜 の数に直す
復号: を計算する。負になったら を足して 〜 に直す
鍵語を求める:対応の分かる位置で を計算し、余り のすべてについて鍵をそろえる
最後に数を文字に戻す
文字を と数に対応させる。長さ の鍵語でヴィジュネル暗号化した暗号文は であり、平文の先頭 文字は であることが分かっている。鍵語を数にしたもの を求めよ。ただし各 は の整数とし、暗号化は ()で行われているとする。
【手順1】文字を数に直す。平文の先頭は なので、。暗号文の先頭 文字は なので、。
【手順2】 のとき なので、使われた鍵はそれぞれ である。
【手順5】 を計算する。
-
-
-
よって である。
【手順6】文字に戻すと、鍵語は である。
確認として、【手順4】で残りの文字を復号する。
- には を使う:()
- には を使う:()
- には を使う:()
平文は となり、意味の通る文になる。
答え:
復号でも鍵を足してしまう誤り。例えば から としてしまう。正しくは引き算で、 である。
引き算の結果が負のまま止めてしまう誤り。例えば のままでは、どの文字に対応するか読めない。正しくは を足して 〜 に直し、()とする。
位置を から数えたために鍵がずれる誤り。先頭の文字に を使ってしまう。正しくは から数え、先頭の文字には 、 文字目()には を使う。
問題で指定された対応 に従わず、 と数えてしまう誤り。こうすると、鍵語の文字 (本来はずらし量 )がずらし量 になり、鍵・平文・暗号文の数値がずれて、同じ鍵語でも別の暗号文ができてしまう。例えば の対応では、鍵 で平文 を暗号化すると で になる。ところが の対応で同じ式を使うと となり、 になってしまう。正しくは から始め、 で割った余り 〜 と文字を 対 に対応させる。
この説明は AI が書き、別の AI が例題を独立に解いて答えを確かめ、説明を一歩ずつ査読しました。
英字 文字を と数に対応させる。長さ の鍵語の文字を表す数を (それぞれ 以上 以下の整数)とし、平文の 文字目()を表す数 を
で定まる の文字に置き換えるヴィジュネル暗号を考える。
平文 をこの方法で暗号化したところ、暗号文は になった。組 を求めよ。
英字 文字を と数に対応させる。長さ の鍵語を数の列 (各 は の整数)で表す。平文の 文字目()に対応する数を とし、暗号文の 文字目に対応する数 を
で定める(ヴィジュネル暗号)。
ある平文をこの方法で暗号化したところ、暗号文は であった。また、平文の最初の 文字は であることがわかっている。鍵 を求めよ。
英字 文字を と数に対応させる。長さ の鍵 (各 は の整数)を使うヴィジュネル暗号では、平文の 文字目()に対応する数 を
を満たす に変えて暗号文を作る。
ある平文の最初の 文字は であり、それを暗号化した暗号文の最初の 文字は であった。鍵 を数の組で求めよ。