字符加密函數

implementation

{$R *.dfm}
const
   XorKey: array[0..7] of Byte = ($B2, $09, $BB, $55, $93, $6D, $44, $47); //字符串加密用

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
   Edit2.Text:=Enc((Edit1.text));
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
   Edit3.Text:=Dec((Edit2.text));
end;

end.
 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章