UUID / GUID เครื่องกำเนิดไฟฟ้า
สร้างค่า UUID v4 (GUID) ทันทีในเบราว์เซอร์ของคุณ ฟรี เป็นส่วนตัวและฝั่งไคลเอ็นต์ — ไม่มีข้อมูลถูกส่งไปยังเซิร์ฟเวอร์ใดๆ
สร้างค่า UUID v4 (GUID) ทันทีในเบราว์เซอร์ของคุณ ฟรี เป็นส่วนตัวและฝั่งไคลเอ็นต์ — ไม่มีข้อมูลถูกส่งไปยังเซิร์ฟเวอร์ใดๆ
UUID (ตัวระบุที่ไม่ซ้ำแบบสากลหรือที่เรียกว่า GUID ในบริบทของ Microsoft) คือตัวระบุ 128 บิตที่สามารถสร้างได้อย่างอิสระทั่วทั้งระบบที่มีความน่าจะเป็นในการชนกันเล็กน้อย แบบฟอร์มมาตรฐานคืออักขระฐานสิบหก 32 ตัวในกลุ่ม 8-4-4-4-12 คั่นด้วยเครื่องหมายขีดกลาง (550e8400-e29b-41d4-a716-446655440000) มีหลายเวอร์ชันพร้อมกลยุทธ์การสร้างที่แตกต่างกัน v4 (สุ่ม) เป็นเรื่องธรรมดาที่สุด
UUID v4 ได้รับความเป็นเอกลักษณ์จากการสุ่ม 122 บิต (หกบิตได้รับการแก้ไขสำหรับเวอร์ชันและตัวแปร) ความน่าจะเป็นในการชนกันนั้นมีน้อยมากจนในทางปฏิบัติแล้ว UUID จะถูกมองว่ามีเอกลักษณ์เฉพาะทั่วโลกโดยไม่ต้องมีการประสานงานกัน — ทั้งสองระบบที่สร้าง UUID อย่างอิสระจะไม่สร้างการซ้ำซ้อนในช่วงเวลาที่สมจริงใดๆ
ตัวสร้างนี้สร้าง UUID v4 ในรูปแบบเลขฐานสิบหกพร้อมยัติภังค์มาตรฐาน การสุ่มมาจากตัวสร้างตัวเลขสุ่มที่ปลอดภัยด้วยการเข้ารหัสของเบราว์เซอร์ (window.crypto.getRandomValues) ซึ่งเหมาะสำหรับวัตถุประสงค์ด้านความปลอดภัย รองรับการสร้างจำนวนมากสำหรับการกรอกอุปกรณ์ทดสอบหรือฐานข้อมูลการเพาะ
UUID ช่วยให้ระบบแบบกระจายสร้างตัวระบุโดยไม่ต้องประสานงานกับฐานข้อมูลกลาง แต่ละบริการสามารถสร้าง ID ในพื้นที่โดยไม่ต้องเดินทางไปกลับที่เคาน์เตอร์ และ ID ที่ได้นั้นรับประกันว่าจะไม่ขัดแย้งกับ ID ที่สร้างจากที่อื่น ซึ่งช่วยให้สถาปัตยกรรมขยายขนาดได้ โดยที่การสร้าง ID ไม่ใช่ปัญหาคอขวด
UUID ยังทำให้ ID ไม่สามารถคาดเดาได้ ข้อมูล ID ตัวเลขตามลำดับรั่วไหล — จำนวนผู้ใช้ทั้งหมด อายุบัญชี ความเร็วในการสมัคร UUID ไม่เปิดเผยอะไรเลย API ที่เปิดเผย ID แก่ผู้ใช้จะได้รับประโยชน์จาก UUID ทั้งด้านความปลอดภัยและความเข้ากันได้ในการส่งต่อกับแบ็กเอนด์ที่แบ่งส่วน
คลิกสร้าง รับ v4 UUID
UUID คือ 128 บิต ซึ่งแสดงเป็นเลขฐานสิบหก 32 หลักในห้ากลุ่มคั่นด้วยเครื่องหมายขีดกลาง การจัดกลุ่ม (8-4-4-4-12) เป็นเพียงการตกแต่งเท่านั้น ค่าเป็นจำนวนเต็ม 128 บิตเดียว v4 UUID เข้ารหัสการสุ่ม 122 บิตโดยส่วนที่เหลืออีก 6 บิตคงที่: ฟิลด์เวอร์ชัน (4 บิต ค่า 4) ระบุตัวแปร
การสนับสนุนเบราว์เซอร์: crypto.randomUUID() มีอยู่ในเบราว์เซอร์สมัยใหม่ (Chrome 92+, Firefox 95+, Safari 15.4+) และสร้าง UUID v4 ได้โดยตรง เบราว์เซอร์รุ่นเก่าจะกลับไปรวมไบต์สุ่ม 16 ไบต์ด้วยตนเองจาก crypto.getRandomValues โดยตั้งค่าบิตเวอร์ชัน/ตัวแปรอย่างถูกต้อง
ความน่าจะเป็นของการชนกัน: ด้วย UUID แบบสุ่มที่เป็นไปได้ 2^122 รายการ โอกาสในการสร้างค่าที่เหมือนกันสองค่านั้นน้อยมาก แม้จะสร้าง UUID ขึ้นมา 10^9 หน่วย ความน่าจะเป็นของการชนกันครั้งเดียวก็ยังอยู่ที่ประมาณ 10^-18 ซึ่งมีโอกาสน้อยกว่าการเลือกอะตอมบนโลกโดยการสุ่มประมาณ 10 ล้านล้านเท่า