15.06.2007 9:52:00Как добавить новый корневой сертификат Ответов: 5
Павел
Для прохождения кросс-сертификации мы собираемся установить новый корневой сертификат УЦ для ГОСТа 2001ого года (сейчас 94). Как это сделать?
 
Ответы:
15.06.2007 12:20:17Василий
Т.е. Вы на действующем Центре Сертификации во время смены сертификата самого ЦС хотите поменять алгоритм ключа с ГОСТ..94 на ГОСТ..2001 ?
Если да, сообщите подробности:
1) ОС на сервере ЦС
2) это просто MS CA или "КриптоПро ЦС" (если второе - сообщите номер сборки) или это ЦС другого производителя
3) версия, билд КриптоПро CSP
18.06.2007 11:35:02Павел
1) Windows 2000 Server
2) КриптоПро ЦС build 1.03.0323
3) КриптоПро CSP 2.0 build 2049
18.06.2007 12:37:41Василий
Штатной процедуры смены алгоритма ключа сертификата MS CA при смене сертификата ЦС Microsoft, к сожалению, не предоставляет.
Есть недокументированные особенности MS CA, которые можно использовать. Но, вряд ли кто даст гарантии полной работоспособности...
С технической точки зрения, нужно будет править реестр, выпускать сертификат ЦС, потом менять в нём алгоритм ключа, заново его переподписывать и устанавливать с привязкой к существующему ключу, вновь править реестр и запускать ЦС. Это разовое действие. Но, во всех выпускаемых списках отзыва сертификатов (СОС) будет содержаться одинаковый алгоритм подписи, несмотря на то, что фактически он разный. Наш CSP умеет проверять подпись СОС, даже если в теле СОС указан неправильный алгоритм подписи, т.к. наш CSP не использует поле "алгоритм подписи" из СОС, а определяет его по открытому ключу подписи. Однако, с юридической точки зрения, клиенты могут придраться к таким СОС. Если это не смущает - могу рассказать полную процедуру.

Либо второй вариант - ставить новый УЦ, сразу с алгоритмом 2001-го года и новые сертификаты клиентам делать на нём (при этом можно использовать ту же БД ЦР с сохранением всех зарегистрированных пользователей). А старый (действующий сейчас) УЦ использовать только для отзыва, при необходимости, уже выданных сертификатов.
18.06.2007 15:01:42Павел
Расскажите, пожалуйста
18.06.2007 17:18:17Василий
Инструкция по переводу КриптоПро ЦС с алгоритма ГОСТ Р 34.10-94 на алгоритм ГОСТ Р 34.10-2001

Исходные данные.
Изолированный корневой КриптоПро ЦС версии ***, КриптоПро CSP 2.0 на Windows 2000 SP4. Алгоритм ключа корневого сертификата - ГОСТ Р 34.10-94.

Цель проведения работ:
При плановой смене ключа и сертификата ЦС перейти на использование алгоритма ГОСТ Р 34.10-2001.

Порядок проведения работ:
1. Изменение настроек ЦС для перехода на новый алгоритм ключа.
2. Выпуск нового ключа и нового сертификата ЦС.

Подробности:
1. Изменение настроек ЦС для перехода на новый алгоритм ключа.

В разделе реестра

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CertSvc\Configuration\<имя ЦС>\CSP

исправить значения параметров:

ProviderType – на 75 (десятичное)

ProviderName – на значение по умолчанию для этого типа, которое можно посмотреть в разделе реестра

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider Types\Type 075, параметр «Name».



Пример reg-файла для внесения этих изменений:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CertSvc\Configuration\My CA\CSP]
"ProviderType"=dword:0000004b
"Provider"="Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider"
"HashAlgorithm"=dword:0000801e
"MachineKeyset"=dword:00000001

После внесения изменений необходимо перезапустить службу MS CA.

2. Выпуск нового ключа и нового сертификата ЦС.

Стандартная процедура смены ключа и сертификата MS CA:

В оснастке MS CA в контекстном меню на названии ЦС выбрать пункт «Все задачи – Обновить сертификат ЦС», в следующем окне на вопрос «Хотите сгенерировать новую пару из открытого и закрытого ключей» выбрать «Да» и далее следовать указаниям Мастера.

3. При необходимости – переподписать сертификат с исправлением алгоритма.
3.1. Запускаете mmc, добавляете оснастку Сертификаты, выбираете "локального компьютера".

В хранилище "Доверенные корневые ЦС" находите новый сертификат ЦС, открываете его и сохраняете в файл с именем, например ca.cer (в папку на сервере ЦС), специальную утилиту CaCertSign.exe (даём по запросу) копируете в папку с этим файлом и запускаете:

cacertsign -c -a ca.cer canew.cer имя_контейнера_ЦС, где:
-с – опция для удаления расширения cdp из корневого сертификата, если оно есть (рекомендуется)
-a – опция для удаления расширения aia из корневого сертификата, если оно есть (рекомендуется)
ca.cer – имя входного файла,
canew.cer – имя выходного файла,
имя_контейнера_ЦС – имя нового контейнера ЦС, созданного при смене. Как правило, этот контейнер называется так же, как и ЦС (если имя ЦС не содержит русских букв), с добавлением в конце индекса в скобках, например: (1)

Имя контейнера можете скопировать в буфер обмена в панели КриптоПро CSP – Сервис – Просмотреть сертификаты в контейнере – Обзор для "компьютера".

3.2. в mmc удаляете новый сертификат из "Доверенные корневые ЦС" и из "Промежуточные ЦС" (если он там есть).

3.3. устанавливаете сертификат из файла canew.cer в "Доверенные корневые ЦС" локального компьютера (поставьте галочку "Показать физические хранилища")

3.4. через панель КриптоПро CSP – Сервис – "Установить личный сертификат" устанавливаете сертификат из файла canew.cer в "Личные" локального компьютера

3.5 в оснастке mmc открываете вновь установленный сертификат, на вкладке Состав, последний пункт "Отпечаток" – копируете в буфер обмена содержимое,

далее откройте regedt32,

в разделе HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CertSvc\Configuration\Имя_ЦС

откройте параметр CACertHash, выделите последнюю строку и замените её на содержимое буфера обмена

3.6 перезапустите MS CA