cryptxml.h header

This header is used by Security and Identity. For more information, see:

cryptxml.h contains the following programming interfaces:

Functions

 
CryptXmlAddObject

Adds the Object element to the Signature in the Document Context opened for encoding.
CryptXmlClose

Closes a cryptographic XML object handle.
CryptXmlCreateReference

Creates a reference to an XML signature.
CryptXmlDigestReference

Is used by an application to digest the resolved reference. This function applies transforms before updating the digest.
CryptXmlEncode

Encodes signature data by using the supplied XML writer callback function.
CryptXmlGetAlgorithmInfo

Decodes the CRYPT_XML_ALGORITHM structure and returns information about the algorithm.
CryptXmlGetDocContext

Returns the document context specified by the supplied handle.
CryptXmlGetReference

Returns the Reference element specified by the supplied handle.
CryptXmlGetSignature

Returns an XML Signature element.
CryptXmlGetStatus

Returns a CRYPT_XML_STATUS structure that contains status information about the object specified by the supplied handle.
CryptXmlGetTransforms

Returns information about the default transform chain engine.
CryptXmlImportPublicKey

Imports the public key specified by the supplied handle.
CryptXmlOpenToDecode

Opens an XML digital signature to decode and returns the handle of the document context that encapsulates a CRYPT_XML_SIGNATURE structure. The document context can include one or more Signature elements.
CryptXmlOpenToEncode

Opens an XML digital signature to encode and returns a handle of the opened Signature element. The handle encapsulates a document context with a single CRYPT_XML_SIGNATURE structure and remains open until the CryptXmlClose function is called.
CryptXmlSetHMACSecret

Sets the HMAC secret on the handle before calling the CryptXmlSign or CryptXmlVerify function.
CryptXmlSign

Creates a cryptographic signature of a SignedInfo element.
CryptXmlVerifySignature

Performs a cryptographic signature validation of a SignedInfo element.

Callback functions

 
CryptXmlDllCloseDigest

Frees the CRYPT_XML_DIGEST allocated by the CryptXmlDllCreateDigest function.
CryptXmlDllCreateDigest

Creates a digest object for the specified method.
CryptXmlDllCreateKey

Parses the KeyValue element and creates a Cryptography API:_Next Generation (CNG) BCrypt key handle to verify a signature.
CryptXmlDllDigestData

Puts data into the digest.
CryptXmlDllEncodeAlgorithm

Encodes SignatureMethod or DigestMethod elements for agile algorithms with default parameters.
CryptXmlDllEncodeKeyValue

Encodes a KeyValue element.
CryptXmlDllFinalizeDigest

Retrieves the digest value.
CryptXmlDllGetAlgorithmInfo

Decodes the XML algorithm and returns information about the algorithm.
CryptXmlDllGetInterface

Retrieves a pointer to the cryptographic extension functions for the specified algorithm.
CryptXmlDllSignData

Signs data. (CryptXmlDllSignData)
CryptXmlDllVerifySignature

Verifies a signature.
PFN_CRYPT_XML_CREATE_TRANSFORM

Creates a transform for a specified data provider.
PFN_CRYPT_XML_DATA_PROVIDER_CLOSE

Releases the data provider.
PFN_CRYPT_XML_DATA_PROVIDER_READ

Reads XML data.
PFN_CRYPT_XML_ENUM_ALG_INFO

Enumerates predefined and registered CRYPT_XML_ALGORITHM_INFO entries.
PFN_CRYPT_XML_WRITE_CALLBACK

Writes XML data.

Structures

 
CRYPT_XML_ALGORITHM

Specifies the algorithm used to sign or transform the message.
CRYPT_XML_ALGORITHM_INFO

Contains algorithm information.
CRYPT_XML_BLOB

Contains an arbitrary array of bytes.
CRYPT_XML_CRYPTOGRAPHIC_INTERFACE

Exposes the implemented CryptXML functions.
CRYPT_XML_DATA_BLOB

Contains XML encoded data.
CRYPT_XML_DATA_PROVIDER

Specifies the interface to the XML data provider.
CRYPT_XML_DOC_CTXT

Defines document context information.
CRYPT_XML_ISSUER_SERIAL

Contains an X.509 issued distinguished name�serial number pair.
CRYPT_XML_KEY_DSA_KEY_VALUE

Defines a Digital Signature Algorithm (DSA) key value. The CRYPT_XML_KEY_DSA_KEY_VALUE structure is used as an element of the key value union in the CRYPT_XML_KEY_VALUE structure.
CRYPT_XML_KEY_ECDSA_KEY_VALUE

Defines an Elliptic Curve Digital Signature Algorithm (ECDSA) key value. The CRYPT_XML_KEY_ECDSA_KEY_VALUE structure is used as an element of the key value union in the CRYPT_XML_KEY_VALUE structure.
CRYPT_XML_KEY_INFO

Encapsulates key information data.
CRYPT_XML_KEY_INFO_ITEM

Encapsulates key information data that corresponds to a KeyInfo element. The KeyInfo element enables the recipient to obtain the key needed to validate the signature.
CRYPT_XML_KEY_RSA_KEY_VALUE

Defines an RSA key value. The CRYPT_XML_KEY_RSA_KEY_VALUE structure is used as element of the key value union in the CRYPT_XML_KEY_VALUE structure.
CRYPT_XML_KEY_VALUE

Contains a single public key that may be useful in validating the signature.
CRYPT_XML_KEYINFO_PARAM

Is used by the CryptXmlSign function to specify the members of the KeyInfo element to be encoded.
CRYPT_XML_OBJECT

Describes an Object element in the signature.
CRYPT_XML_PROPERTY

Contains information about a CryptXML property.
CRYPT_XML_REFERENCE

Contains information used to populate the Reference element.
CRYPT_XML_REFERENCES

Defines an array of CRYPT_XML_REFERENCE structures.
CRYPT_XML_SIGNATURE

Contains information used to populate the Signature element.
CRYPT_XML_SIGNED_INFO

Describes an XML encoded SignedInfo element.
CRYPT_XML_STATUS

Returns information about the signature validation status, summary status information about a SignedInfo element, or summary status information about an array of Reference elements.
CRYPT_XML_TRANSFORM_CHAIN_CONFIG

Contains application defined transforms that are allowed for use in the XML digital signature.
CRYPT_XML_TRANSFORM_INFO

Contains information that is used when applying the data transform.
CRYPT_XML_X509DATA

Represents the sequence of choices in the X509Data element.
CRYPT_XML_X509DATA_ITEM

Represents X.509 data that is to be encoded in an X509Data named element.

Enumerations

 
CRYPT_XML_CHARSET

Used to specify the character set used in the XML.
CRYPT_XML_KEYINFO_SPEC

Specifies values for the dwKeyInfoSpec parameter in the CryptXmlSign function.
CRYPT_XML_PROPERTY_ID

Specifies the type and usage of the XML property.