bcrypt-generator
bcrypt är fortfarande ett av de säkraste valen för att lagra lösenord. Det är avsiktligt långsamt, härleder sitt eget salt och skalar mot bättre hårdvara genom en justerbar kostnadsparameter. Den här generatorn skapar en standardkompatibel bcrypt-hash från ett klartextlösenord så att du kan seeda en testanvändare, migrera ett konto mellan system eller jämföra värden mot en befintlig hash lagrad i en users.password-kolumn.
Så hashar du ett lösenord med bcrypt
-
1
Ange klartextlösenordet
Upp till 72 bytes: bcrypt trunkerar tyst allt därutöver.
-
2
Välj en kostnadsfaktor
12 är standard här; 10 är ett snabbare äldre val; 13 är den starkaste inställningen i det här verktyget. Varje +1 fördubblar ungefär hashtiden.
-
3
Ett slumpmässigt salt genereras
16 bytes salt hämtas från en kryptografisk RNG och bäddas in i den resulterande hashsträngen.
-
4
Kopiera hashen
Utdata är en självbeskrivande sträng som `$2b$12$...` som innehåller version, kostnad, salt och digest.
Anatomi för en bcrypt-hash
$2b$12$mE2n5YqWjKqT9tXg.OQPoeeHZJ9hdSvOt5wFdRRQwl6yE1vWWY3z6
| | | |
| | salt (22 Base64 chars) digest (31 Base64 chars)
| cost (2 digits, 4-31)
version (2a, 2b, 2y, all bcrypt)
Hela strängen är 60 tecken. Kolumner av typen VARCHAR(60) eller CHAR(60) är standardschemat.
Rekommendationer för kostnadsfaktor
| Kostnad | Ungefärlig tid per hash (2024-CPU) | Användningsfall |
|---|---|---|
| 10 | ~80 ms | Äldre standard, fortfarande acceptabelt |
| 12 | ~300 ms | Aktuell rekommenderad basnivå |
| 13 | ~600 ms | Appar med högre säkerhetskrav |
| 14 | ~1.2 s | Utanför verktygets intervall (max 13) |
Varje ökning fördubblar arbetsfaktorn. Om inloggningslatens under 500 ms är kritisk, håll dig till 10-12.
Versionsbyte: 2a vs 2b vs 2y
$2a$, Ursprunglig specifikation från 1999. De flesta bibliotek skapar2a-hashar.$2b$, Revision från 2014 som rättar en trunkeringsbugg i crypt_blowfish. Föredras för nya hashar.$2y$, PHP-specifik tagg, funktionellt likvärdig med$2b$.
Alla tre verifierar mot varandra; bara taggen i hashsträngen skiljer sig.
Vad bcrypt skyddar mot
- Rainbow tables, Unikt salt per hash stoppar förberäknade uppslag.
- GPU-/ASIC-knäckning, Blowfish key schedule är minnesbunden och ogästvänlig för GPU:er. Inte lika GPU-ogästvänlig som Argon2, men fortfarande långsam att brute force:a.
- Databasläckor, Klartexten kan aldrig återställas från hashen utan brute force.
Vad bcrypt INTE skyddar mot: svaga lösenord (använd minimilängd och kontrollera mot läcklistor), credential stuffing (använd en andra faktor), phishing.
72-bytegränsen
bcrypt använder bara de första 72 bytesen av lösenordet. Längre indata trunkeras tyst, vilket är samma anledning till att många bibliotek nu rekommenderar att lösenordet förhashas med SHA-256 innan det matas till bcrypt. Moderna alternativ (Argon2, scrypt) har ingen sådan gräns.
Vanliga frågor
Ja för lösenordslagring, vid kostnad ≥ 12. OWASP listar det fortfarande som en acceptabel algoritm. Argon2id är det föredragna valet för nya system, men migrering av äldre bcrypt-hashar är normalt lågprioriterat.
För att saltet genereras slumpmässigt per hash. Verifiering tar saltet från den lagrade hashen, hashar om det inskickade lösenordet med det och jämför.
De flesta bibliotek exponerar inte detta, och av goda skäl, förutsägbara salt motverkar hela poängen. Använd saltet som biblioteket genererar; det är den säkra vägen.
Varje +1 fördubblar ungefär hashtiden, så kostnad 13 tar cirka 8x längre tid än kostnad 10. Håll dig inom 10-12 om inte din applikation verkligen behöver den extra styrkan.
Relaterade verktyg
Base64-filencoder
Koda valfri fil (PDF, ZIP, bild, körbar fil) till Base64-text för inbäddning i JSON, e-post, YAML eller data-URI:er. Körs lokalt, ingen uppladdning.
A1Z26-chifferkodare
Koda text med A1Z26-chiffret (A=1, B=2, ... Z=26) eller avkoda en siffersekvens tillbaka till bokstäver, med anpassningsbar separator.
Base58-kodare och avkodare
Koda UTF-8-text eller hexadecimala byte och avkoda Base58 säkert med alfabetet för Bitcoin, Ripple eller Flickr.
bcrypt-hashgenerator
Generera bcrypt-hashar eller verifiera ett klartextlösenord mot en befintlig bcrypt-hash. Generera och verifiera sida vid sida i ett verktyg.
AES kryptera / dekryptera
Kryptera och dekryptera text med låg risk med AES-chiffer från OpenSSL. Lösenfrasen hashas med SHA-256 och Base64-utdata innehåller IV plus chiffertext.
SSL-certifikatgenerator
Generera ett självsignerat SSL/TLS-certifikat och en privat RSA-nyckel helt i webbläsaren. Eget Common Name, SAN och giltighet, exporterat som PEM.
Verktyget finns på andra språk
- Generator bcrypt [PL]
- Generador bcrypt [ES]
- Gerador de bcrypt [PT]
- مولد bcrypt [AR]
- bcrypt-generator [NL]
- Générateur bcrypt [FR]
- bcrypt 생성기 [KO]
- bcrypt Oluşturucu [TR]
- bcrypt Generator [EN]
- Trình tạo bcrypt [VI]
- Generator bcrypt [ID]
- bcryptジェネレーター [JA]
- ตัวสร้าง bcrypt [TH]
- bcrypt-Generator [DE]
- bcrypt 生成器 [ZH]
- Generatore bcrypt [IT]
- Генератор bcrypt [RU]