Powiel możliwe:
Secure hash and salt for PHP passwordsNazwa użytkownika, hasło, solenie, szyfrowanie, hasz - jak to wszystko działa?
Iv'e przeczytać wiele stanowisk zarówno w stackoverflow i innych witryn internetowych mówiących o bezpieczeństwie internetowym. Takie jak solenie szyfrujące itp. I nie wiem, jak to zrobić, więc proste wyjaśnienie byłoby naprawdę pomocne.
Oto, co wiem do tej pory. Użytkownik loguje typy swojej nazwy użytkownika i hasła. Wejście następnie przechodzi przez proces. Powiedzmy, że nazwa użytkownika i hasło są połączone, jak na przykład:
$username = (USERS USERNAME INPUT);
$password = (USERS PASSWORD INPUT);
$userinput = $username . $password;
Następnie dodajemy trochę soli.
$salt1 = "13$13aVc!kd";
$salt2 = "4kr$!vlmeoc";
$salted = $salt1 . $userinput . $salt2;
Następnie szyfrujemy.
$encrypted = encrypt($salted);
Następnie sprawdzić w bazie danych, a jeżeli jego prawo użytkownik zostanie zalogowany.
To jak to działa dobrze? Ale Iv'e czytał o ataku brutalnej siły. Zgaduje wartości wejściowe w prawo? Zgodnie z powyższą procedurą. Czy nie pokazuje, że atakujący musi jedynie uzyskać poprawne informacje o $ userinput? Nie musi odgadywać, że długi zaszyfrowany ciąg znaków jest poprawny?
Uwaga: Powiedzmy, że w tej sytuacji nie ma captcha, nie ma limitu prób, nie ma blokady, nic poza powyższym.
Uwaga: Bądź łagodny Nadal uczę się.
Dlatego użytkownicy powinni używać silnego hasła zamiast „12345” brute force, ale jest to możliwe w swoim scenariuszu .. – Deadlock
więc sól i szyfrowanie jest bezużyteczny? –
Sortuj, ale zaksięgowane daty, jeśli zostaną porwane, nie będą użyteczne dla porywacza, ponieważ będą w zaszyfrowanym ciągu i nie można ich cofnąć, dopóki nie będzie miał wartości soli. – Deadlock