私はAndroid特定のWebリクエストに対してSSL証明書を必要とするアプリを作成しています。PKCS12ファイル(.pfx
)自己署名証明書付き。
OpenSSLライブラリを使用することにしましたが、コンピューター(Windows x64プラットフォーム)でビルドできませんでした。 ActivePerlをインストールせずに実行したい。簡単な構築方法を知っているのは誰ですか?
友達のコンピューター(OpenSSL、Linux)でOpenSSLを使用してPKCS12ファイルを作成しようとしていましたが、何も得られません。誰も私を助け、秘密鍵と自己署名付き公開証明書を使用してPKCS12ファイルを生成するためのアクションのシーケンスを説明できますか?
Win32 OpenSSLインストールプロジェクトは、OpenSSLの簡単なインストールを提供することに専念しています。シンプルで効果的なインストーラーを使用すると、セットアップが簡単で使いやすいです。何もコンパイルしたりフープをジャンプしたりする必要はありません。数回クリックするだけでインストールされ、実際の作業を行うことができます。取得できます こちら 。あなたの場合、Win64 OpenSSL v1.0.1e
インストーラー。
これらの手順は、HTTPS、FTPSでの使用に適したPKCS#12秘密鍵と公開証明書ファイルを生成する方法を示しています。これらの手順は、OpenSSLのWindowsバイナリディストリビューションをダウンロードしてインストールしたことを前提としています。
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形式のファイルは、セキュアFTPサーバー-FIPS内で使用できるようになりました。
結果のPKCS#12形式(.pfx)ファイルは、Firefoxブラウザーバージョン34.0.5で使用できるようになりました。
https://geekflare.com/openssl-commands-certificates/ で情報を使用し、わずか2ステップで成功しました。
openssl req -x509 -sha256 -nodes -days 3650 -newkey rsa:4096 -keyout mykey.key -out mypem.pem
openssl pkcs12 -export -out myp12.p12 -inkey mykey.key -in mypem.pem
このサイト「 http://www.sslshopper.com/article-most-common-openssl-commands.html 」を見ると、探している一般的なコマンドのほとんどが含まれています。最近、Amazonアソシエイツプログラムでこれを行う必要があり、サイトも役立つことがわかりました( http://docs.aws.Amazon.com/IAM/latest/UserGuide/InstallCert.html#SampleCert).By =方法、これを実行するにはopensslをインストールする必要があります( http://slproweb.com/products/Win32OpenSSL.html を参照)。