Implantations et protections de mécanismes cryptographiques logiciels et matériels

La protection des mécanismes cryptographiques constitue un enjeu important lors du développement d'un système d'information car ils permettent d'assurer la sécurisation des données traitées. Les supports utilisés étant à la fois logiciels et matériels, les techniques de protection doi...

Full description

Bibliographic Details
Main Author: Cornelie, Marie-Angela
Other Authors: Grenoble Alpes
Language:fr
Published: 2016
Subjects:
004
Online Access:http://www.theses.fr/2016GREAM029/document
id ndltd-theses.fr-2016GREAM029
record_format oai_dc
collection NDLTD
language fr
sources NDLTD
topic Offuscation de codes
Mesure de complexité
Mécanismes cryptographiques
Arithmétique des courbes elliptiques
Opérateurs arithmétiques sur les corps finis
Implantation haute performance logicielle et matérielle (FPGA)
Code obfuscation
Complexity measure
Cryptographic mechanisms
The arithmetic of Elliptic Curves
Arithmetic operators on finite fields
High performance software and hardware implementation
004
spellingShingle Offuscation de codes
Mesure de complexité
Mécanismes cryptographiques
Arithmétique des courbes elliptiques
Opérateurs arithmétiques sur les corps finis
Implantation haute performance logicielle et matérielle (FPGA)
Code obfuscation
Complexity measure
Cryptographic mechanisms
The arithmetic of Elliptic Curves
Arithmetic operators on finite fields
High performance software and hardware implementation
004
Cornelie, Marie-Angela
Implantations et protections de mécanismes cryptographiques logiciels et matériels
description La protection des mécanismes cryptographiques constitue un enjeu important lors du développement d'un système d'information car ils permettent d'assurer la sécurisation des données traitées. Les supports utilisés étant à la fois logiciels et matériels, les techniques de protection doivent s'adapter aux différents contextes.Dans le cadre d'une cible logicielle, des moyens légaux peuvent être mis en oeuvre afin de limiter l'exploitation ou les usages. Cependant, il est généralement difficile de faire valoir ses droits et de prouver qu'un acte illicite a été commis. Une alternative consiste à utiliser des moyens techniques, comme l'obscurcissement de code, qui permettent de complexifier les stratégies de rétro-conception en modifiant directement les parties à protéger.Concernant les implantations matérielles, on peut faire face à des attaques passives (observation de propriétés physiques) ou actives, ces dernières étant destructives. Il est possible de mettre en place des contre-mesures mathématiques ou matérielles permettant de réduire la fuite d'information pendant l'exécution de l'algorithme, et ainsi protéger le module face à certaines attaques par canaux cachés.Les travaux présentés dans ce mémoire proposent nos contributions sur ces sujets tes travaux. Nous étudions et présentons les implantations logicielle et matérielle réalisées pour le support de courbes elliptiques sous forme quartique de Jacobi étendue. Ensuite, nous discutons des problématiques liées à la génération de courbes utilisables en cryptographie et nous proposons une adaptation à la forme quartique de Jacobi étendue ainsi que son implantation. Dans une seconde partie, nous abordons la notion d'obscurcissement de code source. Nous détaillons les techniques que nous avons implantées afin de compléter un outil existant ainsi que le module de calcul de complexité qui a été développé. === The protection of cryptographic mechanisms is an important challenge while developing a system of information because they allow to ensure the security of processed data. Since both hardware and software supports are used, the protection techniques have to be adapted depending on the context.For a software target, legal means can be used to limit the exploitation or the use. Nevertheless, it is in general difficult to assert the rights of the owner and prove that an unlawful act had occurred. Another alternative consists in using technical means, such as code obfuscation, which make the reverse engineering strategies more complex, modifying directly the parts that need to be protected.Concerning hardware implementations, the attacks can be passive (observation of physical properties) or active (which are destructive). It is possible to implement mathematical or hardware countermeasures in order to reduce the information leakage during the execution of the code, and thus protect the module against some side channel attacks.In this thesis, we present our contributions on theses subjects. We study and present the software and hardware implementations realised for supporting elliptic curves given in Jacobi Quartic form. Then, we discuss issues linked to the generation of curves which can be used in cryptography, and we propose an adaptation to the Jacobi Quartic form and its implementation. In a second part, we address the notion of code obfuscation. We detail the techniques that we have implemented in order to complete an existing tool, and the complexity module which has been developed.
author2 Grenoble Alpes
author_facet Grenoble Alpes
Cornelie, Marie-Angela
author Cornelie, Marie-Angela
author_sort Cornelie, Marie-Angela
title Implantations et protections de mécanismes cryptographiques logiciels et matériels
title_short Implantations et protections de mécanismes cryptographiques logiciels et matériels
title_full Implantations et protections de mécanismes cryptographiques logiciels et matériels
title_fullStr Implantations et protections de mécanismes cryptographiques logiciels et matériels
title_full_unstemmed Implantations et protections de mécanismes cryptographiques logiciels et matériels
title_sort implantations et protections de mécanismes cryptographiques logiciels et matériels
publishDate 2016
url http://www.theses.fr/2016GREAM029/document
work_keys_str_mv AT corneliemarieangela implantationsetprotectionsdemecanismescryptographiqueslogicielsetmateriels
AT corneliemarieangela implementationsandprotectionsofsoftwareandhardwarecryptographicmechanisms
_version_ 1718698789521326080
spelling ndltd-theses.fr-2016GREAM0292018-06-21T05:01:36Z Implantations et protections de mécanismes cryptographiques logiciels et matériels Implementations and protections of software and hardware cryptographic mechanisms Offuscation de codes Mesure de complexité Mécanismes cryptographiques Arithmétique des courbes elliptiques Opérateurs arithmétiques sur les corps finis Implantation haute performance logicielle et matérielle (FPGA) Code obfuscation Complexity measure Cryptographic mechanisms The arithmetic of Elliptic Curves Arithmetic operators on finite fields High performance software and hardware implementation 004 La protection des mécanismes cryptographiques constitue un enjeu important lors du développement d'un système d'information car ils permettent d'assurer la sécurisation des données traitées. Les supports utilisés étant à la fois logiciels et matériels, les techniques de protection doivent s'adapter aux différents contextes.Dans le cadre d'une cible logicielle, des moyens légaux peuvent être mis en oeuvre afin de limiter l'exploitation ou les usages. Cependant, il est généralement difficile de faire valoir ses droits et de prouver qu'un acte illicite a été commis. Une alternative consiste à utiliser des moyens techniques, comme l'obscurcissement de code, qui permettent de complexifier les stratégies de rétro-conception en modifiant directement les parties à protéger.Concernant les implantations matérielles, on peut faire face à des attaques passives (observation de propriétés physiques) ou actives, ces dernières étant destructives. Il est possible de mettre en place des contre-mesures mathématiques ou matérielles permettant de réduire la fuite d'information pendant l'exécution de l'algorithme, et ainsi protéger le module face à certaines attaques par canaux cachés.Les travaux présentés dans ce mémoire proposent nos contributions sur ces sujets tes travaux. Nous étudions et présentons les implantations logicielle et matérielle réalisées pour le support de courbes elliptiques sous forme quartique de Jacobi étendue. Ensuite, nous discutons des problématiques liées à la génération de courbes utilisables en cryptographie et nous proposons une adaptation à la forme quartique de Jacobi étendue ainsi que son implantation. Dans une seconde partie, nous abordons la notion d'obscurcissement de code source. Nous détaillons les techniques que nous avons implantées afin de compléter un outil existant ainsi que le module de calcul de complexité qui a été développé. The protection of cryptographic mechanisms is an important challenge while developing a system of information because they allow to ensure the security of processed data. Since both hardware and software supports are used, the protection techniques have to be adapted depending on the context.For a software target, legal means can be used to limit the exploitation or the use. Nevertheless, it is in general difficult to assert the rights of the owner and prove that an unlawful act had occurred. Another alternative consists in using technical means, such as code obfuscation, which make the reverse engineering strategies more complex, modifying directly the parts that need to be protected.Concerning hardware implementations, the attacks can be passive (observation of physical properties) or active (which are destructive). It is possible to implement mathematical or hardware countermeasures in order to reduce the information leakage during the execution of the code, and thus protect the module against some side channel attacks.In this thesis, we present our contributions on theses subjects. We study and present the software and hardware implementations realised for supporting elliptic curves given in Jacobi Quartic form. Then, we discuss issues linked to the generation of curves which can be used in cryptography, and we propose an adaptation to the Jacobi Quartic form and its implementation. In a second part, we address the notion of code obfuscation. We detail the techniques that we have implemented in order to complete an existing tool, and the complexity module which has been developed. Electronic Thesis or Dissertation Text fr http://www.theses.fr/2016GREAM029/document Cornelie, Marie-Angela 2016-04-12 Grenoble Alpes Elbaz-Vincent, Philippe