Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Чтобы усложнить подмену поддельного списка доверия сертификатов (CTL) для уже существующего, проверяйте подпись на CTL каждый раз при его использовании. Не используйте CTL, который не содержит доверенной подписи.
Для проверки подписи CTL
- Откройте хранилище сертификатов , содержащее требуемый CTL.
- Получите дескриптор CTL_CONTEXT для CTL. Это можно сделать, вызвав любую из функций, возвращающих дескриптор для CTL_CONTEXT, например CertFindCTLInStore.
- Вызовите CryptMsgGetAndVerifySigner, передав CTL_CONTEXT, полученный на шаге 2 в параметре hCryptMsg, дескриптор хранилища сертификатов, содержащий сертификат доверенного источника для CCL в параметре rghSignerStore и CMSG_TRUSTED_SIGNER_FLAG в параметре dwFlags. Если функция возвращает TRUE, подпись была проверена, и указатель на PCCERT_CONTEXT подписанта CTL возвращается в параметре ppSigner.