Убедиться, что в данном MS Server 2008 [R2] CA есть сертификат ОК

Как программно проверить  на клиенте, что для данного хранящегося в рутокен секретного ключа опубликован и действителен сертификат(ы) открытого ключа в данном CA под MS Server 2008 [R2]  AD CS? 
А также  узнать срок действия сертификата ОК.

Re: Убедиться, что в данном MS Server 2008 [R2] CA есть сертификат ОК

Вы работаете с токеном через MS CryptoAPI? Какой используется криптопровайдер?

Содержится ли в контейнере на токене помимо закрытого ключа ещё и сертификат открытого ключа?

Re: Убедиться, что в данном MS Server 2008 [R2] CA есть сертификат ОК

Пока изучаю эту технологию. Если путей несколько, можно их перечислить и  назвать наиболее  надежный?
win7 и win/XP клиенты.

Re: Убедиться, что в данном MS Server 2008 [R2] CA есть сертификат ОК

sergn-n пишет:

Пока изучаю эту технологию. Если путей несколько, можно их перечислить и  назвать наиболее  надежный?
win7 и win/XP клиенты.

Не убежденно.

Re: Убедиться, что в данном MS Server 2008 [R2] CA есть сертификат ОК

sergn-n пишет:

Пока изучаю эту технологию. Если путей несколько, можно их перечислить и  назвать наиболее  надежный?
win7 и win/XP клиенты.

sergn-n, Rutoken является носителем ключевой информации, может использоваться по средствам различных программных интерфейсов.
Если Вы говорите о CA на базе Windows 2008 R2, то скорее всего Вы используете Rutoken посредством криптопровайдера.
Вопрос лишь какого? - Aktiv Rutoken CSP v1.0, КриптоПро CSP, Signal-COM CSP?

Михаил Курский
Руководитель отдела разработки прикладного ПО Rutoken, Компания "Актив"

Re: Убедиться, что в данном MS Server 2008 [R2] CA есть сертификат ОК

MKurskiy пишет:

sergn-n, Rutoken является носителем ключевой информации, может использоваться по средствам различных программных интерфейсов.
Если Вы говорите о CA на базе Windows 2008 R2, то скорее всего Вы используете Rutoken посредством криптопровайдера.
Вопрос лишь какого? - Aktiv Rutoken CSP v1.0, КриптоПро CSP, Signal-COM CSP?


Заявлено, что  Rutoken поддерживает (и расширяет поддержку) PKCS#11. Поэтому предполагается, что приложение будет общаться с токенами исключительно через этот API с помощью например BouncyCastle (там в свою очередь заявлена поддержка Rutoken).
Взаимодействие с CA на базе Windows 2008 R2 (да, как было написано в первом посте, так ничего и не изменилось :) ) - посредством преимущественно средств  .Net System.Security.Cryptography плюс (нежелательно, но похоже не обойтись) certadm.dll
Т.е. никаких криптопровайдеров, кроме предоставляемых самой Windows   приобретать не планируется.

Или без этого не обойтись ?

Re: Убедиться, что в данном MS Server 2008 [R2] CA есть сертификат ОК

Если Вы планируете использовать Рутокен на клиенте по средствам PKCS#11, то Вам необходимо найти объект сертификата на токене (C_FindObjectsInit, C_FindObjects, C_FindObjectsFinal), который был записан Вами ранее.
По средствам функции C_GetAttributeValue получить у объекта CKO_CERTIFICATE кодированное тело сертификата - атрибут CKA_VALUE.

Далее, если Вы хотите проверить статус сертификата, по средствам CryptoAPI, можно использовать следующие функции:
CryptVerifyCertificateSignature ( http://msdn.microsoft.com/en-us/library … s.85).aspx )
CryptVerifyCertificateSignatureEx ( http://msdn.microsoft.com/en-us/library … s.85).aspx )
CertVerifyTimeValidity ( http://msdn.microsoft.com/en-us/library … s.85).aspx )
CertVerifyRevocation ( http://msdn.microsoft.com/en-us/library … s.85).aspx )
Для проверки цепочки сертификатов можно использовать следующую функцию:
CertVerifyCertificateChainPolicy ( http://msdn.microsoft.com/en-us/library … s.85).aspx )


Что касается обойтись ли без криптопровайдера - это решать Вам.
Криптопровайдер "Aktiv Rutoken CSP v1.0" реализован в модуле rtCSP.dll, поставляется бесплатно в составе Драйверов Рутокен.
Позволяет хранить и использовать ключевую информацию, хранящуюся на Рутокен, по средствам интерфейса CryptoAPI 2.0 - интерфейс стандартизован.

Общую информацию по Cryptography на сайте MSDN можно посмотреть здесь: http://msdn.microsoft.com/en-us/library … S.85).aspx
Информацию по функциям CSP можно посмотреть здесь: http://msdn.microsoft.com/en-us/library … _functions
Разделы:
Service Provider Functions
Key Generation and Exchange Functions
Data Encryption and Decryption Functions
Hash and Digital Signature Functions

Михаил Курский
Руководитель отдела разработки прикладного ПО Rutoken, Компания "Актив"

Re: Убедиться, что в данном MS Server 2008 [R2] CA есть сертификат ОК

MKurskiy пишет:

Если Вы планируете использовать Рутокен на клиенте по средствам PKCS#11, то Вам необходимо найти объект сертификата на токене (C_FindObjectsInit, C_FindObjects, C_FindObjectsFinal), который был записан Вами ранее. []

Максим, спасибо за ссылки.

Re: Убедиться, что в данном MS Server 2008 [R2] CA есть сертификат ОК

sergn-n пишет:

Максим, спасибо за ссылки.

Михаил.
Ни чего страшного, и обращайтесь.

Михаил Курский
Руководитель отдела разработки прикладного ПО Rutoken, Компания "Актив"