onlinetools.dev

Bcrypt — hash i weryfikacja

Hashuj hasła bcryptem i sprawdzaj hashe względem tekstu jawnego

Działa lokalnie
loading…
O tym narzędziu

Zahashuj hasło bcryptem przy wybranym współczynniku kosztu albo sprawdź tekst jawny wobec istniejącego hasha — jedno i drugie w całości w przeglądarce, czyli dokładnie tak, jak chcesz, gdy badaną rzeczą jest hasło. Inspektor hashy rozbija też dowolny hash bcrypt na wersję, koszt i sól.

Bcrypt pozostaje solidnym wyborem do przechowywania haseł, bo jest celowo wolny i solony osobno dla każdego hasła: współczynnik kosztu podwaja pracę z każdym krokiem, więc koszt 12 oznacza 4096 iteracji konfiguracji szyfru pod spodem. Odczyt czasu pokazuje, ile trwa wybrany przez Ciebie koszt, przez co kompromis bezpieczeństwo/opóźnienie staje się namacalny.

Częstszą codzienną potrzebą jest weryfikacja: potwierdzenie, że hash z bazy odpowiada znanemu hasłu, bez uruchamiania kodu aplikacji. Wklej jedno i drugie, dostań tak albo nie.

Często zadawane pytania

Jakiego współczynnika kosztu używać na produkcji?
Klasyczna wskazówka: tak wysokiego, na jaki pozwala Twój budżet opóźnienia logowania, dziś zwykle 10–13. Celuj w 100–300 ms na hash na sprzęcie produkcyjnym. JavaScript w przeglądarce działa wolniej niż kod natywny, więc czas pokazany tutaj jest górnym ograniczeniem dla Twoich serwerów.
Dlaczego to samo hasło daje za każdym razem inny hash?
Do każdego hasha generowana jest losowa 16-bajtowa sól, zapisywana wewnątrz samego ciągu hasha. Tak ma być — identyczne hasła dostają różne hashe, co unieważnia gotowe tęczowe tablice. Weryfikacja odczytuje sól z powrotem z hasha, dlatego porównanie w ogóle działa.
Co oznaczają części hasha bcrypt?
$2b$12$ + 53 znaki: 2b to wersja algorytmu, 12 to koszt (2^12 iteracji), kolejne 22 znaki to sól, a ostatnie 31 to skrót — wszystko w bcryptowym wariancie base64. Inspektor pod narzędziem rozbija w ten sposób dowolny hash.
Czy bcrypt jest nadal zalecany zamiast Argon2?
Argon2id jest dziś pierwszym wyborem dla nowych systemów (twardość pamięciowa utrudnia łamanie na GPU). Bcrypt pozostaje akceptowalny i wszechobecny — praktyczna rada brzmi: nie migruj w panice działającego magazynu bcrypt, ale przy projektach od zera wybieraj Argon2id. Oba są o klasy lepsze od szybkich skrótów w rodzaju SHA-256.
Powiązane narzędzia