Muchas veces no se pretende un código 'profesional', hay que tener en cuenta que muchos de los que leemos este foro somos auténticos novatos. Alucino con los conocimientos de personas como el Sr. Seoane, es muy dificil llegar a comprender sus códigos, el nivel es muy alto.
Estas funciones las copié de alguien que posiblemente esté a un nivel superior, pero a mi me funcionan bien.
Guardo la clave en un fichero .ini y la recupero de él.
Código Delphi
[-]function Encriptar(clave:string):string;
var
i: byte;
claverecep,clavesal: string;
begin
claverecep := clave;
for i := 1 to Length(claverecep) do
clavesal := clavesal + CHR(255 - ord(claverecep[i]));
result := clavesal;
end;
function DesEncriptar(clave:string):string;
var
i: byte;
claverecep,clavesal: string;
begin
claverecep := clave;
for i := 1 to Length(claverecep) do
clavesal := clavesal + CHR(255-ord(claverecep[i]));
result := clavesal;
end;
Saludos.