** The dataset and code are for research purpose only**
TripletPower can reduce the number of training traces for deep-learning side-channel attacks. Specifically, TripletPower leverages Triplet Networks (a type of deep metric learning) and learn robust feature space with a fewer number of traces. As a result, TripletPower only needs hundreds of training traces to train a ML model to recover AES encryption keys on microcontrollers while a CNN requires thousands of traces. We observe promising results from AVR XMEGA (8-bit) and also ARM STM32 (32-bit) microcontrollers. In addition to profiling attacks in both same-device and cross-device settings, TripletPower can also be extended to non-profiling attacks to succesfully recover AES encryption keys with on-the-fly labeling. More details can be found in our HOST'23 paper below.
When reporting results that use the dataset or code in this repository, please cite the paper below:
Chenggang Wang, Jimmy Dani, Shane Reilly, Austhen Brownfield, Boyang Wang, John Emmert, "TripletPower: Deep-Learning Side-Channel Attacks over Few Traces," IEEE International Symposium on Hardware Oriented Security and Trust (HOST 2023), San Jose, CA, USA, May 1-4 2023
This project is written in Python 3.6 and Tensorflow 2.3.1. Our experiments is running with a GPU machine.
The codebased include 3 folders: cnn, triplet and tools
- cnn: include the codes for runing cnn method
- triplet: include the codes for runing triplet method
- on-the-fly: include the codes for runing on-the-fly method
- tools: include the codes of all support functions
Our datasets used in this study can be accessed through the link below (last modified Nov. 2023):
Note: the above link need to be updated every 6 months due to certain settings of OneDrive. If you find the links are expired and you cannot access the data, please feel free to email us (boyang.wang@uc.edu). We will be update the links as soon as we can. Thanks!
- For CNN based method, please follow the description in cnn/README.md
- For Triplet based method, please follow the description in triplet/README.md
Chenggang Wang: wang2c9@mail.uc.edu
Boyang Wang: boyang.wang@uc.edu