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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? unit1.pas

?? AES算法的完整c++源碼以及它的調(diào)用方法
?? PAS
?? 第 1 頁 / 共 5 頁
字號(hào):
///////////////////////////////////////////////////////////////////////////////
                         //AES DEMO V1.0//
                          //作者:ksaiy//
//歡迎使用由ksaiy制作的AES加密算法演示程序,此算法為標(biāo)準(zhǔn)的AES算法,你可以根據(jù)的
//的自己需要進(jìn)行變形。具體怎么操作可以登錄我們的網(wǎng)站查詢詳細(xì)的資料。我們專門為軟
//件開發(fā)者提供軟件加密安全測試服務(wù)和軟件加密解決方案,具體的可以參看我們的網(wǎng)站上
//的資料。我們的網(wǎng)站:http://www.ksaiy.com  http://www.magicoa.com
//技術(shù)支持:ksaiy@sina.com 在線QQ:40188696 UC:934155
                            //End //

                  //注意:轉(zhuǎn)載請(qǐng)保留以上信息。//                            
///////////////////////////////////////////////////////////////////////////////

unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

type
  EAESError = class(Exception);

  PInteger  = ^Integer;

  TAESBuffer = array [0..15] of byte;
  TAESKey128 = array [0..15] of byte;
  TAESKey192 = array [0..23] of byte;
  TAESKey256 = array [0..31] of byte;
  TAESExpandedKey128 = array [0..43] of longword;
  TAESExpandedKey192 = array [0..53] of longword;
  TAESExpandedKey256 = array [0..63] of longword;

  PAESBuffer =^TAESBuffer;
  PAESKey128 =^TAESKey128;
  PAESKey192 =^TAESKey192;
  PAESKey256 =^TAESKey256;
  PAESExpandedKey128 =^TAESExpandedKey128;
  PAESExpandedKey192 =^TAESExpandedKey192;
  PAESExpandedKey256 =^TAESExpandedKey256;

procedure ExpandAESKeyForEncryption(const Key: TAESKey128;
  var ExpandedKey: TAESExpandedKey128); overload;
procedure ExpandAESKeyForEncryption(const Key: TAESKey192;
  var ExpandedKey: TAESExpandedKey192); overload;
procedure ExpandAESKeyForEncryption(const Key: TAESKey256;
  var ExpandedKey: TAESExpandedKey256); overload;
procedure EncryptAES(const InBuf: TAESBuffer; const Key: TAESExpandedKey128;
  var OutBuf: TAESBuffer); overload;
procedure EncryptAES(const InBuf: TAESBuffer; const Key: TAESExpandedKey192;
  var OutBuf: TAESBuffer); overload;
procedure EncryptAES(const InBuf: TAESBuffer; const Key: TAESExpandedKey256;
  var OutBuf: TAESBuffer); overload;
procedure EncryptAESStreamECB(Source: TStream; Count: cardinal;
  const Key: TAESKey128; Dest: TStream); overload;
procedure EncryptAESStreamECB(Source: TStream; Count: cardinal;
  const ExpandedKey: TAESExpandedKey128; Dest: TStream); overload;
procedure EncryptAESStreamECB(Source: TStream; Count: cardinal;
  const Key: TAESKey192; Dest: TStream); overload;
procedure EncryptAESStreamECB(Source: TStream; Count: cardinal;
  const ExpandedKey: TAESExpandedKey192; Dest: TStream); overload;
procedure EncryptAESStreamECB(Source: TStream; Count: cardinal;
  const Key: TAESKey256; Dest: TStream); overload;
procedure EncryptAESStreamECB(Source: TStream; Count: cardinal;
  const ExpandedKey: TAESExpandedKey256; Dest: TStream); overload;
procedure EncryptAESStreamCBC(Source: TStream; Count: cardinal;
  const Key: TAESKey128; const InitVector: TAESBuffer; Dest: TStream); overload;
procedure EncryptAESStreamCBC(Source: TStream; Count: cardinal;
  const ExpandedKey: TAESExpandedKey128;  const InitVector: TAESBuffer;
  Dest: TStream); overload;
procedure EncryptAESStreamCBC(Source: TStream; Count: cardinal;
  const Key: TAESKey192; const InitVector: TAESBuffer; Dest: TStream); overload;
procedure EncryptAESStreamCBC(Source: TStream; Count: cardinal;
  const ExpandedKey: TAESExpandedKey192;  const InitVector: TAESBuffer;
  Dest: TStream); overload;
procedure EncryptAESStreamCBC(Source: TStream; Count: cardinal;
  const Key: TAESKey256; const InitVector: TAESBuffer; Dest: TStream); overload;
procedure EncryptAESStreamCBC(Source: TStream; Count: cardinal;
  const ExpandedKey: TAESExpandedKey256;  const InitVector: TAESBuffer;
  Dest: TStream); overload;
procedure ExpandAESKeyForDecryption(var ExpandedKey: TAESExpandedKey128); overload;
procedure ExpandAESKeyForDecryption(const Key: TAESKey128;
  var ExpandedKey: TAESExpandedKey128); overload;
procedure ExpandAESKeyForDecryption(var ExpandedKey: TAESExpandedKey192); overload;
procedure ExpandAESKeyForDecryption(const Key: TAESKey192;
  var ExpandedKey: TAESExpandedKey192); overload;
procedure ExpandAESKeyForDecryption(var ExpandedKey: TAESExpandedKey256); overload;
procedure ExpandAESKeyForDecryption(const Key: TAESKey256;
  var ExpandedKey: TAESExpandedKey256); overload;
procedure DecryptAES(const InBuf: TAESBuffer; const Key: TAESExpandedKey128;
  var OutBuf: TAESBuffer); overload;
procedure DecryptAES(const InBuf: TAESBuffer; const Key: TAESExpandedKey192;
  var OutBuf: TAESBuffer); overload;
procedure DecryptAES(const InBuf: TAESBuffer; const Key: TAESExpandedKey256;
  var OutBuf: TAESBuffer); overload;
procedure DecryptAESStreamECB(Source: TStream; Count: cardinal;
  const Key: TAESKey128; Dest: TStream); overload;
procedure DecryptAESStreamECB(Source: TStream; Count: cardinal;
  const ExpandedKey: TAESExpandedKey128; Dest: TStream); overload;
procedure DecryptAESStreamECB(Source: TStream; Count: cardinal;
  const Key: TAESKey192; Dest: TStream); overload;
procedure DecryptAESStreamECB(Source: TStream; Count: cardinal;
  const ExpandedKey: TAESExpandedKey192; Dest: TStream); overload;
procedure DecryptAESStreamECB(Source: TStream; Count: cardinal;
  const Key: TAESKey256; Dest: TStream); overload;
procedure DecryptAESStreamECB(Source: TStream; Count: cardinal;
  const ExpandedKey: TAESExpandedKey256; Dest: TStream); overload;
procedure DecryptAESStreamCBC(Source: TStream; Count: cardinal;
  const Key: TAESKey128; const InitVector: TAESBuffer; Dest: TStream); overload;
procedure DecryptAESStreamCBC(Source: TStream; Count: cardinal;
  const ExpandedKey: TAESExpandedKey128;  const InitVector: TAESBuffer;
  Dest: TStream); overload;
procedure DecryptAESStreamCBC(Source: TStream; Count: cardinal;
  const Key: TAESKey192; const InitVector: TAESBuffer; Dest: TStream); overload;
procedure DecryptAESStreamCBC(Source: TStream; Count: cardinal;
  const ExpandedKey: TAESExpandedKey192;  const InitVector: TAESBuffer;
  Dest: TStream); overload;
procedure DecryptAESStreamCBC(Source: TStream; Count: cardinal;
  const Key: TAESKey256; const InitVector: TAESBuffer; Dest: TStream); overload;
procedure DecryptAESStreamCBC(Source: TStream; Count: cardinal;
  const ExpandedKey: TAESExpandedKey256;  const InitVector: TAESBuffer;
  Dest: TStream); overload;

resourcestring
  SInvalidInBufSize = 'Invalid buffer size for decryption';
  SReadError = 'Stream read error';
  SWriteError = 'Stream write error';

var
  Form1: TForm1;

implementation

{$R *.dfm}

type
  PLongWord = ^LongWord;

function Min(A, B: integer): integer;
begin
  if A < B then
    Result := A
  else
    Result := B;
end;

const
  Rcon: array [1..30] of longword = (
    $00000001, $00000002, $00000004, $00000008, $00000010, $00000020,
    $00000040, $00000080, $0000001B, $00000036, $0000006C, $000000D8,
    $000000AB, $0000004D, $0000009A, $0000002F, $0000005E, $000000BC,
    $00000063, $000000C6, $00000097, $00000035, $0000006A, $000000D4,
    $000000B3, $0000007D, $000000FA, $000000EF, $000000C5, $00000091
  );

  ForwardTable: array [0..255] of longword = (
    $A56363C6, $847C7CF8, $997777EE, $8D7B7BF6, $0DF2F2FF, $BD6B6BD6, $B16F6FDE, $54C5C591,
    $50303060, $03010102, $A96767CE, $7D2B2B56, $19FEFEE7, $62D7D7B5, $E6ABAB4D, $9A7676EC,
    $45CACA8F, $9D82821F, $40C9C989, $877D7DFA, $15FAFAEF, $EB5959B2, $C947478E, $0BF0F0FB,
    $ECADAD41, $67D4D4B3, $FDA2A25F, $EAAFAF45, $BF9C9C23, $F7A4A453, $967272E4, $5BC0C09B,
    $C2B7B775, $1CFDFDE1, $AE93933D, $6A26264C, $5A36366C, $413F3F7E, $02F7F7F5, $4FCCCC83,
    $5C343468, $F4A5A551, $34E5E5D1, $08F1F1F9, $937171E2, $73D8D8AB, $53313162, $3F15152A,
    $0C040408, $52C7C795, $65232346, $5EC3C39D, $28181830, $A1969637, $0F05050A, $B59A9A2F,
    $0907070E, $36121224, $9B80801B, $3DE2E2DF, $26EBEBCD, $6927274E, $CDB2B27F, $9F7575EA,
    $1B090912, $9E83831D, $742C2C58, $2E1A1A34, $2D1B1B36, $B26E6EDC, $EE5A5AB4, $FBA0A05B,
    $F65252A4, $4D3B3B76, $61D6D6B7, $CEB3B37D, $7B292952, $3EE3E3DD, $712F2F5E, $97848413,
    $F55353A6, $68D1D1B9, $00000000, $2CEDEDC1, $60202040, $1FFCFCE3, $C8B1B179, $ED5B5BB6,
    $BE6A6AD4, $46CBCB8D, $D9BEBE67, $4B393972, $DE4A4A94, $D44C4C98, $E85858B0, $4ACFCF85,
    $6BD0D0BB, $2AEFEFC5, $E5AAAA4F, $16FBFBED, $C5434386, $D74D4D9A, $55333366, $94858511,
    $CF45458A, $10F9F9E9, $06020204, $817F7FFE, $F05050A0, $443C3C78, $BA9F9F25, $E3A8A84B,
    $F35151A2, $FEA3A35D, $C0404080, $8A8F8F05, $AD92923F, $BC9D9D21, $48383870, $04F5F5F1,
    $DFBCBC63, $C1B6B677, $75DADAAF, $63212142, $30101020, $1AFFFFE5, $0EF3F3FD, $6DD2D2BF,
    $4CCDCD81, $140C0C18, $35131326, $2FECECC3, $E15F5FBE, $A2979735, $CC444488, $3917172E,
    $57C4C493, $F2A7A755, $827E7EFC, $473D3D7A, $AC6464C8, $E75D5DBA, $2B191932, $957373E6,
    $A06060C0, $98818119, $D14F4F9E, $7FDCDCA3, $66222244, $7E2A2A54, $AB90903B, $8388880B,
    $CA46468C, $29EEEEC7, $D3B8B86B, $3C141428, $79DEDEA7, $E25E5EBC, $1D0B0B16, $76DBDBAD,
    $3BE0E0DB, $56323264, $4E3A3A74, $1E0A0A14, $DB494992, $0A06060C, $6C242448, $E45C5CB8,
    $5DC2C29F, $6ED3D3BD, $EFACAC43, $A66262C4, $A8919139, $A4959531, $37E4E4D3, $8B7979F2,
    $32E7E7D5, $43C8C88B, $5937376E, $B76D6DDA, $8C8D8D01, $64D5D5B1, $D24E4E9C, $E0A9A949,
    $B46C6CD8, $FA5656AC, $07F4F4F3, $25EAEACF, $AF6565CA, $8E7A7AF4, $E9AEAE47, $18080810,
    $D5BABA6F, $887878F0, $6F25254A, $722E2E5C, $241C1C38, $F1A6A657, $C7B4B473, $51C6C697,
    $23E8E8CB, $7CDDDDA1, $9C7474E8, $211F1F3E, $DD4B4B96, $DCBDBD61, $868B8B0D, $858A8A0F,
    $907070E0, $423E3E7C, $C4B5B571, $AA6666CC, $D8484890, $05030306, $01F6F6F7, $120E0E1C,
    $A36161C2, $5F35356A, $F95757AE, $D0B9B969, $91868617, $58C1C199, $271D1D3A, $B99E9E27,
    $38E1E1D9, $13F8F8EB, $B398982B, $33111122, $BB6969D2, $70D9D9A9, $898E8E07, $A7949433,
    $B69B9B2D, $221E1E3C, $92878715, $20E9E9C9, $49CECE87, $FF5555AA, $78282850, $7ADFDFA5,
    $8F8C8C03, $F8A1A159, $80898909, $170D0D1A, $DABFBF65, $31E6E6D7, $C6424284, $B86868D0,
    $C3414182, $B0999929, $772D2D5A, $110F0F1E, $CBB0B07B, $FC5454A8, $D6BBBB6D, $3A16162C

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产亚洲欧洲一区高清在线观看| 久久久久国产精品麻豆| 国产精品一二一区| 亚洲资源在线观看| 日韩欧美国产一区在线观看| 成a人片亚洲日本久久| 久久精品国产亚洲高清剧情介绍| 18欧美亚洲精品| 久久亚洲一区二区三区明星换脸 | 亚洲最快最全在线视频| www国产成人| 91精品久久久久久久久99蜜臂| 国产精品一级二级三级| 奇米影视在线99精品| 亚洲综合久久久久| 国产精品嫩草99a| 欧美一区二区久久久| 99亚偷拍自图区亚洲| 国产毛片精品国产一区二区三区| 日韩激情av在线| 亚洲一区二区三区国产| 亚洲激情中文1区| 国产精品私人影院| 国产日韩欧美一区二区三区综合| 在线成人av网站| 在线观看日韩一区| 色综合天天综合网国产成人综合天 | 国产精品久久久久7777按摩| 久久先锋影音av鲁色资源| 日韩一级高清毛片| 日韩午夜在线播放| 日韩午夜小视频| 日韩欧美第一区| 日韩色在线观看| 日韩一区二区免费在线观看| 欧美一卡二卡在线观看| 欧美一区二区视频在线观看2020| 欧美性生活久久| 欧美男女性生活在线直播观看| 欧美视频一二三区| 欧美日本一区二区在线观看| 欧美精品自拍偷拍动漫精品| 欧美无人高清视频在线观看| 欧美日韩国产综合一区二区 | 视频一区二区不卡| 免费观看久久久4p| 韩国三级中文字幕hd久久精品| 久久99精品国产| 国产一区二区0| 国产福利一区二区三区视频| 国产91高潮流白浆在线麻豆| 9人人澡人人爽人人精品| 色综合久久天天| 在线观看日韩电影| 91精品国产91热久久久做人人| 日韩视频免费直播| 国产三级欧美三级日产三级99| 日本一区二区免费在线| 亚洲精选一二三| 午夜视频一区在线观看| 免费视频最近日韩| 粉嫩一区二区三区在线看| 色综合久久综合网| 欧美蜜桃一区二区三区| 日韩精品一区二区三区蜜臀| 欧美激情一区二区三区| 亚洲精品久久久久久国产精华液| 亚洲不卡一区二区三区| 黑人巨大精品欧美一区| k8久久久一区二区三区| 欧美日韩国产精选| 国产亚洲综合在线| 亚洲一区在线观看网站| 久久99精品久久久| 99精品久久久久久| 6080国产精品一区二区| 国产日韩影视精品| 亚洲午夜一区二区三区| 韩国午夜理伦三级不卡影院| 色婷婷av一区二区三区大白胸| 欧美精品第1页| 国产精品久久久久久久久动漫| 亚洲成人激情自拍| 国产一区不卡视频| 欧美日韩一区三区| 亚洲国产精品国自产拍av| 五月天婷婷综合| 成人av在线影院| 日韩欧美一区二区久久婷婷| 自拍偷拍国产精品| 精品一区二区三区香蕉蜜桃 | 国产91丝袜在线18| 欧美日韩精品欧美日韩精品| 精品国产免费人成电影在线观看四季 | 国产在线视频精品一区| 欧美视频一区二区三区四区| 中文成人av在线| 天天爽夜夜爽夜夜爽精品视频| 国产+成+人+亚洲欧洲自线| 在线播放国产精品二区一二区四区 | 欧美性受xxxx| 国产精品初高中害羞小美女文| 日韩综合小视频| 色综合天天综合| 久久婷婷一区二区三区| 婷婷久久综合九色综合绿巨人| 成人白浆超碰人人人人| 日韩欧美一二区| 性久久久久久久久| 色综合久久99| 中文字幕视频一区二区三区久| 韩国理伦片一区二区三区在线播放| 欧美午夜免费电影| 亚洲日本中文字幕区| 国产高清在线精品| 欧美v亚洲v综合ⅴ国产v| 亚洲成人777| 欧美在线观看一区| 最新国产精品久久精品| 国产最新精品精品你懂的| 日韩免费视频线观看| 日韩激情中文字幕| 欧美日韩一区中文字幕| 亚洲国产成人av好男人在线观看| 99久久综合色| 国产精品美女一区二区三区| 国产福利一区二区三区在线视频| 欧美成人官网二区| 久久精品久久久精品美女| 日韩精品一区二区在线观看| 日韩国产欧美三级| 日韩欧美成人午夜| 蜜桃视频第一区免费观看| 欧美一区二区在线不卡| 日本在线播放一区二区三区| 欧美乱妇一区二区三区不卡视频| 亚洲综合丝袜美腿| 欧美吞精做爰啪啪高潮| 丝袜亚洲精品中文字幕一区| 欧美精品aⅴ在线视频| 日韩精品国产欧美| 欧美一区二区美女| 狠狠色丁香九九婷婷综合五月| 日韩欧美色综合| 国产真实乱偷精品视频免| 国产日韩v精品一区二区| 国产不卡视频在线观看| 亚洲欧洲av在线| 91久久精品一区二区三区| 亚洲一区二区av电影| 欧美日韩大陆在线| 日本美女视频一区二区| 欧美成人精品3d动漫h| 国产激情精品久久久第一区二区 | 欧美aaa在线| 欧美电视剧在线看免费| 狠狠色狠狠色综合| 亚洲欧洲成人自拍| 欧美巨大另类极品videosbest| 日韩不卡一二三区| 久久综合久久综合久久综合| 成人免费va视频| 亚洲国产色一区| 精品女同一区二区| 粉嫩在线一区二区三区视频| 尤物av一区二区| 欧美一区二区三区思思人| 国产一区二区女| 亚洲欧洲国产日韩| 日韩欧美三级在线| 91免费视频网址| 日本成人中文字幕在线视频| 欧美国产精品中文字幕| 在线观看日产精品| 国内精品久久久久影院一蜜桃| 国产精品你懂的在线欣赏| 欧美日韩一区二区电影| 国产一区二区精品久久99| 亚洲综合男人的天堂| 26uuu欧美日本| 欧洲视频一区二区| 激情综合五月婷婷| 亚洲国产一二三| 国产日产亚洲精品系列| 欧美丰满美乳xxx高潮www| 不卡视频在线看| 麻豆91在线播放| 一区二区三区小说| 国产亚洲一区二区三区四区 | 91丨porny丨首页| 九九久久精品视频| 亚洲一区精品在线| 国产蜜臀97一区二区三区 | 中文字幕在线一区| 欧美mv日韩mv国产网站app| 色噜噜狠狠一区二区三区果冻| 狠狠狠色丁香婷婷综合久久五月| 亚洲成人一区在线| 国产精品久久久久久久岛一牛影视| 精品欧美一区二区久久|