Изменения относительно правил выпуска Code Signing SSL-сертификатов
С 1 июня 2023 года CA/Browser Forum обновил правила по выпуску Code Signing сертификатов с целью дополнительной защиты от попадания шифрования в чужие руки. На изменения отреагировал также центр сертификации Sectigo – отныне клиенты не будут определять, как и где будет храниться приватный ключ для сертификата.
Тем не менее Sectigo (Comodo) OV Code Signing сертификаты будут устанавливаться на HSM (hardware security module) USB носитель и безопасно доставляться из США на физический адрес клиентов. Вы также можете использовать собственное устройство, однако оно обязательно должно быть FIPS-совместимым и поддерживать аттестацию ключа с внешней проверкой.
Сейчас поддерживается следующее оборудование:
- Thales/Safenet Luna и netHSM-устройства
- Yubico FIPS Yubikeys (только для ключей ECC)
В будущем этот список может быть расширен, поскольку все больше аппаратного обеспечения и услуг предлагают поддержку аттестации ключей.
Что такое Code Signing сертификат?
Code Signing SSL – это сертификат для подписи программного обеспечения или скриптов, который подтверждает автора программы и гарантирует, что код не был изменен, после того, как на него была наложена цифровая подпись. Их также называют сертификатами для разработчиков.
Не повлияют ли новые правила на существующие сертификаты?
Вы можете продолжать использовать активный Code Signing сертификат. И никаких дополнительных мер для этого предпринимать не нужно.
Однако стоит заметить, что перевыпуск вашего Code Signing сертификата нужно будет осуществлять уже на HSM/токене.
Какой теперь будет процедура перевыпуска сертификата Code Signing?
Теперь при заказе SSL-сертификата Code Signing вы сможете самостоятельно выбирать способ доставки сертификата:
- Использовать собственный HSM
- Токен + доставка (по территории США) $135.00 – дополнительно к стоимости SSL
- Токен + ускоренная доставка (по территории США) $210.00 – дополнительно к стоимости SSL
- Токен + международная доставка (из США в Украину или другие страны) $195.00 – дополнительно к стоимости SSL
Как сгенерировать пакет подтверждения Public Key на Luna Network Attached v7.x HSM?
Luna HSM генерирует public key confirmation package (пакет подтверждения публичного [открытого] ключа). С помощью него можно проверить, что пара ключей – частного (Private key), который известен только владельцу, и публичного (Public key) – который может быть опубликован в сертификате и используется для проверки подлинности подписанного документа, действительно была сгенерирована и сохранена в Luna HSM.
Сгенерированные файлы подтверждения открытого ключа, или (PKC) – это файлы DER PKCS7, которые содержат цепочку сертификатов.
При генерации PKC для пары ключей RSA есть два возможных формата:
- TC-Trust Center – в этом формате PKC содержит 3 сертификата, и цепочка не заканчивается ожидаемым root-ом SafeNet.
- Chrysalis-ITS – в этом формате PKC содержит 5 сертификатов, а цепочка заканчивается ожидаемым root-ом SafeNet.
Пример создания пакета подтверждения публичного ключа в формате Chrysalis-ITS
Шаг 1.
После подключения устройства создаем пару ключей RSA, CSR и PKC в формате Chrysalis-ITS.
Сгенерируем пару ключей RSA на Luna Partition1 с помощью утилиты LunaCM2 и команды:
Windows
c:\ cd c:\Program Files\SafeNet\LunaClient
c:\Program Files\SafeNet\LunaClient\> lunacm
Linux
> cd /usr/safenet/lunaclient/bin
./lunacm
COMMAND:
cmu gen -modulusBits=3072 -publicExp=65537 -sign=T -verify=T -label=example-key -extractable=false
Обратите внимание: параметры -extractable=false и -sign=T являются обязательными. Без них Luna не сможет использовать этот ключ для подписания CSR.
Шаг 2.
Получите дескрипторы ваших Public key и Private key в выводе следующих команд:
cmu list -class public
cmu list -class private
Шаг 3.
Создайте CSR с помощью команды (замените AAA и BBB на ваши Public key и Private key соответственно):
cmu requestcert -publichandle=AAA -privatehandle=BBB -C=CA -L=Ottawa -O=Sectigo -CN=PKC Test Cert -outputFile=rsacsr.pem
Шаг 4.
Создайте PKC, выполнив следующую команду. Замените AAA на свой открытый ключ [Public key]:
cmu getpkc -handle=AAA -outputfile=<filename>.p7b -pkctype=2 -verify
Шаг 5.
Сохраните <filename>.p7b, чтобы отправить его как пакет подтверждения Public key.
Шаг 6.
Дважды щелкните <filename>.p7b, чтобы просмотреть цепочку сертификатов.
Этот PKC-файл вы сможете загрузить при заказе/перевыпуске Code Signing SSL.
Как сгенерировать пакет подтверждения на YubiKey 5 FIPS Series HSM?
Эта инструкция подойдет только для Windows. Если у вас другая операционная система, пожалуйста, воспользуйтесь гайдами на сайте YubiCo.
Шаг 1.
Подключаем YubiKey 5 FIPS HSM и запускаем YubiKey Manager. Ваше устройство YubiKey 5 FIPS должно отображаться в окне.
Шаг 2.
Переходим в раздел «Application» ⇒ «PIV» и нажимаем «Configure Certificates».
Шаг 3.
На вкладке Authentication (Slot 9a) [для Code Signing EV-сертификатов] кликаем Generate.
Шаг 4.
В чекбоксе выбираем Certificate Signing Request (CSR) и нажимаем Next.
Шаг 5.
Из раскрывающегося меню выбираем алгоритм (ECCP256 или ECCP384) и нажимаем «Далее».
Шаг 6.
Вводим название вашей организации в поле Subject.
Шаг 7.
Проверяем отображенные данные и нажимаем «Generate».
Шаг 8.
Выбираем директорию, вводим узнаваемое название файла, чтобы потом легко его найти, и сохраняем в формате CSR.
Шаг 9.
Введите ваш Management Key YubiKey и нажмите OK. Далее введите пин-код YubiKey и тоже нажмите OK.
Шаг 10.
А теперь сгенерируем подтверждение. Для этого откроем Windows PowerShell от имени администратора. Изменяем директорию на директорию YubiKey:
cd 'C:\Program Files\Yubico\YubiKey Manager\'
Чтобы сгенерировать сертификат аттестации, выполним такую команду (не забудьте изменить название файла в пути):
.\ykman.exe piv keys attest -F PEM 9a <filename>.crt
Шаг 11.
Чтобы получить промежуточный сертификат, выполним команду:
.\ykman.exe експорт сертифікатів piv -F PEM f9 intermediateCA.crt
Шаг 12.
Чтобы закодировать сертификаты аттестации в base64 как единый файл, выполним приведенные ниже команды (команда certutil encode добавит верхний/нижний колонтитул PEM, которые НЕ должны быть включены, а findstr удалит их):
type attestation.crt intermediateCA.crt > attestation.pem
certutil -encode attestation.pem attestation.b64
findstr /v CERTIFICATE attestation.b64 > attestation.b64
Сохраните файл. Далее вы сможете загрузить его как файл аттестации в форме заказа Code Signing сертификата.
Вывод
На этом, собственно, и все. Мы с вами выяснили, как будет происходить заказ/перевыпуск сертификатов подписи кода в соответствии с изменениями.
Помните, что вы всегда можете положиться на нашу помощь с заказом и выпуском вашего Code Signing сертификата. Просто обратитесь в наш Отдел техподдержки, мы в быстром доступе 24/7.
Возможно, вас заинтересует
Установка SSL-сертификата на IIS
Если Вы используете веб-сервер IIS, установку SSL-сертификата можно разделить на два основных этапа. Первый...
Обновлено: 21.12.2022
|
Наш телеграм
с важными анонсами, розыгрышами и мемами
Присоединиться