Aller au contenu principal

Appendix F. Detached Content (Contenu détaché)

Dans certaines situations, il peut être souhaitable que le contenu protégé en intégrité ne soit pas inclus dans la représentation JWS, mais soit transmis séparément. Ce cas d'utilisation est appelé « detached content » (contenu détaché). Pour créer ou vérifier un JWS avec du contenu détaché :

Création d'un JWS avec contenu détaché

Pour créer un JWS avec du contenu détaché :

  1. Suivez les étapes de la section 5.1 pour créer un JWS
  2. Dans la sortie sérialisée, remplacez la représentation encodée en base64url du JWS Payload par une chaîne vide

Format de sérialisation compacte JWS :

BASE64URL(UTF8(JWS Protected Header)) || '.' || '' || '.' || BASE64URL(JWS Signature)

Notez la chaîne vide au milieu, représentant la charge utile détachée.

Exemple (utilisant un contenu détaché) :

eyJhbGciOiJIUzI1NiJ9..dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk

Notez les deux caractères point consécutifs, indiquant que la charge utile a été supprimée.

Vérification d'un JWS avec contenu détaché

Pour vérifier un JWS avec du contenu détaché :

  1. Obtenez le contenu de charge utile détaché à partir du contexte de l'application
  2. Calculez l'encodage base64url de la charge utile
  3. Insérez la charge utile encodée à la position de la charge utile vide dans la représentation JWS
  4. Suivez les étapes de la section 5.2 pour vérifier le JWS

Scénarios d'utilisation

Le contenu détaché est utile dans les scénarios suivants :

  • Charges utiles volumineuses : Lorsque la charge utile est très volumineuse, il peut être souhaitable de la transmettre séparément
  • Signatures multiples : Lorsque la même charge utile nécessite plusieurs signatures, cela permet d'éviter la transmission répétée de la charge utile
  • Contenu existant : Lorsque le contenu est déjà disponible par d'autres moyens, seule la signature doit être transmise
  • Optimisation de la bande passante : Dans les environnements à bande passante limitée, permet de réduire la quantité de données transmises

Considérations de sécurité

Lors de l'utilisation de contenu détaché :

  • L'application doit s'assurer que le destinataire peut obtenir de manière fiable le contenu de charge utile correct
  • Il faut prévenir les attaques de substitution de charge utile
  • Des mécanismes supplémentaires (tels que le hachage du contenu) devraient (SHOULD) être utilisés pour lier la signature et la charge utile
  • La méthode d'association de la signature et de la charge utile devrait (SHOULD) être clairement définie dans le protocole d'application