System.Security.Cryptography.Xml.SignedXml Class

Provides a wrapper on a core XML signature object to facilitate creating XML signatures.

See Also: SignedXml Members


public class SignedXml


The System.Security.Cryptography.Xml.SignedXml class is the main class used for XML signing and verification (XMLDSIG) in the .NET Framework. XMLDSIG is a standards-based, interoperable way to sign and verify all or part of an XML document or other data that is addressable from a Uniform Resource Identifier (URI). The .NET Framework XMLDSIG classes implement the World Wide Web Consortium (W3C) specification for XML signing and verification located at

Use the System.Security.Cryptography.Xml.SignedXml class whenever you need to share signed XML data between applications or organizations in a standard way. Any data signed using this class can be verified by any conforming implementation of the W3C specification for XMLDSIG.

XMLDSIG creates a <Signature> element, which contains a digital signature of an XML document or other data that is addressable from a URI. The <Signature> element can optionally contain information about where to find a key that will verify the signature and which cryptographic algorithm was used for signing.

The System.Security.Cryptography.Xml.SignedXml class allows you to create the following three kinds of XML digital signatures:

Enveloped signature

The signature is contained within the XML document being signed.

Enveloping signature

The signed XML is contained within the <Signature> element.

Detached signature

The signature is in a separate document from the data being signed.

Use one of the following methods to exchange key information:


Namespace: System.Security.Cryptography.Xml
Assembly: System.Security (in System.Security.dll)
Assembly Versions: 1.0.5000.0,,