ตัวลงนาม JSON Web Token (JWT)

ลงนาม JWT ในเครื่องด้วยความลับ HMAC หรือคีย์ส่วนตัว PEM/JWK สำหรับการทดสอบ API และการดีบักการยืนยันตัวตน

เพย์โหลดและเฮดเดอร์
แก้ไข claims แบบ JSON และฟิลด์เฮดเดอร์ที่ได้รับการป้องกันเพิ่มเติมซึ่งจะถูกลงนามในโทเค็น
ตัวช่วย claim ที่ลงทะเบียนไว้

ใช้ตัวควบคุมเหล่านี้เพื่ออัปเดต claim แบบ NumericDate ที่ใช้บ่อยในเพย์โหลด JSON

แสดงค่าลงนามแบบสดและเขียนลงใน payload.iat เฉพาะเมื่อคุณลงนามเท่านั้น

ค่าในเพย์โหลด: 1713139200ค่าสำหรับลงนาม: 1713139200

การป้อนด้วยตนเองจะตั้งค่า exp แบบคงที่ ส่วนออฟเซ็ตด่วนจะอิงตาม iat สำหรับลงนามและจะสรุปค่าเมื่อคุณลงนาม

ค่าในเพย์โหลด: ไม่ได้ตั้งค่าค่าสำหรับลงนาม: ไม่ได้ตั้งค่า

อัลกอริทึมที่เลือกจะถูกเขียนลงในเฮดเดอร์เสมอ ใช้ฟิลด์นี้สำหรับค่า เช่น kid หรือการแทนที่ typ

คีย์สำหรับลงนาม
เลือกอัลกอริทึม ใส่ความลับหรือคีย์ส่วนตัวที่ตรงกัน จากนั้นสร้าง JWT แบบ compact

อัลกอริทึม HMAC ใช้ความลับที่ใช้ร่วมกัน

ใช้สำหรับ HS256, HS384 และ HS512 ความลับจะไม่ถูกบันทึกลงในพื้นที่จัดเก็บในเครื่อง

โทเค็นที่ลงนามแล้ว
คัดลอก JWT แบบ compact หรือตรวจสอบส่วนเฮดเดอร์ เพย์โหลด และลายเซ็นที่ถูกต้อง
ยังไม่มีโทเค็นที่ลงนาม
เพิ่มเพย์โหลด JSON และคีย์สำหรับลงนามที่ถูกต้อง จากนั้นลงนามเพื่อสร้าง JWT แบบ compact
ดาวน์โหลด

ตัวลงนาม JWT คืออะไร?

ตัวลงนาม JWT สร้าง JSON Web Token แบบ compact โดยแปลง header และ payload เป็นลำดับข้อมูล แล้วลงนามด้วย secret หรือ private key ผลลัพธ์คือโทเค็นสามส่วน header.payload.signature ที่ใช้ในระบบ API, OAuth และ session จำนวนมาก

ควรใช้เครื่องมือนี้เมื่อใด

  • สร้างโทเค็นทดสอบในเครื่องสำหรับการพัฒนา API สภาพแวดล้อม staging และเดโม
  • เปรียบเทียบว่าอัลกอริทึมต่าง ๆ เปลี่ยนเฮดเดอร์และลายเซ็นของโทเค็นอย่างไร
  • เพิ่ม claims เช่น sub, iss, aud, exp, iat, scope หรือฟิลด์แอปพลิเคชันแบบกำหนดเอง โดยไม่ต้องเขียนสคริปต์ชั่วคราว
  • สร้างโทเค็นด้วยความลับที่ใช้ร่วมกันของ HMAC หรือด้วยคีย์ส่วนตัว RSA/ECDSA ในรูปแบบ PKCS#8 PEM หรือ JWK

สิ่งที่ต้องตรวจสอบก่อนใช้โทเค็นที่ลงนามแล้ว

  • จับคู่อัลกอริทึมให้ตรงกับประเภทคีย์: HS* ใช้ความลับที่ใช้ร่วมกัน, RS* และ PS* ใช้คีย์ส่วนตัว RSA และ ES* ใช้คีย์ส่วนตัว EC
  • เพิ่ม claims สำหรับวันหมดอายุและ audience เมื่อบริการปลายทางคาดหวังข้อมูลเหล่านั้น
  • อย่านำคีย์ส่วนตัวสำหรับ production ไปไว้ในเบราว์เซอร์และเครื่องที่ใช้ร่วมกัน เครื่องมือนี้ทำงานในเครื่อง แต่ไม่สามารถป้องกันคีย์จากอุปกรณ์ที่ถูกบุกรุกอยู่แล้วได้
  • จำไว้ว่าการลงนามไม่ใช่การเข้ารหัส ทุกคนที่ได้รับโทเค็นสามารถถอดรหัสเฮดเดอร์และเพย์โหลดได้