JWT Dekoder

Oflayn işləyirHeç nə yüklənmirPulsuz, qeydiyyatsız

JWT-ni başlıq və iddialarına açın, nə vaxt bitdiyini canlı geri sayımla görün və HMAC imzasını gizli açarla yoxlayın — hər şey brauzerinizdə qalır; token yapışdırılası yeganə yer də elə budur.

JWT-nin üç hissəsi

JWT nöqtələrlə birləşmiş üç base64url seqmentdir. Başlıq imza alqoritmini adlandırır; yük iddiaları daşıyır; imza ötürülən ilk iki seqmenti olduğu kimi əhatə edir — açılmış JSON-u yox. Yükü yenidən kodlaşdırmağın bayt-bayt eynilik tələb etməsinin və bu alətin imza yoxlanışında orijinal seqmentləri saxlamasının səbəbi budur.

HissəNə daşıyırİmza qoruyurmu?
Başlıqalqoritm, token tipi, açar id-sibəli
Yükiddialar — kim, kimin üçün, nə vaxta qədərbəli
İmzailk iki hissənin HMAC və ya asimmetrik imzası—

Vaxt iddialarını oxumaq

exp, nbf və iat saniyə ilə Unix vaxtlarıdır — 1516239022 kimi qiymət 2018-ci ilin tarixidir, 1970-in yox. Alət hərəsini UTC-yə və nisbi vaxta çevirir, status sətrini onlardan çıxarır: etibarlı, vaxtı keçib, ya hələ etibarlı deyil. Buradakı ən adi kəşf saat sapmasıdır — saatı bir dəqiqə irəli gedən serverin verdiyi token qalan hamı üçün «hələ etibarlı deyil».

Bu səhifədəki hər şey yerli işləyir; nə token, nə açar, nə iddia brauzerinizdən çıxmır.

Tez-tez verilən suallar

Tokeni bura yapışdırmaq təhlükəsizdirmi?

Səhifə heç nəyi heç yerə göndərmir — həm açma, həm HMAC yoxlaması brauzerinizdə işləyir; səhifəni açıb şəbəkədən ayrılmaqla bunu özünüz yoxlaya bilərsiniz. Bununla belə, canlı istehsalat tokenlərinə hər yerdə şifrə kimi baxın: bu alətin yerli olması onun var olma səbəbidir — tokeni təsadüfi onlayn dekodera yapışdırmaq daşıyıcı etimadnaməni yad adama vermək deməkdir.

Tokeni niyə heç bir açarsız oxuya bilirəm?

Çünki JWT şifrələnmir, imzalanır. Başlıq və yük adi base64url-dur — kodlaşdırmadır, şifrələmə deyil — tokeni tutan hər kəs oxuya bilir. İmza yalnız kimin verdiyini və dəyişdirilmədiyini sübut edir. Məxfi heç nə JWT yükünə qoyulmamalıdır; bunun üçün şifrəli tokenlər (JWE) var.

İmza yoxlaması əslində nəyi sübut edir?

HS256/384/512 üçün imza başlıq.yük-ün ortaq gizli açarla HMAC-ıdır. Yoxlama sizin açarla keçirsə, token həmin açarı tutan tərəfindən yaradılıb və dəyişdirilməyib. Bitmə haqqında heç nə sübut etmir — vaxtı keçmiş tokenin imzası yenə etibarlıdır; alətin ikisini ayrı göstərməsinin səbəbi budur.

Niyə alqoritmin açıq açar istədiyini deyir?

RS256, ES256 və qohumları asimmetrikdir: verən gizli açarla imzalayır, açıq açarla hamı yoxlaya bilir. Onları yoxlamaq həmin açarı düzgün formatda tələb edir — bu, server tərəfinin işidir. Yuxarıda göstərilən açılmış məzmun hər halda tam və düzgündür — açmaq heç vaxt açar istəmir.

alg «none» xəbərdarlığı nədir?

JWT spesifikasiyası texniki olaraq alg-i none olan imzasız tokenə icazə verir. Erkən kitabxanalar belə tokenləri yoxlanılmış sayırdı — hücumçu imzanı atıb alg-i none edərək iddiaları sərbəst redaktə edə bilirdi. Müasir kitabxanalar rədd edir, amma alət bunu işarələyir, çünki real sistemdə none tokeni demək olar həmişə ya hücum izi, ya ciddi səhv qurulmadır.

Tokenim exp vaxtından əvvəl niyə işləməz oldu?

exp yalnız sərt yuxarı hədddir. Serverlər nbf-i gələcəkdə olan, iss və ya aud-u gözləniləndən fərqli, jti ilə ləğv edilmiş, ya da saat sapması həddini aşan tokenləri də rədd edir. İddialar cədvəli bunların hamısını göstərir — iss və aud-u serverin gözlədiyi ilə tutuşdurmaq «etibarlı amma rədd edilən» halların çoxunu tapır.

Oxşar alətlər