Share via

CryptographicEngine Class


Encrypts, decrypts, and signs content, and verifies digital signatures.

public ref class CryptographicEngine abstract sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class CryptographicEngine final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
public static class CryptographicEngine
Public Class CryptographicEngine
Object Platform::Object IInspectable CryptographicEngine

Windows requirements

Device family
Windows 10 (introduced in 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduced in v1.0)


This class contains only static methods. You do not have to create an instance of the class to use the methods. Instead, use the class name followed by the dot operator (.), followed by the method name.


Decrypt(CryptographicKey, IBuffer, IBuffer)

Decrypts content that was previously encrypted by using a symmetric or asymmetric algorithm.

DecryptAndAuthenticate(CryptographicKey, IBuffer, IBuffer, IBuffer, IBuffer)

Decrypts and authenticates data. For more information and a complete code sample, see EncryptedAndAuthenticatedData.

DecryptAsync(CryptographicKey, IBuffer, IBuffer)

Decrypts the encrypted input data using the supplied key.

DeriveKeyMaterial(CryptographicKey, KeyDerivationParameters, UInt32)

Derives a key from another key by using a key derivation function. For more information, see the KeyDerivationAlgorithmProvider and KeyDerivationParameters classes.

Encrypt(CryptographicKey, IBuffer, IBuffer)

Encrypts data by using a symmetric or asymmetric algorithm.

EncryptAndAuthenticate(CryptographicKey, IBuffer, IBuffer, IBuffer)

Performs authenticated encryption.

Sign(CryptographicKey, IBuffer)

Signs digital content. For more information, see MACs, hashes, and signatures.

SignAsync(CryptographicKey, IBuffer)

Computes a hash for the supplied input data, and then signs the computed hash using the specified key.

SignHashedData(CryptographicKey, IBuffer)

Signs the hashed input data using the specified key.

SignHashedDataAsync(CryptographicKey, IBuffer)

Signs the hashed input data using the specified key.

VerifySignature(CryptographicKey, IBuffer, IBuffer)

Verifies a message signature.

VerifySignatureWithHashInput(CryptographicKey, IBuffer, IBuffer)

Verifies the signature of the specified input data against a known signature.

Applies to

See also