Przechowywanie haseł we właściwy sposób: dlaczego Argon2
Autor: Zespół Alt Auth

Baza haseł w końcu zostanie odczytana przez kogoś, kto nie powinien jej mieć. Na tym założeniu opiera się wszystko, co tu napisano. Pytanie nie brzmi, czy plik wycieknie, ale co atakujący może zrobić w tygodniach po wycieku.
Hashowanie to nie szyfrowanie
Szyfrowanie jest z założenia odwracalne: wszystko, co zaszyfrujesz, można odszyfrować, a może to zrobić każdy, kto dostanie klucz. Hashowanie haseł jest celowo jednokierunkowe. Nigdy nie odzyskujesz hasła — ponownie hashujesz to, co wpisał użytkownik, i porównujesz. Jeśli Twój system może wysłać komuś jego obecne hasło e-mailem, to nie jest hashowanie.
Dlaczego Argon2, a nie SHA-256
Funkcje skrótu ogólnego przeznaczenia są projektowane tak, by były szybkie, a to jest tutaj dokładnie złe: szybki oznacza miliardy prób na sekundę na zwykłym sprzęcie. Argon2 jest celowo wolny i celowo wymagający pamięciowo, więc atakujący nie może po prostu dorzucić więcej kart graficznych do problemu. To aktualne zalecenie i jest nim od lat.
- Unikalna sól dla każdego użytkownika, zawsze — inaczej identyczne hasła dają identyczne skróty.
- Dostrajaj parametry kosztu do swojego sprzętu i wracaj do nich: sprzęt przyspiesza, Twoje ustawienia nie.
- Nigdy nie loguj hasła, nawet w gałęzi debugowania, nawet raz.
- Porównuj w stałym czasie. Porównanie, które zwraca wynik wcześniej, ujawnia informacje.
Alt Auth używa Argon2 w każdym planie, również w darmowym. Domyślne ustawienia bezpieczeństwa, które pojawiają się tylko na poziomie korporacyjnym, nie są domyślne.