مولد معرّفات NanoID

قم بتوليد معرّفات NanoID عبر الإنترنت: 21 محرفًا آمنًا لعناوين URL بشكل افتراضي، مع عشوائية تبلغ حوالي 126 بت، وإمكانية تخصيص الطول ومجموعة المحارف.

شكل
المعرفات التي تم إنشاؤها
جاهز. قم بتوليد معرّفات NanoID في متصفحك مباشرةً.

كيف يتم بناء هذا المعرّف

التخطيط والتركيبة
21 محرفًا آمنًا لعناوين URL بشكل افتراضي، تشمل الحروف اللاتينية الكبيرة والصغيرة والأرقام والشرطة السفلية والشرطة العادية.
الإنتروبيا
حوالي 126 بت مع الأبجدية الافتراضية المكونة من 64 محرفًا وبطول 21 محرفًا.
الوقت
لا يحتوي على طابع زمني؛ معرّفات NanoID مبهمة تمامًا ما لم تضف دلالات خاصة إلى الأبجدية المخصصة.
احتمالية التصادم
يختلف خطر التداخل باختلاف الطول ومجموعة المحارف المستخدمة. يقع الخيار الافتراضي في نفس نطاق الأمان العملي لمعرّفات UUID v4.
مثال
XP3Zscttz8DFtgjtXYqZh

يتم إنشاء معرفاتك محليًا باستخدام عشوائية قوية في المتصفح. لا يتم إرسال أي شيء إلى BroBroGo.

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

لماذا أستخدم NanoID؟

يتميز NanoID بأنه أقصر من UUID، وآمن للاستخدام في عناوين URL افتراضيًا، ويحتفظ بمستوى عشوائية مرتفع للغاية عند استخدام الطول والأبجدية الافتراضيين.

هل يمكنني تغيير الأبجدية المستخدمة؟

نعم. تحتفظ صفحة NanoID المقفلة بخيارات التحكم في الطول والأبجدية. استخدام أبجديات أصغر أو أطوال أقصر يزيد من خطر التصادم.

مولد Nano ID: المعرفات المخصصة القصيرة الآمنة للعناوين

تولّد هذه الصفحة معرفات فريدة باستخدام تنسيق Nano ID. يمكنك تحديد الطول ومجموعة الحروف المسموح بها، وتنتج الأداة معرفاً واحداً أو أكثر تكون مضغوطة وآمنة للعناوين ومقاومة للتصادم.

ما الذي يميز هذه الصفحة عن غيرها؟

على عكس المعرفات من نوع UUID التي يبلغ طولها الثابت 36 حرفاً، أو ULID التي يبلغ طولها 26 حرفاً، فإن الطول الافتراضي لـ Nano ID هو 21 حرفاً فقط – أقصر بكثير من UUID مع توفير مقاومة مماثلة للتصادم. لكن الفارق الحقيقي يكمن في قابلية الضبط الكاملة لكل من:

  • الطول: يمكن تعديله بين 2 و36 حرفاً
  • الحروف الأبجدية: حقل نصي قابل للتحرير، يجب أن يحتوي على حرفين مختلفين على الأقل

عند تغيير أي من هذه الإعدادات، يتم توليد المعرفات فوراً دون الحاجة إلى زر "توليد". إذا تم تقليص الحروف الأبجدية إلى حرف واحد فقط، تُمسح النتائج ويصبح عدد المعرفات 0، ويُعطّل زر "نسخ الكل".

تستخدم المعرفات المُولَّدة حروفاً آمنة للعناوين بشكل افتراضي، مما يعني أنها خالية من الرموز التي قد تتطلب ترميزاً خاصاً في المسارات أو المعاملات.

المعلمات الأساسية للتوليد

توفر الصفحة أربعة متغيرات للتحكم في المعرفات الناتجة:

المعامل القيم المسموحة القيمة الافتراضية
التنسيق Nano ID (اختيار من القائمة المنسدلة) Nano ID
العدد عدد صحيح بين 1 و100 1 (عادةً)
الطول شريط تمرير، نطاق 2–36 21
الحروف الأبجدية حقل نصي قابل للتحرير (أحرف آمنة لعناوين URL) الحروف الافتراضية

ملاحظة مهمة: يجب أن تحتوي الحروف الأبجدية على حرفين مختلفين على الأقل. إذا قمت بتغيير الحروف إلى حرف واحد فقط، سيتم مسح النتائج وسيصبح عدد المعرفات 0، مع تعطيل زر "نسخ الكل".

حالات الحالة والرسائل

تعرض الصفحة حالات واضحة أثناء الاستخدام:

  • جاهز. (عندما تكون الأداة في حالة الخمول)
  • تم التوليد. (بعد اكتمال التوليد)
  • تم نسخ الكل! (بعد نسخ جميع المعرفات)
  • الحروف الأبجدية تحتاج إلى حرفين مختلفين على الأقل. (خطأ عند وجود حرف واحد فقط)

آلية العمل محلياً في المتصفح

يتم توليد المعرفات بالكامل داخل متصفح المستخدم باستخدام crypto.getRandomValues – وهي واجهة برمجية توفر أرقاماً عشوائية قوية وآمنة تشفيرياً في جميع المتصفحات الحديثة. هذا يعني أن المعرفات تُولّد:

  • محلياً دون إرسال أي بيانات إلى خوادم BroBroGo
  • بدرجة عالية من عدم القدرة على التخمين
  • دون تأخير ناتج عن اتصال الشبكة

لا يحتاج المستخدم إلى اتصال إنترنت بعد تحميل الصفحة. لا يتم تخزين المعرفات على أي خادم، ولا يتم تسجيل عناوين IP أو أي معلومات تعريفية.

قواعد الحواف والأخطاء الشائعة

1. الحروف الأبجدية غير الصالحة

إذا أدخلت حرفاً واحداً فقط (مثلاً "a")، فإن الأداة تتعطل عمداً:

  • تُمحى جميع المعرفات السابقة
  • يصبح عدد المعرفات 0
  • يُعطّل زر "نسخ الكل"
  • تظهر رسالة الخطأ الصريحة

السبب: بدون حرفين مختلفين على الأقل، يستحيل توليد تسلسلات فريدة ذات معنى ضمن التنسيق.

2. الطول القصير جداً

عند تعيين الطول إلى 2 (الحد الأدنى)، قد تكون احتمالية التصادم مرتفعة إذا كنت تُولّد عدداً كبيراً من المعرفات. على سبيل المثال، مع طول 2 حرف وأبجدية مكونة من 64 حرفاً، يكون عدد المعرفات الممكنة = 64² = 4096 فقط. إذا اخترت عدداً قريباً من 100 معرفة، فإن احتمالية التصادم تصبح غير مهملة.

3. التوليد الفوري

أي تغيير في أي من المعاملات (الطول، الحروف، العدد، التنسيق) يؤدي إلى إعادة توليد المعرفات فوراً. لا توجد أزرار "توليد" منفصلة. هذا يعني أنك قد تفقد نتيجة سابقة إذا غيرت الإعدادات عن طريق الخطأ.

4. النسخ الفردي

بالنقر على أي معرف فردي، يتم نسخه إلى الحافظة مباشرة. لا توجد حاجة إلى تحديد النص أو استخدام قوائم سياقية.

من يحتاج إلى هذه الأداة؟

المستخدمون المستهدفون هم مطورون ومهندسون يعملون على أنظمة تتطلب معرفات قصيرة وآمنة:

  • مطورو واجهات برمجة التطبيقات: يمكن استخدام Nano ID كمعرفات للموارد في REST APIs، حيث يكون الطول الأصغر أفضل لتحسين سرعة النقل.
  • مصممو أنظمة قواعد البيانات: يمكن استخدامه كمفاتيح أساسية رئيسية في قواعد البيانات NoSQL أو حتى SQL، مما يقلل من حجم الفهارس.
  • منشئو الروابط القصيرة: المعرفات بطول 8-12 حرفاً تكفي لملايين الروابط الفريدة.
  • أنظمة الرموز المميزة للتأكيد أو إعادة تعيين كلمة المرور: المعرفات التي تُولّد محلياً لا تغادر المتصفح مطلقاً.
  • أي شخص يهتم بالخصوصية: لا يتم إرسال أي شيء إلى الخادم.

العلاقة بين الطول والحروف واحتمالية التصادم

يمكن حساب عدد المعرفات الفريدة الممكنة لأي طول L وأبجدية بحجم A بالمعادلة: A^L. على سبيل المثال:

  • الطول الافتراضي 21 حرفاً مع الأبجدية الافتراضية (64 حرفاً): 64²¹ ≈ 1.6 × 10³⁸
  • هذا العدد أكبر بكثير من عدد UUIDs الممكن (2¹²² ≈ 5.3 × 10³⁶)
  • عملياً، لضمان عدم وجود تصادم مع 100 معرفة، يكفي طول 8 حروف مع أبجدية مكونة من 64 حرفاً (64⁸ ≈ 2.8 × 10¹⁴)

إذا كنت تحتاج فقط إلى معرفات رقمية (0-9)، فإن الأبجدية بحجم 10 حروف تتطلب طولاً أطول لتحقيق نفس مستوى الفريدة. على سبيل المثال، لتحقيق 10¹² فريدة، تحتاج إلى طول 12 حرف رقمياً، بينما مع أبجدية مكونة من 64 حرفاً تحتاج فقط إلى 7 أحرف.

دليل اختيار الطول والحروف المناسبين

  1. للاستخدام العام في واجهات API: الطول الافتراضي 21 حرفاً مع الأبجدية الافتراضية آمن تماماً ولا حاجة لتغييره.
  2. للاستخدام في الروابط القصيرة: يمكن تقليل الطول إلى 8-12 حرفاً، مع الإبقاء على الأبجدية الافتراضية.
  3. لاستخدام الأحرف الرقمية فقط: إذا كان النظام يقبل أرقاماً فقط (مثل رموز OTP)، استخدم الأبجدية "0123456789" وزد الطول إلى 12-16 حرفاً.
  4. لتجنب الأحرف المتشابهة: يمكنك إزالة الأحرف مثل 0 وO وI وl و1 لتقليل أخطاء القراءة البشرية.
  5. لأنظمة عالية الإنتاجية: استخدم الطول الأقصى 36 حرفاً مع أبجدية واسعة لضمان عدم التصادم حتى مع مليارات المعرفات.

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

س: هل المعرفات التي تُولّد عشوائية حقاً؟ ج: نعم، تستخدم الأداة crypto.getRandomValues من المتصفح، وهي مصدر عشوائي آمن تشفيرياً ومعترف به في معايير الويب.

س: ما الفرق بين Nano ID وUUID؟ ج: UUID طوله ثابت 36 حرفاً (مع شرطات)، بينما Nano ID قابل للتخصيص وطوله الافتراضي 21 حرفاً فقط. ينتج Nano ID معرفات أقصر بحوالي 40% مع نفس مستوى مقاومة التصادم تقريباً.

س: هل يمكنني توليد أكثر من 100 معرفة؟ ج: لا، الحد الأقصى هو 100 معرفة لكل عملية توليد. يمكنك تكرار التوليد مرات متعددة إذا كنت بحاجة إلى أكثر من ذلك.

س: إذا غيرت الحروف الأبجدية إلى حرف واحد، ماذا يحدث؟ ج: تُمحى النتائج، ويصبح عدد المعرفات 0، ويُعطّل زر "نسخ الكل"، وتظهر رسالة خطأ تشير إلى أن الحروف يجب أن تحتوي على حرفين مختلفين على الأقل.

س: هل تُخزَّن المعرفات في أي مكان؟ ج: لا، كل شيء يحدث في المتصفح. لا يتم إرسال أي بيانات إلى الخادم، ولا يتم تخزين المعرفات بعد إغلاق الصفحة.

س: هل يمكن استخدام هذه الأداة في تطبيق إنتاجي؟ ج: نعم، طالما أنك تثق في عشوائية المتصفح، وهي مناسبة للتطبيقات التي تحتاج إلى توليد معرفات من جهة العميل دون اتصال بالخادم.