Вниз
Скачать: CL | DM;

Кодирование буфера   Найти похожие ветки 

 
WandR   (2005-11-30 21:43) [0]

Задача переделать функции кодирования и декодирования алгоритма rc6 для обработки буфера(заранее неизвестно что у меня будет), и потом записать результат в stream.
В rc6 кодируется блоками по 16 байт, мне нужно из буфера поочередно брать 16 байт и кодировать но как это сделать?? Я пробовал Move(SourseBuffer,Buffer, BlockSize); но это явно не то…

Код:

function EncryptBuffer(DestStream: TStream; const SourseBuffer;
Count: Longint; Key: string): Boolean;
var
Buffer   : TRC6Block;
PrCount  : Int64;
AddCount : Byte;
begin
Result := True;
try
if Key = "" then
 begin
  DestStream.WriteBuffer(SourseBuffer, Count);
  Exit;
 end;
Initialize(Key);
CalculateSubKeys;

PrCount := 0;
while Count - PrCount >= BlockSize do
 begin
  Move(SourseBuffer,Buffer, BlockSize);
  EncipherBlock(Buffer);
  DestStream.Write(Buffer, BlockSize);
  Inc(PrCount, BlockSize);
 end;

 AddCount := Count - PrCount;
 if Count - PrCount <> 0 then
  begin
   DestStream.Write(SourseBuffer, AddCount);
  end;

except
Result := False;
end;
end;


 
WandR   (2005-12-01 10:00) [1]

???



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.025 c
2-1133822308
AssignFile
2005-12-06 01:38
2005.12.25
Когда программа ищет файл в своём каталоге?


14-1133349455
Post
2005-11-30 14:17
2005.12.25
Framework SDK


14-1133740594
Kerk
2005-12-05 02:56
2005.12.25
Welcome to the Stanford Prison Experiment


2-1134023604
MAXHO
2005-12-08 09:33
2005.12.25
Перезагрузка с принудительным закрытием всех приложений


14-1133175564
Santrope
2005-11-28 13:59
2005.12.25
Поможем Алексею Агафонову




   Наверх