RFC 3741 – Exclusive XML Canonicalization, Version 1.0
| Status | Informational |
|---|---|
| Veröffentlicht | März 2004 |
| Volltext | rfc-editor.org/rfc/rfc3741 |
RFC 3741 spezifiziert die Exclusive XML Canonicalization, eine Methode zur serialisierten Darstellung von XML-Dokumenten oder -Teilmengen. Im Gegensatz zur normalen kanonischen XML, die bei der Serialisierung eines Subdokuments dessen vollständigen Vorfahrenkontext inklusive aller Namespace-Deklarationen und xml:-Attribute einbezieht, minimiert die exklusive Variante diesen Kontext. Ziel ist es, ein kanonisiertes Subdokument zu erzeugen, das seine Gültigkeit behält, wenn es aus seinem ursprünglichen Kontext entfernt und in einen anderen eingefügt wird, etwa für digitale Signaturen über XML-Nutzdaten in Nachrichten.
Der Kern des Verfahrens besteht darin, dass Namespace-Deklarationen und xml:-Attribute nur dann in die Ausgabe übernommen werden, wenn sie im aktuellen Knoten sichtbar benötigt werden (visible) und nicht bereits von einem Ausgabe-Vorfahren bereitgestellt werden. Ein zusätzlicher Parameter (InclusiveNamespaces PrefixList) erlaubt es, bestimmte Namespace-Präfixe auszunehmen, die dann wie in der normalen kanonischen XML behandelt werden. Andernfalls werden Namespace-Knoten nur im Start-Tag des Knotens selbst ausgegeben, in dem sie tatsächlich verwendet werden.
Die Spezifikation ist besonders für XML-Sicherheitsanwendungen wie digitale Signaturen relevant, wo ein signiertes XML-Dokument in verschiedenen Kontexten (z. B. Protokollnachrichten) bestehen bleiben muss. Sie stellt eine wichtige Erweiterung der Canonical XML dar und wird häufig in Kombination mit XML Signature verwendet, um die Wiederverwendbarkeit von signierten Daten über unterschiedliche Umgebungen hinweg zu gewährleisten.