Как создать p12 файл
После того, как вы создали сертификат, вам нужно будет загрузить его на сервера Telegram — для этого передайте его в поле certificate метода setWebhook. Это действие обязательно только для самозаверенных сертификатов. Приобретённые за деньги или полученные через certbot сертификаты никуда отправлять не нужно.
OpenSSL
Исполняемые файлы OpenSSL для Windows доступны в сети.
Исходные коды доступны на GitHub и на официальном сайте.
Генерация пары сертификатов
Необходимо использовать YOURPUBLIC.pem в качестве публичного ключа при настройки вебхука.
- Проверить сертификат можно командой:
- Конвертация из уже сгенерированного DER:
- Конвертация из уже сгенерированного PKCS12:
Java keystore
С подробной документацией можно ознакомиться на сайте документации Oracle.
Генерация самозаверенного JKS
Конвертация JKS в PKCS12
Промежуточный этап перед конвертацией в PEM:
Конвертация PKCS12 в PEM
Для этой операции необходим OpenSSL:
Windows
Создание самозаверенного сертификата доступно и стандартными средствами Windows, несмотря на то, что исполняемые файлы OpenSSL для Windows доступны для скачивания.
Для настройки вебхука нужен только публичный ключ.
Создайте файл TEMPLATE.txt с таким содержанием:
Далее выполните в командной строке:
После этого будет создан и установлен самозаверенный сертификат. Для просмотра выполните:
Экспортируем в DER (промежуточный этап перед конвертацией в PEM):
Конвертация в PEM (используется для настройки вебхука):
Удаление сертификата из хранилища:
Экспорт в формат PFX(PKCS12):
С подробной документацией можно ознакомиться на сайте документации Microsoft.
Конвертировать YOURPKCS.pfx в PEM (который включает в себя приватный ключ) лучше делать с помощью OpenSSL:
В качестве графического интерфейса для экспорта публичной части сертификата в PEM можно использовать certmgr.msc.
Сайт про Telegram на русском (неофициальный).
Здесь собраны приложения на базе MTProto, переведена некоторая документация с официального сайта, а также работает Webogram.
У нас есть приложение iOS, чей сертификат push-уведомления истек, и мы пытаемся создать новый. Я создал новые сертификаты на портале Provisioning (ios_developer.cer, ios_distribution.cer) и загрузил их. Я выполнял инструкции здесь, в Stack Overflow, чтобы преобразовать его в PEM, а затем в файлы P12, но я застрял. Когда я пытаюсь преобразовать PEM в P12, он хочет получить секретный ключ, и я не знаю, где его получить.
Я также попытался загрузить их в Keychain Access. Я прочитал, что вы можете экспортировать их как P12, но когда я делаю Импорт, они не появляются нигде.
ОТВЕТЫ
Ответ 1
Ваш закрытый ключ генерируется при создании запроса подписи в Keychain Access. После того, как сертификат будет сгенерирован и загружен, дважды щелкните его, чтобы добавить его в Keychain Access, где он будет сопоставлен с закрытым ключом. Затем вы можете выбрать сертификат и открыть стрелку, чтобы также выбрать закрытый ключ и экспортировать их вместе как .p12 файл из Keychain Access.
Ответ 2
.p12 файлы используются для публикации приложения в Apple App Store
а. Создайте файл CSR (.certSigningRequest)
Это создаст и сохранит ваш файл certSigningRequest (CSR) на ваш жесткий диск. Открытый и закрытый ключ также будет создан в Keychain Access с введенным общим именем.
В. Создайте файл ".cer" в учетной записи разработчика iOS
С. Установить .cer и сгенерировать сертификат .p12
Ответ 3
Ответ 4
вы не получите опцию expand, если вы не фильтруете, выбирая (Сертификаты) из нижнего нижнего угла в цепочке ключей
Ответ 5
Для тех, кто все еще имеет эту проблему, решение для меня состояло в том, чтобы НЕ выбирать оба и "Экспортировать 2 элемента" (ключ и сертификат), а скорее экспортировать сертификат, который УЖЕ включает ключ. С 2016 года я думаю, что это способ сделать это, потому что предыдущие загрузки, которые работали с экспортом, больше не работают.
Ответ 6
Для всех, у кого есть опция P12 серого/серого цвета:
Убедитесь, что вы находитесь в категории "Мои сертификаты" или "Сертификаты" в Keychain Access.
Ответ 7
Чтобы получить файл p12, идите по этому пути..
Шаг 1. В XCode > выберите " Настройки проекта" > " Основные" > " Подпись "> " Подписание сертификата".
Посмотрите, какой сертификат вы используете для этого конкретного приложения, как показано на рисунке ниже
Шаг 2. Откройте цепочку ключей > в левом нижнем разделе категории > Сертификаты
Найдите сертификат и откройте ребенка, нажав на стрелку вниз, как показано на рисунке.
Генерация самоподписанного сертификата для hpd одной командой
Ниже приведены конкретные этапы создания ключа, которые которые в командах выше происходят в полностью автоматическом режиме.
Генерация секретного ключа RSA (RSA private key)
Дле генерации используется команда:
- <Key Filename> — название секретного ключа;
- <Key Size> — длина ключа. Доступные значения: 1024, 2048, 4096.
Генерация запроса на получение сертификата (Certificate Signing Request)
Чтобы получить SSL - сертификат необходимо сгенерировать запрос на получение сертификата (Certificate Signing Request) на сервере. CSR представляет собой зашифрованный текст, содержащий информацию о компании и доменном имени.
В большинстве случаев CSR содержит следующие поля: страна (Country), регион (State/Province), город (Locality/City), организация (Organization), отдел (Organizational Unit) и доменное имя (Common Name). Обратите внимание:
- Поле "страна" должно содержать код из двух символов.
- Поля "регион" и "город" должны содержать полные названия.
- Поле "организация" — полное юридическое название компании или ФИО предпринимателя, если сертификат оформляется на него.
- Поле "отдел" — отдел организации, который занимается покупкой сертификата, например "IT".
- "Доменное имя" — полное доменное имя, на которое приобретается сертификат.
Команда создания запроса выглядит следующим образом:
- <Key Filename> — название секретного ключа RSA;
- <Request Filename> — название файла запроса на получение сертификата.
После ввода команды, запустится интерактивный режим с вопросами о компании, которой выдается сертификат. Отвечая на вопросы, нужно внести информацию о компании.
Создание самозаверенного сертификата (Self-signed public certificate)
- <Amount days> — количество дней, но которое создается сертификат;
- <Request Filename> — файл запроса на получение сертификата ( Certificate Signing Request );
- <Key Filename> — файл, секретный ключ RSA;
- <Certificate Filename> — название с амозаверенного сертификата (Self-signed public certificate ).
Команда :
Преобразовать клиентский сертификат в PEM-файл можно с помощью следующей команды:
Чтобы создавать приложения для iPhone с помощью Flash Professional CS5, необходимо использовать файл сертификата P12. Этот сертификат создается на основе файла сертификата разработчика iPhone, полученного от компании Apple.
Преобразование сертификата разработчика iPhone в файл P12 в ОС Mac OS
Загрузив сертификат iPhone с сайта Apple, экспортируйте его в виде файла P12. В ОС Mac® OS выполните следующие действия.
Откройте программу «Связка ключей» (каталог Программы/Служебные программы).
Если сертификат еще не добавлен в связку ключей, выберите «Файл» > «Импорт». Найдите файл сертификата (CER-файл), полученный от компании Apple.
В программе «Связка ключей» выберите категорию «Ключи».
Выберите личный ключ, связанный с данным сертификатом на разработку iPhone.
Личный ключ идентифицируется связанным с ним открытым сертификатом «Разработчик iPhone: <имя> <фамилия>».
Выберите «Файл» > «Экспортировать объекты».
Сохраните ключ в формате файла обмена личными данными (.p12).
Появится запрос на создание пароля, который используется при попытке импорта этого ключа на другой компьютер.
Преобразование сертификата разработчика Apple в файл P12 в ОС Windows
Чтобы создавать приложения iPhone с помощью Flash CS5, необходимо использовать файл сертификата P12. Этот сертификат создается на основе файла сертификата разработчика iPhone, полученного от компании Apple.
Преобразуйте файл сертификата разработчика, полученный от компании Apple, в файл сертификата PEM. С помощью командной строки запустите следующую операцию из каталога корзины (bin) OpenSSL.
Если используется личный ключ из связки ключей на компьютере с ОС Mac, преобразуйте его в ключ PEM:
Теперь можно создать действительный файл P12 на основе ключа и версии PEM сертификата разработчика iPhone:
Если используется ключ из связки ключей в ОС Mac OS, используйте версию PEM, созданную при выполнении предыдущего шага. В противном случае используйте ключ OpenSSL, созданный ранее (в ОС Windows).
На посты, размещаемые в Twitter™ и Facebook, условия Creative Commons не распространяются.
У нас есть приложение для iOS, срок действия сертификата push-уведомлений которого истек, и мы пытаемся создать новый. Я создал новые сертификаты на портале Provisioning Portal (ios_developer.cer, ios_distribution.cer) и загрузил их. Я следовал инструкциям здесь, на Stack Overflow, чтобы преобразовать его в файлы PEM, а затем в файлы P12, но я застрял. Когда я затем пытаюсь преобразовать PEM в P12, ему нужен какой-то закрытый ключ, и я не знаю, где его получить.
Я также пробовал загрузить их в Keychain Access. Я читал, что вы можете экспортировать их как P12 оттуда, но когда я выполняю импорт, они нигде не отображаются.
Ваш закрытый ключ создается при создании запроса на подпись в Keychain Access. После того, как сертификат будет сгенерирован и загружен, двойной щелчок по нему добавит его в Keychain Access, где он будет сопоставлен с закрытым ключом. Затем вы можете выбрать сертификат и открыть стрелку, чтобы также выбрать закрытый ключ и экспортировать их вместе как файл .p12 из Keychain Access.
Я оказался здесь, когда пытался создать приложение для iOS в облаке с помощью MS Visual Studio App Center БЕЗ Mac. Проблема в том, что в каждом учебном пособии используется ответ Джайпракаша Дубея с наивысшим рейтингом, приведенный выше. В этом подходе используются Mac и KeyChain. Решение взято из SO здесь.
Вам понадобится Ключ (aps_development.key), а затем:
Затем вы можете продолжить и создать идентификатор приложения и профиль обеспечения. Это позволит вам построить в Центре приложений.
Для тех, у кого все еще есть эта проблема, я решил НЕ выбирать и «Экспортировать 2 элемента» (ключ и сертификат), а просто экспортировать сертификат, который УЖЕ включает ключ. С 2016 года я думаю, что это способ сделать это, потому что предыдущие загрузки, которые работали с элементами экспорта 2, больше не работают.
Для тех, у кого есть серый / серый вариант P12:
Убедитесь, что вы находитесь в категории «Мои сертификаты» или «Сертификаты» в программе «Связка ключей».
Чтобы получить файл p12, сделайте это ..
Шаг 1. В XCode > перейдите в Настройки проекта > Общие > Подпись . > Сертификат подписи
Посмотрите, какой сертификат вы используете для этого конкретного приложения, как показано на изображении ниже.
Шаг 2. Откройте Связку ключей > слева внизу раздел Категория > Сертификаты .
Найдите сертификат и откройте дочерний элемент, щелкнув стрелку вниз, как показано на изображении.
Шаг 3. Щелкните правой кнопкой мыши и экспортируйте как «Certificates.p12», указав свой пароль, например. «123456»
ОК, проблема решена! кажется, что когда я дважды щелкаю сертификат, он автоматически устанавливает его в цепочку ключей SYSTEM - я не знаю почему. Вместо этого я просто перетаскиваю сертификат в связку ключей LOGIN, и тогда все хорошо. Благодаря этой статье -> Добавление сертификатов в связку ключей и создание .p12 формат файла - alon rosenfeld 10 месяцев назад
Вы не получите вариант развертывания, если не отфильтруете, выбрав (Сертификаты) в левом нижнем углу цепочки ключей
Файлы .p12 используются для публикации приложения в Apple App Store
А. На вашем Mac Создайте CSR-файл (.certSigningRequest)
- Откройте Связку ключей из служебных программ
- На панели инструментов "Связка ключей" выберите Доступ к связке ключей -> Настройки .
- Во всплывающем окне выберите вкладку Сертификаты .
- Установите для «Протокол состояния онлайн-сертификатов» и «Список отозванных сертификатов» значение «Выкл.» .
- Закрыть это окно
- Теперь на панели инструментов откройте Связка ключей> Помощник по сертификации> Запросить сертификат у центра сертификации .
- Введите адрес электронной почты и обычное имя, которые вы использовали для регистрации в программе для разработчиков iOS.
- Оставьте поле CA Email пустым и выберите «Сохранено на диск» и «Я могу указать информацию о паре ключей».
- Нажмите Продолжить
- Выберите имя файла и место на жестком диске
- Нажмите Сохранить
- В следующем окне установите значение « Размер ключа» равным «2048 бит» .
- Установите для «Алгоритм» значение «RSA» .
- Нажмите Продолжить
Это создаст и сохранит ваш файл certSigningRequest (CSR) на вашем жестком диске. Открытый и закрытый ключи также будут созданы в Keychain Access с введенным общим именем.
Б. Создайте файл ".cer" в учетной записи разработчика iOS
С. Установите .cer и сгенерируйте сертификат .p12
Обратите внимание, что если проблема не устранена, попробуйте также следующий шаг:
Если ваша связка ключей присутствует в iCloud, удалите все содержимое связки ключей из iCloud и выполните новую настройку в iCloud. Это должно сработать.
Читайте также: