この手順では、自己署名付き証明書を作成し、その証明書を PKCS #11 キーストアに格納します。また、この処理の一部として、RSA 公開鍵/非公開鍵ペアも作成されます。非公開鍵は、証明書とともにキーストアに格納されます。
$ pktool gencert [keystore=keystore] label=label-name \ subject=subject-DN serial=hex-serial-number keytype=rsa/dsa keylen=key-size
公開鍵オブジェクトのタイプを指定することでキーストアを指定します。この値には、nss、pkcs11、または file を指定できます。このキーワードはオプションです。
発行者が証明書に与える一意の名前を指定します。
証明書の識別名を指定します。
16 進形式のシリアル番号を指定します。証明書の発行者が、0x0102030405 などの番号を選択します。
証明書に関連付けられた非公開鍵のタイプを指定するオプション変数。選択されたキーストアに使用できる鍵のタイプを見つけるには、 pktool (1) のマニュアルページを確認してください。
FIPS 140-2 承認の鍵を使用するには、Oracle Solaris 11.3 での FIPS 140-2 対応システムの使用 の 暗号化フレームワークでの FIPS 140-2 アルゴリズムで、承認された鍵のタイプを確認してください。
証明書に関連付けられた非公開鍵の長さを指定するオプション変数。
FIPS 140-2 承認の鍵を使用するには、Oracle Solaris 11.3 での FIPS 140-2 対応システムの使用 の 暗号化フレームワークでの FIPS 140-2 アルゴリズムで選択した鍵のタイプの承認された鍵の長さを確認してください。
$ pktool list Found number certificates. 1. (X.509 certificate) Label: label-name ID: fingerprint that binds certificate to private key Subject: subject-DN Issuer: distinguished-name Serial: hex-serial-number n. ...
このコマンドは、キーストア内のすべての証明書を一覧表示します。次の例では、キーストアには証明書が 1 つしか含まれていません。
次の例では、My Company のあるユーザーが自己署名付き証明書を作成し、その証明書を PKCS #11 オブジェクト用のキーストアに格納しています。このキーストアは最初は空になっています。キーストアが初期化されていない場合、ソフトトークンの PIN は changeme であるため、pktool setpin コマンドを使用して PIN をリセットできます。コマンドオプションでは、FIPS 140-2 承認の鍵のタイプと鍵の長さ (RSA 2048) が指定されます。
$ pktool gencert keystore=pkcs11 label="My Cert" \
subject="C=US, O=My Company, OU=Security Engineering Group, CN=MyCA" \
serial=0x000000001 keytype=rsa keylen=2048
Enter pin for Sun Software PKCS#11 softtoken:トークンの PIN を入力します
$ pktool list No. Key Type Key Len. Key Label ---------------------------------------------------- Asymmetric public keys: 1 RSA My Cert Certificates: 1 X.509 certificate Label: My Cert ID: d2:7e:20:04:a5:66:e6:31:90:d8:53:28:bc:ef:55:55:dc:a3:69:93 Subject: C=US, O=My Company, OU=Security Engineering Group, CN=MyCA Issuer: C=US, O=My Company, OU=Security Engineering Group, CN=MyCA ... ... Serial: 0x00000010 ...