Besplatni pretvarač

Bcrypt lozinka Generator

Generirajte sigurne bcrypt hashove lozinki odmah u svom pregledniku. Odaberite faktor cijene i hash lozinke na strani klijenta — potpuno privatno i besplatno.

O ovom alatu

bcrypt je funkcija raspršivanja lozinki koju su dizajnirali Niels Provos i David Mazières 1999. godine, izvedena iz šifre Blowfish. Za razliku od raspršivača opće namjene kao što je SHA-256, bcrypt je namjerno spor — i konfigurabilno spor, putem parametra cijene — što je upravo svojstvo koje raspršivač lozinki treba. Brža funkcija raspršivanja omogućuje napadačima brute-force više kandidata u sekundi; sporiji ih ograničava.

bcrypt također automatski uključuje sol po lozinci, eliminirajući cijelu klasu napada temeljenih na unaprijed izračunatim duginim tablicama. Parametar soli i cijene pohranjeni su kao dio bcrypt izlaza, tako da je za provjeru potreban samo pohranjeni hash i lozinka kandidata — nema zasebnog upravljanja soli. Ova kombinacija sporosti, soli i samostalnog formata učinila je bcrypt zadanim hashom zaporke dva desetljeća i jakim izborom danas.

Moderne alternative postoje. Argon2 je pobijedio na natjecanju za hashiranje lozinki 2015. i nudi otpornost na pamćenje uz vremensku izdržljivost. scrypt nudi slična svojstva. Za nove dizajne, Argon2id je preporučeni izbor. bcrypt ostaje prihvatljiv i široko se koristi, osobito u okruženjima gdje Argon2 nije dostupan.

Zašto hashirati lozinke s bcryptom

Pohranjivanje lozinki kao otvorenog teksta je zlouporaba. Njihovo pohranjivanje s brzim raspršivanjem kao što je SHA-256 jedva da je bolje — moderni GPU-ovi izračunavaju milijarde SHA-256 raspršivanja u sekundi, čineći brutalne napade na bilo koju uobičajenu lozinku izvedivim za nekoliko sati. bcrypt-ova namjerna sporost pomiče ekonomiju: uz faktor cijene 12, napadač troši otprilike 250 ms po zaporci kandidata, čineći grubu silu nepraktičnom za bilo koju netrivijalnu lozinku.

bcryptov automatski sol po zaporci također pobjeđuje napade duginim tablicama. Dva korisnika s istom lozinkom proizvode različite bcrypt hashove jer se njihove soli razlikuju. Ugrožavanje baze podataka zaporki ne dopušta napadaču da brzo identificira uobičajene zaporke ili pogotke unaprijed izračunate tablice.

Kako koristiti

Upišite lozinku, odaberite cijenu, dobijte hash.

  1. Unesite lozinku: Upišite lozinku za hash. Alat se u potpunosti pokreće u vašem pregledniku; lozinka se nigdje ne prenosi.
  2. Odaberite faktor troškova: Zadana vrijednost je 10, što daje približno 100 ms vremena raspršivanja na modernom hardveru. 12 se preporučuje za nove aplikacije (250 ms). Više vrijednosti povećavaju sigurnost po cijenu sporije verifikacije.
  3. Generiraj: Raspršivač generira slučajnu 16-bajtnu sol, pokreće derivaciju bcrypt ključa i proizvodi raspršivanje u standardnom $2b$ formatu.
  4. Koristite hash: Pohranite kompletan izlaz ($2b$cost$saltAndHash) u svoju bazu podataka zaporki. Provjera koristi istu biblioteku za usporedbu kandidata s pohranjenim hashom.

Uobičajeni slučajevi upotrebe

Tehnički detalji

bcrypt koristi modificiranu fazu postavljanja ključa Blowfish šifre, ponovljenu 2^cost puta. Faktor troška je logaritamski — trošak 12 dvaput je sporiji od troška 11, četiri puta sporiji od troška 10. Ovo logaritamsko skaliranje omogućuje administratorima povećanje troška tijekom vremena kako se hardver poboljšava, bez redizajniranja sustava.

Izlazni format je $version$cost$saltAndHash gdje je saltAndHash base64 kodiran prilagođenom abecedom. Verzija je obično $2b$ (moderna varijanta s ispravljenom wraparound bug) ili $2y$ (specifična za PHP, ekvivalent). Sol je 16 bajtova; hash je 24 bajta; zajedno kodiraju u 53 znaka custom-base64.

Maksimalna duljina unosa je 72 bajta (ograničenje duljine ključa Blowfish). Dulje lozinke tiho se skraćuju, što je dugotrajna bcrypt mana. Najbolja praksa je ili ograničiti duljinu zaporke na 72 bajta ili unaprijed raspršiti pomoću SHA-256 za normalizaciju duljine prije bcrypt.

Najbolji primjeri iz prakse

Često postavljana pitanja

Mogu li prilagoditi generirani izlaz?
da Alat nudi različite mogućnosti prilagodbe za prilagodbu rezultata vašim specifičnim potrebama. Podesite postavke prije generiranja ili regenerirajte pomoću različitih opcija.
Je li generirani sadržaj besplatan za korištenje?
da Sve što generišete ovim alatom vaše je za korištenje u osobne, obrazovne ili komercijalne svrhe bez ikakvih ograničenja ili zahtjeva za atribucijom.
Je li za ovo potreban račun?
Ne. Alat je odmah spreman za korištenje bez prijave, e-pošte i registracije. Samo otvorite stranicu i počnite generirati.
Čuvaju li se moji ulazni podaci privatni?
da Sva se obrada odvija u vašem pregledniku. Vaši ulazni podaci i generirani izlaz nikada se ne šalju bilo kojem vanjskom poslužitelju.
Trebam li dodati vlastitu sol?
Ne. bcrypt automatski generira i pohranjuje nasumične soli. Dodavanje vlastite soli je nepotrebno i može uzrokovati suptilne greške. Koristite zadano generiranje soli knjižnice.
Šalje li se lozinka poslužitelju?
Ne. bcrypt raspršivanje događa se u vašem pregledniku. Lozinka nikada ne napušta vaš uređaj.
Zašto postoje $2a$, $2b$, $2y$ varijante?
$2a$ je original. $2b$ ispravlja wraparound bug otkriven 2014. $2y$ je specifičan za PHP, funkcionalno je ekvivalentan $2b$. Novi sustavi bi trebali proizvoditi $2b$ hasheva.
Mogu li smanjiti skupi hash na nižu cijenu?
Ne. Raspršivanje uključuje trošak kao dio izlaza, a provjera zahtijeva isti trošak. Za promjenu cijene, ponovno raspršite kod sljedeće uspješne prijave.