Hardware Evaluation of the AES Finalists

Hardware Evaluation of the AES Finalists

Hardware Evaluation of the AES Finalists Tetsuya ICHIKAWA* Tomomi KASUYA** Mitsuru MATSUI** * Kamakura Office, Mitsubishi Electric Engineering Company Limited [email protected] ** Information Technology R&D Center, Mitsubishi Electric Corporation [email protected], [email protected] 1. Introduction ECA (embedded cell array) library without applying special performance optimization This report describes our evaluation results techniques, these algorithms that heavily use of implementing hardware of the AES arithmetic operations could be much faster if finalists, concentrating on 128-bit key we introduce more expensive semi- or full- version, using Mitsubishi Electric’s 0.35 custom designs. However our analysis also micron CMOS ASIC design library. Our goal indicates that even such designs are not is to estimate the “critical path length” of expected to give a significant impact to data encryption /decryption logic and key change the ranking of the critical path setup time of key scheduling logic for each length. algorithm, which corresponds to the fastest possible encryption speed in feedback modes 2. The AES Finalists of operation such as CBC etc. To achieve this, we wrote fully loop-unrolled codes in Verilog- NIST announced the five AES finalists, in HDL language without introducing pipeline August 1999. This section briefly summarizes structure that blocks the feedback. these algorithms, mainly data encryption operations, from hardware viewpoint. We first tried to investigate the evaluation environments to be used in NSA, especially 2.1 Mars the hardware design library, since NSA is Mars supports 128-bit blocks and a variable expected to join the Round Two hardware key size from 128 bits to 448 bits. It is analysis as has been shown in the NIST AES designed to take advantage of the powerful homepage [NIST (1998)]. However, after operations supported on today's computers communicating NIST and MOSIS, we found [Burwick et. al. (1999)]. that the library is an internal 0.5 micron The encryption part of Mars, which is standard cell library that is not available composed of four kinds of round functions, is outside NSA, and a non-proprietary version performed as follows. We have also listed of the library has not been developed. We major components that have an impact in therefore decided to analyze the AES finalists hardware performance. using Mitsubishi Electric’s CMOS ASIC design library, whose information is publicly -The initial key addition available in [MITSUBISHI (1997)]. 4 additions mod 232. -The unkeyed forward mixing (8 rounds) 2 additions mod 232, and 4 look-up tables Our simulation results show that Rjindael is with 8bit-input/32bit-output. the fastest as expected and it is even faster -The keyed forward transformation (8 rounds) than DES, and Serpent is the next. Twofish, 6 additions and 2 multiplications mod 232, Mars and RC6 are slower than Triple-DES. and 4 data-dependent rotations. We should note that since we used a general -The keyed backwards transformation (8 rounds) 6 additions and 2 multiplications mod 232, logical XOR operations. and 4 data-dependent rotations. -The unkeyed backwards mixing (8 rounds) Before the first round, the AddRoundKey 2 subtractions mod 232, and 4 look-up transformation is also performed, and in the tables with 8bit-input/32bit-output. final round, the MixColumn transformation is -The final key addition omitted. 4 subtractions mod 232. The basic components of Rijndael are logical operations and lookup tables; the latter is It seems that the heavy use of arithmetic actually a composite function of an inversion operations, especially multiplications and over GF(28) with an affine mapping. Hence additions mod 232, makes hardware slower the structure of Rijndael is expected to be and larger unless they are specially designed suitable for hardware implementation. in a transistor level. 2.4 Serpent 2.2 RC6 Serpent has a 32-round SP-network RC6 has three variable parameters, i.e., the structure with initial and final permutations, number of rounds, the data block size, and whose round function consists of 32 lookup the key size up to 2040 bits. The proposed tables with 4-bit input/output, logical and version in AES has 20 rounds with a total of 4 rotate shifts, and XOR operations [Anderson, additions (subtractions) mod 232 before and after Biham and Knudsen (1998)], [ Biham (1997)]. the round functions [Rivest (1998)], [RSA (1998)]. These components are suitable for hardware The major hardware components in the round implementation; particularly the small table function are as follows: size is expected to make hardware sufficiently small and fast. 2 additions and 2 multiplications mod 232, 2 data-dependent rotations. 2.5 Twofish Twofish has a 16-round Feistel-like structure These operations are well supported and fast with an additional whitening of the input and on modern microprocessors, but expensive in output that consists of XOR operations. The hardware, especially multiplications and major hardware components of the round additions mod 232, make hardware slower and function are as follows: larger unless they are specially designed in a transistor level. n lookup tables with 8-bit input/ output, 4 additions mod 232, 2.3 Rijndael logical AND and XOR operations, Rijndael also has a variable block length and a variable key length. The block length and The lookup tables can be also generated from the key length can be independently specified another smaller 8 lookup tables with 4-bit to 128, 192 or 256 bits. The proposed number input/output, and n is 12, 16 or 20 when the of rounds in AES is 10, 12 and 14 when the key length is 128, 192 and 256, respectively. key length is 128 bits, 192 bits and 256 bits, Twofish is not using particularly heavy respectively [J.Daemen and V.Rijmen (1998)]. operations in hardware, but its critical path The round function of Rijndael in 128-bit is not short because, for instance, the number blocks is composed of four distinct invertible of cascaded 8x8 lookup tables is 48, where transformations as follows: that for Rijndael is 10 when the key length is 128 [B.Schneier et. al. (1998)]. -The ByteSub transformation 16 lookup tables with 8bit-input/output. 3. Design Policy -The ShiftRow transformation no hardware operations. Our purpose is to evaluate the fastest -The MixColumn transformation possible encryption speed of the AES finalists logical AND and XOR operations. using the existing hardware library under -The AddRoundKey transformation fair conditions. To achieve this and also to intermediate registers in the encryption complete the analysis in our limited time and decryption logic. This is because the scale and resources, we designed the 128-bit pipeline architecture makes the ECB mode key version for each candidate on the basis of faster but also blocks feedback modes of the following criteria and conditions: operations such as CBC. In other words, our hardware model encrypts one block 1. We fully unrolled the loop in the plaintext data in one cycle. encryption and decryption logic and the key scheduling logic to achieve the fastest 4. We did not use a special optimization plaintext / ciphertext Encryption s and Key Expansion th a Key Decryption register logic l p y a logic itic b Ke Cr Su Key setup time Output registers ciphertext / plaintext Figure 3.1 The hardware structure possible speed (throughput). In practice, technique to design lookup tables in the loop structure is commonly used in hardware. This means that the order to reduce hardware size, but performance of the lookup tables heavily generally makes the hardware slower depends on optimization capability of the because additional setup -time and hold- logic synthesis tool. In practice, as will be time is required for the loop registers, shown in the next section, the output of the which is usually not negligible. Note that synthesis tool seems to have reasonably we therefore did not take a special effort to optimized the lookup tables (not very slow). reduce hardware size. 5. Our design environment is as follows: 2. We assume that all subkey bits are stored in subkey registers before an encryption language: Verilog-HDL operation begins. Also we have inserted simulator: Verilog-XL another 128-bit resister to hold a block of design library: Mitsubishi 0.35micron ciphertext as shown in Figure 3.1, where CMOS ASIC Library we define the critical encryption and logic synthesis: Synopsys Design Compiler decryption path as the time required for all version 1998.08 output bits of the encryption and decryption logic to reach the output For arithmetic operations such as additions, registers under the fixed (sub)key value. subtractions and multiplications, we used faster ones in the library of Synopsys Design 3. We did not introduce pipeline architecture; Ware Basic Library [Synopsys (1998)]. i.e., we did not insert any additional Also, we adopted the WORST case hardware conditions for evaluation. The worst case path, 13% for additions/subtractions, and 8% speed is a guaranteed speed of a given circuit, for the data dependent rotations. which is commonly used in real products. We think that the TYPICAL case evaluation is The critical path of Rijndael is not in the too optimistic to apply to a real ASIC encryption but in the decryption procedure hardware. since the InvMixColumn function, which is an inverse of the MixColumn function, is a bit 4. Evaluation Results slower than the MixColumn function due to more complex constant values. On the critical The results of our hardware evaluation of the path, a total of 10 InvByteSub functions five finalists are presented in Table 4.1. The (table lookups) occupy 48% of the entire fastest algorithm in terms of the critical path decryption time, and a total of 9 between plaintext and ciphertext is Rijndael, InvMixColumn functions have 43%.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    7 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us