トリプルDES

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内検索
Triple Data Encryption Algorithm
一般
初版発行日 1998 (ANS X9.52)
派生元 DES
暗号詳細
鍵長 168, 112 or 56 bits (Keying option 1, 2, 3 respectively)
ブロック長 64 bits
構造 Feistel構造
ラウンド数 48
最良の暗号解読
Lucks: 232 known plaintexts, 2113 operations including 290 DES encryptions, 288 memory; Biham: find one of 228 target keys with a handful of chosen plaintexts per key and 284 encryptions
3DES

トリプルDESTriple DES3DESとも)とは、DESを(鍵を変えながら)暗号化→復号→暗号化の順に三回施す(EDEと呼ぶ)暗号アルゴリズム

概要[編集]

暗号化は次の順で行われる(EDEモード)。

C = encryptk3(decryptk2(encryptk1(P))).

ただし

P ... 平文
C ... 暗号文
ki ... 鍵 #i
encrypt, decrypt ... DES

k1 = k2 = k3の場合、DESと同じになる。よって、トリプルDESはDESに対して上位互換性を持つ(DESによって暗号化された文章をトリプルDESで復号できる。)

安全性[編集]

DESはをなさない。3つの鍵{k1,k2,k3}を使うトリプルDES (-EEE) が、一つの鍵k4でDESを行うのと等価であるか?、つまり、

任意の{k1、k2、k3}について
C1 = DES<k3>( DES<k2>( DES<k1>( P ) ) )
C2 = DES<k4>( P )
全てのPについて、C1 == C2となるk4が存在するか(しないか)?

について、もし、k4が存在するならば、トリプルDES (-EEE) の鍵空間はDESと同じであり、安全性は向上しないことになる。 この点について、任意の{k1,k2}に対して、DES<k2>( DES<k1>( * ) ) == DES<k3>( * ) となるk3は存在しないことが証明されて、DESを多段にすることで鍵空間は拡大できることが示された[1]

参考文献[編集]

  1. ^ K.W.Campbell, M.J.Wiener, "DES is not a group", CRYPTO '92.

関連項目[編集]