Click (Sender: TObject);
{Private declarations}
{Public declarations};: TForm1;, Fpath: string;
flag: boolean;
// Розширення ключа для шифрування
procedure ExpandAESKeyForEncryption (const Key: TAESKey128; ExpandedKey: TAESExpandedKey128); overload;
// БлочноешіфрованіеEncryptAES (const InBuf: TAESBuffer; const Key: TAESExpandedKey128; OutBuf: TAESBuffer);
// Шіфрованіепотока (ECB mode) EncryptAESStreamECB (Source: TStream; Count: cardinal; Key: TAESKey128; Dest: TStream); overload; EncryptAESStreamECB (Source: TStream; Count: cardinal; ExpandedKey: TAESExpandedKey128; Dest: TStream); overload;
// РасширениеключадлядешифрованияExpandAESKeyForDecryption (var ExpandedKey: TAESExpandedKey128); overload; ExpandAESKeyForDecryption (const Key: TAESKey128; ExpandedKey: TAESExpandedKey128); overload;
// ДешифрованиетекущегоблокаDecryptAES (const InBuf: TAESBuffer; const Key: TAESExpandedKey128;
var OutBuf: TAESBuffer);
// Дешифрування потоку (зчитування поблочно з потоку і застосування до кожного з блоків процедури DecryptAES)
procedure DecryptAESStreamECB (Source: TStream; Count: cardinal; Key: TAESKey128; Dest: TStream); overload; DecryptAESStreamECB (Source: TStream; Count: cardinal; ExpandedKey: TAESExpandedKey128; Dest: TStream); overload ; = 'Неверныйразмербуферадлядешифрования'; = 'Помилка читання з потоку';
SWriteError = 'Помилка запису в потік';
implementationUnStop;
{$ R *. DFM} = ^ LongWord;
Min (A, B: integer): integer;// НахождениеминимальногоиздвухчиселA
$ 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
);
// Прямаятабліца: 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...