XML digital signature is an XML representation of digital signature as defined in the W3C standard: "XML-Signature Syntax and Processing, W3C Recommendation 12 February 2002". This means that XML digital signature is itself an XML document or an XML fragment.
MSXML uses Microsoft CAPICOM and CryptoAPI as the underlying technologies perform the cryptographic operations required for XML digital signature. MSXML encapsulates CAPICOM and CryptoAPI operations, such as key management and the encryption/decryption and computations of digests. MSXML also simplifies the signing or verifyication of XML data into a simple method call on a COM interface. Experienced CAPICOM/CryptoAPI users can further examine and manipulate other security-related information using methods or functions exposed in CAPICOM/CryptoAPI.
XML digital signature can be used to sign any data, including an XML document or fragment, an HTML page, plain text, or binary-encoded data such as a JPEG file.
Based on the relationship between the XML digital signature and the signed data, there are three types of XML digital signatures. The following topics describe these types.