Journal Paper2
Journal Paper2
ABSTRACT cells called its hood (usually including the cell itself) is
Our proposed L2D-CASKE:The lightweight 2- defined relative to the specified cell. An initial state (time
dimensional (2-D) cellular automata(CA) based symmetric t=0) is selected by assigning a state for each cell. A new
key encryption algorithm of a 128 bit length that accepts a generation is created (advancing t by 1), according to
key length of 128 bits have been designed as lightweight some fixed rule (generally, a mathematical function) that
encryption algorithm. As being light weight, it can be determines the new state of each cell in terms of the
easily applied on small devices such as wireless sensor current state of the cell and the states of the cells in its
motes, smart cards and other PDAs. The algorithm is an neighborhood. For example, the rule might be that the
iterated cipher consisting of repeated applications of a cell is "On" in the next generation if exactly two of
simple round transformation with different operations and the cells in its neighborhood are "On" in the current
different sequence in round. In this paper, the functionality generation; otherwise the cell is "Off" in the next
of our proposed algorithm was verified using MATLAB generation. Typically, the rule for updating the state of the
tools and hardware implementation of the algorithm using cells is the same for each cell and does not change over
Field Programmable Gate arrays (FPGAs) are presented. time, is applied to the whole grid simultaneously, though
For this purpose, an iterative loop design of our proposed exceptions are known.
algorithm is presented and implemented on FPGA. Beyond
its low cost performances, the proposed architecture is Encryption, by theory requires highly complex actions
fully flexible with any parameters and takes advantage of such as permuting, flipping and altering data in such a
generic VHDL coding. Our efficient implementation way that it is undecipherable and provides complex
achieves lower area, and considerably higher throughputs relationship with the original text and the keys. This
by synthesizing on the target platform Virtex-4 XC4VL25 relationship should be non-linear so that decryption
-10ff668 in Xilinx 9.1 process is as tough as possible. The encryption process
must be fast in time and cheap in terms of the
Keywords: Cellular automata, Symmetric Encryption, components involved. Cellular automata provides a
FPGAs, VHDL. basic structure for highly parallel and complex
operations upon which a basic encryption scheme can be
built. Cellular Automata based processor can be used to
1. INTRODUCTION compute and alter data with high degree of linearity and
Recent advancement of communication and computing complexity.
technologies introduces different types of portable devices
that populate in our day to day life. These devices have Cellular Automata can serve as a source of random
limited battery power, restricted storage and low numbers that are used for encrypting messages, running
computation power to bring the device in affordable cost simulations, and other purposes. According to Sarkar
and portable size. Information security is of primary 2000 [3], the configurations of a succession of
concern for all users irrespective of the computing device cellular automata generations can be used as a
being used. Among the different approaches for achieving random sequence. One-dimensional cellular automata are
information security, the present work concerns with normally used for this purpose. Sarkar cites several
symmetric key cryptography. Varieties of encryption specific applications that have been proposed for cellular
algorithms are available to encrypt the data. Execution of automata-generated random numbers, including private
the traditional encryption algorithms consumes time, space key cryptosystems, public key cryptosystems and hash
and energy. Moreover, side channel attacks are based on functions.Wolfram [4, 5] further reveals that the random
time and power that can be applied to the block ciphers number generator used for large integers in his
implemented on smart card technology [1]. Also protecting Mathematical computational software is based on the
implementation against these kinds of attacks is usually elementary cellular automata known as Rule 30. Wolfram
difficult and expensive. states that this particular cellular automata type is used as
a random number generator due to the fact that it has the
1.1 Cellular Automata interesting and useful property of being chaotic.
A Cellular Automaton (pl. cellular automata, abbreviated
as CA) is a regular grid of cells, each in one of a finite The paper is organized as section 2 describing studies of
number of states, such as "On" or "Off". The grid can be various symmetric key algorithms and its performances ,
of any finite number of dimensions. For each cell, a set of section 3 depicts our proposed algorithm in detail,Section
30
International Journal of Computer Applications (0975 – 8887)
Volume 13– No.4, January 2011
4 illustrates Matlab implementation and its result analysis key to produce the cipher text. The basic design goal of
to test the functionality of our algorithm. Then basic LCASE is to provide an efficient algorithm for both
cryptanalysis tests and its results were shown to prove our hardware and software implementations, as well as to
security level. Subsequently, hardware implementations meet the traditional security requirements. Following
of our algorithm are presented. Finally, conclusion is criteria are taken into consideration for designing the
expressed in section 5. proposed algorithm:
31
International Journal of Computer Applications (0975 – 8887)
Volume 13– No.4, January 2011
32
International Journal of Computer Applications (0975 – 8887)
Volume 13– No.4, January 2011
Conventional CA (a)
MargolusNeighbourhood(b)
3.2 Block Permutation It uses as input the two cells of a block and returns as
The Block Permutation (BP) operation permutes each 2x2 outputs the new states of all two cells of the same block;
sub-block within a 4x4 block diagonally. The idea behind therefore, preservation of information can be assured. If
this permutation is to move the data at the boundaries at exactly the same partitioning scheme were to be used
the centre of the block and vice versa. This increases the repeatedly, information would be unable to propagate
rate of diffusion and makes differential cryptanalysis beyond each individual partition. To overcome this, the
difficult. Moreover, implementation of this permutation is Margolus neighborhood alternately groups odd and even
very simple and can be hard-wired simply by wire- cells every other step. Margolus neighborhoods are small
crossings. The block permutation operation is described enough that devising totalistic rules renders little benefit.
in Figure 4. The purpose of diffusion on a cipher is to On the other hand, Margolus was interested in reversible
spread out redundancy of the plain-text all over the cellular automata [19], for which rules encompassing
cipher-text, i.e., each bit of the plain-text needs to shifting, reflection, creation, annihilation and
contribute to as many cipher bits. Our proposed scheme complementation abound in such small neighborhoods; the
satisfies the diffusion requirement by the clever use of Billiard-Ball Machine was a result. One of the simplest
Block Permutation operation. partitioning schemes is the Margolus neighbourhood,
named after Norman Margolus and studied extensively
in a book he co-authored, Cellular Automata Machines
(CAM). This consists of dividing a grid of cells into
groups of four, as shown in Figure 6, to which the
automata rule is applied completely locally. If exactly the
same partitioning scheme were to be used repeatedly, then
FIGURE 4: Block Permutation Operation information would be unable to propagate beyond the
confines of any individual partition - and the dynamics of
3.3 2D RCA: Margolus Neighborhood the overall system would be sterile. The partitioning
Reversible Cellular Automata in Two Dimensions: As scheme is thus applied using grids that occupy different
we consider the plain-text to be of two-dimensions, we spatial co- ordinates on alternate time steps. The
make use of 2D Reversible Cellular Automata (RCA), one partitioning scheme for the alternating time steps is show
approach being Partitioned Cellular Automata (PCA) is in Figures 6 (a) and (b). The Margolus neighbourhood
another technique to generate invertible cellular partitions the space of the CA into disjoint boxes
automata. Margolus neighborhood, named after Norman consisting of 2 cells on a side. That partitioning then
Margolus, is a well-known partitioning technique. The idea changes from one clock tick to the next so that members of
is that conventional cellular automata are in general not one box become joined to members of an adjacent box on
invertible because their reverse step is not deterministic. alternate ticks. In Figure 6(a), the box boundaries are
As we can see in Figure 3, four possible past drawn so that all the even cells (added just for
configurations exist for either state of the current cell for clarification) and all the odd cells are grouped together,
the conventional Rule 30. Obviously, it is impossible to while in Figure 6(b), which represents the alternate half of
guess the past step with the current state of each cell. The the cycle, the cells have remained stationary while the
substantial reason is that conventional cellular automata boundary lines were shifted by one square in the diagonal
may lose some information while evolving. For instance, direction so that the odd and even cells share boxes. The
as shown in Figure 5(a), conventional one-dimensional other significant difference between the Margolus
cellular automata have three inputs, the cell itself and its neighbourhood and the conventional CA neighbourhood
two neighbours, but the output is only one cell. Having the is that the entire contents of the box are updated at once.
same number of states, it is very doubtful that the one All four cells change state based on the same rule which is
output cell can preserve all the information of the three written in the form known as D Rules: Billiard Ball
previous input cells. It is true that each cell affects three Machine rules.
33
International Journal of Computer Applications (0975 – 8887)
Volume 13– No.4, January 2011
4. IMPLEMENTATION OF
ALGORITHM AND RESULT
ANALYSIS
Our objective of designing and implementing a 2D CA-
based symmetric-key encryption algorithm has been
fulfilled. MATLAB was used as the development and
testing platform. The necessary criteria for a good cipher is
that the relationship between the plain-text, the key and the
cipher-text should be as involved and complex as possible, FIGURE 9: Encryption and Decryption of
making it almost impossible to decipher the plain-text Color Image
from the cipher-text without the exact key. The cipher-text 4.2 Basic Cryptanalysis Results:
on deciphering with the exact key should yield the plain-
text without any error. Various tests were performed on our In order to evaluate fitness, rules have to be subjected to
proposed algorithm to ensure that both the above criteria tests. Here is one of the interesting characteristics of CAs -
are satisfied. Our proposed algorithm was implemented it is impossible to assess each individual rule completely
straight forwardly by generic VHDL in Xilinx 9.1 tool to on its own. The whole idea is that individual
take advantage of the parallelism inherent in our design. components together lead to some meaningful
MATLAB is only a sequential programming platform behaviour and we do not know what each individual
whereas VHDL facilitates simultaneous parallel component is supposed to be doing. Behaviour of each
operations. The HDL modules were also synthesized and individual is too closely interwoven with behaviour of
the equivalent hardware circuitry of our algorithm was the cells in its neighbourhood. The only way to assign
extracted. Our efficient implementation achieves lower fitness to a rule is to run the entire CA on “many”
area, low power consumptions and considerably higher problems, each of which has a known solution, and see if
throughputs on the target platform SPARTAN-3, xc3s1400. the given cell reaches the correct “limiting” state in each
case. The ratio of the number of correct final states to the
4.1 Results in MATLAB: total number of tests gives a good approximation of the
As discussed above, the preliminary testing was done fitness of a cell. Of course, since the simulation has to end
using MATLAB. Plain-texts of size 128-bits and key in a reasonable time, both “many” and “limiting” have to
length of 128 bits were chosen and encrypted using the be given finite values that are sufficient and realistic. Some
proposed cipher. The cipher-text, the decrypted data and preliminary cryptanalysis was performed in MATLAB and
its results follow.
34
International Journal of Computer Applications (0975 – 8887)
Volume 13– No.4, January 2011
35
International Journal of Computer Applications (0975 – 8887)
Volume 13– No.4, January 2011
therefore simple. For CA computation, the whole lattice The scope for extension of this paper includes, the
is downloaded to the FPGA from the host machine and is use of cryptanalysis attacks such as differential
run for the required number of generations. Finally, the cryptanalysis attacks , linear cryptanalysis attack and its
resulting CA generation is uploaded back to the host variants, interpolation and algebraic attacks, related key
system. The LUT count for various block ciphers are attacks, equivalent key attacks, timing analysis attacks on
provided in the Table 4.2 Our proposed cipher uses 128- our proposed algorithm. Apart from the above, field
bit plaint-text block whereas the other ciphers use the optimization can also be done in terms of better schedules
standard 128-bit plain-text block. Our efficient such as non-autonomous cellular automata to mix the key
implementation achieves lower area expressed in terms of and plaintext. On the whole we believe our proposed
LUT and considerably higher throughputs on the target cellular automata based block cipher can be used
platform VIRTEX-4, XC4VL25 -10ff668. Finally, power effectively to construct a highly effective encryption
analysis are made on Xpower analyzer tool in Xilinx 9.1. scheme for resource constrained devices like, Wireless
sensor Networks, RFIDs and other low powered portable
The implementation results prove that our security devices.
processor occupying 642 slices in terms of area,
169.22mW of total power consumption and Throughput 6. REFERENCES
of 2136 Mbits/sec at the maximum work frequency of
334 MHz is compatible to any Main processor of a [1] P. Kocher, J.Jaffre and B.Jun, “Differential
sensor Node in Wireless sensor networks. Thus we have power analysis,” Crypto’99, LNCS 1666, pp.
enhance the performance of a sensor node by achieving 398-412, Springer-Verlag, 1999.
maximum level security and efficiency regarding to [2] S Tripathy and S Nandi,"LCASE: Lightweight
Area, Power and Throughputs. Cellular Automata-based Symmetric-key
Encryption”, International Journal of Network
Security, Vol.8,No.2 ,Mar. 2009.
[3] Palash Sarkar, “A Brief History of Cellular
automata”, Journal of ACM Computing Surveys
(CSUR), Volume 32 Issue 1, March 2000
[4] S. Wolfram, “Cryptography with Cellular
Hardware Automata,” Crypto ’85, LNCS 218, pp. 429-
Complexity in 432, Springer-Verlag, 1986.
terms of Total Power [5] S. Wolfram, “Random sequence generation by
Block Cipher
LUTCounts Consumption cellular automata,” Advances in Applied Maths,
,Throughput vol. 7,no. 2, pp. 123-169, 1986.
Mbits/sec [6] J. Daemen, and V. Rijmen, Specification for the
Advanced Encryption Standard (AES),
Springer-Verlag,2002.
582, NA NA [7] F. Standaert, G. Piret, G. Rouvroy, J.
LCASE[1]
Quisquater, and J. Legat, “ICEBERG : An
704, NA NA involutional cipher efficient for block
ICEBERG[7]
encryption in reconfigurable hard- ware,” FSE
3376,1563 ’04, LNCS 3017, pp. 279-299, Springer- Verlag,
NA
AES[6] Mbits/secs 2004.
[8] N. Sklavos, N. A. Moldovyan, and O.
642, 2136 Koufopavlou, “High speed networking: Design
169.22 mW and implementation of two new DDP-based
L2D-CASKE Mbits/secs
ciphers,” Mobile Networks and Applications-
MONET, vol. 25, no. 1-2, pp. 219-231, Springer-
Table 4.2 Comparison of Hardware Complexity in Verlag, 2005.
terms of 4-Input LUT Count and Power [9] N. A. Moldovyan, P. A. Moldovyan, and D.H.
Sum- merville, “On software implementation of
consumption
fast DDP- based ciphers,” Internatiol Journal of
Network Security, vol. 4, no. 1, pp. 81-89, 2007.
[10] S. Nandi, B. K. Kar, and P. P. Chaudhuri,
“Theory and application of cellular automata in
5. CONCLUSION cryptography,” IEEE Transaction on Computers,
We have proposed a light-weight symmetric-key vol. 43, no.12, pp. 1346-1357, 1994.
cryptosystem using Cellular Automata. This encryption [11] S. Wolfram “Cryptography with Cellular
scheme meets all the basic requirements meted out by the Automata,” Crypto ’85,LNCS 218,pp.429-
AES. Also, this being light-weight, it can be easily 432,Springer-Verlag, 1986.
applied on small devices such as sensor motes, smart [12] C.K.Koc, and A.M.Apohan, “Inversion of
cards, etc. The basic automata can be down scaled to cellular automata iteration,” IEE Proceedings
work even on a basic 8-bit processor. The major of Computer and Digital Technique, vol. 144,
advantage of our proposed scheme is the use of dynamic no. 5, pp. 279-284,1997.
key schedule which minimizes the memory requirement [13] S. Nandi, B. K. Kar, and P. P. Chaudhuri,
on the smaller devices. “Theory and application of cellular automata in
cryptogra- phy,” IEEE Transaction on
36
International Journal of Computer Applications (0975 – 8887)
Volume 13– No.4, January 2011
37