ВУЗ:
Составители:
278
Рисунок 10.11 - Генерирование сеансового ключа и вектора
инициализации PGP (шаги G2-G8 алгоритма)
Следующее пошаговое описание алгоритма соответствует
описанию, предложенному Стефаном Ньюхаусом (Stephan Neuhaus).
1.
[Дооперационная обработка начального значения.]
•
randseed.bin копируется в К[0 .. 23].
•
Хэш-код сообщения (он уже имеется, если сообщение подписано,
иначе используется 4К первых октетов сообщения), служит в качестве
ключа, вводится нулевое значение IV, и К шифруется в режиме CFB;
результат сохраняется в К.
2.
[Установка начального значения.]
•
Для dtbuf[O..3] устанавливается значение, равное 32-битовому
значению текущего локального времени. Значение dtbuf[4..7]
обнуляется. Копируется rkey «- К [0.. 15]. Копируется rseed
<r-
К [16..
23].
•
64-битовое значение dtbuf шифруется с использованием 128-
битового значения rkey в режиме ЕСВ; результат сохраняется в dtbuf.
3.
[Подготовка к генерированию случайных октетов.]
Устанавливается rcount
<—
О и
к
<— 23. Циклическое повторение шагов
G4-G7 будет выполнено 24 раза (для
к
= 23 ... 0), и при каждом
выполнении будет получен случайный октет, помещаемый в К.
Переменная rcount представляет число еще неиспользованных
случайных октетов в rbuf. Ее значение трижды уменьшается от 8 до 0,
чтобы в результате было получено 24 октета.
4.
[Доступны ли еще байты?]
Если rcount = 0, следует перейти к
шагу G5, в противном случае — к шагу G7. Шаги G5 и G6 представляют
однократное выполнение алгоритма Х12.17, порождающего новый
набор из восьми случайных октетов.
Рисунок 10.11 - Генерирование сеансового ключа и вектора инициализации PGP (шаги G2-G8 алгоритма) Следующее пошаговое описание алгоритма соответствует описанию, предложенному Стефаном Ньюхаусом (Stephan Neuhaus). 1. [Дооперационная обработка начального значения.] • randseed.bin копируется в К[0 .. 23]. • Хэш-код сообщения (он уже имеется, если сообщение подписано, иначе используется 4К первых октетов сообщения), служит в качестве ключа, вводится нулевое значение IV, и К шифруется в режиме CFB; результат сохраняется в К. 2. [Установка начального значения.] • Для dtbuf[O..3] устанавливается значение, равное 32-битовому значению текущего локального времени. Значение dtbuf[4..7] обнуляется. Копируется rkey «- К [0.. 15]. Копируется rseed
Страницы
- « первая
- ‹ предыдущая
- …
- 276
- 277
- 278
- 279
- 280
- …
- следующая ›
- последняя »