Подтвердить что ты не робот

Как я могу использовать существующий закрытый ключ для нового сертификата разработки iOS?

По эстетическим соображениям я хотел бы использовать тот же секретный ключ, что и раньше, чтобы создать свой сертификат распространения, чтобы создать новый сертификат разработки (мой старый истек). Но "Как создать сертификат разработки" на портале инициализации iOS требуется, чтобы вы использовали Keychain Access для создания нового ключа. Когда я пытаюсь выполнить Keychain Access > Certificate Assistant > Запросить сертификат из центра сертификации с помощью "(мое имя ключа)", помощник сертификата фактически не создает файл CSR.

Кто-нибудь знает, можно ли это сделать, и если да, то как?

4b9b3361

Ответ 1

Во-первых, мне пришлось экспортировать свой закрытый ключ из keychain в виде файла p12. Я пробовал скриптировать это, но не увенчался успехом.

  • Откройте цепочку ключей и выберите свой закрытый ключ.
  • Щелкните правой кнопкой мыши и выберите "Экспорт"
  • Используйте тип файла p12.

Запустите следующую команду openssl, чтобы преобразовать файл p12, защищенный паролем, в pem. openssl запросит пароль.

openssl pkcs12 -in your-newly-exported-p12-file.p12 -out your-newly-exported-p12-file-as-a-pem.pem -nodes

Запустите следующую команду в файле pem для создания csr.

openssl req -new -key your-newly-exported-p12-file-as-a-pem.pem -out your-csr-to-submit-to-apple.csr

Ответ 2

Чтобы сгенерировать CSR из существующего Private Key в Keychain Access, просто щелкните правой кнопкой мыши (щелчок двумя пальцами) на Private Key, который вы хотите использовать, и выберите ЗАПРОСИТЕ СЕРТИФИКАТ ОТ АВТОРСТВА СЕРТИФИКАТА С "(Имя моего ключа)"

Затем введите адрес электронной почты пользователя и адрес электронной почты CA (я просто использую тот же адрес электронной почты для обоих), а затем выберите "Сохранено на диск".

Ответ 3

Вам комфортно работать с OpenSSL и командной строкой? Там обсуждение в списке рассылки о создании CSR вручную. FWIW, я не смог создать CSR, используя выбранный ключ в Access Keychain Access/Certificate Assistant.

Ответ 4

Сегодня я прошел через этот ад. Я хотел автоматизировать экспорт ключа для создания CSR через командную строку. Я нашел инструмент, написанный в c, который обещал то, что я хотел: keychain_access. Я скомпилировал и играл с ним, но не смог экспортировать свой ключ распространения. Я снова создал инструмент с нуля с помощью новейшего API безопасности Apple и печати атрибутов атрибута связки ключей, но все еще не смог найти ключ по метке. Я смог перечислить его без поиска меток. В отчаянной попытке я переименовал ключ в инструмент доступа к keychain и переименовал его обратно в старое имя. После этого мой инструмент, наконец, пикетирует ключ по метке. А также правый щелчок REQUEST A CERTIFICATE FROM A CERTIFICATE AUTHORITY WITH "(My Key Name)" снова начал работать. Кажется, что имя было сохранено в другой кодировке или что-то в этом роде. Не удалось найти ключ для ячеек, связанных с яблоками, с помощью ключа!