Global ToolBox

เครื่องมือถอดรหัส JWT

วาง JWT (JSON Web Token) แล้วดูส่วนหัว (header) เพย์โหลด (payload) และลายเซ็นดิบที่ถอดรหัสแล้วได้ทันที — ทำงานทั้งหมดในเบราว์เซอร์ของคุณ

🔒 ประมวลผลในเบราว์เซอร์ของคุณ

Loading…

วิธีใช้งาน

  1. วาง JWT ฉบับเต็ม — สามส่วนแบบ base64url ที่คั่นด้วยจุด — ลงในกล่องด้านบน
  2. header และ payload จะถูกถอดรหัสและจัดรูปแบบให้อ่านง่ายแบบเรียลไทม์ทันทีที่คุณวางข้อมูล โดยไม่ต้องกดปุ่มใด ๆ
  3. ส่วน signature ดิบจะแสดงตามที่เป็นเพื่อการอ้างอิงเท่านั้น จะไม่มีการตรวจสอบหรือยืนยันความถูกต้องแต่อย่างใด
  4. ใช้ปุ่มคัดลอกข้าง ๆ แต่ละแผงเพื่อคัดลอก header, payload หรือ signature แยกกัน

คุณสมบัติ

  • ถอดรหัสทั้ง header และ payload เป็น JSON ที่จัดรูปแบบและอ่านง่ายได้ทันที
  • จัดการการเข้ารหัส base64url ได้อย่างถูกต้อง รวมถึงกรณีที่ padding หายไป
  • แสดงส่วน signature ดิบเพื่อการอ้างอิง โดยไม่พยายามตรวจสอบความถูกต้อง
  • ข้อความแจ้งข้อผิดพลาดที่ชัดเจนสำหรับโทเค็นที่ผิดรูปแบบ แทนที่จะขึ้นข้อผิดพลาดหรือหน้าจอว่างเปล่า
  • ประมวลผล 100% ในเบราว์เซอร์ — โทเค็นของคุณจะไม่ถูกส่งออกไปไหน

คำถามที่พบบ่อย

เครื่องมือนี้ตรวจสอบลายเซ็นของ JWT หรือไม่?

ไม่ เครื่องมือนี้ทำหน้าที่ถอดรหัส header และ payload เพื่อให้คุณอ่านได้เท่านั้น — ไม่เคยตรวจสอบลายเซ็นแต่อย่างใด การตรวจสอบลายเซ็นต้องใช้ secret (สำหรับอัลกอริทึม HMAC) หรือ public key (สำหรับอัลกอริทึม RSA/ECDSA) ซึ่งเครื่องมือนี้ไม่เคยขอให้คุณวางข้อมูลเหล่านั้นเลย การถอดรหัสโทเค็นสำเร็จหมายความเพียงว่าโทเค็นมีรูปแบบถูกต้องเท่านั้น ไม่ได้หมายความว่าโทเค็นนั้นแท้จริงหรือไม่ถูกดัดแปลง

โทเค็นของฉันถูกอัปโหลดไปที่ไหนหรือไม่?

ไม่ ทุกอย่างเกิดขึ้นในเบราว์เซอร์ของคุณโดยใช้ API base64 และ JSON ที่มีอยู่ในตัว JavaScript โทเค็นของคุณจะไม่ถูกส่งไปยังเซิร์ฟเวอร์เลย ซึ่งสำคัญมากเนื่องจาก JWT มักมีข้อมูล claim ที่ละเอียดอ่อน

ทำไมการถอดรหัสถึงล้มเหลวพร้อมข้อความ 'not valid JSON'?

สิ่งนี้เกิดขึ้นเมื่อส่วนใดส่วนหนึ่งไม่ใช่ JWT มาตรฐาน — เช่น หากโทเค็นถูกตัดให้สั้นลง ถูกแก้ไขด้วยมือ หรือไม่ใช่ JWT จริง ๆ โทเค็นที่เข้ารหัส (JWE) ก็จะไม่สามารถถอดรหัสด้วยวิธีนี้ได้เช่นกัน เนื่องจาก payload ของมันเป็น ciphertext ไม่ใช่ JSON

base64 กับ base64url ต่างกันอย่างไร?

JWT ใช้การเข้ารหัสแบบ base64url ซึ่งเป็นรูปแบบ base64 ที่ปลอดภัยสำหรับ URL โดยแทนที่ '+' ด้วย '-' และ '/' ด้วย '_' และมักจะละเว้น padding '=' ท้ายสตริง เครื่องมือนี้จะแปลง base64url กลับเป็น base64 มาตรฐานก่อนถอดรหัส จึงทำงานได้อย่างถูกต้องแม้ว่า padding จะหายไป

ฉันสามารถถอดรหัสโทเค็นที่หมดอายุหรือถูกใช้ไปแล้วได้หรือไม่?

ได้ การถอดรหัสเป็นเพียงการอ่านข้อมูล claim ที่มีอยู่ในโทเค็นอยู่แล้วเท่านั้น — ทำงานเหมือนกันไม่ว่าโทเค็นจะหมดอายุ ถูกเพิกถอน หรือยังใช้งานได้อยู่ เนื่องจากไม่มีการตรวจสอบสิ่งเหล่านั้นเลยในเครื่องมือนี้

เครื่องมือที่เกี่ยวข้อง