Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этом разделе представлены действия по расшифровке зашифрованного сообщения.
Расшифровка зашифрованного сообщения
- Получите указатель на цифровое зашифрованное сообщение.
- Откройте хранилище сертификатов.
- Из сообщения получите идентификатор получателя (Мой идентификатор).
- Используйте идентификатор получателя для получения сертификата.
- Получите закрытый ключ для сертификата.
- Используйте приватный ключ для расшифровки симметричного ключа (сеанса).
- Получите алгоритм шифрования из сообщения.
- С помощью расшифрованного ключа сеанса и алгоритма шифрования расшифруйте данные.
CryptDecryptMessage выполняет все задачи для расшифровки сообщения; однако инициализация структур и других данных по-прежнему необходима.
Для расшифровки данных с помощью CryptDecryptMessage
- Получите указатель на зашифрованный объект BLOB.
- Откройте хранилище сертификатов.
- Создайте массив хранилища сертификатов.
- Инициализируйте структуру CRYPT_DECRYPT_MESSAGE_PARA.
- Вызовите CryptDecryptMessage для расшифровки данных, содержащихся в сообщении.
пример программы C. Использование CryptEncryptMessage и CryptDecryptMessage реализует только что представленную процедуру. Примечания показывают, какие элементы кода выполняют каждый шаг процедуры. Дополнительные сведения о функции см. в CryptDecryptMessage и дополнительные сведения о структуре данных см. в CRYPT_DECRYPT_MESSAGE_PARA.