Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

3 Страницы123>
Опции
К последнему сообщению К первому непрочитанному
Offline Dennisw  
#1 Оставлено : 12 ноября 2010 г. 10:29:37(UTC)
Dennisw

Статус: Активный участник

Группы: Участники
Зарегистрирован: 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 - даже при выборе отозванного сертификата

Или я куда то не туда смотрю? Использую не тот способ проверки ?

Спасибо.
Offline Kirill Sobolev  
#2 Оставлено : 12 ноября 2010 г. 14:54:16(UTC)
Кирилл Соболев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 25.12.2007(UTC)
Сообщений: 1,732
Мужчина
Откуда: КРИПТО-ПРО

Поблагодарили: 177 раз в 168 постах
Возможно, у Вас установлен локально действующий СОС нашего УЦ, в котором отозванного сертификата нет?
Техническую поддержку оказываем тут
Наша база знаний
Offline Dennisw  
#3 Оставлено : 12 ноября 2010 г. 15:18:04(UTC)
Dennisw

Статус: Активный участник

Группы: Участники
Зарегистрирован: 15.10.2009(UTC)
Сообщений: 49
Откуда: CHL

Кирилл подскажите пожалуйста как это проверить?

Если вы имеете ввиду локально установленный список отозванных сертификатов - подскажите где посмотреть что он есть.
в Оснастке сертификаты - "Сертификаты к которым нет доверия" (Пользователь, Компьютер) - пусто
Offline Kirill Sobolev  
#4 Оставлено : 12 ноября 2010 г. 18:34:09(UTC)
Кирилл Соболев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 25.12.2007(UTC)
Сообщений: 1,732
Мужчина
Откуда: КРИПТО-ПРО

Поблагодарили: 177 раз в 168 постах
Сертификаты - Промежуточные ЦС - Список отзыва сертификатов, тоже смотрите как у текущего пользователя, так и у компьютера.
Техническую поддержку оказываем тут
Наша база знаний
Offline Dennisw  
#5 Оставлено : 13 ноября 2010 г. 15:30:16(UTC)
Dennisw

Статус: Активный участник

Группы: Участники
Зарегистрирован: 15.10.2009(UTC)
Сообщений: 49
Откуда: CHL

Спасибо Кирил
Все получилось!
Offline Dennisw  
#6 Оставлено : 19 сентября 2011 г. 18:18:59(UTC)
Dennisw

Статус: Активный участник

Группы: Участники
Зарегистрирован: 15.10.2009(UTC)
Сообщений: 49
Откуда: CHL

Добрый День

Хотелось вернутся к теме.
Опять появилась проблема что на отозванные сертификаты одна из машин выдает что сертификаты действительны

Посмотрели как подсказал кирил в свое время
Отправлено: 12 ноября 2010 г. 17:34:09
Сертификаты - Промежуточные ЦС - Список отзыва сертификатов, тоже смотрите как у текущего пользователя, так и у компьютера.

такие сертификаты отсутсвуют

что еще можно посмотреть по данной проблеме

опять же отмечу что на другой машине выдается правильное состояние сертификата.

на машине где не правильно проверяется сертификат установлен сертификат УЦ КРИПТО-ПРО до 10.08.2040 в ветках "Доверенные корневые центры сертификации" (для пользователя)

Больше нигде не прописан Сертификат
Списка отзыва сертификатов нет
Куда еще посмотреть можно ?

Спасибо!
Offline Kirill Sobolev  
#7 Оставлено : 19 сентября 2011 г. 19:48:03(UTC)
Кирилл Соболев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 25.12.2007(UTC)
Сообщений: 1,732
Мужчина
Откуда: КРИПТО-ПРО

Поблагодарили: 177 раз в 168 постах
Возможно CRL закеширован в \Documents and Settings\Имя пользователя\Application Data\Microsoft\CryptnetUrlCache.
Техническую поддержку оказываем тут
Наша база знаний
Offline Dennisw  
#8 Оставлено : 19 сентября 2011 г. 20:17:23(UTC)
Dennisw

Статус: Активный участник

Группы: Участники
Зарегистрирован: 15.10.2009(UTC)
Сообщений: 49
Откуда: CHL

Да так и есть

еще раз спасибо Кирил!
Offline Dennisw  
#9 Оставлено : 20 сентября 2011 г. 20:24:48(UTC)
Dennisw

Статус: Активный участник

Группы: Участники
Зарегистрирован: 15.10.2009(UTC)
Сообщений: 49
Откуда: CHL

Нет Кирил

он опять создал себе Кэш и ходит туда почему то по умолчанию
Кэш удаляю но после перезапуска машины он опять обращается в Кэш при проверке
Еще раз удаляю проверяет все корректно.

Это где то вреестре прописывается или нет?
Как то можно запретить ему кэшировать проверку ?
Offline Kirill Sobolev  
#10 Оставлено : 20 сентября 2011 г. 20:53:01(UTC)
Кирилл Соболев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 25.12.2007(UTC)
Сообщений: 1,732
Мужчина
Откуда: КРИПТО-ПРО

Поблагодарили: 177 раз в 168 постах
Цитата:
Как то можно запретить ему кэшировать проверку ?

Нужно держать актуальный CRL в CDP, откуда он его скачивает.
Техническую поддержку оказываем тут
Наша база знаний
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest (3)
3 Страницы123>
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.