La cryptographie
La
cryptographie est la science du codage et décodage de messages, dans un
souci de confidentialité et d'authentification.
Introduction
Dans le contexte numérique, la cryptographie
devient nécessaire à tous, particuliers, entreprises et administrations,
afin de sécuriser le commerce électronique et de préserver la
confidentialité des échanges d'informations.
Les progrès de l'informatique ont permis de développer des solutions
de cryptographie extrêmement puissantes,
logicielles ou matérielles.
Depuis longtemps les mathématiciens se sont
approprié la cryptographie
pour en élaborer les bases théoriques. La qualité de telle ou telle
méthode d'encryptage peut ainsi être "mesurée" (la qualité d'un encryptage
peut être la difficulté à le décrypter). Il faut savoir (c'est
démontrable) que tout encryptage est décryptable (sauf le hachage) en
utilisant des méthodes mathématiques :tout est question de puissance de
calcul et de temps.
Déchiffrer, par exemple, un seul numéro de
carte bancaire crypté selon ces procédés mobiliserait la puissance de
calcul de milliers d'ordinateurs pendant des semaines, voire des mois.
En France, depuis août 2000, la réglementation permet l'utilisation des clés "fortes".
(Jusqu'à cette date, la
cryptographie n'était autorisée qu'avec des clés de
40 bits' : clés "faibles".)
Principe
Le principe de la cryptographie (ou du chiffrement) est de transformer
un message intelligible par tous en un message lisible seulement par les
personnes autorisées (destinataires). C'est une méthode vieille comme le
monde dont la principale application est la transmission de messages en
temps de guerre. Le principe immuable est que la cryptographie est
bi-directionelle, c'est à dire qu'elle permet d'encrypter puis de
décrypter un message, restituant alors sa forme initiale.
Les méthodes simples d'encryptage utilisent des tables, qui doivent
alors se trouver dans les mains des deux partenaires: l'expéditeur et le
destinataire. Ceci pose un sérieux problème qui est celui de
l'acheminement et du stockage sécurisé de ces tables.
La
cryptographie repose depuis quelques années sur le principe de
clé : une suite de caractères hexanumériques (en base 16) qui permet de
chiffrer le contenu d'un message - ou une signature - et de le déchiffrer.
Dans l'absolu, la longueur de la clé - mesurée en nombre de bits - définit
la force de l'algorithme de chiffrement.
Techniques de cryptographie
1.
Cryptographie symétrique ou "à clé privée" ou cryptographie
conventionnelle.
Dans ce système, la clé qui
sert au chiffrement des informations sert également à leur déchiffrement.
Il est ainsi généralement qualifié d'algorithme « symétrique » ou
encore « à clé privée ».
Lorsque A veut envoyer un message à B, tous deux doivent au préalable s'être
transmis la clé.
Le créateur et le consommateur de
l'information doivent tous deux détenir la clé, qui sert aussi bien pour l'encryptage que
pour le décryptage. Les principaux défauts de cette méthode sont:
-
l'expéditeur d'un message doit au préalable communiquer la clé au
destinataire par un canal sûr
-
l'expéditeur ne peut employer une clé qu'avec un destinataire (sinon
le message peut être décrypté par plusieurs destinataires)
L'algorithme
de cryptographie à clé privée le plus répandu est le DES (Data
Encryption Standard). Il a été développé aux Etats-unis, en 1976, par
une équipe d'IBM pour le NBS (National Bureau of Standards) et adopté
par le gouvernement américain, après analyse de sa fiabilité par
quelques spécialistes de l'époque au rang desquels on trouve la NSA
(National Security Agency).
2.
Cryptographie asymétrique ou "à double clé"
La cryptologie asymétrique (clé publique / clé privée) est basée sur
une méthode mathématique garantissant un encryptage facile et rapide et un
décryptage difficile.
Dans ces systèmes, la clé qui sert à
chiffrer le message n'est pas la même que celle qui est utilisée pour
son déchiffrement.
Avec ce procédé, un utilisateur (B) génère ainsi deux clés différentes
avec son logiciel de cryptographie. La première est dite clé publique,
parce qu'elle est automatiquement publiée dans un annuaire accessible à
tous sur Internet. La seconde clé, dite clé privée, doit être
gardée secrète et stockée sur un support protégé : disque dur avec
accès par mot de passe, disquette, carte à puce...
Ainsi pour envoyer un message à B, A doit d'abord consulter l'annuaire en
ligne pour y retirer la clé publique associée à B. C'est avec cette
dernière que A cryptera son message pour B. Le décryptage, lui, ne
pourra s'effectuer qu'à l'aide de la clé tenue secrète, celle que B n'a
révélée à personne. A n'est même pas en mesure de décrypter le
message sitôt qu'il l'a codé. Le cryptage est dit asymétrique.
L'application de la
cryptographie asymétrique permet aussi des fonctions d'authentification
de
documents et d'expéditeurs. L'authentification de documents consiste à
générer une signature à partir du document original et de la clé privée de
l'expéditeur (A).
Le destinataire (B) en possession de la clé publique de
l'expéditeur (A) peut alors s'assurer de l'identité de celui qui a
signé le message.
Sur ce principe, le
système de cryptage le plus répandu est le RSA, inventé en 1977 par
trois chercheurs du MIT (Massachusetts Institute of Technology).
.
RSA est aujourd'hui utilisé dans une large variété d'appareils
(téléphones, réseaux Ethernet, logiciels Microsoft, Apple...) pour le
chiffrement des communications et dans le cadre de la signature
numérique, où il représente une méthode d'authentification de
l'expéditeur du message. Sa sécurité repose sur l'utilisation de
clés suffisamment longues. Selon Robert Harley, chercheur à l'Inria
(Institut national de recherches en informatique et automatique), « en
dessous de 1024 bits de longueur de clé, on ne peut pas considérer le
système comme sûr ».
On démontre qu'il n'existe aucune méthode permettant de
retrouver la clé privée à partir de la clé publique.
3.
Cryptographie quantique
Toujours à la recherche de solutions de plus en plus
performantes, les mathématiciens, en s'appuyant sur le
principe d'incertitude d' Heisenberg, tentent d'élaborer un système de
cryptographie dite "quantique", qui utilise la
perturbation engendrée sur le comportement d'un système par l'élément
de mesure.
Cette méthode est citée à titre indicatif, mais n'a pas encore quitté
le bureau d'étude des ingénieurs de la communication !
.
Infrastructure
d'un système à clé publique (PKI)
1.
Principe
La sécurité d'un système à
clé publique repose sur l'authenticité des clés publiques utilisées, qui doit
être garantie pour éviter toute opération de
"piratage".
Pour résoudre ce problème, les systèmes à clés publiques
utilisent une signature, apposée par une autorité de certification
(AC), qui garantit l'association entre la clé publique et l'identité
de la personne possédant la clé privée associée.
2.
Certificats de clés publiques
Une clé publique protégée
par une signature d'autorité de certification (AC) est stockée dans un « certificat de clé
publique », dans un
format de données strict ( appelé X.509)
L'utilisateur n'a
plus à protéger que ses clés privées.
Toutes les autres clés publiques dont il peut avoir besoin sont vérifiées
par le biais des certificats de clés publiques émis par leur
propre autorité de certification.
L'AC est ainsi le premier élément d'une infrastructure de clé
publique .
La norme X.509 définit le format
de codage des données, ainsi que celles obligatoirement présentes,
par exemple la clé publique, un identifiant de l'entité qui possède
la clé privée correspondante, la période de validité de la clé,
etc.
Toutefois, chaque Infrastructure de Cle Publique peut ajouter des informations, par
exemple la fonction de l'entité, l'usage de la clé, etc. La vérification
d'un certificat consiste donc non seulement à vérifier sa
signature, mais aussi à interpréter les données présentes pour vérifier
que la clé certifiée est bien valide.
Une Infrastructure de Cle
Publique renseigne aussi des
listes de certificats révoqués qui doivent être vérifiées.
3.
Autorité de Certification et politique de certification
L'AC signe les
certificats et possède donc la clé privée correspondant à la clé
publique conservée par les utilisateurs de l'ICP.
L'AC est le point
de confiance des utilisateurs du système. Elle engage sa
responsabilité quand elle signe un certificat, mais selon les
termes de la politique de certification qu'elle a définie. Par
exemple, si la politique d'une ICP précise que seule l'adresse électronique
de l'utilisateur est vérifiée, ceci signifie qu'aucun contrôle de
l'identité réelle de la personne n'a été effectué. Un
certificat valide dans cette politique peut donc indiquer l'identité
PremierMinistre@free.fr !
Plus que la
certification, c'est donc l'enregistrement de l'entité utilisatrice
qui est fondamental. De la rigueur apportée à cette opération dépend
le niveau de confiance des certificats de l'ICP.
Cette opération
peut être déléguée à une autorité d'enregistrement . Dans
ce cas, l'AC doit vérifier que les règles d'enregistrement de sa
politique sont bien respectées par chaque autorité d'enregistrement.
4. Certification croisée et certification
hiérarchique
L'interconnexion des
systèmes rend inévitable le besoin de communication entre
utilisateurs d'ICP différentes. Pour résoudre ce problème, des
ICP peuvent décider d'une certification croisée : chaque AC
va émettre un certificat pour la clé publique de certification de
son homologue. Ainsi, les utilisateurs finaux peuvent établir un
chemin de confiance pour les certificats des deux ICP .
Avant d'établir une
certification croisée, les deux ICP doivent comparer leurs
politiques pour assumer l'équivalence du niveau de confiance entre
les deux ICP. Une ICP peut utiliser plusieurs niveaux de politiques
de certification. Il n'est ainsi possible d'effectuer des
certifications croisées que pour un niveau donné.
Vocabulaire
Autorité de
certification :
L'organisme qui assure la délivrance et le renouvellement des
certificats, la diffusion des listes de révocation et des clés publiques
. La société MEDSYS est une autorité de certification.
Certificat :
Document informatique délivré sous la forme d'un fichier normalisé
(X509) qui permet la signature, la vérification et le cryptage de
messages. Le contenu du certificat lie
les données, signées ou cryptées, au détenteur du certificat : l'
Utilisateur autorisé.
Un certificat se compose d'une clé privé, d'une clé publique et d'une
signature émanant de l'autorité de certification.
Classes de certificat :
La classe de certificat définit le niveau de contrôle effectué pour la
délivrance du ou des certificats. La société MEDSYS délivre des
certificats de classe 1 et de classe 2. Le contenu des certificats et donc
les procédures d'élaboration et les procédures liées a l'utilisation
ne diffèrent pas d'une classe à l'autre. Seules diffèrent les garanties
prises pour l'authentification du demandeur.
Pour les certificats de la classe 1, la société MEDSYS contrôle la
validité de l'adresse de messagerie fournie par le demandeur. Ces
certificats ne peuvent pas être utilisés à des fin marchandes. Il
peuvent être fournis à tout demandeur qui accepte les présentes
conditions.
Ces certificats sont disponibles au travers des procédures simplifiées
associées au site serveur de certificats de la société MEDSYS.
Les certificats de classe 2 ne sont fournis par MEDSYS qu'aux demandeurs
entièrement qualifiés et identifiés. Il s'agit donc soit de clients de
la société MEDSYS ayant déjà effectué des transactions commerciales
abouties, soit de futurs clients pour lesquels la société MEDSYS contrôle
l'ensemble des éléments nécessaires à une relation commerciale saine.
Les clients de la société MEDSYS disposent des éléments nécessaires
à l'obtention de certificats de classe 2 et peuvent donc en faire la
demande par les procédures simplifiées de certificats de classe 1. Le
serveur de certificat délivre automatiquement un certificat de classe 2
pour ces demandeurs.
Les futurs clients ne peuvent obtenir, avant vérification complète de
leurs qualités, que des certificats de classe 1. Ces vérifications sont
faites hors site serveur. Elle font l'objet d'une relation directe entre
notre service commercial et le demandeur.
Clé privée:
Partie du certificat, sous la responsabilité de l'Utilisateur autorisé.
Elle est destinée à la signature et au décryptage des messages. C'est la partie sensible de la clé qui doit rester
secrète.
La clé privée est utilisée pour déchiffrer les messages reçus et
chiffrer la signature.
Clé publique :
Partie du certificat qui sera diffusée. Elle est destinée à la vérification
de signature et au Cryptage des messages.
C'est la
partie qui est transmise aux interlocuteurs ou placée sur des serveurs
de clés.
La clé publique est utilisée pour chiffrer les messages à
envoyer et déchiffrer la signature des messages reçus.
Chiffrement - ( ou cryptage)
:
Egalement appelé Chiffrement, il s'agit d'une opération mathématique,
effectuée à l'aide d'une clé publique, qui consiste à transcrire le
message à transmettre dans un " langage " que seul le
possesseur de la clé privée correspondante peut décoder. Toute personne
qui dispose de la clé publique d'un correspondant peut lui adresser un
message crypté.
Compromission de certificat :
Il y a compromission de certificat dès lors que la diffusion réelle ou
probable des éléments secrets associés aux certificats est avérée ou
probable.
Condensat :
Le condensat est le résultat de la transformation numérique d'une
information en une suite de caractères dont le contenu garantit l'intégrité
du message transféré. Cette intégrité est vérifiée à la réception
du message, lors de la vérification de signature, par comparaison du
condensat reçu et du condensat calculé. Le caractère mathématiquement
irréversible de la transformation garantit que le contenu du message
n'a pas été falsifié.
Décryptage :
Opération mathématique, effectuée à l'aide de la clé privée, qui
consiste à décoder le message crypté à l'aide de la clé publique
associée. Cette opération ne peut être effectuée que par le détenteur
de la clé privée .
Listes de révocation:
Liste officielle des certificats qui ont fait l'objet d'une déclaration
de compromission, ou dont la date d'expiration a été atteinte sans
renouvellement. Les certificats qui figurent dans cette liste sont considérés
révoqués. Ils ne peuvent plus être utilisés ni pour la signature ni
pour le cryptage de messages. Leur utilisation peut faire l'objet de
poursuites judiciaires graves.
Révocation :
Un certificat peut faire l'objet d'une révocation. Il est alors inscrit
dans les listes de révocation et ne peut plus être utilisé. Un
certificat est révoqué :
à la demande de l'utilisateur autorisé, avant la date d'expiration,
lorsque le certificat fait l'objet d'une compromission ;
à la demande de l'autorité de certificat, lorsque la date d'expiration
est atteinte et que le certificat n'a pas été renouvelé.
Un certificat révoqué ne bénéficie plus de la garantie de l'autorité
de certificat. Son utilisation est illégale.
Secret :
Elément qui assure de la qualité du certificat sous la responsabilité
de l'utilisateur autorisé : la clé privée associée au certificat .
Serveur de clés publiques: serveur accessible par internet ou réseau
local permettant de trouver la clé publique d'un destinataire ou
interlocuteur en vue d'encrypter un message ou de vérifier une signature
Signature: Partie chiffrée d'un message générée dans le but
d'authentifier le message (intégrité) et l'expéditeur (identité)
Utilisateur autorisé:
Personne ayant fait la demande du certificat, détenant celui-ci et
acceptant les présentes conditions.
X509 :
Norme internationale qui définit le contenu des certificats. Le respect
de cette norme assure l'interopérabilité des certificats entre les différentes
autorités. Le respect de cette norme est indispensable à la qualité de
la certification.
Applications
Les applications de la cryptographie sont nombreuses; l'application la
plus souvent citée est l'encryptage de messages mais elle est également
utilisée dans beaucoup d'autres domaines, dont voici une liste non exhaustive
:
LÉGISLATION
Secrétariat
National de la Défense Nationale :
la concertation de l'an 2000
Ministère
de l'économie, des finances et de l'industrie
Technologies
de l'information : dernières nouvelles
L'internet
juridique
Microsoft
- Synthèse sur la sécurité |