Подписание приложения Adobe Air с помощью файла spc

Недавно я приобрел цифровой сертификат GoDaddy для подписи приложения Adobe Air. GoDaddy и, возможно, некоторые другие центры сертификации предоставляют свои сертификаты в виде файлов SPC. Однако большая часть информации о компиляции и подписи приложения air предполагает, что у вас есть файл p12. Я потратил некоторое время на выяснение того, как справиться с этой проблемой, и подумал, что было бы неплохо поделиться этим процессом с сообществом SO. Я опубликую ответ в ближайшее время.


person Josh    schedule 22.12.2010    source источник


Ответы (1)


Ключом к правильному методу было понимание того, что файл p12 является хранилищем ключей, а не просто сертификатом. Хранилище ключей содержит ключ и сертификат. При подписании приложения Adobe Air вам необходимо указать хранилище ключей, а не только сертификат. Итак, позвольте мне начать сверху.

Шаг 1. Создайте хранилище ключей

keytool -genkey -alias codesigncert -keypass <yourkeypwd> -keyalg RSA -keysize 2048 -dname "CN=displayname,O=companyname,C=US,ST=state,L=city" -keystore codesignstore -storepass <yourstorepwd>

Шаг 2. Создайте запрос на сертификат

keytool -certreq -v -alias codesigncert -file mycsr.pem -keystore codesignstore

Шаг 3. Приобретите сертификат в ЦС, используя CSR, созданный на предыдущем шаге. В моем случае я загрузил сертификат в виде файла SPC.

Шаг 4. Добавьте сертификат в хранилище ключей.

keytool -import -keystore codesignstore -storepass <yourstorepwd> -alias codesigncert -file mycert.spc

Шаг 5. В настоящее время ваше хранилище ключей является хранилищем ключей Java (JKS). Преобразуйте это в PKCS12

keytool -importkeystore -srckeystore codesignstore -srcstoretype JKS -deststoretype PKCS12 -destkeystore codesignstore.p12

Шаг 6. Подпишите приложение

adt -package -storetype pkcs12 -keystore codesignstore.p12 -storepass <yourstorepwd> -keypass <yourkeypwd> <name of output file> application.xml <path to root dir>

Я думаю, что, вероятно, также можно пропустить шаг 5 и выполнить шаг 6, используя хранилище ключей JKS. Однако я не подтверждал, что это работает.

person Josh    schedule 22.12.2010
comment
Эти инструкции очень похожи на инструкции от godaddy. - person Be Kind To New Users; 20.03.2012