โทเค็น JWT เครื่องถอดรหัส
ถอดรหัสส่วนหัว JWT (JSON Web Token) และเพย์โหลดทันทีในเบราว์เซอร์ของคุณ ฟรี เป็นส่วนตัวและฝั่งไคลเอ็นต์ — ไม่มีข้อมูลถูกส่งไปยังเซิร์ฟเวอร์ใดๆ
ถอดรหัสส่วนหัว JWT (JSON Web Token) และเพย์โหลดทันทีในเบราว์เซอร์ของคุณ ฟรี เป็นส่วนตัวและฝั่งไคลเอ็นต์ — ไม่มีข้อมูลถูกส่งไปยังเซิร์ฟเวอร์ใดๆ
JSON Web Tokens (JWT) เป็นรูปแบบขนาดกะทัดรัดและปลอดภัยต่อ URL สำหรับการส่งการอ้างสิทธิ์ระหว่างสองฝ่าย ซึ่งกำหนดโดย RFC 7519 JWT คือสามส่วนที่เข้ารหัส base64url โดยคั่นด้วยจุด: ส่วนหัว (อัลกอริทึมและประเภทโทเค็น) เพย์โหลด (การอ้างสิทธิ์) และลายเซ็น (หลักฐานพิสูจน์ความถูกต้องด้วยการเข้ารหัส) ส่วนหัวและเพย์โหลดเป็น JSON ซึ่งเข้ารหัส base64url เพื่อความปลอดภัยของ URL ลายเซ็นใช้หนึ่งในหลายอัลกอริธึม (HS256, RS256, ES256 และอื่นๆ) บนส่วนหัวที่เข้ารหัสและเพย์โหลด
การถอดรหัส JWT - แบ่งออกเป็นเซ็กเมนต์และถอดรหัส base64 แต่ละรายการ - ไม่ต้องการความลับใด ๆ ใครก็ตามที่มีข้อความโทเค็นสามารถอ่านส่วนหัวและเพย์โหลดได้ อย่างไรก็ตาม ลายเซ็นสามารถตรวจสอบได้โดยใช้ข้อมูลลับ (HMAC) หรือคีย์สาธารณะ (ไม่สมมาตร) เท่านั้น การถอดรหัสมีไว้สำหรับการตรวจสอบ การตรวจสอบคือสิ่งที่พิสูจน์ความถูกต้อง
ตัวถอดรหัสนี้จะแยกโทเค็น ถอดรหัส base64 ในแต่ละเซ็กเมนต์ แยกวิเคราะห์ส่วนหัวและเพย์โหลดเป็น JSON และแสดงผลลัพธ์ จะไม่พยายามตรวจสอบลายเซ็นเนื่องจากต้องใช้รหัสลับหรือกุญแจสาธารณะซึ่งตัวถอดรหัสไม่มี เอาต์พุตที่ถอดรหัสจะเป็นการตรวจสอบแบบอ่านอย่างเดียว ซึ่งมีประโยชน์สำหรับการดีบักโทเค็น แต่ไม่สามารถทดแทนการตรวจสอบความถูกต้องในโค้ดของแอปพลิเคชันได้
การแก้ไขข้อบกพร่องในการตรวจสอบสิทธิ์มักเกี่ยวข้องกับการตรวจสอบโทเค็นเสมอ โทเค็นที่ดูเหมือนถูกต้องในโค้ดอาจมีการอ้างสิทธิ์ที่ไม่ถูกต้อง มีอัลกอริทึมที่ไม่คาดคิด การประทับเวลา exp ที่หมดอายุ หรือผู้ชมไม่ตรงกัน การถอดรหัสโทเค็นเผยให้เห็นอย่างชัดเจนถึงสิ่งที่ผู้ออกผลิต
การตรวจสอบโทเค็นระหว่างงานบูรณาการก็ช่วยได้เช่นกัน เมื่อเชื่อมต่อกับ API ของบริษัทอื่นหรือผู้ให้บริการข้อมูลประจำตัว ชื่อการอ้างสิทธิ์ รูปแบบ และโครงสร้างที่แท้จริงจะเข้าใจได้ดีที่สุดโดยการถอดรหัสโทเค็นตัวอย่าง แทนที่จะอาศัยเอกสารประกอบที่อาจล้าสมัย
วางโทเค็น รับเนื้อหาที่แยกวิเคราะห์
รูปแบบ JWT คือสามส่วนที่เชื่อมต่อกันด้วยจุด แต่ละเซ็กเมนต์มีการเข้ารหัส base64url ซึ่งเป็นรูปแบบที่ปลอดภัยต่อ URL ของ base64 ที่ใช้ - และ _ แทน + และ / โดยที่บางครั้งละเว้นช่องว่างภายใน การถอดรหัสจำเป็นต้องยกเลิกการแทนที่ URL ที่ปลอดภัย การเติมส่วน และการถอดรหัส base64
ส่วนหัวและเพย์โหลดเป็น JSON หลังจากการถอดรหัส ส่วนลายเซ็นเป็นแบบไบนารี (ไบต์ลายเซ็นแบบดิบ) และไม่สามารถอ่านได้โดยมนุษย์ ต้องใช้รหัสยืนยันจึงจะมีประโยชน์
การอ้างสิทธิ์ทั่วไปที่กำหนดใน RFC 7519: iss (ผู้ออก), sub (ตัวระบุหัวเรื่อง), aud (ผู้ชม), exp (หมดอายุเป็น Unix epoch วินาที), nbf (ไม่ก่อนการประทับเวลา), iat (ออกเมื่อประทับเวลา), jti (ID โทเค็นเฉพาะ) การกล่าวอ้างเฉพาะแอปพลิเคชันสามารถปรากฏพร้อมกับชื่อใดก็ได้