XML-Encryption
Van Wikipedia, de gratis encyclopedie
Top View
Die XML-Encryption (XML-Enc) ist eine Spezifikation von Möglichkeiten, wie XML-Dokumente ver- und entschlüsselt werden können.
Möglichkeiten
[Bearbeiten | Quelltext bearbeiten]Dabei sind folgende Möglichkeiten vorgesehen:
- Verschlüsselung des gesamten XML-Dokumentes
- Verschlüsselung eines einzelnen Elementes und seiner Unterelemente
- Verschlüsselung des Inhaltes eines XML-Elementes
- Verschlüsselung für mehrere Empfänger
Dazu existieren einige spezielle Elemente. Die wichtigsten sind:
EncryptedData
ist der einschließende Tag für die XML-Verschlüsselung. Das AttributType
informiert darüber, ob ein ganzes XML-Element oder nur der Inhalt des Elementes verschlüsselt werden soll. Das AttributType
ist optional.EncryptionMethod
beschreibt den Algorithmus, der zur Verschlüsselung verwendet wird. Das Element ist optional. Wird dieses Element nicht verwendet, muss der Verschlüsselungsalgorithmus dem Empfänger bekannt sein.KeyInfo
ist ein ebenfalls optionales Element, welches Informationen über den Schlüssel enthalten kann, mit dem die Daten verschlüsselt worden sind.CipherData
ist das verschlüsselte Element. Es enthält entweder ein oder mehrereCipherValue
-Elemente oder aber eine Referenz zu den verschlüsselten Daten (CipherReference
).CipherValue
enthält die verschlüsselten Daten.CipherReference
ist eine Referenz zu den verschlüsselten Daten.
Beispiel
[Bearbeiten | Quelltext bearbeiten]Bei einem Bezahlvorgang im Internet könnte folgender XML-Datensatz auftreten:
<?xml version='1.0'?> <PaymentInfo xmlns='http://example.org/paymentv2'> <Name>John Smith</Name> <CreditCard Limit='5,000' Currency='USD'> <Number>4019 2445 0277 5567</Number> <Issuer>Example Bank</Issuer> <Expiration>04/02</Expiration> </CreditCard> </PaymentInfo>
Eine Möglichkeit, die vertraulichen Kreditkarteninformationen zu schützen besteht darin, das gesamte Element „CreditCard“ zu verschlüsseln.
<?xml version='1.0'?> <PaymentInfo xmlns='http://example.org/paymentv2'> <Name>John Smith</Name> <EncryptedData Type='http://www.w3.org/2001/04/xmlenc#Element' xmlns='http://www.w3.org/2001/04/xmlenc#'> <CipherData> <CipherValue>A23B45C56</CipherValue> </CipherData> </EncryptedData> </PaymentInfo>
Siehe auch
[Bearbeiten | Quelltext bearbeiten]Literatur
[Bearbeiten | Quelltext bearbeiten]- Daniel Koch: XML-Verschlüsselung und weitere Sicherungsmaßnahmen. In: iX. Nr. 10, 2005, S. 130–132.
Weblinks
[Bearbeiten | Quelltext bearbeiten]- XML-Encryption Syntax and Processing. (W3C, englisch)
Einzelnachweise
[Bearbeiten | Quelltext bearbeiten]- ↑ Klaus Schmeh: Kryptografie: Verfahren, Protokolle, Infrastrukturen (= iX Edition). 6. Auflage. dpunkt, Heidelberg 2016, ISBN 978-3-86490-356-4, XML Encryption, S. 398 (eingeschränkte Vorschau in der Google-Buchsuche).
- ↑ XML Encryption Syntax and Processing. W3C, 10. Dezember 2002, abgerufen am 20. Oktober 2011 (englisch).