CRYPT_RSAES_OAEP_PARAMETERS structure (wincrypt.h)

The CRYPT_RSAES_OAEP_PARAMETERS structure contains the parameters for an RSAES-OAEP key encryption. This structure is used with the PKCS_RSAES_OAEP_PARAMETERS and szOID_RSAES_OAEP encoding types.

Syntax

typedef struct _CRYPT_RSAES_OAEP_PARAMETERS {
  CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
  CRYPT_MASK_GEN_ALGORITHM   MaskGenAlgorithm;
  CRYPT_PSOURCE_ALGORITHM    PSourceAlgorithm;
} CRYPT_RSAES_OAEP_PARAMETERS, *PCRYPT_RSAES_OAEP_PARAMETERS;

Members

HashAlgorithm

A CRYPT_ALGORITHM_IDENTIFIER structure that identifies the hash algorithm to use. If this is not set for encoding, the default algorithm is szOID_OIWSEC_sha1.

MaskGenAlgorithm

A CRYPT_MASK_GEN_ALGORITHM structure that identifies the mask generation function to use. If this is not set for encoding, the default algorithm is szOID_RSA_MGF1 with the mask generation hash algorithm defaulting to the algorithm specified by the HashAlgorithm member.

PSourceAlgorithm

A CRYPT_PSOURCE_ALGORITHM structure that contains the source of, and possibly the value of, the label to be used. If this is not set for encoding, the default algorithm is szOID_RSA_PSPECIFIED with no OCTET bytes.

Remarks

RSAES-OAEP is normally used for encrypting AES symmetric keys. Normally, only the hash algorithm object identifier (OID) will need to be set for encoding. For decoding, all the members are explicitly set.

Requirements

Requirement Value
Minimum supported client Windows Vista [desktop apps only]
Minimum supported server Windows Server 2008 [desktop apps only]
Header wincrypt.h