Signature

De WikiOpenTruc
Aller à : navigation, rechercher

m.c.: authentification

... mais avec une assistance numérique, ie sans huissier ou notaire humain.

La signature électronique (avec hash, sceau, horodatage, etc) est déjà factuellement bien plus performante que la signature écrite. Il n'y a pas de raison de poursuivre l'extension de ses capacités.

La signature peut être associée à du chiffrement. Voir les pages concernées.


Signature basique

Attention, il ne s'agit pas simplement de produire une empreinte qui garantit l'intégrité du document (ce que plein d'algorithmes peuvent faire). Il s'agit de produire une empreinte dépendante d'une clé, et par là de prouver à la fois l'intégrité du document, mais aussi que l'empreinte publiée a bien été produite par le détenteur de la clé mentionnée.

La clé employée peut être une clé publique, eg pour de la diffusion de logiciels.

La clé employée peut être une clé secrète partagée entre 2 correspondants, pour de la communication de personne à personne.

Dans la pratique, la signature d'un document est une combinaison de :

  • une empreinte du document
  • un chiffrage de l'empreinte

Le chiffrage est effectué sur l'empreinte (hash) et pas sur le document entier pour des raisons d'efficacité (car l'opération est coûteuse en temps CPU) et car cela suffit.

La signature d'un fichier étant le chiffrage d'une empreinte (hash), c'est donc, par construction, une suite de caractères illisible (du moins telle quelle et pour un humain). La validation d'une signature peut être difficile à la main ou d'un coup d'oeil, Selon le type de signature, un logiciel est parfois nécessaire. Voir eg la page GPG pour une implémentation pratique.


HMAC

Permet de vérifier simultanément l'intégrité et la provenance/authenticité d'un message.

Il s'agit d'un hash tout à fait standard, mais précédé d'une concaténation avec une clé. La clé est partagée secrètement (a priori à l'avance) entre l'émetteur et le récepteur. Seul le détenteur de la clé est capable de produire le résultat. Il est donc en mesure de prouver que c'est bien lui qui l'a produit.

J'imagine qu'il peut y avoir plusieurs modes d'utilisation. Entre autres un mode où le destinataire B remet à l'avance une clé secrète à un correspondant A dont il veut être sûr. A va envoyer un message à B, conjointement au résultat HMAC(message, clé). En réalisant lui aussi HMAC(message, clé), B s'assure que seul un détenteur de la clé à pu générer ce HMAC. Etant donné que les 2 correspondants connaissent la clé, ils peuvent l'utiliser tous les 2.

Bien entendu, cela nécessite que la clé ne soit connue que de A et B, ie échangée en sécurité entre eux.

On peut aussi imaginer HMAC pour de la communication au sein d'un groupe de personnes. Dans ce cas, on sait que les messages proviennent bien du groupe, sans toutefois pouvoir savoir précisément de qui. L'intérêt d'un tel usage semble quand même très réduit.

On peut aussi imaginer un logiciel de mise en contact qui joue le rôle de distributeur de clé pour les correspondants (... ce qui nécessite d'avoir confiance dans le dit logiciel).


Variantes

  • plusieurs personnes peuvent signer, séparément, un même document. eg une équipe de développeurs peut fournir plusieurs signatures d'un logiciel.


Pages connexes


Liens