做个最简单的例子给你吧:不过我没测试,你自己测测吧!大概这样子,可能自己设计算法也可使用已有的一些加密算法如RAS,MD5等。 Function ToPassword(AStr:String):String; var Mask:string; i:Integer; begin Result := ''; Mask := 'GragonGragonGragonGragonGragonGragonGragonGragonGragonGragonGragonGragonGragonGragonGragonGragonGragonGragonGragonGragonGragon'; for i:=1 to Length(AStr) do begin Result := Result + Char(Byte(AStr[i]) xor Byte(Mask[i])) end; end;
设加密函数为 ToPassWord(AStr:String);
则保存时可用 ToPassWord(APassword)得到密文并保存
判断用户输入密码就否正确时,可用
if ToPassWord(APassword) = GetPassWordFromFile() then.....
即,可用密文检验,没必要解密。
Function ToPassword(AStr:String):String;
var
Mask:string;
i:Integer;
begin
Result := '';
Mask := 'GragonGragonGragonGragonGragonGragonGragonGragonGragonGragonGragonGragonGragonGragonGragonGragonGragonGragonGragonGragonGragon'; for i:=1 to Length(AStr) do
begin
Result := Result + Char(Byte(AStr[i]) xor Byte(Mask[i]))
end;
end;
http://www.csdn.net/expert/topic/316/316183.shtm