Junior — Middle
Jak je implementován schéma šifrování dat v Spring Security?
sobes.tech AI
Odpověď od AI
Ve Spring Security je šifrování dat, například hesel, realizováno pomocí rozhraní PasswordEncoder. Poskytuje metody pro hashování a ověřování hesel.
Nejčastěji používaným je BCryptPasswordEncoder, který aplikuje algoritmus BCrypt — adaptivní hash s přidaným solí, což chrání před útoky hrubou silou a rainbow tabulkami.
Příklad použití:
PasswordEncoder encoder = new BCryptPasswordEncoder();
String rawPassword = "password123";
String encodedPassword = encoder.encode(rawPassword);
// Ověření hesla
boolean matches = encoder.matches(rawPassword, encodedPassword);
Tímto způsobem Spring Security neukládá hesla v otevřeném textu, ale jejich hash, což zvyšuje bezpečnost aplikace.