Utilizamos Cookies de terceros para generar estadísticas de audiencia y mostrar publicidad personalizada analizando tu navegación. Si sigues navegando estarás aceptando su uso. Más información X
PortadaForo AyudaTutoriales
InicioForosForo Programación

Encriptacion de Claves

mariocl99
2007-10-10 15:41 - Respuestas: 1 - Tema nº: 2475112


Características: Windows XP Profesional, P4 2.4 y 256 MB Ram.

Hola!!!

Mi problema es el siguiente necesito un método de encriptación de clave que me sirva tanto para una aplicación en Java y una en Visual Basic, hasta ahora estaba utilizando el método de encriptación DES en Java pero al tratar de reproducirlo en VB no he podido llegar al mismo resultado.

Gracias
Saludos.

Adjunto ejemplo en Java:



import javax.crypto.*;
import javax.crypto.spec.*;
import java.security.*;
import java.security.spec.*;
import sun.misc.*;
import java.io.*;


class DESEncryption {



/**
* Encripta un String utilizando el algoritmo DES
*
* @param clearText Texto en ckaro a encriptar
* @return texto encriptado en base 64
*/
public String encrypt (String clearText, Key key) {

String cipherTextB64 = "";

try {

// Necesitamos un cifrador
Cipher cipher = Cipher.getInstance("DES");

// Ciframos el texto en claro
cipher.init(Cipher.ENCRYPT_MODE, key);
byte cipherText[] = cipher.doFinal(clearText.getBytes());

// Codificamos el texto cifrado en base 64
BASE64Encoder base64encoder = new BASE64Encoder();
cipherTextB64 = base64encoder.encode(cipherText);

}
catch(NoSuchAlgorithmException nsae) {nsae.printStackTrace(); }
catch(InvalidKeyException ike) {ike.printStackTrace(); }
catch(NoSuchPaddingException nspe) {nspe.printStackTrace(); }
catch(IllegalBlockSizeException ibse) {ibse.printStackTrace(); }
catch(BadPaddingException bpe) {bpe.printStackTrace(); }

// Retornamos el texto cifrado en BASE64
return cipherTextB64;
}


/**
* Desencripta un testo cifrado en DES i codificado en base 64
*
* @param String cipherTextB64 Testo cifrado en DES y codificado en B64
* @return String Texto en claro
*/
public String decrypt (String cipherTextB64, Key key) {

String clearText = "";

try {

// Necesitamos un cifrador
Cipher cipher = Cipher.getInstance("DES");

// La clave está codificada en base 64
BASE64Decoder base64decoder = new BASE64Decoder();
byte cipherText[] = base64decoder.decodeBuffer(cipherTextB64);

// Ciframos el texto en claro
cipher.init(Cipher.DECRYPT_MODE, key);
byte bclearText[] = cipher.doFinal(cipherText);
clearText = new String(bclearText);

}
catch(NoSuchAlgorithmException nsae) {nsae.printStackTrace(); }
catch(NoSuchPaddingException nspe) {nspe.printStackTrace(); }
catch(InvalidKeyException ike) {ike.printStackTrace(); }
catch(IllegalBlockSizeException ibse) {ibse.printStackTrace(); }
catch(BadPaddingException bpe) {bpe.printStackTrace(); }
catch(IOException ioe) {ioe.printStackTrace(); }


return clearText;
}


/**
* Test de la clase
*/
public static void main (String args[]) {

// Clave de 64 bits, dado que DES utiliza 56 bits
byte[] secret = { 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08};

Key key = null;
try {
SecretKeyFactory skf = SecretKeyFactory.getInstance("DES");
key = skf.generateSecret(new DESKeySpec(secret));
}
catch(NoSuchAlgorithmException nsae) {nsae.printStackTrace(); }
catch(InvalidKeyException ike) {ike.printStackTrace(); }
catch(InvalidKeySpecException ikse) {ikse.printStackTrace(); }


DESEncryption desencryption = new DESEncryption();

String cipherText = desencryption.encrypt("Texto en claro", key);
System.out.println("Texto cifrado: " + cipherText);

String clearText = desencryption.decrypt(cipherText, key);
System.out.println("Texto en claro: " + clearText);
}

}





Posibles soluciones:
Encriptacion de clavesEncriptacion de claves
Encriptacion de redEncriptacion de red
Encriptación de una redEncriptación de una red
EncriptaciónEncriptación
EncriptacionEncriptacion
Hurricane

Re: Encriptacion de Claves - 2007-10-11 18:27 - Respuesta 2

Echa un vistazo al siguiente código publicado en la Web:
Encripta/Desencriptar cadenas (Visual Basic)

Saludos

HURRICANE

Página:1

Respuestas relacionadas:

Encriptacion wepEncriptacion wepForo
Encriptacion de redEncriptacion de redForo
EncriptaciónEncriptaciónForo
Cambio de encriptaciónCambio de encriptaciónForo
Encriptación wifiEncriptación wifiForo
Encriptacion de señalEncriptacion de señalForo
Encriptacion de tu wifiEncriptacion de tu wifiForo
Encriptación wifi Encriptación wifi Foro
Encriptacion wifiEncriptacion wifiForo
Con encriptacion clave Con encriptacion clave Foro
InicioSecciones
^ SubirAviso legal
Política Privacidad
Configurarequipos26 Abril 2024