PKCS#11 URL生成

様々なアプリケーションが、TLS証明書などの処理にopensslを使用しています。このコンセプトにより、(秘密の)ファイルパスをいわゆる**PKCS#11 URL**に置き換えるだけで、例えばNitrokeyの秘密を使うことができます。

準備

  • ``openssl``がインストールされていることを確認します。

  • ``openssl``は、``libengine-pkcs11-openssl``をインストールすることで、PKCS#11エンジンを使用することができます。

  • 必要なツールとして``opensc``と``gnutls-bin``をインストールします。

  • ``pkcs15-tool -D``を使って、必要な鍵や証明書がNitrokey上で利用可能であることを確認します。

  • ``libengine-pkcs11-openssl``を通してECCキー/メカニズムを使用したい場合は、そのバージョンが少なくとも0.4.10であることを確認する必要があります'。

PKCS#11 URLの一覧表示と生成

利用可能なトークン(Nitrokeys)のリストを取得するには、次のコマンドを使用します。

p11tool --list-tokens

URLトークンを生成したいトークン(Nitrokey)のURLを選び、以下のように使用します。

p11tool --list-all <token-url>

# example:
# p11tool --list-all "pkcs11:model=PKCS%2315%20emulated;manufacturer=www.CardContact.de;serial=DENK0123123;token=UserPIN%20%28SmartCard-HSM%29"

URLの末尾を調べてみると'がわかります。label``id``などですが、結果のURLを使って必要なオブジェクトを一意に識別できる限り、これらを部分的に削除することができます。``id``のみを使用した例については、doc:`TLS Apache2 Configuration<apache2-tls>`を参照してください。