# JWT generatorius

Sukurkite pasirašytą JSON žiniatinklio žetoną su savo JSON teiginiais. Pasirinkite HS256, HS384 arba HS512 su bendruoju slaptuoju raktu, RS256–PS512 su RSA privačiuoju raktu, ES256–ES512 su atitinkamu EC raktu arba EdDSA su Ed25519 raktu, pateiktu PEM arba JWK formatu. Generatorius gali pridėti iat, exp ir kid antraštę, pasirašo naudodamas jose biblioteką ir greta iškoduotos antraštės bei naudingojo turinio parodo glaustą žetoną.

## Dažnai užduodami klausimai

### Kokius pasirašymo algoritmus galiu naudoti?

Generatorius palaiko HS256, HS384 ir HS512 su bendruoju slaptuoju raktu, RS256, RS384, RS512, PS256, PS384 ir PS512 su RSA privačiuoju raktu, ES256, ES384 ir ES512 su EC privačiuoju raktu P-256, P-384 arba P-521 kreivėje ir EdDSA su Ed25519 privačiuoju raktu. Pasirinktas algoritmas įrašomas į alg antraštę, o typ visada nustatomas į JWT.

### Ką įvesti kaip naudingąjį turinį?

Įveskite JSON objektą su savo teiginiais, pavyzdžiui, sub, name, iss, aud arba bet kuriuo pasirinktiniu nariu. Masyvai, eilutės ir kitos reikšmės, kurios nėra objektai, atmetamos, nes JWT naudingasis turinys turi būti JSON objektas. Teiginių tvarka ir reikšmės išsaugomos tiksliai taip, kaip jas įvedėte.

### Kaip nuskaitomas HMAC slaptasis raktas?

Naudojant HS256, HS384 ir HS512, slaptasis raktas naudojamas kaip UTF-8 tekstas, pašalinus tarpus jo pradžioje ir pabaigoje. Jei slaptasis raktas yra dvejetainis, įklijuokite jį kaip JWK, pavyzdžiui, {"kty": "oct", "k": "..."}, kur baitai pateikti base64url formatu; vietoj to naudojami iškoduoti baitai. HMAC algoritmams PEM raktai nepriimami, nes viešojo rakto naudojimas kaip HMAC slaptojo rakto yra dažna klaida.

### Kokio ilgio turėtų būti HS256 slaptasis raktas?

RFC 7518 reikalauja, kad raktas būtų bent tokio ilgio kaip maišos funkcijos išvestis: 32 baitų HS256, 48 HS384 ir 64 HS512. Įrankis pasirašo ir trumpesniais slaptaisiais raktais, kad galėtumėte atkurti bandomuosius žetonus, tačiau gamybinėje aplinkoje naudojami slaptažodžiai turėtų būti ilgos atsitiktinės reikšmės, pavyzdžiui, sugeneruotos slaptažodžių generatoriumi.

### Kokie privatųjų raktų formatai priimami RSA, EC ir EdDSA?

Įklijuokite nešifruotą PEM privatųjį raktą PKCS #8 (BEGIN PRIVATE KEY), PKCS #1 (BEGIN RSA PRIVATE KEY) arba SEC1 (BEGIN EC PRIVATE KEY) formatu arba privatųjį JWK, kuriame yra jo d narys. Šifruoti PEM failai ir OpenSSH privatieji raktai nenuskaitomi. Raktas turi atitikti algoritmą, todėl ES384 reikia P-384 rakto, o RSA raktai turi būti bent 2048 bitų.

### Kaip nustatomos iat ir exp reikšmės?

Įjungus parinktį „išduota“, iat nustatoma į dabartinį laiką, nebent naudingajame turinyje jau yra iat teiginys. Kai galiojimo laikas didesnis nei 0 sekundžių, exp nustatoma į dabartinį laiką plius nurodytas sekundžių skaičius ir pakeičia bet kurią naudingajame turinyje esančią exp reikšmę. Jei galiojimo laikas yra 0, exp nepridedama, o naudingajame turinyje esanti exp išsaugoma.

### Kam skirtas kid laukas?

Ne tuščias rakto ID įrašomas į kid antraštę, kad tikrintuvai galėtų pasirinkti tinkamą raktą iš JWKS. Jei pasirašymo raktu įklijuojate JWKS, kid taip pat nurodo, kuris rinkinio raktas pasirašo žetoną. JWK keitiklis ir raktų generatoriai rodo RFC 7638 kontrolinę sumą, kuri puikiai tinka kaip kid.

### Kas pateikiama rezultate?

Gausite glaustą žetoną, algoritmą, rakto ID, išdavimo ir galiojimo laikus UTC formatu ir tiksliai pasirašytą antraštę bei naudingąjį turinį JSON. Nukopijuokite žetoną iš pirmojo bloko. Vėliau iškoduokite jį naudodami JWT dekoderį arba patikrinkite su JWT tikrintuvu.

### Ar mano slaptieji raktai arba raktai saugomi?

Ne. Slaptasis arba privatusis raktas perduodamas tik užklausoje, kuria pasirašomas žetonas, panaudojamas vieną kartą atmintyje ir niekada neregistruojamas ar neišsaugomas. Vis dėlto bandymams naudokite bandomuosius raktus ir niekada neįklijuokite gamybinio pasirašymo rakto į jokį žiniatinklio įrankį, nebent valdote serverį.

### Ar taikomi dydžio apribojimai?

Naudingasis turinys gali būti iki 65,536 simbolių, raktas – iki 65,536 simbolių, o kid – iki 256 simbolių ilgio. Galiojimo reikšmės gali svyruoti nuo 0 iki 315,360,000 sekundžių, tai yra dešimties metų. Ilgesni įvesties duomenys atmetami, nurodant probleminį lauką.

Jūsų reklama čia?

[Parašykite mums el. paštu](mailto:hi@dennn.is?subject=Reklama%20svetain%C4%97je%20OneClick%20Pro)

[Reklama Įskiepių rinkinys, paruoštas agentams, skirtas WordPress.](https://sleekwp.com/?ref=oneclickpro)
