Como veo que la cosa ya no interesa mucho, pongo el algoritmo de cifrado.
Código Delphi
[-]
function Descifrar(Str, Clave: String): string;
var
i,j,k: integer;
begin
Result:= '';
j:= Length(Clave);
for i:= 1 to Length(Str) do
begin
if Str[i] in ['A'..'Z'] then
begin
j:= (j mod Length(Clave)) + 1;
k:= Ord(Str[i]) - Ord(Clave[j]) + Ord('0');
if k < Ord('A') then
k:= Ord('Z') - Ord('A') + k + 1;
Result:= Result + Chr(k);
end else
Result:= Result + Str[i];
end;
end;
function Cifrar(Str, Clave: String): string;
var
i,j,k: integer;
begin
Result:= '';
j:= Length(Clave);
for i:= 1 to Length(Str) do
begin
if Str[i] in ['A'..'Z'] then
begin
j:= (j mod Length(Clave)) + 1;
k:= Ord(Str[i]) + Ord(Clave[j]) - Ord('0');
if k > Ord('Z') then
k:= Ord('A') - Ord('Z') + k - 1;
Result:= Result + Chr(k);
end else
Result:= Result + Str[i];
end;
end;
Por ejemplo para descifrar el mensaje:
Código Delphi
[-]
ShowMessage(Descifrar('XLD Z QH FCSALFFK GG LYDPTZ GG YYLIT LQ NF BOVNTD EFZLNQH GGQ ADDQLUQ','5732'));