combination with multi threads and a task scheduler
to generate dynamic power traces. We have inves-
tigated the use of a task scheduler to generate noise
at specific areas in the AES-128 algorithm to miti-
gate the CPA attack. The dynamic power traces have
shown to be an effective countermeasure, as it ob-
scures the CPA into predicting the incorrect secret
key. Furthermore, the countermeasure was shown
to work on an ATmega and an ATxmega microcon-
troller.
In both scenarios the countermeasure reduced the
correlation accuracy significantly and prevented the
correct secret key from being predicted. The research
has also displayed that the extra overhead introduced
by the countermeasure is minimal in execution time
and that the basic SCA resistance has increased when
using this countermeasure. Therefore, this research
has introduced a novel low overheard software solu-
tion that uses multi threads and a task scheduler for a
hardware security problem.
8 FUTURE WORK
Although, the countermeasure has demonstrated that
it is able to mitigate the CPA attack, the issue of
performing instructions sequentially still remains on
these microcontrollers. It is intended to improve on
this work by implementing the countermeasure on an
embedded device that supports true multi threading
functionality where it would be able to execute the
noise and the AES threads in parallel. Additionally, it
is aimed to create a system where the algorithm learns
to manipulate the data such that it never produces the
same power trace twice.
ACKNOWLEDGEMENTS
The authors would like to thank the department of
Modelling and Digital Science at CSIR for providing
funding and support.
REFERENCES
Bl¨omer, J., Guajardo, J., and Krummel, V. (2004). Provably
secure masking of AES. In Selected Areas in Cryp-
tography, pages 69–83. Springer.
Brier, E., Clavier, C., and Olivier, F. (2004). Correla-
tion power analysis with a leakage model. In Cryp-
tographic Hardware and Embedded Systems-CHES
2004, pages 16–29. Springer.
Daemen, J. and Rijmen, V. (2002). The design of rijndael:
AES. The Advanced Encryption Standard.
Ferreyra, D. (2008). AVR development.
http://www.bourbonstreetsoftware.com/AVRDevelop
ment.html.
Hoogvorst, P., Duc, G., and Danger, J.-L. (2011). Software
implementation of dual-rail representation. COSADE,
February, pages 24–25.
Kocher, P., Jaffe, J., and Jun, B. (1999). Differential power
analysis. In Advances in CryptologyCRYPTO99,
pages 388–397. Springer.
Kocher, P., Jaffe, J., Jun, B., and Rohatgi, P. (2011). In-
troduction to differential power analysis. Journal of
Cryptographic Engineering, 1(1):5–27.
Kunikowski, W., Czerwi´nski, E., Olejnik, P., and Awre-
jcewicz, J. (2015). An overview of ATmega AVR mi-
crocontrollers used in scientific research and industrial
applications. Pomiary, Automatyka, Robotyka, 19.
Mestiri, H., Benhadjyoussef, N., Machhout, M., and Tourki,
R. (2013). A comparative study of power consump-
tion models for CPA attack. International Journal of
Computer Network and Information Security, 5(3):25.
O’Flynn, C. and Chen, Z. (2012). A case study of side-
channel analysis using decoupling capacitor power
measurement with the OpenADC. In Foundations and
Practice of Security, pages 341–356. Springer.
O’Flynn, C. and Chen, Z. D. (2014). Chipwhisperer: An
open-source platform for hardware embedded security
research. In Constructive Side-Channel Analysis and
Secure Design, pages 243–260. Springer.
O’Flynn, C. and Chen, Z. D. (2015). Side channel power
analysis of an AES-256 bootloader. In Electrical and
Computer Engineering (CCECE), 2015 IEEE 28th
Canadian Conference on, pages 750–755. IEEE.
Oswald, E. and Schramm, K. (2005). An efficient mask-
ing scheme for AES software implementations. In
Information Security Applications, pages 292–305.
Springer.
RANDOM.ORG (2016). Introduction to randomness and
random numbers. https://www.random.org/random
ness/.
Schramm, K., Leander, G., Felke, P., and Paar, C. (2004). A
collision-attack on AES. In Cryptographic Hardware
and Embedded Systems-CHES 2004, pages 163–175.
Springer.
Tillich, S. and Großsch¨adl, J. (2007). Power analysis re-
sistant AES implementation with instruction set exten-
sions. Springer.
Tillich, S., Herbst, C., and Mangard, S. (2007). Protecting
AES software implementations on 32-bit processors
against power analysis. In Applied Cryptography and
Network Security, pages 141–157. Springer.
Veyrat-Charvillon, N., Medwed, M., Kerckhof, S., and
Standaert, F.-X. (2012). Shuffling against side-
channel attacks: A comprehensive study with cau-
tionary note. In Advances in Cryptology–ASIACRYPT
2012, pages 740–757. Springer.
ZTEX (2016). Spartan 6 LX9 to LX25 FPGA board.
http://www.ztex.de/usb-fpga-1/usb-fpga-1.11.e.html.