### Keep it Unsupervised: Horizontal Attacks Meet Deep Learning

Guilherme Perin, Lukasz Chmielewski, Lejla Batina, and Stjepan Picek

##### Abstract

To mitigate side-channel attacks, real-world implementations of public-key cryptosystems adopt state-of-the-art countermeasures based on randomization of the private or ephemeral keys. Usually, for each private key operation, a "scalar blinding" is performed using 32 or 64 randomly generated bits. Nevertheless, horizontal attacks based on a single trace still pose serious threats to protected ECC or RSA implementations. If the secrets learned through a single-trace attack contain too many wrong (or noisy) bits, the cryptanalysis methods for recovering remaining bits become impractical due to time and computational constraints. This paper proposes a deep learning-based framework to iteratively correct partially correct secret keys resulting from a clustering-based horizontal attack. By testing the trained network on scalar multiplication (or exponentiation) traces, we demonstrate that a deep neural network can significantly reduce the number of error bits from randomized scalars (or exponents). When a simple horizontal attack can recover around 52% of private key bits, the proposed iterative framework improves the private key correctness to 100%. Our attack model remains fully unsupervised and excludes the need to know where the error or noisy bits are located in each separate randomized private key.

Available format(s)
Category
Applications
Publication info
Preprint. MINOR revision.
Keywords
Side-channel AnalysisPublic-key AlgorithmsHorizontal AttacksDeep Learning
Contact author(s)
guilhermeperin7 @ gmail com
lukchmiel @ gmail com
picek stjepan @ gmail com
lejla @ cs ru nl
History
2020-10-16: last of 2 revisions
See all versions
Short URL
https://ia.cr/2020/891

CC BY

BibTeX

@misc{cryptoeprint:2020/891,
author = {Guilherme Perin and Lukasz Chmielewski and Lejla Batina and Stjepan Picek},
title = {Keep it Unsupervised: Horizontal Attacks Meet Deep Learning},
howpublished = {Cryptology ePrint Archive, Paper 2020/891},
year = {2020},
note = {\url{https://eprint.iacr.org/2020/891}},
url = {https://eprint.iacr.org/2020/891}
}

Note: In order to protect the privacy of readers, eprint.iacr.org does not use cookies or embedded third party content.