Поделиться через


Метод PrivateKey.Open

[Метод Open доступен для использования в операционных системах, указанных в разделе Требования. Вместо этого используйте свойство X509Certificate2.PrivateKey в пространстве имен System.Security.Cryptography.X509Certificates .]

Метод Open обращается к существующему контейнеру ключей. Этот метод связывает контейнер ключей с сертификатом , соответствующим закрытому ключу , путем добавления свойства CERT_KEY_PROV_INFO_PROP_ID с использованием указанных сведений.

Синтаксис

PrivateKey.Open( _
  ByVal ContainerName, _
  [ ByVal ProviderName ], _
  [ ByVal ProviderType ], _
  [ ByVal KeySpec ], _
  [ ByVal StoreLocation ], _
  [ ByVal bCheckExistence ] _
)

Параметры

ContainerName [in]

Строка, содержащая имя контейнера ключей.

ProviderName [in, необязательный]

Строка, содержащая имя поставщика. Значение по умолчанию — CAPICOM_PROV_MS_ENHANCED_PROV. Этот параметр может принимать одно из указанных ниже значений.

Значение Значение
CAPICOM_PROV_MS_DEF_PROV
Базовый поставщик шифрования Майкрософт.
CAPICOM_PROV_MS_ENHANCED_PROV
Расширенный поставщик шифрования Майкрософт.
CAPICOM_PROV_MS_STRONG_PROV
Надежный поставщик криптографических данных Майкрософт.
CAPICOM_PROV_MS_DEF_RSA_SIG_PROV
Поставщик шифрования подписи Microsoft RSA.
CAPICOM_PROV_MS_DEF_RSA_SCHANNEL_PROV
Поставщик шифрования Schannel Microsoft RSA.
CAPICOM_PROV_MS_DEF_DSS_PROV
Базовый поставщик шифрования DSS Майкрософт.
CAPICOM_PROV_MS_DEF_DSS_DH_PROV
Базовый поставщик шифрования DSS и Diffie-Hellman Майкрософт.
CAPICOM_PROV_MS_ENH_DSS_DH_PROV
Microsoft Enhanced DSS and Diffie-Hellman поставщик шифрования.
CAPICOM_PROV_MS_DEF_DH_SCHANNEL_PROV
Поставщик шифрования Microsoft DH Schannel.
CAPICOM_PROV_MS_SCARD_PROV
Базовый поставщик интеллектуальных карта майкрософт.
CAPICOM_PROV_MS_ENH_RSA_AES_PROV
Расширенный поставщик шифрования MICROSOFT RSA и AES.

 

ProviderType [in, необязательный]

Значение перечисления CAPICOM_PROV_TYPE , указывающее тип поставщика. Значение по умолчанию — CAPICOM_PROV_RSA_FULL. Этот параметр может принимать одно из указанных ниже значений.

Значение Значение
CAPICOM_PROV_RSA_FULL
Полный поставщик служб шифрованияRSA (CSP). Этот тип поставщика поддерживает как цифровые подписи, так и шифрование данных.
CAPICOM_PROV_RSA_SIG
Подмножество RSA CSP, которое поддерживает только те функции и алгоритмы, которые необходимы для хэшей и цифровых подписей.
CAPICOM_PROV_DSS
CSP стандарта цифровой подписи (DSS). Этот тип поставщика поддерживает только хэши и цифровые подписи. DSS использует алгоритм цифровой подписи (DSA).
CAPICOM_PROV_FORTEZZA
CSP, содержащий криптографические протоколы и алгоритмы, принадлежащие Национальному институту стандартов и технологий (NIST).
CAPICOM_PROV_MS_EXCHANGE
CSP, поддерживающий почтовое приложение Microsoft Exchange и другие приложения, совместимые с Microsoft Mail.
CAPICOM_PROV_SSL
CSP, поддерживающий протокол SSL .
CAPICOM_PROV_RSA_SCHANNEL
CSP, поддерживающий протоколы RSA и Schannel .
CAPICOM_PROV_DSS_DH
CSP, поддерживающий протоколы DSS и Diffie-Hellman .
CAPICOM_PROV_EC_ECDSA_SIG
CSP, который поддерживает функции и алгоритмы, необходимые для цифровых подписей с помощью алгоритма цифровых подписей с эллиптической кривой (ECDSA).
CAPICOM_PROV_EC_ECNRA_SIG
CSP, поддерживающий функции и алгоритмы Nyberg-Rueppel elliptic Curve (ECNRA), необходимые для цифровых подписей.
CAPICOM_PROV_EC_ECDSA_FULL
CSP, поддерживающий полную ECDSA.
CAPICOM_PROV_EC_ECNRA_FULL
CSP, поддерживающий полный ECNRA.
CAPICOM_PROV_DH_SCHANNEL
CSP, поддерживающий протоколы Diffie-Hellman и Schannel .
CAPICOM_PROV_SPYRUS_LYNKS
CSP, поддерживающий устройство SPYRUS LYNKS Card.
CAPICOM_PROV_RNG
CSP, обрабатывающий создание случайных чисел.
CAPICOM_PROV_INTEL_SEC
Поставщик служб CSP, обеспечивающий безопасность Intel.
CAPICOM_PROV_REPLACE_OWF
CSP, поддерживающий замену способов создания односторонних форматов из паролей.
CAPICOM_PROV_RSA_AES
CSP, поддерживающий как цифровые подписи, так и шифрование данных с помощью алгоритма AES.

 

KeySpec [in, необязательный]

Значение перечисления CAPICOM_KEY_SPEC , указывающее тип закрытого ключа. Значение по умолчанию — CAPICOM_KEY_SPEC_SIGNATURE. Этот параметр может принимать одно из указанных ниже значений.

Значение Значение
CAPICOM_KEY_SPEC_KEYEXCHANGE
Ключ можно использовать для шифрования и подписывания.
CAPICOM_KEY_SPEC_SIGNATURE
Ключ можно использовать только для подписывания.

 

StoreLocation [в, необязательно]

Значение перечисления CAPICOM_STORE_LOCATION , указывающее расположение хранилища, в котором находится ключ. Значение по умолчанию — CAPICOM_CURRENT_USER_STORE. Этот параметр может принимать одно из указанных ниже значений.

Значение Значение
CAPICOM_MEMORY_STORE
Хранилище является хранилищем памяти. Изменения в содержимом хранилища не сохраняются.
CAPICOM_LOCAL_MACHINE_STORE
Хранилище является локальным хранилищем компьютера. Хранилища локальных компьютеров могут быть хранилищами для чтения и записи, только если у пользователя есть разрешения на чтение и запись. Если у пользователя есть разрешения на чтение и запись и если хранилище открыто для чтения и записи, изменения в содержимом хранилища сохраняются.
CAPICOM_CURRENT_USER_STORE
Хранилище является текущим пользовательским хранилищем. Текущим пользовательским хранилищем может быть хранилище для чтения и записи. Если это так, изменения в содержимом хранилища сохраняются.
CAPICOM_ACTIVE_DIRECTORY_USER_STORE
Хранилище является хранилищем Active Directory. Хранилища Active Directory можно открывать только в режиме только для чтения. Сертификаты нельзя добавлять в хранилища Active Directory или удалять из них.
CAPICOM_SMART_CARD_USER_STORE
Магазин — это группа имеющихся смарт-карт. Представлено в CAPICOM 2.0.

 

bCheckExistence [in, необязательный]

Логическое значение, указывающее, будет ли CAPICOM пытаться получить доступ к ключу. Если значение равно True, CAPICOM пытается получить доступ к ключу. Если ключ защищен пользователем или на смарт-карта или другом устройстве, может быть создано диалоговое окно. Значение по умолчанию равно False.

Возвращаемое значение

Этот метод не возвращает значение.

Комментарии

Этот метод возвращает CAPICOM_E_NOT_ALLOWED при создании скрипта из веб-приложения.

Требования

Требование Значение
Распространяемые компоненты
CAPICOM 2.0 или более поздней версии в Windows Server 2003 и Windows XP
DLL
Capicom.dll

См. также раздел

PrivateKey

Certificate.HasPrivateKey