Sobes.tech
Junior — Middle

Como armazenar e recuperar informações de senha de forma segura após a sua entrada?

sobes.tech IA

Resposta da IA

Para armazenamento seguro e recuperação de senha após a sua entrada em Java, recomenda-se:

  • Utilizar a classe char[] em vez de String para armazenar a senha na memória, pois as strings são imutáveis e permanecem na memória por mais tempo.
  • Após o uso, limpar o array de senha, por exemplo, preenchendo-o com zeros.
  • Nunca armazenar a senha em texto claro na memória ou nos logs.
  • Para armazenar senhas em banco de dados, usar hashing com sal (por exemplo, BCrypt, PBKDF2).

Exemplo de obtenção segura de senha a partir do console:

import java.io.Console;

Console console = System.console();
if (console != null) {
    char[] password = console.readPassword("Digite a senha: ");
    // Use a senha

    // Limpar o array após uso
    java.util.Arrays.fill(password, ' ');
} else {
    System.out.println("Console indisponível");
}