Paper 2022/963

Resolving the Doubts: On the Construction and Use of ResNets for Side-channel Analysis

Sengim Karayalcin, Delft University of Technology
Stjepan Picek, Radboud University Nijmegen

The deep learning-based side-channel analysis gave some of the most prominent side-channel attacks against protected targets in the past few years. To this end, the research community's focus has been on creating 1) powerful and 2) (if possible) minimal multilayer perceptron or convolutional neural network architectures. Currently, we see that computationally intensive hyperparameter tuning methods (e.g., Bayesian optimization or reinforcement learning) provide the best results. However, as targets with more complex countermeasures become available, these minimal architectures may be insufficient, and we will require novel deep learning approaches. This work explores how residual neural networks (ResNets) perform in side-channel analysis and how to construct deeper ResNets capable of working with larger input sizes and requiring minimal tuning. The resulting architectures obtained by following our guidelines are significantly deeper than commonly seen in side-channel analysis, require minimal hyperparameter tuning for specific datasets, and offer competitive performance with state-of-the-art methods across several datasets. Additionally, the results indicate that ResNets work especially well when the number of profiling traces and features in a trace is large.

Available format(s)
Attacks and cryptanalysis
Publication info
Deep learning ResNet Side-channel Analysis Residual Blocks
Contact author(s)
s karayalcin @ student tudelft nl
stjepan picek @ ru nl
2022-07-28: approved
2022-07-26: received
See all versions
Short URL
Creative Commons Attribution


      author = {Sengim Karayalcin and Stjepan Picek},
      title = {Resolving the Doubts: On the Construction and Use of ResNets for Side-channel Analysis},
      howpublished = {Cryptology ePrint Archive, Paper 2022/963},
      year = {2022},
      note = {\url{}},
      url = {}
Note: In order to protect the privacy of readers, does not use cookies or embedded third party content.