Cryptographie : chiffrement et signature
Cryptographie : chiffrement et signature
- Le chiffrement
Le chiffrement des données fut inventé pour assurer la confidentialité des données. Il est assuré par un système de clé (algorithme) appliqué sur le message. Ce dernier est décryptable par une clé unique correspondant au cryptage.Il existe à l’heure actuelle deux grands principes de cryptage : le cryptage symétrique basé sur l’utilisation d’une clé privée et le cryptage asymétrique qui, repose sur un codage à deux clés, une privée et l’autre publique.
- Le cryptage symétrique
Le cryptage à clé privé ou symétrique est basé sur une clé (ou algorithme) partagée entre les deux parties communicantes. Cette même clé sert à crypter et décrypter les messages. Les algorithmes de chiffrement les plus connus sont : Kerberos, DES (Data Encryption Standard) et RSA.Le principal problème est le partage de la clé : Comment une clé utilisée pour sécuriser peut être transmise sur un réseau insécurisé ? La difficulté engendrée par la génération, le stockage et la transmission des clés (on appelle l’ensemble de ces trois processus le management des clés : key management) limite le systèmes des clés privées surtout sur Internet.Pour résoudre ces problèmes de transmission de clés, les mathématiciens ont inventé le cryptage asymétrique qui utilise une clé privée et une clé public.
- Le cryptage asymétrique
Ce système de cryptage utilise deux clés différentes pour chaque utilisateur : une est privée et n’est connue que de l’utilisateur ; l’autre est publique et donc accessible par tout le monde.Les clés publique et privée sont mathématiquement liées par l’algorithme de cryptage de telle manière qu’un message crypté avec une clé publique ne puisse être décrypté qu’avec la clé privée correspondante. Une clé est donc utilisée pour le cryptage et l’autre pour le décryptage.Ce cryptage présente l’avantage de permettre le placement de signatures numériques dans le message et ainsi permettre l’authentification de l’émetteur.Le principal avantage du cryptage à clé publique est de résoudre le problème de l’envoi de clé privée sur un réseau non sécurisé. Bien que plus lent que la plupart des cryptage à clé privée il reste préférable pour 3 raisons :
- Plus évolutif pour les systèmes possédant des millions d’utilisateurs.- Authentification plus flexible.- Supporte les signatures numériques.SignatureDans toute transaction professionnelle, les deux parties doivent offrir une garantie de leur identité. La signature numérique et le certificat sont des moyens d’identification de l’émetteur du message.
- Plus évolutif pour les systèmes possédant des millions d’utilisateurs.- Authentification plus flexible.- Supporte les signatures numériques.SignatureDans toute transaction professionnelle, les deux parties doivent offrir une garantie de leur identité. La signature numérique et le certificat sont des moyens d’identification de l’émetteur du message.
- Signature numérique
Le principe de la signature numérique consiste à appliquer une fonction mathématique sur une portion du message. Cette fonction mathématique s’appelle fonction de hachage et le résultat de cette fonction est appelé code de hachage. Ce code fait usage d'emprunte digitale du message. Il faut noter que la fonction est choisie de telle manière qu’il soit impossible de changer le contenu du message sans altérer le code de hachage.Ce code de hachage est ensuite crypté avec la clé privée de l’émetteur et rajouté au message. Lorsque le destinataire reçoit le message, il décrypte ce code grâce à la clé publique de la source puis il compare ce code à un autre code qu’il calcule grâce au message reçu. Si les deux correspondent, le destinataire sait que le message n’a pas été altéré et que son intégrité n’a pas été compromise. Le destinataire sait aussi que le message provient de l’émetteur puisque seul ce dernier possède la clé privée qui a crypté le code.Ce principe de signature fût amélioré avec la mise en place de certificats permettant de garantir la validité de la clé public fourni par l’émetteur.
- Les certificats
Pour assurer l’intégrité des clés publiques, les clés publiques sont publiées avec un certificat. Un certificat (ou certificat de clés publiques) est une structure de données qui est numériquement signée par une autorité certifiée (CA : Certification Authority) – une autorité en qui les utilisateurs peuvent faire confiance. Il contient une série de valeurs, comme le nom du certificat et son utilisation, des informations identifiant le propriétaire et la clé publique , la clé publique elle même , la date d’expiration et le nom de l’organisme de certificats. Le CA utilise sa clé privée pour signer le certificat et assure ainsi une sécurité supplémentaire.Si le récepteur connaît la clé publique du CA, il peut vérifier que le certificat provient vraiment de l’autorité concernée et est assuré que le certificat contient donc des informations viables et une clé publique valide.