Data Encryption Standard
Data Encryption Standard(データ暗号化標準)、略してDES(デス、ディーイーエス)は、アメリカ合衆国の旧国家暗号規格、もしくはその規格で規格化されている共通鍵暗号である。ブロック暗号の一種であり、1976年国立標準局 (NBS) がアメリカ合衆国の公式連邦情報処理標準 (FIPS) として採用し、その後国際的に広く使われた。56ビットの鍵を使った共通鍵暗号を基盤としている。そのアルゴリズムは、機密設計要素、比較的短い鍵長、アメリカ国家安全保障局 (NSA) がバックドアを設けたのではないかという疑いなどで、当初物議をかもしていた。結果としてDESは、現代のブロック暗号とその暗号解読の理解に基づいて学究的に徹底した精査を受けた。
DESは今では多くの用途において安全ではないと見なされている。これは主に56ビットという鍵長が短すぎることに起因する。1999年1月、distributed.netと電子フロンティア財団は共同で、22時間15分でDESの鍵を破ったことを公表した。この暗号の理論上の弱さを示した解析結果もあるが、そのような弱さを実際に利用することが可能というわけではない。アルゴリズム自体は実用上安全であるとされ、トリプルDESという形で使われているが、理論的攻撃方法は存在する。近年、Advanced Encryption Standard (AES)に取って代わられた。
なお、標準としてのDESとアルゴリズムを区別することがあり、アルゴリズムを Data Encryption Algorithm (DEA)と称することがある。
Iso.org (2008年10月15日). 2009年6月2日閲覧。
↑ Bruce Schneier, Applied Cryptography, Protocols, Algorithms, and Source Code in C, Second edition, John Wiley and Sons, New York (1996) p. 267
↑ William E. Burr, "Data Encryption Standard", in NIST's anthology "A Century of Excellence in Measurements, Standards, and Technology:A Chronicle of Selected NBS/NIST Publications, 1901–2000. HTML PDF
↑ “FR Doc 04-16894”. Edocket.access.gpo.gov. 2009年6月2日閲覧。
↑ “Federal Register vol 70, number 96” (PDF) (English). Office of the Federal Register, National Archives and Records Administration (2005年5月19日). 2016年10月9日閲覧。
↑ S.
DESには相補性がある。すなわち次が成り立つ。
Ek(P) = C ⇔ EK(P) = C
ここで x ̄ {\displaystyle {\overline {x}}} は x {\displaystyle x} のビット毎の反転である。 E K {\displaystyle E_{K}} は鍵 K {\displaystyle K} を使った暗号化を意味する。 P {\displaystyle P} は平文、 C {\displaystyle C} は暗号ブロック列である。相補性があるということは、総当り攻撃に必要な試行回数は2分の1で済むことを意味する。
DESには4つのいわゆる「弱い鍵」がある。暗号化 (E) と復号 (D) で弱い鍵を使うと、どちらも同じ効果がある。
E K ( E K ( P ) ) = P {\displaystyle E_{K}(E_{K}(P))=P} または E K = D K {\displaystyle E_{K}=D_{K}}
また、6組の「やや弱い鍵」もある。弱い鍵の1つ K 1 {\displaystyle K_{1}} を使った暗号化は、ペアのもう一方の K 2 {\displaystyle K_{2}} を使った復号と等価である。
Johnson. “American Cryptology during the Cold War, 1945-1989.Book III:Retrenchment and Reform, 1972-1980”. United States Cryptologic History 5 (3).
↑ Konheim. Computer Security and Cryptography. p. 301
1 2 Levy, Crypto, p. 55
1 2 “NIST Special Publication 800-67 Recommendation for the Triple Data Encryption Algorithm (TDEA) Block Cipher, Version 1.1” (PDF) (English). National Institute of Standards and Technology. p. 6. 2016年10月9日閲覧。
↑ American National Standards Institute, ANSI X3.92-1981 American National Standard, Data Encryption Algorithm
↑ “ISO/IEC 18033-3:2005 Information technology — Security techniques — Encryption algorithms — Part 3:Block ciphers”.