Aller au contenu

JWS : JSON Web Signature

Cryptographie

JWS : JSON Web Signature. « Signature web JSON », par analogie avec un cachet apposé sur un document pour détecter toute modification.

Principe : Un JWS associe un contenu, des informations décrivant la signature et une signature calculée avec une clé secrète. Le destinataire vérifie cette signature avec la clé correspondante.

Ce que cela garantit : La vérification confirme l'intégrité du contenu et l'identité attendue du signataire, à condition de faire confiance à la clé utilisée. Elle ne chiffre pas le contenu, qui reste lisible.

Format : La forme compacte contient trois parties séparées par des points : l'en-tête protégé, le contenu et la signature, tous encodés dans un format adapté aux échanges sur le Web.

Usages : On retrouve les JWS dans les jetons d'authentification, les échanges entre services et les protocoles d'identité. Une modification minuscule suffit à faire échouer la vérification.

Ce qui arrive si on s'en passe

Un jeton signé ne vaut que par la vérification qu'on en fait. Un destinataire qui décode un JWS sans vérifier la signature, ou qui laisse l'en-tête choisir l'algorithme au lieu de l'imposer, accepte un contenu fabriqué de toutes pièces : identité, droits et date d'expiration deviennent ce que l'attaquant a décidé. Croire par ailleurs qu'une signature protège la confidentialité conduit à glisser dans le contenu des données qui restent lisibles par quiconque intercepte le jeton. Le cachet atteste que le document n'a pas été modifié, pas qu'il est secret ; il n'atteste même plus rien quand personne ne prend la peine de le regarder.

Explication de la marmotte

Imagine une lettre à laquelle l'expéditeur ajoute une marque fabriquée à partir du contenu et d'un secret qu'il est seul à connaître. Le destinataire reçoit la lettre, recalcule une marque avec une information publique, puis compare les deux. Si elles correspondent, le message vient bien de la bonne source et n'a pas été modifié en chemin. Cette marque ne cache pas le texte : quiconque reçoit la lettre peut encore la lire. Le système vérifie donc l'origine et l'intégrité d'un message, mais ne le rend pas secret.

Où ce terme est utilisé

← Tout le glossaire