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

Создайте файл PKCS # 12 с самозаверяющим сертификатом через OpenSSL в Windows для моего приложения для Android

Я пишу приложение для Android, которое требует сертификации SSL для определенных веб-запросов. Мне нужно создать файл PKCS12 (.pfx) с самоподписанным сертификатом.

Я решил использовать библиотеку OpenSSL, но я не смог ее создать на своем компьютере (платформа Windows x64). Я хочу сделать это без установки ActivePerl. Кто знает простой способ его создания?

Я пытался создать файл PKCS12 с OpenSSL на моем компьютере друзей (с OpenSSL, Linux), но я ничего не получаю. Может ли кто-нибудь помочь мне и описать последовательность действий для создания файла PKCS12 с помощью Private Key и самоподписанного открытого сертификата?

4b9b3361

Ответ 1

Проект установки Win32 OpenSSL предназначен для простой установки OpenSSL. Он легко настраивается и прост в использовании с помощью простого, эффективного установщика. Не нужно ничего компилировать или перепрыгивать через любые обручи, просто нажмите несколько раз, и он будет установлен, оставив вас делать настоящую работу. Вы можете получить здесь. В вашем случае вам понадобится Win64 OpenSSL v1.0.1e Installer.

В этих инструкциях показано, как создать закрытый ключ PKCS # 12 и файл общедоступных сертификатов, подходящий для использования с HTTPS, FTPS. В этих инструкциях предполагается, что вы загрузили и установили двоичный дистрибутив Windows OpenSSL.

1. Создайте закрытый ключ RSA:

>C:\Openssl\bin\openssl.exe genrsa -out <Key Filename> <Key Size>

Где:

<Key Filename> - желаемое имя файла для файла закрытого ключа

<Key Size> - желаемая длина ключа 1024, 2048 или 4096

Например, введите:

>C:\Openssl\bin\openssl.exe genrsa -out my_key.key 2048.

2. Создать запрос на подпись сертификата:

В версии 0.9.8h и более поздней версии:

>C:\Openssl\bin\openssl.exe req -new -key <Key Filename> -out <Request Filename> -config C:\Openssl\bin\openssl.cfg

Где:

<Key Filename> - это имя входного имени ранее сгенерированного закрытого ключа

<Request Filename> - это имя выходного файла запроса на подпись сертификата

Например, введите:

>C:\Openssl\bin\openssl.exe req -new -key my_key.key -out my_request.csr -config C:\Openssl\bin\openssl.cnf

3. Следуйте инструкциям на экране для получения необходимой информации о запросе сертификата.

4. Создайте самозаверяющий открытый сертификат на основе запроса:

>C:\Openssl\bin\openssl.exe x509 -req -days 3650 -in <Request Filename> -signkey <Key Filename> -out <Certificate Filename>

Где:

<Request Filename> - входное имя файла запроса подписи сертификата

<Key Filename> - это имя входного имени ранее сгенерированного закрытого ключа

<Certificate Filename> - это имя выходного файла открытого сертификата

Например, введите:

>C:\Openssl\bin\openssl.exe x509 -req -days 3650 -in my_request.csr -signkey my_key.key -out my_cert.crt

5. Создайте файл PKCS # 12:

>C:\Openssl\bin\openssl.exe pkcs12 -keypbe PBE-SHA1-3DES -certpbe PBE-SHA1-3DES -export -in <Public Certificate Filename> -inkey <Private Key Filename> -out <PKCS#12 Filename> -name "<Display Name>"

Где:

<Public Certificate Filename> - входное имя файла открытого сертификата, в формате PEM

<Private Key Filename> - это имя входного имени закрытого ключа

<PKCS#12 Filename> - это имя файла вывода файла формата pkcs # 12

<Display Name> - это желаемое имя, которое иногда отображается в пользовательских интерфейсах.

Например, введите:

>C:\Openssl\bin\openssl.exe pkcs12 -keypbe PBE-SHA1-3DES -certpbe PBE-SHA1-3DES -export -in my_cert.crt -inkey my_key.key -out my_pkcs12.pfx -name "my-name"

6. (Необязательно) Удалить ненужные файлы.

В этот момент вам нужен только формат файла PKCS # 12, поэтому вы можете удалить файл запроса подписи сертификата (.csr), файл закрытого ключа (.key) и открытый сертификат (.crt).

Результирующий файл формата PKCS # 12 теперь может использоваться в Secure FTP Server - FIPS.

Полученный в результате файл формата PKCS # 12 (.pfx) теперь можно использовать с браузером Firefox версии 34.0.5.

Ответ 2

Если вы посмотрите на этот сайт " http://www.sslshopper.com/article-most-common-openssl-commands.html, у него есть большинство общих команд, которые вы искали бы. Я должен был сделать это недавно для программы amazon associates и нашел, что их сайт также полезен ( http://docs.aws.amazon.com/IAM/latest/UserGuide/InstallCert.html#SampleCert).By, вам нужно будет установить openssl для запустите это (см. http://slproweb.com/products/Win32OpenSSL.html).