Hola amigos, buenos días.
Bueno recurro a Uds. por un problemita que tengo utilizando la librería
bouncycastle (quizás algunos la conocen) para hacer cifrado y descifrado
utilizando específicamente el algoritmo 3DES (DESede).
Resulta que tengo una llave de tipo hexadecimal por ejemplo algo así como
esto:
key = "A7333C29C27C0124235D156F32492324"
y una cadena también en hexadecimal pero que ya está cifrada con 3DES, por
ejemplo algo así como esto:
cadena_cifrada = "D8734116D013D1057310787020C2F222"
mi intención es descifrar esta cadena utilizando la librería antes
mencionada pero resulta que al enviar los valores a un método en donde tengo
como parámetros de entrada la llave y la cadena_cifrada pero convertidas en
un Array de bytes (byte[]), ejecuto el proceso y tengo el siguiente
resultado:
org.bouncycastle.crypto.InvalidCipherTextException : pad block corrupted
at org.bouncycastle.crypto.paddings.PKCS7Padding.padC ount(Unknown Source)
at org.bouncycastle.crypto.paddings.PaddedBufferedBlo
ckCipher.doFinal(Unknown Source)
at appayudas.EncriptionSource.Decrypt(Encripti onSource.java:41)
at appayudas.Main.main(Main.java:39)
y este es el método que utilizo escrito en java
public String Decrypt(byte[] key, byte[] cifrado) {
BlockCipher engine = new DESedeEngine();
BufferedBlockCipher cipher = new PaddedBufferedBlockCipher(new
CBCBlockCipher(engine));
cipher.init(false, new KeyParameter(key));
byte[] rv = new byte[cipher.getOutputSize(cifrado.length)];
int oLen = cipher.processBytes(cifrado, 0, cifrado.length, rv, 0);
try {
cipher.doFinal(rv, oLen);
} catch (Exception ce) {
ce.printStackTrace();
}
return new String(rv).trim();
}
Espero que alguno me pueda dar una luz.
Gracias de antemano.
Saludos.
Brando.
_______________________________________________
Lista de correo Linux-plug
Temática: Discusión general sobre Linux
Peruvian Linux User Group (http://www.linux.org.pe)
Participa suscribiéndote y escribiendo a: [email protected]
Para darte de alta, de baja o hacer ajustes a tu suscripción visita:
http://listas.linux.org.pe/mailman/listinfo/linux-plug
IMPORTANTE: Reglas y recomendaciones
http://www.linux.org.pe/listas/reglas.php
http://www.linux.org.pe/listas/comportamiento.php
http://www.linux.org.pe/listas/recomendaciones.php