IACR News item: 24 November 2023
Andersson Calle Viera, Alexandre Berzati, Karine Heydemann
This paper presents a comprehensive analysis of the verification
algorithm of the CRYSTALS-Dilithium, focusing on a C reference
implementation. Limited research has been conducted on its susceptibility
to fault attacks, despite its critical role in ensuring the scheme’s security.
To fill this gap, we investigate three distinct fault models - randomizing
faults, zeroizing faults, and skipping faults - to identify vulnerabilities
within the verification process. Based on our analysis, we propose a
methodology for forging CRYSTALS-Dilithium signatures without knowledge
of the secret key. Instead, we leverage specific types of faults during
the verification phase and some properties about public parameters to
make these signatures accepted. Additionally, we compared different attack
scenarios after identifying sensitive operations within the verification
algorithm. The most effective requires potentially fewer fault injections
than targeting the verification check itself. Finally, we introduce a set of
countermeasures designed to thwart all the identified scenarios rendering
the verification algorithm intrinsically resistant to the presented attacks.
Additional news items may be found on the IACR news page.