ملعب scrypt
احسب scrypt بقيم N وr وp والملح وطول المفتاح المخصصة، واعرف الذاكرة اللازمة، واحصل على hex خام أو سلسلة $scrypt$. متجهات RFC 7914 متحقق منها.
الذاكرة المطلوبة: 128 × N × r = 128 MiB
scrypt (RFC 7914) مقاومة على مستوى الذاكرة. الحد الأدنى وفق OWASP: N=2^17, r=8, p=1 (128 MiB). تُحسب باستخدام hash-wasm في متصفحك؛ قيم N الكبيرة تحتاج إلى ذاكرة كبيرة.
التحقق من كلمة مرور مقابل تجزئة
يعمل بالكامل في متصفحك. لا يتم رفع بياناتك أبدًا.
ما هو ملعب scrypt؟
شغّل دالة اشتقاق المفاتيح scrypt المعتمدة على الذاكرة بكثافة (RFC 7914) بمعاملات التكلفة والملح الخاصة بك. وتعرض الأداة الذاكرة التي تتطلبها الإعدادات والمفتاح المشتق الخام وسلسلة $scrypt$ مرمّزة يمكنك التحقق منها لاحقًا.
كيفية استخدام ملعب scrypt
- أدخل كلمة المرور.
- اختر تكلفة المعالج/الذاكرة (N) كقوة للعدد اثنين وحجم الكتلة (r) والتوازي (p) وطول المفتاح.
- أدخل الملح وترميزه، أو اتركه فارغًا لملح عشوائي.
- انقر التجزئة وانسخ النتيجة؛ وتحقق منها في اللوحة أدناه.
مثال
Password password, salt NaCl, N=1024, r=8, p=16, 64 bytes
fdbabe1c9d3472007856e7190d01e9fe7c6ad7cbc8237830e77376634b3731622eaf30d92e22a3886ff109279d9830dac727afb94a83ee6d8360cbdfa2cc0640
RFC 7914 القسم 12، متجه الاختبار 2.
متى تستخدم ملعب scrypt
استخدمه لضبط معاملات scrypt أو فحص متجهات RFC 7914 أو تصحيح تجزئات من crypto.scrypt في Node.js أو hashlib.scrypt في Python أو passlib. وتحتاج قيم N الكبيرة مئات الميجابايتات وقد تفشل على الأجهزة المحمولة.
كيف يعمل ملعب scrypt
يشغّل scrypt الدالة PBKDF2-HMAC-SHA-256 مرة لتوسيع المدخل، ثم تملأ دالة ROMix ذاكرة بحجم 128 × N × r بايتًا بمخرجات BlockMix المبنية على Salsa20/8 وتقرؤها بترتيب يعتمد على البيانات، p مرة، قبل خطوة PBKDF2 نهائية. والصيغة المرمّزة $scrypt$ln=<log2 N>,r=<r>,p=<p>$<salt>$<hash> بـ Base64. ويستخدم الحساب hash-wasm (WebAssembly).
حالات الاستخدام الشائعة
- اختيار N بحيث تستغرق التجزئة نحو 100 مللي ثانية
- إعادة إنتاج متجهات اختبار RFC 7914
- تصحيح تجزئات أُنشئت بـ crypto.scrypt في Node
- إظهار كيف تنمو تكلفة الذاكرة مع N وr
الأسئلة الشائعة
ما المعاملات التي توصي بها OWASP؟
N=2^17 وr=8 وp=1 على الأقل، وهي تستخدم 128 MiB، أو مقايضات مثل N=2^16 وr=8 وp=2.
كم ذاكرة يستخدم scrypt؟
128 × N × r بايتًا، تُعرض تحت المعاملات. فـ N=2^17 وr=8 تحتاجان 128 MiB.
هل scrypt أفضل من bcrypt؟
إنه يعتمد الذاكرة بكثافة، مما يجعل هجمات GPU وASIC أغلى. وArgon2id هو الخيار الأول حاليًا، وscrypt الخيار الثاني الجيد.