مولد UUID
توليد قيم UUID v4 عشوائية لاستخدامها في قواعد البيانات، أو واجهات برمجة التطبيقات، أو الاختبار.
كيفية استخدام مولد UUID هذا
- حدد عدد معرفات UUID
أدخل رقماً من 1 إلى 10 في حقل عدد معرفات UUID لتحديد عدد المعرفات المطلوب إنشاؤها.
- إنشاء
تنتج الحاسبة قيم UUID v4 عشوائية باستخدام المصدر العشوائي التشفيري للمتصفح.
- نسخ النتيجة
انسخ معرفات UUID التي تم إنشاؤها لاستخدامها في قواعد البيانات، أو حمولات API، أو نماذج الاختبار.
كيف يعمل مولد UUID هذا
تقوم هذه الأداة بإنشاء معرفات UUID من الإصدار 4 باستخدام العشوائية في المتصفح. معرفات UUID v4 هي قيم بطول 128 بت مع تعيين بتات محددة للإشارة إلى الإصدار (4) والمتغير القياسي المستخدم في مواصفات UUID الحديثة. عندما تتوفر Web Crypto، تكون العشوائية قوية تشفيرياً؛ وإلا فإن الأداة تعود إلى مولد أضعف مخصص للملاءمة فقط.
UUID v4 = xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx (حيث y ∈ {8,9,a,b}) مثال للمخرجات: 550e8400-e29b-41d4-a716-446655440000
يؤدي إنشاء UUID واحد إلى قيمة واحدة مثل a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d. يشير الرقم 4 في المجموعة الثالثة إلى الإصدار 4.
يؤدي إنشاء 3 UUID إلى إرجاع ثلاث قيم متميزة، كل منها يحتوي على 122 بت عشوائي. استخدمها كمفاتيح أساسية لسجلات الاختبار أو موارد API.
- ✓ يستخدم واجهة برمجة تطبيقات الأرقام العشوائية التشفيرية للمتصفح عند توفرها.
- ✓ يعود إلى Math.random() في البيئات التي لا تتوفر فيها Web Crypto، وهو مناسب للملاءمة ولكن ليس للاستخدام عالي الأمان.
- معرف UUID v4 ليس تسلسلياً وغير مناسب للاستخدام كمفتاح أساسي قابل للفرز في قواعد البيانات التي تستفيد من عمليات الإدخال المرتبة.
فهم إصدارات وهيكل UUID
معرف UUID (المعرف الفريد عالمياً) هو قيمة مكونة من 128 بت يتم تمثيلها كـ 32 رقماً سداسياً عشرياً في خمس مجموعات (8-4-4-4-12). تستخدم معرفات UUID من الإصدار 4 بيانات عشوائية أو شبه عشوائية لـ 122 من تلك البتات؛ بينما تشفر البتات المتبقية الإصدار (4) والمتغير. احتمالية التصادم منخفضة للغاية — حوالي 1 من 2^122 — لذا فإن معرفات UUID فريدة فعلياً دون الحاجة لتنسيق. توجد إصدارات أخرى: يستخدم v1 الطابع الزمني وعنوان MAC، بينما يعتمد v3 و v5 على تجزئة الأسماء، و v7 مرتب زمنياً. يعد UUID v4 الخيار الأكثر شيوعاً للأنظمة الموزعة لأنه لا يتطلب سلطة مركزية ولا حالة مشتركة لإنشائه.
حالات استخدام UUID للمطورين
يستخدم المطورون UUID كمفاتيح أساسية في قواعد البيانات، ومعرفات ارتباط في التتبع الموزع، ومعرفات فريدة في حمولات API. على عكس الأعداد الصحيحة ذات الزيادة التلقائية، يمكن إنشاء UUID من جانب العميل أو بواسطة أي خدمة دون الاتصال بقاعدة بيانات مركزية، مما يسهل التوسع الأفقي وبنيات الأنظمة التي تعتمد على العمل دون اتصال أولاً. وهي مثالية لسيناريوهات الدمج حيث تنشئ أنظمة متعددة سجلات يتم دمجها لاحقاً. تظهر UUID أيضاً في معلمات حالة OAuth، وتوقيعات webhook، وتسمية الملفات لتجنب التصادمات. عند الاختبار، يؤدي إنشاء UUID عند الطلب إلى تجنب الترميز الثابت ويجعل التجهيزات قابلة لإعادة الإنتاج. المقايضة الرئيسية هي الحجم (36 حرفاً) وعدم القابلية للفرز مقارنة بالمعرفات المتسلسلة.
الأسئلة الشائعة
هل معرفات UUID هذه فريدة؟
نعم، من الناحية العملية. احتمال إنشاء نسخة مكررة ضئيل جداً (1 في 2^122).
هل يمكنني استخدامها في بيئة الإنتاج؟
نعم عندما توفر البيئة عشوائية Web Crypto. إذا كانت الصفحة تعمل بدون واجهة برمجة التطبيقات هذه وتعود إلى Math.random()، فتعامل مع المخرجات كمعرفات للملاءمة بدلاً من عشوائية بمستوى أمني.