скрыть

скрыть

  Форум  

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

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



Google  
 

Генерация 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-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook