מחולל UUID
צור ערכי UUID v4 אקראיים לשימוש במסדי נתונים, ממשקי API או בדיקות.
כיצד להשתמש במחולל UUID זה
- הגדר את מספר ה-UUID
הזן 1–10 בשדה "מספר UUID" כדי לציין כמה מזהים ליצור.
- צור
המחשבון מפיק ערכי UUID v4 אקראיים באמצעות מקור האקראיות הקריפטוגרפי של הדפדפן.
- העתק את התוצאה
העתק את ה-UUID שנוצרו לשימוש במסדי נתונים, בנתוני API או בנתוני בדיקה (test fixtures).
כיצד מחולל ה-UUID הזה עובד
כלי זה מייצר מזהי UUID בגרסה 4 באמצעות האקראיות של הדפדפן. מזהי UUID v4 הם ערכים של 128 סיביות עם סיביות ספציפיות המוגדרות לציון הגרסה (4) והגרסה הסטנדרטית המשמשת במפרטי UUID מודרניים. כאשר Web Crypto זמין, האקראיות חזקה מבחינה קריפטוגרפית; אחרת הכלי עובר למחולל חלש יותר המיועד לנוחות בלבד.
UUID v4 = xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx (כאשר y ∈ {8,9,a,b}) פלט לדוגמה: 550e8400-e29b-41d4-a716-446655440000
יצירת UUID אחד מניבה ערך בודד כמו a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d. הספרה 4 בקבוצה השלישית מציינת גרסה 4.
יצירת 3 UUIDs מחזירה שלושה ערכים נפרדים, כל אחד עם 122 ביטים אקראיים. השתמש בהם כמפתחות ראשיים עבור רשומות בדיקה או משאבי API.
- ✓ משתמש ב-API של הדפדפן למספרים אקראיים קריפטוגרפיים כאשר הוא זמין.
- ✓ עובר לשימוש ב-Math.random() בסביבות ללא Web Crypto, מה שמתאים לנוחות אך לא לשימוש ברמת אבטחה גבוהה.
- UUID v4 אינו רציף ואינו מתאים לשימוש כמפתח ראשי הניתן למיון במסדי נתונים המפיקים תועלת מהכנסות מסודרות.
הבנת גרסאות ומבנה UUID
UUID (מזהה ייחודי אוניברסלי) הוא ערך של 128 סיביות המיוצג כ-32 ספרות הקסדצימליות בחמש קבוצות (8-4-4-4-12). UUID מגרסה 4 משתמש בנתונים אקראיים או פסאודו-אקראיים עבור 122 מהסיביות הללו; הסיביות הנותרות מקודדות את הגרסה (4) ואת הווריאנט. ההסתברות להתנגשות נמוכה באופן אסטרונומי — בערך 1 ל-2^122 — כך ש-UUID הם ייחודיים בפועל ללא צורך בתיאום. קיימות גרסאות נוספות: v1 משתמשת בחותמת זמן וכתובת MAC, v3 ו-v5 הן פונקציות גיבוב (hashes) מבוססות שם, ו-v7 מסודרת לפי זמן. UUID v4 הוא הבחירה הנפוצה ביותר עבור מערכות מבוזרות מכיוון שהוא אינו דורש סמכות מרכזית או מצב משותף ליצירתו.
שימושי UUID למפתחים
מפתחים משתמשים ב-UUIDs כמפתחות ראשיים במסדי נתונים, מזהי קורלציה בניטור מבוזר, ומזהים ייחודיים ב-API payloads. בניגוד למספרים שלמים בקידום אוטומטי, ניתן ליצור UUIDs בצד הלקוח או על ידי כל שירות ללא פנייה למסד נתונים מרכזי, מה שמפשט הרחבה אופקית וארכיטקטורות offline-first. הם אידיאליים לתרחישי מיזוג שבהם מספר מערכות יוצרות רשומות שמאוחדות מאוחר יותר. UUIDs מופיעים גם בפרמטרי מצב של OAuth, חתימות webhook ושמות קבצים כדי למנוע התנגשויות. בבדיקות, יצירת UUIDs לפי דרישה מונעת קידוד קשיח והופכת fixtures לניתנים לשחזור. הפשרה העיקרית היא הגודל (36 תווים) והיעדר יכולת מיון בהשוואה למזהים רציפים.
שאלות נפוצות
האם מזהי ה-UUID האלו ייחודיים?
לכל צורך מעשי, כן. הסיכוי ליצירת כפילות הוא קטן באופן אסטרונומי (1 ל-2^122).
האם ניתן להשתמש בהם בסביבת ייצור?
כן, כאשר הסביבה מספקת אקראיות של Web Crypto. אם הדף פועל ללא ה-API הזה ועובר ל-Math.random(), יש להתייחס לפלט כמזהים נוחים לשימוש ולא כאקראיות ברמת אבטחה.