Tasuta konverter

JWT märk Dekooder

Dekodeerige JWT (JSON Web Token) päis ja kasulik koormus koheselt oma brauseris. Tasuta, privaatne ja kliendipoolne – andmeid ei saadeta ühelegi serverile.

Sellest tööriistast

JSON-i veebimärgid (JWT) on RFC 7519-ga määratletud kompaktne, URL-i turvaline vorming nõuete edastamiseks kahe osapoole vahel. JWT on kolm base64url-kodeeringuga segmenti, mis on eraldatud punktidega: päis (algoritm ja loa tüüp), kasulik koormus (nõuded) ja allkiri (krüptograafiline autentsuse tõend). Päis ja kasulik koormus on URL-i ohutuse tagamiseks JSON-kodeeringuga base64url; allkiri kasutab ühte mitmest algoritmist (HS256, RS256, ES256 ja teised) kodeeritud päises ja kasulikus koormuses.

JWT dekodeerimine – segmentideks jagamine ja base64-dekodeerimine – ei nõua mingit saladust. Igaüks, kellel on märgi tekst, saab lugeda selle päist ja kasulikku koormust. Allkirja saab aga kontrollida ainult salajase (HMAC) või avaliku võtmega (asümmeetriline). Dekodeerimine on kontrollimiseks; kontrollimine on see, mis tõestab autentsust.

See dekooder jagab märgi pooleks, dekodeerib base64-ga iga segmendi, analüüsib päise ja kasuliku koormuse JSON-ina ning näitab tulemust. See ei ürita allkirja kontrollida, kuna selleks on vaja salajast või avalikku võtit, mida dekooderil ei ole. Dekodeeritud väljund on kirjutuskaitstud kontroll – see on kasulik žetoonide silumiseks, kuid ei asenda rakenduse koodi nõuetekohast kontrollimist.

Miks JWT-sid dekodeerida?

Autentimisprobleemide silumine hõlmab peaaegu alati žetoonide kontrollimist. Koodis kehtivana näival märgil võivad olla valed nõuded, ootamatu algoritm, aegunud eksptsiooni ajatempel või vaatajaskonna mittevastavus. Märgi dekodeerimine näitab täpselt, mida väljaandja tootis.

Abiks on ka žetoonide kontrollimine integreerimistöö käigus. Kolmanda osapoole API või identiteedipakkujaga ühenduse loomisel on nõuete tegelikud nimed, vormingud ja struktuur kõige paremini mõistetavad näidislubade dekodeerimisel, selle asemel, et tugineda dokumentatsioonile, mis võib olla aegunud.

Kuidas kasutada

Kleepige märk, hankige sõelutud sisu.

  1. Kleepige oma JWT: Pukseerige täismärk (header.payload.signature) sisestusalale. Dekooder aktsepteerib märke koos valikulise kandja eesliitega või ilma.
  2. Kontrollige päist: Päis näitab allkirjastamisalgoritmi (alg) ja märgi tüüpi (typ). Levinud algoritmid on HS256, RS256 ja ES256. Jälgige alg: puudub, mis annab märku allkirjastamata märgist ja on tootmises harva ohutu.
  3. Kontrollige kasulikku koormust: Kasulik koormus sisaldab nõudeid: iss (väljaandja), sub (subjekt), aud (publik), exp (aegumine), iat (väljastatud kell) ja mis tahes rakendusepõhised nõuded. Standardsed ajatemplid on Unixi ajastusekundid.
  4. Kontrollige eraldi: Dekooder ei kontrolli allkirja. Autentsuse kontrollimiseks käivitage token läbi JWT teegi, mille rakenduse koodis on sobiv salajane või avalik võti.

Levinud kasutusjuhtumid

Tehnilised üksikasjad

JWT-vormingus on kolm segmenti, mis on ühendatud punktidega. Iga segment on base64url-kodeeringuga – base64 URL-i turvaline variant, mis kasutab + ja / asemel märke - ja _, kusjuures täidis on mõnikord välja jäetud. Dekodeerimine nõuab URL-i jaoks ohutute asenduste tühistamist, segmendi polsterdamist ja base64-dekodeerimist.

Päis ja kasulik koormus on pärast dekodeerimist JSON. Signatuurisegment on binaarne (toores signatuuribaidid) ega ole inimloetav; see nõuab, et kinnitusvõti oleks kasulik.

RFC 7519-s määratletud levinud väited: iss (väljaandja), alam (subjekti identifikaator), aud (publik), exp (aegumine Unixi ajastu sekundites), nbf (mitte-enne ajatempel), iat (väljastatud ajatempel), jti (ainulaadne loa ID). Rakendusepõhised väited võivad ilmuda mis tahes nimega.

Parimad tavad

Korduma kippuvad küsimused

Kas minu JWT siia kleepimine on ohutu?
Jah. Dekodeerimine toimub täielikult teie brauseris – luba ei saadeta kunagi ühelegi serverile. Kuid JWT-d on mandaadid – ärge jagage neid avalikult (ekraanitõmmistes, Stack Overflow postitustes jne), kuna need võivad anda juurdepääsu teie kontodele.
Kas see tööriist kontrollib JWT allkirja?
See tööriist dekodeerib ja kuvab märgi sisu. Allkirja kinnitamiseks on vaja salajast võtit (HMAC) või avalikku võtit (RSA/ECDSA), mis peaks jääma teie serverisse. Tööriist näitab kasutatud algoritmi, kuid ei saa ilma võtmeta kontrollida.
Mida tähendavad standardsed JWT nõuded?
iss = väljaandja, sub = subjekt (kasutaja ID), exp = aegumisaeg (Unixi ajatempel), iat = välja antud, nbf = mitte varem, aud = publik, jti = JWT ID. Kohandatud nõuded võivad sisaldada mis tahes rakendusepõhiseid andmeid.
Miks saab keegi JWT-d dekodeerida?
JWT-d on kodeeritud, mitte krüptitud. Kasulik koormus on Base64URL-kodeeringuga (mitte krüptitud), nii et igaüks saab seda lugeda. Allkiri takistab rikkumist, mitte lugemist. Ärge kunagi salvestage tundlikke andmeid (paroole, SSN-e) JWT-koormustesse.
Miks on mõnel märgil allkiri puudu?
Algmärgiga märgid: ühelgi pole allkirja. Need on spetsifikatsioonide järgi kehtivad JWT-d, kuid ei anna autentsuse garantiid ja neid ei tohiks tootmises aktsepteerida.
Kas JWT-d on krüpteeritud?
Standardsed JWT kasulikud koormused on allkirjastatud, kuid mitte krüptitud. JWE (JSON Web Encryption, RFC 7516) on krüpteeritud žetoonide jaoks eraldi vorming. Enamik looduses leiduvaid JWT-sid on JWS (ainult allkirjastatud).
Kas minu tunnus on serverisse üles laaditud?
Ei. Dekodeerimine toimub teie brauseris; žetoon ei lahku teie seadmest.
Kui pikad JWT-d tavaliselt on?
Igal pool mõnesajast kuni mitme tuhande tähemärgini. Pikkus sõltub nõuete arvust ja suurusest pluss allkirja pikkusest (mis sõltub algoritmist).