Ondertekening van JWTs

Ondertekening van JWTs

Het DSGO maakt gebruik van eIDAS Electronic Seals voor het tekenen van JWTs om de integriteit en onweerlegbaarheid van interacties tussen partijen waar te borgen. Het tekenen van JWT die worden meegestuurd met alle API requests en responsen is een beveiligingsmechanisme die wordt toegepast boven op het beveiligen van het communicatieprotocol met TLS.

JWT Signing (JWS)

Informatie bevat in het JSON-object kan worden geverifieerd en vertrouwd omdat deze digitaal zijn ondertekend. JWTs kunnen worden ondertekend met behulp van de JSON Web Signature (JWS) standaard (volgens RFC 7515).

DSGO.Basis: Partijen MOETEN het RS256 algoritme gebruiken bij het ondertekenen van alle JWTs

DSGO.Basis: Partijen MOETEN alle JWTs ondertekenen als een JSON Web Signature (JWS) zoals beschreven in RFC 7515

DSGO.Basis: Partijen MOETEN alle getekende Onweerlegbaarheid JWTs formatteren volgens JWS Compact Serialisation

Signing Input

Authenticatie JWT

De handtekening van een Authenticatie JWT wordt getekend over de JWT header en JWT claims op standaard wijze volgens RFC7515.

DSGO.Basis: Partijen MOETEN voor alle Authenticatie JWTs de signing input opstellen volgens RFC 7515: ASCII(BASE64URL(UTF8(JWS Protected Header)) || '.' || BASE64URL(JWS Payload))

Onweerlegbaarheid JWT

De handtekening van een Onweerlegbaarheid JWT wordt getekend over de JWT header, JWT claims, en HTTP headers zoals aangegeven in de sigD JWT header (zie JWT header voor meer informatie).

DSGO.Basis: Partijen MOETEN voor alle Onweerlegbaarheid JWTs de Protected HTTP Headers opstellen voor ondertekening zoals aangegeven in de sigD JWT header

DSGO.Basis: Partijen MOETEN voor alle Onweerlegbaarheid JWTs de signing input opstellen als: ASCII(BASE64URL(UTF8(JWS Protected Header)) || '.' || BASE64URL(JWS Payload)) || '.' || BASE64URL(Protected HTTP Headers))