简单的字符串加密和解密
程序员文章站
2024-03-14 17:31:34
...
首先定义一个常量数组 const XorKey:array[0..7] of Byte=($A1,$B7,$AC,$57,$1C,$63,$3B,$81); //字符串加密用
//在程序里加入以下两个函数, function Enc(Str:String):String;//字符加密函數 這是用的一個異或加密 var i,j:Integer; begin Result:=''; j:=0; for i:=1 to Length(Str) do begin Result:=Result+IntToHex(Byte(Str[i]) xor XorKey[j],2); j:=(j+1) mod 8; end; end;
function Dec(Str:String):String;//字符解密函數 var i,j:Integer; begin Result:=''; j:=0; for i:=1 to Length(Str) div 2 do begin Result:=Result+Char(StrToInt('$'+Copy(Str,i*2-1,2)) xor XorKey[j]); j:=(j+1) mod 8; end; end;
例子测试: procedure TForm1.Button1Click(Sender: TObject); begin if edit1.Text<>'' then begin Edit2.Text:= Enc(Edit1.text); end; end; procedure TForm1.Button2Click(Sender: TObject); begin Edit3.Text:= Dec(Edit2.text); end; end.
下一篇: C#加密解密字符串