JWT-im serverə göndərilirmi?+−
Xeyr. Deşifrə tamamilə brauzerinizdə atob və TextDecoder veb API-ləri ilə baş verir - token və imzanı yoxlamaq üçün yapışdırdığınız istənilən sirr və ya açıq açar heç vaxt cihazınızdan kənara çıxmır.
Bu alət imzanı yoxlaya bilərmi?+−
Bəli, əlindən gələni edən bonus kimi. Əgər HMAC sirrini bilirsinizsə (HS256/384/512 üçün) və ya PEM kodlu açıq açarı yapışdırsanız (RS256/384/512 və ya ES256/384/512 üçün), alət brauzerin Web Crypto API-sindən istifadə edərək imzanı yerli şəkildə yoxlayır. Açar olmadan yalnız başlıq və payload deşifrə edilib göstərilir - deşifrənin özü heç vaxt imza açarını tələb etmir.
Niyə alqoritm "none" kimi göstərilir?+−
"alg": "none" tokenin ümumiyyətlə imzalanmadığı deməkdir - istənilən şəxs onun içinə istənilən iddianı yaza bilərdi. Bəzi kitabxanalar tarixən belə imzasız tokenləri səhvən etibarlı qəbul edib, bu da autentifikasiyanı yayındırmağın tanınmış üsuluna çevrilib. Bu alət bunu diqqətdən qaçırmamağınız üçün həmişə aydın şəkildə göstərir.
exp, iat və nbf nə deməkdir?+−
Bunlar RFC 7519-dan standart zaman möhürü iddialarıdır: iat tokenin nə vaxt verildiyini, nbf onun etibarlı olacağı ən erkən anı, exp isə etibarlılığının bitəcəyi anı göstərir. Hər üçü NumericDate - Unix epoxundan bəri keçən saniyələr - kimi saxlanılır və bu alət bunu oxuna bilən tarixə və "2 saatdan sonra bitir" kimi nisbi vaxta çevirir.
Niyə sirr olmadan payload-u oxuya bilirəm?+−
Çünki JWT-nin başlığı və payload-u yalnız base64url ilə kodlanıb, şifrələnməyib - kodlama məxfilik demək deyil. Tokenə sahib olan hər kəs artıq iddiaları oxuya bilər; imza yalnız onların açarı olmayan biri tərəfindən dəyişdirilmədiyini sübut edir. Heç vaxt bir hücumçunun birbaşa oxumasını istəmədiyiniz heç nəyi JWT payload-unun içinə qoymayın.
Tokenimin 3 hissəsi var, amma yenə də deşifrə olunmur - niyə?+−
Üç seqmentin (başlıq, payload, imza) hər biri etibarlı base64url mətni olmalı, başlıq və payload isə etibarlı JSON-a deşifrə olunmalıdır. Bu alət başlığı və payload-u müstəqil şəkildə deşifrə edir və səssizcə uğursuz olmaq əvəzinə hansının pozulduğunu və səbəbini (pis base64, pis UTF-8 və ya etibarsız JSON) dəqiq bildirir.