Архитектура системы CryptoAPI

Архитектура системы CryptoAPI состоит из пяти основных функциональных областей:

Базовые криптографические функции

Функции кодирования и декодирования сертификатов

Функции хранилища сертификатов

Упрощенные функции сообщений

  • Функции, используемые для шифрования и расшифровки сообщений и данных.
  • Функции, используемые для подписывания сообщений и данных.
  • Функции, используемые для проверки подлинности подписей в полученных сообщениях и связанных данных.

Дополнительные сведения см. в разделах Упрощенные сообщения и Упрощенные функции сообщений.

Низкоуровневые функции сообщений

архитектура cryptoapi

Каждая из функциональных областей имеет ключевое слово в имени функции, указывающее ее функциональную область.

Функциональная область Соглашение об имени функции
Базовые криптографические функции Склеп
Функции кодирования и декодирования Склеп
Функции хранилища сертификатов Магазин
Упрощенные функции сообщений Сообщение
Низкоуровневые функции сообщений Msg

 

Приложения используют функции во всех этих областях. Эти функции, взятые вместе, составляют CryptoAPI. Базовые криптографические функции используют CSP для необходимых алгоритмов шифрования, а также для создания и безопасного хранения криптографических ключей.

Используются два типа криптографических ключей: ключи сеанса, которые используются для одного шифрования и расшифровки, и пары открытого и закрытого ключей, которые используются на более постоянной основе.

Примечание

Хотя приложение может напрямую взаимодействовать с любой из пяти функциональных областей, оно не может напрямую взаимодействовать с CSP. Все обмены данными между приложениями и CSP выполняются с помощью базовых криптографических функций. Базовые криптографические функции имеют параметр, указывающий, какой CSP следует использовать. Для этого параметра можно задать значение NULL , чтобы выбрать поставщик служб конфигурации по умолчанию.