Cryptography API: Next Generation


Cryptography API: Next Generation (CNG) is the long-term replacement for the CryptoAPI. CNG is designed to be extensible at many levels and cryptography agnostic in behavior.

Developer audience

CNG is intended for use by developers of applications that will enable users to create and exchange documents and other data in a secure environment, especially over nonsecure media such as the Internet. Developers should be familiar with the C and C++ programming languages and the Windows-based programming environment. Although not required, an understanding of cryptography or security-related subjects is advised.

If you are developing a CNG cryptographic algorithm provider or key storage provider, you must download the Cryptographic Provider Development Kit from Microsoft.

Run-time requirements

CNG is supported beginning with Windows Server 2008 and Windows Vista. For information about run-time requirements for a particular programming element, see the Requirements section of the reference page for that element.

In this section


About CNG

Describes CNG features, cryptographic primitives, and key storage, retrieval, import, and export.

Using CNG

Explains how to use the cryptography configuration features of CNG and typical CNG programming.

CNG Reference

Detailed descriptions of the CNG programming elements. These pages include reference descriptions of the API for working with CNG.