quitar - ¿Cómo puedo cifrar mi contraseña?-Android Studio
encriptar y desencriptar en android studio (2)
public class AESCrypt
{
private static final String ALGORITHM = "AES";
private static final String KEY = "1Hbfh667adfDEJ78";
public static String encrypt(String value) throws Exception
{
Key key = generateKey();
Cipher cipher = Cipher.getInstance(AESCrypt.ALGORITHM);
cipher.init(Cipher.ENCRYPT_MODE, key);
byte [] encryptedByteValue = cipher.doFinal(value.getBytes("utf-8"));
String encryptedValue64 = Base64.encodeToString(encryptedByteValue, Base64.DEFAULT);
return encryptedValue64;
}
public static String decrypt(String value) throws Exception
{
Key key = generateKey();
Cipher cipher = Cipher.getInstance(AESCrypt.ALGORITHM);
cipher.init(Cipher.DECRYPT_MODE, key);
byte[] decryptedValue64 = Base64.decode(value, Base64.DEFAULT);
byte [] decryptedByteValue = cipher.doFinal(decryptedValue64);
String decryptedValue = new String(decryptedByteValue,"utf-8");
return decryptedValue;
}
private static Key generateKey() throws Exception
{
Key key = new SecretKeySpec(AESCrypt.KEY.getBytes(),AESCrypt.ALGORITHM);
return key;
}
}
Use esto resolverá su problema.
¿Alguien sabe cómo encriptar la contraseña que el usuario agrega al campo de contraseña?
Intenté este tutorial pero no lo hice funcionar.
https://gist.github.com/aogilvie/6267013#file-string_encrypt_decrypt-md
Espero que alguien pueda ayudarme :(
Cite esta publicación Diferencia entre Hashing a Password y Encrypting it Le recomendaría usar hashing (sin cifrado) para almacenar contraseñas. Puede usar, por ejemplo, md5 (no recomendado), sha1, sha2 ...
Implementación ilustrada de SHA1: cómo SHA1 hash una cadena en Android?