Zdarma převodník

Bcrypt heslo Generátor

Okamžitě vygenerujte bezpečné hash hesel bcrypt ve svém prohlížeči. Vyberte si nákladový faktor a hash hesla na straně klienta – zcela soukromé a zdarma.

O tomto nástroji

bcrypt je funkce pro hašování hesel navržená Nielsem Provosem a Davidem Mazièresem v roce 1999, odvozená ze šifry Blowfish. Na rozdíl od univerzálních hashovacích funkcí, jako je SHA-256, je bcrypt záměrně pomalý – a konfigurovatelně pomalý, prostřednictvím parametru cost – což je přesně vlastnost, kterou hash hesel potřebuje. Rychlejší hašovací funkce umožňuje útočníkům brutálně vynutit více kandidátů za sekundu; pomalejší je omezuje.

bcrypt také automaticky zahrnuje sůl na heslo, čímž eliminuje celou třídu útoků na základě předem vypočítaných duhových tabulek. Parametr salt a cost jsou uloženy jako součást výstupu bcrypt, takže ověření vyžaduje pouze uložený hash a kandidátské heslo – žádná samostatná správa salt. Tato kombinace pomalosti, soli a samostatného formátu udělala z bcrypt výchozí hash hesla po dvě desetiletí a dnes je to silná volba.

Moderní alternativy existují. Argon2 vyhrál v roce 2015 soutěž Password Hashing Competition a nabízí kromě časové tvrdosti také tvrdost paměti. scrypt nabízí podobné vlastnosti. Pro nové designy je doporučená volba Argon2id. bcrypt zůstává přijatelný a široce nasazený, zejména v prostředích, kde není k dispozici Argon2.

Proč hash hesla pomocí bcrypt

Ukládání hesel jako prostého textu je nesprávné. Jejich ukládání pomocí rychlého hashe, jako je SHA-256, je sotva lepší – moderní GPU počítají miliardy hashů SHA-256 za sekundu, takže útoky hrubou silou proti jakémukoli běžnému heslu jsou proveditelné během několika hodin. Záměrná pomalost bcryptu posouvá ekonomiku: při nákladovém faktoru 12 stráví útočník zhruba 250 ms na kandidátské heslo, takže hrubá síla je nepraktická pro jakékoli netriviální heslo.

Automatická sůl na heslo od bcryptu také poráží útoky na rainbow table. Dva uživatelé se stejným heslem produkují různé bcrypt hash, protože jejich soli se liší. Narušení databáze hesel neumožňuje útočníkovi rychle identifikovat běžná hesla nebo předem vypočítané tabulky.

Jak používat

Zadejte heslo, vyberte cenu, získejte hash.

  1. Zadejte heslo: Zadejte heslo pro hash. Nástroj běží zcela ve vašem prohlížeči; heslo se nikam nepřenáší.
  2. Vyberte nákladový faktor: Výchozí hodnota je 10, což na moderním hardwaru vytváří přibližně 100 ms hashovací doby. 12 se doporučuje pro nové aplikace (250 ms). Vyšší hodnoty zvyšují bezpečnost za cenu pomalejšího ověřování.
  3. Generovat: Hasher vygeneruje náhodnou 16bajtovou sůl, spustí odvození klíče bcrypt a vytvoří hash ve standardním formátu $2b$.
  4. Použijte hash: Uložte si kompletní výstup ($2b$cost$saltAndHash) do své databáze hesel. Verifikace používá stejnou knihovnu k porovnání kandidáta s uloženým hashem.

Běžné případy použití

Technické detaily

bcrypt používá fázi nastavení klíče modifikované šifry Blowfish, která se opakuje 2xkrát. Faktor nákladů je logaritmický – cena 12 je dvakrát pomalejší než cena 11, čtyřikrát pomalejší než cena 10. Toto logaritmické škálování umožňuje správcům postupně zvyšovat náklady s tím, jak se zlepšuje hardware, bez předělání systému.

Výstupní formát je $version$cost$saltAndHash, kde saltAndHash je zakódován v base64 s vlastní abecedou. Verze je obvykle $2b$ (moderní varianta s opravenou chybou) nebo $2y$ (specifická pro PHP, ekvivalent). Sůl je 16 bajtů; hash je 24 bajtů; dohromady kódují do 53 znaků custom-base64.

Maximální vstupní délka je 72 bajtů (limit délky klíče Blowfish). Delší hesla jsou tiše zkrácena, což je dlouhotrvající bcrypt vtip. Nejlepším postupem je buď omezit délku hesla na 72 bajtů, nebo pre-hash pomocí SHA-256, aby se normalizovala délka před bcrypt.

Nejlepší postupy

Často kladené dotazy

Mohu přizpůsobit generovaný výstup?
Ano. Nástroj poskytuje různé možnosti přizpůsobení pro přizpůsobení výstupu vašim konkrétním potřebám. Před generováním upravte nastavení nebo obnovte pomocí různých možností.
Je vygenerovaný obsah zdarma k použití?
Ano. Vše, co pomocí tohoto nástroje vygenerujete, je vaše k použití pro osobní, vzdělávací nebo komerční účely bez jakýchkoli omezení nebo požadavků na uvedení zdroje.
Vyžaduje to účet?
Ne. Nástroj je připraven k okamžitému použití bez nutnosti registrace, e-mailu a registrace. Stačí otevřít stránku a začít generovat.
Jsou moje vstupní údaje uchovávány v soukromí?
Ano. Veškeré zpracování probíhá ve vašem prohlížeči. Vaše vstupní data a generovaný výstup se nikdy neodesílají na žádný externí server.
Mám přidat vlastní sůl?
Ne. bcrypt generuje a ukládá náhodnou sůl automaticky. Přidávání vlastní soli je zbytečné a může způsobit jemné chyby. Použijte výchozí generování soli knihovny.
Je heslo odesláno na server?
Ne. bcrypt hašování probíhá ve vašem prohlížeči. Heslo nikdy neopustí vaše zařízení.
Proč existují varianty $2a$, $2b$, $2y$?
$2a$ je originál. $2b$ opravuje chybu obtékání objevenou v roce 2014. $2y$ je specifické pro PHP a funkčně odpovídá $2b$. Nové systémy by měly produkovat hashe $2b$.
Mohu downgradovat vysoce nákladný hash na nižší cenu?
Ne. Hash zahrnuje náklady jako součást výstupu a ověření vyžaduje stejné náklady. Chcete-li změnit cenu, znovu hashujte při příštím úspěšném přihlášení.