谢谢!请问你的例子中i的最后一个值16是什么意思?将PASSWORD与一个KEY(字符串)异或一下就得到了一个简单的加密字串 将加密后的字串再与这个KEY异或一下就回到了原来的PASSWORD!var i: Integer; bBuf,bCode: Byte; For i:=0 to 16 Do Begin bBuf := Ord(pass[i]); bCode := Ord(key[i mod length(key)]); password[i] := Chr(bBuf xor bCode); End; pass-明码 password-密码
function EnDeCode(const Value : String) : String;//加密 var CharIndex : Integer; ReturnValue : String; begin ReturnValue := ''; for CharIndex := 1 to Length(Value) do begin ReturnValue := ReturnValue + chr(NOT(ord(Value[CharIndex]))); end; Result := ReturnValue; end; function DisDeCode(const Value : String) : String;//解密 var CharIndex : Integer; ReturnValue : String; begin ReturnValue := ''; for CharIndex := 1 to Length(Value) do begin ReturnValue := ReturnValue + chr(NOT(ord(Value[CharIndex]))); end; Result := ReturnValue; end;
http://www.csdn.net/Expert/topic/405/405445.shtm
将加密后的字串再与这个KEY异或一下就回到了原来的PASSWORD!var
i: Integer;
bBuf,bCode: Byte; For i:=0 to 16 Do
Begin
bBuf := Ord(pass[i]);
bCode := Ord(key[i mod length(key)]);
password[i] := Chr(bBuf xor bCode);
End;
pass-明码
password-密码
var
CharIndex : Integer;
ReturnValue : String;
begin
ReturnValue := '';
for CharIndex := 1 to Length(Value) do
begin
ReturnValue := ReturnValue + chr(NOT(ord(Value[CharIndex])));
end;
Result := ReturnValue;
end;
function DisDeCode(const Value : String) : String;//解密
var
CharIndex : Integer;
ReturnValue : String;
begin
ReturnValue := '';
for CharIndex := 1 to Length(Value) do
begin
ReturnValue := ReturnValue + chr(NOT(ord(Value[CharIndex])));
end;
Result := ReturnValue;
end;