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;