---
url: https://docs.ogmabox.com/th/app/utilities/jwt.md
description: ตรวจสอบและวิเคราะห์ JSON Web Token ใน Ogma
---

# JWT {#jwt}

เครื่องมือ JWT ถอดรหัสและตรวจสอบ JSON Web Token เพื่อให้คุณตรวจดูโครงสร้าง เคลม และคุณสมบัติด้านความปลอดภัยได้โดยไม่ต้องมีคีย์ส่วนตัว

## การใช้เครื่องมือ {#using-the-tool}

1. วาง JWT ในฟิลด์ข้อมูลเข้า เครื่องมือรับรูปแบบมาตรฐานสามส่วนที่คั่นด้วยจุด
2. เครื่องมือจะแยกส่วนหัวและเพย์โหลด แล้วถอดรหัสจาก Base64 โดยอัตโนมัติ
3. ตรวจดูผลลัพธ์ที่ถอดรหัสแล้วในสามส่วนด้านล่าง

การตรวจสอบข้อมูลไม่ต้องใช้คีย์ การตรวจสอบความถูกต้องของลายเซ็นเป็นการดำเนินการแยกต่างหาก

## ส่วนที่ถอดรหัสแล้ว {#decoded-sections}

### ส่วนหัว {#header}

แสดงฟิลด์อัลกอริทึม (`alg`) และ ID คีย์ (`kid`) คำเตือนเกี่ยวกับอัลกอริทึมจะแสดงที่นี่:

| เงื่อนไข | ระดับคำเตือน |
|---|---|
| `alg: none` | วิกฤต: โทเค็นไม่มีลายเซ็น |
| `alg: HS256` | ข้อสังเกต: เป็นแบบสมมาตร หากใช้ค่าลับที่อ่อนแอก็อาจถูกโจมตีแบบลองทุกค่าได้ |
| `alg: RS256` หรือ `ES256` | ไม่มีคำเตือน |

### เพย์โหลด {#payload}

แสดงเคลมทั้งหมดพร้อมค่าและชนิดข้อมูลที่อนุมานได้ เคลมมาตรฐานที่ถอดรหัส:

| เคลม | ความหมาย |
|---|---|
| `iss` | ผู้ออกโทเค็น |
| `sub` | บุคคลหรือสิ่งที่โทเค็นกล่าวถึง (มักเป็น ID ผู้ใช้) |
| `aud` | ผู้รับที่กำหนดไว้ |
| `exp` | เวลาหมดอายุ |
| `nbf` | ไม่ใช้ก่อนเวลานี้ |
| `iat` | เวลาที่ออกโทเค็น |
| `jti` | ID ของ JWT (ตัวระบุโทเค็นที่ไม่ซ้ำกัน) |

เคลมที่กำหนดเองจะแสดงด้านล่างกลุ่มเคลมมาตรฐาน

### การตรวจสอบวันหมดอายุ {#expiry-check}

หากโทเค็นมีเคลม `exp` เครื่องมือจะเปรียบเทียบกับเวลาปัจจุบันและแสดงสถานะใดสถานะหนึ่ง:

* **ถูกต้อง**: โทเค็นยังไม่หมดอายุ
* **หมดอายุแล้ว**: โทเค็นเลยเวลาหมดอายุแล้ว พร้อมแสดงระยะเวลาที่ผ่านไป
* **ไม่มีวันหมดอายุ**: โทเค็นไม่มีเคลม `exp`

### ลายเซ็น {#signature}

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

## สิ่งที่ควรตรวจดู {#what-to-look-for}

* ไลบรารีบางตัวรับโทเค็น `alg: none` โดยไม่ตรวจสอบความถูกต้อง ทดสอบว่าแอปพลิเคชันเป้าหมายรับโทเค็นเหล่านี้หรือไม่
* โทเค็นที่มีอายุยาว (`exp` ห่างจาก `iat` หลายวันหรือหลายปี) บ่งชี้ว่าแอปพลิเคชันไม่ได้หมุนเวียนโทเค็น
* ข้อมูลอ่อนไหว (ข้อมูลระบุตัวบุคคล, ID ภายใน และแฟล็กบทบาท) ที่เก็บในเคลมเพย์โหลดโดยไม่เข้ารหัสลับสามารถอ่านได้โดยทุกคนที่ถือโทเค็น
* โทเค็นที่ไม่มี `jti` ไม่สามารถเพิกถอนเป็นรายโทเค็นได้

## หน้าที่เกี่ยวข้อง {#related-pages}

* [วิเคราะห์โทเค็น](./token-analysis.md)
* [ตัวถอดรหัส](./decoder.md)
* [ประวัติ HTTP](../http-history.md)
