ホーム > X-Plus > XML Square >  スタンダーズ

この記事を送る はてなブックマークに追加する BuzzurlにブックマークBuzzurlにブックマーク Yahoo!ブックマークに登録
テキストリンクコードを取得する

スタンダーズコーナー:W3C規格解説 「XML Encryption」

2002年05月07日作成 

W3C規格解説
XML Encryption
   

(株)日本ユニテック
村上 泰介

XML Encryptionとは、XMLデータの暗号化のための規格で、現在は勧告候補です。 (http://www.w3.org/TR/2002/CR-xmlenc-core-20020304/

XML Encryptionとは

以前にXML Signature というXMLでディジタル署名を記述するための規格について解説しましたが、XML EncryptionとXML Signatureの2つが、XMLデータのセキュリティに関する主要な規格です。

XML Signatureを利用することで、XMLデータが改ざんされたり、別の人になりすましてデータを送ったり、送っておきながら後でそれを否認したりということが防げます。つまり、データの「完全性」、「真正性」、「非否認性」が確保されるのですが、XML Signatureでは、データの「機密性」は守られません。つまり、第三者がデータの内容を盗み見することを防げないのです。そこで、XML Encryptionが利用されるのです。


  XMLデータのセキュリティ

XML Encryptionのサンプル

XML Encryptionでは、対象となるXMLデータの特定の部分だけを暗号化することができます。たとえば、次のサンプルのようなデータがあったとします。name要素の内容は誰に見られても構いませんが、creditcard要素の内容は、データの受信者だけにだけ分かるようにしたいので、暗号化することにします。

暗号化の対象となるXMLのサンプル
<?xml version="1.0"?>
<personaldata>
 <name>Taro Yamada</name>
 <creditcard>
  <number>8745 1236 7593 0417</number>
 </creditcard>
</personaldata>

暗号化されたデータは、次のようになります。creditcard要素の部分が、EncryptedData要素に置き換わっています。EncryptedData要素以下のタグの記述の仕方がXML Encryptionで定義されているのです。

EncryptedData要素には、受信者側の鍵情報と、暗号化した値(ここでは、"ABC789PQR")があるので、受信者は自分しか持っていない秘密鍵で、暗号化した値を復号化して、元のXMLデータ(ここではcreditcard要素)の内容を知ることができるのです。

暗号化したXMLのサンプル
<?xml version='1.0'?>
<personaldata>
 <name>Taro Yamada</name>

 <--ここから暗号化データ-->
 <EncryptedData Type='…'xmlns='http://www.w3.org/2001/04/xmlenc#'>
  <ds:KeyInfo xmlns:ds='http://www.w3.org/2000/09/xmldsig#'>
   <--ここに受信者側の鍵情報-->
  </ds:KeyInfo>
  <CipherData><CipherValue>
   ABC789PQR
  </CipherValue></CipherData>
 </EncryptedData>

</personaldata>

このサンプルでは、creditcard要素を暗号化しましたが、number要素などの別の要素を暗号化することもできますし、また、暗号化したXMLデータをもう一回暗号化することもできます。

まとめ

XML Encryptionは、XML Signatureと同様に、XMLデータのセキュリティを担う重要な規格ですが、製品の実装はまだあまり進んでいないようです。ただ、これからWebサービスが普及するようになれば、必須の技術として採用が進んでいくことでしょう。最近では、IBM とMicrosoftが提唱するWS-Securityという規格においても、両規格の準拠を表明しています。いずれは、暗号化あるいはディジタル署名をせずに、XMLデータをやり取りすることはなくなるかもしれません。




関連サービス

標準化仕様の動向調査
最新動向を伝えるDXメールニュース (無料)



この記事と関連の高い記事

関連キーワード:XML関連規格




ページトップへ戻る