30.01.2006 16:13:29 | Валидность сертификата | | Ответов: 8 |
|
Алексей | | |
|
Пытаюсь проверить валидность сертификата. Выставляю вот такие флаги:
CertCreateCertificateChainEngine - CERT_CHAIN_CACHE_END_CERT;
CertGetCertificateChain - CERT_CHAIN_REVOCATION_CHECK_CHAIN | CERT_CHAIN_TIMESTAMP_TIME.
Пока что разбираюсь с СОС. Если он установлен локально, то все проходит без проблем. Если же СОС есть по инету, то вылетает ошибка 16777280 (PCCERT_CHAIN_CONTEXT->TrustStatus.dwErrorStatus). Если локально установлен "истекший" СОС, то вылетает эта же ошибка, хотя этой ошибки нет в описании возможных значений dwErrorStatus в MSDN. Как так?
И еще вопрос: какие флаги надо выставить, чтобы при проверке брался сертификат из точки распространения? |
|
Ответы:
|
30.01.2006 16:45:37 | Kirill Sobolev |
|
Это ошибка CERT_TRUST_REVOCATION_STATUS_UNKNOWN | CERT_TRUST_IS_OFFLINE_REVOCATION, т.е. не найден действующий СОС локально и не удалось получить его откуда-то извне (Internet/Intranet).
Не уверен, что функция построения цепочек от MS в принципе умеет лазить за сертификатами издателей. |
|
31.01.2006 6:34:09 | Алексей |
|
И какие есть варианты выхода из этого? Самому копировать СОС из интернета и устанавливать его в хранилище? А есть еще какие-нибудь грабли в проверке валидности, а то окажется что эти функции вообще неработоспособны ;-) |
|
31.01.2006 10:42:47 | Kirill Sobolev |
|
Нами разработан компонент crlupdate, который сам скачивает и устанавливает СОС.
При проверке корневной сертификат обязательно должен находиться в Root, проверку на отзыв можно осуществлять только на текущее время.. Вроде все грабли. |
|
31.01.2006 18:52:51 | Алексей |
|
Я так понимаю, что этот компонент (crlupdate) необходимо преобретать у вас? В любом случае можно про него поподробнее, через какой промежуток времени он качает СОС из точки распространения? Или ссылку на его описание, если есть таковая. |
|
01.02.2006 10:29:40 | Kirill Sobolev |
|
ссылки нет.
промежуток времени задается программно
|
|
01.02.2006 12:39:36 | Алексей |
|
Его надо покупать или его можно бесплатно скачать откуда-то? |
|
01.02.2006 17:42:41 | Kirill Sobolev |
|
К сожалению Вы не указали email, так что компонент теперь выложен на наш сайт.
http://www.cryptopro.ru/pub/CRLUpdate/cpcrlupdate.zip |
|
02.02.2006 5:58:41 | Алексей |
|
Спасибо, посмотрю что он из себя представляет. Адрес просто не указываю на форуме, а то провайдер плохо борится со спамом ;) |
|