Вниз
Скачать: 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.035 c
2-1134344998
The X
2005-12-12 02:49
2005.12.25
Перекидывание данных между таблицами разной структуры


2-1133847159
Kot
2005-12-06 08:32
2005.12.25
Создание двумерного динамического массива


1-1133334608
kot1110
2005-11-30 10:10
2005.12.25
Unit тесты


14-1133338697
блин
2005-11-30 11:18
2005.12.25
Авторские права


14-1133276305
Nic
2005-11-29 17:58
2005.12.25
Нахождение в академии - хорошо или нет?




   Наверх