2016-07-18 28 views
1

Ich bin neu mit JWT, ich lese die RFC 7519 und viele Websites über das Problem JWE und JWS, aber ich bin ein wenig verwirrt über dieses Thema.Wie zu verwenden JWE und JWS in JWT.io

JWE ist codiert und JWS ist codiert und signiert. Die RFC beschreiben "

Wenn die JOSE Header für eine JWS ist, vertreten die JWTis asa JWS und die claimsare digital sigend oder Maced, mit der JWT Ansprüche JWS Payload sind.

Wenn die JOSE HeHeader ist für JWE, der JWT wird als JWE dargestellt und die Claims sind verschlüsselt, wobei der JWT Claim Set der Klartext ist, der vom JWE "

verschlüsselt wurde. Wie funktioniert das im JWT.io Framework? Ist es notwendig, dies durch myselfe zu implementieren oder brauche ich eine zusätzliche Bibliothek?

freundlichen Grüßen Michael

Antwort

1

JWE ist encodet und JWS ist encodet und unterzeichnet.

Nicht genau, JWE bedeutet, dass der JWT digital verschlüsselt ist und JWS bedeutet digital signiert.

jwt.io unterstützt JWE nicht und unterstützt teilweise JWS (nur kompakte Serialisierungsdarstellung mit HS256- oder RS256-Algorithmen). Es gibt eine Liste von Bibliotheken für verschiedene Anwendungsfälle, jedoch werden Bibliotheken, die JWE unterstützen, nicht aufgelistet.

Bei Spomky-Labs entwickelten wir a PHP library that supports JWE and JWS mit allen Algorithmen, die in der RFC7518 aufgeführt sind.

+0

Vielen Dank für die Antwort. Das bedeutet, dass die Ansprüche in dem "JWT" ​​-Header "JWE" oder "JWS" definieren. Unter dem Strich sind beide 'JWT's? ist das richtig? Weil, ich lese die 'RFC' für' JWE' und 'JWS' und es gibt nur eine Beschreibung über die Kopfforderungen. Ich frage so sehr, weil ich auch die einzelnen Details verstehen will und keine grobe Abstraktion. –

+1

Beide sind JWT. Die Header-Werte geben nur an, welche Art von Körper Sie haben ("cty"/"typ" -Header), wie Sie diesen Körper bekommen (ist es verschlüsselt oder signiert) und wie man seinen Inhalt verifiziert ("kritische Ansprüche", "b64") codiert...). –

+0

Danke, jetzt ist es total klar ... ich hoffe :) –