The current repository is associated with the article "Methodology for efficient CNN architectures in Profiling Attacks" available on the eprints
Each dataset is composed of the following scripts and repositories:
- cnn_architecture.py: provides the script in order to train the model introduced in the article,
- exploit_pred.py: computes the evolution of the right key and saves the resulted picture,
- (Optionnal) clr.py: computes the One-Cycle Policy (see "Super-Convergence: Very Fast Training of Neural Networks Using Large Learning Rates " and "A disciplined approach to neural network hyper-parameters: Part 1 -- learning rate, batch size, momentum, and weight decay,
- "training_history": contains information related to the loss function and the accuracy,
- "model_predictions": contains information related to the model predictions,
- "fig": contains the figure related to the rank evolution,
- "..._trained_models": containts the model used in the article.
The trace sets were obtained from publicly databases:
- DPA-contest v4: http://www.dpacontest.org/v4/42_traces.php
- AES_HD dataset: https://github.com/AESHD/AES_HD_Dataset
- AES_RD dataset: https://github.com/ikizhvatov/randomdelays-traces
- ASCAD: https://github.com/ANSSI-FR/ASCAD
If you use our code, models or wish to refer to our results, please use the following BibTex entry:
@misc{cryptoeprint:2019:803,
author = {Gabriel Zaid and Lilian Bossuet and Amaury Habrard and Alexandre Venelli},
title = {Methodology for Efficient CNN Architectures in Profiling Attacks},
howpublished = {Cryptology ePrint Archive, Report 2019/803},
year = {2019},
note = {\url{https://eprint.iacr.org/2019/803}},
}