JWT Token

ผลลัพธ์ที่ถอดรหัส

วาง JWT token เพื่อถอดรหัส

เกี่ยวกับเครื่องมือถอดรหัส JWT

ถอดรหัส JSON Web Token เพื่อดู header, payload และ signature ตรวจสถานะหมดอายุ ระบุอัลกอริทึมการเซ็น และอธิบาย registered claims โดยประมวลผลทั้งหมดในเบราว์เซอร์ของคุณ

ถอดรหัสแบบเรียลไทม์เมื่อวาง token
แบ่งสีส่วนต่างๆ ของ token
ตรวจสถานะหมดอายุ
อธิบาย registered claims

คู่มือ JSON Web Token (JWT)

เครื่องมือถอดรหัสและตรวจ JWT ออนไลน์ฟรี

ถอดรหัสและตรวจ JSON Web Token ได้ทันทีด้วยเครื่องมือ JWT decoder ออนไลน์ฟรี ดู JOSE header, payload claims, สถานะหมดอายุ และอัลกอริทึมการเซ็น เหมาะกับงาน authentication, authorization, API token, OAuth 2.0 และ OpenID Connect

คุณสมบัติหลัก

ตรวจ Header

  • ดูอัลกอริทึมการเซ็น เช่น HS256 หรือ RS256
  • ระบุประเภท token
  • แสดง key ID (kid)
  • อธิบาย JOSE header fields ที่ใช้บ่อย

ถอดรหัส Payload

  • แสดง claims ทั้งหมดพร้อมคำอธิบาย
  • แปลง timestamp เป็นวันที่อ่านง่าย
  • ระบุ registered claims เช่น iss, sub, aud และ exp
  • แสดง custom claims

ตรวจวันหมดอายุ

  • ตรวจการหมดอายุอัตโนมัติ
  • แสดง badge หมดอายุหรือยังไม่หมดอายุ
  • แสดงเวลาหมดอายุให้อ่านง่าย
  • ถอดรหัส timestamp iat และ nbf

แสดงผลแบบแบ่งสี

  • Header แสดงด้วยสีชมพู
  • Payload แสดงด้วยสีม่วง
  • Signature แสดงด้วยสีฟ้า
  • แยกส่วนต่างๆ ของ JWT ให้เห็นชัดเจน

JWT คืออะไร?

JSON Web Token (JWT) คือรูปแบบกะทัดรัดและปลอดภัยสำหรับ URL ที่ใช้แทน claims ระหว่างสองฝ่าย กำหนดไว้ใน RFC 7519 และนิยมใช้กับ authentication และ authorization ในเว็บแอป API และ microservices

โครงสร้าง JWT:

Header: metadata ของ token เช่น อัลกอริทึมการเซ็นและประเภท token

Payload: claims เกี่ยวกับผู้ใช้หรือ entity รวมถึง metadata ของ token

Signature: ค่าที่ได้จากการเซ็น header และ payload ที่เข้ารหัสแล้วด้วย secret หรือ private key

Registered JWT Claims

iss: Issuer หรือผู้ที่ออก JWT

sub: Subject โดยทั่วไปคือผู้ใช้หรือ entity ที่ token กล่าวถึง

aud: Audience หรือผู้รับที่ token นี้ตั้งใจให้ใช้

exp: เวลาหมดอายุ หลังจากเวลานี้ token ไม่ควรถูกยอมรับ

nbf: Not-before ก่อนเวลานี้ token ไม่ควรถูกยอมรับ

iat: เวลาที่ออก token

jti: รหัส token ที่ไม่ซ้ำ มีประโยชน์สำหรับป้องกัน replay

อัลกอริทึมการเซ็นที่พบบ่อย

HS256: HMAC กับ SHA-256 ใช้ shared secret เดียวสำหรับเซ็นและตรวจสอบ

RS256: RSA กับ SHA-256 ใช้ private key เซ็น และ public key ตรวจสอบ

ES256: ECDSA กับ P-256 และ SHA-256 ใช้ elliptic curve พร้อม signature ที่สั้นกว่า

PS256: RSA-PSS กับ SHA-256 เป็นรูปแบบ RSA ที่แข็งแรงขึ้นด้วย probabilistic padding

วิธีใช้เครื่องมือถอดรหัส JWT

  1. วาง JWT: คัดลอก JWT token ลงในช่องอินพุต ระบบจะเริ่มถอดรหัสอัตโนมัติ
  2. ดู header: เปิดแท็บ Header เพื่อดูอัลกอริทึม ประเภท token และ key ID
  3. ตรวจ payload: เปิดแท็บ Payload เพื่อดู claims ทั้งหมดพร้อมคำอธิบายที่อ่านง่าย
  4. ตรวจหมดอายุ: เครื่องมือจะตรวจว่า token หมดอายุแล้วหรือยังใช้ได้
  5. ดู signature: เปิดแท็บ Signature เพื่อดู signature ดิบและข้อมูลอัลกอริทึม
  6. คัดลอกแต่ละส่วน: ใช้ปุ่มคัดลอกเพื่อคัดลอกส่วนที่ถอดรหัสเป็น JSON ที่จัดรูปแบบแล้ว

งานที่นิยมใช้ JWT

Authentication: หลังผู้ใช้เข้าสู่ระบบ เซิร์ฟเวอร์ออก JWT และ client ส่ง token นี้ไปกับ request ถัดไปเพื่อยืนยันตัวตน

Authorization: JWT สามารถเก็บ role หรือ permissions เพื่อให้ API ตัดสินสิทธิ์การเข้าถึงได้

Single Sign-On: JWT ช่วยแชร์สถานะการเข้าสู่ระบบข้ามหลายบริการผ่าน identity provider กลาง

API Security: JWT authentication แบบ stateless ใช้บ่อยกับ REST, GraphQL, microservices และ serverless

OAuth 2.0 / OpenID Connect: JWT ใช้เป็น access token, ID token และบางครั้งใช้เป็น refresh token

เหมาะสำหรับ

  • นักพัฒนา Backend
  • นักพัฒนา Frontend
  • นักพัฒนา API
  • วิศวกรความปลอดภัย
  • วิศวกร DevOps
  • ทีม QA และทดสอบ
  • นักพัฒนาแอปมือถือ
  • สถาปนิก microservices
  • งาน identity และ access management
  • ผู้เรียน authentication
  • ทีม technical support
  • ผู้ตรวจสอบความปลอดภัย

แนวทางความปลอดภัยสำหรับ JWT

  • ตรวจ signature บนฝั่งเซิร์ฟเวอร์เสมอ
  • ใช้ token อายุสั้นและ refresh token เมื่อเหมาะสม
  • เลือกอัลกอริทึมที่แข็งแรง เช่น RS256 หรือ ES256 สำหรับโปรดักชัน
  • ตรวจ claims อย่าง iss, aud, exp และ nbf บนเซิร์ฟเวอร์
  • อย่าใส่ข้อมูลอ่อนไหวใน payload เพราะ JWT ถูก encode ไม่ใช่ encrypt
  • ส่ง token ผ่าน HTTPS เท่านั้น
  • เก็บ token อย่างปลอดภัย เช่น httpOnly cookies สำหรับเว็บแอป
  • วางแผนการ revoke token ด้วยอายุสั้น refresh rotation หรือ deny list

ปกป้องความเป็นส่วนตัวอย่างเต็มที่

การถอดรหัส JWT ทั้งหมดทำงานในเบราว์เซอร์ของคุณด้วย JavaScript token ของคุณจะไม่ถูกอัปโหลด จัดเก็บ บันทึก หรือส่งต่อให้บุคคลที่สาม

เรียนรู้พื้นฐาน JWT

เพิ่งเริ่มใช้ JSON Web Token? อ่านคู่มือสำหรับผู้เริ่มต้นที่อธิบายโครงสร้าง token, claims, การเซ็น และแนวทางความปลอดภัย

อ่าน: JWT คืออะไร?

เครื่องมือสำหรับนักพัฒนาที่เกี่ยวข้อง