2011-12-07 12 views
3

Javaを使用してPKCS12ファイルを生成する必要があります。 は実際に、私は(CAは、以前に作成され、その作成を自動化するふりをされていない)OpenSSLを使用して、次の証明書の生成を自動化する必要があります。Javaを使用してPKCS12ファイルを生成する

opensslのgenrsa -out client.key 2048

opensslのREQを - 新しい-key client.key -out client.csr

のopenssl CA -keyfile ca.key -cert ca.crt -out client.crt -policy policy_anything -infiles client.csr

のopensslのpkcs12 -export -in client.crt -inkey client.key -out client.p12 -name c lient

は私がPKCS12生成に関連するすべての情報を見つけることができませんでしたので、それははBouncyCastleまたは類似のライブラリ、ちょうどのみJCEを使用せずにこれを行うことが可能かどうかを知りたいです。

答えて

1

キーペアと証明書の作成に問題はありませんが、JCEには署名用のAPIはありません(これは絶対に検索するのに多くの時間を費やしています)。 Bouncycatleのlibは正しい選択です。

2

KeyStore "PKCS12"インスタンスを作成し、証明書とキーを追加してstore(...)メソッドを使用してファイルに保存すると、PKCS#12を簡単に作成できます。

残りはもう少し問題です。

+0

Robertさんのお返事ありがとうございます。問題は、キーストアを使用していないことです。私はちょうどこのpkcs証明書をWebの登録の結果として作成し、新しいユーザを制御して他のURLへのアクセスを作成しました。だから、私は、キーストアなしでpkcsを作成する、コメント付きのopensslコマンドを再現する必要があります。 – vwfziwl

+1

Javaの観点から、PKCS#12ファイルはKeyStoreです。 Javaには、PKCS#12やJKSのような多くのKeyStore実装が含まれています。どちらもまったく同じ方法でアクセスされます。単に 'java.security.KeyStore.getInstance(" PKCS12 ");' – Robert

関連する問題