換字暗号の方式
逐字で平文を暗号文に対応させる換字暗号は、シーザー暗号から始まり、現代のストリーム暗号に続いている。共通するアイディアは、平文から1文字取り出し、変換表を用いて別の1文字に置き換えること。(平文)→ [ 分解 ] → (1文字) → [ 変換 ] → (1文字) → [ 統合 ] → (暗号文)
逐字で変換する、換字式暗号は以下の表に示すように、シーザー暗号、ビジュネル暗号、ストリーム暗号と色々な形式があり、アイデアが少しずつ違う。いわゆるエニグマ暗号も換字式暗号の1つといえる。
暗号形式 | 変換表の生成方法 | 変換表の数 | 変換表の周期 |
シーザー暗号 | 既定 | 1 | 1 |
ビジュネル暗号 | 既定 | 1~26 | 1~26 |
ストリーム暗号 | 鍵から生成 | 無制限 | 無制限(変換表生成器の性質に依存) |
解読の方法
変換表の生成方法やその周期により、解読にたいする強度もそれぞれ違ってくる。ここでは、頻度分析に対する解読強度について説明する。シーザー暗号は暗号文をそのまま頻度分析した時点で解読されてしまう。平文と頻度分析結果を比較すれば簡単だ。
ビジュネル暗号は鍵の長さごとに取り出した暗号文はシーザー暗号になっているので、鍵の長さ(=変換表の周期)が判明した時点でシーザー暗号と同じ頻度分析ができる。鍵周期は1~26なので、暗号文を1文字毎、2文字毎~26文字毎に切り出して頻度分析した結果を平文の頻度分析結果と比較すれば、解読できる。
ストリーム暗号では変換表は逐字で生成され、周期は無制限なので頻度分析は通用しなくなる。とはいえ、変換表の生成器に癖があれば解読することができる。暗号化を平文から暗号文への線形写像と考えることで、差分解読法および線形解読法を適用することが出来る。
No comments :
Post a Comment