مولّد ومحلل UUID — وضع الدُفعات
أنشئ UUID من النوع v1 وv4 وv5 وv7 فوراً — مولّد مجاني أونلاين مع محلل وتحقق. دُفعات حتى 50. يعمل في متصفّحك 100%. جرّبه الآن.
ما هو UUID؟
UUID (المعرّف الفريد العالمي) هو معرّف فريد عالمياً بحجم 128 بت موحّد وفقاً لمعيار RFC 9562 (IETF، مايو 2024)، مصمم لتوليد معرفات خالية من التصادم عبر الأنظمة الموزعة دون تنسيق مركزي. تُعد معرفات UUID أكثر تنسيقات المعرفات اعتماداً في البرمجيات الحديثة.
تُكتب معرفات UUID كـ 32 رقماً سداسياً عشرياً بالتنسيق القياسي 8-4-4-4-12، مثل 550e8400-e29b-41d4-a716-446655440000.
هناك خمسة إصدارات شائعة الاستخدام. الإصدار 1 (v1) يُرمّز الطابع الزمني الحالي وعنوان MAC للجهاز. الإصدار 3 (v3) والإصدار 5 (v5) حتميان — يجزئان نطاق اسم واسماً باستخدام MD5 أو SHA-1 على التوالي. الإصدار 4 (v4) هو الأكثر شيوعاً: يملأ 122 بت ببيانات عشوائية آمنة تعمويّاً. الإصدار 7 (v7) هو الأحدث: يجمع طابعاً زمنياً بدقة المللي ثانية مع بيانات عشوائية لإنتاج معرفات فريدة وقابلة للفرز زمنياً.
تُعد معرفات UUID أساسية في الأنظمة الموزعة وقواعد البيانات وواجهات API وأي مكان تحتاج فيه إلى معرفات فريدة دون تنسيق مركزي.
تولّد هذه الأداة جميع إصدارات UUID بالكامل في متصفحك باستخدام Web Crypto API — لا تُرسل أي معرفات إلى أي خادم. يمكنك أيضاً تحليل معرفات UUID الموجودة والتحقق من صحتها.
ترتبط معرفات UUID ارتباطاً وثيقاً بأدوات المطوّرين الأخرى. يضمّن UUID v1 وv7 طوابع زمنية Unix مباشرة، ويستخدم UUID v3 وv5 تجزئات MD5 وSHA-1 كأساس لهما، وغالباً ما تُنقل سلاسل UUID داخل حمولات JSON التي يُفضل فحصها باستخدام منسق JSON.
// Generate a UUID v4 using the Web Crypto API
const uuid = crypto.randomUUID();
console.log(uuid);
// → '550e8400-e29b-41d4-a716-446655440000'
// Manual v4 generation with crypto.getRandomValues()
function generateUUIDv4() {
const bytes = new Uint8Array(16);
crypto.getRandomValues(bytes);
bytes[6] = (bytes[6] & 0x0f) | 0x40; // version 4
bytes[8] = (bytes[8] & 0x3f) | 0x80; // variant 10
const hex = Array.from(bytes, b => b.toString(16).padStart(2, '0')).join('');
return `${hex.slice(0,8)}-${hex.slice(8,12)}-${hex.slice(12,16)}-${hex.slice(16,20)}-${hex.slice(20)}`;
} الميزات الرئيسية
دعم UUID v7 (RFC 9562)
ولّد أحدث تنسيق UUID v7 مع طوابع زمنية Unix مضمنة لمعرفات مرتبة زمنياً وصديقة لقواعد البيانات.
محلل ومدقق UUID
حلّل أي UUID لكشف إصداره ومتغيره وطابعه الزمني (v1/v7) ومعلومات العقدة. تحقق فوراً مما إذا كانت السلسلة النصية UUID صالحة.
دعم إصدارات متعددة
ولّد معرفات UUID في خمسة إصدارات — v1 (يعتمد على الوقت) وv3 (MD5) وv4 (عشوائي) وv5 (SHA-1) وv7 (عشوائي مرتب زمنياً) — جميعها متوافقة مع RFC 9562.
توليد بالدُفعات
ولّد حتى 50 معرف UUID فريد دفعة واحدة. يتم توليد كل معرف بشكل مستقل مع عشوائية تعموية كاملة.
تنسيقات إخراج متعددة
أخرج معرفات UUID بأحرف صغيرة أو كبيرة أو بدون شرطات أو بأقواس — مطابقة للتنسيق المطلوب من نظامك.
آمن تعمويّاً
يستخدم Web Crypto API (crypto.getRandomValues()) لتوليد أرقام عشوائية حقيقية — نفس المعيار المستخدم في مديري كلمات المرور وأدوات الأمان.
يعمل بالكامل في المتصفح
يتم توليد جميع معرفات UUID محلياً في متصفحك. لا يُرسل أي شيء إلى أي خادم — معرفاتك تبقى خاصة تماماً.
مقارنة إصدارات UUID
اختر إصدار UUID المناسب لحالة استخدامك.
| الإصدار | الأساس | قابل للفرز | الخصوصية | الأفضل لـ |
|---|---|---|---|---|
| v1 | الطابع الزمني + عنوان <bdi>MAC</bdi> | حسب وقت الإنشاء | يكشف <bdi>MAC</bdi> والوقت | الأنظمة القديمة التي تتطلب ترتيباً زمنياً |
| v4 | 122 بت عشوائية تعموية | لا | مجهول بالكامل | الاستخدام العام — الإصدار الأكثر استخداماً |
| v5 | تجزئة <bdi>SHA-1</bdi> لنطاق الاسم + الاسم | لا | حتمي وقابل للتكرار | معرفات ثابتة من مدخلات معروفة (<bdi>URLs</bdi>, <bdi>DNS</bdi>) |
| v7 | طابع زمني <bdi>Unix</bdi> (مللي ثانية) + عشوائي | حسب وقت الإنشاء | يكشف وقت الإنشاء فقط | قواعد البيانات الحديثة — قابل للفرز وصديق للفهرسة (<bdi>RFC 9562</bdi>) |
UUID مقابل تنسيقات المعرفات الأخرى
ULID
26 حرفاً، ترميز <bdi>Crockford Base32</bdi>قابل للفرز المعجمي مثل <bdi>UUID v7</bdi>، لكن يستخدم ترميز <bdi>Crockford Base32</bdi> (26 حرفاً مقابل 36). أصبح <bdi>UUID v7</bdi> الآن البديل الموحد من <bdi>IETF</bdi> مع دعم أدوات أوسع.
nanoid
21 حرفاً، أبجدية آمنة للروابطأقصر وآمن للروابط، مثالي عندما يهم الإيجاز. ليس معياراً رسمياً — يفتقر إلى أنواع قواعد البيانات الأصلية والمكتبات متعددة المنصات التي يمتلكها <bdi>UUID</bdi>.
CUID2
طول متغير، أبجدي رقميمصمم للتوسع الأفقي مع مقاومة التصادم. أقل اعتماداً من <bdi>UUID</bdi>؛ لا يوجد دعم أصلي في قواعد البيانات. فكر في <bdi>UUID v7</bdi> لمعرفات موحدة مرتبة زمنياً.
أمثلة إصدارات UUID
UUID v4 (عشوائي)
550e8400-e29b-41d4-a716-446655440000
الإصدار الأكثر استخداماً. 122 بت من العشوائية التعموية توفر أكثر من 5.3 × 10^36 قيمة ممكنة — مناسب لأي حالة استخدام تتطلب التفرد.
UUID v7 (مرتب زمنياً)
01906b5e-4a3e-7234-8f56-b8c12d4e5678
يجمع طابعاً زمنياً Unix بدقة 48 بت بالمللي ثانية مع بيانات عشوائية. تُفرز المعرفات زمنياً، مما يجعلها مثالية للمفاتيح الأساسية في قواعد البيانات.
UUID v1 (يعتمد على الوقت)
6ba7b810-9dad-11d1-80b4-00c04fd430c8
يرمّز طابعاً زمنياً بدقة 60 بت وعنوان MAC بدقة 48 بت للجهاز المولّد. يضمن التفرد في الزمان والمكان لكن قد يكشف معلومات هوية الجهاز.
UUID v5 (يعتمد على اسم SHA-1)
886313e1-3b8a-5372-9b90-0c9aee199e5d
UUID حتمي يُولّد بتجزئة نطاق اسم DNS مع الاسم 'python.org' باستخدام SHA-1. نفس النطاق والاسم ينتجان دائماً نفس UUID.
كيفية الاستخدام
- 1
اختر إصدار UUID
اختر من v1 (يعتمد على الوقت) أو v3 (يعتمد على اسم MD5) أو v4 (عشوائي) أو v5 (يعتمد على اسم SHA-1) أو v7 (عشوائي مرتب زمنياً). كل إصدار يخدم غرضاً مختلفاً — v4 هو الأكثر شيوعاً للاستخدام العام.
- 2
اضبط الخيارات
لـ v3 وv5، اختر نطاق اسم (DNS أو URL أو OID أو X.500 أو مخصص) وأدخل اسماً للتجزئة. حدد الكمية من 1 إلى 50 واختر تنسيق الإخراج.
- 3
ولّد معرفات UUID
انقر على زر التوليد. يتم إنشاء كل UUID باستخدام Web Crypto API (crypto.getRandomValues()) لأمان تعموي.
- 4
انسخ واستخدم
انقر على زر النسخ بجوار أي UUID لنسخه إلى الحافظة، أو استخدم نسخ الكل لنسخ جميع المعرفات المولدة دفعة واحدة. انتقل إلى علامة تبويب التحليل لفحص معلومات UUID موجود.
حالات الاستخدام الشائعة
- المفاتيح الأساسية لقاعدة البيانات
- استخدم UUID v4 أو v7 كمفاتيح أساسية فريدة دون تنسيق بين عقد قاعدة البيانات. UUID v7 مناسب بشكل خاص لأن خاصيته المرتبة زمنياً تحسن أداء فهرس B-tree.
- الأنظمة الموزعة
- ولّد معرفات فريدة بشكل مستقل عبر الخدمات المصغرة وصفوف الرسائل وأنظمة مصادر الأحداث. تلغي معرفات UUID الحاجة إلى خدمة مركزية لتوليد المعرفات.
- تطوير واجهات API
- أنشئ معرفات طلبات فريدة ومعرفات ارتباط ومفاتيح عدم التكرار لواجهات RESTful وGraphQL API.
- إدارة الجلسات والرموز
- ولّد معرفات جلسات فريدة ورموز مؤقتة لتدفقات المصادقة. توفر معرفات UUID تفرداً كافياً لمنع تصادم الجلسات.
- الاختبار والتطوير
- ولّد بيانات اختبار ومعرفات تجريبية بسرعة. التوليد بالدُفعات يسهّل ملء قواعد بيانات التطوير.
تفاصيل تقنية
- بنية UUID
- UUID هو 128 بت (16 بايت) يُمثل كـ 32 حرفاً سداسياً عشرياً بالتنسيق 8-4-4-4-12. البتات 48-51 (الرقم السداسي العشري الثالث عشر) ترمّز رقم الإصدار. البتات 64-65 ترمّز حقل المتغير.
- بتات الإصدار
- البتات 48-51 ترمّز إصدار UUID: 0001 = v1 (يعتمد على الوقت)، 0011 = v3 (يعتمد على اسم MD5)، 0100 = v4 (عشوائي)، 0101 = v5 (يعتمد على اسم SHA-1)، 0111 = v7 (وقت Unix).
- حقل المتغير
- البتات 64-65 تحدد المتغير. النمط 10x يشير إلى معرفات RFC 4122/9562 (الغالبية العظمى). النمط 110 يشير إلى معرفات Microsoft GUID مع ترتيب بايت مختلط.
- معيار RFC 9562
- RFC 9562، المنشور في مايو 2024، يحل محل RFC 4122 كمواصفة UUID النهائية. يقدم رسمياً إصدارات UUID الجديدة 6 و7 و8. الإصدار 7 يستخدم طابعاً زمنياً Unix بدقة 48 بت بالمللي ثانية مع بيانات عشوائية.
أفضل الممارسات
- اختر الإصدار المناسب
- استخدم v4 للمعرفات الفريدة ذات الأغراض العامة. استخدم v7 للمفاتيح الأساسية لقاعدة البيانات — بنيته المرتبة زمنياً توفر أداء فهرسة أفضل بكثير. استخدم v5 عندما تحتاج إلى معرفات حتمية مشتقة من أسماء.
- استخدم UUID v7 للمفاتيح الأساسية
- بنية UUID v7 المرتبة زمنياً تحافظ على تسلسل إدراجات B-tree، مما يقلل تجزئة الفهرس بنحو 90% مقارنة بمعرفات v4 العشوائية.
- لا تستخدم UUID كرموز أمان أبداً
- صُممت معرفات UUID للتفرد وليس للسرية. يكشف UUID v1 الطابع الزمني وعنوان MAC. UUID v4 يحتوي فقط على 122 بت من الإنتروبيا مع بنية يمكن التنبؤ بها. لرموز الأمان، استخدم مولّد أرقام عشوائية آمن مخصص.
- تحقق قبل التحليل
- تحقق دائماً من تنسيق UUID بتعبير نمطي قبل التحليل أو التخزين. ارفض المدخلات المشوهة عند حدود النظام لمنع هجمات الحقن وتلف البيانات.
الأسئلة الشائعة
ما هو UUID؟
ما الفروقات بين إصدارات UUID؟
متى أستخدم UUID v4 مقابل v7؟
ما احتمالية تصادم UUID؟
هل UUID v4 آمن تعمويّاً؟
كيف أتحقق من صحة تنسيق UUID؟
هل معرفات UUID مناسبة كمفاتيح أساسية لقاعدة البيانات؟ (الأداء والأمان وأفضل إصدار)
ما هو نطاق اسم UUID (v3/v5)؟
ما هي قيمة UUID الفارغة (nil)؟
ما هو UUID v7 ولماذا يجب أن أستخدمه؟
كيف أفك ترميز UUID؟
UUID مقابل ULID مقابل nanoid — أيهما أستخدم؟
أبني خدمة مصغرة وأحتاج للاختيار بين UUID v4 وv7 لمفاتيح PostgreSQL الأساسية — أيهما أستخدم ولماذا؟
فريقي يتناقش حول استخدام معرفات UUID أو الأعداد الصحيحة المتزايدة تلقائياً كمعرفات قاعدة البيانات — ما المقايضات الفعلية؟
ما الفرق بين UUID وGUID؟
أدوات ذات صلة
عرض جميع الأدوات →مولّد تجزئة MD5 — فوري ومجاني أونلاين
أدوات الأمن
أنشئ تجزئة MD5 وSHA-256 وSHA-1 وSHA-512 فوراً — أداة مجانية تعمل في متصفّحك بدون تتبّع أو رفع بيانات. الصق النص واحصل على التجزئة في ثانية. جرّبها الآن.
مولّد كلمات مرور عشوائية — قوي وآمن ومجاني
أدوات الأمن
ولّد كلمات مرور عشوائية قوية فوراً — أداة مجانية أونلاين تعمل في متصفّحك فقط. خصّص الطول والأحرف، دُفعات حتى 50 مع تحليل الإنتروبيا. بياناتك لا تغادر جهازك.
محوّل الأنظمة العددية — ثنائي وست عشري وعشري وثماني
أدوات التحويل
حوّل بين الأنظمة الثنائية والست عشرية والعشرية والثمانية وأي أساس من 2 إلى 36 فوراً — أداة مجانية أونلاين تعمل في متصفّحك. جرّبها الآن.
محوّل Base64 — ترميز وفك ترميز أونلاين
الترميز والتنسيق
رمّز وفك ترميز Base64 مجاناً أونلاين — محوّل فوري مع دعم UTF-8 والرموز التعبيرية. خصوصية 100% — يعمل في متصفّحك. جرّبه الآن.
ضغط الصور — JPEG وPNG وWebP
أدوات التحويل
اضغط صور JPEG وPNG وWebP أونلاين مجاناً — بياناتك لا تغادر متصفّحك أبداً. قلّل حجم الصورة حتى 80% مع الحفاظ على الجودة. معالجة دفعية لـ 20 صورة.
منسق JSON — التحقق والضغط وإصلاح الأخطاء
الترميز والتنسيق
نسّق JSON وتحقّق من صحته وأصلح الأخطاء فوراً — محرّر مجاني أونلاين يعمل في متصفّحك. يدعم الضغط والتجميل والتحويل. جرّبه الآن.