Injection de fautes et de logiciels sur les implémentations cryptographiques
Institution:
Paris 7Disciplines:
Directors:
Abstract EN:
The cryptography is very widespread inside smartcards or secure devices. These embedded cryptoSystems are proved theoretically secure. Nevertheless, they infère in far or near environment. So active perturbations, named fault analysis, or passive eavesdropping, called side-channel analysis, constitute real threats against hardware and software implementations. This thesis dealts with fault and software injections on cryptographie protocols. The fault analysis and side-channnel analysis give some more information on hardware and software implementations. The internai state of cryptographic computations, secret or private keys or private algorithms are all potential targets of this kind of analysis. In this thesis, a statistical analysis based on fault attack on the carry of Schnorr scheme operations gives access to private key in asymmetric signature or ciphering. Then, code injection in order to monitor memory cache of computer allows one to retrieve secret permutation table for stream cipher RC4, due to timing analysis on cache lines. Then, two differential analysis on internai rounds of AES enable to obtain secret key for the three different AES variants. Finally, a new consequence of fault model, which bypasses one instruction, allows one to take over a host. It is proved that it is important to protect cryptographic implémentations with proper countermeasures against fault analysis and side-channel analysis.
Abstract FR:
La cryptographie est le plus souvent contenue dans des cartes à puces ou des composants sécurisés, tels des coffres-forts. Ces cryptosystèmes embarqués sont démontrés sûrs de manière théorique. Par contre, ils interfèrent avec leur environnement proche et lointain. Ainsi les perturbations actives, appelées analyses en fautes, et les écoutes passives, dénommées analyses en canaux auxiliaires, se révèlent être de réelles menaces sur les implémentations logicielles et matérielles. Cette thèse considère l'injection de fautes et de logiciels sur les protocoles cryptographiques. Les analyses en fautes et en canaux auxiliaires fournissent des informations supplémentaires sur les implémentations matérielles et logicielles. Les états intermédiaires des calculs cryptographiques, les clefs secrètes ou privées ou les algorithmes propriétaires sont des cibles potentielles de ces analyses. Dans cette thèse, une analyse statistique issue de l'analyse en fautes sur la retenue d'une opération des schémas de Schnorr donne accès à la clef privée de signature ou de chiffrement asymétrique. Puis, une injection de code pour surveiller le cache mémoire d'un ordinateur lors d'un chiffrement par flot RC4 permet de retrouver la table de permutation secrète grâce à une analyse en temps sur les lignes de caches. Puis, deux analyses différentielles sur les tours internes de l'AES permettent d'obtenir la clef secrète pour les trois variantes de l'AES. Enfin, une nouvelle conséquence du modèle de faute qui passe outre une instruction permet de prendre le contrôle d'un hôte embarqué. Ces analyses ont démontré l'importance de protéger les implémentations cryptographiques par des contre-mesures adaptées face aux analyses en fautes et en canaux auxiliaires.