איך להשתמש בו
- בחרו v4 למזהים אקראיים או v7 למזהים שממוינים לפי זמן היצירה.
- קבעו כמה מזהים אתם צריכים (1 עד 1,000) ובחרו את הפורמט: אותיות גדולות, עם או בלי מקפים, עם או בלי סוגריים מסולסלים.
- העתיקו UUID בודד בעזרת הכפתור שלו, העתיקו את כולם, או הורידו אותם כקובץ טקסט עם UUID אחד בכל שורה.
- כדי לבדוק UUID קיים, הדביקו אותו באפשרות ״בדיקת UUID״.
איך זה עובד
UUID (נקרא גם GUID) הוא מזהה באורך 128 סיביות, הנכתב בדרך כלל כ-32 ספרות הקסדצימליות בחמש קבוצות: 8-4-4-4-12. הספרה הראשונה של הקבוצה השלישית היא הגרסה, והספרה הראשונה של הקבוצה הרביעית מקודדת את הווריאנט (8, 9, a או b עבור UUIDים תקניים). הפורמט מוגדר ב-RFC 9562, שהחליף את RFC 4122 ב-2024.
UUIDים מגרסה 4 הם אקראיים. כלי זה משתמש ב-crypto.randomUUID כשזמין, ואחרת ב-crypto.getRandomValues; שניהם בטוחים קריפטוגרפית, והכלי לעולם אינו משתמש ב-Math.random. עם 122 סיביות אקראיות, הסיכוי להתנגשות בין שני UUIDים מגרסה 4 זניח: יהיה צורך ליצור בערך 2.7 × 10^18 כאלה כדי לקבל סיכוי של 50% לכפילות אחת.
UUIDים מגרסה 7 מתחילים בחתימת זמן Unix של 48 סיביות באלפיות השנייה, ולאחריה הגרסה, שדה בן 12 סיביות ו-62 סיביות אקראיות. מכיוון שהזמן מופיע ראשון, ערכי v7 ממוינים לפי סדר היצירה, מה ששומר על אינדקסים קומפקטיים במסד הנתונים ומאיץ הכנסות בהשוואה למפתחות v4 אקראיים. כאשר נוצרים כמה UUIDים מגרסה 7 באותה אלפית שנייה, הכלי משתמש בשדה בן 12 הסיביות כמונה (השיטה המתוארת ב-RFC 9562, סעיף 6.2), כך שאצווה תמיד נמצאת בסדר עולה ממש. שים לב ש-UUID מגרסה 7 חושף מתי הוא נוצר.
הבודק מקבל UUIDים עם או בלי מקפים, באותיות גדולות או קטנות, בסוגריים מסולסלים, או עם תחילית urn:uuid:. הוא מדווח על הגרסה והווריאנט, מזהה את ה-UUIDים המיוחדים nil ו-max, ומציג את זמן היצירה המוטמע עבור גרסאות 1, 6 ו-7.
דוגמאות
מפתחות ראשיים לטבלה חדשה
צור 100 UUIDים מגרסה 7 לנתוני בדיקה, למשל 0192b3c4-5d6e-7f80-9a1b-2c3d4e5f6a7b. הם ממוינים לפי זמן היצירה, כך ששורות שנוספות מאוחר יותר מקבלות מפתחות גדולים יותר, בדומה לעמודה עם מספור אוטומטי.
GUID עבור פרויקט Windows או .NET
הפעל את 'אותיות גדולות' ואת 'סוגריים מסולסלים' כדי לקבל את התבנית בסגנון הרישום {3F2504E0-4F89-41D3-9A0C-0305E82C3301} המשמשת בקובצי פרויקט של Visual Studio, במזהי מחלקות COM וברישום של Windows.
בדיקת מזהה מתוך לוג
הדבק 018f6e2c-1a2b-7c3d-8e4f-5a6b7c8d9e0f בכלי הבדיקה. הוא ידווח על גרסה 7 והווריאנט התקני, ויפענח את 12 הספרות הראשונות כחותמת זמן במאי 2024, מה שאומר לך מתי הרשומה נוצרה.
שאלות נפוצות
האם להשתמש ב-UUID v4 או v7?
השתמשו ב-v4 כשהמזהים לא צריכים לחשוף דבר, כמו אסימונים ציבוריים או שמות קבצים. השתמשו ב-v7 למפתחות מסד נתונים ומזהי אירועים, שבהם סידור לפי זמן משפר את ביצועי האינדקס. לשניהם יש מספיק סיביות אקראיות כך שהתנגשויות אינן חשש מעשי.
האם ה-UUID האלה באמת ייחודיים?
הם לא נבדקים מול שום רשימה, אבל הם מגיעים ממחולל אקראי בטוח קריפטוגרפית, כך שכפילות היא כה בלתי סבירה שאפשר להתעלם ממנה במערכות אמיתיות. ערכי v7 כוללים גם את השעה הנוכחית.
האם UUID זהה ל-GUID?
כן. GUID (מזהה ייחודי גלובלי) הוא השם של מיקרוסופט לאותו פורמט של 128 סיביות. GUID מוצגים לרוב באותיות גדולות ובתוך סוגריים מסולסלים, ואפשר להפעיל זאת כאן.
האם אפשר להשתמש ב-UUID כסיסמה או כאסימון סודי?
ל-UUID בגרסה v4 יש 122 סיביות אקראיות, שקשה לנחש, אבל UUID נועדו להיות מזהים, לא סודות, ולעיתים קרובות מופיעים ביומנים וב-URL. למפתחות API או קישורי איפוס, השתמשו במחולל אסימונים אקראיים ייעודי.
האם חותמת הזמן של v7 משתמשת בשעון המחשב שלי?
כן. הוא נקרא משעון המכשיר באלפיות שנייה UTC. אם השעון שגוי, הזמן המוטמע יהיה שגוי, אבל המזהים בקבוצה אחת עדיין יהיו בסדר עולה.
פרטיות
UUID נוצרים בדפדפן שלך באמצעות מחולל המספרים האקראיים הקריפטוגרפי שלו. הם לא נשלחים לשרת, לא נשמרים ולא מתועדים, כך שאף אחד אחר לא רואה את הערכים שאתם יוצרים או בודקים.