AES
メモ:暗号化は難しい…製品の仕様に出てきたので触りを調べたメモ。
AESとは?
- Advanced Encryption Standardの略。
- 2001年から、DESに代わるアメリカの共通鍵暗号の規格。
- ブロック長は128ビット固定、鍵長は128ビット、192ビット、256ビットが利用可能。
- AESの元となった方式は、鍵長やブロック長が可変。
DES
- Data Encryption Standardの略。
- 1976年に採用された、共通鍵暗号の規格。
- 鍵長が56ビットと短く、現在は安全ではないと見られている。
DESの後継となる共通鍵ブロック暗号の公募要件
21方式の応募 → 公募要件を満たした15方式を評価 → 最終候補として5方式 → 採用
AESの暗号化の方法
- 鍵生成を行う
- SubBytes:換字表(Sボックス)による1バイト単位の変換
- ShiftRows:4バイト単位の行を一定規則で左シフト
- MixColumns:ビット演算による4バイト単位の行列変換
- AddRoundKey:ラウンド鍵とのXORをとる
- 2~5を1ラウンドとして暗号化を行う(暗号の鍵長によって変換のラウンド数[※1]が異なる)
2~5の処理がいまいち分からず。ゆくゆく調べます。
[※1]ラウンド数
- 鍵長128ビット:ラウンド数10回
- 鍵長192ビット:ラウンド数12回
- 鍵長256ビット:ラウンド数14回
※複合は、2~3を逆変換を逆順でする。
初心者にはこれが良さそうです。