'\" te .\" Copyright (c) 2008, 2015, Oracle and/or its affiliates.All rights reserved. .TH pkcs11_softtoken 5 "2015 年 6 月 16 日" "SunOS 5.11" "標準、環境、マクロ" .SH 名前 pkcs11_softtoken \- ソフトウェアの RSA PKCS#11 ソフトトークン .SH 形式 .LP .nf /usr/lib/security/pkcs11_softtoken.so /usr/lib/security/64/pkcs11_softtoken.so .fi .SH 機能説明 .sp .LP \fBpkcs11_softtoken.so\fR オブジェクトは、RSA Security Inc. の PKCS#11 暗号化トークンインタフェース (Cryptoki) v2.20 仕様をソフトウェアに実装します。この PKCS#11 の実装により、トークンオブジェクトの永続的ストレージが提供されます。 .sp .LP \fBpkcs11_softtoken\fR プロバイダは Oracle Solaris の必要な部分であるため、\fBcryptoadm\fR(1M) を使用して無効にしてはいけません。 .sp .LP 暗号化アルゴリズムの中には、ハードウェアで高速化されるものがあります。管理者は、次のコマンドを実行してシステムのこのリストを特定し、その出力内の \fBHW\fR 列を調べることができます。 .sp .in +2 .nf # \fBcryptoadm list -vm provider='/usr/lib/security/$ISA/pkcs11_softtoken.so'\fR .fi .in -2 .sp .sp .LP 開発者に対しては、ハードウェアで高速化される PKCS#11 メカニズムの \fBCK_MECHANISM_INFO\fR 構造体の \fBCKF_HW\fR フラグが設定されます。 .sp .LP アプリケーション開発者は、\fBpkcs11_softtoken.so\fR に直接リンクするのではなく、\fBlibpkcs11.so\fR にリンクするようにしてください。\fBlibpkcs11\fR(3LIB) を参照してください。 .sp .LP 実装されている暗号化アルゴリズムは、DES、3DES、AES、Blowfish、RC4、MD5、SHA1、SHA224、SHA256、SHA384、SHA512、RSA、DSA、DH、ECC、および Camellia です。 .sp .LP \fBlibpkcs11\fR(3LIB) のリストに示されている標準の PKCS#11 関数は、次のものを除きすべて実装されています。 .sp .in +2 .nf C_GetObjectSize C_InitPIN C_WaitForSlotEvent .fi .in -2 .sp .LP これらの関数を呼び出すと、\fBCKR_FUNCTION_NOT_SUPPORTED\fR が返されます。 .sp .LP サポートされている RSA PKCS#11 v2.20 メカニズムは次のとおりです。 .sp .in +2 .nf CKM_RSA_PKCS_KEY_PAIR_GEN CKM_RSA_PKCS CKM_RSA_X_509 CKM_DSA_KEY_PAIR_GEN CKM_DSA CKM_DSA_SHA1 CKM_DH_PKCS_KEY_PAIR_GEN CKM_DH_PKCS_DERIVE CKM_EC_KEY_PAIR_GEN CKM_ECDSA CKM_ECDSA_SHA1 CKM_ECDH1_DERIVE CKM_DES_KEY_GEN CKM_DES_ECB CKM_DES_CBC CKM_DES_CBC_PAD CKM_DES3_KEY_GEN CKM_DES3_ECB CKM_DES3_CBC CKM_DES3_CBC_PAD CKM_AES_KEY_GEN CKM_AES_ECB CKM_AES_CBC CKM_AES_CBC_PAD CKM_AES_CTR CKM_BLOWFISH_KEY_GEN CKM_BLOWFISH_CBC CKM_CAMELLIA_KEY_GEN CKM_CAMELLIA_ECB CKM_CAMELLIA_CBC CKM_CAMELLIA_CBC_PAD CKM_RC4_KEY_GEN CKM_RC4 CKM_MD5_RSA_PKCS CKM_SHA1_RSA_PKCS CKM_SHA224_RSA_PKCS CKM_SHA256_RSA_PKCS CKM_SHA384_RSA_PKCS CKM_SHA512_RSA_PKCS CKM_MD5 CKM_SHA_1 CKM_SHA224 CKM_SHA256 CKM_SHA384 CKM_SHA512 CKM_MD5_HMAC CKM_MD5_HMAC_GENERAL CKM_SHA_1_HMAC CKM_SHA_1_HMAC_GENERAL CKM_SHA224_HMAC CKM_SHA256_HMAC CKM_SHA224_HMAC_GENERAL CKM_SHA256_HMAC_GENERAL CKM_SHA384_HMAC CKM_SHA384_HMAC_GENERAL CKM_MD5_KEY_DERIVATION CKM_SHA1_KEY_DERIVATION CKM_SHA224_KEY_DERIVATION CKM_SHA256_KEY_DERIVATION CKM_SHA384_KEY_DERIVATION CKM_SHA512_KEY_DERIVATION CKM_SSL3_PRE_MASTER_KEY_GEN CKM_SSL3_MASTER_KEY_DERIVE CKM_SSL3_KEY_AND_MAC_DERIVE CKM_SSL3_MASTER_KEY_DERIVE_DH CKM_TLS_PRE_MASTER_KEY_GEN CKM_TLS_MASTER_KEY_DERIVE CKM_TLS_KEY_AND_MAC_DERIVE CKM_TLS_MASTER_KEY_DERIVE_DH .fi .in -2 .sp .LP 次に示す各タイプの鍵オブジェクトには、トークン固有の属性がいくつかあります。これらは、オブジェクトの作成、鍵/鍵ペアの生成、および鍵の派生の結果として、デフォルトで true に設定されます。 .sp .ne 2 .mk .na \fB公開鍵オブジェクト\fR .ad .sp .6 .RS 4n \fBCKA_ENCRYPT\fR、\fBCKA_VERIFY\fR、\fBCKA_VERIFY_RECOVER\fR .RE .sp .ne 2 .mk .na \fB秘密鍵オブジェクト\fR .ad .sp .6 .RS 4n \fBCKA_DECRYPT\fR、\fBCKA_SIGN\fR、\fBCKA_SIGN_RECOVER\fR、\fBCKA_EXTRACTABLE\fR .RE .sp .ne 2 .mk .na \fB秘密鍵オブジェクト\fR .ad .sp .6 .RS 4n \fBCKA_ENCRYPT\fR、\fBCKA_DECRYPT\fR、\fBCKA_SIGN\fR、\fBCKA_VERIFY\fR、\fBCKA_EXTRACTABLE\fR .RE .sp .LP サポートされている証明書オブジェクトは次のとおりです。 .sp .ne 2 .mk .na \fB\fBCKC_X_509\fR\fR .ad .RS 23n .rt \fBCKC_X_509\fR 証明書オブジェクトでサポートされている属性は、\fBCKA_SUBJECT\fR、\fBCKA_VALUE\fR、\fBCKA_LABEL\fR、\fBCKA_ID\fR、\fBCKA_ISSUER\fR、\fBCKA_SERIAL_NUMBER\fR、および \fBCKA_CERTIFICATE_TYPE\fR です。 .RE .sp .ne 2 .mk .na \fB\fBCKC_X_509_ATTR_CERT\fR\fR .ad .RS 23n .rt \fBCKC_X_509_ATTR_CERT\fR 証明書オブジェクトでサポートされている属性は、\fBCKA_OWNER\fR、\fBCKA_VALUE、CKA_LABEL\fR、\fBCKA_SERIAL_NUMBER\fR、\fBCKA_AC_ISSUER\fR、\fBCKA_ATTR_TYPES\fR、および \fBCKA_CERTIFICATE_TYPE\fR です。 .RE .sp .LP テンプレートに一致するオブジェクトの検索操作は \fBC_FindObjectsInit\fR で実行されます。一致したオブジェクトは、以降の \fBC_FindObjects\fR 操作のためにキャッシュされます。 .sp .LP \fBpkcs11_softtoken.so\fR オブジェクトにより、トークンオブジェクトを保存するためのファイルシステムベースの永続的なトークンオブジェクトストアが提供されます。トークンオブジェクトストアのデフォルトの場所は \fB/var/user/$USERNAME/pkcs11_softtoken\fR です。ユーザーは \fB${SOFTTOKEN_DIR}\fR 環境変数を使用すると、デフォルトの場所をオーバーライドできます。 .sp .LP トークンオブジェクトストアが一度も初期化されていない場合、\fBC_Login()\fR 関数は \fBCKR_OK\fR を返すことがありますが、ユーザーは非公開のトークンオブジェクトの作成、生成、派生、または検索を行うことはできず、\fBCKR_PIN_EXPIRED\fR が返されます。 .sp .LP ユーザーは \fBpktool\fR(1) \fBsetpin\fR コマンドを使用し、古いパスフレーズとしてデフォルトのパスフレーズ「changeme」を設定して、オブジェクトストアのパスフレーズを変更する必要があります。このアクションは、パスフレーズを初期化して、新しく作成したトークンオブジェクトストアに設定するために必要です。 .sp .LP ユーザーは \fBpktool setpin\fR コマンドで設定した新しいパスフレーズを使用してオブジェクトストアにログインしたあと、この新しく作成されたオブジェクトストアに非公開のトークンオブジェクトを作成して保存できます。\fBsetpin\fR でトークンオブジェクトストアを初期化するまでは、\fBC_Login()\fR 関数を使用することはできますが、ユーザーが非公開のトークンオブジェクトの作成、生成、派生、または検索を試みるとすべて失敗し、\fBCKR_PIN_EXPIRED\fR エラーが返されます。 .sp .LP \fBC_Login()\fR 関数と \fBC_SetPIN()\fR 関数に指定する PIN には、長さが 1 から 256 までで、空文字を含まない、任意の文字列を使用できます。 .SH 戻り値 .sp .LP 実装されている各関数の戻り値は、RSA PKCS#11 v2.20 仕様で定義されています。 .SH ファイル .sp .ne 2 .mk .na \fB\fB/var/user/$USERNAME/pkcs11_softtoken\fR\fR .ad .sp .6 .RS 4n ユーザーのデフォルトのトークンオブジェクトストア .RE .sp .ne 2 .mk .na \fB\fB${SOFTTOKEN_DIR}/pkcs11_softtoken\fR\fR .ad .sp .6 .RS 4n トークンオブジェクトストアの代替の場所 .RE .SH 属性 .sp .LP 次の属性については、\fBattributes\fR(5) を参照してください。 .sp .sp .TS tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) . 属性タイプ属性値 _ インタフェースの安定性確実 _ MT レベルT{ 例外付きで MT-安全。RSA PKCS#11 v2.20 のセクション 6.6.2 を参照してください。 T} _ 標準PKCS#11 v2.20 .TE .SH 関連項目 .sp .LP \fBpktool\fR(1), \fBcryptoadm\fR(1M), \fBlibpkcs11\fR(3LIB), \fBattributes\fR(5), \fBpkcs11_kernel\fR(5)