RC6
The Feistel function of the RC6 algorithm. | |
一般 | |
---|---|
設計者 | ロナルド・リベスト、Matt Robshaw、Ray Sidney、Yiqun Lisa Yin |
初版発行日 | 1998 |
派生元 | RC5 |
認証 | AES最終候補 |
暗号詳細 | |
鍵長 | 128, 192, or 256 bits |
ブロック長 | 128 bits |
構造 | Feistel構造 |
ラウンド数 | 20 |
RC6 は RC5 から派生した共通鍵を使用したブロック暗号。ロナルド・リベスト、Matt Robshaw、Ray Sidney、Yiqun Lisa Yin がAESの公募の要求仕様を満たすよう設計したものである。この暗号は最終選考の5作品に選ばれた。また、NESSIE や CRYPTREC プロジェクトにも送られた。RSAセキュリティが権利を所有している。
RC6 はブロック長 128ビット、キー長 128/192/256ビットとされているが、実際には RC5 のようにブロック長、キー長、ラウンド回数がパラメータ化されており、任意の値に設定可能である。RC6 の構造は RC5 とよく似ており、データ依存の回転、合同加算、XORなど共通の特徴がある。実際、RC6 は RC5 の暗号化プロセスを2つ並列に並べて処理するものと言える。しかし、RC6 では RC5 にはない乗算処理が追加で使われており、回転(rotation)をワード内の各ビット毎に依存させるようになっている(一部のビットだけではない)。
参考文献
[編集]- R.L. Rivest, M.J.B. Robshaw, R.Sidney, and Y.L. Yin. The RC6 Block Cipher. v1.1, August 1998.
- J. Beauchat FPGA Implementations of the RC6 Block Cipher.