Des attaques concrètes
Analyse de consommation (power analysis) et EM
Chronométrer n'est qu'un début. Un composant électronique consomme du courant, et cette consommation raconte, instant par instant, ce qu'il est en train de calculer.
Pourquoi la consommation trahit
Dans une puce, chaque transistor qui bascule de 0 à 1 (ou l'inverse) appelle un peu de courant. Or le nombre de bascules dépend à la fois de l'opération effectuée et des données manipulées. Manipuler un octet plein de 1 ne coûte pas la même énergie qu'un octet plein de 0.
Un attaquant qui branche une petite résistance et un oscilloscope sur l'alimentation d'une carte à puce enregistre une trace de consommation : la courbe du courant au cours du temps.
courant
| _ _
| _ | | _ | | <- pics = opérations coûteuses
| | | _| | | | _| |
| _| |_| | |__| |___| | |___
+--------------------------------> temps
ronde 1 ronde 2 ronde 3
SPA : lire directement la courbe
La SPA (Simple Power Analysis) consiste à interpréter une seule trace à l'œil ou presque. Sur RSA, chaque bit de l'exposant secret déclenche « carré » ou « carré + multiplication » : les deux motifs n'ont pas la même forme sur la courbe. On lit ainsi la clé bit par bit, directement sur le tracé.
DPA : la statistique fait le reste
Quand le signal est trop noyé dans le bruit pour être lu à l'œil, la DPA (Differential Power Analysis) entre en jeu. Elle est redoutable car elle n'exige pas de comprendre finement le circuit :
- On enregistre des milliers de traces pour des textes différents.
- Pour une hypothèse sur un petit bout de clé, on prédit la consommation à un instant donné.
- On trie les traces selon cette prédiction et on calcule une différence de moyennes.
- La bonne hypothèse fait apparaître un pic ; les mauvaises se noient dans le bruit.
En répétant sur chaque morceau de clé, on reconstitue la totalité. La DPA a cassé des cartes bancaires et des décodeurs de première génération.
Les cousins : EM et acoustique
Le courant n'est pas le seul témoin :
| Canal | Support physique |
|---|---|
| Électromagnétique | ondes rayonnées par la puce, captées par une sonde |
| Acoustique | bruit très ténu des composants (bobines, condensateurs) |
| Thermique | échauffement local |
L'analyse électromagnétique est particulièrement redoutable : elle se fait à distance, sans contact, et peut viser une zone précise de la puce.
Les contre-mesures
On ne peut pas empêcher une puce de consommer du courant, mais on peut casser le lien entre consommation et secret :
- Masquage : mélanger les données avec de l'aléa avant de calculer, de sorte que la consommation ne reflète plus la vraie valeur.
- Bruit : ajouter des calculs factices, un ordonnancement aléatoire, pour noyer le signal.
- Équilibrage : concevoir le circuit pour qu'une bascule
0->1coûte autant qu'une1->0.
Aucune n'est parfaite seule ; on les combine, et on évalue la puce en laboratoire.
En résumé
La consommation électrique d'une puce dépend des opérations et des données : la SPA lit le secret sur une seule trace, la DPA l'extrait statistiquement de milliers de traces malgré le bruit. Les émanations EM et acoustiques offrent les mêmes prises, parfois à distance. On se défend par masquage, bruit et équilibrage, combinés.

