Side-channel attacks target cryptographic implementations by measuring physical quantities such as current consumption or electromagnetic emissions during the execution of cryptographic functions on a system. The resulting traces are then exploited to recover secret encryption or signature keys. Among the countermeasures used, masking is a technique that involves dividing secret variables into n parts, called "shares," such that the recombination of n - 1 shares yields no information about the secret. The absence of secret leakages in the software and hardware implementations of masking schemes generally needs to be verified, especially as the leakage model becomes more precise.
This manuscript first provides an overview of the various research topics, particularly hardware-related ones, on which I have worked at LIP6. In a second part, the document will focus on contributions to securing cryptographic systems against side-channel attacks, and in particular the methods and tools for proving the masking countermeasure, taking into account different levels of abstraction for the leakage model.