次の方法で共有


秘密キー キャッシュ定数

次の定数は、Microsoft ソフトウェア ベースの CSP による 秘密キー キャッシュを制御するレジストリ エントリを表すために使用されます。

定数/値 説明
szKEY_CRYPTOAPI_PRIVATE_KEY_OPTIONS
"Software\\Policies\\Microsoft\\Cryptography"
秘密キー キャッシュ レジストリ エントリの HKEY_LOCAL_MACHINE ルートのパス。

次の定数は、Microsoft ソフトウェア ベースの CSP によって特定のプロセスの秘密キー キャッシュをグローバルに制御するレジストリ値を識別するために使用されます。

定数/値 説明
szPRIV_KEY_CACHE_MAX_ITEMS
"PrivKeyCacheMaxItems"
1 つのプロセスに対して一度にキャッシュできる秘密キーの最大数を指定する、szKEY_CRYPTOAPI_PRIVATE_KEY_OPTIONS レジストリ キーの下のREG_DWORD値。 このチェックは、格納されている秘密キーが読み取されるたびに実行されます。 最大数を超えると、最後に使用したキーがキャッシュから削除されます。
この値が 0 の場合、キーはキャッシュされません。 この値が存在しない場合は、 cPRIV_KEY_CACHE_MAX_ITEMS_DEFAULT 値が既定値として使用されます。
キャッシュから削除された秘密キーが現在開いているコンテキストで参照されている場合、キーは次にキーを使用しようとしたときにストレージから読み取られます。
Windows Server 2003 および Windows XP SP1 以前: このレジストリ値はサポートされていません。
cPRIV_KEY_CACHE_MAX_ITEMS_DEFAULT
20
値が指定されていない場合は 、szPRIV_KEY_CACHE_MAX_ITEMS レジストリ エントリの既定値。
szPRIV_KEY_CACHE_PURGE_INTERVAL_SECONDS
"PrivKeyCachePurgeIntervalSeconds"
キャッシュされた秘密キーの最大有効期間 (秒単位) を指定する、szKEY_CRYPTOAPI_PRIVATE_KEY_OPTIONS レジストリ キーの下のREG_DWORD値。 このチェックは、格納されている秘密キーが使用または読み取られたときに実行されます。 最後のクリアが行われた後にこの時間が経過した場合、最後のクリア以降に参照されていないキャッシュされたキーはすべてキャッシュから削除されます。
この値が存在しない場合は、 cPRIV_KEY_CACHE_PURGE_INTERVAL_SECONDS_DEFAULT 値が既定値として使用されます。
キャッシュからクリアされた秘密キーが現在開いているコンテキストで参照されている場合、キーは次にキーを使用しようとしたときにストレージから読み取られます。
Windows Server 2003 および Windows XP SP1 以前: このレジストリ値はサポートされていません。
cPRIV_KEY_CACHE_PURGE_INTERVAL_SECONDS_DEFAULT
86400
値が指定されていない場合は 、szPRIV_KEY_CACHE_PURGE_INTERVAL_SECONDS レジストリ エントリの既定値。 この値は 1 日に相当します。

次の定数は、1 つの Microsoft ソフトウェア ベース の暗号化サービス プロバイダー (CSP) インスタンスの秘密キー キャッシュを制御するレジストリ値を識別するために使用されます。

定数/値 説明
"AllowCachePW"
Microsoft ソフトウェア ベースの CSP でパスワードで保護されたキーに対してパスワード キャッシュを有効にするかどうかを指定する、HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Cryptography\Protectレジストリ キーの下のREG_DWORD値。 この値が 0 の場合、パスワード キャッシュは無効になり、パスワードで保護されたキーが使用されるたびにユーザーにパスワードの入力を求められます。 その他の値(この値がない場合)は、パスワードがキャッシュされることを示します。 このシナリオでは、ユーザーは、このようなキーごとにプロセスごとに 1 回だけプロンプトが表示されます。
szKEY_CACHE_ENABLED
"CachePrivateKeys"
秘密キーキャッシュが有効かどうかを指定するszKEY_CRYPTOAPI_PRIVATE_KEY_OPTIONSレジストリ キーの下のREG_DWORD値。 この値が 1 の場合、秘密キーキャッシュが有効になります。 その他の値(この値がない場合)は、秘密キーのキャッシュが無効になっていることを示します。
Windows Vista SP1、Windows Vista、Windows XP: このレジストリ値はサポートされていません。
szKEY_CACHE_SECONDS
"PrivateKeyLifetimeSeconds"
キャッシュされた秘密キーの最大有効期間 (秒単位) を指定する、szKEY_CRYPTOAPI_PRIVATE_KEY_OPTIONS レジストリ キーの下のREG_DWORD値。
Windows XP: このレジストリ値はサポートされていません。

注釈

szKEY_CACHE_SECONDSとszPRIV_KEY_CACHE_PURGE_INTERVAL_SECONDSの値の違いは次のとおりです。

szKEY_CACHE_SECONDS

  • この値は、特定の CSP にのみ適用されます。 CSP がリリースされると、CSP のキャッシュも解放されます。
  • この値は、特定のコンテキスト ハンドルで特定の秘密キーを使用しようとした場合にのみ適用されます。

szPRIV_KEY_CACHE_PURGE_INTERVAL_SECONDS

  • この値は、プロセス内のすべての CSP に適用されます。 CSP がリリースされた場合でも、このキャッシュは解放されません。
  • この値は、格納されている秘密キーが 1 つのプロセスでストレージから使用または読み取られた場合に適用されます。

要件

要件
サポートされている最小のクライアント
Windows XP [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows Server 2003 [デスクトップ アプリのみ]
Header
Wincrypt.h