Zum Inhalt springen
ecdsa.com

XML-Signatur (XML-DSig)

Der W3C-Standard zum Signieren von XML (XML Signature Syntax and Processing 1.1, 2013), bei dem ein Element ds:Signature die signierten Daten per URI referenziert, kanonisiert und einen SignedInfo-Block aus Digests signiert.
Auch geschrieben alsXML SignatureXML-DSigXMLDSigds:SignatureExclusive XML Canonicalization

Eine Signatur enthält SignedInfo (Kanonisierungsmethode, Signaturmethode und für jedes signierte Element eine Reference, jeweils mit Transformationen und einem Digest), SignatureValue und meist KeyInfo mit einem X.509-Zertifikat. Eingebettete Signaturen (enveloped) stehen innerhalb des Elements, das sie signieren (SAML-Assertions), abgetrennte (detached) verweisen auf Daten an anderer Stelle. Die Exclusive XML Canonicalization (http://www.w3.org/2001/10/xml-exc-c14n#) normalisiert Namespaces und Whitespace, sodass semantisch gleiches XML denselben Hash ergibt.

Gerade die Flexibilität ist die Gefahr: Referenzen über das Attribut ID, XPath-Transformationen und Kanonisierungsregeln können dazu führen, dass Verifizierer und Anwendungen unterschiedlich beurteilen, was signiert wurde. Signature Wrapping, Fehler beim Umgang mit Kommentaren und Angriffe über externe XML-Entitäten haben SAML- und SOAP-Implementierungen wiederholt ausgehebelt. XAdES (ETSI EN 319 132) setzt langfristig prüfbare elektronische Signaturen auf XML-DSig auf.

Standards und Quellen

Alle Begriffe