Таблица 4.6.2.9. Процедура асимметричного шифрования
Шаг |
Действие |
1 |
Инициализировать и загрузить информационные поля, зависимые от типа сообщения |
2 |
Преобразовать информационные поля, подлежащие шифрованию, в формат DER |
3 |
Сформировать новый ключ DES |
4 |
Зашифровать результат работы шага 2, используя ключ DES из шага 3. Используется режим DES-CBC. |
5 |
Инициализировать буфер зашифрованных данных с помощью кода типа данных, идентификатора алгоритма и добавить эту информацию к результату шага 4. |
6 |
Инициализировать буфер цифрового конверта, в зависимости от получателя (128 байт) |
7 |
Инициализировать буфер дополнительного шифрования OAEP с использование ключа из шага 3. |
8 |
Применить OAEP для буфера цифрового конверта |
9 |
Зашифровать результат шага 8, используя асимметричный общедоступный ключ объекта r |
10 |
Инициализировать информационный буфер получателя посредством идентификатора алгоритма RSA и добавить туда результат работы шага 9 |
11 |
Инициализировать буфер EnvelopedData PKCS#7 и положить туда результат шага 10 и 5 |
12 |
Прислать результат шага 11 |
Оператор шифрования с гарантией целостности EH(r,t) подобен Е за исключением того, что цифровой конверт PKCS#7 включает в себя хэш группы t. Он предполагает быстрое симметричное шифрование открытого текста сообщения и последующее шифрование секретного ключа с использование общедоступного ключа получателя. Процедура такого шифрования представлена в таблице 4.6.2.10.