Расшифровка пароля

217
20 сентября 2018, 17:00

В общем появилась у меня проблема с расшифровкой пароля. Есть два метода:

метод который шифрует пароль

    private byte[] encrypt(String password) throws NoSuchAlgorithmException, NoSuchPaddingException, InvalidKeyException, IllegalBlockSizeException, BadPaddingException {
    Cipher cipher = Cipher.getInstance("AES");
    SecretKeySpec secretKey = new SecretKeySpec("dfgkirvbn25685la".getBytes(), "AES");
    cipher.init(Cipher.ENCRYPT_MODE, secretKey);
    return cipher.doFinal(password.getBytes());
}

и метод который расшифровывает пароль

    private String decrypt(PersonEntity pe) throws NoSuchAlgorithmException, NoSuchPaddingException, InvalidKeyException, IllegalBlockSizeException, BadPaddingException {
    Cipher cipher = Cipher.getInstance("AES");
    SecretKeySpec secretKey = new SecretKeySpec("dfgkirvbn25685la".getBytes(), "AES");
    cipher.init(Cipher.DECRYPT_MODE, secretKey);
    String s = "";
    byte[] bites = cipher.doFinal(pe.getPassword());
    for (byte b : bites) {
        s += (char) b;
    }
    return s;
}

Так вот, когда я ввожу пароль в окошке логина, метод заканчивает свою работу на строке byte[] bites = cipher.doFinal(pe.getPassword()); и дальше ничего почему-то не происходит. Пароль я получаю из сущности, в которой у меня хранится столбец из байтов

private byte[] password;

Вот так хранится пароль в бд

Может я как-то не правильно храню эти пароли или расшифровку не правильно делаю?

Answer 1

Замените:

byte[] bites = cipher.doFinal(pe.getPassword());
for (byte b : bites) {
    s += (char) b;
}
return s;

на

return new String(cipher.doFinal(pe.getPassword()));
READ ALSO
JavaFX: Gif и пауза

JavaFX: Gif и пауза

Идея такая: есть скрытая GIF'капри нажатии на кнопку, она становится видимой, пауза в пару секунд, GIF'ка опять становится невидимой и происходит...

204
PreDestroy аннотация, сравнение с finalise()

PreDestroy аннотация, сравнение с finalise()

Является ли использование, @PreDestroy плохой практикой(как с finalize)?

196
Как работает нормализация Java (normalize)

Как работает нормализация Java (normalize)

Есть такой код, который создает дерево DOM из файла FILE_NAME, а метод writeFileXML() записывает изменения в файл:

228
rmiregistry не запускается на localhost

rmiregistry не запускается на localhost

Есть специализированное приложение на java, которое не запускается под ubuntuПри запуске выдает, что не может соединится с rmiregistry

247