Generator hashy haseł MySQL
Generuj hashy haseł MySQL do uwierzytelniania. Obsługuje MySQL Native Password (SHA1) oraz starsze formaty Old Password.
Wejście
Wyjście
Instrukcja
Jak działa haszowanie haseł w MySQL?
MySQL używa kryptograficznego haszowania, aby bezpiecznie przechowywać hasła użytkowników. Zamiast zapisywać hasła w postaci czystego tekstu, MySQL przekształca je w stałej długości ciągi hashy przy użyciu jednoczynnikowych funkcji matematycznych. Gdy użytkownik próbuje się zalogować, MySQL hashuje podane hasło i porównuje je z zapisanym hashem. Jeśli się zgadzają, uwierzytelnienie kończy się powodzeniem. Takie podejście zapewnia, że nawet w przypadku uzyskania dostępu do bazy danych, nie można bezpośrednio odczytać haseł użytkowników.
Nowoczesny algorytm MySQL Native Password stosuje podwójne haszowanie SHA‑1: SHA1(SHA1(password)). Podwójne haszowanie dodaje dodatkową warstwę bezpieczeństwa. Otrzymany 40‑znakowy ciąg szesnastkowy jest poprzedzony gwiazdką (*) w celu oznaczenia, że jest to haszowane hasło, co daje wartości takie jak *2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19.
Opis narzędzia
MySQL Password Hash Generator tworzy hashe uwierzytelniające zgodne z bazami danych MySQL i MariaDB. Wpisz dowolne hasło, a narzędzie natychmiast wygeneruje odpowiadający mu hash, który można użyć bezpośrednio w instrukcjach SQL, takich jak CREATE USER lub ALTER USER. Narzędzie obsługuje zarówno nowoczesny format MySQL Native Password (MySQL 4.1 i nowsze), jak i starszy format Old Password przeznaczony dla starszych systemów.
Przykłady
MySQL Native Password (4.1+):
- Wejście:
mypassword - Wyjście:
*FABE5482D5AADF36D028AC443D117BE1180B9725
Old Password (Pre‑4.1):
- Wejście:
mypassword - Wyjście:
162eebfb6477e5d3
Użycie w SQL:
-- Tworzenie użytkownika z zahashowanym hasłem
CREATE USER 'username'@'localhost' IDENTIFIED BY PASSWORD '*FABE5482D5AADF36D028AC443D117BE1180B9725';
-- Aktualizacja istniejącego hasła użytkownika
ALTER USER 'username'@'localhost' IDENTIFIED BY PASSWORD '*FABE5482D5AADF36D028AC443D117BE1180B9725';
Funkcje
- MySQL Native Password – generuje hashe SHA1(SHA1(password)) dla MySQL 4.1+ i MariaDB
- Legacy Old Password – obsługuje format hashy sprzed MySQL 4.1 w celu zachowania kompatybilności wstecznej
- Haszowanie w czasie rzeczywistym – hash aktualizuje się natychmiast podczas wpisywania
- Przełącznik widoczności hasła – umożliwia pokazanie lub ukrycie wpisywanego hasła dla wygodniejszego wprowadzania
- Kopiowanie jednym kliknięciem – szybkie skopiowanie wygenerowanego hashy do schowka
Przypadki użycia
- Tworzenie kont użytkowników MySQL z wstępnie zahashowanymi hasłami w skryptach wdrożeniowych
- Migracja użytkowników między bazami MySQL przy zachowaniu istniejących hashy haseł
- Testowanie i weryfikacja konfiguracji uwierzytelniania MySQL
- Generowanie hashy haseł dla aplikacji kompatybilnych z MySQL
- Rozwiązywanie problemów z uwierzytelnianiem poprzez porównywanie oczekiwanych i rzeczywistych hashy
Obsługiwane formaty hashy
| Format | Algorytm | Wersja MySQL | Przykład wyjścia |
|---|---|---|---|
| MySQL Native Password | SHA1(SHA1(password)) | 4.1+ | *2470C0C06DEE42FD... |
| Old Password | Niestandardowy hash | Pre‑4.1 | 6f8c114b58f2ce9e |
Aspekty bezpieczeństwa
Hash MySQL Native Password jest zalecanym formatem dla wszystkich nowoczesnych instalacji MySQL i MariaDB. Format Old Password jest uznawany za niebezpieczny i powinien być używany wyłącznie w celu kompatybilności ze starszymi systemami, które nie mogą zostać zaktualizowane. MySQL 8.0 wprowadził caching_sha2_password jako nowy domyślny mechanizm, jednak mysql_native_password pozostaje szeroko wspierany i powszechnie używany.