У меня есть сертификат подписи кода от StartCom (StartSSL). Я очень доволен их услугами: их обслуживание очень быстрое, а цены очень разумные.
Получение сертификата подписи кода
Для получения сертификата подписи кода требуется проверка подлинности класса 2 . StartCom проведет вас через весь процесс (с отличной скоростью ответа, обычно в течение десяти минут, по моему опыту).
Если вы хотите сразу узнать подробности, прочтите этот пост в блоге . Я был подтвержден в течение часа (за плату в 59,90 $ через Paypal).
После проверки сгенерируйте новый закрытый ключ и запрос на подпись сертификата (CSR). Обратите внимание, что все поля, кроме открытого ключа, игнорируются . Вся информация в сертификате выводится из информации, которую вы предоставляете во время проверки личности, а не из вашего CSR .
Отправьте его через веб-интерфейс, и вы быстро получите новый сертификат, действительный в течение двух лет (я получил свой в течение часа).
Проблема: пожизненный OID подписи
Сертификаты StartCom класса 2 имеют установленный идентификатор пожизненной подписи. Из-за этого бита подпись подписанного кода станет недействительной после истечения срока действия сертификата, даже если она имеет отметку времени.
Когда я спросил Эдди Нигга (COO / CTO StartCom) о причине этого OID, он ответил:
От нас требуется, чтобы CRL действовали в течение 20 лет после истечения срока действия сертификатов. Это то, что мы можем сделать для сертификатов уровня EV (гораздо меньший объем, другие условия оплаты), но увеличим цену для класса 2 только для этой выгоды (где подпись кода является только частью вариантов на этом уровне).
Таким образом, временные метки доступны только после расширенной проверки (EV), которая доступна только для законно учрежденных организаций и стоит 199,90 $. Таким образом, отдельные разработчики не могут использовать временные метки с сертификатом подписи кода от StartCom .
Долгое время я считал это ограничение большой проблемой. Недавно я изменил свое мнение: это происходит только раз в два года, пользователи, заботящиеся о безопасности, могут быть более склонны получить последнюю версию моего программного обеспечения, а старые версии программного обеспечения по-прежнему будут работать (для тех, кто хочет их использовать; правда без проверенной подписи).
Примечание. Всегда ставьте метку времени для кода, даже если установлен флаг подписи на весь срок службы ! Подписи с отметками времени будут оставаться действительными до истечения срока действия сертификата, даже если сертификат был отозван (очевидно, только если подпись была создана до того, как сертификат был отозван).
Практическое использование сертификата
В StartCom вы платите только за валидацию. Проверка личности действительна в течение 350 дней, и в течение этого периода вы можете бесплатно запросить сертификаты для подписи кода. У вас может быть только один действительный сертификат подписи кода, и его можно использовать для подписи любого кода (MSI, DLL, XPI, ...), но не кода драйвера (для этого требуется EV).
Чтобы изменить атрибут сертификата, предыдущий сертификат должен быть отозван и запрошен новый. Отзыв сертификата стоит 29,90 $. Хотя, когда я сменил адрес электронной почты через день после получения сертификата для подписи кода, они в порядке исключения отозвали мой сертификат без комиссии (я был приятно удивлен)!
истечение
Когда срок действия вашего сертификата истекает (почти через два года), вы получаете уведомление (за две недели до этого). Если ваша подтвержденная личность все еще действительна (напомним, что срок действия проверки истекает через 350 дней; затем вам необходимо подтвердить свою личность еще раз за 59,90 $), вы можете запросить новый сертификат, не отменяя предыдущий. Не забудьте опубликовать новый выпуск вашего программного обеспечения, подписанный этим новым сертификатом подписи кода, потому что в предыдущих выпусках вскоре будет отображаться «(не проверено)» или что-то подобное.
OCSP
Получив сертификат, я подписал надстройку Firefox. Однако он по-прежнему показывал «(Автор не проверен)», хотя мой файл XPI был правильно подписан. Оказалось, что Firefox не получил текущий статус сертификата, когда запросил у OCSP-серверов StartCom статус отзыва моего нового сертификата. возможно актуальная тема форума
Примерно через полдня мой сертификат был известен серверам OCSP, и мое имя появилось, как и ожидалось. Извлеченный урок: после получения нового сертификата подождите около суток, прежде чем опубликовать программное обеспечение с новой подписью.