Możliwe, że słyszałeś już o soleniu haseł, ale kolejna technika, peppering sprawia, że są one jeszcze bezpieczniejsze. To ważny proces kryptograficzny w zabezpieczaniu haseł. Niezwykle istotne jest, aby hasła były zabezpieczone przed atakami hakerów a peppering idealnie w tym pomaga.


Co to jest Peppering?

Password Peppering to proces kryptograficzny, który polega na dodaniu do hasła, tajnego, ciągu znaków przed jego zasoleniem i zhashowaniem w celu zwiększenia jego bezpieczeństwa. Ciąg znaków dodany do hasła nazywany jest „pieprzem”. Pieprz całkowicie zmienia wartość hasła i uodparnia je na ataki typu brute force oraz łamanie haseł za pomocą haseł słownikowych.


Jak działa Peppering?

Peppering to dodatkowa warstwa zabezpieczeń dodawana do haseł. Samo hashowanie hasła nie jest bezpieczne, ponieważ hasło można łatwo złamać. Dlatego właśnie dodatki jak sól i pieprz, sprawiają, że całość staje się odporna na ataki.

Co to właściwie znaczy, że hasło jest hashowane? Haszowanie to jednokierunkowy proces szyfrowania w kryptografii. Hasła, które są haszowane, są w zasadzie zakodowane i zamiast przechowywać hasła w postaci jawnej w bazie danych, przechowywane są ich hasze. Gdy użytkownik wprowadza swoje hasło, jest ono haszowane, a następnie porównywane z haszowanym hasłem w bazie danych. W ten sposób system weryfikuje tożsamość użytkownika.

Podobnie jak w przypadku solenia, do hasła dodawany jest pieprz, aby zwiększyć jego bezpieczeństwo. W ten sposób hasło zostaje przekształcone z hasła w postaci zwykłego tekstu w hash hasła + sól + pieprz. Jeśli więc haker uzyska dostęp do soli i/lub haseł użytkowników, nie będzie w stanie odszyfrować zaszyfrowanego hasła, ponieważ pieprz całkowicie zmienia jego hash.

Na przykład, porównaj hash zwykłego hasła, zasolonego hasła i hasła z pieprzem. Niech hasłem będzie “1yAm0r1a!”, solą “eW3dU%”, a pieprzem “Am41a?”.

Źródło: makeuseof.com

Czy pieprz może być używany bez soli?

Tak, hasło może być używane bez soli. Nie jest to jednak idealne rozwiązanie z punktu widzenia bezpieczeństwa haseł. Jeśli atakujący pozna pieprz strony, stanie się ona podatna na atak, ponieważ pieprz jest używany do wszystkich haseł w bazie danych.


Jaka jest różnica między Salted a Peppered Password?

W pewnym sensie pieprz jest rodzajem soli. Oba zwiększają bezpieczeństwo haseł, ale różnią się od siebie. W przeciwieństwie do soli, pieprz jest tajny, statyczny i nie jest generowany losowo.

Gdy użytkownik loguje się na stronie internetowej i wprowadza swoje hasło, przed jego zaszyfrowaniem losowo generowana jest sól. Inaczej jest w przypadku „pieprzenia”.

To właściciel witryny wybiera pieprz. Jego zadaniem jest upewnienie się, że wybrany pieprz jest bezpieczny i wystarczająco silny. Oczywiście właściciel strony może zdecydować się na użycie generatora wartości losowych do wyboru.


Peppered Password są statyczne i takie same dla każdego.

W soleniu każda „sól” jest generowana dla poszczególnego użytkownika w bazie danych. Natomiast używając pieprzu każdy użytkownik będzie miał przydzielony dokładnie ten sam ciąg znaków.


Bezpieczeństwo przechowywania

W przeciwieństwie do soli, które można znaleźć w bazie danych witryny, pieprz jest tajny. Nie jest on przechowywany w bazie danych razem z solami i hashami, ponieważ w ten sposób ich przechowywanie stałoby się bezcelowe.

Zamiast tego są przechowywany w bezpiecznej i oddzielnej części aplikacji witryny. Jest to ważne, ponieważ w przypadku włamania się do witryny i uzyskania dostępu do haseł i soli użytkowników tej witryny haker nie będzie w stanie złamać żadnego hasła, ponieważ nie będzie części „pieprzu”.


Wybór dobrego pieprzu

Wybór dobrego pieprzu jest równie ważny jak wybór dobrego hasła. Podobnie jak hasło, „pieprz” powinien być rozsądnie długi i niepowtarzalny. Pamiętaj, że jest on używany w całej witrynie; jeśli haker użyje metody brute force lub zgadnie ciąg znaków pieprzu, witryna będzie podatna na ataki. A więc nie nalży należy używać nazwy witryny jako pieprzu, bo, będzie to równoznaczne z użyciem “Password123”.

Inną alternatywą jest użycie generatora haseł. W Internecie dostępnych jest wiele generatorów haseł, które można wykorzystać do wybrania dobrego hasła.


Czy używanie „pieprzu” jest skuteczne w zwiększaniu bezpieczeństwa?

Gdy „pieprz” jest używany razem z solą, hakerowi niezwykle trudno jest złamać hasło użytkownika. Nawet jeśli użytkownicy używają słabych haseł lub tych samych, haker nigdy się o tym nie dowie, ponieważ pieprz zmienia hash. Dzięki pieprzowi bezpieczeństwo haseł jest znacznie zwiększone.

Podziel się z innymi tym artykułem!