K

KCA
See Key Certification Authority.
KEA
See Key Exchange Algorithm.
key blob
A blob containing an encrypted private key. Key blobs provide a way to store keys outside the CSP.

Key blobs are created by exporting an existing key from the CSP by calling CryptExportKey. Later, the key blob can be imported into a provider (often a different CSP on a different computer) by calling CryptImportBlob. This creates a key in the CSP that is a duplicate of the one that was exported.

See also simple key blob, public key blob, and private key blob.

key blob format
The format of the key blob when a public or session key is exported from a CSP. The format is specified by the provider type of the exporting CSP. A key blob is created by calling CryptExportKey.

See also public key blob and simple key blob.

Key Certification Authority
(KCA) A trusted entity that typically keeps a secure database of compound messages signed with the KCA's private key. In practical implementations, the compound messages consist of the user's name, the user's public key, and any other important information about the user.

When the receiving application gets a signed message from a user, the application can then verify the public key received with the message by comparing it to the public key stored in the KCA database.

key container
A part of the key database that contains all the key pairs (exchange and signature key pairs) belonging to a specific user.

Each container has a unique name that is used when calling CryptAcquireContext to get a handle to the container.

key database
A database that contains the persistent cryptographic keys for a specific CSP. The database contains one or more key containers, which individually store all the cryptographic key pairs for a specific user.

See also key container.

key exchange algorithm
An algorithm used to encrypt and decrypt exchange keys (symmetric session keys). Some common key exchange algorithms include DH and KEA.

Each provider type can specify only one key exchange algorithm.

Key Exchange Algorithm
(KEA) The key exchange algorithm specified by a PROV_FORTEZZA provider type. This algorithm is an improved version of the Diffie-Hellman algorithm.
key exchange functions
A set of functions used to exchange or transmit keys. Key exchange functions can also be used to implement fully authenticated three-phase key exchanges.
key-exchange key pair
See exchange key pair.
key exchange private key
The private key of an exchange key pair.

See also exchange key pair.

key exchange protocol
A protocol by which two parties exchange information to establish a shared secret. The shared secret is then typically used as a symmetric encryption key.
key exchange public key
The public key of an exchange key pair.

See also exchange key pair.

key generation functions
A set of functions used by applications to generate and customize cryptographic keys. These functions include full support for changing chaining modes, initialization vectors, and other encryption features.
key length
Values specified by some providers that indicate the length of the public/private key pairs and session keys used with that provider.
key pair
A private key and its related public key.