これらのP12ファイルとは何か説明できますか?を使用したpkcs12Cert/keyファイルの.PEM形式への変換を扱うこのリンクを見つけましopenssl
た。(http://gridsite.org)
答えの鍵は次のとおりです。
無人処理に使用-passin file:...
します-passout file:...
-passin file:P12passphrase
この場合、と-passout file PEMpassphrase
オプションを指定する必要があると思います。
この小さなテストでは、入力パスフレーズをfile:<...>
パラメーターで指定する方法を確認します。これは、肩越しの攻撃からそのようなフレーズを隠すのに役立ちます。そのようなファイルへのアクセスを制限することを忘れないでください。これはほとんどのopensslコマンドの一般的な機能ですが、明示的には言及されておらず、元の質問の鍵となります。オプションの完全なリストは以下のとおりです。
$ openssl pkcs12 -passin file:P12phrase
Can't open file P12phrase
Error getting passwords
(完全なコマンドを作成するのはOPに任せます。)
pkcs12
以下は、サブコマンドでサポートされているすべてのオプションです。
$ openssl pkcs12 help
Usage: pkcs12 [options]
where options are
-export output PKCS12 file
-chain add certificate chain
-inkey file private key if not infile
-certfile f add all certs in f
-CApath arg - PEM format directory of CA's
-CAfile arg - PEM format file of CA's
-name "name" use name as friendly name
-caname "nm" use nm as CA friendly name (can be used more than once).
-in infile input filename
-out outfile output filename
-noout don't output anything, just verify.
-nomacver don't verify MAC.
-nocerts don't output certificates.
-clcerts only output client certificates.
-cacerts only output CA certificates.
-nokeys don't output private keys.
-info give info about PKCS#12 structure.
-des encrypt private keys with DES
-des3 encrypt private keys with triple DES (default)
-aes128, -aes192, -aes256
encrypt PEM output with cbc aes
-nodes don't encrypt private keys
-noiter don't use encryption iteration
-maciter use MAC iteration
-twopass separate MAC, encryption passwords
-descert encrypt PKCS#12 certificates with triple DES (default RC2-40)
-certpbe alg specify certificate PBE algorithm (default RC2-40)
-keypbe alg specify private key PBE algorithm (default 3DES)
-keyex set MS key exchange type
-keysig set MS key signature type
-password p set import/export password source
-passin p input file pass phrase source
-passout p output file pass phrase source
-engine e use engine e, possibly a hardware device.
-rand file:file:...
load the file (or the files in the directory) into
the random number generator
-CSP name Microsoft CSP name
-LMK Add local machine keyset attribute to private key