- International Data Encryption Algorithm
An encryption round of IDEA
General Designers Xuejia Lai and James Massey Derived from PES Successors MMB, MESH, Akelarre,
IDEA NXT (FOX)
Cipher detail Key sizes 128 bits Block sizes 64 bits Structure Substitution-permutation network Rounds 8.5 Best public cryptanalysis A high-order differential-linear attack requiring 264-252 chosen plaintexts breaks 6 rounds with a complexity of 2126.8 encryptions (Biham et al., 2007).
In cryptography, the International Data Encryption Algorithm (IDEA) is a block cipher designed by James Massey of ETH Zurich and Xuejia Lai and was first described in 1991. As a block cipher, it is also symmetric. The algorithm was intended as a replacement for the Data Encryption Standard[DES]. IDEA is a minor revision of an earlier cipher, PES (Proposed Encryption Standard); IDEA was originally called IPES (Improved PES).
The cipher was designed under a research contract with the Hasler Foundation, which became part of Ascom-Tech AG. The cipher is patented in a number of countries but is freely available for non-commercial use. The name "IDEA" is also a trademark. The patents will expire in 2011–2012. Today, IDEA is licensed in all the countries where it is patented by MediaCrypt.
IDEA was used in Pretty Good Privacy (PGP) v2.0, and was incorporated after the original cipher used in v1.0, BassOmatic, was found to be insecure. IDEA is an optional algorithm in the OpenPGP standard.
IDEA operates on 64-bit blocks using a 128-bit key, and consists of a series of eight identical transformations (a round, see the illustration) and an output transformation (the half-round). The processes for encryption and decryption are similar. IDEA derives much of its security by interleaving operations from different groups — modular addition and multiplication, and bitwise eXclusive OR (XOR) — which are algebraically "incompatible" in some sense. In more detail, these operators, which all deal with 16-bit quantities, are:
- Bitwise eXclusive OR (denoted with a blue circled plus ⊕).
- Addition modulo 216 (denoted with a green boxed plus ⊞).
- Multiplication modulo 216+1, where the all-zero word (0x0000) is interpreted as 216 (denoted by a red circled dot ⊙).
After the eight rounds comes a final "half round", the output transformation illustrated below:
Each round uses six 16-bit sub-keys, while the half-round uses four, a total of 52 for 8.5 rounds. The first eight sub-keys are extracted directly from the key, with K1 from the first round being the lower sixteen bits; further groups of eight keys are created by rotating the main key left 25 bits between each group of eight. This means that it is rotated less than once per round, on average, for a total of six rotations.
The designers analysed IDEA to measure its strength against differential cryptanalysis and concluded that it is immune under certain assumptions. No successful linear or algebraic weaknesses have been reported. As of 2007[update], the best attack which applies to all keys can break IDEA reduced to 6 rounds (the full IDEA cipher uses 8.5 rounds). Note that a "break" is any attack which requires less than 2128 operations; the 6-round attack requires 264 known plaintexts and 2126.8 operations.
Bruce Schneier thought highly of IDEA in 1996, writing, "In my opinion, it is the best and most secure block algorithm available to the public at this time." (Applied Cryptography, 2nd ed.) However, by 1999 he was no longer recommending IDEA due to the availability of faster algorithms, some progress in its cryptanalysis, and the issue of patents.
The very simple key schedule makes IDEA subject to a class of weak keys; some keys containing a large number of 0 bits produce weak encryption. These are of little concern in practice, being sufficiently rare that they are unnecessary to avoid explicitly when generating keys randomly. A simple fix was proposed: exclusive-ORing each subkey with a 16-bit constant, such as
Larger classes of weak keys were found in 2002.
This is still of negligible probability to be a concern to a randomly-chosen key, and some of the problems are fixed by the constant XOR proposed earlier, but the paper is not certain if all of them are. A more comprehensive redesign of the IDEA key schedule may be desirable.
A patent application for IDEA was first filed in Switzerland (CH A 1690/90) on May 18, 1990, then an international patent application was filed under the Patent Cooperation Treaty on May 16, 1991. Patents were eventually granted in Austria, France, Germany, Italy, the Netherlands, Spain, Sweden, Switzerland, the United Kingdom, (European Patent Register entry for European patent no. 0482154, filed May 16, 1991, issued June 22, 1994 and expiring not later than May 16, 2011), the United States (U.S. Patent 5,214,703, issued May 25, 1993 and expiring not later than January 7, 2012) and Japan (JP 3225440). (According to the PGP FAQ, the US patent expired on May 25, 2010. However, US patent law was changed in 1995 such that patents now expire 20 years after filing, not 17 years after issuing. This holds retroactively for all patents that had not yet expired at the time the changed law came into effect, and it thus holds for IDEA. International treaties may or may not cause expiry as early as May 16, 2011.)
MediaCrypt AG is now offering a successor to IDEA and focuses on its new cipher (official release on May 2005) IDEA NXT, which was previously called FOX.
- Hüseyin Demirci, Erkan Türe, Ali Aydin Selçuk, A New Meet in the Middle Attack on The IDEA Block Cipher, 10th Annual Workshop on Selected Areas in Cryptography, 2004.
- Xuejia Lai and James L. Massey, A Proposal for a New Block Encryption Standard, EUROCRYPT 1990, pp389–404
- Xuejia Lai and James L. Massey and S. Murphy, Markov ciphers and differential cryptanalysis, Advances in Cryptology — Eurocrypt '91, Springer-Verlag (1992), pp17–38.
- ^ a b Biham, E.; Dunkelman, O.; Keller, N.. "A New Attack on 6-Round IDEA". Springer-Verlag. http://www.cosic.esat.kuleuven.be/publications/article-920.ps.
- ^ Garfinkel, Simson (December 1, 1994), PGP: Pretty Good Privacy, O'Reilly Media, pp. 101–102, ISBN 978-1565920989
- ^ "Slashdot". slashdot.org. http://slashdot.org/interviews/99/10/29/0832246.shtml. Retrieved 2010-08-15.
- ^ a b Daemen, Joan; Govaerts, Rene; Vandewalle, Joos (1993), "Weak Keys for IDEA", Advances in Cryptology, CRYPTO 93 Proceedings: 224–231, http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.51.9466
- ^ Nakahara, Jorge Jr.; Preneel, Bart; Vandewalle, Joos (2002), A note on Weak Keys of PES, IDEA and some Extended Variants, http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.20.1681
- ^ a b Biryukov, Alex; Nakahara, Jorge Jr.; Preneel, Bart; Vandewalle, Joos, "New Weak-Key Classes of IDEA", Information and Communications Security, 4th International Conference, ICICS 2002, Lecture Notes in Computer Science 2513: 315–326, http://www.cosic.esat.kuleuven.be/publications/article-189.pdf, "While the zero-one weak keys problem of IDEA can be corrected just by XORing a fixed constant to all the keys (one such constant may be 0DAEx as suggested in ) the problem with the runs of ones may still remain and will require complete redesign of the IDEA key schedule."
- ^ http://www.pgp.net/pgpnet/pgp-faq/#PATENT-IDEA
- ^ http://answers.google.com/answers/threadview/id/2434.html
- ^ http://www.patentlens.net/daisy/KeyOrgs/1236/418/420/422.html
Block ciphers (security summary) Common
algorithms3-Way · ABC · Akelarre · Anubis · ARIA · BaseKing · BassOmatic · BATON · BEAR and LION · CAST-256 · CIKS-1 · CIPHERUNICORN-A · CIPHERUNICORN-E · CLEFIA · CMEA · Cobra · COCONUT98 · Crab · Cryptomeria/C2 · CRYPTON · CS-Cipher · DEAL · DES-X · DFC · E2 · FEAL · FEA-M · FROG · G-DES · GOST · Grand Cru · Hasty Pudding cipher · Hierocrypt · ICE · IDEA NXT · Intel Cascade Cipher · Iraqi · KASUMI · KeeLoq · KHAZAD · Khufu and Khafre · KN-Cipher · Ladder-DES · Libelle · LOKI97 · LOKI89/91 · Lucifer · M6 · M8 · MacGuffin · Madryga · MAGENTA · MARS · Mercy · MESH · MISTY1 · MMB · MULTI2 · MultiSwap · New Data Seal · NewDES · Nimbus · NOEKEON · NUSH · Q · RC6 · REDOC · Red Pike · S-1 · SAFER · SAVILLE · SC2000 · SHACAL · SHARK · SMS4 · Spectr-H64 · Square · SXAL/MBAL · Threefish · Treyfer · UES · Xenon · xmx · XXTEA · Zodiac
Standardization Misc Cryptography
Wikimedia Foundation. 2010.