2016-11-24 3 views
3

Also versuche ich eine JWT (die ich im Zusammenhang mit "Deutsche Post-ID" bekomme) in PHP zu entschlüsseln und habe dafür ein paar Bibliotheken ausprobiert, hauptsächlich ' firebase/php-jwt 'als seine einfach zu bedienende Bibliothek mit einer Entschlüsselungsfunktion.Entschlüsselung eines A256GCM-verschlüsselten JWT in PHP

Leider unterstützt es nicht A256GCM-Algorithmus, so dass ich mit 'spomky-labs/jose' endete, aber es scheint nicht zu entschlüsseln und ich beginne zu glauben, dass PHP ist selten ungewöhnlich, JWTs zu entschlüsseln (leider im verpflichtet zu verwenden PHP). Hat jemand Erfahrung mit dieser Art von JWT und/oder eine Empfehlung für eine funktionierende Bibliothek?

Vielen Dank im Voraus für alle Antworten und, da es mein erster Beitrag ist, zögern Sie nicht, irgendwelche Vorschläge zu hinterlassen, wie ich meine Beiträge besser machen könnte.

Antwort

3

Die spomky-labs/jose unterstützt vollständig AES GCM verschlüsselte Token. Es wird getestet unter Verwendung der Testvektoren von RFC7520 und basierend auf on a library, die auch mit Vektor von NIST und IEEE802 getestet wird.

Allerdings könnte ein Fehler existieren, so schlage ich Ihnen vor, open an issue on the library repository und teilen Sie mehr Informationen über dieses Problem (Token, Schlüssel, Fehlermeldungen und so weiter).

Es kann auch von externen Problemen kommen (nicht in Verbindung mit der Bibliothek selbst) wie Ihr privater Schlüssel, eine beschädigte JWT, ein falsches Format (Basis 64 statt base64 URL sicher) oder ein Anspruch, der nicht unterstützt und markiert ist als kritisch.

Können Sie einen Link zum Token-Anbieter bereitstellen? Ich habe versucht, Informationen über die von Ihnen erwähnte Deutsche Post ID zu finden, aber die Antworten beziehen sich auf die OpenID Spezifikation und Token Verschlüsselung wird nicht erwähnt.

+0

Danke für Ihre Antwort! Es tut mir leid, aber ich habe das Token von meinem Chef bekommen und es enthält sensible persönliche Daten. Aber ich bin mir sicher, dass das Token gültig ist und funktioniert, da einer meiner Kollegen das Token in der Nimbus-Lib für Java entschlüsseln konnte - aber das ist jetzt nur ein Backup-Plan, weil unser Backend in PHP geschrieben ist. Dies ist die API der Post-ID Ich erhalte meine Informationen von [link] (https://www.deutschepost.de/content/dam/dpag/images/P_p/Postident/downloads/postid-id-card-api -en.pdf) – xtp

+0

@xpt: Können Sie mich privat auf [Gitter] kontaktieren (https://gitter.im/Spomky-Labs/php-aes-gcm). Will versuchen, es mit dir zu debuggen. –

+0

Es tut mir leid zu sagen, dass dies vorerst nicht mehr meine Aufgabe ist, da ich ein Lehrling bin und dies scheint über meinem Wissen der Materie zu sein. Ich habe einen Link in die Kommentare des Tickets eingefügt und ich hoffe, der Kollege wird sich mit Ihnen in Verbindung setzen, wenn er nicht weiterkommt. Aber vielen Dank für deine Mühe, das schätze ich sehr! – xtp