2. 古典暗号
2.1. 古典暗号の特徴
古典暗号はコンピュータ登場以前の暗号のことを指す。
古典暗号は鍵の総数が少なかったり、アルゴリズムが単純な場合が多い。
そのためアルゴリズムは一般的に非公開にして使用する。
またコンピュータを使用すると古典暗号は解読されやすい特徴がある。
解読手法には以下手法が用いられる。
- 総当たり攻撃
- 頻度分析
2.2. シーザー暗号
2.2.1. シーザー暗号の概要
シーザー暗号はユリウス・カエサルが紀元前100年ごろのローマで使用されていたとされる暗号のこと。 シーザー暗号ではアルファベットを3文字ずつずらして作成される。
アルファベット最後の3文字は先頭(a,b,c)に循環させる。
2.2.2. シフト暗号
シフト暗号はシーザー暗号を改良したもので、ずらす数を任意の数とするもの。
ずらす値は鍵に相当するため送受信者以外には秘密とする。
2.3. コード
2.3.1. コードの概要
コードは特定の単語を置き換える言葉や記号を決めてそれを使用して暗号文を作るもの。
その対応表はコードブック、置き換えた語句はコード語と呼ばれる。
コードは仲間内で使用する合言葉のようなものといえる。
2.3.2. コードの例
暗号化用対応表
平文 | 符牒 |
---|---|
攻撃 | 1000 |
戦闘 | 3000 |
開始 | 2200 |
橋 | 1500 |
戦争 | 3500 |
上記のように符牒が数列の場合は、あらかじめ決めた数字で加算して送信することも可能となる。
2.4. スキュタレー暗号
2.4.1. スキュタレー暗号の概要
スキュタレー暗号はスパルタ人が紀元前5世紀ごろに使用していた暗号で、筒に紙を巻き付けてメッセージを書き他を無意味な文字で埋める暗号といえる。
2.4.2. スキュタレー暗号のアルゴリズム
スキュタレー暗号の鍵は巻き付ける筒の直径(≒円周)となる。
2.5. 転置式暗号
2.5.1. 転置式暗号の概要
転置式暗号は平文の順番を入れ替える暗号のこと。
アナグラムとも呼ばれる。
この仕組みを暗号に応用する場合は入れ替え方法を事前に送受信者間で共有する必要がある。 アナグラムは数学の置換で表現することができる。
なお前述のスキュタレー暗号は転置式暗号の一種として含まれる。
2.5.2. 書籍暗号
書籍暗号は鍵に本を利用して暗号を利用するもの。
例として、ページ、段落、何番目の文字を3つの座標に置き換えてそれを暗号文とする。