Fonctionnement de la signature électronique

Fonctionnement de la signature électronique 

de type cryptographique


Sujet apparaissant éminement technique pour le juriste, la signature électronique de type cryptographique est le coeur de la règlementation applicable de la directive 1999/93 en Europe (malgré son souhait affiché d'être "technologiquement neutre") et de la loi du 13 mars 2000 en France. Le règlement eIDAS ne fait que renforcer cet état de fait. Il apparaît donc essentiel d'en connaître le fonctionnement même général.


A cette fin, nous avions publié dans la revue Communication Commerce Electronique n°11 de novembre 2002 un article " Vers une signature électronique juridiquement maîtrisée ", où nous décrivions notamment son fonctionnement, dans la pratique quotidienne.


Nous avons par la suite pris soin d'intégrer chaque année la présentation de ce fonctionnement dans les cours donnés au Master II Droit du Multimédia et de l'Informatique de Paris II-Panthéon-Assas.


Nous vous en livrons ici la synthèse (pour les cas les plus courants) :


La signature cryptographique utilise les propriétés du chiffrement asymétrique, dit encore "chiffrement à clé publique". En effet, cette méthode de chiffrement utilise un couple de clés pour fonctionner :

 

  • une clé dite "privée" que l'utilisateur doit conserver de façon absolument confidentielle ;
  • une clé dite "publique" qui peut être diffusée le plus largement possible.

 


Une relation mathématique unie ces clés de façon à ce que, succinctement :

 

  • la connaissance de la clé publique ne puisse permettre de déduire la clé privée ;
  • quand l'utilisateur utilise sa clé privée pour chiffrer des données, le seul moyen de les déchiffrer est d'utiliser la clé publique correspondante. 

 

Ce schéma présente un exemple de fonctionnement, décrit plus en détails dans les développements ci-dessous :

Anne veut signer numériquement des messages ou des fichiers.

A cette fin, elle va, préalablement, utiliser les services d'un prestataire de services de certification (PSC), qui va vérifier son identité, et certifier que la clé publique présentée est bien celle d'Anne en lui délivrant un "certificat numérique". Celui-ci est juridiquement défini par le décret du 30 mars 2001 comme l'ensemble des documents sous forme électronique attestant du lien entre les données de vérification de signature électronique et un signataire. Techniquement, il s'apparente à un ensemble regroupant la clé publique du signataire, ainsi que d'autres données telles que les numéros de version et de série, le nom du porteur, la durée de validité du certificat, etc. le tout étant chiffré à l'aide de la dé privée de l'autorité l'ayant délivrée. Ces certificats permettent donc de manière simple de déterminer si une clé publique appartient réellement à son détenteur supposé.

Le plus souvent. le PSC va également délivrer à Anne un support sécurisé (parfois un fichier sur le disque dur ou un support externe, telle qu'une carte à puce ou une mémoire flash USB pour une meilleur protection de la confidentialité de celle-ci) conservant la clé privée correspondante à la clé publique que le PSC a certifiée.

Anne utilisera par la suite un logiciel de signature électronique quand elle voudra signer son document. Pour faire reconnaître son identité, elle va lui présenter le support contenant sa clé privée. Ce support, logiciel ou matériel, est abusivement appelé certificat numérique alors qu'en fait, techniquement, il ne contient pas le certificat, mais la clé privée correspondante à la clé publique contenue dans celui-ci.

Le logiciel de signature va alors mettre en œuvre un algorithme dit de "hachage" dont le but est de résumer le message original de telle manière que la moindre modification du contenu de celui-ci produise un résumé totalement différent du résumé du message original. L’algorithme utilisé doit permettre de s’assurer que l’on ne pourra en aucun cas reconstituer le contenu du message original à partir de ce simple résumé, que l’on appelera "empreinte numérique" du message (un exemple de ce type d’algorithme : SHA pour "Secure Hash Algorithm"). On parle de "scellement" du contenu.

En paralllèle, Anne va, dans la plupart des cas, taper un code d’accès débloquant la protection logicielle protégeant l’accès à sa clé privée (code d'accès appelé "code PIN" (1) pour une carte à puce, mot de passe pour un fichier sur disque dur…). Le logiciel d’Anne va donc pouvoir appliquer sa clé privée sur cette empreinte numérique – et non sur le message lui-même pour des raisons de temps de traitement.

On obtient ainsi un "cryptogramme".

Par la suite, le logiciel va joindre le message original au cryptogramme et, parfois, le certificat numérique d’Anne, afin de permettre d'envoyer le tout à son correspondant, Bertrand.

De son côté, Bertrand, qui recevra l’ensemble "cryptogramme + message", utilisera un logiciel qui sépare automatiquement ces deux éléments et :
appliquera au cryptogramme la clé publique d’Anne incluse dans son certificat. Bertrand peut vérifier facilement en pratique (par le biais d’un site internet par exemple ou de l'insertion des informations adéquates dans le logiciel de visualisation utilisé tel qu'Adobe Acrobat, etc.) que le certificat d’Anne est toujours valable, qu’elle n’a pas déclaré celui-ci perdu ou volé, c’est-à-dire qu’il n’a pas été révoqué(2) ;
en déchiffrant le cryptogramme avec la clé publique d’Anne (la clé privée d’Anne l’ayant chiffrée, seule sa clé publique peut la déchiffrer), Bertrand obtiendra l’empreinte numérique "en clair" du message transmis ;
en comparant l’empreinte numérique issue du cryptogramme et l’empreinte numérique que le logiciel va générer à partir du document original transmis, on va pouvoir s’assurer qu’elles sont identiques : la vérification de l’intégrité du message va pouvoir s’opérer ;
Un lien avec le contenu du message est donc vérifiable, la moindre altération du contenu conduisant en effet à une erreur lors de la comparaison. Et l’adjonction de la clé privée au message permet de marquer l’adhésion de l’expéditeur au contenu du message, soit l’expression de la volonté chère au droit français. L’identité de l’expéditeur est assurée par le biais du certificat numérique et donc du prestataire de services de certification (PSC) qui se sera assuré préalablement de l’identité de l’expéditeur et gérera les listes de certificats révoqués (LCR).

-----------------------------------------------------------
(1) Personal Identification Number.
(2) Si Anne s’aperçoit que la confidentialité de sa clé privée a été rompue, d’une manière ou d’une autre, elle doit le déclarer au PSC qui va alors révoquer sans délai la clé publique correspondante afin d’éviter tout usage frauduleux du couple de clés. En pratique, le PSC inscrira la clé publique sur une « Liste des Certificats Révoqués » ou LCR.