Les attaques par canaux auxiliaires sont une redoutable menace contre les implémentations embarquées. Nous vous expliquons leur fonctionnement et illustrons comment simuler des fuites de consommation de courant afin d’analyser et protéger un code.
Introduites à la fin des années 1990, les attaques par canaux auxiliaires (SCA pour Side-Channel Attacks, en anglais) ont introduit une menace importante face aux implémentations d’algorithmes cryptographiques. La réalité physique de l’exécution du code était pour la première fois exploitée afin d’extraire des secrets qu’on pensait pourtant bien sécurisés. Nous proposons ici de décrire le principe de ces attaques, ainsi qu’un exemple basique de stratégie pour s’en protéger.
1. Notre cible : tiny-AES
Afin d’illustrer le propos de cet article, nous allons étudier une implémentation non protégée, que nous chercherons ensuite à sécuriser.
Pour que le lecteur puisse reproduire facilement certaines expériences, nous utiliserons l’implémentation libre tiny-AES-c (https://github.com/kokke/tiny-AES-c). Nous insistons sur le fait que ce projet ne considère pas, par défaut, les contremesures aux attaques par analyse de courant. Afin...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première