Мне нужно шифровать пароль Я использую this учебникзашифрованной строки в байтах []
мне нужно хранить зашифрованный пароль в базе данных SQL в виде строки, когда я пытаюсь прочитать и преобразовать строку в Byte [] у меня есть проблема, байт [] отличается от оригинального зашифрованного байта []
byte[] encrypted = encryper.encrypte("pavel");
Log.i("info","encrypted : "+encrypted);
String pass = String.valueOf(encrypted);
byte[] passBytes = pass.getBytes();
Log.i("info","passBytes : "+passBytes);
Log.i("info","decrypted : "+encryper.decrypte(passBytes));
журнала
I/info: encrypted : [[email protected]
I/info: passBytes : [[email protected]e3d
I/info: decrypted :
метод расшифровывать
public String decrypte(byte[] text)
{
byte[] textDecrypted = new byte[0];
try {
cipher.init(Cipher.DECRYPT_MODE, myDesKey);
textDecrypted = cipher.doFinal(text);
Log.i("info","do final : "+textDecrypted);
}catch (InvalidKeyException e) {e.printStackTrace();
}catch (IllegalBlockSizeException e){e.printStackTrace();}
catch (BadPaddingException e){e.printStackTrace();}
return new String(textDecrypted);
}
но если я пишу decrypte общественности String (байты [] текст) {
byte[] textDecrypted = new byte[0];
try {
cipher.init(Cipher.DECRYPT_MODE, myDesKey);
textDecrypted = cipher.doFinal(text);
Log.i("info","do final : "+textDecrypted);
}catch (InvalidKeyException e) {e.printStackTrace();
}catch (IllegalBlockSizeException e){e.printStackTrace();}
catch (BadPaddingException e){e.printStackTrace();}
return new String(textDecrypted);
}
, но если я ставлю оригинальные байты [] все работы
encryper.decrypte(encrypted)
О ваших требованиях: Если вы делаете эту работу, чтобы узнать что-то/для удовольствия: Отлично! Если вы планируете хранить пароли DES, зашифрованные в базе данных: Не делайте этого. Злоумышленники, имеющие доступ к базе данных, могут получить пароль. Вместо этого сохраните ** соленый ** хэш с методом, который намеренно делает поиск медленным. Для получения дополнительной информации см. Https://nakedsecurity.sophos.com/2013/11/20/serious-security-how-to-store-your-users-passwords-safely/ –