Código
e a terceira descriptografa. Voce pode sempre mudar a chave como preferir.
Espero ter sido de ajuda - M C Zanetti}
//funcao que retorno o código ASCII dos caracteres
function AsciiToInt(Caracter: Char): Integer;
var
i: Integer;
begin
i := 32;
while i < 255 do begin
if Chr(i) = Caracter then
Break;
i := i + 1;
end;
Result := i;
end;
{ Esta funcao tem como objetivo criptografar uma string utilizando o código ASCII de cada caracter e
somando a esse código o valor da CHAVE}
Function Criptografa(texto:string;chave:integer):String;
var
cont:integer;
retorno:string;
begin
if (trim(texto)=EmptyStr) or (chave=0) then begin
result:=texto;
end else begin
retorno:='';
for cont:=1 to length(texto) do begin
retorno:=retorno+chr(asciitoint(texto[cont])+chave);
end;
result:=retorno;
end;
end;
{Esta funcao é semelhante a funcao de Criptografia mais com o objetivo de descriptografar a string }
Function DesCriptografa(texto:string;chave:integer):String;
var
cont:integer;
retorno:string;
begin
if (trim(texto)=EmptyStr) or (chave=0) then begin
result:=texto;
end else begin
retorno:='';
for cont:=1 to length(texto) do begin
retorno:=retorno+chr(asciitoint(texto[cont])-chave);
end;
result:=retorno;
end;
end;
{Exemplo de Utilização das funcoes}
data_inicio:=criptografa(strtran(datetostr(date),'/',''),108); //esta linha criptografa a data, somando ao codigo ASCII 108 posicoes
data_inicio:=DesCriptografa(inicio,108); //esta linha descriptografa a data, retirando as mesmas 108 posicoes
Dica: Em um mesmo campo ou string utilize sempre a mesma chave para criptografar e descriptografar.
Planeta Delphi - www.planetadelphi.com.br - Todos os direitos reservados | Copyright 2001-2009