UltKit

JWT-afkóðari

Límdu inn JSON Web Token og lestu haus hans og gögn (payload) sem sniðið JSON, þar sem gildistími og útgáfutími birtast sem dagsetningar ásamt athugasemd um hvort tókinn sé gildur núna. Afkóðunin fer að öllu leyti fram í vafranum þínum, sem skiptir máli þegar tókinn er virkt auðkenni.

0 stafir · 0 orð · 0 línur

0 stafir · 0 orð · 0 línur

Keyrir alfarið í þessum vafraflipa. Textinn þinn er aldrei sendur inn eða vistaður.

Skráðar kröfur

Kröfuheitin sjö sem eru skilgreind í RFC 7519 §4.1. Þau eru öll valfrjáls; tímar eru sekúndur frá 1970-01-01 UTC.

KrafaMerking
issÚtgefandi: hver bjó til og undirritaði táknið
subViðfang: notandinn eða aðilinn sem táknið snýst um
audViðtakandi: fyrir hvern táknið er ætlað
expGildislok: hafna tákninu eftir þetta augnablik
nbfEkki fyrr en: hafna tákninu fyrir þetta augnablik
iatÚtgáfutími: hvenær táknið var búið til
jtiJWT-auðkenni: einkvæmt auðkenni, notað til að koma í veg fyrir endurspilun

Algeng alg-gildi

alg-gildiMerking
HS256HMAC með SHA-256; einn sameiginlegur leynilykill undirritar og staðfestir
RS256RSA PKCS#1 v1.5 undirskrift með SHA-256; einkalykill undirritar, opinber lykill staðfestir
PS256RSA-PSS með SHA-256
ES256ECDSA á P-256 ferlinum með SHA-256; stuttar undirskriftir
EdDSAEd25519- eða Ed448-undirskriftir
noneÓundirritað tákn; þjónar ættu að hafna því

Hvað er inni í JSON Web Token

JWT er skilgreint í RFC 7519 (maí 2015), þar sem mælt er með að bera það fram eins og enska orðið „jot“. Algengasta undirritaða formið eru þrjár Base64url-strengir tengdir með punktum: header.payload.signature. Haus (header) tilgreinir undirritunaralgrímið í alg, svo sem HS256 eða RS256, og oft lykilauðkenni í kid. Gagnahlutinn (payload) geymir kröfur (claims), JSON-reiti eins og sub (notandinn), iss (útgefandinn), aud (ætlaður viðtakandi) og exp, nbf og iat, sem eru tímasetningar í sekúndum frá 1. janúar 1970 UTC. Afkóðarinn breytir þessum þremur í staðartíma og ISO 8601 og segir þér hvort táknið (token) er útrunnið, ekki orðið gilt enn eða innan gildistíma.

Base64url er kóðun en ekki dulritun, þannig að hver sem hefur tákn í höndunum getur lesið gagnahluta þess nákvæmlega eins og þessi síða gerir. Settu aldrei lykilorð, kortanúmer eða önnur leyndarmál í kröfur. Tákn með fimm hlutum aðskildum með punktum er JWE, dulritað tákn; innihald þess verður ekki lesið án lykilsins og afkóðarinn lætur þig vita af því. „Bearer “ fremst, afritað úr Authorization-haus, er fjarlægt sjálfkrafa.

Hvers vegna undirskriftin er ekki staðfest hér

Undirskriftin sannar að haus og gagnahluti voru útbúnir af einhverjum sem hefur lykilinn og hafa ekki breyst síðan. Til að sannreyna hana þarf þann lykil: sameiginlega leyndarmálið fyrir HMAC-algrím eins og HS256, eða opinberan lykil útgefanda fyrir RS256, ES256 eða EdDSA. Það er slæm hugmynd að líma undirritunarleyndarmál úr framleiðsluumhverfi inn á vefsíðu, og afkóðari sem léti eins og hann gæti staðfest tákn án þess gæfi falskt öryggi. Því sýnir þetta tól undirskriftina en sannreynir hana ekki. Líttu á það sem þú sérð sem fullyrðingu táknsins, ekki staðreynd.

Sannreyning á heima á þjóninum þínum, með viðhaldnu safni (library) þar sem væntanlegt algrím er fest. Tvenn söguleg mistök skýra hvers vegna: að samþykkja alg „none“, sem gerir hverjum sem er kleift að falsa óundirritað tákn, og algrímsruglingur, þar sem þjónn sem býst við RS256 er blekktur til að athuga HS256-undirskrift með opinbera lyklinum sem HMAC-leyndarmáli. Afkóðari er til villuleitar: til að sjá hvaða kröfur þjónustuaðili gefur út, finna rangan viðtakanda eða komast að því að lota mistókst af því að exp rann út fyrir mínútu. Til að lesa Base64url-hlutana óunna skaltu nota Base64-afkóðara.

Algengar spurningar

Er öruggt að líma raunverulegan aðgangstóka inn í JWT-afkóðara?
Táknið fer aldrei út úr vafranum þínum á þessari síðu. Gilt tákn virkar samt eins og lykilorð þar til það rennur út, svo notaðu frekar útrunnin tákn eða prófunartákn og haltu virkum táknum frá skjámyndum og spjalli.
Hvers vegna sýnir tókinn minn að hann sé útrunninn þótt hann hafi nýlega verið gefinn út?
Athugaðu fyrst klukkuna í tækinu. Sumir útgefendur gefa aðgangstáknum aðeins nokkurra mínútna líftíma og tákn afritað úr annál getur verið eldra en það sýnist. exp skrifað í millisekúndum í stað sekúndna gerir öfugt og lendir þúsundir ára inni í framtíðinni.
Getur einhver breytt gögnunum í JWT-tókanum mínum?
Þeir geta breytt því og kóðað það aftur, en undirskriftin passar þá ekki lengur. Þjónn sem sannreynir undirskriftir með réttum lykli og algrími hafnar breytta tákninu.
Hver er munurinn á JWS og JWE?
JWS (RFC 7515) er undirritað, hefur þrjá hluta og hver sem er getur lesið það. JWE (RFC 7516) er dulritað, hefur fimm hluta og aðeins lyklahafi getur lesið gagnahlutann.
Ógildir útskráning JWT-tóka?
Ekki eitt og sér. Undirritað JWT helst gilt til exp nema þjónninn haldi svartan lista eða athugi lotuskrá, og þess vegna fá aðgangstákn yfirleitt stuttan líftíma.