Недавно добавленные исходники

•  DeLiKaTeS Tetris (Тетрис)  4 583

•  TDictionary Custom Sort  6 599

•  Fast Watermark Sources  6 369

•  3D Designer  9 319

•  Sik Screen Capture  6 703

•  Patch Maker  7 084

•  Айболит (remote control)  7 088

•  ListBox Drag & Drop  5 955

•  Доска для игры Реверси  97 496

•  Графические эффекты  7 290

•  Рисование по маске  6 584

•  Перетаскивание изображений  5 457

•  Canvas Drawing  5 826

•  Рисование Луны  5 537

•  Поворот изображения  5 058

•  Рисование стержней  3 623

•  Paint on Shape  2 864

•  Генератор кроссвордов  3 750

•  Головоломка Paletto  3 019

•  Теорема Монжа об окружностях  3 828

•  Пазл Numbrix  2 519

•  Заборы и коммивояжеры  3 219

•  Игра HIP  2 186

•  Игра Go (Го)  2 117

•  Симулятор лифта  2 499

•  Программа укладки плитки  2 149

•  Генератор лабиринта  2 633

•  Проверка числового ввода  2 303

•  HEX View  2 635

•  Физический маятник  2 255

 
скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Генерация 96-битного ключа для шифрования с помощью Encrypt



Автор: Kronprince

{ **** UBPFD *********** by delphibase.endimus.com ****
>> Генерация 96-битного ключа для шифрования с помощью Encrypt()

Генерация 96-битного ключа для шифрования Encrypt()

Зависимости: System
Автор:       kronprince, kronprince@mail.ru, ICQ:119018798, Полтава
Copyright:   © kronprince - собственная разработка
Дата:        23 июня 2003 г.
***************************************************** }

// Генерация 96-битного ключа для шифрования Encrypt()

procedure GenerateKey96(var StartKey, MultKey, AddKey: integer);
var
  i: integer;
  a: array[1..12] of byte;
  procedure FillKey(var VarKey: integer; index: integer);
  var
    j: integer;
  begin
    for j := 0 to sizeof(VarKey) - 1 do
      VarKey := VarKey or a[index + j] shl (8 * j);
  end;
begin
  System.Randomize();
  // Это непосредственно типа случайная генерация :)
  for i := Low(a) to High(a) do
    a[i] := System.Random(High(byte));
  // А тут распихивание по ключевым полям с соответствующей стартовой позиции
  FillKey(StartKey, 1);
  FillKey(MultKey, 5);
  FillKey(AddKey, 9);
end;

Пример использования:

GenerateKey96(StartKey, MultKey, AddKey);
Encrypt(S, StartKey, MultKey, AddKey);

Copyright © 2004-2025 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте