Diceware Passphrase Generator — عبارات مرور كلمات عشوائية
قم بإنشاء عبارات مرور قوية لا تُنسى ومبنية من كلمات حقيقية عشوائية باستخدام طريقة Diceware - عشوائية تشفير حقيقية، مع عرض الإنتروبيا الفعلية بالبتات بأمانة.
النتيجة
تولد هذه الأداة عبارات مرور بطريقة Diceware: فبدلاً من سلسلة كثيفة من الأحرف العشوائية التي يصعب كتابتها ويصعب تذكرها، فإنها تجمع معًا عدة كلمات عادية منتقاة بشكل مستقل عشوائيًا. عبارة مرور مثل "forest-comet-lantern-guitar-oasis-thistle" تحمل إنتروبيا حقيقية وقابلة للحساب بينما لا تزال شيئًا يمكن للإنسان قراءته بصوت عالٍ، أو الكتابة على لوحة مفاتيح الهاتف، أو حفظه بعد بضع محاولات - وهو بالضبط الجيل الذي تم تصميمه على طراز Diceware للمقايضة.
العشوائية هي بيت القصيد، لذلك يتم أخذها على محمل الجد هنا: يتم اختيار كل كلمة باستخدام مولد الأرقام العشوائية crypto.getRandomValues() الخاص بالمتصفح، مع أخذ عينات الرفض المناسبة في كل سحب. يتم قبول القيمة العشوائية الأولية المكونة من 32 بت فقط إذا كانت تقع في نطاق قابل للقسمة بالتساوي على طول قائمة الكلمات؛ القيم المتبقية، يتم التخلص من الباقي غير المستوي وإعادة دحرجته. إن تخطي هذه الخطوة والقيام فقط بقيمة % wordlistLength من شأنه أن يفضل بشكل طفيف الكلمات ذات الفهرسة المنخفضة على الكلمات ذات الفهرسة العالية - وهو تحيز إحصائي دقيق قد يقدمه التنفيذ الساذج بصمت. هذا المولد لا يأخذ هذا الاختصار أبدًا.
الصدق بشأن الإنتروبيا هو النصف الآخر من التصميم. تحتوي قائمة الكلمات المجمعة على 1821 كلمة إنجليزية يومية فريدة لا لبس فيها - وهي قائمة تمثيلية كبيرة، ولكنها ليست قائمة محددة مكونة من 7776 كلمة يستخدمها مشروع Diceware الكلاسيكي، لذلك لا تطالب هذه الأداة أبدًا بالرقم الشهير 12.9 بت لكل كلمة الذي ينطبق فقط على تلك القائمة بالضبط. بدلاً من ذلك، يتم حساب الإنتروبيا لكل كلمة مباشرة كـ log2 (طول القائمة)، والذي يصل إلى حوالي 10.8 بت لكل كلمة هنا، وتظهر النتيجة التي تظهر على الشاشة دائمًا الصيغة الكاملة - عدد الكلمات مضروبًا في البتات لكل كلمة، بالإضافة إلى المساهمة الصادقة لأي إضافات - حتى تتمكن من رؤية بالضبط كيف تم الوصول إلى الإجمالي بدلاً من الثقة في رقم تسويقي.
يتم التعامل مع التبديلات الاختيارية بنفس الصدق. إن كتابة كل كلمة بالأحرف الكبيرة هي قاعدة ثابتة وحتمية يتم تطبيقها بنفس الطريقة في كل مرة، لذا فهي لا تضيف أي إنتروبيا حقيقية على الإطلاق - فالمهاجم الذي يعرف القاعدة لا يكسب شيئًا من عدم معرفة الحروف التي يتم كتابتها بالأحرف الكبيرة، والأداة تقول ذلك بوضوح. على النقيض من ذلك، فإن إلحاق رقم عشوائي مكون من رقمين هو سحب عشوائي إضافي حقيقي عبر 100 قيمة متساوية الاحتمال، مما يضيف 6.6 بتات حقيقية ومعلنة أعلى الكلمات. يتم حساب كل شيء وعرضه محليًا في متصفحك دون الحاجة إلى خادم، لذلك لن يتمكن أي شخص غيرك من رؤية عبارة المرور التي تنشئها.