An Architecture-Independent Instruction Shuffler to Protect against Side-Channel Attacks

被引:25
作者
Bayrak, Ali Galip [1 ]
Velickovic, Nikola [1 ]
Ienne, Paolo [1 ]
Burleson, Wayne [2 ]
机构
[1] Ecole Polytech Fed Lausanne, Sch Comp & Commun Sci, CH-1015 Lausanne, Switzerland
[2] Univ Massachusetts, Dept Elect & Comp Engn, Amherst, MA 01003 USA
关键词
Design; Security; Performance; Side-channel attacks; instruction shuffler; random permutation generation; BIT PERMUTATIONS; DESIGN;
D O I
10.1145/2086696.2086699
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Embedded cryptographic systems, such as smart cards, require secure implementations that are robust to a variety of low-level attacks. Side-Channel Attacks (SCA) exploit the information such as power consumption, electromagnetic radiation and acoustic leaking through the device to uncover the secret information. Attackers can mount successful attacks with very modest resources in a short time period. Therefore, many methods have been proposed to increase the security against SCA. Randomizing the execution order of the instructions that are independent, i.e., random shuffling, is one of the most popular among them. Implementing instruction shuffling in software is either implementation specific or has a significant performance or code size overhead. To overcome these problems, we propose in this work a generic custom hardware unit to implement random instruction shuffling as an extension to existing processors. The unit operates between the CPU and the instruction cache (or memory, if no cache exists), without any modification to these components. Both true and pseudo random number generators are used to dynamically and locally provide the shuffling sequence. The unit is mainly designed for in-order processors, since the embedded devices subject to these kind of attacks use simple in-order processors. More advanced processors (e.g., superscalar, VLIW or EPIC processors) are already more resistant to these attacks because of their built-in ILP and wide word size. Our experiments on two different soft in-order processor cores, i.e., OpenRISC and MicroBlaze, implemented on FPGA show that the proposed unit could increase the security drastically with very modest resource overhead. With around 2% area, 1.5% power and no performance overhead, the shuffler increases the effort to mount a successful power analysis attack on AES software implementation over 360 times.
引用
收藏
页数:19
相关论文
共 42 条
[1]  
Akkar M.-L., 2001, Cryptographic Hardware and Embedded Systems - CHES 2001. Third International Workshop. Proceedings (Lecture Notes in Computer Science Vol.2162), P309
[2]  
Alfke P., 1996, Efficient Shift Registers, LFSR Counters, and Long Pseudo-Random Sequence Generators
[3]  
[Anonymous], GEMALTO NET USER GUI
[4]  
[Anonymous], P FAST SOFTW ENCR FS
[5]  
[Anonymous], 2009, SIDE CHANNEL ATTACK
[6]  
[Anonymous], SECURECORE PROC
[7]  
[Anonymous], MICROCHIP KEELOQ
[8]  
[Anonymous], P TENCON
[9]  
[Anonymous], SIMPL SIM SOFTW
[10]  
[Anonymous], THESIS PUNJABI U IND