This topic has not yet been rated - Rate this topic

CspParameters.KeyNumber Field

Specifies whether an asymmetric key is created as a signature key or an exchange key.

Namespace:  System.Security.Cryptography
Assembly:  mscorlib (in mscorlib.dll)
public int KeyNumber

The KeyNumber field initializes the KeyNumber property when you initialize a CspKeyContainerInfo object with a CspParameters object.

An exchange key is an asymmetric key pair used to encrypt session keys so that they can be safely stored and exchanged with other users. You can use the Exchange value (1) to specify an exchange key. This value corresponds to the AT_KEYEXCHANGE value used in the unmanaged Microsoft Cryptographic API (CAPI).

A signature key is an asymmetric key pair used for authenticating digitally signed messages or files. You can use the Signature value (2) to specify a signature key. This value corresponds to the AT_SIGNATURE value used in CAPI.

By default, the KeyNumber field specifies an exchange key.

The following code example demonstrates how to use the KeyNumber enumeration to specify a key type for an RSACryptoServiceProvider object.

// Create a new CspParameters object.
CspParameters cspParams = new CspParameters();

// Specify an exchange key.
cspParams.KeyNumber = (int) KeyNumber.Exchange;

// Initialize the RSACryptoServiceProvider   
// with the CspParameters object.
RSACryptoServiceProvider RSACSP = new RSACryptoServiceProvider(cspParams);

.NET Framework

Supported in: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Did you find this helpful?
(1500 characters remaining)
© 2013 Microsoft. All rights reserved.