Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros temas > La Taberna
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #7  
Antiguo 17-08-2014
camiz camiz is offline
Miembro
 
Registrado: ene 2012
Posts: 69
Poder: 15
camiz Va por buen camino
Con respecto a la proteccion de información para luego guardar a la base de datos, boy a ponerlo lo más detallado posible. uso los componentes DCPcrypt que son muy buenos y gratuitos y funciona perfecto hasta en la version XE6 lo he probado.

unas funciones de propias de los componentes que encontre en la web.

Código Delphi [-]
// Codigo para cifrar
function TForm1.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;
 
// Codigo para desencriptar
function TForm1.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;

Y aca unas funciones que hagan el trabajo mas fácil...
Código Delphi [-]
// Encripta la cadena de texto
function TForm1.Encriptar(texto :string ) : string;
var
a, b, miClave :string;
begin
  a := '/.._=?%$8¡*¿_["}';
  b := '!_*-.;.,"/$Glk*';
  miClave := Edit1.text;
  result := '';
  result := Cifrar(texto,a);
  result := Cifrar(result,b);
  result := Cifrar(Result,miClave);
end;
// Desencripta la cadena de texto
function TForm1.Desencriptar(texto :string) : string;
var
a, b, miClave :string;
begin
  a := '/.._=?%$8¡*¿_["}';
  b := '!_*-.;.,"/$Glk*';
  miClave := Edit1.text;
  result := '';
  result := Descifrar(texto,miClave);
  result := Descifrar(result,b);
  result := Descifrar(result,a);
end;

*En el caso de este programa ICPer que estamos hablando...
supongamos que Edit1.text es la clave que uno crea al momento de usar por primera vez la aplicación
a y b son caracteres que se puede usar para encriptar el texto ya encriptado mas claro en mi aplicación los datos que se guarda está triple Encriptado con las claves a y b + la clave que crea el que usa el programa. de esta manera ni el que crea el software puede desencriptar la informacion de la BD.

Ahora para guardar encriptado asi...
Código Delphi [-]
  with Query do
  begin
    SQL.Clear;
    SQL.Text := 'select * from tabla';
    Active := True;
    Open;
    Insert;
    FieldByName('usuario').AsString := Encriptar(Edit2.Text);
    FieldByName('clave').AsString := Encriptar(Edit3.Text);
    FieldByName('acceso').AsString := Encriptar(Edit4.Text);
    FieldByName('....').AsString := Encriptar(Edit5.Text);
    Post;
    Close;
    Active := False;
  end;
Para desencriptar desde la bd y mostralo en los edits
Código Delphi [-]
with Query do
  begin
    SQL.Clear;
    SQL.Text := 'select * from tabla';
    Active := True;
    if Locate('id',Encriptar(txtid.text),[]) then
    begin
      Edit2.Text := Desencriptar(FieldByName('usuario').AsString);
      Edit3.Text := Desencriptar(FieldByName('clave').AsString);
      Edit4.Text := Desencriptar(FieldByName('acceso').AsString);
      Edit5.Text := Desencriptar(FieldByName('....').AsString);
    end;
    Active := False;
  end;

Bueno espero que sirva de algo, esta es la forma más parecida a como se está usando en la aplicación que se está en discusion en este foro, ademas cada uno puede adaptarlo de acuerdo a la nesesidad.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Proyecto personal, opiniones para encarar una pantalla. juliannemiro Varios 13 06-06-2012 03:32:04
Necesito Testimonios u opiniones para un Proyecto Inge022 La Taberna 0 13-03-2010 05:35:50
Utilidades para mejorar el IDE de Delphi martinzcr Varios 1 14-09-2007 12:43:40
Para mejorar el currículum Pablo Carlos Humor 3 02-09-2005 16:46:34
Opiniones sobre el Firebird 1.5RC3 para aplicaciones web victork_py Firebird e Interbase 2 04-07-2003 14:54:45


La franja horaria es GMT +2. Ahora son las 00:23:49.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi