Шифрування окремого елементу

Як було сказано вище, структура EncryptedData несе зашифровані дані разом з необхідною інформацією. У основі шифрування одиночного елементу XML-файла лежить аналогічний підхід. Лістинг 7, в якому зашифрований елемент GetSpecialDiscountedBookingForPartners з Лістингу 1 отриманий простій заміною елементом EncryptedData.

Лістинг 7

<?xml version=”1.0”?>
<SOAP-ENV:Envelope
xmlns:SOAP-ENV=”http://schemas.xmlsoap.org/soap/envelope/”>
<SOAP-ENV:Body>
<xenc:EncryptedData
xmlns:xenc="http://www.w3.org/2001/04/xmlenc#"
Type="http://www.w3.org/2001/04/xmlenc#Element">
<xenc:EncryptionMethod
Algorithm="http://www.w3.org/2001/04/xmlenc#aes128-cbc"/>
<ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<ds:KeyName>MyKeyIdentifier</ds:KeyName>
</ds:KeyInfo>
<xenc:CipherData>
<xenc:CipherValue>B457V645B45........</xenc:CipherValue>
</xenc:CipherData>
</xenc:EncryptedData>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Порівняємо елемент EncryptedData з Лістингу 6 з елементом EncryptedData з Лістингу 7. Неважко побачити, що є одна відмінність: замість атрибуту MimeType Лістингу 6 в Лістингу 7 з'явився атрибут Type. Значення цього атрибуту рівне http:///www.w3.org/2001/04/xmlenc#Element, що означає, що зашифрований XML-элемент.

Таким чином, при шифруванні елементу XML-файла слід використовувати ідентифікатор http:///www.w3.org/2001/04/xmlenc#Element як значення атрибуту Type. В цьому випадку одержувач зашифрованого XML-файла знатиме, що зашифровані дані повинні інтерпретуватися як XML-елемент в розшифрованій простій текстовій формі.

Шифрування змісту елементу

Розглянемо Лістинг 8, в якому зашифрований тільки зміст елементу GetSpecialDiscountedBookingForPartners - для цього цей зміст був замінений структурою EncryptedData. Цей прийом схожий на шифрування елементу (див. Лістинг 7). Відмінність полягає в тому, що цього разу значення атрибуту Type тега EncryptedData рівне http://www.w3.org/2001/04/xmlenc#Content. Це значення говорить про те, що зашифровані дані повинні інтерпретуватися як зміст елементу.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: