Курсовая работа: Програмна реалізація криптографічного алгоритму RC5
public
{ Public declarations }
end;
const
Rounds = 12;
BlockSize = 8;
BufferSize = 2048;
KeySize = 64;
KeyLength = 2 * (Rounds + 1);
P32 = $b7e15163;
Q32 = $9e3779b9;
var
Form1: TForm1;
Key : string;
KeyPtr : PChar;
S : array[0..KeyLength-1] of LongWord;
///////////////////////////////////////////////////////////////////////////////
Додаткові функції
procedure Initialize(AKey: string); // Інійіалізація
procedure CalculateSubKeys; // Підготовлення підключей
function EncipherBlock(var Block): Boolean; // Шифрування блока (8 байт)
function DecipherBlock(var Block): Boolean; // Дешифрування блока
///////////////////////////////////////////////////////////////////////////////
Головні функції
function EncryptCopy(DestStream, SourseStream : TStream; Count: Int64;
Key : string): Boolean; // Зашифрувати дані з одного потоку в іншій
function DecryptCopy(DestStream, SourseStream : TStream; Count: Int64;
Key : string): Boolean; // Розшифрувати дані з одного потоку в іншій
function EncryptStream(DataStream: TStream; Count: Int64;