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

Уведомление

Icon
Error

3 Страницы<123>
Опции
К последнему сообщению К первому непрочитанному
Offline akulema  
#11 Оставлено : 6 ноября 2008 г. 15:05:49(UTC)
akulema

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

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

Я подписываю сертификат ключом ЦС алгоритмом, который написал чуть выше. Он правильный или нет? Просто для меня это самый ключевой вопрос на данный момент. В makecert.с я нашел только примерно вот что:

1) ищется в хранилище корневой сертификат ЦС.
2) из него берутся параметры issure и тип криптопровайдера.
3) новый сертификат создается при помощи полученного в пункте 2 криптопровайдера

Но в этом примере нет упоминания о секретном ключе ЦС, поэтому я посчитал, что это мне не подходит.
Offline Kirill Sobolev  
#12 Оставлено : 6 ноября 2008 г. 18:18:33(UTC)
Кирилл Соболев

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

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

Поблагодарили: 177 раз в 168 постах
Цитата:
2) из него берутся параметры issure и тип криптопровайдера.

не только тип, но еще и контейнер с секретным ключем - он возвращается в параметре hProv.
Техническую поддержку оказываем тут
Наша база знаний
Offline akulema  
#13 Оставлено : 6 ноября 2008 г. 18:41:59(UTC)
akulema

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

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

То есть получается, что если я сам создам криптопровайдер (предположим, что параметры его всегда используются одинаковые), импортирую туда секретный ключ, то это будет тоже самое?
Offline Kirill Sobolev  
#14 Оставлено : 6 ноября 2008 г. 20:10:33(UTC)
Кирилл Соболев

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

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

Поблагодарили: 177 раз в 168 постах
Для подписи - да.
Для проверки - нет. Для проверки подписи в окне сертификата используется сертификат ЦС из хранилища.
Техническую поддержку оказываем тут
Наша база знаний
Offline akulema  
#15 Оставлено : 6 ноября 2008 г. 23:31:30(UTC)
akulema

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

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

Я уже голову сломал. Не пойму, что не так. По-прежнему пишет, что сертификат содержит не действительную цифровую подпись. Может есть какие-нибудь нюансы. Делаю по прежнему алгоритиму

1) Создать провайдер1 и сгенерировать с его помощью пару ключей. Открытый ключ отдать в структуру CERT_INFO.
2) Создать "временный" провайдер2 и загрузить в него с помощью CryptImportKey секретный ключ центра сертификации.
3) Вызвать CryptSignAndEncodeCertificate для провайдер2. Таким образом у нас должен получиться сертификат с сгенерированным открытым и подписанный при помощи секретного ключа центра сертификации.

Секретный ключ ЦС я проверял - в провайдер2 загружаю именно его. Сбился с ног Brick wall

P.S. А вот еще вопрос в пункте 2) я загружаю секретный ключ в провайдер, а нужно ли еще передавать ему открытый, или он сам сгенерирует?

Отредактировано пользователем 6 ноября 2008 г. 23:44:45(UTC)  | Причина: Не указана

Offline Kirill Sobolev  
#16 Оставлено : 7 ноября 2008 г. 13:47:04(UTC)
Кирилл Соболев

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

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

Поблагодарили: 177 раз в 168 постах
Цитата:
По-прежнему пишет, что сертификат содержит не действительную цифровую подпись. Может есть какие-нибудь нюансы.

а откуда можно взять открытый ключ, чтобы эту подпись проверить?
Цитата:
P.S. А вот еще вопрос в пункте 2) я загружаю секретный ключ в провайдер, а нужно ли еще передавать ему открытый, или он сам сгенерирует?

да, по секретному ключу можно получить открытый.
Техническую поддержку оказываем тут
Наша база знаний
Offline akulema  
#17 Оставлено : 7 ноября 2008 г. 16:57:36(UTC)
akulema

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

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

Цитата:
а откуда можно взять открытый ключ, чтобы эту подпись проверить?


Прошу прощения, не совсем понял. Это вопрос?
Я так понимаю, что windows сам берет открытый ключ из корневого сертификата (ведь цепочка у меня построена и во вкладке "Путь сертификации "отображается дерево) и проверяет им подпись на созданном только что сертификате.
Offline Kirill Sobolev  
#18 Оставлено : 7 ноября 2008 г. 17:24:42(UTC)
Кирилл Соболев

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

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

Поблагодарили: 177 раз в 168 постах
В построенной цепочке сертификат ЦС именно тот которым подписывали?
Можно его подпись проверить ключем из 2) с помощью CryptVerifyCertificateSignature?
Техническую поддержку оказываем тут
Наша база знаний
Offline akulema  
#19 Оставлено : 7 ноября 2008 г. 18:08:42(UTC)
akulema

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

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

Цитата:
В построенной цепочке сертификат ЦС именно тот которым подписывали?

Не совсем понял. В построенной цепочке лежит тот сертификат, открытый ключ которого соответствует закрытому, которым я подписываю новый созданный сертификат для пользователя.

Цитата:
Можно его подпись проверить ключем из 2) с помощью CryptVerifyCertificateSignature?

Спасибо, попробую
Offline akulema  
#20 Оставлено : 14 ноября 2008 г. 14:47:58(UTC)
akulema

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

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

Я проверил созданный сертификат открытым ключом, созданной пары (CryptVerifyCertificateSignature вернуло ошибку с описанием "Неверная подпись")
Мне кажется, что я все-таки что то делаю не так.
Я создаю пару для hProv.
Загружаю в hProvCA закрытый ключ.
В CERT_INFO передаю public_key от hProv.
И создаю сертификат с hProvCA .


Что то тут не так.

Отредактировано пользователем 14 ноября 2008 г. 14:57:25(UTC)  | Причина: Не указана

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