
共通鍵暗号方式は、「暗号化の鍵と復号の鍵が共通」なものです。共通鍵暗号方式で利用される代表的な暗号化アルゴリズムには、DESや3DES、AES、RC4などがあります。
古代ローマのシーザ暗号では、a→d、g→jなど3文字ずらすことで暗号化していました。これも立派な暗号アルゴリズムです。暗号化する側は、「3」という鍵を用いて3文字ずらします。復号する側は、同じく「3」という鍵を使い、3つ元に戻します。
では、代表的な共通鍵暗号方式を簡単に整理します。
アルゴリズム | 鍵長 | 処理方法 | 備考 |
DES | 56bit | ブロック | DES(Data Encryption Standard)という言葉の通り、かつての暗号(Encryption)の標準(Standard) |
3DES | 2-key(112bit) 3-key(168bit) | DESを3回繰り返す | |
AES | 128bit,192bit, 256bit | DESの脆弱性をカバーするために公募された暗号規格であり、Advanced Encryption Standardという言葉のとおり、次世代暗号標準という意味 |

AESの鍵長に関して過去問では、「米国NISTが制定したAESにおける鍵長の条件として、128ビット、192ビット、256ビットから選択する(H22秋SC午前2問4)」と述べられている。
では、128ビットと256ビットの鍵では、どちらが安全でしょうか?

たぶん、256ビットです。
理由は長いから。
そうですね。解読する側から考えてみましょう。
鍵のパターンが極端な話、2ビットであれば、4パターンしかありません。総当たりをすれば、簡単に復号できます。
256ビットにすると、2の128乗だけ鍵のパターンが増えます。解読が難しくなります。

・変換をn回実施。このnが段数。
・「鍵長によって、段数が決まる(H23春SC午前2問1)」のがAESの特徴でもある。
ちなみに、AESは鍵長128bitで18段、192と256bitで24段。
過去問を解いてみましょう。
100人の送受信者が共通鍵暗号方式で、それぞれ秘密に通信を行なうときに必要な共通鍵の総数は幾つか。(平成18年度NW午前問46) |
公開鍵暗号方式であれば、200個だが、共通かぎの場合はもっとたくさん必要。
正解は4,950。

(1)暗号の仕組みの違い
ブロック暗号とストリーム暗号の言葉の定義などは、試験には出ないと思いますので、参考程度に聞いて下さい。
ストリーム暗号は、ビット単位で暗号しますが、ブロック暗号は、ある程度の塊(ブロック)で暗号処理をします。だから、ブロック暗号です。
代表例は以下です。
・ブロック暗号:DES、3DES、AES
・ストリーム暗号:RC4
(2)利用モード
「利用モード」という言葉があります。まずは過去問(H27秋午後Ⅱ)を見てみましょう。
Uさん:幾つかの暗号化製品の説明書に“暗号の利用モード”や“CBCモード”という記述がありました。これは何でしょうか。 R主任:利用モードとは,ブロック暗号アルゴリズムを用いてブロック長よりも長いデータを暗号化する際に使われる技術のことだ。CBCモードは,よく使われる利用モードの一つだよ。 |

ブロック長より長いデータを暗号化するとき、何か問題があるのですか?
ブロック単位で暗号化するから、同じ部分は同じ暗号になります。よって、それらの頻度などから暗号が解かれやすくなるのです。そこで、単純なブロック単位の暗号(ECB:Electronic Codebook)ではなく、前のブロックの暗号情報を使って暗号化する(CBC:Cipher Block Chaining)が、DESやAESで利用されています。