Junior — Middle
112
Jak bezpečně ukládat a získávat informace o hesle po jeho zadání?
Odpověď od AI
sobes.tech AI
Pro bezpečné uložení a načtení hesla po jeho zadání v Java se doporučuje:
- Používat třídu
char[]místoStringpro uložení hesla v paměti, protože řetězce jsou neměnné a zůstávají v paměti déle. - Po použití vyčistit pole hesla, například jej naplnit nulami.
- Nikdy neukládat heslo v otevřeném textu v paměti nebo v logech.
- Pro ukládání hesel v databázi používat hashování s přídavkem soli (například BCrypt, PBKDF2).
Příklad bezpečného načtení hesla z konzole:
import java.io.Console;
Console console = System.console();
if (console != null) {
char[] password = console.readPassword("Zadejte heslo: ");
// Použijte heslo
// Vyčistit pole po použití
java.util.Arrays.fill(password, ' ');
} else {
System.out.println("Konzole není dostupná");
}