T

Text Machine

เครื่องมือข้อความทรงพลัง ในเบราว์เซอร์ของคุณ

เครื่องมือสร้าง UUID

สร้าง UUID (หรือที่เรียกว่า GUID) แบบสุ่มตามมาตรฐาน RFC-4122 เวอร์ชัน 4 ในเบราว์เซอร์ของคุณ เลือกจำนวนที่ต้องการ สลับตัวพิมพ์ใหญ่หรือเครื่องหมายขีด แล้วคัดลอกผลลัพธ์ได้ทันที โดยไม่มีการอัปโหลดข้อมูลใด ๆ

ตัวเลือก

จำนวน

ตัวพิมพ์ใหญ่

เครื่องหมายขีด

วิธีใช้ เครื่องมือสร้าง UUID

  1. 1

    กำหนดจำนวน

    เลือกว่าต้องการ UUID กี่ตัว ตั้งแต่ 1 ถึง 100 โดยใช้ช่องจำนวนหรือปุ่มบวกและลบ

  2. 2

    เลือกรูปแบบ

    สลับ "ตัวพิมพ์ใหญ่" สำหรับตัวอักษรฐานสิบหกเป็นตัวพิมพ์ใหญ่ และสลับ "ยัติภังค์" เพื่อเก็บหรือตัดเครื่องหมายขีดทั้งสี่ออกจากแต่ละ ID

  3. 3

    สร้าง ID

    คลิก Generate เพื่อสร้าง UUID เวอร์ชัน 4 แบบสุ่มเชิงการเข้ารหัส แต่ละตัวแสดงในบรรทัดของตัวเอง

  4. 4

    คัดลอกผลลัพธ์

    ใช้ปุ่ม Copy เพื่อคัดลอกรายการทั้งหมดในครั้งเดียว พร้อมวางลงในโค้ด ฐานข้อมูล หรือสเปรดชีต

เจาะลึก UUID: เวอร์ชัน การชนกัน และเมื่อใดควรใช้

UUID คืออะไร

UUID — ย่อมาจาก Universally Unique Identifier และเรียกว่า GUID ในโลกของ Microsoft — คือค่าขนาด 128 บิตที่ออกแบบมาให้ไม่ซ้ำกันโดยไม่ต้องมีหน่วยงานกลางคอยแจกจ่ายหมายเลข รูปแบบข้อความมาตรฐาน (canonical) ของมันยาว 36 อักขระ ได้แก่ เลขฐานสิบหก 32 หลักที่แบ่งเป็นห้ากลุ่มด้วยเครื่องหมายขีดสี่ตัว ในรูปแบบ 8-4-4-4-12 บิตทั้ง 128 นั้นคือตัวตนทั้งหมด ส่วนเครื่องหมายขีดและตัวพิมพ์เล็กใหญ่เป็นเพียงการนำเสนอเท่านั้น

สิ่งที่ UUID ให้คำมั่นไว้คือการกระจายศูนย์ เครื่องใด ๆ ที่ใดก็ตามสามารถสร้างตัวระบุขึ้นมาได้โดยแทบไม่มีโอกาสชนกับตัวที่ถูกสร้างจากที่อื่นเลย นี่คือเหตุผลที่ UUID เป็นคีย์โดยปริยายเมื่อระบบที่เป็นอิสระต่อกันต้องสร้าง ID ที่จะนำมารวมกันในภายหลังโดยไม่ต้องประสานงานกัน

เวอร์ชัน 4: สุ่มโดยการออกแบบ

เครื่องมือสร้างนี้ผลิต UUID เวอร์ชัน 4 ซึ่งเป็นชนิดที่ใช้กันแพร่หลายที่สุด UUID v4 เป็นแบบสุ่มเกือบทั้งหมด คือจากบิตทั้ง 128 มีอยู่ไม่กี่บิตที่ถูกตรึงไว้เพื่อระบุเวอร์ชันและตัวแปร (variant) เหลือเป็นความสุ่มล้วน ๆ 122 บิต คุณสามารถสังเกตค่าที่เป็น v4 ได้ เพราะหลักที่ขึ้นต้นกลุ่มที่สามจะเป็น 4 เสมอ และหลักที่ขึ้นต้นกลุ่มที่สี่จะเป็นหนึ่งใน 8, 9, a หรือ b

เนื่องจากไม่มีการฝังเวลาประทับ (timestamp) หรือตัวระบุเครื่องไว้ UUID v4 จึงไม่เปิดเผยข้อมูลใด ๆ เกี่ยวกับว่าถูกสร้างเมื่อใดหรือที่ใด ความเป็นส่วนตัวนี้เป็นข้อได้เปรียบอย่างแท้จริงเหนือรูปแบบที่เข้ารหัสที่อยู่ MAC หรือลำดับเอาไว้ และเป็นส่วนหนึ่งของเหตุผลที่ทำให้ v4 กลายเป็นค่าโดยปริยายในชีวิตประจำวันสำหรับคีย์ โทเค็น และตัวระบุเรกคอร์ด

แหล่งที่มาของความสุ่ม

คุณภาพของแหล่งสุ่มคือทุกสิ่งทุกอย่างสำหรับ UUID แบบสุ่ม เครื่องมือนี้ใช้ตัวสร้างที่ปลอดภัยเชิงการเข้ารหัสซึ่งมีอยู่ในตัวเบราว์เซอร์ของคุณ — ซึ่งเป็นพื้นฐานเดียวกับที่ใช้สร้างค่าที่อ่อนไหวด้านความปลอดภัย — แทนที่จะใช้ฟังก์ชันสุ่มเทียมที่เร็วแต่คาดเดาได้ สิ่งนี้สำคัญเพราะ ID ที่ผลิตจากตัวสร้างที่อ่อนแอนั้นอาจถูกเดาหรือไล่เรียงได้ เปลี่ยนตัวระบุที่ควรจะเดาไม่ได้ให้กลายเป็นช่องโหว่ด้านความปลอดภัย

ด้วยแหล่งเชิงการเข้ารหัสที่เหมาะสม บิตสุ่มทั้ง 122 บิตจึงคาดเดาไม่ได้อย่างแท้จริง ผลลัพธ์จึงเหมาะกับคีย์ฐานข้อมูลในระบบจริง คีย์ idempotency และการใช้งานในลักษณะเดียวกัน อย่างไรก็ตาม มีขอบเขตหนึ่งที่ควรย้ำไว้ คือ UUID เป็นตัวระบุ ไม่ใช่ความลับ จงถือว่ามันเดาได้ยากพอที่จะไล่เรียงได้ลำบาก แต่อย่าพึ่งพามันเพียงลำพังในฐานะโทเค็นการให้สิทธิ์ (authorization token)

เหตุใดการชนกันจึงไม่ใช่เรื่องที่ต้องกังวลในทางปฏิบัติ

ปริภูมิของ UUID v4 ใหญ่มหาศาลระดับดาราศาสตร์ — เท่ากับ 2 ยกกำลัง 122 หรือราว 5.3 คูณ 10 ยกกำลัง 36 ค่าที่แตกต่างกัน เพื่อให้เห็นภาพ คุณจะต้องสร้าง UUID หลายพันล้านตัวต่อวินาทีติดต่อกันหลายทศวรรษกว่าที่ความน่าจะเป็นของการชนกันเพียงครั้งเดียวจะสูงพอจะวัดได้ สำหรับทุกการใช้งานในความเป็นจริง โอกาสที่ UUID v4 สองตัวที่สุ่มขึ้นมาจะตรงกันนั้นเล็กน้อยเสียจนถูกถือว่าเป็นศูนย์

นี่คือเหตุผลที่คุณสามารถสร้าง ID อย่างเป็นอิสระบนไคลเอ็นต์และเซิร์ฟเวอร์นับพัน และเพียงแค่สมมติได้เลยว่ามันจะไม่ชนกัน โดยไม่ต้องเดินทางไป-กลับเพื่อตรวจสอบความไม่ซ้ำกับบริการกลาง ความเป็นไปได้ที่น้อยจนแทบเป็นไปไม่ได้นี้เองคือคุณสมบัติเด่น มันมอบการสร้างที่ไม่ต้องประสานงานให้คุณ โดยแลกกับสิ่งที่คุณจะไม่มีวันสังเกตเห็นในทางปฏิบัติเลย

เวอร์ชัน 1 เวอร์ชัน 7 และความสามารถในการเรียงลำดับ

ไม่ใช่ UUID ทุกตัวที่เป็นแบบสุ่ม เวอร์ชัน 1 ได้ค่าจากเวลาปัจจุบันและที่อยู่เครือข่ายของเครื่องที่สร้างมันขึ้น ซึ่งรับประกันความไม่ซ้ำกันได้ก็จริง แต่ก็ฝังเวลาประทับและตัวระบุฮาร์ดแวร์ลงไปใน ID — เป็นข้อกังวลด้านความเป็นส่วนตัวและการรั่วไหลของข้อมูลที่ผลักดันให้หลายทีมหันไปใช้ v4 ส่วนเวอร์ชัน 7 คือคำตอบยุคใหม่สำหรับปัญหาคนละแบบ คือมันวางเวลาประทับระดับมิลลิวินาทีไว้ในบิตสูง ตามด้วยบิตสุ่ม

การจัดวางแบบนั้นทำให้ค่า v7 เรียงลำดับตามลำดับการสร้างได้คร่าว ๆ เมื่ออยู่ในรูปสตริงธรรมดา ซึ่งเป็นประโยชน์อย่างแท้จริงต่อดัชนีฐานข้อมูล คีย์ v4 ที่สุ่มล้วน ๆ จะกระจัดกระจายไปทั่วดัชนีและอาจบั่นทอนประสิทธิภาพการแทรกข้อมูลบนเอนจินบางตัว ในขณะที่คีย์ที่เรียงตามเวลาจะทำให้ข้อมูลที่เพิ่งแทรกใหม่ ๆ อยู่รวมกลุ่มกัน หากคุณต้องการความเป็นเอกลักษณ์ระดับสากลแบบ UUID แต่ก็ต้องการการเรียงลำดับตามเวลาด้วย v7 คือตัวที่ควรเลือก แต่หากคุณต้องการเจาะจงว่าไม่ให้มีการฝังเวลา v4 ยังคงเป็นตัวเลือกที่ถูกต้อง

UUID เทียบกับ ID แบบเพิ่มค่าอัตโนมัติ

ทางเลือกแบบดั้งเดิมคือจำนวนเต็มแบบเพิ่มค่าอัตโนมัติ (auto-increment) ของฐานข้อมูล จำนวนเต็มแบบเรียงลำดับนั้นกะทัดรัด เรียงลำดับโดยธรรมชาติ และมีประสิทธิภาพอย่างยิ่งในฐานะคีย์หลัก (primary key) แต่ก็ต้องการแหล่งความจริงเพียงแหล่งเดียวคอยแจกจ่ายหมายเลขถัดไป และมันยังเปิดเผยข้อมูลด้วย กล่าวคือ ID แบบเรียงลำดับเผยให้เห็นคร่าว ๆ ว่ามีเรกคอร์ดอยู่กี่รายการ และเปิดช่องให้ผู้โจมตีเดา ID ที่อยู่ติดกันได้ด้วยการบวกหนึ่ง UUID แก้ปัญหาทั้งสองอย่างนี้ คือไม่มีตัวนับกลาง และไม่มีลำดับที่ไล่เรียงได้

ข้อแลกเปลี่ยนก็มีในทางกลับกันเช่นกัน UUID มีขนาด 16 ไบต์ เทียบกับจำนวนเต็มขนาด 4 หรือ 8 ไบต์ รูปแบบข้อความของมันเทอะทะใน URL และล็อก และตัวที่สุ่มมาก็เรียงลำดับไม่ได้ หลักการที่สมเหตุสมผลคือ ใช้ UUID เมื่อ ID ต้องถูกสร้างโดยไคลเอ็นต์หรือบริการแบบกระจาย ต้องนำมารวมกันข้ามระบบ หรือต้องเดาไม่ได้ ส่วนจำนวนเต็มแบบเพิ่มค่าอัตโนมัติให้ยึดไว้ใช้กับฐานข้อมูลเดี่ยวที่เบ็ดเสร็จในตัวเอง ซึ่งความกะทัดรัดและการเรียงลำดับสำคัญที่สุด

การจัดรูปแบบและการสร้างเป็นชุด

รูปแบบมาตรฐานคือเลขฐานสิบหกตัวพิมพ์เล็กพร้อมเครื่องหมายขีด และระบบส่วนใหญ่ก็ยอมรับรูปแบบนี้ แต่ธรรมเนียมก็แตกต่างกันไป เครื่องมือนี้ให้คุณสลับไปใช้ตัวอักษรพิมพ์ใหญ่ ซึ่งบางแพลตฟอร์มและเครื่องมือ Microsoft รุ่นเก่านิยมใช้ และให้ตัดเครื่องหมายขีดออกเพื่อให้ได้รูปแบบกะทัดรัด 32 อักขระที่สะดวกใน URL ชื่อไฟล์ หรือที่ใดก็ตามที่เครื่องหมายขีดเป็นส่วนเกิน ค่าพื้นฐานขนาด 128 บิตยังคงเหมือนกันไม่ว่าจะเป็นตัวพิมพ์เล็กใหญ่หรือมีขีดหรือไม่ก็ตาม ดังนั้นสิ่งเหล่านี้จึงเป็นเพียงตัวเลือกในการแสดงผลล้วน ๆ

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

คำถามที่พบบ่อย

เครื่องมือนี้สร้าง UUID แบบใด
มันสร้าง UUID เวอร์ชัน 4 ตาม RFC-4122 หรือที่เรียกว่า GUID ซึ่งเป็นตัวระบุ 128 บิตที่สร้างขึ้นจากบิตสุ่มเกือบทั้งหมด เป็นตัวเลือกมาตรฐานเมื่อคุณต้องการ ID ที่ไม่ซ้ำโดยไม่ต้องมีทะเบียนกลาง
ค่าสุ่มถูกสร้างขึ้นอย่างไร
ตัวสร้างใช้ crypto.randomUUID() API ในตัวของเบราว์เซอร์ของคุณ ซึ่งเป็นแหล่งสุ่มที่ปลอดภัยเชิงการเข้ารหัส พร้อมตัวสำรองที่ปลอดภัย ทำให้ผลลัพธ์เหมาะกับคีย์ในระบบจริง โทเค็น และเรกคอร์ดฐานข้อมูล
ฉันสร้าง UUID ได้กี่ตัวต่อครั้ง
คุณสร้างได้สูงสุด 100 UUID ในคลิกเดียว แต่ละตัวปรากฏในบรรทัดของตัวเอง และปุ่ม Copy จะคัดลอกทั้งชุดด้วยกัน
UUID ที่สร้างขึ้นไม่ซ้ำกันจริงไหม
UUID เวอร์ชัน 4 มีบิตสุ่ม 122 บิต ให้ความเป็นไปได้ราว 5.3 x 10^36 แบบ โอกาสที่สองตัวจะชนกันจึงเล็กน้อยจนแทบเป็นศูนย์ และถูกถือว่าไม่ซ้ำกันสำหรับการใช้งานจริงทั้งหมด
มีสิ่งใดถูกส่งไปยังเซิร์ฟเวอร์ไหม
ไม่ ทุก UUID ถูกสร้างในเครื่องในเบราว์เซอร์ของคุณและไม่เคยถูกส่งหรือจัดเก็บที่ใด เครื่องมือนี้จึงเป็นส่วนตัว ฟรี และปลอดภัยสำหรับตัวระบุที่อ่อนไหว

เครื่องมือที่เกี่ยวข้อง

ทำงานต่อด้วยเครื่องมือที่มีประโยชน์เหล่านี้

เครื่องมือสร้าง QR Code

เครื่องมือสร้างคำแบบสุ่ม

เครื่องสร้างประโยคสุ่ม

เครื่องสร้างตัวเลขสุ่ม

เครื่องสร้างรหัสผ่านแบบสุ่ม

เครื่องมือตัดสินใจแบบสุ่ม