JSON Web Signature (JWS)

JSON Web Signature (JWS) is de IETF-standaard (RFC 7515) voor het ondertekenen of beveiligen van data met JSON, de basis onder de meeste JSON Web Tokens.

JSON Web Signature (JWS) is een standaard, vastgelegd door de IETF in RFC 7515, voor het weergeven van gegevens die zijn ondertekend of beveiligd met een Message Authentication Code (MAC), met JSON als onderliggend formaat. De standaard verpakt een header met het gebruikte algoritme, een payload met de eigenlijke data en de resulterende signature- of MAC-waarde in een enkele structuur die gemakkelijk meereist in een URL, een HTTP-header of een JSON Web Token.

De meest gebruikte vorm is de compacte serialisatie: drie met base64url gecodeerde delen - header, payload en signature - die met punten aan elkaar worden geplakt tot een enkele tekststring. Een minder gangbare JSON-serialisatie staat meerdere signatures over dezelfde payload toe, wat uitkomst biedt wanneer meer dan een partij dezelfde data moet ondertekenen.

JWS zegt niets over de betekenis van de payload; het beschermt die alleen. Juist die neutraliteit maakt dat JWS onder zoveel moderne webauthenticatie ligt: een ondertekend JSON Web Token is technisch gezien een JWS waarvan de payload toevallig een set claims is, en protocollen zoals OpenID Connect steunen op die handtekening om een relying party te laten vertrouwen wie het token heeft uitgegeven.

Let op: JWS bewijst dat de data niet is gewijzigd sinds ondertekening en, bij een asymmetrisch algoritme, door wie - maar een JWS bevat op zichzelf geen gekwalificeerd certificaat en geen QSCD, en is dus geen gekwalificeerde elektronische handtekening onder eIDAS. Formaten zoals JAdES voegen daarvoor het ontbrekende certificaat en validatiemateriaal toe bovenop hetzelfde JWS-mechanisme.

Veelgestelde vragen

Terug naar begrippenlijst