DocumentCode :
3190703
Title :
A reconfigurable architecture for searching optimal software code to implement block cipher permutation matrices
Author :
Kavun, E.B. ; Leander, Gregor ; Yalcind, Tolga
Author_Institution :
Horst Gortz Inst. for IT-Security, Ruhr-Univ. Bochum, Bochum, Germany
fYear :
2013
fDate :
9-11 Dec. 2013
Firstpage :
1
Lastpage :
8
Abstract :
Programming in embedded systems has always been a challenge. Highly-constrained nature of embedded devices invalidates conventional coding practices. The whole practice turns into a skill game that heavily depends on the personal skills and experience of the programmer. Embedded security applications are no exceptions. Efficient software implementation of symmetric cryptography primitives such as substitution or permutation layers is a hard task and no systematic approach exists. In this study, we propose an efficient reconfigurable hardware architecture to find the most optimal code for the realization of block cipher permutation layers on embedded microcontrollers. The proposed architecture is highly parallel and realized on two Xilinx Virtex-6 XC6VLX240T FPGAs. It operates on a limited set of instructions pertinent to implementation of linear matrices. Predetermined number of instructions is executed in a pipelined manner and the resultant output register contents are checked either for match to a target matrix or for certain cryptographic properties. The realized architecture uses instructions from 8-bit AVR instruction set. However, it can easily be modified to work with instruction sets of different processors. Using our parallel architecture, we have been able to find several good permutation layer matrices with branch number 4 that can be realized with only 8 instructions. We were able to search up to 11 instructions and cover matrices with branch number 6 as well.
Keywords :
cryptography; embedded systems; field programmable gate arrays; instruction sets; matrix algebra; microcontrollers; parallel architectures; pipeline processing; reconfigurable architectures; software engineering; AVR instruction set; Xilinx Virtex-6 XC6VLX240T FPGA; block cipher permutation layer matrices; branch number; embedded devices; embedded microcontrollers; embedded security applications; embedded systems; linear matrices; optimal software code searching; output register contents; parallel architecture; pipelined instruction execution; reconfigurable hardware architecture; symmetric cryptography primitives; Ciphers; Computer architecture; Encoding; Hardware; Registers; Software; Efficient software implementation; FPGA; Permutation layer; Reconfigurable hardware architecture; Symmetric cryptography;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Reconfigurable Computing and FPGAs (ReConFig), 2013 International Conference on
Conference_Location :
Cancun
Print_ISBN :
978-1-4799-2078-5
Type :
conf
DOI :
10.1109/ReConFig.2013.6732263
Filename :
6732263
Link To Document :
بازگشت