正則なXML バージョン 2.0
W3C草案2010年3月4日
- このバージョン
- http://www.w3.org/TR/2010/WD-xml-c14n2-20100304/
- 最新の発行済みバージョン
- http://www.w3.org/TR/xml-c14n2/
- 最新の編者草案
- http://www.w3.org/2008/xmlsec/Drafts/c14n-20/
- 以前のバージョン
- http://www.w3.org/TR/2009/WD-xml-c14n2-20091022/
- 最新の勧告
- http://www.w3.org/TR/xml-c14n2/
- 編者
- John Boyer ( IBM (元PureEdge Solutions、バージョン1.0) )
- Glenn Marcy ( IBM (バージョン1.1) )
- Pratik Datta ( Oracle )
- Frederick Hirsch ( Nokia )
著作権© 2010 W3C®(マサチューセッツ工科大学、欧州情報科学数学研究コンソーシアム、慶應義塾大学)により、全ての権利が留保される。W3Cの免責、商標、文書利用規定が適用される。
- 概要
- 正則なXMLバージョン2.0は、パフォーマンス、ストリーミング、ハードウェア実装、堅牢性、被攻撃性を最小化すること、署名対象の決定についてなど、種々に関する問題に対処するために正則なXMlバージョン1.1を大きく改訂するものである。その上、事実上の排他的正則化バージョン2.0となる更新も含むものである。
- あらゆるXML文書は、あるアプリケーションのコンテキスト内で論理的に等価であるが、XML 1.0とXML名前空間1.0において認められた文法上の違いに基づく物理的表現の異なるXML文書集合の一部である。この仕様書では、その許容可能な違いからなるXML文書の正則形式と呼ばれる物理的表現を生成する方法について説明する。いくつかの特殊なケースについての制限を除き、2つの文書が同一の正則形式を持つ場合、その2つの文書は任意のアプリケーションコンテキストにおいて論理的に等価である。2つの文書が異なる正則形式を持ちながら、標準的なXML仕様で説明することのできないアプリケーション独自の等価性ルールに基づく任意のコンテキストにおいて等価であるかもしれない事に留意せよ。
- 正則なXMLバージョン2.0は、XML 1.0に適用される。XML 1.1向けには定義されない。
- この文書の位置づけ
- This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications and the latest revision of this technical report can be found in the W3C technical reports index at http://www.w3.org/TR/.
- This is a W3C Working Draft of "Canonical XML Version 2.0".
- This document is expected to be further updated based on both Working Group input and public comments.
- This document was developed by the XML Security Working Group.
- Please send comments about this document to public-xmlsec-comments@w3.org (with public archive).
- Publication as a Working Draft does not imply endorsement by the W3C Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.
- This document was produced by a group operating under the 5 February 2004 W3C Patent Policy. The W3C maintains a public list of any patent disclosures made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy.
- This document was published by the XML Security Working Group as a Working Draft. This document is intended to become a W3C Recommendation. If you wish to make comments regarding this document, please send them to public-xmlsec@w3.org (subscribe, archives). All feedback is welcome.
- Publication as a Working Draft does not imply endorsement by the W3C Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.
- This document was produced by a group operating under the 5 February 2004 W3C Patent Policy. W3C maintains a public list of any patent disclosures made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy.
始めに[編集]
用語[編集]
この文書において"しなければならない[MUST]"、"してはならない[MUST NOT]"、"要求されている[REQUIRED]"、"することになる[SHALL]"、"することはない[SHALL NOT]"、"する必要がある[SHOULD]"、"しないほうがよい[SHOULD NOT]"、"推奨される[RECOMMENDED]"、"してもよい[MAY]"、"選択できる[OPTIONAL]"といった単語は RFC 2119 [RFC2119]に記述されているように解するものとする。
QNameの定義は、XML名前空間[XML-NAMES]を参照せよ。
- 文書の部分集合(document subset)
- 文書の部分集合とは、その文書の全てのノードを含まないかもしれない、あるXML文書の一部分である。
- 正則形式(canonical form)
- XML文書の正則形式とは、この仕様書で説明される方法で作成された文書の物理的表現である。
- 正則なXML(canonical XML)
- 正則なXMLという語は、正則形式を持つXMLを指す。XML正則化法とは、任意のXML文書や文書の部分集合の正則形式を生成するための、この仕様書によって定義されるアルゴリズムである。XML正則化という語は、XML文書や文書の部分集合にXML正則化法を適用するプロセスを指す。
- サブツリー(subtree)
- サブツリーとは、1つのXML要素ノードを指し、その全てのサブツリーが含まれる。XPathの用語で言うなら、サブツリーとは、ある要素ノードとその全ての子孫ノードである。
用途[編集]
XML 1.0勧告とXML名前空間1.0が等価な情報を表すための複合的な構文法を定義してから、XMLアプリケーションでは文書の情報内容に影響を与えない程度の違いを持つ傾向がある。XML正則化は、文書や文書の部分集合の情報内容が変化しているかどうかテストするための能力を要求されるアプリケーションに有用なようにデザインされている。これは、アプリケーション処理前の原本の正則形式と、アプリケーション処理結果の文書の正則形式を比較することによってなされる。
例えば、XML文書や文書の部分集合の正則形式を用いたデジタル署名では、原本のXML 1.0やXML名前空間1.0で論理的に等価であると定義された違いであるような物理的表現の差分に関わらず、署名ダイジェストの計算が可能である。署名作成では、そのダイジェストは文書の正則形式から計算される。文書はそのあと依拠当事者に送られ、依拠当事者は、文書を読み込むこととその受信した文書の正則形式からダイジェストを計算することで、署名を検証する。署名者と依拠当事者によって計算されたダイジェストの等価さが、(彼らが計算したダイジェストの元となった正則形式の等価さゆえに)文書の情報内容が署名されてから改ざんされていないことを保証する。
註: 実装の要件で述べられていない上、正式にこの件について明らかにしていないが、仮にこの仕様書に準拠した文書の正則化によって生成された文字列そのものを構文解析され、かつこの仕様書に準拠した正則化を行われとしても、その2度目の正則化で生成された文字列が最初の正則化で生成されたものと同一であろうことが、この仕様書の意図である。