สร้าง UUID
ตัวตรวจสอบ UUID
รูปแบบ UUID
xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxxเกี่ยวกับ UUID
UUID (Universally Unique Identifier) หรือที่รู้จักกันในชื่อ GUID (Globally Unique Identifier) เป็นตัวเลข 128 บิตที่ระบุข้อมูลในระบบคอมพิวเตอร์อย่างเฉพาะเจาะจง UUID เป็นมาตรฐานตาม RFC 4122 และใช้กันอย่างแพร่หลายในฐานข้อมูล ระบบกระจาย และ API เพื่อสร้างคีย์เฉพาะโดยไม่ต้องมีการประสานงานส่วนกลาง
คู่มือฉบับสมบูรณ์เกี่ยวกับ UUID (Universally Unique Identifiers)
เครื่องมือสร้าง UUID/GUID ออนไลน์ฟรี
สร้าง UUID (Universally Unique Identifiers) หรือ GUID (Globally Unique Identifiers) ทันทีในเบราว์เซอร์ของคุณ เครื่องมือของเรารองรับ UUID เวอร์ชัน 4 (สุ่ม), เวอร์ชัน 1 (ตามเวลา) และ nil UUID สร้างเดี่ยวหรือจำนวนมากได้ถึง 500 ครั้งเดียว ตรวจสอบ UUID ที่มีอยู่ และปรับแต่งรูปแบบผลลัพธ์ด้วยตัวเลือกตัวพิมพ์ใหญ่และไม่มีขีด การสร้างทั้งหมดเกิดขึ้นฝั่งไคลเอนต์โดยใช้ Web Crypto API — ไม่มีข้อมูลถูกส่งไปยังเซิร์ฟเวอร์ใด ๆ
อธิบายเวอร์ชัน UUID
🎲 UUID v4 (สุ่ม)
- สร้างจากตัวเลขสุ่ม/เทียมสุ่ม
- ความสุ่ม 122 บิต
- เวอร์ชันที่ใช้กันมากที่สุด
- ความน่าจะเป็นของการชนกัน: 1 ใน 2^122
- ดีที่สุดสำหรับ ID เฉพาะทั่วไป
⏰ UUID v1 (ตามเวลา)
- อิงจาก timestamp + node ID
- รวมข้อมูลเวลาและ MAC
- รับประกันความเฉพาะข้ามเครื่อง
- เรียงลำดับตามเวลาสร้าง
- ดีสำหรับระบบกระจาย
🔑 UUID v3 (ตาม MD5 Name)
- ดีเทอร์มินิสติก — ชื่อเดียวกัน = UUID เดียวกัน
- ใช้การแฮช MD5 ของ namespace + name
- ทำซ้ำได้ข้ามระบบ
- ดีสำหรับรูปแบบการตั้งชื่อที่สม่ำเสมอ
- ใช้น้อยกว่า v4 หรือ v5
🏷️ UUID v5 (ตาม SHA-1 Name)
- ดีเทอร์มินิสติก — ชื่อเดียวกัน = UUID เดียวกัน
- ใช้การแฮช SHA-1 (ปลอดภัยกว่า v3)
- แนะนำเหนือ v3 สำหรับแอปพลิเคชันใหม่
- ทำซ้ำได้ข้ามระบบ
- ดีสำหรับการอ้างอิงเนื้อหา
วิธีใช้เครื่องมือสร้าง UUID
- เลือกเวอร์ชัน: เลือก UUID v4 (สุ่ม), v1 (ตามเวลา) หรือ Nil UUID
- ตั้งจำนวน: ป้อนจำนวน UUID ที่ต้องการสร้าง (1 ถึง 500)
- เลือกรูปแบบ: สลับตัวเลือกตัวพิมพ์ใหญ่ และ/หรือ ไม่มีขีดตามต้องการ
- สร้าง: คลิกปุ่ม "สร้าง UUID" เพื่อสร้าง UUID ของคุณทันที
- คัดลอก: คลิก "คัดลอก" บน UUID แต่ละตัว หรือ "คัดลอกทั้งหมด" เพื่อรับผลลัพธ์ทั้งหมด
กรณีใช้งานทั่วไปของ UUID
คีย์หลักฐานข้อมูล: UUID ใช้เป็นคีย์หลักในฐานข้อมูล (PostgreSQL, MySQL, MongoDB) เพื่อหลีกเลี่ยงการชนกันของจำนวนเต็มในระบบกระจาย ทำให้สามารถรวมข้อมูลจากหลายแหล่งโดยไม่มีความขัดแย้งของคีย์
ตัวระบุทรัพยากร API: RESTful API ใช้ UUID เพื่อระบุทรัพยากร (ผู้ใช้ คำสั่งซื้อ เซสชัน) อย่างเฉพาะเจาะจง UUID ไม่เป็นลำดับ ทำให้คาดเดาได้ยากขึ้น ซึ่งเพิ่มความปลอดภัยของ API
ระบบกระจาย: ในไมโครเซอร์วิสและสถาปัตยกรรมกระจาย แต่ละบริการสามารถสร้าง ID เฉพาะได้อย่างอิสระโดยไม่ต้องมีการประสานงานส่วนกลางหรือตัวนับร่วม
การจัดการเซสชันและโทเค็น: UUID ใช้กันทั่วไปสำหรับโทเค็นเซสชัน โทเค็น CSRF โทเค็นรีเซ็ตรหัสผ่าน และลิงก์ยืนยันอีเมล ให้ตัวระบุเฉพาะที่คาดเดาไม่ได้
การตั้งชื่อไฟล์: ใช้ UUID เพื่อสร้างชื่อไฟล์เฉพาะสำหรับไฟล์ที่อัปโหลด หลีกเลี่ยงการชนกันของชื่อและทำให้ URL คาดเดาไม่ได้เพื่อความปลอดภัย
คิวข้อความ: ระบบข้อความเช่น RabbitMQ, Kafka และ SQS ใช้ UUID เพื่อระบุข้อความอย่างเฉพาะเจาะจงและรับประกันการประมวลผลแบบ idempotent
Correlation IDs: ในการบันทึกล็อกและการสังเกตการณ์ UUID ติดตามคำขอข้ามหลายบริการ ทำให้สามารถติดตามคำขอแบบ end-to-end ในระบบกระจาย
รูปแบบและโครงสร้าง UUID
รูปแบบมาตรฐาน: ตัวเลขฐาน 16 จำนวน 8-4-4-4-12 ตัว คั่นด้วยขีด
ตัวอย่าง: 550e8400-e29b-41d4-a716-446655440000
ขนาดรวม: 128 บิต (16 ไบต์) แสดงเป็นอักขระฐาน 16 จำนวน 32 ตัว
หลักเวอร์ชัน: ตัวเลขฐาน 16 ตัวที่ 13 (ตำแหน่ง M) ระบุเวอร์ชัน UUID (1-5)
บิตตัวแปร: ตัวเลขฐาน 16 ตัวที่ 17 (ตำแหน่ง N) ระบุตัวแปร (8, 9, a หรือ b สำหรับ RFC 4122)
จำนวน UUID ที่เป็นไปได้ทั้งหมด: 2¹²² ≈ 5.3 × 10³⁶ สำหรับ v4 (มากกว่าจำนวนอะตอมบนพื้นผิวโลกที่ประมาณไว้)
ทำไมต้องใช้เครื่องมือสร้าง UUID ของเรา?
ฟรี 100% และไม่จำกัด: สร้าง UUID ไม่จำกัดโดยไม่ต้องลงทะเบียน สมัครสมาชิก หรือมีข้อจำกัด
ความเป็นส่วนตัวสมบูรณ์: การสร้าง UUID ทั้งหมดเกิดขึ้นในเบราว์เซอร์โดยใช้ Web Crypto API ไม่มีข้อมูลถูกส่งไปยังเซิร์ฟเวอร์ใด ๆ
ปลอดภัยด้วยการเข้ารหัสลับ: UUID v4 ใช้ crypto.randomUUID() หรือ crypto.getRandomValues() สำหรับความสุ่มที่แท้จริง
สร้างจำนวนมาก: สร้างได้ถึง 500 UUID ในครั้งเดียวสำหรับการดำเนินการแบบกลุ่ม การเพาะฐานข้อมูล หรือการทดสอบ
ตัวตรวจสอบในตัว: วาง UUID ใดก็ได้เพื่อตรวจสอบรูปแบบ ตรวจจับเวอร์ชัน และตรวจสอบตัวแปร
ผลลัพธ์ยืดหยุ่น: ตัวพิมพ์ใหญ่ ตัวพิมพ์เล็ก มีหรือไม่มีขีด — ปรับแต่งรูปแบบให้ตรงกับความต้องการของคุณ
UUID เทียบกับโซลูชัน Unique ID อื่น ๆ
UUID vs Auto-Increment: Auto-increment ID เป็นลำดับ คาดเดาได้ และต้องการฐานข้อมูลส่วนกลาง UUID เป็นแบบสุ่ม คาดเดาไม่ได้ และสร้างได้ทุกที่โดยไม่ต้องประสานงาน UUID เหมาะสำหรับระบบกระจาย
UUID vs ULID: ULID (Universally Unique Lexicographically Sortable Identifier) เรียงลำดับตามเวลาได้และกระชับกว่าในรูปแบบสตริง UUID ได้รับการสนับสนุนอย่างแพร่หลายกว่าและเป็นมาตรฐาน (RFC 4122)
UUID vs Snowflake ID: Snowflake ID (ใช้โดย Twitter/X, Discord) เป็น 64 บิต เรียงลำดับได้ และต้องการการประสานงาน worker UUID เป็น 128 บิต กระจายอำนาจอย่างเต็มที่ และไม่ต้องการโครงสร้างพื้นฐาน
UUID vs NanoID: NanoID เล็กกว่า (21 ตัวอักษร vs 36) เป็นมิตรกับ URL และปรับแต่งได้ UUID เป็นมาตรฐานมากกว่าและเป็นที่รู้จักในทุกแพลตฟอร์มและภาษา
แนวทางปฏิบัติที่ดีที่สุด
- ใช้ v4 เป็นค่าเริ่มต้น: UUID v4 (สุ่ม) เป็นตัวเลือกที่ใช้กันมากที่สุดและแนะนำสำหรับการสร้างตัวระบุเฉพาะในแอปพลิเคชันส่วนใหญ่
- จัดเก็บเป็นไบนารี: ในฐานข้อมูล จัดเก็บ UUID เป็น BINARY(16) หรือประเภท UUID เนทีฟแทน VARCHAR(36) เพื่อประสิทธิภาพและประสิทธิผลการจัดเก็บที่ดีขึ้น
- พิจารณาการทำดัชนี: UUID แบบสุ่มอาจทำให้เกิดการแตกกระจายของดัชนีในดัชนี B-tree พิจารณา UUID v7 หรือ ULID สำหรับทางเลือกที่เรียงลำดับตามเวลาได้
- อย่าพึ่งพาความลับ: แม้ UUID จะคาดเดาได้ยาก (v4 มีบิตสุ่ม 122 บิต) แต่ไม่ควรเป็นกลไกความปลอดภัยเพียงอย่างเดียว ควรเพิ่มการยืนยันตัวตนและการอนุญาตที่เหมาะสม
- ไม่ต้องสนใจตัวพิมพ์: การเปรียบเทียบ UUID ควรไม่สนใจตัวพิมพ์ จัดเก็บและเปรียบเทียบเป็นตัวพิมพ์เล็กเพื่อความสม่ำเสมอ
- ใช้ประเภทเนทีฟ: PostgreSQL มีประเภท UUID เนทีฟ MySQL 8.0+ มีฟังก์ชัน UUID ใช้แทนการจัดเก็บแบบสตริงเมื่อมีให้ใช้
- ตรวจสอบอินพุต: ตรวจสอบรูปแบบ UUID เสมอเมื่อรับ UUID จากอินพุตผู้ใช้หรือ API ภายนอก
เหมาะสำหรับ
- นักพัฒนา Backend และ Full-stack
- ผู้ดูแลฐานข้อมูล
- นักออกแบบและสถาปนิก API
- วิศวกร DevOps
- ผู้ทดสอบ QA และวิศวกรออโตเมชัน
- วิศวกรข้อมูล
- นักพัฒนาไมโครเซอร์วิส
- นักพัฒนาแอปมือถือ
- นักออกแบบระบบ IoT
- ผู้จัดการโปรเจกต์เทคนิค
- นักศึกษาเรียนรู้ระบบกระจาย
- ผู้ร่วมพัฒนาโอเพนซอร์ส
🔒 รับประกันความเป็นส่วนตัว 100%
การสร้าง UUID ทั้งหมดดำเนินการในเบราว์เซอร์ของคุณโดยใช้ Web Crypto API ไม่มีข้อมูลถูกอัปโหลดไปยังเซิร์ฟเวอร์ จัดเก็บในฐานข้อมูล บันทึกล็อก หรือส่งต่อให้บุคคลที่สาม UUID ที่สร้างขึ้นปลอดภัยด้วยการเข้ารหัสลับและไม่เคยออกจากอุปกรณ์ของคุณ
เรียนรู้เพิ่มเติมเกี่ยวกับ UUID
เจาะลึกเกี่ยวกับตัวระบุเฉพาะสากล — วิธีการทำงาน เปรียบเทียบเวอร์ชัน UUID ความน่าจะเป็นของการชนกัน แนวทางปฏิบัติที่ดีสำหรับฐานข้อมูล และวิวัฒนาการจาก v4 ถึง v7
อ่านบทความฉบับเต็มเครื่องมือสร้างและความปลอดภัยที่เกี่ยวข้อง
เครื่องมือสร้างรหัสผ่าน
สร้างรหัสผ่านที่แข็งแกร่ง สุ่ม และปลอดภัยพร้อมความยาวและชุดอักขระที่กำหนดเองได้
เครื่องมือสร้างแฮช
สร้างค่าแฮช MD5, SHA-1, SHA-256, SHA-384 และ SHA-512 จากข้อความอินพุตใด ๆ
เข้ารหัส/ถอดรหัส Base64
เข้ารหัสและถอดรหัสสตริง Base64 ออนไลน์พร้อมการแปลงแบบเรียลไทม์และรูปแบบส่งออกหลายแบบ
เครื่องมือสร้าง QR Code
สร้าง QR code สำหรับ URL ข้อความ ข้อมูลติดต่อ และอื่น ๆ
เครื่องมือสร้างบาร์โค้ด
สร้างบาร์โค้ดในรูปแบบ CODE128, CODE39, EAN-13 และ UPC ทันที