Создание подписанного сообщения
На следующем рисунке показаны задачи, которые необходимо выполнить для создания подписанного сообщения. Шаги перечислены на рисунке.
Создание подписанного сообщения
Создайте данные (при необходимости) и получите указатель на них.
Откройте хранилище сертификатов , содержащее сертификат подписывающего.
Получите закрытый ключ для сертификата. Перед использованием сертификата необходимо задать свойство, чтобы связать сертификат с определенным CSPи в рамках этого CSP к конкретному закрытому ключу. Это необходимо задать один раз.
Выберите алгоритм хэширования для операции дайджеста. Рекомендуется выбрать алгоритм хэширования из настраиваемого расположения, которое можно впоследствии обновить, не требуя изменений в коде.
Отправьте данные через функцию хэширования с помощью алгоритма хэширования, таким образом создав хэш- (хеш-дайджест) данных.
Используя закрытый ключ, полученный с помощью свойства сертификата, зашифруйте дайджест, создав подпись.
Добавьте следующее в подписанное сообщение:
- Подписанные данные
- Хэш-алгоритм
- Подпись
- Идентификатор подписи (издатель сертификата и серийный номер)
- Сертификат подписи (необязательно)
Подробные процедуры и примеры см. в разделе процедура подписывания данных и пример программы C: подписывание сообщения и проверка подписи сообщения.