# Polymorphic AES Encryption Implementation

Save this PDF as:

Size: px
Start display at page:

## Transcription

2 0,0 0,1 1,0 1,1 1,2 2,0 2,1 0,2 0,3 2,2 1,3 0,3 3,0 3,1 3,2 3,3 Fig. 1: AE matrix organization. AE algorithm, the number of rounds to be performed during the execution of the algorithm is dependent on the key size. The number of rounds is represented by Nr, where N r = 10 when N k = 4, N r = 12 when N k = 6, and N r = 14 when N k =. The number of rounds, Key length and Block ize in the AE standard id summarized in table I. TABLE I: Key-Block-Round Combinations for AE. Key Length Key Length Number of (Nk words) (bits) Rounds (Nr) AE AE AE algorithms. In the Rijndael algorithm, this replacement is performed over a set of bits (1 byte). Unlike the DE, this replacement can be described by a affine transformation (over GF (2)), as presented in equation 1. b i = b i b (i+4)mod b (i+5)mod b (i+6)mod (1) b (i+7)mod c i ; 0 i < where b i in the n-th bit of the byte b(x) obtained from the tate array. This bit permutation and transformation is performed over each byte individually. The c i is the i-th of the value { }. hiftrows(): The bytes in each row is shifted to the left by n bytes, with n being equal to the row number, for example 1,0 1,1 1,2 1,3 is transformed to 1,1 1,2 1,3 1,0. This operation is illustrated in figure 3. r,0 r,1 r,2 r,3 0,0 0,1 0,2 0,3 hiftrows() r,0 r,1 r,2 r,3 0,0 0,1 0,2 0,3 1,0 1,1 1,2 1,3 1,1 1,2 1,3 1,0 A. Encryption As mentioned before the coding process consists on the manipulation of the 12-bit data block through a series of logical and arithmetic operations, repeated a fixed number of times. This number of rounds is directly dependent on the size of the cipher key. In the computation of both the encryption and decryption, a well defined order exists for the several operations that have to be performed over the data block. The encryption process is depicted in figure 2 tate = in AddRoundKey(tate, key[0 to Nb 1]) for round= 1, round<nr, round=round+1 do ubbytes(tate) hiftrows(tate) MixColumns(tate) AddRoundKey(tate,key[round Nb to(round+1) Nb 1]) end for ubbytes(tate) hiftrows(tate) AddRoundKey(tate,key[Nr Nb to (Nr+1) Nb 1]) out = tate Fig. 2: Pseudo Code for AE Encryption. The next subsections describe in detail the operation performed by each of the functions used in figure 2, for the particular case of the encryption. ubbytes()transformation: The replacement of one set of bits by another is a non linear transformation, and is one of the most common operations in symmetrical encryption 2,0 2,1 2,2 0,3 3,0 3,1 3,2 3,3 2,2 0,3 2,0 2,1 3,3 Fig. 3: AE hiftrows. 3,0 3,1 3,2 MixColumns() Transformation: In this transformation each column is treated as a four-term polynomial over GF (2 ) and multiplied modulo x with a fixed polynomial a(x), given by: a(x) = 03x x x + 02 (2) resulting in the column given by: 0,c = (02 0,c ) (03 1,c ) 2,c 3,c 1,c = 0,c (02 1,c ) (03 2,c ) 3,c 2,c = 0,c 1,c (02 2,c ) (03 3,c ) 3,c = (03 0,c ) 1,c 2,c (02 3,c ) (3) Figure 4 illustrates the MixColumns() Transformation. AddRoundKey(): The final operation to be performed in each round is the addition (in GF (2 )) of the respective Key with each column of the tate matrix, simply performed by bitwise XOR. Each round Key consists of 4 -bit words from the expanded Key (xk). The operation formalized in equation 4 is depicted in Figure 5, where i = round N b. [ 0,c, 1,c, 2,c, 3,c] =[ 0,c, 1,c, 2,c, 3,c ] (4) [xk round Nb +c] ; 0 c < N b

3 0,c 0,0 0,1 0,2 0,3 1,0 1,11,c 1,2 1,3 2,0 2,12,c 2,2 0,3 3,0 3,1 3,2 3,3 3,c MixColumns() ' 0,0 ' ' 0,c 0,1 ' 1,1 ' 1,2 ' 1,c ' 1,3 ' 0,2 ' 0,3 ' 1,0 ' 2,2 ' 0,3 ' 2,c ' 2,0 ' 2,1 ' 3,3 ' 3,0 ' 3,1 ' 3,2 ' 3,c -Box previously described. The function RotWord() takes a word [a0,a1,a2,a3] as input, performs an one byte left rotation, and returns the word [a1,a2,a3,a0]. The round constant word array, Rcon[i], contains the values given by [x i 1, 00, 00, 00], with x i 1 being powers of x (x is denoted as 02) in the field GF (2 ). The subkey W [i] is calculated through the manipulation of the previous calculated subkey W [i 1] using the previously described functions and finally with the bitwise XOR operation with the W [i N k ] subkey [5]. 0,c 0,0 0,1 1,0 1,1 1,2 Fig. 4: AE MixColumns Transformation. 1,c 0,2 0,3 1,3 2,0 2,12,c 2,2 0,3 3,0 3,1 3,2 3,3 3,c xki+c xk i xk i+2 xk i+3 xk i+4 ' 0,0 ' ' 0,c 0,1 ' 1,1 ' 1,2 ' 1,c ' 1,3 ' 0,2 ' 0,3 ' 1,0 ' 2,2 ' 0,3 ' 2,c ' 2,0 ' 2,1 ' 3,3 Fig. 5: AE key addition. ' 3,0 ' 3,1 ' 3,2 ' 3,c Key expansion: In this ciphering algorithm, the input Key has N k -bit words, however N b (N r + 1) -bit words are needed. ince N k < N b (N r + 1) the input Key has to be expanded. The resulting expanded key consists of a linear array of 4-byte words, denoted [xk i ], with i in the range 0 < i < N b (N r + 1). Each subkey is a -bit word, that in the case of the first N k subkeys are directly obtained directly from the input key. The remaining subkey however, require some additional computation as described the pseudo code depicted in figure 6. This computation mostly consists in byte substitution as described for the ubbytes() transformation and a XOR operation with a constant Rcon[i]. Every N k subkey calculation also requires an one byte left rotation. for i = 0, i < Nk, i = i + 1 do skey[i] =word(key[4 i], Key[4 i + 1], Key[4 i + 2], Key[4 i + 3]) end for for i = Nk, i < Nb (Nr + 1), i = i + 1 do if i mod Nk= 0 then temp=ubword(rotword(temp)) xor Rcon[i/Nk] else if (Nk> 6) and (i mod Nk) = 4 then temp=ubword(temp) end if skey[i] =skey[i Nk] xor temp end for Fig. 6: Pseudo Code for AE Key expansion. The ubword is exactly the same as the ubbytes() transformation, in which every byte of the word is applied to the B. Decryption In order to recover the data previously encrypted it is required to perform the inverse of the AE cipher, this process is identical the the encryption, however the operations performed in each subroutines different. The structure of the inverse AE cipher is described in the pseudo code depicted in figure 7. Note that the expanded key for the decryption process is different than the one used in the encryption, although both are obtained (expanded) from the same original key [5]. tate = in AddRoundKey(tate, key[nr Nb to (Nr+1) Nb 1]) for round= Nr 1, round 1, round=round 1 do InvubBytes(tate) InvhiftRows(tate) InvMixColumns(tate) AddRoundKey(tate, key[round Nb to (round+1) Nb 1]) end for InvubBytes(tate) InvhiftRows(tate) AddRoundKey(tate, key[0 to Nb 1]) out = tate Fig. 7: Pseudo Code for AE inverse Cipher. InvhiftRows: The InvhiftRows is the same as the hiftrows with the difference that the rotation is performed to the right instead of the left. InvubBytes: The InvubBytes is the inverse of the byte substitution performed on the encryption (ubbytes). This is obtained by applying the inverse of the affine transformation described in equation 1, followed by taking the multiplicative inverse in GF (2 ). The lookup table values required to perform this transformation (substitution) are presented in [5]. This table consists on a -bit input to an -bit output transformation. InvMixColumns: The InvMixColumns is the inverse of the MixColumns transformation previously presented for the encryption. Once again the columns of the state are considered as polynomials over GF (2 ) and multiplied modulo x with a fixed polynomial a 1 (x), which is the inverse of a(x), given by: a(x) = 0bx 3 + 0dx x + 0e (5)

5 X X<<1 Y Y<<1-1B - 1B <<1-1B Y 3Y 2Y <<1 X 3X 2X 4Y - 1B Fig. : GF (2 ) multiplication architecture for encryption 5Y Y 20,c 31,c 2,c 3,c DY BY Fig. 10: GF (2 ) multiplication architecture for decryption 0,c Fig. 9: Polynomial addition in GF (2 ) Key addition: The key addition is also performed over the GF (2 ), as such it is easily implemented by one XOR gate per each par of bits to be added (one from the data matrix and the other from the expanded key). AE decryption core: In order to retrieve the original data previously encrypted, the data undergoes a process identical to that of the encryption (see pseudo code of figure 2). The main differences in the decryption computation lays on the byte substitution and on the polynomial equation used in the column mix. Unlike the encryption, the byte substitution transformation has no apparent boolean expression, thus it has to be implemented by a look up table [2]. In the inverse column mix, the process is exactly the same as in the encryption, the only difference lays in the coefficients values. While in the encryption these coefficients result in a small hardware structure, since at most, only 2 bits are equal to 1 (the multiplications constants are 1, 2 and 3), in the inverse column mix the coefficients (9, b, d, e) usually have 3 bits at 1. The method used to compute the multiplications values in the GF (2 ) is the same, for example to calculate the multiplication by the constant b, the multiplication by, 2, 1 is first computed and only then added (b = +2+1) to obtain the value b. The multiplication architecture for the inverse column mix multiplier is presented in figure 10. Implementing the AE cipher in memory banks: The hardware implementation previously presented describes a fine grain implementation of the AE cipher. However the recent programable devices, such as the Xilinx Virtex II Pro FPGAs, possesses versatile and fast memory banks in sufficient number that allow for more coarse grain architectures. While in a fine gain architecture the computation for the byte substitution and column mix multiplication have to be implemented in different and specific hardware structures, as depicted in figure 11, in a memory bank based coarse grain architecture these two units, along with an hardwired row shift, can be merged together and easily mapped into, an bit input and bit out output, memory bank. The 1 BOX Mult Fig. 11: Fine grain column computation memory bank receives one byte from the state matrix and outputs that value multiplied by the 4 coefficients after the byte transformation, {1, 1, 2, 3} for the encryption and {9, c, d, e} for the decryption. ince, in order to calculate each column four of these outputs are required (see equations 3 and 6) four memory banks would be needed. However, the memory

### Implementation of Full -Parallelism AES Encryption and Decryption

Implementation of Full -Parallelism AES Encryption and Decryption M.Anto Merline M.E-Commuication Systems, ECE Department K.Ramakrishnan College of Engineering-Samayapuram, Trichy. Abstract-Advanced Encryption

### IJESRT. [Padama, 2(5): May, 2013] ISSN: 2277-9655

IJESRT INTERNATIONAL JOURNAL OF ENGINEERING SCIENCES & RESEARCH TECHNOLOGY Design and Verification of VLSI Based AES Crypto Core Processor Using Verilog HDL Dr.K.Padama Priya *1, N. Deepthi Priya 2 *1,2

### Design and Verification of Area-Optimized AES Based on FPGA Using Verilog HDL

Design and Verification of Area-Optimized AES Based on FPGA Using Verilog HDL 1 N. Radhika, 2 Obili Ramesh, 3 Priyadarshini, 3 Asst.Profosser, 1,2 M.Tech ( Digital Systems & Computer Electronics), 1,2,3,

### Modern Block Cipher Standards (AES) Debdeep Mukhopadhyay

Modern Block Cipher Standards (AES) Debdeep Mukhopadhyay Assistant Professor Department of Computer Science and Engineering Indian Institute of Technology Kharagpur INDIA -721302 Objectives Introduction

### FPGA area allocation for parallel C applications

1 FPGA area allocation for parallel C applications Vlad-Mihai Sima, Elena Moscu Panainte, Koen Bertels Computer Engineering Faculty of Electrical Engineering, Mathematics and Computer Science Delft University

### Cryptography and Network Security. Prof. D. Mukhopadhyay. Department of Computer Science and Engineering. Indian Institute of Technology, Kharagpur

Cryptography and Network Security Prof. D. Mukhopadhyay Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Module No. # 01 Lecture No. # 12 Block Cipher Standards

### Implementation and Design of AES S-Box on FPGA

International Journal of Research in Engineering and Science (IJRES) ISSN (Online): 232-9364, ISSN (Print): 232-9356 Volume 3 Issue ǁ Jan. 25 ǁ PP.9-4 Implementation and Design of AES S-Box on FPGA Chandrasekhar

### Parallel AES Encryption with Modified Mix-columns For Many Core Processor Arrays M.S.Arun, V.Saminathan

Parallel AES Encryption with Modified Mix-columns For Many Core Processor Arrays M.S.Arun, V.Saminathan Abstract AES is an encryption algorithm which can be easily implemented on fine grain many core systems.

### FPGA IMPLEMENTATION OF AN AES PROCESSOR

FPGA IMPLEMENTATION OF AN AES PROCESSOR Kazi Shabbir Ahmed, Md. Liakot Ali, Mohammad Bozlul Karim and S.M. Tofayel Ahmad Institute of Information and Communication Technology Bangladesh University of Engineering

### The Advanced Encryption Standard (AES)

The Advanced Encryption Standard (AES) All of the cryptographic algorithms we have looked at so far have some problem. The earlier ciphers can be broken with ease on modern computation systems. The DES

### The Advanced Encryption Standard: Four Years On

The Advanced Encryption Standard: Four Years On Matt Robshaw Reader in Information Security Information Security Group Royal Holloway University of London September 21, 2004 The State of the AES 1 The

### The Advanced Encryption Standard (AES)

The Advanced Encryption Standard (AES) Conception - Why A New Cipher? Conception - Why A New Cipher? DES had outlived its usefulness Vulnerabilities were becoming known 56-bit key was too small Too slow

ADVANCED ENCRYPTION STANDARD (AES) Tran Song Dat Phuc Department of Computer Science and Engineering Seoul National University of Science and Technology 2013-2014 Outline AES History AES Operations Advanced

### ELECTENG702 Advanced Embedded Systems. Improving AES128 software for Altera Nios II processor using custom instructions

Assignment ELECTENG702 Advanced Embedded Systems Improving AES128 software for Altera Nios II processor using custom instructions October 1. 2005 Professor Zoran Salcic by Kilian Foerster 10-8 Claybrook

### Efficient Software Implementation of AES on 32-bit Platforms

Efficient Software Implementation of AES on 32-bit Platforms Guido Bertoni, Luca Breveglieri Politecnico di Milano, Milano - Italy Pasqualina Lilli Lilli Fragneto AST-LAB of ST Microelectronics, Agrate

### Design and Analysis of Parallel AES Encryption and Decryption Algorithm for Multi Processor Arrays

IOSR Journal of VLSI and Signal Processing (IOSR-JVSP) Volume 5, Issue, Ver. III (Jan - Feb. 205), PP 0- e-issn: 239 4200, p-issn No. : 239 497 www.iosrjournals.org Design and Analysis of Parallel AES

### Enhancing Advanced Encryption Standard S-Box Generation Based on Round Key

Enhancing Advanced Encryption Standard S-Box Generation Based on Round Key Julia Juremi Ramlan Mahmod Salasiah Sulaiman Jazrin Ramli Faculty of Computer Science and Information Technology, Universiti Putra

### Secret File Sharing Techniques using AES algorithm. C. Navya Latha 200201066 Garima Agarwal 200305032 Anila Kumar GVN 200305002

Secret File Sharing Techniques using AES algorithm C. Navya Latha 200201066 Garima Agarwal 200305032 Anila Kumar GVN 200305002 1. Feature Overview The Advanced Encryption Standard (AES) feature adds support

### Hardware Implementation of AES Encryption and Decryption System Based on FPGA

Send Orders for Reprints to reprints@benthamscience.ae The Open Cybernetics & Systemics Journal, 2015, 9, 1373-1377 1373 Open Access Hardware Implementation of AES Encryption and Decryption System Based

### Performance Evaluation of AES using Hardware and Software Codesign

Performance Evaluation of AES using Hardware and Software Codesign Vilas V Deotare 1, Dinesh V Padole 2 Ashok S. Wakode 3 Research Scholar,Professor, GHRCE, Nagpur, India vilasdeotare@gmail.com 1, dvpadole@gmail.com

### Note on naming. Note on naming

Joan Daemen Vincent Rijmen Note on naming Rijndael 1. Introduction Note on naming After the selection of Rijndael as the AES, it was decided to change the names of some of its component functions in order

### Design and Implementation of Asymmetric Cryptography Using AES Algorithm

Design and Implementation of Asymmetric Cryptography Using AES Algorithm Madhuri B. Shinde Student, Electronics & Telecommunication Department, Matoshri College of Engineering and Research Centre, Nashik,

### Automata Designs for Data Encryption with AES using the Micron Automata Processor

IJCSNS International Journal of Computer Science and Network Security, VOL.15 No.7, July 2015 1 Automata Designs for Data Encryption with AES using the Micron Automata Processor Angkul Kongmunvattana School

### 40G MACsec Encryption in an FPGA

40G MACsec Encryption in an FPGA Dr Tom Kean, Managing Director, Algotronix Ltd, 130-10 Calton Road, Edinburgh EH8 8JQ United Kingdom Tel: +44 131 556 9242 Email: tom@algotronix.com February 2012 1 MACsec

### Rijndael Encryption implementation on different platforms, with emphasis on performance

Rijndael Encryption implementation on different platforms, with emphasis on performance KAFUUMA JOHN SSENYONJO Bsc (Hons) Computer Software Theory University of Bath May 2005 Rijndael Encryption implementation

### Area Optimized and Pipelined FPGA Implementation of AES Encryption and Decryption

Area Optimized and Pipelined FPGA Implementation of AES Encryption and Decryption 1, Mg Suresh, 2, Dr.Nataraj.K.R 1, Asst Professor Rgit, Bangalore, 2, Professor 1,2, Department Of Electronics And Communication

### Efficient Software Implementation of AES on 32-Bit Platforms

Efficient Software Implementation of AES on 32-Bit Platforms Guido Bertoni 1, Luca Breveglieri 1, Pasqualina Fragneto 2, Marco Macchetti 3, and Stefano Marchesin 3 1 Politecnico di Milano, Milano, Italy

### SeChat: An AES Encrypted Chat

Name: Luis Miguel Cortés Peña GTID: 901 67 6476 GTG: gtg683t SeChat: An AES Encrypted Chat Abstract With the advancement in computer technology, it is now possible to break DES 56 bit key in a meaningful

### AES (Rijndael) IP-Cores

AES (Rijndael) IP-Cores Encryption/Decryption and Key Expansion Page 1 Revision History Date Version Description 24 February 2006 1.0 Initial draft. 15 March 2006 1.1 Block diagrams added. 26 March 2006

### Open Flow Controller and Switch Datasheet

Open Flow Controller and Switch Datasheet California State University Chico Alan Braithwaite Spring 2013 Block Diagram Figure 1. High Level Block Diagram The project will consist of a network development

### The implementation and performance/cost/power analysis of the network security accelerator on SoC applications

The implementation and performance/cost/power analysis of the network security accelerator on SoC applications Ruei-Ting Gu grating@eslab.cse.nsysu.edu.tw Kuo-Huang Chung khchung@eslab.cse.nsysu.edu.tw

### Vectorized AES core for high-throughput secure environments

Vectorized AES core for high-throughput secure environments Miquel Pericàs 1,2, Ricardo Chaves 4, Georgi N. Gaydadjiev 3, Stamatis Vassiliadis 3, and Mateo Valero 1,2 1 Computer Sciences, Barcelona Supercomputing

### Research Article. ISSN 2347-9523 (Print) *Corresponding author Shi-hai Zhu Email:

Scholars Journal of Engineering and Technology (SJET) Sch. J. Eng. Tech., 2014; 2(3A):352-357 Scholars Academic and Scientific Publisher (An International Publisher for Academic and Scientific Resources)

### Comparative Analysis of SEA and XTEA for Resource Constrained Embedded Systems Ruchita Jain a, Dr. K. G. Maradia b a

Available online at www.ijiere.com International Journal of Innovative and Emerging Research in Engineering e-issn: 2394-3343 p-issn: 2394-5494 Comparative Analysis of SEA and XTEA for Resource Constrained

### Hardware Encryption for Embedded Systems

Institut für Technische Informatik und Kommunikationsnetze Hardware Encryption for Embedded Systems Yiheng Yang Semester s Thesis SA-2012-16 November 2012 until February 2013 Advisor: Ariane Keller, ariane.keller@tik.ee.ethz.ch

### FPGA Security Bit Stream Authentication. Milind M. Parelkar

FPGA Security Bit Stream Authentication Milind M. Parelkar Security Issues in FPGA Remotely Re-configurable FPGAs Stealing the Bitstream in Transit Host Processor FPGA ` 110101010 Bitstream Encryption

### International Association of Scientific Innovation and Research (IASIR) (An Association Unifying the Sciences, Engineering, and Applied Research)

International Association of Scientific Innovation and Research (IASIR) (An Association Unifying the Sciences, Engineering, and Applied Research) ISSN (Print): 2279-0020 ISSN (Online): 2279-0039 International

### FPGA IMPLEMENTATION OF AES ALGORITHM

FPGA IMPLEMENTATION OF AES ALGORITHM S.A. Annadate 1, Nitin Ram Chavan 2 1,2 Electronics and Telecommunication Dept, J N Collage of engineering Aurangabad, (India) ABSTRACT Advanced Encryption Standard

### A VHDL Implemetation of the Advanced Encryption Standard-Rijndael Algorithm. Rajender Manteena

A VHDL Implemetation of the Advanced Encryption Standard-Rijndael Algorithm y Rajender Manteena A thesis sumitted in partial fulfillment of the requirements for the degree of Master of Science in Electrical

### EFFECTIVE AES IMPLEMENTATION

International Journal of Electronics and Communication Engineering & Technology (IJECET) Volume 7, Issue 1, Jan-Feb 2016, pp. 01-09, Article ID: IJECET_07_01_001 Available online at http://www.iaeme.com/ijecetissues.asp?jtype=ijecet&vtype=7&itype=1

### CSCE 465 Computer & Network Security

CSCE 465 Computer & Network Security Instructor: Dr. Guofei Gu http://courses.cse.tamu.edu/guofei/csce465/ Secret Key Cryptography (I) 1 Introductory Remarks Roadmap Feistel Cipher DES AES Introduction

### Improved Method for Parallel AES-GCM Cores Using FPGAs

Improved Method for Parallel -GCM Cores Using FPGAs Karim Moussa Ali Abdellatif, Roselyne Chotin-Avot, abib Mehrez To cite this version: Karim Moussa Ali Abdellatif, Roselyne Chotin-Avot, abib Mehrez.

### Survey on Enhancing Cloud Data Security using EAP with Rijndael Encryption Algorithm

Global Journal of Computer Science and Technology Software & Data Engineering Volume 13 Issue 5 Version 1.0 Year 2013 Type: Double Blind Peer Reviewed International Research Journal Publisher: Global Journals

International Journal of Scientific & Engineering Research, Volume 6, Issue 4, April-2015 965 OPTIMIZATION OF AES ALGORITHM USING HARDWARE AND SOFTWARE Pavithra.S, Vaishnavi.M, Vinothini.M, Umadevi.V Abstract-In

### Improving Performance of Secure Data Transmission in Communication Networks Using Physical Implementation of AES

Improving Performance of Secure Data Transmission in Communication Networks Using Physical Implementation of AES K Anjaneyulu M.Tech Student, Y.Chalapathi Rao, M.Tech, Ph.D Associate Professor, Mr.M Basha,

### A PPENDIX H RITERIA FOR AES E VALUATION C RITERIA FOR

A PPENDIX H RITERIA FOR AES E VALUATION C RITERIA FOR William Stallings Copyright 20010 H.1 THE ORIGINS OF AES...2 H.2 AES EVALUATION...3 Supplement to Cryptography and Network Security, Fifth Edition

### Journal of Research in Electrical and Electronics Engineering (ISTP-JREEE)

Abstract SYNTHESIS OF 128 BIT ADVANCED ENCRYPTION STANDARD ALGORITHM USING VHDL Paramveer Kaur, M.Tech (ECE) Student, siviapinu77@gmail.com; Parminder Singh Jassal, Assistant Professor, pammi_jassal@yahoo.co.in;

### CRYPTOGRAPHIC ALGORITHMS (AES, RSA)

CALIFORNIA STATE POLYTECHNIC UNIVERSITY, POMONA CRYPTOGRAPHIC ALGORITHMS (AES, RSA) A PAPER SUBMITTED TO PROFESSOR GILBERT S. YOUNG IN PARTIAL FULFILLMENT OF THE REQUIREMENT FOR THE COURSE CS530 : ADVANCED

### Arithmetic Operations

Arithmetic Operations Dongbing Gu School of Computer Science and Electronic Engineering University of Essex UK Spring 2013 D. Gu (Univ. of Essex) Arithmetic Operations Spring 2013 1 / 34 Outline 1 Introduction

### ECE 842 Report Implementation of Elliptic Curve Cryptography

ECE 842 Report Implementation of Elliptic Curve Cryptography Wei-Yang Lin December 15, 2004 Abstract The aim of this report is to illustrate the issues in implementing a practical elliptic curve cryptographic

### synthesizer called C Compatible Architecture Prototyper(CCAP).

Speed Improvement of AES Encryption using hardware accelerators synthesized by C Compatible Architecture Prototyper(CCAP) Hiroyuki KANBARA Takayuki NAKATANI Naoto UMEHARA Nagisa ISHIURA Hiroyuki TOMIYAMA

### The mathematics of RAID-6

The mathematics of RAID-6 H. Peter Anvin 1 December 2004 RAID-6 supports losing any two drives. The way this is done is by computing two syndromes, generally referred P and Q. 1 A quick

### A Secure Software Implementation of Nonlinear Advanced Encryption Standard

IOSR Journal of VLSI and Signal Processing (IOSR-JVSP) ISSN: 2319 4200, ISBN No. : 2319 4197 Volume 1, Issue 5 (Jan. - Feb 2013), PP 44-48 A Secure Software Implementation of Nonlinear Advanced Encryption

### Accelerating Encryption Algorithms using Impulse C

Accelerating Encryption Algorithms using Impulse C Scott Thibault, President Green Mountain Computing Systems, Inc. David Pellerin, CTO Impulse Accelerated Technologies, Inc. Copyright 2010 Impulse Accelerated

### Advanced Encryption Standard by Example. 1.0 Preface. 2.0 Terminology. Written By: Adam Berent V.1.7

Written By: Adam Berent Advanced Encryption Standard by Example V.1.7 1.0 Preface The following document provides a detailed and easy to understand explanation of the implementation of the AES (RIJNDAEL)

### High Speed Software Driven AES Algorithm on IC Smartcards

SCIS 2004 The 2004 Symposium on Cryptography and Information Security Sendai, Japan, Jan.27-30, 2004 The Institute of Electronics, Information and Communication Engineers High Speed Software Driven AES

### Hardware Implementations of RSA Using Fast Montgomery Multiplications. ECE 645 Prof. Gaj Mike Koontz and Ryon Sumner

Hardware Implementations of RSA Using Fast Montgomery Multiplications ECE 645 Prof. Gaj Mike Koontz and Ryon Sumner Overview Introduction Functional Specifications Implemented Design and Optimizations

### Advanced Encryption Standard by Example. 1.0 Preface. 2.0 Terminology. Written By: Adam Berent V.1.5

Written By: Adam Berent Advanced Encryption Standard by Example V.1.5 1.0 Preface The following document provides a detailed and easy to understand explanation of the implementation of the AES (RIJNDAEL)

### An Instruction Set Extension for Fast and Memory-Efficient AES Implementation

An Instruction Set Extension for Fast and Memory-Efficient AES Implementation Stefan Tillich, Johann Großschädl, and Alexander Szekely Graz University of Technology Institute for Applied Information Processing

### Reconfigurable Architecture Requirements for Co-Designed Virtual Machines

Reconfigurable Architecture Requirements for Co-Designed Virtual Machines Kenneth B. Kent University of New Brunswick Faculty of Computer Science Fredericton, New Brunswick, Canada ken@unb.ca Micaela Serra

### Computer Organization and Architecture

Computer Organization and Architecture Chapter 9 Computer Arithmetic Arithmetic & Logic Unit Performs arithmetic and logic operations on data everything that we think of as computing. Everything else in

### An Introduction to Galois Fields and Reed-Solomon Coding

An Introduction to Galois Fields and Reed-Solomon Coding James Westall James Martin School of Computing Clemson University Clemson, SC 29634-1906 October 4, 2010 1 Fields A field is a set of elements on

### Keywords: Vedic mathematics, mix column, inverse mix column, look-up table, Galois field, AES, encryption, Verilog

IJESRT INTERNATIONAL JOURNAL OF ENGINEERING SCIENCES & RESEARCH TECHNOLOGY A NOVEL ARCHITECTURE FOR INVERSE MIX COLUMNS OPERATION IN AES USING VEDIC MATHEMATICS Shrita G, Basavaraj S M Department of Telecommunication,

### AES Power Attack Based on Induced Cache Miss and Countermeasure

AES Power Attack Based on Induced Cache Miss and Countermeasure Guido Bertoni, Vittorio Zaccaria STMicroelectronics, Advanced System Technology Agrate Brianza - Milano, Italy, {guido.bertoni, vittorio.zaccaria}@st.com

### Cache based Timing Attacks on Embedded Systems

Cache based Timing Attacks on Embedded Systems Malte Wienecke Monday 20 th July, 2009 Master Thesis Ruhr-Universität Bochum Chair for Embedded Security Prof. Dr.-Ing. Christof Paar Advisor: Dipl.-Ing.

### Stream Ciphers. Example of Stream Decryption. Example of Stream Encryption. Real Cipher Streams. Terminology. Introduction to Modern Cryptography

Introduction to Modern Cryptography Lecture 2 Symmetric Encryption: Stream & Block Ciphers Stream Ciphers Start with a secret key ( seed ) Generate a keying stream i-th bit/byte of keying stream is a function

### Development of Next Generation Encryption Algorithm for Data Transmission in 3G/4G network

Available online at www.sciencedirect.com ScienceDirect Procedia Computer Science 79 (2016 ) 1044 1050 7th International Conference on Communication, Computing and Virtualization 2016 Development of Next

### Area optimized in storage area network using Novel Mix column Transformation in Masked AES

Area optimized in storage area network using Novel Mix column Transformation in Masked AES Mrs.S.Anitha #1, Ms.M.Suganya #2 #1 Assistant professor, #2 P.G.Scholar, II M.E.VLSI Design #1,#2 Department of

### AES-CBC Software Execution Optimization

AES-CBC Software Execution Optimization Razvi Doomun*, Jayramsingh Doma, Sundeep Tengur Computer Science and Engineering, University of Mauritius r.doomun@uom.ac.mu, kartouss@gmail.com, tempo14@gmail.com

### Unit 5 Central Processing Unit (CPU)

Unit 5 Central Processing Unit (CPU) Introduction Part of the computer that performs the bulk of data-processing operations is called the central processing unit (CPU). It consists of 3 major parts: Register

### Mathematics of Cryptography Modular Arithmetic, Congruence, and Matrices. A Biswas, IT, BESU SHIBPUR

Mathematics of Cryptography Modular Arithmetic, Congruence, and Matrices A Biswas, IT, BESU SHIBPUR McGraw-Hill The McGraw-Hill Companies, Inc., 2000 Set of Integers The set of integers, denoted by Z,

### An Energy Efficient ATM System Using AES Processor

www.seipub.org/eer Electrical Engineering Research (EER) Volume 1 Issue 2, April 2013 An Energy Efficient ATM System Using AES Processor Ali Nawaz *1, Fakir Sharif Hossain 2, Khan Md. Grihan 3 1 Department

### Computer Systems Structure Main Memory Organization

Computer Systems Structure Main Memory Organization Peripherals Computer Central Processing Unit Main Memory Computer Systems Interconnection Communication lines Input Output Ward 1 Ward 2 Storage/Memory

### A Practical Parallel CRC Generation Method

F EATURE ARTICLE by Evgeni Stavinov A Practical Parallel CRC Generation Method Do you understand the mechanics of the cyclic redundancy check (CRC) well enough to build a customized parallel CRC circuit

### Specification of Cryptographic Technique PC-MAC-AES. NEC Corporation

Specification of Cryptographic Technique PC-MAC-AS NC Corporation Contents 1 Contents 1 Design Criteria 2 2 Specification 2 2.1 Notations............................................. 2 2.2 Basic Functions..........................................

### DDS. 16-bit Direct Digital Synthesizer / Periodic waveform generator Rev. 1.4. Key Design Features. Block Diagram. Generic Parameters.

Key Design Features Block Diagram Synthesizable, technology independent VHDL IP Core 16-bit signed output samples 32-bit phase accumulator (tuning word) 32-bit phase shift feature Phase resolution of 2π/2

### Accelerate Cloud Computing with the Xilinx Zynq SoC

X C E L L E N C E I N N E W A P P L I C AT I O N S Accelerate Cloud Computing with the Xilinx Zynq SoC A novel reconfigurable hardware accelerator speeds the processing of applications based on the MapReduce

### A FPGA based Generic Architecture for Polynomial Matrix Multiplication in Image Processing

A FPGA based Generic Architecture for Polynomial Matrix Multiplication in Image Processing Prof. Dr. S. K. Shah 1, S. M. Phirke 2 Head of PG, Dept. of ETC, SKN College of Engineering, Pune, India 1 PG

### Optimization Techniques in C. Team Emertxe

Optimization Techniques in C Team Emertxe Optimization Techniques Basic Concepts Programming Algorithm and Techniques Optimization Techniques Basic Concepts What is Optimization Methods Space and Time

### 6 Block Ciphers. 6.1 Block Ciphers CA642: CRYPTOGRAPHY AND NUMBER THEORY 1

CA642: CRYPTOGRAPHY AND NUMBER THEORY 1 6 Block Ciphers 6.1 Block Ciphers Block Ciphers Plaintext is divided into blocks of fixed length and every block is encrypted one at a time. A block cipher is a

### GMP implementation on CUDA - A Backward Compatible Design With Performance Tuning

1 GMP implementation on CUDA - A Backward Compatible Design With Performance Tuning Hao Jun Liu, Chu Tong Edward S. Rogers Sr. Department of Electrical and Computer Engineering University of Toronto haojun.liu@utoronto.ca,

### PHYSICAL UNCLONABLE FUNCTION (PUF) BASED RANDOM NUMBER GENERATOR

PHYSICAL UNCLONABLE FUNCTION (PUF) BASED RANDOM NUMBER GENERATOR Ali Sadr, Mostafa Zolfaghari-Nejad Department of Electrical Engineering, Iran University of Science and Technology ABSTRACT Tehran, Iran

### The mathematics of RAID-6

The mathematics of RAID-6 H. Peter Anvin First version 20 January 2004 Last updated 20 December 2011 RAID-6 supports losing any two drives. syndromes, generally referred P and Q. The way

### AES implementation on Smart Card

1 AES implementation on Smart Card Pongnukit Juthamas, Tingthanathikul Witit Abstract This paper focus on the cryptographic algorithm on smart card. Many algorithms are used to implement on smart card.

### Design and Implementation of an On-Chip timing based Permutation Network for Multiprocessor system on Chip

Design and Implementation of an On-Chip timing based Permutation Network for Multiprocessor system on Chip Ms Lavanya Thunuguntla 1, Saritha Sapa 2 1 Associate Professor, Department of ECE, HITAM, Telangana

### LogiCORE IP AXI Performance Monitor v2.00.a

LogiCORE IP AXI Performance Monitor v2.00.a Product Guide Table of Contents IP Facts Chapter 1: Overview Target Technology................................................................. 9 Applications......................................................................

### Fast Implementations of AES on Various Platforms

Fast Implementations of AES on Various Platforms Joppe W. Bos 1 Dag Arne Osvik 1 Deian Stefan 2 1 EPFL IC IIF LACAL, Station 14, CH-1015 Lausanne, Switzerland {joppe.bos, dagarne.osvik}@epfl.ch 2 Dept.

### 7a. System-on-chip design and prototyping platforms

7a. System-on-chip design and prototyping platforms Labros Bisdounis, Ph.D. Department of Computer and Communication Engineering 1 What is System-on-Chip (SoC)? System-on-chip is an integrated circuit

### FPGA IMPLEMENTATION OF 4D-PARITY BASED DATA CODING TECHNIQUE

FPGA IMPLEMENTATION OF 4D-PARITY BASED DATA CODING TECHNIQUE Vijay Tawar 1, Rajani Gupta 2 1 Student, KNPCST, Hoshangabad Road, Misrod, Bhopal, Pin no.462047 2 Head of Department (EC), KNPCST, Hoshangabad

### MICROPROCESSOR. Exclusive for IACE Students www.iace.co.in iacehyd.blogspot.in Ph: 9700077455/422 Page 1

MICROPROCESSOR A microprocessor incorporates the functions of a computer s central processing unit (CPU) on a single Integrated (IC), or at most a few integrated circuit. It is a multipurpose, programmable

### Optimising the resource utilisation in high-speed network intrusion detection systems.

Optimising the resource utilisation in high-speed network intrusion detection systems. Gerald Tripp www.kent.ac.uk Network intrusion detection Network intrusion detection systems are provided to detect

### Networking Virtualization Using FPGAs

Networking Virtualization Using FPGAs Russell Tessier, Deepak Unnikrishnan, Dong Yin, and Lixin Gao Reconfigurable Computing Group Department of Electrical and Computer Engineering University of Massachusetts,

### Intel Advanced Encryption Standard (AES) New Instructions Set

White Paper Shay Gueron Mobility Group, Israel Development Center Intel Corporation Intel Advanced Encryption Standard (AES) New Instructions Set Intel AES New Instructions are a set of instructions available

### HARDWARE IMPLEMENTATION OF AES-CCM FOR ROBUST SECURE WIRELESS NETWORK

HARDWARE IMPLEMENTATION OF AES-CCM FOR ROBUST SECURE WIRELESS NETWORK Arshad Aziz and Nassar Ikram National University of Sciences & Technology (NUST) Pakistan. arshad@khi.paknet.com.pk (Ph: +92-333-2228300)

### Computer Architecture

Computer Architecture Random Access Memory Technologies 2015. április 2. Budapest Gábor Horváth associate professor BUTE Dept. Of Networked Systems and Services ghorvath@hit.bme.hu 2 Storing data Possible

### Advanced Microprocessors RISC & DSP

Advanced Microprocessors RISC & DSP RISC & DSP :: Slide 1 of 23 RISC Processors RISC stands for Reduced Instruction Set Computer Compared to CISC Simpler Faster RISC & DSP :: Slide 2 of 23 Why RISC? Complex

### Shift Cipher. Ahmet Burak Can Hacettepe University. Substitution Cipher. Enigma Machine. How perfect secrecy can be satisfied?

One Time Pad, Block Ciphers, Encryption Modes Ahmet Burak Can Hacettepe University abc@hacettepe.edu.tr Basic Ciphers Shift Cipher Brute-force attack can easily break Substitution Cipher Frequency analysis

### Solution of Linear Systems

Chapter 3 Solution of Linear Systems In this chapter we study algorithms for possibly the most commonly occurring problem in scientific computing, the solution of linear systems of equations. We start