X509KeyUsageFlags Enumeration

X509KeyUsageFlags Enumeration

Defines how the certificate key can be used. If this value is not defined, the key can be used for any purpose.

This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.

Namespace:  System.Security.Cryptography.X509Certificates
Assembly:  System (in System.dll)

public enum X509KeyUsageFlags

Member nameDescription
NoneNo key usage parameters.
EncipherOnlyThe key can be used for encryption only.
CrlSignThe key can be used to sign a certificate revocation list (CRL).
KeyCertSignThe key can be used to sign certificates.
KeyAgreementThe key can be used to determine key agreement, such as a key created using the Diffie-Hellman key agreement algorithm.
DataEnciphermentThe key can be used for data encryption.
KeyEnciphermentThe key can be used for key encryption.
NonRepudiationThe key can be used for authentication.
DigitalSignatureThe key can be used as a digital signature.
DecipherOnlyThe key can be used for decryption only.

This class is an implementation of a commonly used extension that is mapped by default to the CryptoConfig file. When the Extensions property of the X509Certificate2 class is invoked, this class can be used directly.

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

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

Community Additions

© 2015 Microsoft