Title: Hardware Implementation of IDEA (International Data Encryption Algorithm) Members: Gerald Lai Abstract: In 1973, the National Bureau of Standards (NBS, now known as the National Institute of Standards and Technology, or NIST) selected the Data Encryption Algorithm (DEA, later known as DES) to serve as a common standard. DES was designed at the IBM TJ Watson Research Center at the request of the NBS for protecting sensitive data. It is a block cipher operating on a 64-bit plaintext to produce a 64-bit ciphertext. The symmetric key used is a 56-bit encryption key that was strong at the time. In other words, there are 72,057,594,037,927,936 (or 2 to the 56th power) possible combinations of keys. It was claimed that a message encrypted with DES would take an immensely long time to crack. Yet, despite its sophistication, many future attempts at cracking DES showed significant signs of success. For example, the distributive computing approach of spreading cracking computation power over the Internet earned Rocke Verser and Michael Sanders the prize of the 1997 DES Challenge. DES Challenge II was also cracked the following year. With the invention of the Electronic Frontier Foundation DES Cracker, it was shown that a 56-bit key protection is insufficient against exhaustive search employed with today's technology. Therefore, there was an urgent call for a stronger secret-key encryption algorithm. IDEA was one of the algorithms to answer that call. The International Data Encryption Algorithm (IDEA) was developed in Zurich, Switzerland by James Massey and Xuejia Lai and published in 1990. It operates on 64-bit plaintext and ciphertext blocks with a 128-bit key. IDEA is used by the popular program Pretty Good Privacy (PGP) to encrypt files and electronic mail. Unfortunately, wider use of IDEA has been hampered by a series of software patents on the algorithm, which is currently held until 2011 by Ascom-Tech AG in Solothurn, Switzerland. MediaCrypt offers a royalty-free license for non-commercial use. IDEA is somewhat different from the rest of the symmetric key encryption algorithms in that it uses algebraic operations completely and does without table lookup methods. It employs a modified 4-word Feistel style round function system. The strength of IDEA lies in its modulo multiplication operations and therefore, it relies heavily on modular inversion. In this project, I will design a hardware implementation of IDEA using VHDL. The implementation will be simulated using Mentor Graphics tools. The demonstration system will be available on the web.