Bcrypt പാസ്വേഡ് ജനറേറ്റർ
നിങ്ങളുടെ ബ്രൗസറിൽ തൽക്ഷണം സുരക്ഷിതമായ bcrypt പാസ്വേഡ് ഹാഷുകൾ സൃഷ്ടിക്കുക. നിങ്ങളുടെ ചെലവ് ഘടകവും ഹാഷ് പാസ്വേഡുകളും ക്ലയൻ്റ് സൈഡ് തിരഞ്ഞെടുക്കുക - പൂർണ്ണമായും സ്വകാര്യവും സൗജന്യവും.
നിങ്ങളുടെ ബ്രൗസറിൽ തൽക്ഷണം സുരക്ഷിതമായ bcrypt പാസ്വേഡ് ഹാഷുകൾ സൃഷ്ടിക്കുക. നിങ്ങളുടെ ചെലവ് ഘടകവും ഹാഷ് പാസ്വേഡുകളും ക്ലയൻ്റ് സൈഡ് തിരഞ്ഞെടുക്കുക - പൂർണ്ണമായും സ്വകാര്യവും സൗജന്യവും.
1999-ൽ നീൽസ് പ്രോവോസും ഡേവിഡ് മസിയേഴ്സും ചേർന്ന് ബ്ലോഫിഷ് സൈഫറിൽ നിന്ന് ഉരുത്തിരിഞ്ഞ ഒരു പാസ്വേഡ്-ഹാഷിംഗ് ഫംഗ്ഷനാണ് bcrypt. SHA-256 പോലുള്ള പൊതു-ഉദ്ദേശ്യ ഹാഷ് ഫംഗ്ഷനുകളിൽ നിന്ന് വ്യത്യസ്തമായി, bcrypt മനഃപൂർവ്വം മന്ദഗതിയിലാണ് - ഒരു കോസ്റ്റ് പാരാമീറ്റർ വഴി കോൺഫിഗർ ചെയ്യാവുന്ന മന്ദഗതിയിലാണ് - ഇത് ഒരു പാസ്വേഡ് ഹാഷറിന് ആവശ്യമായ പ്രോപ്പർട്ടി തന്നെയാണ്. വേഗതയേറിയ ഹാഷ് ഫംഗ്ഷൻ ആക്രമണകാരികളെ ഒരു സെക്കൻഡിൽ കൂടുതൽ സ്ഥാനാർത്ഥികളെ ക്രൂരമായി പ്രേരിപ്പിക്കുന്നു; മന്ദഗതിയിലുള്ള ഒന്ന് അവരെ പരിമിതപ്പെടുത്തുന്നു.
bcrypt ഓരോ പാസ്വേഡും സ്വയമേവ സംയോജിപ്പിക്കുന്നു, പ്രീകംപ്യൂട്ടഡ് റെയിൻബോ ടേബിളുകളെ അടിസ്ഥാനമാക്കിയുള്ള മുഴുവൻ ആക്രമണങ്ങളും ഇല്ലാതാക്കുന്നു. bcrypt ഔട്ട്പുട്ടിൻ്റെ ഭാഗമായാണ് ഉപ്പും വിലയും സംഭരിച്ചിരിക്കുന്നത്, അതിനാൽ സ്ഥിരീകരണത്തിന് സംഭരിച്ച ഹാഷും കാൻഡിഡേറ്റ് പാസ്വേഡും മാത്രമേ ആവശ്യമുള്ളൂ - പ്രത്യേക ഉപ്പ് മാനേജ്മെൻ്റ് ഇല്ല. മന്ദത, ഉപ്പ്, സ്വയം ഉൾക്കൊള്ളുന്ന ഫോർമാറ്റ് എന്നിവയുടെ ഈ സംയോജനം രണ്ട് പതിറ്റാണ്ടുകളായി സ്ഥിരസ്ഥിതി പാസ്വേഡ് ഹാഷിനെ bcrypt ആക്കി, ഇന്നത്തെ ശക്തമായ തിരഞ്ഞെടുപ്പാണ്.
ആധുനിക ബദലുകൾ നിലവിലുണ്ട്. Argon2 2015 പാസ്വേഡ് ഹാഷിംഗ് മത്സരത്തിൽ വിജയിക്കുകയും സമയ കാഠിന്യം കൂടാതെ മെമ്മറി കാഠിന്യം വാഗ്ദാനം ചെയ്യുകയും ചെയ്യുന്നു. scrypt സമാന പ്രോപ്പർട്ടികൾ വാഗ്ദാനം ചെയ്യുന്നു. പുതിയ ഡിസൈനുകൾക്ക്, Argon2id ആണ് ശുപാർശ ചെയ്യുന്നത്. bcrypt സ്വീകാര്യവും വ്യാപകമായി വിന്യസിക്കപ്പെട്ടതുമായി തുടരുന്നു, പ്രത്യേകിച്ച് Argon2 ലഭ്യമല്ലാത്ത പരിതസ്ഥിതികളിൽ.
പാസ്വേഡുകൾ പ്ലെയിൻടെക്സ്റ്റായി സൂക്ഷിക്കുന്നത് തെറ്റായ പ്രവർത്തനമാണ്. SHA-256 പോലെയുള്ള ഒരു ഫാസ്റ്റ് ഹാഷ് ഉപയോഗിച്ച് അവ സംഭരിക്കുന്നത് നന്നല്ല - ആധുനിക GPU-കൾ സെക്കൻ്റിൽ കോടിക്കണക്കിന് SHA-256 ഹാഷുകൾ കണക്കാക്കുന്നു, ഇത് ഏത് സാധാരണ പാസ്വേഡിനെതിരെയും മണിക്കൂറുകൾക്കുള്ളിൽ ക്രൂരമായ ആക്രമണം സാധ്യമാക്കുന്നു. bcrypt-ൻ്റെ ബോധപൂർവമായ മന്ദത സാമ്പത്തിക ശാസ്ത്രത്തെ മാറ്റിമറിക്കുന്നു: ചിലവ് ഘടകം 12-ൽ, ഒരു കാൻഡിഡേറ്റ് പാസ്വേഡിന് ഏകദേശം 250 എംഎസ് ആക്രമണകാരി ചെലവഴിക്കുന്നു, ഇത് നിസ്സാരമല്ലാത്ത ഏതൊരു പാസ്വേഡിനും ബ്രൂട്ട് ഫോഴ്സ് അപ്രായോഗികമാക്കുന്നു.
bcrypt-ൻ്റെ ഓട്ടോമാറ്റിക് പെർ-പാസ്വേഡ് ഉപ്പും റെയിൻബോ ടേബിൾ ആക്രമണങ്ങളെ പരാജയപ്പെടുത്തുന്നു. ഒരേ പാസ്വേഡുള്ള രണ്ട് ഉപയോക്താക്കൾ വ്യത്യസ്ത ബിക്രിപ്റ്റ് ഹാഷുകൾ നിർമ്മിക്കുന്നു, കാരണം അവരുടെ ലവണങ്ങൾ വ്യത്യസ്തമാണ്. പാസ്വേഡ് ഡാറ്റാബേസിൽ വിട്ടുവീഴ്ച ചെയ്യുന്നത് സാധാരണ പാസ്വേഡുകളോ പ്രീകംപ്യൂട്ടഡ് ടേബിൾ ഹിറ്റുകളോ പെട്ടെന്ന് തിരിച്ചറിയാൻ ആക്രമണകാരിയെ അനുവദിക്കുന്നില്ല.
ഒരു പാസ്വേഡ് ടൈപ്പ് ചെയ്യുക, ചെലവ് തിരഞ്ഞെടുക്കുക, ഹാഷ് നേടുക.
bcrypt ഒരു പരിഷ്കരിച്ച Blowfish സൈഫറിൻ്റെ കീ-സെറ്റപ്പ് ഘട്ടം ഉപയോഗിക്കുന്നു, 2^കോസ്റ്റ് തവണ ആവർത്തിക്കുന്നു. ചെലവ് ഘടകം ലോഗരിഥമിക് ആണ് - ചെലവ് 11-ൻ്റെ ഇരട്ടി മന്ദഗതിയിലാണ്, ചെലവ് 10-ൻ്റെ നാലിരട്ടി മന്ദഗതിയിലാണ്. ഈ ലോഗരിഥമിക് സ്കെയിലിംഗ്, സിസ്റ്റം പുനർരൂപകൽപ്പന ചെയ്യാതെ, ഹാർഡ്വെയർ മെച്ചപ്പെടുമ്പോൾ കാലക്രമേണ ചെലവ് വർദ്ധിപ്പിക്കാൻ അഡ്മിനിസ്ട്രേറ്റർമാരെ അനുവദിക്കുന്നു.
ഔട്ട്പുട്ട് ഫോർമാറ്റ് $version$cost$saltAndHash ആണ്, ഇവിടെ saltAndHash ഒരു ഇഷ്ടാനുസൃത അക്ഷരമാല ഉപയോഗിച്ച് ബേസ്64-എൻകോഡ് ചെയ്തിരിക്കുന്നു. പതിപ്പ് സാധാരണയായി $2b$ (റാപ്പറൗണ്ട് ബഗ് പരിഹരിച്ച ആധുനിക വേരിയൻ്റ്) അല്ലെങ്കിൽ $2y$ (PHP-നിർദ്ദിഷ്ട, തത്തുല്യം) ആണ്. ഉപ്പ് 16 ബൈറ്റുകൾ ആണ്; ഹാഷ് 24 ബൈറ്റുകൾ ആണ്; കസ്റ്റം-ബേസ്64-ൻ്റെ 53 പ്രതീകങ്ങളിലേക്ക് അവ ഒരുമിച്ച് എൻകോഡ് ചെയ്യുന്നു.
പരമാവധി ഇൻപുട്ട് ദൈർഘ്യം 72 ബൈറ്റുകൾ ആണ് (ബ്ലോഫിഷ് കീ ദൈർഘ്യ പരിധി). ദൈർഘ്യമേറിയ പാസ്വേഡുകൾ നിശ്ശബ്ദമായി വെട്ടിച്ചുരുക്കപ്പെടുന്നു, ഇത് ദീർഘകാലമായി നിലനിൽക്കുന്ന ഒരു bcrypt വിചിത്രമാണ്. ഒന്നുകിൽ പാസ്വേഡ് ദൈർഘ്യം 72 ബൈറ്റുകളായി പരിമിതപ്പെടുത്തുക അല്ലെങ്കിൽ bcrypt-ന് മുമ്പായി ദൈർഘ്യം സാധാരണമാക്കുന്നതിന് SHA-256 ഉപയോഗിച്ച് പ്രീ-ഹാഷ് ചെയ്യുക എന്നതാണ് മികച്ച രീതി.