Ver Mensaje Individual
  #4  
Antiguo 15-01-2014
camiz camiz is offline
Miembro
 
Registrado: ene 2012
Posts: 69
Reputación: 15
camiz Va por buen camino
estoy tratando de usar el codigo de ecfisa, pero algo no esta funcionando les dejo el codigo que estoy usando para guardar los datos a la base de datos.

estoy usando la libreria Crypto y trabajo con los componentes DCP_rijndael y DCP_sha512 la funcion para encriptar es esta

Código Delphi [-]
function Cifrar(Texto, Clave: AnsiString): String;
var
  Cipher: TDCP_Rijndael;
begin
  Cipher:= TDCP_Rijndael.Create(nil);
  Cipher.InitStr(Clave,TDCP_sha512);
  result := Cipher.EncryptString(Texto);
  Cipher.Burn;
  Cipher.Free;
end;



y para guardar a la base de datos


Código Delphi [-]
        Open;
        Insert;
        FieldByName('CAM1PO').AsString := Cifrar(txtcodigo.Text,'123456');
        FieldByName('CAM2PO').AsString := Cifrar(txtvencimiento.Text,'123456');
        FieldByName('CAM3PO').AsString := Cifrar(txtafiliado.Text,'123456');
        Post



los datos se encriptan y se guardan correctamente ahora el problema al mostralos en un dbgrid se muestran tal como se han guardado. lo que quiero es mostrarlo descencriptado en el DBGrid.
esta es la funcion para desencriptar.


Código Delphi [-]
function Descifrar(Texto, Clave: AnsiString): String;
var
  Cipher: TDCP_Rijndael;
begin
  Cipher:= TDCP_Rijndael.Create(nil);
  Cipher.InitStr(Clave,TDCP_sha512);
  result := Cipher.DecryptString(Texto);
  Cipher.Burn;
  Cipher.Free;
end;

Última edición por camiz fecha: 15-01-2014 a las 15:24:35.
Responder Con Cita