L'authentification

La signature numérique (ou électronique) est un code qui authentifie l'auteur d'un message ou d'une transaction électronique. Le but est de fournir un moyen à l'expéditeur de pouvoir lier son identité à une information.
Son fonctionnement général est l'inverse du système à clef publique et implique aussi la paire de clefs publique/privée. Quelqu'un voulant assurer le destinataire qu'il est bien l'expéditeur chiffrera son message avec sa clef privée et le destinataire déchiffrera le message chiffré avec la clef publique correspondante de l'expéditeur. Habituellement, pour réduire la taille des messages, une fonction de hachage est utilisée pour créer une empreinte du message et c'est cette empreinte que l'on chiffre.

Le scellement des données

L'utilisation d'une fonction de hachage permet de vérifier que l'intégrité du message a été préservée. Cependant, rien ne prouve que le message a bien été envoyé par celui que l'on croit être l'expéditeur.
Pour garantir l'authentification du message, Alice chiffre le haché à l'aide de sa clef privée (le haché signé est appelé sceau). Elle envoie ensuite à Bob son message accompagné du sceau.

À la réception du courriel, Bob déchiffrera le sceau avec la clef publique d'Alice; il obtiendra ainsi le message haché par Alice. Il hâchera ensuite le message d'Alice et comparera les deux hachés. Si les deux hachés sont identiques, cela signifie que le message a bien été envoyé par Alice.
Ce mécanisme de création de sceau est appelé scellement.

En pratique

Dans les logiciels de courrier électronique, cette signature prend la forme d'une suite plus ou moins longue de caractères sans signification, qui est parfois visible à la fin du message. Cette signature est encodée par une clef privée que seul l'expéditeur détient. Le logiciel du destinataire reconstitue la signature de l'expéditeur à l'aide de la clef publique de l'expéditeur qu'il trouve dans un répertoire de clefs publiques. Si la signature est bien décodée, le destinataire est certain que le message provient de l'expéditeur, car seul ce dernier a pu, avec sa clef privée, encoder sa signature. Le logiciel PGP (Pretty Good Privacy) utilise ce procédé et se greffe aux logiciels de courrier électronique les plus répandus.
Dans le commerce électronique, la signature numérique empêche la fraude, car elle authentifie automatiquement l'identité d'un commerçant qui offre des produits sur Internet et celle d'un client qui passe une commande.

Les systèmes de chiffrement à clef publique peuvent habituellement aussi servir à générer des signatures numériques. Néanmoins, le standard américain est le DSS, lequel spécifie trois algorithmes: le DSA (Digital Signature Algorithm), RSA et ECDSA (Elliptic Curves Digital Signature Algorithm).


Référence


  Didier Müller, 27.1.21