Метод JKS для подписи кода Java - Генерация и установка сертификата                        
                    
                     17 сент. 2024 г.
                    
    Метод JKS для подписи кода Java - Генерация и установка сертификата
    Цель статьи: в этой статье представлены пошаговая инструкция по созданию и установке сертификата для подписи кода Java. Если это не то решение, которое вы ищете, поищите его в строке поиска выше. 
Примечание. Это руководство предназначено для перевыпущенных сертификатов подписи кода, выпущенных до 1 февраля 2017 г. Для новых заказов или заказов на продление, размещенных после 1 февраля 2017 г., ознакомьтесь с руководством по работе с токенами, которое можно найти здесь. 
 
Инструкции
Как только вы получите электронное письмо с темой «Сертификат готов к загрузке – НОМЕР ЗАКАЗА: подпись кода для сертификата Sun Java для названия компании», вам будет предложено отправить запрос на подпись сертификата (CSR). Используя keytool, вам нужно будет создать новое хранилище ключей. 
 
	- Чтобы создать новое хранилище ключей, используйте следующую команду в качестве примера:
 
 keytool -genkey -alias codesigningcert -keyalg RSA -keysize 2048 -keystore globalsign.jks
- Вам будет предложено ввести следующие данные:
 Введите пароль хранилища ключей:
 Повторно введите новый пароль:
 Ваше имя и фамилия?
 [Неизвестно]: название вашей компании
 Как называется ваше организационное подразделение?
 [Неизвестно]: Отдел
 Как называется ваша организация?
 [Неизвестно]: Название компании
 Как называется ваш город или населенный пункт?
 [Неизвестно]: Город
 Как называется ваш штат или провинция?
 [Неизвестно]: штат/округ
 Какой двухбуквенный код страны?
 [Неизвестно]: Страна
 CN = название вашей компании, OU = отдел, O = название компании, L = город, ST = округ, C = страна?
 [нет]: да
 
 Введите пароль для сертификата
 (ENTER, если такой же, как пароль хранилища ключей):
- Теперь вы создали хранилище ключей с соответствующими данными о ключах и сертификатах, которые необходимы для создания CSR. Это можно сделать с помощью следующей команды. Примечание. Убедитесь, что вы указали псевдоним для ключа.
 
 keytool -certreq -alias codesigningcert -file codesigningcert.csr -keystore globalsign.jks
 Введите пароль хранилища ключей:
- Теперь CSR создан. Откройте CSR с помощью Блокнота или любого программного обеспечения для редактирования текста и вставьте его на страницу получения, которую вы получили по электронной почте.
- На последней странице вам будут представлены 2 загрузки. Нажмите, чтобы загрузить оба.
 
  
 
 Рекомендуется загрузить сертификат GlobalSign Root CA, который можно получить в статье поддержки корневых сертификатов. Обратите внимание, что требуется корневой сертификат, если у вас есть сертификат SHA-256 (выпущенный 31.03.2014 и позже), вам понадобится Root-R3.crt
- Теперь у вас будет три загруженных файла. Следующим шагом будет их импорт с помощью keytool. Используйте следующие команды:
 
 keytool -import -v -trustcacerts -alias root -file Root-R1.crt -keystore globalsign.jks
 
 Введите пароль хранилища ключей:
 Сертификат уже существует в общесистемном хранилище ключей CA под псевдонимом globalsignca
 Вы все еще хотите добавить его в собственное хранилище ключей? [нет] да
 Сертификат добавлен в хранилище ключей
 [Сохранение globalsign.jks]
 
 keytool -import -v -trustcacerts -alias intermediate -file intermediate1.cer -keystore globalsign.jks
 Введите пароль хранилища ключей:
 Сертификат добавлен в хранилище ключей
 [Сохранение globalsign.jks]
 
 При импорте сертификата очень важно указать тот же псевдоним, что и для закрытого ключа, иначе вы получите сообщение «Сертификат добавлен в хранилище ключей» вместо следующего:
 
 keytool -import -trustcacerts -alias codesigningcert -file OS2013********.cer -keystore globalsign.jks
 Введите пароль хранилища ключей:
 Ответ сертификата был установлен в хранилище ключей
 Вы успешно импортировали необходимые сертификаты. Теперь вы готовы начать подписывать свои Java-апплеты. Существует несколько методов подписи с помощью инструмента подписи кода GlobalSign или напрямую с помощью jarsigner, как показано ниже:
 
 jarsigner -keystore globalsign.jks -tsa http://timestamp.globalsign.com/tsa/r6advanced1 codesigner.jar "codesigningcert"
 
 Вы успешно подписали свое Java-приложение с временной меткой. Если у вас возникли проблемы, запустите указанную выше команду еще раз, но включите в нее -verbose, чтобы увидеть ошибки. Вы также можете проверить, подписали ли вы свой файл, используя следующую команду:
 
 jarsigner -verify codesigner.jar
 файл jar проверен.
 
 Дополнительные ресурсы:
 Комплект для разработки Java: http://www.oracle.com/technetwork/java/javase/downloads/index.html