Шаг | Действие |
1 | Подготовить дополнительные данные, как это описано в формате сообщения |
2 | Если используется оператор шифрования EH или EXH, вычислить хэш SHA-1 для данных подлежащих DES-шифрованию |
3 | Сформировать новый случайный ключ для DES-шифрования регулярной части данных |
4 | Объединить DES-ключ, хэш SHA-1 данных (HD) перед DES-шифрованием (если оно применяется) и любые дополнительные данные, чтобы сформировать действительный блок данных ADB (Actual Data Block). |
5 | Взять байт, содержащий код 0х03 (тип блока - BT), семь байтов нулей (байты верификации - V) и байт блока содержимого (BC) и положить в ADB, тем самым формируя блок данных (DB). DB= BT|BC|V|ADB |
6 | Сгенерировать случайную 16-битовую строку E-Salt и вычислить H1(E-Salt). H1 выдает лидирующие байты хэша SHA-1 |
7 | Вычислить А=DB A H1(E-Salt) |
8 | Осуществить присвоение B= E-Salt A H2(A). Сформировать PDB, объединив А и В. Н2 предоставляет завершающие байты хэша SHA-1 |
9 | Присвоить I случайное значение, не равное 0х00 или 0х80 |
10 | Зашифровать полученный блок R с помощью RSA |