PBKDF2 प्लेग्राउंड
अपने सॉल्ट, इटरेशन और की-लंबाई के साथ PBKDF2-HMAC-SHA-1/256/512 से कुंजी निकालें। हेक्स, Base64 और passlib आउटपुट, RFC 6070 वेक्टर सत्यापित।
PBKDF2 (RFC 8018) की गणना ब्राउज़र के Web Crypto API से होती है। OWASP HMAC-SHA-256 के लिए 6,00,000 और HMAC-SHA-512 के लिए 2,10,000 इटरेशन की सलाह देता है। PBKDF2 मेमोरी-हार्ड नहीं है, इसलिए नए सिस्टम के लिए Argon2id चुनें।
हैश से पासवर्ड वेरिफ़ाई करें
पूरी तरह आपके ब्राउज़र में चलता है। आपका डेटा कभी अपलोड नहीं होता।
PBKDF2 प्लेग्राउंड क्या है?
HMAC-SHA-1, SHA-256 या SHA-512, किसी भी इटरेशन संख्या, सॉल्ट और आउटपुट लंबाई के साथ PBKDF2 (RFC 8018) निकालें। नतीजे हेक्स, Base64 और passlib $pbkdf2-sha256$ प्रारूप में दिखते हैं, और वेरिफ़ायर Django pbkdf2_sha256$ हैश भी स्वीकार करता है।
PBKDF2 प्लेग्राउंड का उपयोग कैसे करें
- पासवर्ड दर्ज करें।
- हैश फ़ंक्शन (PRF), इटरेशन और की लंबाई (बाइट) चुनें।
- सॉल्ट और उसकी एन्कोडिंग दें, या रैंडम सॉल्ट के लिए ख़ाली छोड़ें।
- हैश क्लिक करें और हेक्स, Base64 या एन्कोडेड नतीजा कॉपी करें।
उदाहरण
Password password, salt salt, HMAC-SHA-1, 4096 iterations, 20 bytes
4b007901b765489abead49d926f721d065a429c1 $pbkdf2-sha1$4096$c2FsdA$SwB5AbdlSJq.rUnZJvch0GWkKcE
हेक्स मान RFC 6070 का टेस्ट वेक्टर 3 है।
PBKDF2 प्लेग्राउंड का उपयोग कब करें
टेस्टिंग के लिए कुंजियाँ निकालने, RFC 6070 वेक्टर दोहराने या Django और passlib हैश वेरिफ़ाई करने के लिए इसका उपयोग करें। नए पासवर्ड स्टोरेज के लिए Argon2id या scrypt चुनें, जो मेमोरी-हार्ड हैं।
PBKDF2 प्लेग्राउंड कैसे काम करता है
PBKDF2 ब्लॉक T_i = U_1 ⊕ U_2 ⊕ … ⊕ U_c निकालता है, जहाँ U_1 = HMAC(password, salt ‖ INT(i)) और U_j = HMAC(password, U_{j−1}), और उन्हें माँगी गई लंबाई तक जोड़ता है। गणना ब्राउज़र की Web Crypto API (deriveBits) करती है। passlib प्रारूप इटरेशन, सॉल्ट और हैश को अनुकूलित Base64 (+ की जगह .) में रखता है।
सामान्य उपयोग मामले
- माइग्रेशन के दौरान Django pbkdf2_sha256 हैश वेरिफ़ाई करना
- RFC 6070 टेस्ट वेक्टर दोहराना
- टेस्टिंग के लिए पासफ़्रेज़ से AES कुंजियाँ निकालना
- इटरेशन संख्याओं और समय की तुलना करना
अक्सर पूछे जाने वाले प्रश्न
मुझे कितने इटरेशन इस्तेमाल करने चाहिए?
OWASP HMAC-SHA-256 के लिए 600,000, HMAC-SHA-512 के लिए 210,000 और HMAC-SHA-1 के लिए 1,300,000 सुझाता है।
क्या PBKDF2 अब भी स्वीकार्य है?
हाँ, ख़ासकर जहाँ FIPS वैलिडेशन चाहिए, पर यह मेमोरी-हार्ड नहीं है, इसलिए GPU इसे Argon2id या scrypt से तेज़ क्रैक करते हैं।
की की लंबाई क्यों मायने रखती है?
हैश आउटपुट से ज़्यादा बाइट माँगने (जैसे SHA-256 के लिए 32 से ज़्यादा) पर PBKDF2 अतिरिक्त ब्लॉक निकालता है, जो बचावकर्ता की लागत बढ़ाता है पर हमलावरों को धीमा नहीं करता।