ถอดรหัส JWT ฟรี
ถอดรหัสและตรวจสอบ JSON Web Token ดู header, payload, วันหมดอายุ และ claim มาตรฐาน ทุกอย่างทำงานในเบราว์เซอร์ — token ไม่เคยออกจากอุปกรณ์
🔒 Token ถูกถอดรหัสทั้งหมดในเบราว์เซอร์ของคุณ ไม่มีข้อมูลถูกส่งไปยังเซิร์ฟเวอร์
การใช้งานทั่วไป
- ปัญหาการรับรองความถูกต้องของ Debug ด้วย JWT Decoderตรวจสอบ JWT จากแอปของคุณเพื่อดีบัก ล็อกอินล้มเหลว ปัญหาการอนุญาต และปัญหาการหมดอายุโทเค็น
- ตรวจสอบโทเค็น API ขณะทดสอบปลายทางถอดรหัส JWT ที่ส่งคืนโดย API ของคุณเพื่อตรวจสอบว่าการเรียกร้อง ขอบเขต และสิทธิ์ที่ถูกต้องกำลังออกให้
- โทเค็น JWT ตรวจสอบความปลอดภัยตรวจสอบ JWT เป็นส่วนหนึ่งของการตรวจสอบความปลอดภัย: ตรวจสอบขั้นตอนวิธีการลงนามที่อ่อนแอ อายุโทเค็นที่ยาวนาน หรือข้อมูลที่ละเอียดอ่อนในโครงสร้าง
- ตรวจสอบโทเค็น OAuth และ OpenID Connectถอดรหัสโทเค็นการเข้าถึง โทเค็น ID และโทเค็นรีเฟรชจาก Google Auth0 Okta Microsoft และผู้ให้บริการ OAuth อื่น ๆ
- เรียนรู้วิธีการทำงานของโทเค็น JWTถอดรหัส JWT ตัวอย่างเพื่อทำความเข้าใจโครงสร้าง: ส่วนหัว เพลย์โหลด และลายเซนต์ ดูตัวอย่างการเรียกร้องจากโลกแห่งความจริง
วิธีการทำงาน
ตัวถอดรหัสเป็นตัวแยกวิเคราะห์ที่เขียนขึ้นเองโดยไม่พึ่งพาสิ่งใด ทำงานในเบราว์เซอร์ทั้งหมด: แบ่งโทเค็นตามจุด แปลงแต่ละส่วน Base64URL เป็น Base64 ธรรมดาด้วยการแทนที่สตริงและเติมให้เป็นผลคูณของสี่ แล้วเรียก atob() และ JSON.parse เนทีฟของเบราว์เซอร์เพื่อกู้ออบเจกต์ header และ payload การตรวจสอบลายเซ็นที่เลือกได้ใช้ Web Crypto API (crypto.subtle.verify) — ไม่มีไลบรารี ไม่มีเซิร์ฟเวอร์
- 1ถอดรหัส Base64URLเครื่องมือแบ่ง JWT ตามตัวคั่นจุดสองตัว ได้สามส่วน แต่ละส่วนเป็น Base64URL — ซึ่งใช้ - และ _ แทน + และ / และไม่มีการเติม โค้ดสลับอักขระเหล่านั้นกลับและเติมเครื่องหมาย = แล้วเรียก atob() ในตัวของเบราว์เซอร์เพื่อถอดรหัสไบต์
- 2แยกวิเคราะห์ JSON และดึง claimไบต์ที่ถอดรหัสแล้วถูกส่งผ่าน JSON.parse เพื่อได้ออบเจกต์ header และ payload claim ที่ลงทะเบียน exp, iat และ nbf ถูกดึงเป็น Unix timestamp และแปลงเป็นออบเจกต์ Date สถานะหมดอายุถูกตรวจใหม่ทุก 20 วินาทีผ่าน setInterval โทเค็นที่หมดอายุขณะแท็บเปิดอยู่จึงเปลี่ยนจากใช้ได้เป็นหมดอายุโดยอัตโนมัติ เวลาแบบสัมพัทธ์ ('อีก 3 วัน', '2 ชั่วโมงที่แล้ว') จัดรูปแบบด้วย Intl.RelativeTimeFormat ตามภาษาของเบราว์เซอร์
- 3แสดงลายเซ็นและตรวจสอบ (ไม่บังคับ)สตริงลายเซ็น Base64URL ดิบแสดงคู่กับ header และ payload หากคุณระบุคีย์ เครื่องมือจะเรียก crypto.subtle.importKey และ crypto.subtle.verify เพื่อตรวจลายเซ็นในเครื่อง รองรับความลับร่วมแบบ HMAC (HS256/384/512) คีย์สาธารณะ RSA แบบ PEM (RS256/384/512) และคีย์สาธารณะ ECDSA หรือออบเจกต์ JWK/JWKS (ES256/384/512) — กำหนดโดยช่อง alg ใน header
- 4ไม่มีการร้องขอเครือข่ายทุกขั้นตอน — การถอดรหัส การคำนวณเวลา และการตรวจสอบเชิงวิทยาการเข้ารหัส — ทำงานภายในเอนจิน JavaScript ของเบราว์เซอร์ โทเค็นและข้อมูลคีย์ที่คุณป้อนไม่เคยออกจากอุปกรณ์
JWT มักมีข้อมูลรับรองเซสชัน ตัวตนผู้ใช้ และขอบเขตสิทธิ์ เครื่องมือนี้ถอดรหัสและตรวจสอบ (หากเลือก) ในเบราว์เซอร์ทั้งหมดด้วย atob() และ Web Crypto API ทั้งโทเค็นและคีย์ที่คุณระบุจึงไม่ถูกส่งไปที่ใด
เครื่องมือที่เกี่ยวข้อง
ตัวเข้ารหัสและถอดรหัส URL
เข้ารหัสและถอดรหัส URL และสตริงคิวรี รองรับ encodeURIComponent, decodeURIComponent และการแยกวิเคราะห์สตริงคิวรี
ตัวตรวจสอบ UUID
ถอดรหัส UUID หรือ ULID ใดก็ได้ — ดูเวอร์ชัน ตัวแปร และ timestamp ที่ฝังอยู่ใน v1, v6, v7 และ ULID ทำงานในเบราว์เซอร์ทั้งหมด
เข้ารหัสและถอดรหัส Base64
เข้ารหัสข้อความหรือไฟล์เป็น Base64 หรือถอดรหัสสตริง Base64 กลับเป็นข้อความธรรมดา รวดเร็ว ปลอดภัย และฟรี