|
La cryptographie à clé publique permet de s'affranchir du problème de l'échange de la clé, facilitant le travail de l'expéditeur. Mais comment s'assurer de l'authenticité de l'envoi? Comment être sûr que personne n'usurpe l'identité d'Alice pour vous envoyer un message? Comment être sûr qu'Alice ne va pas nier vous avoir envoyé ce message? Là encore, la cryptographie à clé publique peut résoudre ce problème. Alice veut donc envoyer un message crypté à Bob, mais Bob veut s'assurer que ce message provient bien d'Alice. Ils se sont mis d'accord sur un système de cryptographie à clé publique commun, Alice possédant le couple clé publique/clé privée (PA,SA), et Bob le couple (PB,SB). Alice veut envoyer M.
![]() Fonctions de hachage?Ce protocole, s'il est fiable, est lent puisque deux fois plus lent qu'un algorithme à clé publique (lui-même déjà très lent!). En outre, il ne garantit pas l'intégrité du message, c'est-à-dire que celui-ci n'est pas altéré par des erreurs de transmission. L'utilisation des fonctions de hachage résout ces problèmes. Une fonction de hachage calcule le résumé d'un texte. Ce résumé doit être à sens unique, pour éviter de reconstituer le message initial connaissant seulement le résumé. Il doit être très sensible, c'est-à-dire qu'une petite modification du message entraîne une grande modification du résumé. En expédiant un message accompagné de son résumé (on dit aussi son haché), on peut s'assurer de l'intégrité du message, en recalculant le résumé à l'arrivée. Mais il y a mieux : la fonction de hachage, couplée à la cryptographie à clé publique, permet d'authentifier l'expéditeur.
![]() Et encore, dans la cryptographie expliquée...
|