ア | イ | ウ | エ | オ |
カ | キ | ク | ケ | コ |
サ | シ | ス | セ | ソ |
タ | チ | ツ | テ | ト |
ナ | ニ | ヌ | ネ | ノ |
ハ | ヒ | フ | ヘ | ホ |
マ | ミ | ム | メ | モ |
ヤ | ユ | ヨ | ||
ラ | リ | ル | レ | ロ |
ワ | ヰ | ヴ | ヱ | ヲ |
ン |
A | B | C | D | E |
F | G | H | I | J |
K | L | M | N | O |
P | Q | R | S | T |
U | V | W | X | Y |
Z | 数字 | 記号 |
米国政府が採用した新標準の慣用暗号方式暗号化アルゴリズム。
米国政府では2000(平成12)年現在、1977(昭和52)年策定のDESを使うよう決められていた。しかしDESは既に古いアルゴリズムであり、コンピューター技術の発達により、56ビットの鍵長ではブルートフォースアタック(総当たり攻撃)で数日で暗号解読可能になってしまった。
そこでDESを3回使う3DESなどを利用すると共に、新しい標準を1997(平成9)年9月より公募した。
世界中より15の共通鍵暗号の応募があり、1999(平成11)年春には、最終的に5つの候補に絞られた。
結果、2000(平成12)年10月にRijndaelがAESとして利用されることとなった。
AESはブロックサイズが128ビットで、8ビットごとの4×4マスの行列となる。入力された平文は、8ビットごとに区切られ、各マスに収められる。
そして、同じマスサイズに拡張された暗号鍵と排他的論理和を取り、初期化処理を行なう。
この結果に対し、SubBytes()、ShiftRows()、MixColumns()、AddRoundKey()、という4種類の行列操作を順に行ない、これを1ラウンド(1暗号化操作)とする。行なう回数は、鍵長ごとに決められており、次のラウンド数-1をメインストリームで行なう。
鍵長(ビット) | ブロック長(ビット) | ラウンド数(回) | |
---|---|---|---|
AES-128 | 128 | 128 | 10 |
AES-192 | 192 | 128 | 12 |
AES-256 | 256 | 128 | 14 |
そして、最終ラウンドは、SubBytes()、ShiftRows()、AddRoundKey()だけを行ない、最終的な出力を得る。
AESの暗号化処理は、かなり単純であるといえる。
コメントなどを投稿するフォームは、日本語対応時のみ表示されます