انتقل إلى المحتوى الرئيسيانتقل إلى الحاسبة
108 آلة حاسبةنتائج مباشرةحلول خطوة بخطوة

أداة Rechnerpilot

مولّد UUID

أنشئ UUID v4 محليًا مع بتات إصدار ونوع صحيحة.

أدوات المطورين

الشرح

كيف يعمل مولّد UUID

يُنشئ مولّد UUID معرّفات فريدة عالميًا (Universally Unique Identifiers) مباشرة في المتصفح. يعتمد UUID v4 على 122 بت من العشوائية التشفيرية وهو أكثر أنواع UUID انتشارًا للتطبيقات التي لا تعتمد على مرجع زمني.

يستخدم التنسيق القياسي شرطات: 8-4-4-4-12 حرفًا سداسيًا عشريًا (مثل 550e8400-e29b-41d4-a716-446655440000). تُرمّز البتات 48-51 الإصدار (4)، والبتات 64-65 النوع (10). يمكنك أيضًا إنشاء معرّفات UUID مضغوطة بدون شرطات أو بأحرف كبيرة.

يستخدم الإنشاء واجهة Web Crypto API في المتصفح (crypto.randomUUID أو crypto.getRandomValues) للحصول على قيم عشوائية آمنة تشفيريًا.

الأخطاء الشائعة

  • استخدام UUID كميزة أمان: معرّفات UUID فريدة لكنها ليست سرية. وهي غير مناسبة كرموز وصول أو بديل عن كلمات المرور.
  • اعتبار الفرادة مضمونة: معرّفات UUID فريدة باحتمال فلكي الارتفاع، لكنها لا تقدّم ضمانة رياضية. الفرادة المطلقة تتطلب تسجيلًا مركزيًا.
  • استخدام UUID v4 لسجلات قابلة للفرز: لا يمتلك UUID v4 ترتيبًا زمنيًا. للمعرّفات القابلة للفرز يكون UUID v7 (RFC 9562) أو ULID أنسب.
  • استخدام معرّفات UUID كفهرس قاعدة بيانات دون مراعاة الأداء: قد تسبّب معرّفات UUID العشوائية تجزئة في فهارس B-Tree. يكون UUID v7 أو المعرّفات المتسلسلة أفضل أداءً كمفاتيح أساسية.

حدود هذه الأداة

  • ‏UUID v4 فقط — لا دعم لـ v1 (المعتمد على الزمن) أو v5 (المعتمد على الاسم) أو v7 (المرتّب زمنيًا).
  • يُنشأ محليًا، دون تسجيل مركزي أو فحص للتكرار.
  • غير مناسب كرمز أمان — استخدم رموزًا تشفيرية مخصّصة لذلك.
  • لا يوجد تحقق من معرّفات UUID المُدخلة — الإنشاء فقط.

المصادر

  • RFC 9562: Universally Unique IDentifiers (UUIDs). IETF, 2024. يعرّف UUID v7 ويحدّث UUID v4.
  • RFC 4122: A Universally Unique IDentifier (UUID) URN Namespace. IETF, 2005. التعريف الأصلي لـ UUID v4.
  • Web Crypto API: crypto.randomUUID() — W3C/MDN. واجهة المتصفح الأصلية لإنشاء UUID v4.

التطبيق

أمثلة عملية

معرّف UUID v4 واحد

أنشئ معرّف UUID واحدًا بالتنسيق القياسي مع شرطات.

معرّفات لبيانات الاختبار

أنشئ عدة معرّفات UUID بدون شرطات لبيانات اختبار مضغوطة.

معرّفات UUID بأحرف كبيرة

استخدم الأحرف الكبيرة عندما يتوقع النظام الهدف هذا التنسيق.

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

الأسئلة المتكررة

أي إصدار UUID يتم إنشاؤه؟

يُنشئ المولّد UUID v4 (RFC 4122/RFC 9562) المبني على قيم عشوائية تشفيرية والمناسب للمعرّفات في الاختبارات والتطبيقات.

هل يتم تخزين معرّفات UUID؟

لا. تُنشأ معرّفات UUID محليًا في المتصفح ولا تُرسل إلى خادم. بعد إغلاق الصفحة لا يمكن استعادتها.

هل يمكنني نسخ معرّفات UUID بدون شرطات؟

نعم. عطّل خيار 'مع شرطات' وستُخرج معرّفات UUID كسلاسل مضغوطة من 32 حرفًا.

ما مدى احتمال حدوث تصادم UUID؟

يمتلك UUID v4 عدد 122 بت عشوائية وبالتالي فضاءً كبيرًا جدًا. مع مصدر عشوائية صحيح تكون التصادمات عمليًا غير مرجّحة جدًا، لكنها ليست مستبعدة رياضيًا ولا مُتحقَّقًا منها مركزيًا.

هل يمكنني استخدام UUID كميزة أمان؟

لا. رغم أن UUID v4 مبني على العشوائية، فهو ليس مصممًا كرمز أمان. إنها مرئية علنًا وليست سرية. للأغراض الأمنية استخدم مولّدات رموز مخصّصة بإنتروبيا كافية.

ما الفرق بين UUID v4 و UUID v7؟

يستخدم UUID v4 (RFC 4122) قيمًا عشوائية فقط. أما UUID v7 (RFC 9562) فيجمع طابعًا زمنيًا مع العشوائية وهو قابل للفرز — أفضل للمفاتيح الأساسية في قواعد البيانات. هذا المولّد يُنشئ UUID v4.

هل معرّفات UUID فريدة عالميًا؟

معرّفات UUID فريدة باحتمال عالٍ للغاية، لكنها غير مضمونة. لا يوجد سجل مركزي. تعتمد الفرادة على الحجم الهائل لفضاء العشوائية (2¹²² احتمال).

أي الأنظمة تقبل معرّفات UUID؟

معرّفات UUID قابلة للاستخدام عالميًا: قواعد البيانات (نوع UUID في PostgreSQL، وMySQL)، وواجهات API، والأنظمة الموزعة، وطوابير الرسائل، والخدمات المصغّرة، وملفات الإعداد، وكل مكان تُحتاج فيه معرّفات فريدة.

لماذا يستخدم المولّد crypto.randomUUID؟

‏crypto.randomUUID() هي واجهة المتصفح الأصلية لإنشاء UUID v4 وتستخدم مولّد العشوائية التشفيري لنظام التشغيل. وكبديل، يُستخدم crypto.getRandomValues() مع تنسيق UUID يدوي.

هل يمكنني استخدام معرّفات UUID المُنشأة في أنظمة الإنتاج؟

إنها تتوافق مع بنية UUID v4 وفق RFC 9562. أما ملاءمتها للنظام الهدف فتعتمد على متطلباته الخاصة بالتنسيق والفرادة والأمان.

نصائح

معلومات مفيدة

  • يستخدم UUID v4 عدد 122 بت عشوائية؛ لا توجد ضمانة ضد التصادم.
  • التنسيق قياسي: 8-4-4-4-12 حرفًا مع شرطات.
  • يستخدم الإنشاء crypto.randomUUID أو crypto.getRandomValues.

آلات حاسبة ذات صلة

أدوات أخرى