Форум КриптоПро
»
Устаревшие продукты
»
КриптоПро CSP 3.6
»
Проверка сертификата - Действующий/Отозван
Статус: Активный участник
Группы: Участники
Зарегистрирован: 15.10.2009(UTC) Сообщений: 49 Откуда: CHL
|
Добрый день! Подскажите пожалуйста чем можно проверить состояние сертификата, если в локальной сети не установлен УЦ (Удостоверяющий центр) Мы используем ваш УЦ по схеме "Распределенная схема обслуживания с Оператором Удостоверяющего Центра" Выпустили сертификат, потом отозвали его. .CheckSignature(False) - сертификат проходит проверку. пример с использованием X509Chain тоже возвращает "Сертификат действителен: TRUE" Код:'Create new X509 store from local certificate store.
Dim store As New X509Store("MY", StoreLocation.CurrentUser)
store.Open(OpenFlags.OpenExistingOnly Or OpenFlags.ReadWrite)
'Put certificates from the store into a collection so user can select one.
Dim fcollection As X509Certificate2Collection = CType(store.Certificates, X509Certificate2Collection)
Dim collection As X509Certificate2Collection = X509Certificate2UI.SelectFromCollection(fcollection, "Select an X509 Certificate", "Choose a certificate to examine.", X509SelectionFlag.SingleSelection)
Dim certificate As X509Certificate2 = collection(0)
'X509Certificate2UI.DisplayCertificate(certificate)
'Output chain information of the selected certificate.
' Строим цепочку.
Dim ch As X509Chain = New X509Chain()
ch.Build(certificate)
' Выводим информацию о цепочке.
Me.ListBox1.Items.Add("Цепочка")
ch.ChainPolicy.RevocationFlag = X509RevocationFlag.ExcludeRoot
ch.ChainPolicy.RevocationMode = X509RevocationMode.Online
ch.ChainPolicy.VerificationFlags = X509VerificationFlags.NoFlag
Me.ListBox1.Items.Add("Флаг проверки цепочки на отзыва: {0}" & _
ch.ChainPolicy.RevocationFlag)
Me.ListBox1.Items.Add("Режим проверки цепочки на отзыв: {0}" & _
ch.ChainPolicy.RevocationMode)
Me.ListBox1.Items.Add("Условия проверки цепочки: {0}" & _
ch.ChainPolicy.VerificationFlags)
Me.ListBox1.Items.Add("Время проверки цепочки: {0}" & _
ch.ChainPolicy.VerificationTime)
Me.ListBox1.Items.Add("Длина цепочки состояний: {0}" & _
ch.ChainStatus.Length)
Me.ListBox1.Items.Add("Длина массива задающих политику применения " _
& "и расширенныя использования ключа: {0}" & _
ch.ChainPolicy.ApplicationPolicy.Count)
Me.ListBox1.Items.Add("Длина массива политик, поддерживаемых " _
& ch.ChainPolicy.CertificatePolicy.Count & ", сертификатом: {0} {1}" & _
Environment.NewLine)
' Выводим инормацию об элементах цепочки.
Me.ListBox1.Items.Add("Элементы цепочки")
Me.ListBox1.Items.Add("Количество элементов в цепочке: {0}" & _
ch.ChainElements.Count)
Me.ListBox1.Items.Add("Статус синхронизации (потокобезопасности) " _
& ch.ChainElements.IsSynchronized & ", цепочки: {0} {1}" & _
Environment.NewLine)
For Each element As X509ChainElement In ch.ChainElements
Me.ListBox1.Items.Add("Имя: {0} " & _
element.Certificate.SubjectName.Name)
Me.ListBox1.Items.Add("Имя издателя: {0} " & _
element.Certificate.Issuer)
Me.ListBox1.Items.Add("Сертификат действителен до: {0} " & _
element.Certificate.NotAfter)
Me.ListBox1.Items.Add("Сертификат действителен: {0} " & _
element.Certificate.Verify)
Me.ListBox1.Items.Add("Длина цепочки состояний сертификата: {0}" & _
element.ChainElementStatus.Length)
Me.ListBox1.Items.Add("Информация: {0}" & element.Information)
Me.ListBox1.Items.Add("Количество расширений сертификата: {0}{1}" & _
element.Certificate.Extensions.Count & " - " & Environment.NewLine)
'Me.ListBox1.Items.Add("!--! " & ch.ChainStatus(0).Status)
'element.ChainElementStatus
If ch.ChainStatus.Length > 1 Then
For index As Integer = 0 To element.ChainElementStatus.Length - 1
Me.ListBox1.Items.Add(element.ChainElementStatus(index).Status)
Me.ListBox1.Items.Add(element.ChainElementStatus(index).StatusInformation)
Next
End If
Next
store.Close()
ch.ChainStatus.Length - всегда равен 0 - даже при выборе отозванного сертификата Или я куда то не туда смотрю? Использую не тот способ проверки ? Спасибо.
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 25.12.2007(UTC) Сообщений: 1,733 Откуда: КРИПТО-ПРО Поблагодарили: 177 раз в 168 постах
|
Возможно, у Вас установлен локально действующий СОС нашего УЦ, в котором отозванного сертификата нет? |
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 15.10.2009(UTC) Сообщений: 49 Откуда: CHL
|
Кирилл подскажите пожалуйста как это проверить?
Если вы имеете ввиду локально установленный список отозванных сертификатов - подскажите где посмотреть что он есть. в Оснастке сертификаты - "Сертификаты к которым нет доверия" (Пользователь, Компьютер) - пусто
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 25.12.2007(UTC) Сообщений: 1,733 Откуда: КРИПТО-ПРО Поблагодарили: 177 раз в 168 постах
|
Сертификаты - Промежуточные ЦС - Список отзыва сертификатов, тоже смотрите как у текущего пользователя, так и у компьютера. |
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 15.10.2009(UTC) Сообщений: 49 Откуда: CHL
|
Спасибо Кирил Все получилось!
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 15.10.2009(UTC) Сообщений: 49 Откуда: CHL
|
Добрый День
Хотелось вернутся к теме. Опять появилась проблема что на отозванные сертификаты одна из машин выдает что сертификаты действительны
Посмотрели как подсказал кирил в свое время Отправлено: 12 ноября 2010 г. 17:34:09 Сертификаты - Промежуточные ЦС - Список отзыва сертификатов, тоже смотрите как у текущего пользователя, так и у компьютера.
такие сертификаты отсутсвуют
что еще можно посмотреть по данной проблеме
опять же отмечу что на другой машине выдается правильное состояние сертификата.
на машине где не правильно проверяется сертификат установлен сертификат УЦ КРИПТО-ПРО до 10.08.2040 в ветках "Доверенные корневые центры сертификации" (для пользователя)
Больше нигде не прописан Сертификат Списка отзыва сертификатов нет Куда еще посмотреть можно ?
Спасибо!
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 25.12.2007(UTC) Сообщений: 1,733 Откуда: КРИПТО-ПРО Поблагодарили: 177 раз в 168 постах
|
Возможно CRL закеширован в \Documents and Settings\Имя пользователя\Application Data\Microsoft\CryptnetUrlCache. |
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 15.10.2009(UTC) Сообщений: 49 Откуда: CHL
|
Да так и есть
еще раз спасибо Кирил!
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 15.10.2009(UTC) Сообщений: 49 Откуда: CHL
|
Нет Кирил
он опять создал себе Кэш и ходит туда почему то по умолчанию Кэш удаляю но после перезапуска машины он опять обращается в Кэш при проверке Еще раз удаляю проверяет все корректно.
Это где то вреестре прописывается или нет? Как то можно запретить ему кэшировать проверку ?
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 25.12.2007(UTC) Сообщений: 1,733 Откуда: КРИПТО-ПРО Поблагодарили: 177 раз в 168 постах
|
Цитата:Как то можно запретить ему кэшировать проверку ? Нужно держать актуальный CRL в CDP, откуда он его скачивает. |
|
|
|
|
Форум КриптоПро
»
Устаревшие продукты
»
КриптоПро CSP 3.6
»
Проверка сертификата - Действующий/Отозван
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close