XML-Encryption

Die XML-Encryption (XML-Enc) ist eine Spezifikation von Möglichkeiten, wie XML-Dokumente ver- und entschlüsselt werden können.[1]

Möglichkeiten

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:[1]

  • EncryptedData ist der einschließende Tag für die XML-Verschlüsselung. Das Attribut Type informiert darüber, ob ein ganzes XML-Element oder nur der Inhalt des Elementes verschlüsselt werden soll. Das Attribut Type 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 mehrere CipherValue-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

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.[2]

<?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

Literatur

  • Daniel Koch: XML-Verschlüsselung und weitere Sicherungsmaßnahmen. In: iX. Nr. 10, 2005, S. 130–132.

Einzelnachweise

  1. a b 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).
  2. XML Encryption Syntax and Processing. W3C, 10. Dezember 2002, abgerufen am 20. Oktober 2011 (englisch).

 

Prefix: a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9

Portal di Ensiklopedia Dunia