Java 鍵ストア (JKS) からのエクスポート
Java™ 鍵ストア (JKS) は、Java アプリケーションでの証明書および鍵管理のデフォルトの実装です。セキュリティー上の理由により、この鍵ストアから秘密鍵を単純に抽出する方法は提供されていません。
一般的なエクスポート・シナリオでは、PEM 標準を使用することによって、Apache Web サーバー内で鍵を使用します。
- 鍵ストアが openssl を使用してデジタル証明書を作成するように構成されている場合、秘密鍵はトランスペアレントに使用可能になります。
- 一方、ikeyman (IHS) または Java ベースの keytool を使用している場合には、セキュリティー上の理由から、秘密鍵のエクスポート機能は提供されていません。
- keytool からエクスポートする場合は、既知の次善策があります。Java keytool の次善策を参照してください。
認証局から受信した署名付き DER 形式の証明書を Tealeaf® で使用できる PKC12 形式に変換するには、秘密鍵が必要です。ikeyman を使用して元の証明書を生成すると、認証局から署名付き証明書を受信できます。
- ikeyman は、バイナリー DER または Base-64 エンコード形式の証明書を受け取ることができます。
- ikeyman は、CMS、JKS、JCEKS、または PKCS12 形式からインポートできます。注: IBM® HTTP Server 環境から抽出するには、ikeyman を使用して CMS データベースを JKS として保存する追加のステップが必要になります。 変換後は、データベースの形式がネイティブ JKS であるかのように、抽出が機能します。
PEM 鍵は、Apache で取り込むことができる DER 形式にエクスポートできます。JKS から秘密鍵をエクスポートするには、Java ソース・ソリューションを見つけてコンパイルする必要があります。
- 一例については、http://se9.blogspot.com/2008/10/extracting-private-key-from-java.htmlにアクセスしてください。
- 他のいくつかの方法についても、インターネットで詳しく説明されています。
DER 形式の PEM 鍵を確認するには、以下のコマンドを使用します。
- 認証局から受信した証明書の場合:
openssl x509 -noout -text -in CRT.der
- RSA 秘密鍵の場合:
openssl rsa -noout -text -in rsa.key