hola de nuevo, he mejorado las funciones de cifrar y descifrar para que la pass sea alfa numérica:
Ejemplo de uso:
Se agradecen los comentarios
Código [Seleccionar]
function cifrar(cadena, Key: string): String;
var
i,j:integer;
temp:integer;
begin
Result:='';
for i:=1 to Length(cadena) do
begin
for j:=1 to length(key) do
begin
temp:= temp + ord(key[i]) + j mod i;
end;
Randseed:= temp*i+length(cadena);
if i mod 2= 0 then
Result:=Result+Chr(ord(cadena[i]) xor (temp*i+random(512)+length(cadena))+i)
else
Result:=Result+Chr(ord(cadena[i]) xor (randseed*i*random(1024)-length(cadena))-randseed) ;
end;
end;
function descifrar(cadena, Key: string): String;
var
i,j:integer;
temp:integer;
begin
Result:='';
for i:=1 to Length(cadena) do
begin
for j:=1 to length(key) do
begin
temp:= temp + ord(key[i]) + j mod i;
end;
Randseed:= temp*i+length(cadena);
if i mod 2= 0 then
Result:=Result+Chr((ord(cadena[i])-i) xor (temp*i+random(512)+length(cadena)))
else
Result:=Result+Chr((ord(cadena[i])+randseed) xor (randseed*i*random(1024)-length(cadena))) ;
end;
end;
Ejemplo de uso:
Código [Seleccionar]
showmessage(cifrar('hola mundo', 'estaesmypass')); //el resultado seria: Þ')x›vïJù
showmessage(descifrar('Þ')x›vïJù', 'estaesmypass')); //el resultado seria: 'hola mundo'
Se agradecen los comentarios