Foros del Web » Programación para mayores de 30 ;) » Java »

encriptar

Estas en el tema de encriptar en el foro de Java en Foros del Web. hola a todos les agradecearia si me ayudan a mandar una cadena encripdata de un campo de una tabla y luego al momento de volverla ...
  #1 (permalink)  
Antiguo 28/06/2005, 13:30
 
Fecha de Ingreso: junio-2005
Mensajes: 1
Antigüedad: 18 años, 10 meses
Puntos: 0
encriptar

hola a todos les agradecearia si me ayudan a mandar una cadena encripdata de un campo de una tabla y luego al momento de volverla a leer descrinptarla para usrala normal
  #2 (permalink)  
Antiguo 28/06/2005, 14:42
 
Fecha de Ingreso: junio-2005
Mensajes: 286
Antigüedad: 18 años, 10 meses
Puntos: 2
Para encriptar:

import java.security.*;
import javax.crypto.*;
import javax.crypto.spec.*;

String algoritm,mode,padding;
algorithm = "DES"; //algoritmo anticuado
//hay otros algoritmos (DSA, Blowfish, etc)
mode = "CBC"; //modo (chain-backwards o algo asi, no me //recuerdo) del algoritmo
padding = "PKCS5Padding"; //el padding, debido a cuestiones del //bloque de bytes que usa el algoritmo....detalles :)

//generar la llave (secreta) DES
KeyGenerator desGen = KeyGenerator.getInstance("DES");
SecretKey desKey = desGen.generateKey();
SecretKeyFactory keyFac = SecretKeyFactory.getInstance("DES");
DESKeySpec desSpec = (DESKeySpec)keyFac.getKeySpec(desKey, javax.crypto.spec.DESKeySpec.class);
SecretKey key = keyFac.generateSecret(desSpec);

//Ahora encriptar
Cipher cipher = Cipher.getInstance(algorithm +"/" + mode + "/" + padding);

//decirle que queremos encriptar (aqui tambien le dirias que queres de-encriptar
cipher.init(Cipher.ENCRYPT_MODE, key);

//los parametros que usaste para encriptar (llave!), los cuales podrias guardar //y luego abrir para de-encriptar mas tarde

AlgorithmParameters algParam = cipher.getParameters();
encrypt(path,cipher);

//y para encriptar
byte[] ciphertext = cipher.doFinal(plaintext);

//donde plaintext seria tu campo en tu caso,

para deencriptar le das :

cipher.init(Cipher.DECRYPT_MODE, key);
byte[] plaintext1 = cipher.doFinal(ciphertext);

Dependiendo del algoritmo, los parametros de los metodos pueden variar

Willie
  #3 (permalink)  
Antiguo 28/06/2005, 23:11
Avatar de stock  
Fecha de Ingreso: junio-2004
Ubicación: Monterrey NL
Mensajes: 2.390
Antigüedad: 19 años, 10 meses
Puntos: 53
este FAQ te servira

http://forosdelweb.com/showpost.php?...5&postcount=13

have funn
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:11.