Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Czym jest sól w odniesieniu do MYSQL sha1?

Sól to wartość dodawana do hasła (lub innego sekretu), który chcesz zahaszować w jeden sposób. Oznacza to, że może znajdować się przed, po lub gdzieś w haśle, o ile jego pozycja i wartość są zgodne z podanym hasłem.

To, co robi, to łagodzenie ataków słownikowych – w zasadzie słowników popularnych haseł wstępnie zaszyfrowanych bez soli – od użycia do „odgadnięcia” hasła jednokierunkowego, o ile atakujący nie zna skrótu. Jeśli każde hasło ma inny skrót to bardzo utrudnia osobie atakującej utworzenie słownika zoptymalizowanego do łamania haseł (potrzebowaliby słownika dla każdej oddzielnej soli i musieliby także wiedzieć, gdzie sól została umieszczona w każdym haśle ).

Oczywiście, aby to wszystko miało zastosowanie, atakujący musi przede wszystkim mieć skróty swoich haseł. Nie ma to nic wspólnego z atakowaniem haseł przez odgadywanie ich za pomocą monitu wejściowego.

Jeśli chodzi o MySQL, jeśli podasz sól podczas haszowania hasła, upewnij się, że zapisałeś, gdzie ta sól się znajdowała. Następnie, gdy użytkownik próbuje uwierzytelnić, łączysz zapisaną wartość salt z hasłem (podczas wywołania crypt na przykład) i jeśli wynikowy hash pasuje, oznacza to, że wpisali poprawne hasło. (Zauważ, że w żadnym momencie zaszyfrowanie hasła nie jest odwracane; a więc w jedną stronę).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL:alternatywy dla ORDER BY RAND()

  2. Odczytywanie ustawień podrzędnych, odczytywanie i zapisywanie ustawień głównych

  3. Zamykanie aktywnych połączeń za pomocą RMySQL

  4. Jak mogę odczytać wartość z mysql za pomocą PHP?

  5. WYBIERZ PRZYPADEK KIEDY TO (WYBIERZ)