Ich brauche Passwort zu verschlüsseln ich bin mit this TutorialEncrypted String byte []
ich brauche das verschlüsselte Passwort in SQL-Datenbank als Zeichenfolge zu speichern, wenn ich versuche, Zeichenfolge zu lesen und konvertieren byte [] ich habe ein Problem, das byte [] unterscheidet sich von der ursprünglichen verschlüsselten 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));
log
I/info: encrypted : [[email protected]
I/info: passBytes : [[email protected]
I/info: decrypted :
Entschlüsseln Methode
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);
}
aber wenn ich schreibe 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);
}
, aber wenn ich das ursprüngliche Byte setzen [] alle Arbeiten
encryper.decrypte(encrypted)
Über Ihre Anforderungen: Wenn Sie diese Arbeit machen, um etwas/zum Spaß zu lernen: Großartig! Wenn Sie vorhaben, Passwörter verschlüsselt in einer Datenbank zu speichern: Tun Sie es nicht. Angreifer, die Zugriff auf die Datenbank haben, können das Passwort abrufen. Speichern Sie stattdessen einen ** gesalzenen ** Hash mit einer Methode, die absichtlich die Suche verlangsamt. Für weitere Informationen siehe https://nakedsecurity.sophos.com/2013/11/20/serious-security-how-to-store-your-users-passwords-safely/ –