§

وضع التوليد

§

إعدادات الأحرف

اسحب لضبط طول كلمة المرور. المدى: من 4 إلى 128 محرفاً.
يُسقط الأحرف المتشابهة بصرياً: 0 و O و o و 1 و l و I و | والعلامة الخلفية.
المدى: من 1 إلى 50. لكل نتيجة زر نسخ خاص بها؛ ويجمعها زر «نسخ الكل» بأسطر جديدة.
§

الخرج

    تشترط الضوابط الأساسية للأمن السيبراني ECC الصادرة عن الهيئة الوطنية للأمن السيبراني NCA في المملكة العربية السعودية كلمات مرور بطول لا يقل عن اثني عشر رمزًا، مع مزج الأحرف الكبيرة والصغيرة والأرقام والرموز الخاصة، لكل من حسابات المسؤولين على بوابات Nafath وأبشر وتوكلنا وحسابات الـ root في خوادم STC Cloud. كذلك تَفرض جامعات KFUPM وKAUST و AUC و AUB سياسات قوية على بوابات الطلاب، وتطلب مراكز SOC في بنوك دبي الإسلامي والراجحي تجديد كلمات السر دوريًا. تُولِّد هذه الأداة الكلمات عبر crypto.getRandomValues داخل المتصفح بالكامل، فلا تخرج كلمة المرور من جهازك لحظة واحدة.

    ما الذي يجعل مولِّد كلمات المرور هذا مختلفًا؟

    هذا مولِّد كلمات مرور يحترم الخصوصية ويعمل داخل المتصفح فقط. كل بايت عشوائي يأتي من مولِّد الأرقام العشوائية التشفيري الخاص بنظام تشغيلك عبر crypto.getRandomValues — وليس أبداً من Math.random. لا تُجري الصفحة أي طلب شبكة لتوليد كلمة المرور، والقيمة المولَّدة لا تغادر علامة التبويب أبداً. افتح لوحة الشبكة في أدوات المطوِّر وانقر «توليد»: ستظل صامتة.

    كيف يعمل مولِّد كلمات المرور هذا؟

    تعمل الأداة بالكامل بلغة JavaScript داخل متصفحك. لا رحلة ذهاب وعودة إلى الخادم، ولا حُزَم تحليلات تحمل كلمة المرور، ولا طلب خطوط بعيد بعد تحميل الصفحة.

    1. البذرة من CSPRNG الخاص بنظام التشغيل. يُسحب كل عدد صحيح عشوائي من crypto.getRandomValues(new Uint32Array(n)) — المصدر التشفيري الآمن نفسه الذي يستخدمه المتصفح لمواد مفاتيح TLS وcrypto.randomUUID. ولا يُستدعى Math.random أبداً عن قصد؛ ويفرض ذلك بحث grep على مستوى المشروع.
    2. تجميع مجموعة الأحرف. يُسلسل وضع الأحرف العشوائية فئات الأحرف المُفعَّلة — كبيرة وصغيرة وأرقام ورموز — في أبجدية واحدة. ثم يحذف مفتاح «استبعاد الملتبسة» الرموز المتشابهة بصرياً (0 وO وo و1 وl وI و| والعلامة الخلفية)، فتصبح كلمة المرور غير ملتبسة عند قراءتها أو نسخها يدوياً.
    3. أخذ عيّنات غير منحازة. إن ربط عدد صحيح غير مُوقَّع من 32 بِتّاً بمؤشر في مجموعة أحرف بطريقة بدائية (باستخدام باقي القسمة) يُدخل انحيازاً صغيراً عندما لا يقسم حجم مجموعة الأحرف 2^32 بانتظام. تستخدم الأداة أخذ العيّنات بالرفض: تُلغى أي عيّنة تقع في ذيل باقي القسمة وتُسحب من جديد، فيصبح ظهور كل محرف في مجموعة الأحرف متساوي الاحتمال.
    4. التوليد بالجملة. في وضع الأحرف العشوائية يمكنك طلب من 1 إلى 50 كلمة مرور بنقرة واحدة. تُعرض كل نتيجة في صفّ مع تقدير الإنتروبيا الخاص بها وفئة القوة وزر النسخ. أما زر «نسخ الكل» فيدمج الصفوف بأسطر جديدة لتتمكَّن من لصقها في ملف CSV أو ملف استيراد لخزينة كلمات المرور.
    5. وضع عبارة المرور. اقلب مفتاح الوضع فتُحضِر الصفحة كسولاً عند أوّل استخدام قائمة EFF القصيرة #1 (1296 كلمة إنجليزية في الملك العام). تمنح عبارات المرور المكوَّنة من خمس كلمات نحو 51.7 بِتّاً من الإنتروبيا — وهو ما يكفي للحسابات اليومية، وهو أسهل للحفظ بكثير من سلسلة عشوائية من 9 محارف. وبعد ذلك الطلب الوحيد من نفس الأصل تعود الصفحة إلى صمتها.

    لماذا نستخدم مولِّد كلمات المرور هذا؟

    • كلمة المرور لا تغادر متصفحك أبداً. لا توجد نقطة نهاية على خادم، ولا استدعاء تحليلات يحمل القيمة، ولا خط بعيد، ولا قياسات عن بُعد. افتح أدوات المطوِّر، ولِّد كلمة مرور، وراقب لوحة الشبكة وهي تظل فارغة.
    • عشوائية آمنة تشفيرياً بحكم البناء. كل عدد صحيح يأتي من crypto.getRandomValues مع أخذ عيّنات بالرفض ضد انحياز باقي القسمة. والخلل الأكثر شيوعاً في مولِّدات كلمات المرور داخل المتصفح — استخدام Math.random للإنتروبيا — مستحيل هيكلياً هنا.
    • وضعان وأداة واحدة. ينتج وضع الأحرف العشوائية سلاسل عالية الإنتروبيا لمديري كلمات المرور؛ وينتج وضع عبارة المرور سلاسل بأسلوب xkcd يمكن للبشر حفظها (correct-horse-battery-staple) مدعومةً بقائمة EFF القصيرة #1. ونفس نموذج الخصوصية في الوضعين.
    • إنتروبيا شفّافة. يُظهر كل صف مولَّد إنتروبياه بالبِتّات وعلامة قوة واضحة، فتلمح بنظرة سريعة ما إذا كانت سلسلة من 12 محرفاً دون رموز قوية فعلاً بقدر عبارة مرور من خمس كلمات. بلا تسويق، فقط الأرقام.

    ما هي التطبيقات الشائعة لكلمات المرور المولَّدة؟

    كلما احتجت إلى سرّ عشوائي طازج، فهذه الأداة هي التي تُقلِّل سطح الثقة:

    • استيراد إلى مديري كلمات المرور. ولِّد 50 كلمة مرور قوية دفعة واحدة، انقر «نسخ الكل»، الصقها في ملف استيراد CSV لخزينتك. لم تمرّ القيم في أي خادم، فلا توجد نافذة تسريب بين التوليد والتخزين.
    • عبارات المرور الرئيسية. انتقل إلى وضع عبارة المرور، اختر 6 أو 7 كلمات، وفعِّل اختيارياً تكبير أول حرف من كل كلمة، فتحصل على سلسلة عالية الإنتروبيا يمكنك حفظها فعلاً دون كتابتها. نحو 62 بِتّاً من الإنتروبيا من 6 كلمات — وهو ما يفوق عتبة الهجوم دون اتصال بكثير.
    • مفاتيح API ورموز في المشاريع الجانبية. هل تحتاج إلى سرّ مشترك لمرّة واحدة لمفتاح توقيع webhook أو كلمة مرور قاعدة بيانات للتطوير؟ ولِّد هنا سلسلة من 32 محرفاً غنية بالرموز، انسخها مرّة، والمكان الوحيد الذي وُجدت فيه أثناء النقل هو علامة تبويب متصفحك.

    كيف يبدو مثال على كلمة مرور مولَّدة؟

    اضبط الطول على 16، واترك الفئات الأربع للأحرف مُفعَّلة، وانقر «توليد». تتضمن مجموعة الأحرف 26 + 26 + 10 + 32 = 94 محرفاً، فيحمل كل محرف مولَّد log2(94) ≈ 6.55 بِتّ من الإنتروبيا. ستة عشر محرفاً تبلغ نحو 104.9 بِتّ — أعلى بكثير من عتبة «قوية جداً» البالغة 80 بِتّاً، ويستحيل عملياً كسرها بالقوة الغاشمة على العتاد الحالي. الآن انتقل إلى وضع عبارة المرور واختر 5 كلمات بالفاصل الافتراضي وهو الشَرطة: cocktail-sprig-aspect-magenta-tonic تحمل log2(1296) × 5 ≈ 51.7 بِتّ. قابلة للحفظ والطباعة وأقوى من كلمة المرور المعتادة التي يختارها الإنسان.

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