CngKey Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Defines the core functionality for keys that are used with Cryptography Next Generation (CNG) objects.
public ref class CngKey sealed : IDisposable
public sealed class CngKey : IDisposable
type CngKey = class
interface IDisposable
Public NotInheritable Class CngKey
Implements IDisposable
- Inheritance
-
CngKey
- Implements
Remarks
This class wraps NCrypt keys, not BCrypt keys. NCrypt is a subset of CNG that provides key storage functionality. BCrypt is a subset that provides base cryptographic services such as random number generation, hash functions, signatures, and encryption keys.
Note
CNG classes don't work on non-Windows platforms.
Properties
Algorithm |
Gets the algorithm that is used by the key. |
AlgorithmGroup |
Gets the algorithm group that is used by the key. |
ExportPolicy |
Gets the export policy that is used by the key. |
Handle |
Gets a safe handle that represents a native key (NCRYPT_KEY_HANDLE). |
IsEphemeral |
Gets the persistence state of the key. |
IsMachineKey |
Gets the scope (machine or user) of the key. |
KeyName |
Gets the name of the key. |
KeySize |
Gets the key size in bits. |
KeyUsage |
Gets the cryptographic operations specified by the key. |
ParentWindowHandle |
Gets or sets the window handle (HWND) that should be used for user interface (UI) prompts caused by accessing the key. |
Provider |
Gets the key storage provider (KSP) that manages the key. |
ProviderHandle |
Gets a native handle (an NCRYPT_PROV_HANDLE) to the key storage provider (KSP). |
UIPolicy |
Gets parameters that control the user interface (UI) for accessing the key. |
UniqueName |
Gets the unique name for the key. |
Methods
Create(CngAlgorithm, String, CngKeyCreationParameters) |
Creates a named CngKey object that provides the specified algorithm, using the supplied key creation parameters. |
Create(CngAlgorithm, String) |
Creates a named CngKey object that provides the specified algorithm. |
Create(CngAlgorithm) |
Creates a CngKey object that can be used with the specified algorithm. |
Delete() |
Removes the key that is associated with the object. |
Dispose() |
Releases all resources used by the current instance of the CngKey class. |
Equals(Object) |
Determines whether the specified object is equal to the current object. (Inherited from Object) |
Exists(String, CngProvider, CngKeyOpenOptions) |
Checks to see whether a named key exists in the specified key storage provider (KSP), according to the specified options. |
Exists(String, CngProvider) |
Checks to see whether a named key exists in the specified key storage provider (KSP). |
Exists(String) |
Checks to see whether a named key exists in the default key storage provider (KSP). |
Export(CngKeyBlobFormat) |
Exports the key material into a BLOB, in the specified format. |
GetHashCode() |
Serves as the default hash function. (Inherited from Object) |
GetProperty(String, CngPropertyOptions) |
Gets a property, given a name and a set of property options. |
GetType() |
Gets the Type of the current instance. (Inherited from Object) |
HasProperty(String, CngPropertyOptions) |
Checks to see whether the specified property exists on the key. |
Import(Byte[], CngKeyBlobFormat, CngProvider) |
Creates a new key by importing the specified key material into the specified key storage provider (KSP), using the specified format. |
Import(Byte[], CngKeyBlobFormat) |
Creates a new key by importing the specified key material into the default key storage provider (KSP) and using the specified format. |
MemberwiseClone() |
Creates a shallow copy of the current Object. (Inherited from Object) |
Open(SafeNCryptKeyHandle, CngKeyHandleOpenOptions) |
Creates an instance of an CngKey object by using a handle to an existing key. |
Open(String, CngProvider, CngKeyOpenOptions) |
Creates an instance of an CngKey object that represents an existing named key, using the specified key storage provider (KSP) and key open options. |
Open(String, CngProvider) |
Creates an instance of an CngKey object that represents an existing named key, using the specified key storage provider (KSP). |
Open(String) |
Creates an instance of an CngKey object that represents an existing named key. |
SetProperty(CngProperty) |
Sets a named property on the key. |
ToString() |
Returns a string that represents the current object. (Inherited from Object) |