Argon2 पासवर्ड हैश फॉर्मेट एक्सप्लोरर
Argon2 के PHC स्ट्रिंग फॉर्मेट, पैरामीटर के अर्थ (समय लागत, मेमोरी लागत, समानांतरता) और Argon2 की bcrypt, scrypt तथा PBKDF2 से तुलना को समझें। सिमुलेटेड हैश आउटपुट के साथ शैक्षिक टूल।
अपडेट किया गया
Argon2 Password Hash Format Explorer
Understand the Argon2 PHC string format, parameter meanings, and how Argon2 compares to bcrypt, scrypt, and PBKDF2. Educational tool with simulated hash output.
Why Argon2id is Recommended
Argon2id won the Password Hashing Competition (PHC) in 2015 and is the current OWASP recommendation. Unlike bcrypt (limited to 72 bytes, 1999-era design) and PBKDF2 (not memory-hard), Argon2id is memory-hard, time-adjustable, and parallelism-configurable — making it exponentially more expensive for attackers using GPUs or ASICs.
Hash Parameters
Hybrid variant combining data-independent (argon2i) and data-dependent (argon2d) memory access patterns. Resistant to both side-channel and GPU attacks. Recommended by OWASP and RFC 9106.
Iterations
Memory KiB
Threads
t (time cost): Number of iterations. Higher = slower for attacker AND user.
m (memory cost): Memory in KiB. 64 MB required per hash attempt. Stops GPU parallelism.
p (parallelism): Number of parallel lanes. Should match server CPU threads.
★ = OWASP recommended minimum for user authentication
Configure parameters and click Generate to see the Argon2 PHC string format.
Algorithm Comparison: Argon2 vs bcrypt vs scrypt vs PBKDF2
| Algorithm | Memory-Hard | GPU-Resistant | Side-Channel Safe | Year | Use Today? |
|---|---|---|---|---|---|
| Argon2id★ Best | ✅ | ✅ | ✅ | 2015 | Yes |
| bcrypt | ❌ | ❌ | ✅ | 1999 | Legacy |
| scrypt | ✅ | ✅ | ⚠️ | 2009 | Legacy |
| PBKDF2 | ❌ | ❌ | ✅ | 2000 | Legacy |
| MD5 (never) | ❌ | ❌ | ⚠️ | 1992 | Never |
Real Implementation Note
This tool demonstrates the PHC string format for educational purposes. The hashes shown are deterministic simulations — not cryptographically secure outputs.
For production use: server-side — use the argon2 npm package (Node.js) or language-native bindings. Client-side — use argon2-browser which wraps the reference C implementation via WebAssembly.
अक्सर पूछे जाने वाले प्रश्न
क्या ये हैश क्रिप्टोग्राफ़िक रूप से सुरक्षित हैं?
नहीं। दिखाए गए हैश शैक्षिक उद्देश्यों के लिए नियतात्मक सिमुलेशन हैं। वास्तविक पासवर्ड हैशिंग के लिए सर्वर-साइड पर argon2 npm पैकेज या क्लाइंट-साइड पर argon2-browser (WebAssembly) का उपयोग करें।
bcrypt के मुकाबले Argon2id की सिफ़ारिश क्यों की जाती है?
Argon2id मेमोरी-हार्ड, GPU-प्रतिरोधी और कॉन्फ़िगर करने योग्य है, जिससे ब्रूट-फ़ोर्स हमले कई गुना अधिक महंगे हो जाते हैं। bcrypt 72-बाइट पासवर्ड तक सीमित है और 1999 के युग के एक डिज़ाइन का उपयोग करता है जिसमें मेमोरी-हार्डनेस का अभाव है।
PHC स्ट्रिंग फ़ॉर्मेट क्या है?
PHC (Password Hashing Competition) स्ट्रिंग फ़ॉर्मेट सभी हैश पैरामीटर को एक ही पोर्टेबल स्ट्रिंग में एन्कोड करता है: $algorithm$version$parameters$salt$hash।
क्या यह मुफ़्त है?
हाँ, पूरी तरह मुफ़्त।
क्या इस टूल के साथ मेरा डेटा सुरक्षित है?
बिल्कुल। Argon2 पासवर्ड हैश फ़ॉर्मेट एक्सप्लोरर सब कुछ आपके ब्राउज़र में क्लाइंट-साइड प्रोसेस करता है। कोई भी डेटा किसी सर्वर पर अपलोड या संग्रहीत नहीं किया जाता। आपकी सामग्री हर समय आपके डिवाइस पर निजी रहती है।
क्या Argon2 पासवर्ड हैश फ़ॉर्मेट एक्सप्लोरर मोबाइल डिवाइस पर काम करता है?
हाँ, Argon2 पासवर्ड हैश फ़ॉर्मेट एक्सप्लोरर पूरी तरह रिस्पॉन्सिव है और स्मार्टफ़ोन व टैबलेट पर काम करता है। आप इसे आधुनिक वेब ब्राउज़र वाले किसी भी डिवाइस पर इस्तेमाल कर सकते हैं—किसी ऐप डाउनलोड की ज़रूरत नहीं।
क्या इस टूल का उपयोग करने के लिए मुझे खाता बनाना होगा?
किसी खाते या पंजीकरण की ज़रूरत नहीं है। बस अपने ब्राउज़र में Argon2 पासवर्ड हैश फ़ॉर्मेट एक्सप्लोरर खोलें और तुरंत इस्तेमाल शुरू करें। कोई साइन-अप बाधा या उपयोग प्रतिबंध नहीं है।
मैं Argon2 पासवर्ड हैश फ़ॉर्मेट एक्सप्लोरर का उपयोग कैसे करूँ?
बस दिए गए फ़ील्ड में अपना इनपुट दर्ज करें, अपनी पसंद के अनुसार कोई भी सेटिंग समायोजित करें, और टूल इसे तुरंत प्रोसेस कर देगा। फिर आप परिणाम को अपने क्लिपबोर्ड पर कॉपी कर सकते हैं या डाउनलोड कर सकते हैं।
कौन से ब्राउज़र समर्थित हैं?
Argon2 पासवर्ड हैश फ़ॉर्मेट एक्सप्लोरर Chrome, Firefox, Safari, Edge और Opera सहित सभी आधुनिक ब्राउज़रों में काम करता है। सर्वोत्तम अनुभव के लिए अपने पसंदीदा ब्राउज़र के नवीनतम संस्करण का उपयोग करें।
Argon2id, Argon2i, और Argon2d में क्या अंतर है?
तीनों Argon2 वैरिएंट में अंतर केवल मेमोरी एक्सेस के तरीके में होता है। Argon2d data-dependent एक्सेस का इस्तेमाल करता है, जो GPU और ASIC क्रैकिंग के खिलाफ सबसे मज़बूत प्रतिरोध देता है लेकिन टाइमिंग जानकारी लीक कर देता है, जिससे यह side-channel हमलों के खिलाफ असुरक्षित हो जाता है। Argon2i data-independent एक्सेस का इस्तेमाल करता है, जो side-channel टाइमिंग हमलों को हराता है लेकिन समर्पित क्रैकिंग हार्डवेयर के खिलाफ कमज़ोर प्रतिरोध देता है। Argon2id एक हाइब्रिड है: यह पहली पास Argon2i मोड में चलाता है और बाकी Argon2d मोड में, इसलिए इसे दोनों खतरों से एक साथ सार्थक सुरक्षा मिलती है। यही संतुलन वह कारण है कि OWASP और RFC 9106 Argon2id को पासवर्ड स्टोरेज के लिए डिफ़ॉल्ट के रूप में अनुशंसित करते हैं, और Argon2d को उन मामलों के लिए छोड़ देते हैं जहाँ side channels कोई चिंता नहीं है, जैसे cryptocurrency। एक्स्प्लोरर में तीनों के बीच स्विच करें और देखें कि PHC string में केवल algorithm लेबल कैसे बदलता है।
Argon2 hash में t, m, और p पैरामीटर का क्या मतलब है?
PHC string के अंदर आपको m=65536,t=3,p=4 जैसा एक सेगमेंट दिखेगा, और हर अक्षर एक ट्यूनिंग नॉब है। t वैल्यू time cost है, यानी Argon2 मेमोरी पर कितनी पास करता है; इसे बढ़ाने से हमलावर और उपयोगकर्ता दोनों के लिए हर अनुमान का समय रैखिक रूप से बढ़ता है। m वैल्यू kibibytes में memory cost है, इसलिए 65536 का मतलब है प्रति hash 64 MB RAM की ज़रूरत; यही Argon2 को memory-hard बनाता है और सस्ते पैरेलल क्रैकिंग रिग को बैंडविड्थ से महरूम कर देता है। p वैल्यू parallelism है, यानी स्वतंत्र लेन की संख्या, जिसे आदर्श रूप से आपके सर्वर के CPU threads से मिलाया जाना चाहिए। OWASP का interactive-login बेसलाइन t=3, m=64MB, p=4 है, जिसे टूल में एक स्टार से चिह्नित किया गया है। एक्स्प्लोरर में हर ड्रॉपडाउन को एडजस्ट करें और देखें कि PHC string का पैरामीटर सेगमेंट लाइव अपडेट होता है।
मैं अपने सर्वर के लिए अच्छे Argon2 cost पैरामीटर कैसे चुनूं?
Argon2 को ट्यून करने का मतलब है हमलावर के संसाधनों को जितना हो सके खर्च करना, बिना वास्तविक लॉगिन को धीमा किए। एक व्यावहारिक नियम है कि पहले memory cost को अपना हार्डवेयर जितना बर्दाश्त कर सके उतना ऊँचा सेट करें, क्योंकि memory hardness Argon2 का मुख्य बचाव है; interactive लॉगिन के लिए 64 MB अनुशंसित न्यूनतम है, और अच्छी तरह से सुसज्जित सर्वर पर 128 या 256 MB उपयुक्त है। Parallelism को लगभग आपके उपलब्ध CPU threads के अनुरूप सेट करें। फिर time cost को तब तक बढ़ाएँ जब तक एक single hash आपकी प्रोडक्शन मशीन पर लगभग आधा सेकंड न ले, जो brute-force को महंगा रखता है और प्रतिक्रियाशील भी बनाता है। चूँकि हर पैरामीटर PHC string में अंतर्निहित होता है, आप बाद में इन वैल्यू को बढ़ा सकते हैं और बिना किसी database migration के अगले लॉगिन पर पासवर्ड रीहैश कर सकते हैं। एक्स्प्लोरर का उपयोग करके विभिन्न पैरामीटर संयोजनों और उनके द्वारा उत्पन्न सटीक string को प्रतिबद्ध होने से पहले पूर्वावलोकन करें।
Argon2 PHC string में v=19 का क्या मतलब है?
v=19 सेगमेंट Argon2 algorithm का वर्शन है, कोई पैरामीटर नहीं जिसे आप ट्यून करें। यह Argon2 वर्शन 1.3 को संदर्भित करता है, जिसका हेक्साडेसिमल पहचानकर्ता 0x13 दशमलव में 19 के बराबर है। वर्शन 1.3 ने मूल 1.0 डिज़ाइन में मौजूद एक कमज़ोरी को ठीक किया, और तब से यह मानक रहा है, इसलिए लगभग हर आधुनिक लाइब्रेरी v=19 उत्सर्जित करती है। hash के अंदर वर्शन दर्ज करना इसलिए मायने रखता है क्योंकि इससे verifier को पता चलता है कि किस algorithm revision ने संग्रहीत पासवर्ड उत्पन्न किया, ताकि लाइब्रेरी अपडेट होने के बाद भी पुराने hash सही ढंग से जाँचे जा सकें। अगर आपको कभी बिना version field वाला hash मिले, तो यह इस परंपरा से पहले का है और संभवतः वर्शन 1.0 से बना है। एक्स्प्लोरर हमेशा अपने ब्रेकडाउन में v=19 आउटपुट करता है ताकि आप देख सकें कि वर्शन algorithm नाम और cost पैरामीटर के बीच कहाँ स्थित है।
Argon2 में salt क्यों होता है, और इसे कहाँ स्टोर किया जाता है?
salt एक अद्वितीय रैंडम वैल्यू है जिसे हर पासवर्ड में हैशिंग से पहले मिलाया जाता है, और यह PHC string के दूसरे से अंतिम base64 सेगमेंट के रूप में दिखाई देता है। इसका काम यह सुनिश्चित करना है कि एक ही पासवर्ड वाले दो उपयोगकर्ता पूरी तरह अलग hash उत्पन्न करें, जो पहले से गणना की गई rainbow tables को हराता है और हमलावर को कई अकाउंट एक साथ क्रैक करने से रोकता है। चूँकि salt को केवल अद्वितीय होना चाहिए, गुप्त नहीं, इसे एक अलग कॉलम में नहीं बल्कि hash string के अंदर ही सादे रूप में स्टोर किया जाता है। जब कोई लॉगिन करता है, verifier संग्रहीत string से salt वापस पढ़ता है, इसे और अंतर्निहित cost पैरामीटर के साथ Argon2 फिर से चलाता है, और परिणाम की तुलना करता है। यह स्व-निहित डिज़ाइन एक database field में लॉगिन सत्यापित करने के लिए आवश्यक सभी जानकारी रखता है। एक्स्प्लोरर में एक string जनरेट करें और salt को अपने रंग-कोडित हिस्से के रूप में हाइलाइट किया हुआ देखें।
Embed This Tool
Add a free, live version of this widget to your own website or blog post — it runs entirely in your visitors' browsers, with a credit link back to The Toolbox.
<iframe src="https://getthetoolbox.com/embed/argon2-gen" title="Argon2 Password Hash Format Explorer — The Toolbox" width="100%" height="280" style="max-width:480px;border:1px solid #e2e8f0;border-radius:12px" loading="lazy"></iframe>
<p style="font-size:12px;margin:4px 0 0"><a href="https://getthetoolbox.com/utility-tools/argon2-gen?utm_source=embed&utm_medium=widget" target="_blank" rel="noopener">Free Argon2 Password Hash Format Explorer</a> by The Toolbox</p>संबंधित टूल
मुफ़्त सुरक्षित पासवर्ड जनरेटर
अनुकूलन योग्य विकल्पों के साथ सुरक्षित, यादृच्छिक पासवर्ड बनाएं। मुफ़्त, तेज़ और पूरी तरह आपके ब्राउज़र में काम करता है, बिना साइन-अप के।
मुफ़्त UUID/GUID जनरेटर
सार्वभौमिक रूप से अद्वितीय पहचानकर्ता (UUID/GUID) बनाएं। मुफ़्त, तेज़ और पूरी तरह आपके ब्राउज़र में काम करता है, बिना साइन-अप के।
मुफ़्त QR कोड जनरेटर ऑनलाइन
URL, टेक्स्ट, WiFi क्रेडेंशियल और बहुत कुछ के लिए QR कोड बनाएं। मुफ़्त, तेज़ और पूरी तरह आपके ब्राउज़र में काम करता है, बिना साइन-अप के।
मुफ़्त JSON फ़ॉर्मेटर और वैलिडेटर
सिंटैक्स हाइलाइटिंग और त्रुटि पहचान के साथ JSON डेटा को फ़ॉर्मेट, सत्यापित और सुंदर बनाएं। मुफ़्त, तेज़ और पूरी तरह आपके ब्राउज़र में काम करता है, बिना साइन-अप के।
Argon2 Password Hash Format Explorer के बारे में
Argon2 Password Hash Format Explorer एक मुफ़्त, browser-based teaching tool है जो आपको सटीक रूप से दिखाता है कि एक Argon2 password hash कैसे structured होता है और इसके प्रत्येक पैरामीटर का क्या काम है। एक sample password टाइप करें, एक variant और cost setting चुनें, और explorer संगत PHC (Password Hashing Competition) string बनाता है और इसे अपने labeled हिस्सों में तोड़ता है। यह developer, security student, और authentication configure कर रहे किसी भी व्यक्ति के लिए बनाया गया है जो Argon2 को वास्तविक सिस्टम में लगाने से पहले इसे समझना चाहते हैं।
शुरुआत में एक बात स्पष्ट: यहाँ दिखाए गए hash bytes deterministic simulation हैं जो local रूप से generate होते हैं, क्रिप्टोग्राफिक रूप से सुरक्षित आउटपुट नहीं। Explorer का मुद्दा फॉर्मैट और पैरामीटर हैं, production hashing नहीं। सब कुछ client-side आपके browser में चलता है — आप जो password टाइप करते हैं वह कभी server पर नहीं भेजा जाता, और कोई sign-up नहीं है।
PHC string format क्या encode करता है
Argon2 एक single self-describing string PHC format का उपयोग करके आउटपुट करता है, इसलिए database को लॉगिन सत्यापित करने के लिए आवश्यक सभी जानकारी रखने के लिए केवल एक column चाहिए। संरचना है:
$argon2id$v=19$m=65536,t=3,p=4$<salt>$<hash>
Explorer हर segment को color-code करता है ताकि आप देख सकें कि वह क्या ले जाता है:
- Algorithm — variant, उदाहरण के लिए
argon2id। - Version —
v=19, जो Argon2 version 1.3 है (0x13 = 19)। - Parameters — memory (
m, KiB में), time (t), और parallelism (p)। - Salt — एक अद्वितीय रैंडम वैल्यू, base64-encoded, जो rainbow table को हराता है।
- Hash — derived key, भी base64-encoded।
चूँकि सभी पैरामीटर string के अंदर यात्रा करते हैं, verifier hash को फिर से derive कर सकता है और जब आप cost setting बढ़ाते हैं तो पुराने password rehash कर सकता है, बिना किसी schema migration के।
Variant चुनना और cost पैरामीटर ट्यून करना
Argon2 तीन variant में आता है, और explorer प्रत्येक के trade-off समझाता है:
- Argon2id — अन्य दोनों का हाइब्रिड, GPU और side-channel हमलों दोनों के प्रति प्रतिरोधी। यह यहाँ default है और OWASP और RFC 9106 द्वारा अनुशंसित variant।
- Argon2i — data-independent memory access, side-channel timing हमलों के विरुद्ध सबसे मज़बूत।
- Argon2d — अधिकतम GPU प्रतिरोध के लिए data-dependent access, लेकिन password storage के लिए आम तौर पर अनुशंसित नहीं।
तीन cost knob वह हैं जहाँ Argon2 की शक्ति configure की जाती है। Explorer interactive login के लिए OWASP के अनुशंसित starting point चिह्नित करता है (★ वैल्यू):
- Time cost (t) — iteration की संख्या। Default 3। उच्च वैल्यू हमलावर को प्रति अनुमान अधिक खर्च करती हैं, लेकिन वैध लॉगिन भी धीमा करती हैं।
- Memory cost (m) — प्रति hash RAM खपत, default 64 MB (65536 KiB)। यही Argon2 को memory-hard बनाता है: सस्ते, parallel GPU और ASIC cracking rig compute खत्म होने से बहुत पहले memory bandwidth से बाहर चले जाते हैं।
- Parallelism (p) — lane की संख्या, default 4, आदर्श रूप से आपके सर्वर के CPU threads से मेल खाता।
एक व्यावहारिक ट्यूनिंग नियम: सबसे ऊँची memory चुनें जो आप बर्दाश्त कर सकें, फिर time cost को तब तक बढ़ाएँ जब तक एक single hash आपके production hardware पर लगभग आधा सेकंड न ले।
Argon2 क्यों मायने रखता है और यह कैसे तुलना करता है
Argon2id ने 2015 में Password Hashing Competition जीता और अब नई application के लिए modern default है। Explorer की तुलना दिखाती है कि यह पुराने विकल्पों से बेहतर क्यों है: bcrypt (1999) memory-hard नहीं है और password को 72 byte पर चुपचाप truncate करता है; PBKDF2 (2000) GPU पर तेज़ है और हमलावर द्वारा आसानी से parallelized; scrypt (2009) memory-hard है लेकिन Argon2id की side-channel hardening कमी है। MD5 जैसे fast hash password के लिए कभी इस्तेमाल नहीं करने चाहिए।
इस explorer का उपयोग फॉर्मैट सीखने, टीम को demo करने, या deployment से पहले config को sanity-check करने के लिए करें। जब आप वास्तविक चीज़ के लिए तैयार हों, तो server-side argon2 npm package, language-native binding, या browser में argon2-browser (reference C implementation का WebAssembly wrapper) का उपयोग करें — वे genuine, verifiable hash उत्पन्न करते हैं।