Visible to the public Investigating the Effects Various Compilers Have on the Electromagnetic Signature of a Cryptographic Executable

TitleInvestigating the Effects Various Compilers Have on the Electromagnetic Signature of a Cryptographic Executable
Publication TypeConference Paper
Year of Publication2017
AuthorsFrieslaar, Ibraheem, Irwin, Barry
Conference NameProceedings of the South African Institute of Computer Scientists and Information Technologists
PublisherACM
Conference LocationNew York, NY, USA
ISBN Number978-1-4503-5250-5
KeywordsC/C++, compiler security, compilers, composability, CPA, electromagnetic, pubcrawl, Raspberry Pi, Resiliency, Tamper resistance
Abstract

This research investigates changes in the electromagnetic (EM) signatures of a cryptographic binary executable based on compile-time parameters to the GNU and clang compilers. The source code was compiled and executed on a Raspberry Pi 2, which utilizes the ARMv7 CPU. Various optimization flags are enabled at compile-time and the output of the binary executable's EM signatures are captured at run-time. It is demonstrated that GNU and clang compilers produced different EM signature on program execution. The results indicated while utilizing the O3 optimization flag, the EM signature of the program changes. Additionally, the g++ compiler demonstrated fewer instructions were required to run the executable; this related to fewer EM emissions leaked. The EM data from the various compilers under different optimization levels was used as input data for a correlation power analysis attack. The results indicated that partial AES-128 encryption keys was possible. In addition, the fewest subkeys recovered was when the clang compiler was used with level O2 optimization. Finally, the research was able to recover 15 of 16 AES-128 cryptographic algorithm's subkeys, from the the Pi.

URLhttp://doi.acm.org/10.1145/3129416.3129436
DOI10.1145/3129416.3129436
Citation Keyfrieslaar_investigating_2017