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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Alex407  
#1 Оставлено : 12 декабря 2011 г. 20:14:22(UTC)
Alex407

Статус: Участник

Группы: Участники
Зарегистрирован: 05.12.2011(UTC)
Сообщений: 18

Помогите понять разницу между 2 способами проверки сертификатов.
1. Метод CheckSignature со вторым параметром False
Dim signedCms As New SignedCms()
signedCms.Decode(Data)
signedCms.CheckSignature(False)

2. Класс X509Chain.
Dim ch As X509Chain = New X509Chain()
For Each cert In signedCms.Certificates
Dim res As Boolean = ch.Build(cert)
If res = False Then

End If
Next
И нужен ли тут цикл?
Offline Андрей Писарев  
#2 Оставлено : 12 декабря 2011 г. 20:20:28(UTC)
Андрей *

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

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 13,331
Мужчина
Российская Федерация

Сказал «Спасибо»: 550 раз
Поблагодарили: 2210 раз в 1725 постах
Alex407 написал:
Помогите понять разницу между 2 способами проверки сертификатов.
1. Метод CheckSignature со вторым параметром False
Dim signedCms As New SignedCms()
signedCms.Decode(Data)
signedCms.CheckSignature(False)

2. Класс X509Chain.
Dim ch As X509Chain = New X509Chain()
For Each cert In signedCms.Certificates
Dim res As Boolean = ch.Build(cert)
If res = False Then

End If
Next
И нужен ли тут цикл?



signedCms.CheckSignature(False) verifySignatureOnly = false => т.е. проверять и ЭЦП и сертификат



2 = строится цепочка для проверки, для каждого сертификата
цикл - нужен ;)


Отредактировано пользователем 12 декабря 2011 г. 20:21:59(UTC)  | Причина: Не указана

Техническую поддержку оказываем тут
Наша база знаний
Offline Alex407  
#3 Оставлено : 12 декабря 2011 г. 20:31:41(UTC)
Alex407

Статус: Участник

Группы: Участники
Зарегистрирован: 05.12.2011(UTC)
Сообщений: 18

Т.е. если мне нужно проверить и подпись и сертификаты, мне хватит CheckSignature(False) и проверять цепочку классом X509Chain мне нет смысла, т.к. CheckSignature это делает и так?
Единственная разница в том, что CheckSignature генерирует исключение?
В обоих случаях будет использован Revocation Provider для проверки сертификатов в online?
Offline Андрей Писарев  
#4 Оставлено : 12 декабря 2011 г. 20:35:23(UTC)
Андрей *

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

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 13,331
Мужчина
Российская Федерация

Сказал «Спасибо»: 550 раз
Поблагодарили: 2210 раз в 1725 постах
Alex407 написал:
Т.е. если мне нужно проверить и подпись и сертификаты, мне хватит CheckSignature(False) и проверять цепочку классом X509Chain мне нет смысла, т.к. CheckSignature это делает и так?
Единственная разница в том, что CheckSignature генерирует исключение?
В обоих случаях будет использован Revocation Provider для проверки сертификатов в online?


так.. а что по этому поводу написано в документации?

;)


Техническую поддержку оказываем тут
Наша база знаний
Offline Alex407  
#5 Оставлено : 12 декабря 2011 г. 21:13:12(UTC)
Alex407

Статус: Участник

Группы: Участники
Зарегистрирован: 05.12.2011(UTC)
Сообщений: 18

Ну, очевидно, что Microsoft ничего не знает про Revocation Provider, поэтому там ничего нет.
Ну, а документация по Шарпею ... Там, конечно, могли что-то написать, если бы захотели.
Offline Андрей Писарев  
#6 Оставлено : 12 декабря 2011 г. 21:27:52(UTC)
Андрей *

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

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 13,331
Мужчина
Российская Федерация

Сказал «Спасибо»: 550 раз
Поблагодарили: 2210 раз в 1725 постах
Alex407 написал:
Ну, очевидно, что Microsoft ничего не знает про Revocation Provider, поэтому там ничего нет.
Ну, а документация по Шарпею ... Там, конечно, могли что-то написать, если бы захотели.



Silenced
Цитата:
Microsoft ничего не знает про Revocation Provider



Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей Писарев  
#7 Оставлено : 12 декабря 2011 г. 21:36:19(UTC)
Андрей *

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

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 13,331
Мужчина
Российская Федерация

Сказал «Спасибо»: 550 раз
Поблагодарили: 2210 раз в 1725 постах
Alex407 написал:
Ну, очевидно, что Microsoft ничего не знает про Revocation Provider, поэтому там ничего нет.


т.е. ссылку не давать?




Отредактировано пользователем 12 декабря 2011 г. 21:36:58(UTC)  | Причина: Не указана

Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей Писарев  
#8 Оставлено : 12 декабря 2011 г. 21:45:56(UTC)
Андрей *

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

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 13,331
Мужчина
Российская Федерация

Сказал «Спасибо»: 550 раз
Поблагодарили: 2210 раз в 1725 постах
Alex407 написал:
Помогите понять разницу между 2 способами проверки сертификатов.
1. Метод CheckSignature со вторым параметром False
Dim signedCms As New SignedCms()
signedCms.Decode(Data)
signedCms.CheckSignature(False)

2. Класс X509Chain.
Dim ch As X509Chain = New X509Chain()
For Each cert In signedCms.Certificates
Dim res As Boolean = ch.Build(cert)
If res = False Then

End If
Next
И нужен ли тут цикл?


этот "кусок" из Sharpei SDK\Examples\simple\Certificate\vb\BuildChain.vb ?

Но там же с комментариями...


Техническую поддержку оказываем тут
Наша база знаний
Offline Павел Смирнов  
#9 Оставлено : 26 декабря 2011 г. 12:57:21(UTC)
Павел Смирнов

Статус: Вам и не снилось

Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 831
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 1 раз
Поблагодарили: 48 раз в 44 постах
Alex407 написал:
Помогите понять разницу между 2 способами проверки сертификатов.
1. Метод CheckSignature со вторым параметром False
Dim signedCms As New SignedCms()
signedCms.Decode(Data)
signedCms.CheckSignature(False)

2. Класс X509Chain.
Dim ch As X509Chain = New X509Chain()
For Each cert In signedCms.Certificates
Dim res As Boolean = ch.Build(cert)
If res = False Then

End If
Next
И нужен ли тут цикл?

Шарпей тут ни при чём. signedCms.CheckSignature(False) сделает всё что нужно, второй способ проверки излишен. Проверка далется стандартными средствами CryptoAPI, поэтому Revocation Provider будет использован, если установлен.
Техническую поддержку оказываем тут.
Наша база знаний.
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest (3)
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.