外部.pem
ファイルを.p12
ファイルに変換する必要があります。プロセスにユーザー名とパスワードを追加します。 (私はサードパーティのAPIを利用するためにこれを行う必要があります。)OpenSSLの有無にかかわらずSSLの.pemを.p12に変換する
openssl
を使用して、コマンドがある...
openssl pkcs12 -export -in xxxx.pem -inkey xxxx.pem -out xxx.p12 -passout pas:newpassword -name "newname"
は私がターミナルセッションから、これを実行することができ、それが完璧に動作します。
しかし、私はこれを頻繁に行う必要があり、これを処理するJavaクラスを作成しました(私のアプリケーションはほとんどがTomcatとApacheの場合.jsp
です)。 Runtime.exec
を使用してJavaから同じコマンドを実行しようとすると、「ランダムな状態を書き込めません」というエラーが表示されます(Using OpenSSL what does "unable to write 'random state'" mean?)。
Javaから実行すると、ユーザーは「ルート」ではないという点が異なります。
したがって、コマンドラインプログラム(openssl)を実行するのではなく、Javaライブラリを使用してpemから.p12に変換する方が良いですか?
それ以外の場合は、サーバー上でいくつかの設定を行う必要があると思います。サーバーのどこにでも.md
ファイルが見つかりません。唯一のopenssl.cnf
ファイルが奇妙なディレクトリにあります(/etc/pki/tls
)。新しいopenssl.cnf
ファイルを別の場所に作成する必要がありますか?
「SC」はSpongyCastleプロバイダを表します。 – EpicPandaForce