Anda di halaman 1dari 5

New Dimensions in AES Algorithm Implementation

Ruby Sharma
M.Tech. Student, USIT, Guru Gobind Singh Indraprastha University),study.ruby@gmail.com

Abstract: The Advanced Encryption Standard needed to support block sizes of 128- bits and
(AES) is the next generation publicly available variable key sizes of 128, 192, and 256-bits.
encryption algorithm developed under the auspices Lastly, the criteria also called for the capability
of the National Institute of Standards and to further increase key lengths as needed in the
Technology (NIST). The AES algorithm has broad
applications, including smart cards and cellular
future and for the algorithm design to be easily
phones, WWW servers and automated teller implemented in both hardware and software. A
machines (ATMs), and digital video recorders. group of 15 candidate algorithms were originally
Compared to software implementations, hardware accepted for evaluation in August 1998. These
implementations of the AES algorithm provide submissions were illustrative of a global
more physical security as well as higher speed. This representation of the cryptographic community.
paper presents a survey report of the architecture As part of the specified process, these candidates
for AES Algorithm implementation. The paper were then made available for public analysis and
reviews the related work done in the concerned
comment. Two further rounds of public
field since AES algorithm was developed in 2000.
comment and evaluation led to the selection of
Keywords: AES (Advanced Encryption Standard), the ‘Rijndael’ algorithm, submitted by Belgian
Rijndael cipher, FPGA (Field Programmable Gate cryptographers Dr. Joan Daemen and Dr.
Array), encryption, decryption. Vincent Rijmenin October 2000 [1].

1. Introduction The following sections are organized as: Section


2 presents the overview of AES algorithm.
After the introduction of the Data Encryption Section 3 explains different possible approaches
Standard (DES) in the 70s, and its various for the implementation. Section 4 highlights the
incarnations it upgrade to Triple DES in 1999 advancement and new achievements in AES
(which happened as attacks on the original algorithm implementation. Section 5 gives new
cipher became increasingly viable as computing perspective from network security. Section 6
resources grew). However, even Triple DES has concludes this paper.
had its day and has, since 2002, been superseded
by the Advanced Encryption Standard (AES) 2. AES Algorithm
that we should all be using.
AES has a fixed block size of 128 bits. So all
As a result of a joint effort between NIST, data that is to be encrypted will be broken up
industry, and the global cryptographic into 128 bit blocks. Padding is added if the data
community, AES was launched in early 1997. is not a multiple of 128bits. For manipulation
Cognizant of the fact that the availability of purposes, 128 bits = 16 bytes (8 * 16 = 128)
computer resources and computational power are which is then treated as a 4 x 4 byte matrix. This
ever increasing while associated costs continue is termed the ‘state’. This is important as the
to decrease, the overall goal of the effort was to subsequent algorithm will manipulate this ‘state’
develop a strong and publicly available to create the cipher text.
encryption standard that could be used by
governments and businesses on a global basis for
the protection of sensitive information well into
the future. The development effort for AES was
initiated with a formal global call for candidate
algorithms. The call established the requirements
and criteria for consideration, and opened the Figure1: The State
process for a worldwide forum. The minimum (source http//:en.wikipedia.org)
requirements established for submission included
that the algorithm was to be publicly defined, Encryption Key Size: This is the length in bits of
consist of a symmetric block cipher, and be the key used to encrypt or decrypt the message.
available royalty-free worldwide. The algorithm

1
In this standard the cipher key can only be 128, a different number of ‘rounds’. Each round
192 or 256 bits long. requires a different key to provide the required
diffusion and hence a different number of round
There are three important issues for an keys need to be derived from the encryption key.
encryption algorithm: For AES128, the first ‘n’ bytes are the original
a) Only the encryption key is secret. The key itself. Then the last column of the key is
algorithm can be made public but that does not taken and round shifted (as shown in figure 3,
help an attacker decipher a message as the above). The result is then pushed through the s-
encryption key is required to implement the box to provide a completely new column: The
algorithm. This allows us to define a standard most significant byte of the result is then XOR-
which everybody can follow. ed with a value from the Rcon table. For the first
b) Confusion: This involves obscuring the round, the index into the Rcon table will be 1,
relationship between the plaintext and the cipher and then is incremented for each new round. To
text. So in its simplest form, it is substituting one create the first column of the next round key, the
letter for a completely different one. The trick is result of this XOR is XOR-ed with the first
to make that relationship impenetrable. column of the previous round key. In the case of
c) Diffusion: This is the mixing and reordering the first round, this is: The next three columns of
of the message. So operations here would be the new ‘key’ are created by taking each new
shifting data or transposing columns, for column created and XOR-ing it with the four
instance. byte block 16 bytes before the new expansion
key. This is repeated until there are enough keys
Rijndael’s Substitution Box (S-Box) for each round. For AES128, there are 10 rounds
and so 10 extra keys are required.
This is the most important function that performs
substitution which obscures the relationship There are three main stages in the AES standard:
between the plaintext and the cipher text. It
introduces the second of the three requirements The initial round (this is really just initialisation)
above: confusion. The S-Box is created by using is straightforward: take the plaintext and XOR it
a form of modulus mathematics which is called with the encryption key.
Rijndael’s Galois field[1] and within this field;
arithmetic has special properties which ensure The intermediate round has four steps:
values do not exceed 28 which keeps everything
in a byte, which is great for computers. The Sub-Bytes – take each byte and using
choice of this field and other steps that are taken Rijndael’sS-Box algorithm map that byte to the
to derive the S-Box are carefully chosen to resist new value.
cryptanalysis and are definitely beyond the scope
of this article. In practice, S-box is generally ShiftRows – Rotate the state in a prescribed
used in the form of a lookup table. fashion. For AES128, each row is shifted left by
Tto process a number through the S-Box, each the value of the row where the top row is row
number is divided into its most and least zero. So the top row stays as it is, the first row is
significant nibble (4 bits). The least significant shift 1 to the left, the second row is shifted two
nibble identifies the column to use in the above to the left and the third row three to the left.
table and the most significant nibble defines the
row. MixColumns – In this step the four bytes of each
column of the state are used as input. This step
Rcon Function takes four bytes and multiplies them in
Rijndael’s Galois field by a fixed polynomial.
This function is used to confuse the derivations
of the encryption key that will be used in the AddRoundKey – This is the same as the initial
standard. Very simplistically, this function is round above, but using one of the keys derived
putting 2 to the power of 254 to 509 but in the from the Rijndael’s key schedule. So, the result
Rijndael’s Galois field which uses its form of from sStep 3, MixColumns, is XOR-ed with the
mathematics to keep values within a byte. The next in the sequence of keys generated by the
result is another look up table. This is used to Rijndael’s Key Schedule so each round is XOR-
create a number of encryption keys (or round ed with a different key derived from the original.
keys). Each key size (128, 192 and 256 bits) has

2
The final round: There are more attacks being
devised against AES and as computing capacity Since NIST selected the Rijndael as the AES
improves, developments of these attacks may algorithm in October 2000, a lots of work has
become practicable. This round carries out three been done in improving the performance of this
steps: SubBytes, ShiftRows and AddRoundKey algorithm in terms of various parameters like
The reason why the final round does not have a cost, area, efficiency, power consumption and
‘mixcolumns’ step is because that step is used to throughput etc. The summarized report of the
feed into the next round. Since this is the final previous work is as follow:
step and there is no next round, the final round
excludes that step In 2001, Viktor Fischer and Miloˇs Drutarovsk´y
. in “Two Methods of Rijndael Implementation in
3 Possible approaches for implementation Reconfigurable Hardware”[3] analyzed two
mapping methods optimized for FPD with large
There are three architectural optimization embedded memory blocks (EMB), e.g.
approaches can be employed to speed up the Embedded Array Block (EAB) in FLEX and
hardware implementations: pipelining, sub ACEX devices or Embedded System Block
pipelining, and loop-unrolling. Among these (ESB) in APEX devices. Two types of cipher
approaches, the sub pipelined architecture can core configurations in feedback mode based on
achieve maximum speedup and optimum speed– basic iterative architecture without loop unrolling
area ratio in non-feedback modes. In order to are assumed: a fast configuration and an
explore the advantage of sub pipelining further, economic configuration. For both configurations
each round unit needs to be divided into more it is assumed that encryption and/or decryption
sub stages with equal delay. The Altera ACEX FPD have been found to be an
excellent solution for very fast Rijndael cipher
However, the SubBytes and the InvSubBytes in implementation in the reconfigurable hardware.
the AES algorithm are traditionally implemented On the other side, low-cost ACEX FPD family is
by look-up tables (LUT) [2]–[6]. In LUT-based suitable for cost-sensitive encryption
approaches, it can be observed that the applications. Round keys are pre computed and
unbreakable delay of LUTs is longer than the stored in the EMBs.
total delay of the rest of the transformations in
each round unit. This feature prohibits each In the same year, Akashi Satoh, Sumio Morioka,
round unit from being divided into more than Kohji Takano, and Seiji Munetoh, IBM
two sub stages to achieve any further speedup. Research, TokyoResearch Laboratory, IBM
Japan Ltd described compact and high-speed
Non-LUT-based approaches, which employ hardware architectures and logic optimization
combinational logic only, can be used to avoid methods for the AES algorithm Rijndael [7] . By
the unbreakable delay of LUTs. However, these introducing a new composite field, the S-Box
approaches involve inversions in Galois Field , structure was also optimized. An extremely
which may have high hardware complexities. small size of 5.4 Kgates was obtained for a 128-
Composite field arithmetic can be employed, bit key Rijndael circuit using a 0.11-µmCMOS
such that the field elements of are mapped to standard cell library. It required only 0.052 mm2
elements in some isomorphic composite fields, of area to support both encryption and
in which the field operations can be implemented decryption with 311 Mbps throughput.
by lower cost subfield operations. Composite
field implementations are exploited in [7], [8]. In 2004, Xinmiao Zhang, Student Member,
However, it is not efficient to implement all the IEEE, and Keshab K. Parhi, Fellow, IEEE
transformations in the AES algorithm in presented a novel high-speed architectures for
composite fields. Meanwhile, the composite field the hardware implementation of the Advanced
arithmetic may not be the optimum approach Encryption Standard (AES) algorithm [9].
when the order of the field involved is small. In Unlike previous works which rely on look-up
addition, none of the prior composite field tables to implement the SubBytes and
arithmetic approaches has addressed applying InvSubBytes transformations of the AES
sub pipelining to speed up the AES algorithm in algorithm, the proposed design employs
non-feedback modes. combinational logic only. As a direct
consequence, the unbreakable delay incurred by
4 Related work look-up tables in the conventional approaches

3
was eliminated, and the advantage of is the basis for the security architecture of the
subpipelining could be further explored. IEEE 802.11i standard [15]. AESCCMP is based
Furthermore, composite field arithmetic was on the AES-CCM algorithm that performs the
employed to reduce the area requirements. Advanced Encryption Standard (AES) in CTR
with CBC-MAC mode (CCM mode), plus
In 2006, a designed was proposed, called specialized data formatting modules, providing
diversified AES (DAES) [10], has the variations different security services through iterative and
of four parameters: the field irreducible complex operations. A comparison against
polynomial, the affine transformation in the similar works shows significant improvements in
SubBytes, the offsets in the ShiftRows, and the terms of both throughput and efficiency.
polynomial in the MixColumns. The advantage
of such variations in the AES system is that they 5. New Perspective from Network Security
increase the strength regarding internal or
external attacks. We also use straightforward Already experts are starting to envisage a threat
architecture – look-up tables – for encryption to AES, — quantum computing. A quantum
and decryption to lead this system simple and computer could efficiently factor large numbers
high-speed using field programmable gate arrays at a amazing rate. Quantum computers could
(FPGAs). perform many calculations at once, instead of
doing one after another like regular computers.
In 2008, an efficient approach to reducing the According to Brassard “ If a quantum computer
AES power consumption was given consisting is ever built, much of the conventional
reduction in the S-Boxes power consumption cryptography will fall apart”. Ho Kwong Lo, the
[11]. This fast and more compact S-Boxes senior vice president of Magiq Technologies, a
architecture of lower power: an improved and quantum computing and crytography company,
full-balanced DSE architecture achieved low said that increasing key length does not really
power consumption of 68 pW at 10 MHz using reduce the risk of quantum attacks. Speaking at
0.25 pm 1.8V UMC CMOS technology. the RSA conference, earlier this year, he said
Compared with the original DSE S-Boxes, it that new quantum algorithms will be invented in
further reduced the delay, gate count and power the future and the topic in question is too
consumption by 8%, Also, in this year only, Jose premature to fully examine the security threat of
´ M. Granado, MiguelA.Vega-Rodrı´guez, quantum attacks. Today, though no one has been
JuanM.Sa´nchezPe´rez, JuanA.Go´mezPulido, able to bulid a quantum computer that conducts
Department Technologies of Computers and transactions faster than a normal.
Communications, University of Extremadura,
Spain presented their in implementing two 6. Conclusion
different cryptographic algorithms in an FPGA:
IDEA and AES by means of mixing Handel-C There are more attacks being devised against
and VHDL and using partial and dynamic AES and as computing capacity improves,
reconfiguration[12] in order to reach a very high developments of these attacks may become
performance. In both cases, they have obtained practicable. However, AES can always up the
very satisfactory results, achieving 27.948 Gb/s number of rounds or move to creating dynamic
in the IDEA algorithm and 24.922Gb/s in the S-boxes to improve the resistance of the
AES algorithm. standard. The main attack is usually against
implementations of the standard (where someone
In 2009, a new methodology to implement AES has programmed the standard and made a
algorithm using partial and dynamic mistake that can be exploited). It is
reconfiguration was given[13]. In the same year, recommended that properly validated and
a 8-bit systolic AES architecture for moderate supported code is used – of which there are a
data rate applications was presented [14]. This number of options – to protect against this sort of
was made possible by mapping a word bit wide attack.
algorithm to byte vector serial architecture. The
technique divides the input word to several bytes
and then traces each byte for extracting References
architectural transformation This year an another
work presented a custom hardware architecture [1] Advanced Encryption Standard (AES), Nov.
for the AES-CCM protocol (AESCCMP) which 26, 2001.

4
[2] A. J. Elbirt, W. Yip, B. Chetwynd, and C. [9] Xinmiao Zhang and Keshab K. Parhi,”High-
Paar. An FPGA implementation and Speed VLSI Architectures for the AES
performance evaluation of the AES block cipher Algorithm” published in IEEE Transactions On
candidate algorithm finalist. presented at Proc. Very Large Scale Integration (VLSI) Systems,
3rd AES Conf. (AES3). [Online]. VOL. 12, NO. 9, September 2004
Available:http://csrc.nist.gov/encryption/aes/rou [10] Ming-Haw Jing, Zih-Heng Chen,etal.,
nd2/conf3/aes3papers.html “Reconfigurable system for high-speed and
[3] V. Fischer and M. Drutarovsky, “Two diversified AES using FPGA” in
Methods Of Rijndael Implementation In Microprocessors and Microsystems 31 (2007)
Reconfigurable Hardware,” in Proc. CHES 2001, 94–102
Paris, France,May 2001, pp. 77–92. [11] XING Ji-peng, ZOU Xue-cheng, GUO Xu,
[4] K. Gaj and P. Chodowiec. “Comparison Of “Ultra-low power S-Boxes architecture for AES”
The Hardware Performance Of The AES in the journal of China Universities of Posts and
Candidates Using Reconfigurable Hardware”. Telecommunications Volume 15, Issue 1, March
presented at Proc. 3rd AES Conf. (AES3). 2008
[Online] Available: http://csrc.nist.gov [12] J.M. Granado etal.. “IDEA andAES,Two
/encryption/aes/round2/conf3/aes3papers.html Cryptographic Algorithms Implemented Using
[5] H. Kuo and I. Verbauwhede, “Architectural PartialAnd Dynamic Reconfiguration” in
optimization for a 1.82 Gbits/sec VLSI Microelectronics Journal 40(2009)1032–1040
implementation of the AES Rijndael algorithm,” [13] J.M. Granado-Criado etal. “A New
in Proc. CHES 2001, Paris, France, May 2001, Methodology To Implement The AES Algorithm
pp. 51–64. Using Partial AndDynamic Reconfiguration” in
[6] M. McLoone and J. V. McCanny, “Rijndael INTEGRATION, the VLSI journal43(2010)72–
FPGA implementation utilizing look-up tables,” 80
in IEEEWorkshop on Signal Processing [14] S.M. Farhan et al. “An 8-bit systolic AES
Systems, Sept. 2001, pp. 349–360. architecture for moderate data rate applications”
[7] A. Satoh, S. Morioka, K. Takano, and S. in Microprocessors and Microsystems 33 (2009)
Munetoh, “A compact Rijndael hardware 221–231
architecture with S-Box optimization,” in Proc. [15] I. Algredo-Badillo et al. “Efficient
ASIACRYPT 2001, Gold Coast, Australia, Dec. hardware architecture for the AES-CCM
2000, pp. 239–254. protocol of the IEEE 802.11i standard” in
[8] A. Rudra, P. K. Dubey, C. S. Jutla, V. Computers and Electrical Engineering xxx
Kumar, J. R. Rao, and P. Rohatgi, “Efficient (2010) xxx–xxx
implementation of Rijndael encryption with
composite field arithmetic,” in Proc. CHES
2001, Paris, France, May 2001, pp. 171–184.

Anda mungkin juga menyukai