![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
PKCS11 デバイスでの IKEYMAN による鍵の保管
IBM® HTTP Server では、IKEYMAN を使用して PKCS11 デバイスに鍵を保管することができます。
始める前に
IBMPKCS11Impl の提供者については、http://www.ibm.com/developerworks/java/jdk/security/60/secguides/pkcs11implDocs/IBMJavaPKCS11ImplementationProvider.html#ConfigFile を参照してください。
手順
- PKCS11 デバイスに鍵を保管するには、暗号ドライバーのファイル名とパス・ロケーションを入手します。 以下に、PKCS11 デバイスのパス・ロケーションの例を示します。
- nCipher:
/opt/nfast/toolkits/pkcs11/libcknfast.so
/opt/nfast/toolkits/pkcs11/libcknfast.sl
/opt/nfast/toolkits/pkcs11/libcknfast.so
/opt/nfast/toolkits/pkcs11/libcknfast.so
C:¥nfast¥toolkits¥pkcs11¥cknfast.dll
- IBM 4758
/usr/lib/pkcs11/PKCS11_API.so
$PKCS11_HOME¥bin¥NT¥cryptoki.dll
- IBM e-business Cryptographic
Accelerator
/usr/lib/pkcs11/PKCS11_API.so
- nCipher:
- ご使用の Web サーバーおよび Java™ Development
Kit (JDK) が 64 ビットの場合は、ベンダーの 64 ビット用 PKCS11 ライブラリーを選択します。
一部のプラットフォームについては、64 ビット用 PKCS11 ライブラリーのファイル名に 64 が付加されています。
apachectl -V を実行すると、Web サーバーのアーキテクチャーを表示することができます。
httpd -V を実行すると、Web サーバーのアーキテクチャーを表示することができます。
- 使用する PKCS11 トークンのトークン・ラベルを決定します。
多くの場合 pkcsconf -its などのベンダー固有のツールによってトークン・ラベルが表示されます。
- 次のフィールドを使用してお客様の PKCS11 デバイスを記述し、PKCS11 構成ファイルを作成します。
- library: 適切なアーキテクチャーの PKCS11 ドライバーへの絶対パス
- name: 前のステップで決定したトークン・ラベルと同じ名前
- description: 説明を記述するテキスト・フィールド
- attributes: Web サーバーが使用する証明書の例からそのままコピーした属性のセット
注: 一部の暗号アクセラレーターでは、 SSL0227E エラーが発生しないようにするために、別の構文が必要です。/opt/HTTPServer/conf/pkcs11.cfg 例:library = /usr/lib/pkcs11/PKCS11_API.so name = PCI description = description attributes(*,CKO_PRIVATE_KEY,*) = {CKA_PRIVATE=true CKA_TOKEN=true)
- インストール・ルート・ディレクトリーの下にある java/jre/lib/security/java.security ファイルを更新して、新しいセキュリティー・プロバイダーを追加します。
- 新しいセキュリティー・プロバイダーに GSKit PKCS11 クラスおよび PKCS11 構成ファイルの場所を参照させます。
- プロバイダー・リストの末尾に、最も大きな番号を割り当てた新規プロバイダーを追加します。
- 次の例を修正して構成ファイルの場所を指定します。
一部の行は、表示のため複数行に分割されています。このタスクでは複数行に分割されていても、1 行で入力してください。
#次の行が、既存のセキュリティー・プロバイダーの末尾です。 security.provider.12=com... # Add the following line. security.provider.13=com.ibm.crypto.pkcs11impl.provider.IBMPKCS11Impl /opt/HTTPServer/conf/pkcs11.cfg
#次の行が、既存のセキュリティー・プロバイダーの末尾です。 security.provider.12=com... # Add the following line. security.provider.13=com.ibm.crypto.pkcs11impl.provider.IBMPKCS11Impl C:¥opt¥HTTPServer¥conf¥pkcs11.cfg
- 鍵を PKCS11 デバイスに保管するには、IKEYMAN を実行します。
IKEYMAN の起動後、以下のことを行います。
- メニューから「鍵データベース・ファイル (Key Database File)」および「開く」の順に選択し、「鍵データベース情報 (Key database information)」ダイアログにナビゲートします。
- 「鍵データベース・タイプ (Key Database Type)」のドロップダウンから、「PKCS11Config (PKCS11Config)」を選択します。
オプションが「PKCS11Config (PKCS11Config)」ではなく「PKCS11Direct (PKCS11Direct)」となっている場合はエラーですので、解決する必要があります。前のステップの java.security の作業を確認してください。PKCS11Direct オプションは Web サーバー上で表示できません。
他のすべてのフィールドは、pkcs11.cfg ファイルのパラメーターで指定するためロックされています。
- 「OK」をクリックして、「暗号トークンを開く (Open Cryptographic Token)」ダイアログにナビゲートします。
PKCS11 デバイスの「暗号トークン・ラベル (Cryptographic Token Label)」のラベルが、パネルの上部に表示されます。このラベルは pkcs11.cfg ファイルの name フィールドで指定した値であるため、本来のトークン・ラベルとは異なる場合があります。
- 「暗号トークンを開く (Open Cryptographic Token)」ダイアログ上で、次のアクションを実行します。
- PKCS11 デバイスに対する暗号トークンのパスワードを、「暗号トークン・パスワード (Cryptographic Token Password)」フィールドに入力します。パスワードは前もって設定されており、ハードウェアに固有です。多くの場合このパスワードは、ベンダーの資料やツールではユーザー PIN と呼ばれます。
- 「新規セカンダリー鍵データベース・ファイルを作成する (Create new secondary key database file)」オプションを選択し、出されたプロンプトに入力して新規セカンダリー鍵データベースを作成します。
- 「OK」をクリックします。
タスクの結果


http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=ihs-dist&topic=tihs_ikeypkcs11
ファイル名:tihs_ikeypkcs11.html