ما هو NanoID؟

NanoID هو مولد معرّفات فريدة صغير وآمن للعناوين في JavaScript. ينتج سلاسل عشوائية مضغوطة فريدة إحصائياً — مشابهة لـ UUID v4، لكنها أقصر بشكل افتراضي (21 حرفاً مقابل 36) وتم تصميمها لتكون آمنة للعناوين دون أي ترميز. يتم اختيار كل حرف من أبجدية متوازنة بعناية بحيث يكون كل معرّف ممكن متساوي الاحتمالية، مما يلغي الانحياز في التوزيع.

يستخدم NanoID مولد أرقام عشوائية قوياً من الناحية التشفيرية (crypto.getRandomValues في المتصفحات، crypto.randomFill في Node.js)، مما يجعل المعرّفات المُنتجة مناسبة للسياقات الحساسة أماناً مثل tokens الجلسات والروابط لمرة واحدة. يوفر الطول الافتراضي البالغ 21 حرفاً تقريباً 2.1 × 10³⁰ تركيبة ممكنة — مماثلة لـ UUID v4 — بينما يوفر الشكل المضغوط توفيراً في عرض النطاق الترددي ومساحة التخزين.

وصف الأداة

يتيح لك مولد NanoID عبر الإنترنت هذا إنشاء معرّف واحد أو أكثر من NanoIDs على الفور في متصفحك دون الحاجة إلى أي تثبيت. يمكنك التحكم في طول المعرّف، وعدد المعرّفات المراد إنشاؤها، والأبجدية المستخدمة — من الافتراضي الآمن إلى السادس عشري، أو الأبجدي الرقمي، أو الأرقام فقط، أو مجموعة أحرف مخصصة بالكامل.

أمثلة

الأبجدية الافتراضية، الحجم 21:

V1StGXR8_Z5jdHi6B-myT
useandom-26T198340PX7
bfghjklqvwyzrictV1StG

أبجدية سادسة عشرية، الحجم 16:

3f9a1c2b4e7d0f85
a0c4e8f23b6d917c

أرقام فقط، الحجم 8:

04817263
93571048

أبجدية مخصصة (abc123)، الحجم 12:

b2ca31b1ca2b
3a1c2b3c1ab2

الميزات

  • طول قابل للتعديل: اضبط حجم المعرّف من 1 إلى 64 حرفاً (الافتراضي 21)
  • الإنشاء بكميات كبيرة: أنشئ ما يصل إلى 1,000 معرّف في المرة الواحدة
  • إعدادات مسبقة للأبجدية: اختر من الافتراضي، الأرقام، الأحرف الصغيرة، الأحرف الكبيرة، الأبجدي الرقمي، السادس عشري، السادس عشري الكبير، عدم تشابه المظهر، أو مجموعة أحرف مخصصة بالكامل
  • إعداد عدم تشابه المظهر: يزيل الأحرف التي تبدو غامضة بصرياً (مثل 0، O، I، l) للحصول على معرّفات سهلة القراءة للبشر
  • التنزيل كملف: احفظ جميع المعرّفات المُنتجة في nanoids.txt بنقرة واحدة

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

  • تطوير التطبيقات: استخدم NanoIDs كمفاتيح أساسية في قواعد البيانات أو كمعرّفات السجلات في APIs حيث يُفضل سلسلة قصيرة وآمنة للعناوين على UUID كامل.
  • إنشاء tokens: أنشئ tokens عشوائية قصيرة لروابط إعادة تعيين كلمات المرور، أو رموز الدعوة، أو slugs الإحالة حيث تكون سهولة القراءة والأمان للعناوين مهمة.
  • الاختبار والبيانات الوهمية: أنتج بسرعة مجموعة من معرّفات فريدة واقعية لملء تركيبات الاختبار أو بيانات النموذج الأولي.

شرح الخيارات

الخيار الوصف
الحجم عدد الأحرف في كل معرّف مُنتج (1–64). الافتراضي البالغ 21 يعطي ~126 بت من الإنتروبيا، مكافئ لـ UUID v4.
الكمية عدد المعرّفات المراد إنشاؤها في دفعة واحدة (1–1,000).
الأبجدية مجموعة الأحرف المراد الاختيار منها. الأبجديات الأكبر والأكثر تنوعاً تزيد الإنتروبيا لكل حرف.
أبجدية مخصصة مرئية عند تحديد مخصص. أدخل أي أحرف؛ يتم إزالة النسخ المكررة تلقائياً لمنع توزيع منحرف.

كيفية العمل

يختار NanoID كل حرف بإنشاء بايت عشوائي، وإخفاء قناعه ليناسب حجم الأبجدية، وإعادة المحاولة إذا كانت النتيجة تقع خارج النطاق الصحيح — وهي تقنية تسمى rejection sampling. هذا يضمن توزيعاً مسطحاً تماماً عبر جميع أحرف الأبجدية بغض النظر عما إذا كان حجم الأبجدية قوة من اثنين. الأبجدية الافتراضية (useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict) آمنة للعناوين (بدون +، /، أو =) وتحتوي على 64 حرفاً، مما يجعل كل حرف يحمل بالضبط 6 بت من الإنتروبيا.