المطورين

مولد UUID

تحتاج إلى UUID لمفتاح قاعدة بيانات أو رمز API أو اختبار؟ أنشئ UUIDs الإصدار 4 واحداً تلو الآخر أو بكميات — حتى 100 دفعة واحدة — وانسخها مباشرة إلى الحافظة.

هل ساعدتك هذه الأداة؟

ما هي مولد UUID؟

ينشئ مولد UUID (المعرّف الفريد عالمياً) UUIDs عشوائية من الإصدار 4 — معرّفات 128 بت فريدة عملياً عبر جميع الأنظمة في العالم. يتبع كل UUID التنسيق القياسي 8-4-4-4-12 (36 حرفاً مع شرطات)، مما يجعله سهل القراءة والتخزين والإرسال. الرقم المحدد للإصدار (الموضع 13) دائماً 4، والرقم المحدد للتباين (الموضع 17) دائماً 8 أو 9 أو A أو B، مما يضمن الامتثال الكامل لـ RFC 4122. أنشئ من 1 إلى 100 UUID دفعة واحدة لمفاتيح أساسية قواعد البيانات ورموز API ومعرّفات الجلسات وأختبارات الاختبار، أو أي تطبيق يحتاج إلى معرّفات فريدة مضمونة بدون تنسيق مع سلطة مركزية.

متى تستخدم هذه الآلة الحاسبة

  • تحتاج إلى معرّف فريد لمفتاح أساسي لقاعدة بيانات في نظام موزع
  • أنت تنشئ معرفات موارد API يجب أن تكون فريدة عالمياً بدون سلطة مركزية
  • تحتاج إلى اختبارات بمعرفات فريدة لاختبارات الوحدة أو التكامل
  • أنت تبني نظام إدارة جلسات يتطلب إنشاء رموز فريدة
  • تحتاج إلى إنشاء عدة معرّفات فريدة بكميات لنقل أو استيراد بيانات
  • تريد التحقق من أن UUID لديك صالح ومنسّق بشكل صحيح

الخطوات:

  1. اختر عدد UUIDs المراد إنشاؤها (1-100).
  2. انقر على زر إنشاء UUID.
  3. انسخ UUIDs الفردية أو استخدم نسخ الكل.
  4. فعّل النسخ التلقائي للنسخ تلقائياً عند الإنشاء.

الصيغة

تنسيق UUID v4: xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx حيث x رقم سداسي عشوائي و y واحد من 8 أو 9 أو A أو B (متغير RFC 4122). إجمالي التركيبات: ~5.3 × 10^36

حالات الاستخدام

  • مفاتيح أساسية لقواعد البيانات للأنظمة الموزعة
  • معرفات موارد API
  • رموز جلسة المستخدم
  • معرفات الطلبات والمعاملات

الفوائد الرئيسية

  • إنشاء 1-100 UUID فوراً بنقرة واحدة
  • نسخ فردي أو جماعي إلى الحافظة بنقرة واحدة
  • وضع النسخ التلقائي لتدفق عمل سلس أثناء التطوير
  • مجاني تماماً بدون تسجيل أو حساب أو اتصال بالخادم
  • الإنشاء من جانب العميل يضمن أن UUIDs لا تغادر متصفحك أبداً
  • تنسيق متوافق عالمياً (RFC 4122) يعمل مع جميع قواعد البيانات والأطر الرئيسية

نصائح احترافية

  • استخدم UUID v4 للمعرّفات الفريدة للأغراض العامة حيث لا يلزم الترتيب الزمني
  • خزّن UUIDs كـ binary(16) في قواعد البيانات بدلاً من النصوص لتوفير 50% من مساحة التخزين وتحسين أداء الفهرس
  • استخدم UUID v7 أو ULID إذا كنت تحتاج إلى معرّفات فريدة مرتبة زمنياً وقابلة للفرز
  • لا تنشئ UUIDs من جانب العميل للتطبيقات الحرجة أمنياً — استخدم بدلاً من ذلك CSPRNG من جانب الخادم
  • عند التحويل من معرّفات التسلسل التلقائي، أضف عمود UUID بجانب عمود العدد الصحيح الحالي لتجنب الاضطرابات

الأخطاء الشائعة التي يجب تجنبها

  • استخدام معرّفات تسلسلية تلقائية بدلاً من UUIDs في الأنظمة الموزعة حيث تنشئ العقدة المعرّفات بشكل مستقل
  • افتراض أن UUIDs قابلة للفرز حسب الوقت — UUIDs الإصدار 4 القياسية عشوائية؛ استخدم UUID v7 أو ULID للمعرّفات المرتبة زمنياً
  • تخزين UUIDs كنصوص بطول 36 حرفاً بدلاً من 16 باياً ثنائي، مما يهدر 50% مساحة تخزين أكثر ويؤثر على أداء الفهرس
  • الاعتماد على Math.random() من جانب العميل لإنشاء UUID الحساس أمنياً — ليس آمناً تشفيرياً

شرح المصطلحات الأساسية

UUID: المعرّف الفريد عالمياً — معرّف 128 بت موحد بموجب RFC 4122
UUID v4: UUID عشوائي الإصدار 4 — الإصدار الأكثر استخداماً، يُنشأ من 122 بت عشوائي
GUID: المعرّف الفريد عالمياً — تطبيق Microsoft لمعيار UUID، متطابق وظيفياً
RFC 4122: وثيقة توحيد IETF التي تحدد تنسيق UUID والإصدارات وبنية حقل المتغير
CSPRNG: مولّد أرقام عشوائية آمن تشفيرياً — مطلوب لإنشاء UUID في السياقات الأمنية

مفاهيم ذات صلة

  • UUID الإصدار 4: UUID مُنشأ بالكامل من بتات عشوائية، مع حقل الإصدار مضبوط على 0100 (4) وبتات المتغير مضبوطة حسب RFC 4122
  • GUID (المعرّف الفريد عالمياً): تطبيق Microsoft لمعيار UUID، متطابق وظيفياً مع UUID v4
  • RFC 4122: وثيقة التوحيد التي تحدد تنسيق UUID والإصدارات وحقل المتغير لهيكل UUID
  • التصادم: الحدث النادر جداً حيث يكون UUIDان مُنشآن بشكل مستقل متطابقين — مع UUIDs v4، الاحتمال حوالي 1 من 5.3×10^36
  • UUID v7: إصدار UUID أحدث يشفر طابعاً زمنياً Unix في البتات الأكثر أهمية، مما يجعل UUIDs مرتبة زمنياً وقابلة للفرز مع بقائها فريدة

مثال

UUID المُنشأ: 550e8400-e29b-41d4-a716-446655440000 — UUID v4 قياسي مع 4 في الموضع 13 يشير إلى الإصدار 4، و "a" في الموضع 17 يشير إلى متغير RFC 4122.

تفسير نتائجك

ينشئ المولد UUIDs من الإصدار 4، وهي معرّفات عشوائية 128 بت تتبع التنسيق السداسي القياسي 8-4-4-4-12 (36 حرفاً بما في ذلك الشرطات). الإصدار 4 يعني أن جميع البتات باستثناء مؤشرات الإصدار والمتغير عشوائية، مما يوفر أعلى تفرد ممكن بدون تنسيق بين الأنظمة. يحتوي UUID المُنشأ على علامات هيكلية محددة: الحرف الثالث عشر دائماً 4 (يشير إلى الإصدار 4)، والحرف السابع عشر دائماً 8 أو 9 أو A أو B (يشير إلى متغير RFC 4122). هذه العلامات تميز UUIDs الإصدار 4 عن الإصدارات الأخرى وتضمن الامتثال للمعيار. استخدم ميزة النسخ التلقائي عندما تحتاج إلى إنشاء UUIDs واحداً تلو الآخر أثناء التطوير — يتم نسخ كل UUID إلى الحافظة فوراً عند الإنشاء. استخدم نسخ الكل عندما تحتاج إلى دفعة من UUIDs لعملية جماعية. يعمل إنشاء الدفعات بالكامل في متصفحك بدون اتصال بالخادم.

الأسئلة الشائعة

ما هو UUID؟
UUID (المعرّف الفريد عالمياً) هو معرّف 128 بت موحد بموجب RFC 4122. يتم إنشاء UUIDs الإصدار 4 عشوائياً ومضمونة عملياً أن تكون فريدة عبر الأنظمة.
ما مدى تفرد UUIDs؟
فريدة للغاية. هناك 5.3×10^36 من UUIDs الإصدار 4 الممكنة. احتمال التصادم منخفض جداً لدرجة أنه يمكنك إنشاء مليار UUID في الثانية لمدة 100 سنة ولا يزال خطر التصادم قريباً من الصفر.
ما استخدامات UUIDs؟
تُستخدم UUIDs كمفاتيح أساسية لقواعد البيانات، ومعرفات موارد API، ورموز الجلسة، ومعرفات المعاملات، وفي أي مكان تحتاج فيه إلى معرّفات فريدة بدون سلطة مركزية.
ما الفرق بين UUID وGUID؟
GUID (المعرّف الفريد عالمياً) هو تطبيق Microsoft لمعيار UUID. هما متطابقان وظيفياً وقابلان للتبادل.
هل UUIDs مضمونة حقاً أن تكون فريدة؟
لا يضمن أي معيار UUID التفرد المطلق — لكن احتمال التصادم مع UUIDs الإصدار 4 منخفض جداً فلكياً (1 من 5.3×10^36) لدرجة أنه يُعتبر مستحيلاً عملياً. للمرجع، ستحتاج إلى إنشاء مليار UUID في الثانية لمدة 100 سنة للوصول حتى إلى احتمال تصادم 50%.
هل يجب أن أستخدم UUIDs أم أعداداً صحيحة ذات زيادة تلقائية للمفاتيح الأساسية؟
UUIDs أفضل للأنظمة الموزعة لأنها يمكن إنشاؤها بشكل مستقل على أي عقدة بدون تنسيق. الأعداد الصحيحة أبسط وأصغر، مما يجعلها أفضل لتطبيقات قاعدة البيانات الفردية حيث يهم الترتيب التسلسلي. UUIDs أيضاً لا تسرب معلومات عن حجم بياناتك (معرف تسلسلي 5,000 يخبر المهاجم أن لديك 5,000 سجل).
هل يمكنني فرز UUIDs زمنياً؟
UUIDs الإصدار 4 القياسية عشوائية ولا يمكن فرزها حسب الوقت. UUID الإصدار 7 (متاح في المكتبات الأحدث) يشفّر طابعاً زمنياً في البتات الأكثر أهمية، مما يجعله قابلاً للفرز الزمني. إذا كنت تحتاج إلى معرّفات فريدة مرتبة زمنياً، ففكر في UUID v7 أو ULID كبدائل لـ v4.
ما الفرق بين تخزين UUIDs كنصوص و كبيانات ثنائية؟
النصوص تستخدم 36 حرفاً (36 بايت)، بينما البيانات الثنائية تستخدم 16 بايت. التخزين الثنائي أكثر كفاءة لكل من مساحة التخزين وأداء الفهرس. معظم قواعد البيانات تدعم أنواع أعمدة محددة لـ UUID تتعامل مع التحويل الثنائي تلقائياً. استخدم binary(16) في MySQL أو النوع uuid الأصلي في PostgreSQL.
لماذا الحرف الثالث عشر دائماً '4' في UUID الإصدار 4؟
الحرف الثالث عشر يشغل البتات 48-51 من UUID، التي تشفر رقم الإصدار. للإصدار 4، هذه البتات مضبوطة على 0100، وهو الرقم الست عشري 4. هكذا يحدد أي قارئ UUID أن UUID هو الإصدار 4 (عشوائي).
هل من الآمن إنشاء UUIDs من جانب العميل؟
لأغراض غير أمنية، نعم. للتطبيقات الحرجة أمنياً (رموز الجلسة، مفاتيح API، رموز إعادة تعيين كلمة المرور)، استخدم مولداً عشوائياً آمناً تشفيرياً من جانب الخادم. Math.random() المستند إلى المتصفح ليس آمناً تشفيرياً، رغم أن crypto.getRandomValues() في المتصفحات الحديثة مقبول لمعظم الأغراض.
كم عدد UUIDs التي يمكنني إنشاؤها دفعة واحدة؟
يدعم هذا المولد حتى 100 UUID لكل دفعة. للدفعات الأكبر، يمكنك تشغيل المولد عدة مرات أو استخدام نص من جانب الخادم مع مكتبة UUID. الإنشاء بالكامل من جانب العميل بدون طلبات شبكة، لذا تكتمل الدفعات فوراً تقريباً.

اكتشف المزيد من الأدوات

تشكيلة جديدة من مكتبتنا الكاملة للأدوات.