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

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

?? dcpcrypt2.pas

?? wbs43open-src.zip 數字隱藏工具
?? PAS
?? 第 1 頁 / 共 2 頁
字號:
  if (Size mod Sizeof(Buffer))<> 0 then
  begin
    read:= Stream.Read(Buffer,Size mod Sizeof(Buffer));
    Update(Buffer,read);
  end;
end;

procedure TDCP_hash.UpdateStr(const Str: string);
begin
  Update(Str[1],Length(Str));
end;

destructor TDCP_hash.Destroy;
begin
  if fInitialized then
    Burn;
  inherited Destroy;
end;


{** TDCP_cipher ***************************************************************}

procedure TDCP_cipher.DeadInt(Value: integer);
begin
end;

procedure TDCP_cipher.DeadStr(Value: string);
begin
end;

class function TDCP_cipher.GetId: integer;
begin
  Result:= -1;
end;

class function TDCP_cipher.GetAlgorithm: string;
begin
  Result:= '';
end;

class function TDCP_cipher.GetMaxKeySize: integer;
begin
  Result:= -1;
end;

class function TDCP_cipher.SelfTest: boolean;
begin
  Result:= false;
end;

procedure TDCP_cipher.Init(const Key; Size: longword; InitVector: pointer);
begin
  if fInitialized then
    Burn;
  if (Size <= 0) or ((Size and 3)<> 0) or (Size> longword(GetMaxKeySize)) then
    raise EDCP_cipher.Create('Invalid key size')
  else
    fInitialized:= true;
end;

procedure TDCP_cipher.InitStr(const Key: string; HashType: TDCP_hashclass);
var
  Hash: TDCP_hash;
  Digest: pointer;
begin
  if fInitialized then
    Burn;
  try
    GetMem(Digest,HashType.GetHashSize div 8);
    Hash:= HashType.Create(Self);
    Hash.Init;
    Hash.UpdateStr(Key);
    Hash.Final(Digest^);
    Hash.Free;
    if MaxKeySize< HashType.GetHashSize then
      Init(Digest^,MaxKeySize,nil)
    else
      Init(Digest^,HashType.GetHashSize,nil);
    FillChar(Digest^,HashType.GetHashSize div 8,$FF);
    FreeMem(Digest);
  except
    raise EDCP_cipher.Create('Unable to allocate sufficient memory for hash digest');
  end;
end;

procedure TDCP_cipher.Burn;
begin
  fInitialized:= false;
end;

procedure TDCP_cipher.Reset;
begin
end;

procedure TDCP_cipher.Encrypt(const Indata; var Outdata; Size: longword);
begin
end;

procedure TDCP_cipher.Decrypt(const Indata; var Outdata; Size: longword);
begin
end;

function TDCP_cipher.EncryptStream(InStream, OutStream: TStream; Size: longword): longword;
var
  Buffer: array[0..8191] of byte;
  i, Read: longword;
begin
  Result:= 0;
  for i:= 1 to (Size div Sizeof(Buffer)) do
  begin
    Read:= InStream.Read(Buffer,Sizeof(Buffer));
    Inc(Result,Read);
    Encrypt(Buffer,Buffer,Read);
    OutStream.Write(Buffer,Read);
  end;
  if (Size mod Sizeof(Buffer))<> 0 then
  begin
    Read:= InStream.Read(Buffer,Size mod Sizeof(Buffer));
    Inc(Result,Read);
    Encrypt(Buffer,Buffer,Read);
    OutStream.Write(Buffer,Read);
  end;
end;

function TDCP_cipher.DecryptStream(InStream, OutStream: TStream; Size: longword): longword;
var
  Buffer: array[0..8191] of byte;
  i, Read: longword;
begin
  Result:= 0;
  for i:= 1 to (Size div Sizeof(Buffer)) do
  begin
    Read:= InStream.Read(Buffer,Sizeof(Buffer));
    Inc(Result,Read);
    Decrypt(Buffer,Buffer,Read);
    OutStream.Write(Buffer,Read);
  end;
  if (Size mod Sizeof(Buffer))<> 0 then
  begin
    Read:= InStream.Read(Buffer,Size mod Sizeof(Buffer));
    Inc(Result,Read);
    Decrypt(Buffer,Buffer,Read);
    OutStream.Write(Buffer,Read);
  end;
end;

function TDCP_cipher.EncryptString(const Str: string): string;
begin
  SetLength(Result,Length(Str));
  Encrypt(Str[1],Result[1],Length(Str));
  Result:= Base64EncodeStr(Result);
end;

function TDCP_cipher.DecryptString(const Str: string): string;
begin
  Result:= Base64DecodeStr(Str);
  Decrypt(Result[1],Result[1],Length(Result));
end;

constructor TDCP_cipher.Create(AOwner: TComponent);
begin
  inherited Create(AOwner);
  Burn;
end;

destructor TDCP_cipher.Destroy;
begin
  if fInitialized then
    Burn;
  inherited Destroy;
end;


{** TDCP_blockcipher **********************************************************}

procedure TDCP_blockcipher.InitKey(const Key; Size: longword);
begin
end;

class function TDCP_blockcipher.GetBlockSize: integer;
begin
  Result:= -1;
end;

procedure TDCP_blockcipher.SetIV(const Value);
begin
end;

procedure TDCP_blockcipher.GetIV(var Value);
begin
end;

procedure TDCP_blockcipher.Encrypt(const Indata; var Outdata; Size: longword);
begin
  case fCipherMode of
    cmCBC: EncryptCBC(Indata,Outdata,Size);
    cmCFB8bit: EncryptCFB8bit(Indata,Outdata,Size);
    cmCFBblock: EncryptCFBblock(Indata,Outdata,Size);
    cmOFB: EncryptOFB(Indata,Outdata,Size);
    cmCTR: EncryptCTR(Indata,Outdata,Size);
  end;
end;

function TDCP_blockcipher.EncryptString(const Str: string): string;
begin
  SetLength(Result,Length(Str));
  EncryptCFB8bit(Str[1],Result[1],Length(Str));
  Result:= Base64EncodeStr(Result);
end;

function TDCP_blockcipher.DecryptString(const Str: string): string;
begin
  Result:= Base64DecodeStr(Str);
  DecryptCFB8bit(Result[1],Result[1],Length(Result));
end;

procedure TDCP_blockcipher.Decrypt(const Indata; var Outdata; Size: longword);
begin
  case fCipherMode of
    cmCBC: DecryptCBC(Indata,Outdata,Size);
    cmCFB8bit: DecryptCFB8bit(Indata,Outdata,Size);
    cmCFBblock: DecryptCFBblock(Indata,Outdata,Size);
    cmOFB: DecryptOFB(Indata,Outdata,Size);
    cmCTR: DecryptCTR(Indata,Outdata,Size);
  end;
end;

procedure TDCP_blockcipher.EncryptECB(const Indata; var Outdata);
begin
end;

procedure TDCP_blockcipher.DecryptECB(const Indata; var Outdata);
begin
end;

procedure TDCP_blockcipher.EncryptCBC(const Indata; var Outdata; Size: longword);
begin
end;

procedure TDCP_blockcipher.DecryptCBC(const Indata; var Outdata; Size: longword);
begin
end;

procedure TDCP_blockcipher.EncryptCFB8bit(const Indata; var Outdata; Size: longword);
begin
end;

procedure TDCP_blockcipher.DecryptCFB8bit(const Indata; var Outdata; Size: longword);
begin
end;

procedure TDCP_blockcipher.EncryptCFBblock(const Indata; var Outdata; Size: longword);
begin
end;

procedure TDCP_blockcipher.DecryptCFBblock(const Indata; var Outdata; Size: longword);
begin
end;

procedure TDCP_blockcipher.EncryptOFB(const Indata; var Outdata; Size: longword);
begin
end;

procedure TDCP_blockcipher.DecryptOFB(const Indata; var Outdata; Size: longword);
begin
end;

procedure TDCP_blockcipher.EncryptCTR(const Indata; var Outdata; Size: longword);
begin
end;

procedure TDCP_blockcipher.DecryptCTR(const Indata; var Outdata; Size: longword);
begin
end;

constructor TDCP_blockcipher.Create(AOwner: TComponent);
begin
  inherited Create(AOwner);
  fCipherMode:= cmCBC;
end;


{** Helpher functions *********************************************************}
procedure XorBlock(var InData1, InData2; Size: longword);
var
  i: longword;
begin
  for i:= 1 to Size do
    Pbyte(longword(@InData1)+i-1)^:= Pbyte(longword(@InData1)+i-1)^ xor Pbyte(longword(@InData2)+i-1)^;
end;

end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产成人免费在线观看不卡| 91免费国产视频网站| 麻豆成人综合网| 国产精品免费观看视频| 悠悠色在线精品| 成人欧美一区二区三区| 中文字幕中文字幕一区二区| 国产精品久久夜| 综合激情成人伊人| 一区二区理论电影在线观看| 亚洲成人av福利| 日韩国产高清在线| 久久国产精品第一页| 国产一区欧美一区| 不卡一二三区首页| 欧美性色欧美a在线播放| 欧美久久一二区| 精品日韩一区二区三区免费视频| 久久新电视剧免费观看| 国产精品美女久久久久aⅴ| 亚洲欧美日韩一区| 日韩精品电影在线| 国产精品亚洲成人| 99久久国产免费看| 在线成人午夜影院| 久久日韩精品一区二区五区| 中文字幕精品综合| 亚洲高清视频中文字幕| 69精品人人人人| 中文在线资源观看网站视频免费不卡| www国产精品av| 中文字幕在线不卡一区| 亚洲动漫第一页| 久久69国产一区二区蜜臀| 国产精品资源在线| 欧洲中文字幕精品| 欧美成人欧美edvon| 国产精品二区一区二区aⅴ污介绍| 亚洲激情在线激情| 精品系列免费在线观看| 99re在线视频这里只有精品| 在线播放日韩导航| 欧美激情资源网| 天天做天天摸天天爽国产一区| 韩国v欧美v日本v亚洲v| 91免费看`日韩一区二区| 欧美一区二区女人| 国产精品人人做人人爽人人添 | 日韩伦理av电影| 午夜婷婷国产麻豆精品| 国产成人免费9x9x人网站视频| 在线视频欧美精品| 久久久久久久久免费| 欧美色涩在线第一页| 日本成人中文字幕在线视频| 国产精品影音先锋| 欧美日韩国产综合一区二区| 久久精品亚洲一区二区三区浴池| 一区二区三区四区中文字幕| 2023国产精品| 久久婷婷色综合| 日韩国产一区二| 99精品欧美一区二区蜜桃免费| 日韩一区二区三区av| 伊人开心综合网| 丁香一区二区三区| 日韩午夜av一区| 伊人色综合久久天天| 成人免费va视频| 精品久久久久久久久久久久久久久| 国产一区二区在线视频| 色拍拍在线精品视频8848| 99精品国产91久久久久久| 久久综合色播五月| 亚洲一区二区黄色| 成人ar影院免费观看视频| 欧美电影免费观看完整版| 亚洲精品午夜久久久| 国产精品99久久久久久有的能看| 日韩欧美一区二区不卡| 激情六月婷婷综合| 国产日韩影视精品| 99久久精品国产一区二区三区 | 日韩黄色一级片| 欧美一区二区三区影视| 久久er99热精品一区二区| 久久女同性恋中文字幕| 暴力调教一区二区三区| 一区二区三区色| 欧美精品一二三区| 极品少妇一区二区| 欧美韩国日本一区| 91福利视频久久久久| 亚洲国产日韩综合久久精品| 91精品欧美一区二区三区综合在 | 欧美成人乱码一区二区三区| 麻豆精品视频在线| 国产精品女上位| 色狠狠一区二区| 久久综合九色综合欧美98| 精品无人码麻豆乱码1区2区| 国产欧美一区二区三区在线看蜜臀| 99精品偷自拍| 视频一区二区欧美| www精品美女久久久tv| 91一区二区在线| 秋霞影院一区二区| 国产精品黄色在线观看| 欧美日韩色综合| 国产成人啪免费观看软件| 亚洲综合在线第一页| 26uuu亚洲综合色| 成人午夜在线播放| 婷婷六月综合亚洲| 国产日韩欧美一区二区三区乱码| 欧洲亚洲精品在线| 国产伦精品一区二区三区免费| 亚洲欧美偷拍另类a∨色屁股| 8x8x8国产精品| 成人免费看视频| 免费亚洲电影在线| 亚洲欧洲精品一区二区精品久久久| 欧美精品视频www在线观看| 成人午夜视频在线观看| 三级成人在线视频| 国产精品卡一卡二卡三| 欧美一区二区三区系列电影| 成人激情免费电影网址| 青青草原综合久久大伊人精品优势| 国产精品久久久久久户外露出| 日韩亚洲欧美在线| 91行情网站电视在线观看高清版| 国产一区二区按摩在线观看| 亚洲成人黄色小说| 亚洲欧洲无码一区二区三区| 日韩精品在线网站| 欧美日韩一区二区三区不卡| 不卡的av电影| 国产露脸91国语对白| 日韩在线观看一区二区| 亚洲三级在线免费观看| 国产日韩欧美在线一区| 欧美一区二区免费| 欧美日韩亚洲综合在线| www.在线欧美| 国产超碰在线一区| 九色|91porny| 天天射综合影视| 一区二区三区精品久久久| 国产精品区一区二区三| 26uuu色噜噜精品一区二区| 欧美一区二区三区在线视频 | 午夜久久久影院| 综合电影一区二区三区| 国产欧美日韩三区| 26uuu欧美| 欧美精品一区视频| 5月丁香婷婷综合| 欧美唯美清纯偷拍| 91福利区一区二区三区| 91视频在线看| 91小视频在线| kk眼镜猥琐国模调教系列一区二区| 韩国女主播一区| 国产一区在线看| 精品一区二区三区在线播放视频| 日本vs亚洲vs韩国一区三区二区| 亚洲国产美女搞黄色| 亚洲一二三区在线观看| 亚洲精品欧美激情| 亚洲精品视频自拍| 亚洲卡通欧美制服中文| 亚洲精品国产a| 亚洲乱码日产精品bd| 亚洲精选一二三| 一区二区三区四区不卡视频| 一区二区三区中文字幕电影| 亚洲综合偷拍欧美一区色| 亚洲影院在线观看| 亚洲电影中文字幕在线观看| 亚洲第一av色| 日韩二区在线观看| 日本免费新一区视频| 久久激情五月激情| 韩日精品视频一区| 国产成人免费视频精品含羞草妖精| 国产精品一区一区三区| 成人小视频免费观看| 91在线你懂得| 在线观看欧美精品| 欧美日韩成人一区| 日韩精品一区二区三区蜜臀 | 成人动漫中文字幕| 91视频一区二区三区| 欧美中文字幕一区| 3d成人h动漫网站入口| 精品粉嫩aⅴ一区二区三区四区| 精品不卡在线视频| 亚洲欧洲精品一区二区三区| 一区二区三区在线免费观看|