Sobes.tech
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ísto String pro 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á");
}