Generatur u Verifikatur tal-JWT
Oħloq u ivverifika JSON Web Tokens b’HS256, RS256, PS256, ES256 jew EdDSA. Editja l-claims, issettja exp u iat, u iċċekkja l-firem fil-brawżer tiegħek.
Iċ-ċwievet u t-tokens huma sigrieti. Kollox jiġi ffirmat u vverifikat lokalment bl-API Web Crypto tal-brawżer tiegħek: xejn ma jittella’.
Oħloq JWT iffirmat
Dan il-brawżer ma jappoġġjax Ed25519 f’Web Crypto, għalhekk EdDSA mhuwiex disponibbli.
Iċ-ċwievet tat-test jiġu ġġenerati fil-brawżer tiegħek u jimtlew hawn taħt. Żomm iċ-ċavetta privata jew is-sigriet għalik; ikkondividi biss iċ-ċavetta pubblika.
Ivverifika JWT
Kif toħloq JWT iffirmat
- Agħżel l-Algoritmu: HS256/384/512 (sigriet kondiviż), RS256/384/512 jew PS256/384/512 (RSA), ES256/384/512 (ECDSA fuq P-256, P-384 jew P-521), jew EdDSA (Ed25519, meta l-brawżer tiegħek jappoġġjah).
- Editja l-Header (JSON) u l-Payload (claims JSON). Il-qasam
algdejjem isegwi l-algoritmu magħżul, utyphuwaJWTb’mod awtomatiku. - Uża l-buttuni tal-claims taż-żmien biex iżżid dati: iat = issa, nbf = issa, jew agħżel dewmien bħal “f’siegħa” u ikklikkja Issettja exp. Il-valuri huma NumericDates: sekondi mill-1 ta’ Jannar 1970 UTC.
- Daħħal is-Sigriet (algoritmi HS, bħala test jew Base64/Base64url taħt Format tas-sigriet) jew iċ-Ċavetta privata (PEM jew JWK). M’għandekx ċavetta għadha? Ikklikkja Iġġenera ċavetta tat-test.
- Ikklikkja Iffirma t-token, imbagħad Ikkopja r-riżultat jew ikklikkja Ivverifika dan it-token biex tiċċekkjah minnufih.
Kif tivverifika JWT
- Waħħal it-token taħt Token li trid tivverifika.
- Agħżel l-Algoritmu mistenni. Jekk titlaqha fuq “Mill-header tat-token (qatt none)”, jiġi aċċettat kulma jgħid il-header, ħlief
none; jekk tagħżel algoritmu speċifiku, l-għodda tirrifjuta kull token iffirmat b’mod differenti, kif għandu jagħmel server vera. - Daħħal is-sigriet, jew iċ-Ċavetta pubblika (PEM jew JWK): blokk PEM
PUBLIC KEY,RSA PUBLIC KEYjewCERTIFICATE, JWK, jew JWK Set (tintuża ċ-ċavetta li l-kidtagħha jaqbel mal-header). - Jekk trid, issettja Tolleranza tal-arloġġ (sekondi) biex tittollera differenzi żgħar fl-arloġġ, imbagħad ikklikkja Ivverifika t-token.
Ir-riżultat jgħid jekk il-firma hijiex valida, u mbagħad jiċċekkja exp (skadenza) u nbf (mhux qabel) mal-ħin attwali tal-kompjuter tiegħek. Token b’firma korretta iżda b’skadenza fil-passat jiġi rrappurtat bħala skadut, mhux bħala validu.
Ċwievet u formati
Għall-iffirmar, l-għodda taċċetta blokki PKCS#8 PRIVATE KEY, blokki PKCS#1 RSA PRIVATE KEY u SEC1 EC PRIVATE KEY (ikkonvertiti internament għal PKCS#8), u JWKs privati. Ċwievet protetti b’password iridu jiġu esportati l-ewwel mingħajr password. Iġġenera ċavetta tat-test toħloq sigriet każwali tad-daqs tal-hash għall-algoritmi HS, par ta’ ċwievet RSA ta’ 2048 bit għal RS u PS, il-kurva li taqbel għal ES, jew par Ed25519. Iċ-ċwievet jingħataw bħala PEM u JWK, u jimtlew fiż-żewġ naħat biex iċ-ċiklu sħiħ jaħdem minnufih.
Il-firem isegwu r-RFC 7515 u r-RFC 7518: RSA-PSS juża salt twil daqs il-hash, u l-firem ECDSA huma l-konkatenazzjoni mhux ipproċessata r||s. L-implimentazzjoni terġa’ tipproduċi l-eżempju HS256 tal-RFC 7515, Appendiċi A.1.
Noti dwar is-sigurtà
- Kollox jaħdem fil-brawżer tiegħek bl-API Web Crypto. La t-tokens u lanqas iċ-ċwievet ma jintbagħtu imkien, iżda xorta ippreferi ċwievet tat-test minflok sigrieti tal-produzzjoni.
alg: noneqatt ma jiġi ffirmat u qatt ma jiġi aċċettat.- Is-sigrieti HMAC għandhom ikunu twal mill-inqas daqs il-hash (32 byte għal HS256). Sigriet iqsar iwassal għal twissija.
- Firma tipprova l-integrità u l-oriġini, mhux li l-claims huma xierqa: is-servers iridu jiċċekkjaw ukoll
iss,audu l-iskopijiet.
Mistoqsijiet frekwenti
X’inhi d-differenza bejn HS256 u RS256?
HS256 juża sigriet kondiviż wieħed kemm biex jiffirma kif ukoll biex jivverifika, għalhekk kull verifikatur jista’ wkoll jiffalsifika tokens. RS256 (u PS256, ES256, EdDSA) jiffirma b’ċavetta privata u jivverifika b’ċavetta pubblika li tista’ tiġi ppubblikata b’mod sigur.
Għaliex firma valida xorta turi żball?
Għax it-token huwa barra mill-perjodu tal-validità tiegħu: exp huwa fil-passat jew nbf huwa fil-futur. Il-kontroll tal-firma u dak taż-żmien jiġu rrappurtati separatament.
Għaliex alg “none” jiġi rrifjutat?
Token mhux iffirmat jista’ joħloqu kulħadd. L-aċċettazzjoni tiegħu kienet vulnerabbiltà klassika tal-libreriji JWT, għalhekk din l-għodda tirrifjutah kemm meta tiffirma kif ukoll meta tivverifika.
Nista’ nuża ċavetta RSA jew EC tiegħi?
Iva. Waħħal iċ-ċavetta privata bħala PEM jew JWK biex tiffirma, u ċ-ċavetta pubblika biex tivverifika. L-għodda tiċċekkja li t-tip ta’ ċavetta u l-kurva jaqblu mal-algoritmu magħżul.
Għaliex EdDSA huwa diżattivat?
Il-brawżer tiegħek għad ma jappoġġjax Ed25519 f’Web Crypto. Verżjonijiet reċenti ta’ Chrome, Edge, Firefox u Safari jappoġġjawh.
Għodod relatati
- Dekodifikatur tal-JWT Iddekodifika l-header u l-payload ta’ JWT, aqra exp, iat u nbf bħala dati u ivverifika firem HS256, RS256, PS256, ES256 jew EdDSA fil-brawżer tiegħek.
- Ġeneratur HMAC Ikkalkula HMAC-SHA1, SHA-256, SHA-384 jew SHA-512 b’ċavetta test, hex jew Base64, kseb output hex u Base64, u ivverifika firma webhook fil-brawżer tiegħek.
- Konvertitur tal-Unix Timestamp Ikkonverti Unix timestamps f’sekondi jew millisekondi għal dati li jinqraw fil-ħin lokali, UTC u ISO 8601, u erġa’ ibdel kwalunkwe data f’ħin epoch.
- Formatter u validatur tal-JSON Formatter u validatur tal-JSON b’xejn li jibbewtifika, jimminimizza u jiċċekkja l-JSON fil-brawżer tiegħek, b’żbalji tas-sintassi bil-linja u l-kolonna.