FPGA Implementation of the “PYRAMIDS“ Block Cipher

The “PYRAMIDS" Block Cipher is a symmetric encryption algorithm of a 64, 128, 256-bit length, that accepts a variable key length of 128, 192, 256 bits. The algorithm is an iterated cipher consisting of repeated applications of a simple round transformation with different operations and different sequence in each round. The algorithm was previously software implemented in Cµ code. In this paper, a hardware implementation of the algorithm, using Field Programmable Gate Arrays (FPGA), is presented. In this work, we discuss the algorithm, the implemented micro-architecture, and the simulation and implementation results. Moreover, we present a detailed comparison with other implemented standard algorithms. In addition, we include the floor plan as well as the circuit diagrams of the various micro-architecture modules.





References:
[1] H. Al Hassan, Ph. Thesis, Cairo University, in progress, expected
2005.
[2] M. Saeb, A. Zewail, A. Seif, "A Micro-architecture Implementation
of YAEA Encryption Algorithm Utilizing VHDL and FPGA
Technology," Third International Conference on Electrical Engineering,
ICEENG, Military Technical College, Egypt, 2002.
[3] S. Trimberger, R. Pang, A. Singh, "A 12 Gbps DES
Encryptor/Decryptor Core in FPGA," Lecture Notes on Computer
Science, pp. 156-163, Springer-Verlag, 2000.
[4] J. Goodman, A. Chandrakasan, "Energy-Efficient Reconfigurable
Public- Key Cryptography Processor Architecture," Lecture Notes on
Computer Science, pp. 175-190, Springer-Verlag, 2000.
[5] Dandalis, V. K. Prasanna, J.D. P. Rolin, "A Comparative Study of
Performance of AES Final Candidates Using FPGAs," Lecture Notes on
Computer Science, pp. 125-140, Springer-Verlag, 2000.
[6] C. Patterson, "A Dynamic FPGA Implementation of the Serpent
Block Cipher," Lecture Notes on Computer Science, pp. 141-155,
Springer-Verlag, 2000.