Czym jest hashowanie i jak może wpływać na nasze bezpieczeństwo?
Czy wiesz, że szyfrowanie i hashowanie to nie do końca to samo? W poniższej analizie skupimy się na tym drugim i rozłożymy na części pierwsze, ten mniej popularny termin.
Co to jest hash hasła?
To ciąg znaków o stałej długości, generowany na podstawie wprowadzonego przez użytkownika hasła. Wyliczanie odbywa się przy pomocy odpowiedniego algorytmu, a czas potrzebny na wygenerowanie (i tym samym złamanie) hasła jest zależny od jego rodzaju (znane algorytmy to SHA lub MD5).
Dlaczego stosuje się hashe haseł?
Przede wszystkim ze względu na bezpieczeństwo. W bazie danych przechowywany jest jedynie wygenerowany hash. Utrudnia to cyberprzestępcom dostęp do haseł użytkowników, nawet jeśli uda im się włamać do systemu.
Drugim ważnym czynnikiem jest kwestia ochrony prywatności. Wtedy nawet administratorzy serwisu nie mają dostępu do haseł użytkowników w postaci jawnej.
Jak działa hashowanie haseł?
Hashowanie to proces jednokierunkowy. Oznacza to, że z hasha nie można odtworzyć oryginalnego hasła. Nawet niewielka zmiana, powoduje wygenerowanie zupełnie innego ciągu znaków.
Jak wyglądają hashe?
Hashe, w zależności od zastosowanego algorytmu, mają różną długość. Przykładowy ciąg znaków wygenerowany przy pomocy algorytmu MD5 to:
c3981fa8d26e95d911fe8eaeb6570f2f – został on obliczony dla słowa QWERTY
Niewielka zmiana np. zapisanie tego samego słowa małymi literami, zmienia całkowicie otrzymany skrót i będzie wyglądał on teraz tak:
d8578edf8458ce06fbc5bb76a58c5ca4.
Odszyfrowanie hasha hasła nie jest proste i zależy od kilku czynników:
- stosowanego algorytmu hashującego,
- długości hasła,
- dostępnych zasobów (cybeprzestepcy używają różnych słowników zawierających miliony popularnych haseł),
- mocy obliczeniowej (szybsze karty graficzne i procesory skracają czas potrzebny do łamania haseł).
Metody odszyfrowywania
- Atak słownikowy: Porównanie hasha z hasłami ze słownika
- Atak tęczowy: Wstępne wyliczenie i zapisanie tabel skrótów dla różnych haseł
- Atak brute-force: Testowanie wszystkich możliwych kombinacji znaków
Zastanawiasz się, czy Twoje dane są bezpieczne? Chcesz zabezpieczyć swoje konta? Odezwij się do nas na help@cyberrescue.me.
Zerknij jak stosować weryfikację dwuetapową logowania i dlaczego jest to konieczne, a także jak działają klucze U2F.