Código para encriptar un texto en lenguaje JAVA y desencriptarlo en PHP. Codificación AES.
El parámetro "key" es la llave para encriptar/desencriptar y debe ser la misma en ambos lados del código
Método de encriptación JAVA
Método de desencriptación PHP
Código original de stevenholder. Más información y código completo en (Github)stevenholder/PHP-Java-AES-Encrypt
El parámetro "key" es la llave para encriptar/desencriptar y debe ser la misma en ambos lados del código
Método de encriptación JAVA
public static String encrypt(String input, String key){
byte[] crypted = null;
try{
SecretKeySpec skey = new SecretKeySpec(key.getBytes(), "AES");
Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding");
cipher.init(Cipher.ENCRYPT_MODE, skey);
crypted = cipher.doFinal(input.getBytes());
}catch(Exception e){
System.out.println(e.toString());
}
return new String(Base64.encodeBase64(crypted));
}
Método de desencriptación PHP
public static function decrypt($sStr, $sKey) {
$decrypted= mcrypt_decrypt(
MCRYPT_RIJNDAEL_128,
$sKey,
base64_decode($sStr),
MCRYPT_MODE_ECB
);
$dec_s = strlen($decrypted);
$padding = ord($decrypted[$dec_s-1]);
$decrypted = substr($decrypted, 0, -$padding);
return $decrypted;
}
Código original de stevenholder. Más información y código completo en (Github)stevenholder/PHP-Java-AES-Encrypt