zoukankan      html  css  js  c++  java
  • 一种简单的字符串加密和解密算法

    unit Unit1;

    interface

    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls;

    const
      XorKey:
    array[0..7of 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 := 1 to Length(Str) do
      
    begin
        Result :
    = Result + IntToHex(Byte(Str[i]) xor XorKey[j],2);
        j :
    = (j + 1mod 8;
      
    end;
    end;

    function TForm1.Decrypt(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 + 1mod 8;
      
    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.
  • 相关阅读:
    利用 FFmpeg 和 ImageMagick, AVI 转 GIF(不失真)
    TinyMCE textarea 输入框外部程序动态修改方法
    eclipse快速向下复制行
    ${factoryList }后面有空格不影响
    pre标签
    js备忘录_2
    eclipse 中 大小写切换:ctrl+shift+x 转为大写 ctrl+shift+y 转为小写
    js备忘录_1
    缓存
    myeclipse bug
  • 原文地址:https://www.cnblogs.com/tc310/p/1876453.html
Copyright © 2011-2022 走看看