2025
ECTester: Reverse-engineering side-channel countermeasures of ECC implementations
SUCHÁNEK, Vojtěch; Ján JANČÁR; Jan KVAPIL; Petr ŠVENDA; Lukasz Michal CHMIELEWSKI et al.Základní údaje
Originální název
ECTester: Reverse-engineering side-channel countermeasures of ECC implementations
Autoři
Vydání
4. vyd. Německo, IACR Transactions on Cryptographic Hardware and Embedded Systems, od s. 290-316, 27 s. 2025
Nakladatel
Ruhr-University of Bochum
Další údaje
Jazyk
angličtina
Typ výsledku
Stať ve sborníku
Obor
10201 Computer sciences, information science, bioinformatics
Stát vydavatele
Německo
Utajení
není předmětem státního či obchodního tajemství
Forma vydání
elektronická verze "online"
Odkazy
Označené pro přenos do RIV
Ano
Kód RIV
RIV/00216224:14330/25:00141400
Organizační jednotka
Fakulta informatiky
ISSN
EID Scopus
Klíčová slova anglicky
elliptic-curve cryptography; black-box implementations; testing; vulnerabilities; reverse-engineering; ECDH; ECDSA
Příznaky
Mezinárodní význam, Recenzováno
Změněno: 29. 9. 2025 23:24, RNDr. Ján Jančár, Ph.D.
Anotace
V originále
Developers implementing elliptic curve cryptography (ECC) face a wide range of implementation choices created by decades of research into elliptic curves. The literature on elliptic curves offers a plethora of curve models, scalar multipliers, and addition formulas, but this comes with the price of enabling attacks to also use the rich structure of these techniques. Navigating through this area is not an easy task and developers often obscure their choices, especially in black-box hardware implementations. Since side-channel attackers rely on the knowledge of the implementation details, reverse engineering becomes a crucial part of attacks. This work presents ECTester --- a tool for testing black-box ECC implementations. Through various test suites, \ectester observes the behavior of the target implementation against known attacks but also non-standard inputs and elliptic curve parameters. We analyze popular ECC libraries and smartcards and show that some libraries and most smartcards do not check the order of the input points and improperly handle the infinity point. Based on these observations, we design new techniques for reverse engineering scalar randomization countermeasures that are able to distinguish between group scalar randomization, additive, multiplicative or Euclidean splitting. Our techniques do not require side-channel measurements; they only require the ability to set custom domain parameters, and are able to extract not only the size but also the exact value of the random mask used. Using the techniques, we successfully reverse-engineered the countermeasures on 13 cryptographic smartcards from 5 major manufacturers -- all but one we tested on. Finally, we discuss what mitigations can be applied to prevent such reverse engineering, and whether it is possible at all.
Návaznosti
| MUNI/A/1709/2024, interní kód MU |
| ||
| VJ02010010, projekt VaV |
|