⼀种简单的字符串加密和解密算法
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
const
XorKey:array[0..7] of Byte=(B2,09,AA,55,$93,6D,84,$47);
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Edit1: TEdit;
Edit2: TEdit;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
密码字符串是什么
{ Public declarations }
function Encrypt(Str: string): string;
function Decrypt(Str: string): string;
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
function TForm1.Encrypt(Str: string): string;//加密算法
var
i,j:Integer;
begin
Result := '';
j := 0;
for i := 1to Length(Str) do
begin
Result := Result + IntToHex(Byte(Str[i]) xor XorKey[j],2);
j := (j + 1) mod8;
end;
end;
function TForm1.Decrypt(Str: string): string;//解密算法
var
i,j:Integer;
begin
Result := '';
j := 0;
for i := 1to Length(Str) div2do
begin
Result := Result + Char(StrToInt('$'+Copy(Str,i*2-1,2)) xor XorKey[j]);
j := (j + 1) mod8;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Edit2.Text :=Encrypt(Edit1.Text);
end;
procedure TForm1.Button2Click(Sender: TObject); begin
Edit1.Text := Decrypt(Edit2.Text);
end;
end.
Processing math: 100%

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。