RC2

RC2 は1987年にロナルド・リベストが設計したブロック暗号。"RC" は "Ron's Code" または "Rivest Cipher" の略。リベストの設計した他の暗号として RC4、RC5、RC6 がある。

 概要 
RC2 の開発資金は、Lotus Notesソフトウェアの一部として輸出可能な独自の暗号を探していたロータス社が資金提供した（輸出以前にNSAの評価が必要だった）。NSA はいくつかの修正を示唆し、リベストはそれを取り入れた。さらなる交渉の末、この暗号は1989年に輸出が許可された。RC4と同様 40ビットのキーを持つ RC2 はアメリカ合衆国の暗号輸出規制の中では重宝された。

当初、アルゴリズムの詳細は秘密とされたが（RSAセキュリティが権利を保有）、1996年1月29日、RC2 のソースコードが匿名でネットニュースの sci.crypt にポストされてしまった。似たような機密開示は RC4 で既に発生していた。ポストした者が仕様にアクセスする権限を持っていたのか、リバースエンジニアリングでソースを作成したのかは不明である。

RC2 は 64 ビットブロック暗号で任意長の鍵が可能である。18ラウンドの変形Feistel構造で、うち 16 ラウンドが1つのタイプ(MIXING)、2ラウンドがもう1つのタイプ(MASHING)である。MIXING ラウンドは 4 種類のMIX変換から構成される。

RC2 は 234 個の選択平文を使った関連鍵攻撃に対して無防備である（Kelsey 他、1997年）。

 参考文献 
 Steven Levy, Crypto: How the Code Rebels Beat the Government — Saving Privacy in the Digital Age, ISBN 0-14-024432-8, 2001.
 Lars R. Knudsen, Vincent Rijmen, Ronald L. Rivest, Matthew J. B. Robshaw: On the Design and Security of RC2. Fast Software Encryption 1998: 206–221
 John Kelsey, Bruce Schneier, David Wagner: Related-key cryptanalysis of 3-WAY, Biham-DES, CAST, DES-X, NewDES, RC2, and TEA. ICICS 1997: 233–246

 外部リンク 
 : A Description of the RC2(r) Encryption Algorithm
 RSA FAQ: What is RC2?
 sci.crypt posting revealing the RC2 algorithm

2268