Ugrás a tartalomhoz

JWT generátor

JSON Web Token építése és aláírása HMAC-kal közvetlenül a böngészödben.

Bemenet
Kimenet

JWT generátor

Illessz be egy JSON payload-ot, és ez az eszköz összeállít egy teljes JSON Web Token-t: a kiválasztott algoritmusból felépíti a fejlécet, Base64URL-ként kódolja a fejlécet és a payload-ot, majd HMAC-kal aláírja az eredményt. Használd test tokenek létrehozásához egy API-hoz, egy hitelesítési folyamat hibakereséshez, vagy hogy pontosan lássam, hogyan néz ki egy adott állítási készlet kódolva.

Válassz HS256, HS384 vagy HS512 algoritmusból, és add meg a titkos kulcsot, amellyel a token aláírásra kerül — ugyanazt a kulcsot, amelyet a szervered az ellenőrzéshez használ. Gyors kitöltési kapcsolók hozzáadják a közös időbeli állításokat anélkül, hogy kézzel kellene gépelned: az "iat" az aktuális idővel pécsétel meg egy tokent, az "expires in" az "exp"-t a mostani időhöz plusz egy kiválasztott időtartamra állítja (15 perctől 30 napig, vagy egyáltalán nem), az "nbf" pedig megjelöli a tokent, amely nem érvényes az adott időpontig. Külön mezők állítják be a "sub" és "iss" értékeket, ha alany vagy kibocsátó állításra van szükséged. A gyors kitöltési állítás mindig felülírja a JSON-ban már meglévő azonos nevű állítást, így elindulhatsz egy sablon payload-ból, és az érintésekkel kitöltetheted a többit.

A payload szépítve vagy kompaktul lehet — a szépítés csak azt módosítja, hogyan van beágyazva a JSON, nem azt, ami dekódolódik. Az aláírás után az eszköz dekódolja az imént felépített tokent, és függetlenül újra ellenőrzi az aláírást a Web Crypto API-val, így az összefoglaló sor megerősíti, hogy a token ténylegesen ellenőrzésre kerül, nem csak azt feltételezi. Nagyon nagy payload-ok kezelhetők egy 10 MB-os kimeneti korláttal, és ugyanaz a titkos és payload mindig ugyanazt a tokent hozza létre — semmi itt nem véletlenszerűségtől függ.

Minden helyileg fut a böngészödben: a payload, a titkos kulcs és az aláírás maga soha nem hagyja el az eszközöd, és nem érinti a szervert. Másolja a tokent, töltsd le .txt fájlként, vagy küldd közvetlenül a JWT dekóderhez az ellenőrzéshez.

Gyakori kérdések

Mely algoritmusok támogatottak?
HS256, HS384 és HS512 — HMAC aláírás SHA-256, SHA-384 vagy SHA-512 segítségével. Az RS256 vagy ES256 olyan aszimmetrikus algoritmusoknak privát kulcspáron van szükség, és itt nem támogatottak.
Mi történik, ha üresen hagyom a payload-ot?
Az üres payload üres JSON objektumként kezelendő. A gyors kitöltési kapcsolók kombinálásával még egy olyan tokent is generálhatsz, amely csak olyan állításokat hordoz, mint az "iat" és az "exp".
A gyors kitöltési állítások felülírják az általam begépelteket?
Igen, tervezett módon: az "iat", "exp", "nbf", "sub" és "iss" a kapcsolóktól és mezőkről mindig elsőbbséget élveznek az azonos nevű állítás helyett a JSON payload-ban.
Hogyan történik az aláírás ellenőrzése?
Az aláírás után az eszköz dekódolja az imént létrehozott tokent, és függetlenül újra ellenőrzi az aláírást a böngésző Web Crypto API-jával, majd az eredményt az összefoglaló sorban jelenti.
A titkos kulcsom vagy a payload feltöltésre kerül valahova?
Nem. Az egész token a böngészödben épül fel és íródik alá a Web Crypto API segítségével — a titkos kulcs, a payload és az eredményt kapott token soha nem hagyja el az eszközöd, és a titok soha nem kerül helyi tárhelyre mentésre.