A highly efficient cyber-physical-attack on smart card with AES-128 algorithm implementation
The Advanced Encryption Standard (AES) cipher is the most widely used algorithm used today to secure highly-confidential information. Side-channel attacks (SCA) target implementations of the cipher to reveal the secret keys used for encryption and decryption. Correlation Power Analysis (CPA) is a ty...
Saved in:
Main Author: | |
---|---|
Other Authors: | |
Format: | Final Year Project |
Language: | English |
Published: |
2018
|
Subjects: | |
Online Access: | http://hdl.handle.net/10356/75504 |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Institution: | Nanyang Technological University |
Language: | English |
Summary: | The Advanced Encryption Standard (AES) cipher is the most widely used algorithm used today to secure highly-confidential information. Side-channel attacks (SCA) target implementations of the cipher to reveal the secret keys used for encryption and decryption. Correlation Power Analysis (CPA) is a type of SCA that was selected due to its advantages over other SCA, namely Simple Power Analysis (SPA) and Differential Power Analysis (DPA). Smartcards are just some devices that utilize AES to secure data due to their usage in industries like the military, banking and government. Hence, this project will focus on revealing the secret keys used on AES-128 secured smartcards. SCA were conducted on AES-128 secured smartcards, and the power consumption leaked measured. This data is then inputted into a program designed to successfully reveal the 16 sub-keys used to secure the smartcard. This program was designed to model the AES algorithm, and correlate the derived power model with the actual power consumption leaked. Ultimately, the sub-keys would be revealed according to the highest correlation values. Having utilised a Look-Up-Table (LUT) based AES S-Box implementation, the program is designed to be faster than conventional S-Box implementations. This is because values are pre-computed as opposed to requiring computation during implementation. |
---|