المدونة
العربية

مولّد UUID — إنشاء UUID v4 وv7 بالجملة

إنشاء معرّفات UUID v4 وv7 القابلة للترتيب بالجملة

تعمل في متصفحك · لا يُرفع أي شيء

ما هذه الأداة؟

UUID معرّف من 128 بتًا يمكن إنشاؤه باستقلال على أي جهاز مع احتمال تكرار لا يُذكر، ولذلك يظهر في مفاتيح قواعد البيانات وأسماء الملفات وتتبع الطلبات. تنشئ هذه الأداة معرّفات UUID من الإصدار v4 أو v7، حتى 1000 معرّف في كل نقرة.

طريقة الاستخدام

  1. اختر الإصدار: v4 عشوائي بالكامل، وv7 مرتب زمنيًا.
  2. حدّد العدد الذي تريده، من 1 إلى 1000.
  3. فعّل الأحرف الكبيرة أو أوقف الشرطات إذا احتجت إلى هذا الشكل.
  4. تتحدث القائمة فورًا. ويضع زر «نسخ» القائمة كاملة في الحافظة، معرّفًا واحدًا في كل سطر.
  5. اضغط «إنشاء من جديد» للحصول على دفعة جديدة.

كيف تعمل؟

  • يتبع الإخراج RFC 9562 (الذي حل محل RFC 4122): 32 رقمًا ست عشريًا مجمعة بالشكل 8-4-4-4-12.
  • يأتي v4 من الدالة crypto.randomUUID في المتصفح: نصف بايت الإصدار 4، وبتات المتغير 10، و122 بتًا عشوائيًا.
  • يُبنى v7 يدويًا: طابع زمني Unix من 48 بتًا بالملّي ثانية، ثم الإصدار 7، ثم عدّاد من 12 بتًا، ثم بتات المتغير 10، ثم 62 بتًا عشوائيًا.
  • الترتيب مضمون داخل الدفعة الواحدة (وبين الدفعات في جلسة المتصفح نفسها). عند إنشاء عدة معرّفات في الملّي ثانية نفسها يزداد العدّاد ذو 12 بتًا. وإذا توقفت الساعة أو رجعت إلى الوراء فلن تنخفض القيمة أبدًا عن سابقتها، فيعطي ترتيب النصوص ترتيب الإنشاء. وإذا كان العدّاد سيفيض داخل ملّي ثانية واحدة، يتقدم الطابع الزمني بمقدار واحد.
  • تأتي كل العشوائية من crypto.getRandomValues، ولا تُستخدم Math.random أبدًا.

أمثلة

العنصر الشكل
v4 xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx (y هي 8 أو 9 أو a أو b)
v7 tttttttt-tttt-7xxx-yxxx-xxxxxxxxxxxx (t هو الطابع الزمني بالملّي ثانية، وy هي 8 أو 9 أو a أو b)
بلا شرطات سلسلة واحدة من 32 رقمًا ست عشريًا
أحرف كبيرة القيمة نفسها مع كتابة A–F بأحرف كبيرة

أنشئ دفعة v7 ورتّب الأسطر أبجديًا: لن يتغير الترتيب.

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

هل أختار v4 أم v7؟

استخدم v4 عندما تحتاج إلى معرّف فريد فقط. واستخدم v7 لأشياء مثل المفاتيح الأساسية في قواعد البيانات، حيث تكون المعرّفات المرتبة حسب وقت الإنشاء ألطف على الفهارس.

هل يمكن أن يتطابق معرّفان؟

نظريًا نعم، لكن v4 يحتوي على 122 بتًا عشوائيًا، فالتصادم ليس مصدر قلق عملي في الأحجام المعتادة. ويضيف v7 عدّادًا لتبقى المعرّفات المُنشأة في الملّي ثانية نفسها فريدة ومرتبة.

هل احتواء v7 على طابع زمني مشكلة؟

أول 48 بتًا في v7 هي وقت الإنشاء بالملّي ثانية. استخدمه فقط حيث لا يضر كشف وقت الإنشاء، واختر v4 عندما يكون ذلك غير مقبول.

هل تُخزَّن معرّفات UUID في أي مكان؟

لا. تُنتَج باستخدام مصدر العشوائية المشفّر في المتصفح ولا تُرسل إلى أي مكان.

لم تجد الأداة التي تبحث عنها؟