亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? unit1.pas

?? des的delphi實現 由delphi編程 控件實現
?? PAS
?? 第 1 頁 / 共 2 頁
字號:
    cycleMove(key28l, bitDisplace[i]);
    cycleMove(key28r, bitDisplace[i]);
    key56o[0] := (key28l[0] shl 4) or (key28l[1] shr 4);
    key56o[1] := (key28l[1] shl 4) or (key28l[2] shr 4);
    key56o[2] := (key28l[2] shl 4) or (key28l[3] shr 4);
    key56o[3] := (key28l[3] shl 4) or (key28r[0]);
    key56o[4] := key28r[1];
    key56o[5] := key28r[2];
    key56o[6] := key28r[3];
    permutationChoose2(key56o, outKey[i]);
  end;
end;

procedure encry(inData, subKey: array of Byte;
   var outData: array of Byte);
var
  outBuf: array[0..5] of Byte;
  buf: array[0..7] of Byte;
  i: Integer;
begin
  expand(inData, outBuf);
  for i := 0 to 5 do outBuf[i] := outBuf[i] xor subKey[i];
  buf[0] := outBuf[0] shr 2;
  buf[1] := ((outBuf[0] and $03) shl 4) or (outBuf[1] shr 4);
  buf[2] := ((outBuf[1] and $0f) shl 2) or (outBuf[2] shr 6);
  buf[3] := outBuf[2] and $3f;
  buf[4] := outBuf[3] shr 2;
  buf[5] := ((outBuf[3] and $03) shl 4) or (outBuf[4] shr 4);
  buf[6] := ((outBuf[4] and $0f) shl 2) or (outBuf[5] shr 6);
  buf[7] := outBuf[5] and $3f;                                
  for i := 0 to 7 do buf[i] := si(i, buf[i]);
  for i := 0 to 3 do outBuf[i] := (buf[i*2] shl 4) or buf[i*2+1];
  permutation(outBuf);
  for i := 0 to 3 do outData[i] := outBuf[i];
end;

procedure desData(desMode: TDesMode;
  inData: array of Byte; var outData: array of Byte);
// inData, outData 都為8Bytes,否則出錯
var
  i, j: Integer;
  temp, buf: array[0..3] of Byte;
begin
  for i := 0 to 7 do outData[i] := inData[i];
  initPermutation(outData);
  if desMode = dmEncry then
  begin
    for i := 0 to 15 do
    begin
      for j := 0 to 3 do temp[j] := outData[j];                 //temp = Ln
      for j := 0 to 3 do outData[j] := outData[j + 4];	        //Ln+1 = Rn
      encry(outData, subKey[i], buf);                           //Rn ==Kn==> buf
      for j := 0 to 3 do outData[j + 4] := temp[j] xor buf[j];  //Rn+1 = Ln^buf
    end;

    for j := 0 to 3 do temp[j] := outData[j + 4];
    for j := 0 to 3 do outData[j + 4] := outData[j];
    for j := 0 to 3 do outData[j] := temp[j];
  end
  else if desMode = dmDecry then
  begin
    for i := 15 downto 0 do
    begin
      for j := 0 to 3 do temp[j] := outData[j];
      for j := 0 to 3 do outData[j] := outData[j + 4];
      encry(outData, subKey[i], buf);
      for j := 0 to 3 do outData[j + 4] := temp[j] xor buf[j];
    end;
    for j := 0 to 3 do temp[j] := outData[j + 4];
    for j := 0 to 3 do outData[j + 4] := outData[j];
    for j := 0 to 3 do outData[j] := temp[j];
  end;
  conversePermutation(outData);
end;

//////////////////////////////////////////////////////////////

function EncryStr(Str, Key: String): String;
var
  StrByte, OutByte, KeyByte: array[0..7] of Byte;
  StrResult: String;
  I, J: Integer;
begin
  if (Length(Str) > 0) and (Ord(Str[Length(Str)]) = 0) then
    raise Exception.Create('Error: the last char is NULL char.');
  if Length(Key) < 8 then
    while Length(Key) < 8 do Key := Key + Chr(0);
  while Length(Str) mod 8 <> 0 do Str := Str + Chr(0);

  for J := 0 to 7 do KeyByte[J] := Ord(Key[J + 1]);
  makeKey(keyByte, subKey);

  StrResult := '';

  for I := 0 to Length(Str) div 8 - 1 do
  begin
    for J := 0 to 7 do
      StrByte[J] := Ord(Str[I * 8 + J + 1]);
    desData(dmEncry, StrByte, OutByte);
    for J := 0 to 7 do
      StrResult := StrResult + Chr(OutByte[J]);
  end;

  Result := StrResult;
end;

function DecryStr(Str, Key: String): String;
var
  StrByte, OutByte, KeyByte: array[0..7] of Byte;
  StrResult: String;
  I, J: Integer;
begin
  if Length(Key) < 8 then
    while Length(Key) < 8 do Key := Key + Chr(0);

  for J := 0 to 7 do KeyByte[J] := Ord(Key[J + 1]);
  makeKey(keyByte, subKey);

  StrResult := '';

  for I := 0 to Length(Str) div 8 - 1 do
  begin
    for J := 0 to 7 do StrByte[J] := Ord(Str[I * 8 + J + 1]);
    desData(dmDecry, StrByte, OutByte);
    for J := 0 to 7 do
      StrResult := StrResult + Chr(OutByte[J]);
  end;
  while (Length(StrResult) > 0) and
    (Ord(StrResult[Length(StrResult)]) = 0) do
    Delete(StrResult, Length(StrResult), 1);
  Result := StrResult;
end;

///////////////////////////////////////////////////////////

function EncryStrHex(Str, Key: String): String;
var
  StrResult, TempResult, Temp: String;
  I: Integer;
begin
  TempResult := EncryStr(Str, Key);
  StrResult := '';
  for I := 0 to Length(TempResult) - 1 do
  begin
    Temp := Format('%x', [Ord(TempResult[I + 1])]);
    if Length(Temp) = 1 then Temp := '0' + Temp;
    StrResult := StrResult + Temp;
  end;
  Result := StrResult;
end;

function DecryStrHex(StrHex, Key: String): String;
  function HexToInt(Hex: String): Integer;
  var
    I, Res: Integer;
    ch: Char;
  begin
    Res := 0;
    for I := 0 to Length(Hex) - 1 do
    begin
      ch := Hex[I + 1];
      if (ch >= '0') and (ch <= '9') then
        Res := Res * 16 + Ord(ch) - Ord('0')
      else if (ch >= 'A') and (ch <= 'F') then
        Res := Res * 16 + Ord(ch) - Ord('A') + 10
      else if (ch >= 'a') and (ch <= 'f') then
        Res := Res * 16 + Ord(ch) - Ord('a') + 10
      else raise Exception.Create('Error: not a Hex String');
    end;
    Result := Res;
  end;

var
  Str, Temp: String;
  I: Integer;
begin
  Str := '';
  for I := 0 to Length(StrHex) div 2 - 1 do
  begin
    Temp := Copy(StrHex, I * 2 + 1, 2);
    Str := Str + Chr(HexToInt(Temp));
  end;
  Result := DecryStr(Str, Key);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
//function EncryStrHex(Str, Key: String): String;
//這里的Str表示你要進行加密的字符串,Key表示密鑰;
//function DecryStrHex(StrHex, Key: String): String;
//這里的Str表示你要進行解密的字符串,Key表示密鑰;
if EncryStrhex(Edit1.Text,'ksaiy')=Edit2.Text then //這里的ksaiy是密鑰,你可以設置自己的密鑰。
  ShowMessage('注冊成功!')
else
  ShowMessage('注冊失敗!');
///////////////////////////////////////////////////////////////////////////////
                         //Des DEMO V1.0//
                          //作者:ksaiy//
//歡迎使用由ksaiy制作的DES加密算法演示程序,此算法為標準的DES算法,你可以根據的
//的自己需要進行變形。具體怎么操作可以登錄我們的網站查詢詳細的資料。我們專門為軟
//件開發者提供軟件加密安全測試服務和軟件加密解決方案,具體的可以參看我們的網站上
//的資料。我們的網站:http://www.ksaiy.com  http://www.magicoa.com
//技術支持:ksaiy@sina.com 在線QQ:40188696 UC:934155
                            //End //

                  //注意:轉載請保留以上信息。//
///////////////////////////////////////////////////////////////////////////////
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
Close;
end;

end.































///////////////////////////////////////////////////////////////////////////////
                         //Des DEMO V1.0//
                          //作者:ksaiy//
//歡迎使用由ksaiy制作的DES加密算法演示程序,此算法為標準的DES算法,你可以根據的
//的自己需要進行變形。具體怎么操作可以登錄我們的網站查詢詳細的資料。我們專門為軟
//件開發者提供軟件加密安全測試服務和軟件加密解決方案,具體的可以參看我們的網站上
//的資料。我們的網站:http://www.ksaiy.com  http://www.magicoa.com
//技術支持:ksaiy@sina.com 在線QQ:40188696 UC:934155
                            //End //

                  //注意:轉載請保留以上信息。//                            
///////////////////////////////////////////////////////////////////////////////

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩免费电影网站| 久久青草欧美一区二区三区| 亚洲女人的天堂| 成人动漫视频在线| 中文字幕免费一区| 国产精品1区2区3区| 久久综合九色综合97_久久久| 美腿丝袜在线亚洲一区| 欧美一区在线视频| 美腿丝袜在线亚洲一区| 欧美xfplay| 国产乱人伦精品一区二区在线观看| 精品欧美久久久| 国产在线视频不卡二| 久久综合九色综合97婷婷| 国产激情精品久久久第一区二区| 久久色中文字幕| 高清国产午夜精品久久久久久| 欧美国产综合色视频| 成人av在线看| 一区二区三区不卡在线观看| 91成人国产精品| 同产精品九九九| 日韩一级欧美一级| 久久精品99国产精品| 久久综合色综合88| proumb性欧美在线观看| 亚洲丝袜美腿综合| 欧美日韩在线免费视频| 视频在线在亚洲| 26uuu成人网一区二区三区| 国产传媒欧美日韩成人| 国产婷婷色一区二区三区四区| 成人深夜视频在线观看| 一区二区三区在线观看国产 | 国产mv日韩mv欧美| 国产精品久久久久一区| 色老汉av一区二区三区| 午夜国产精品影院在线观看| 欧美tickling网站挠脚心| 国产精品亚洲视频| 亚洲人成精品久久久久久| 欧美日韩一二三| 久久狠狠亚洲综合| 国产精品久久久久影院老司| 欧美日韩在线播放一区| 久久99国产精品成人| 国产精品视频线看| 日本丰满少妇一区二区三区| 美女视频一区在线观看| 国产精品丝袜一区| 欧美日韩一区二区在线视频| 久草这里只有精品视频| 亚洲视频一区二区在线| 欧美日韩大陆在线| 国产成人综合自拍| 亚洲国产精品久久艾草纯爱| 久久色视频免费观看| 91福利在线播放| 久久不见久久见中文字幕免费| 国产精品久久网站| 91精品国产91久久久久久一区二区| 国产91在线观看| 亚洲18影院在线观看| 欧美高清在线精品一区| 91精品在线一区二区| av爱爱亚洲一区| 免费在线看一区| 亚洲视频免费在线| 欧美成人一区二区三区在线观看 | 成人av中文字幕| 日本va欧美va精品发布| 中文字幕一区二区三区四区| 91精品国产91久久久久久一区二区 | 久久综合狠狠综合久久综合88| 色综合一个色综合亚洲| 韩国欧美国产一区| 亚洲一二三区在线观看| 欧美国产精品劲爆| 日韩欧美不卡在线观看视频| 色婷婷综合视频在线观看| 久久99精品视频| 亚洲在线视频一区| 亚洲国产成人私人影院tom| 日韩午夜电影在线观看| 91原创在线视频| 国产一区二区伦理片| 午夜精品成人在线视频| 最新国产成人在线观看| 337p粉嫩大胆色噜噜噜噜亚洲| 欧美综合亚洲图片综合区| 成人一道本在线| 久久99久久精品欧美| 亚洲电影一级黄| 亚洲人成7777| 国产拍揄自揄精品视频麻豆| 日韩亚洲欧美一区二区三区| 欧洲一区在线电影| av电影在线观看不卡| 国产一区美女在线| 日本欧美久久久久免费播放网| 亚洲最大色网站| 国产精品久久久久精k8| 久久蜜桃av一区二区天堂| 91精品国产综合久久小美女| 欧美午夜电影网| 一本色道久久综合亚洲精品按摩| 成人激情午夜影院| 懂色av一区二区三区蜜臀| 国产真实乱对白精彩久久| 六月丁香婷婷色狠狠久久| 日韩国产精品久久| 天天色天天操综合| 亚洲高清久久久| 一级日本不卡的影视| 亚洲麻豆国产自偷在线| 国产精品成人免费精品自在线观看| 久久久久久夜精品精品免费| 精品国精品国产| 日韩欧美久久一区| 日韩欧美视频在线| 欧美成人一区二区三区片免费 | 欧美日韩国产天堂| 欧美日韩电影一区| 在线不卡欧美精品一区二区三区| 欧美亚洲日本国产| 欧美午夜视频网站| 欧美区一区二区三区| 欧美日韩精品一区二区天天拍小说| 色呦呦一区二区三区| 色天天综合久久久久综合片| 99re在线视频这里只有精品| 91美女精品福利| 91福利国产精品| 欧美日韩一区高清| 欧美一区二区视频观看视频| 欧美一区二区啪啪| 欧美videos中文字幕| 久久精品亚洲一区二区三区浴池| 国产亚洲一区字幕| 国产精品久久久久影视| 亚洲色图视频网站| 亚洲影院理伦片| 日韩专区在线视频| 久久99精品久久只有精品| 国产成人综合网| 91麻豆国产福利在线观看| 欧美系列亚洲系列| 欧美乱妇20p| 精品粉嫩aⅴ一区二区三区四区| 精品av综合导航| 国产精品理论片| 一区二区三区资源| 天天综合网天天综合色| 蜜桃一区二区三区在线观看| 国产综合色视频| 成人午夜av影视| 色94色欧美sute亚洲线路一ni| 欧美精品电影在线播放| 久久影院电视剧免费观看| 中文字幕一区二区三区在线播放 | 国产精品人成在线观看免费| 亚洲三级电影网站| 亚洲福利一区二区三区| 免费美女久久99| 成人午夜激情视频| 欧美亚洲动漫精品| 日韩精品中文字幕一区二区三区 | 国产一区999| 99re成人在线| 欧美一区二区在线看| 国产欧美va欧美不卡在线| 一区二区免费在线播放| 麻豆精品一二三| 国产精品77777| 欧美午夜影院一区| 精品国产免费一区二区三区四区 | 久久久青草青青国产亚洲免观| 亚洲欧洲精品一区二区三区不卡| 亚洲成人午夜电影| 国产一级精品在线| 色狠狠色狠狠综合| 日韩欧美一级二级三级久久久| 国产精品成人在线观看| 日韩成人一区二区三区在线观看| 国产一区三区三区| 欧美日韩久久一区| 中文字幕不卡三区| 日韩av中文在线观看| eeuss鲁片一区二区三区在线看| 欧美日韩视频在线第一区| 久久久综合激的五月天| 亚洲bdsm女犯bdsm网站| 国产成人免费在线视频| 欧美久久一区二区| 国产精品美女久久久久久久久| 石原莉奈在线亚洲三区| av亚洲精华国产精华精| 欧美成人精品1314www| 亚洲精品v日韩精品|