ทำไมต้องใช้เครื่องสร้าง UUID นี้?
- สร้าง UUID v4 (สุ่ม) หรือ UUID v7 (เรียงตามเวลา) เป็นชุด
- จัดรูปแบบผลลัพธ์ (canonical / ไม่มีขีดกลาง / วงเล็บปีกกา / URN) เปลี่ยนตัวพิมพ์ และเลือกตัวคั่น
- ตรวจสอบและแยกวิเคราะห์ UUID เพื่อดูเวอร์ชัน วาเรียนต์ และ timestamp ของ v7
- มีโหมดซีดสำหรับข้อมูลทดสอบที่ทำซ้ำได้ (ไม่ใช่สำหรับข้อมูลลับ)
วิธีใช้งาน (3 ขั้นตอน)
- เลือกเวอร์ชัน UUID และตัวเลือกผลลัพธ์
- สร้าง UUID (อัปเดตอัตโนมัติสำหรับชุดเล็ก)
- คัดลอก ดาวน์โหลด แชร์การตั้งค่า หรือตรวจสอบ UUID ด้านล่าง
สร้างและตรวจสอบ
เครื่องสร้าง UUID
สร้าง UUID เป็นชุด จัดรูปแบบ แล้วคัดลอก ดาวน์โหลด หรือแชร์การตั้งค่า การตรวจสอบทำงานขณะที่คุณพิมพ์
ตรวจสอบ / แยกวิเคราะห์
วาง UUID เพื่อตรวจสอบความถูกต้อง เวอร์ชัน/วาเรียนต์ และถอดรหัส timestamp ของ v7
การตีความและแนวทางปฏิบัติที่ดี
UUID v4 เทียบกับ v7
- v4 เป็นค่าสุ่ม ไม่มีการเข้ารหัสเวลาหรือลำดับ จึงเป็นค่าเริ่มต้นที่ปลอดภัยสำหรับตัวระบุสาธารณะ
- v7 เรียงตามเวลาและมี timestamp อยู่ในตัว มีประโยชน์สำหรับ log และดัชนีฐานข้อมูล แต่ก็อาจเผยข้อมูล (คร่าว ๆ) ว่า ID ถูกสร้างขึ้นเมื่อใด
- ในระบบแบบกระจาย การเรียงลำดับอาจยังไม่สมบูรณ์แบบ หากเครื่องมีความคลาดเคลื่อนของนาฬิกาหรือแหล่งเวลาต่างกัน
ข้อควรระวังด้านความปลอดภัย
- UUID เป็นเพียงตัวระบุ ไม่ใช่ข้อมูลลับ ห้ามฝังรหัสผ่าน API key หรือข้อมูลส่วนบุคคลที่ละเอียดอ่อน
- โหมด ซีด คาดเดาได้และใช้สำหรับการทดสอบเท่านั้น ใช้โหมด ปลอดภัย สำหรับสิ่งที่ผู้โจมตีอาจมองเห็นได้
- หากเวลาที่สร้างเป็นข้อมูลที่ละเอียดอ่อน ควรเลือกใช้ v4 แทน v7
ความเสี่ยงของการชนกัน
การชนกันของค่ามีโอกาสเกิดขึ้นน้อยมากสำหรับ UUID ที่สร้างอย่างถูกต้อง แต่ก็ไม่ใช่สิ่งที่เป็นไปไม่ได้ในทางคณิตศาสตร์ หากความไม่ซ้ำกันมีความสำคัญมาก ควรบังคับใช้ข้อจำกัดความไม่ซ้ำกัน (unique constraint) ที่ระดับฐานข้อมูล
แหล่งอ้างอิง
คำถามที่พบบ่อย
ควรใช้ UUID v4 หรือ v7 ดี?
v4 คือ UUID แบบสุ่มดั้งเดิม ส่วน v7 เรียงตามเวลาและมี timestamp ซึ่งมีประโยชน์สำหรับ log และฐานข้อมูล
โหมดซีดปลอดภัยหรือไม่?
ไม่ โหมดซีดมีไว้สำหรับการทดสอบและการทำซ้ำได้เท่านั้น ใช้โหมดปลอดภัยสำหรับสิ่งที่เกี่ยวข้องกับความปลอดภัย
สามารถสร้าง UUID จำนวนมากพร้อมกันได้หรือไม่?
ได้ สูงสุด 10,000 รายการต่อชุด ชุดที่ใหญ่มากอาจทำงานช้าลงบนอุปกรณ์มือถือ
UUID ของฉันจะถูกอัปโหลดหรือไม่?
ไม่ ทุกอย่างทำงานในเครื่องบนเบราว์เซอร์ของคุณ และค่า UUID จะไม่ถูกอัปโหลด
จะถอดรหัส timestamp ของ UUID v7 ได้อย่างไร?
วาง UUID ลงในช่องตรวจสอบ สำหรับ v7 เครื่องมือจะแสดง epoch เป็นมิลลิวินาที รวมถึงเวลา UTC และเวลาท้องถิ่น