Я храню пароли для моих пользователей в виде зашифрованной строки. Если я открою пользователя для редактирования в консоли администратора. Весь зашифрованный файл не копируется, и если я сохраню пользователя, его пароль больше не будет работать. Я предполагаю, что шифрование создает символы, которые мешают просмотру данных и говорят, что поле заканчивается раньше, чем оно есть на самом деле. Это проблема с механизмом приложения или я должен хранить свои пароли другого типа? Если потребуется какая-либо другая информация, я буду рад предоставить более подробную информацию.
Ниже приведен метод хеширования, который я использую, он напрямую сохраняется в хранилище данных.
public String getHash(String password, byte[] salt) throws NoSuchAlgorithmException, UnsupportedEncodingException {
MessageDigest md = MessageDigest.getInstance("SHA-256");
md.reset();
md.update(salt);
return new String(md.digest(password.getBytes("UTF-8")));
}