(57)【要約】【課題】  従来の構造化文書に対する電子署名方式における問題点を解決することを可能とする構造化文書署名装置等を提供する。【解決手段】  構造化文書適応化装置２００は、構造化文書を構成する要素又は要素の値に対する適応化の種別を決定する適応化決定部２０２と、構造化文書で指定されている適応化ポリシーに基づいて、決定された適応化が要素又は要素の値に対して許可されているか否かについて検査する適応化ポリシー検査部２０３と、検査結果に応じて、要素又は要素の値に対して適応化を行う適応化部２０４とを具備する【選択図】  図１３
2010124482.tif 000002
【特許請求の範囲】
【請求項１】
構造化文書を構成する要素又は前記要素の値に対する適応化の種別を決定する決定部と、
前記構造化文書で指定されている適応化ポリシーに基づいて、決定された前記適応化が前記要素又は前記要素の値に対して許可されているか否かについて検査する検査部と、
前記検査結果に応じて、前記要素又は前記要素の値に対して前記適応化を行う適応化部とを具備し、
前記適応化部は、前記要素又は前記要素の値を削除し、削除した前記要素のハッシュ値又は前記要素の値のハッシュ値を、それぞれ前記要素の親要素又は前記要素に属性値として挿入することを特徴とする構造化文書適応化装置。
【請求項２】
前記適応化部は、前記要素の値を追加する場合、前記適応化ポリシーに反する適応化が前記要素に対して行われていないことを検証するための検証手段を設けることを特徴とする請求項１に記載の構造化文書適応化装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、構造化文書署名装置、構造化文書適応化装置及び構造化文書検証装置に関する。
【背景技術】
【０００２】
図３１乃至図３３を参照して、従来の構造化文書に対する電子署名方式について説明する（例えば、特許文献１参照）。
【０００３】
図３１は、従来の構造化文書に対する電子署名方式における電子署名ファイルのフォーマットを表したものである。
【０００４】
図３１において、「ファイル署名コード」は、電子署名ファイル全体のダイジェスト値を示し、「深さコード」は、どの深さの要素のダイジェスト値までを電子署名ファイルに含めるかを示す。また、複数の「ノード署名コード」は、深さコードによって指定された深さの範囲内にある各要素のダイジェスト値である。
【０００５】
従来の構造化文書に対する電子署名方式では、構造化文書全体のダイジェスト値に各要素のダイジェスト値を連結し、連結された値に対して電子署名を付与している。
【０００６】
例えば、図３２に示すＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）文書（構造化文書全体）について、各要素（例えば、＜Ｄｏｃｕｍｅｎｔ＞）のダイジェスト値Ｄ１乃至Ｄ７を求め、従来の構造化文書に対する電子署名方式を適応した場合、図３３に示す電子署名付ＸＭＬ文書となる。
【０００７】
図３３において、要素「＜Ｄｏｃｕｍｅｎｔ＞」のダイジェスト値Ｄ１によって、図３２に示すＸＭＬ文書の正当性について検証することが可能であり、要素「＜Ｃｈａｐｔｅｒ＞」のダイジェスト値Ｄ２や要素「＜Ｓｅｃｔｉｏｎ１-１＞ｍ１１＜/Ｓｅｃｔｉｏｎ１-１＞」のダイジェスト値Ｄ３等により、ＸＭＬ文書の各要素の正当性について検証することが可能である。
【０００８】
このように、従来の構造化文書に対する電子署名方式によって、構造化文書全体の変更だけでなく、構造化文書を構成する各要素の変更についても検出が可能である。
【０００９】
近年、インターネット等の広域ネットワークにおいて実現される様々なサービスにおいて、ＸＭＬ文書を代表とする様々な構造化文書が利用されている。
【００１０】
例えば、最も代表的なサービスであるＷｅｂサービスでは、ＨＴＭＬで記述された構造化文書（ＨＴＭＬ文書）を用いて、マルチメディアコンテンツの提供を行う。
【００１１】
また、ＸＭＬに準拠した「ＳＭＩＬ」と呼ばれる言語で記述された構造化文書を用いると、動画や音声を配信するだけではなく、アニメーションや静止画やテキスト等の様々なマルチメディアコンテンツを組み合わせたものを配信することが可能となる。
【００１２】
このように、マルチメディアコンテンツは、構造化文書の形式で配信される機会が多くなってきている。以降、構造化文書といえば、マルチメディアコンテンツも包含するものとする。
【００１３】
一方、マルチメディアコンテンツの配信技術の一つとして、提供するサービスに係る構造化文書を、ユーザ側の環境状況（端末やネットワークの処理能力、ユーザの位置、時間等）やステータス状況（ユーザの年齢、所属、免許）に応じて適応化する技術が注目されている。
【００１４】
構造化文書を適応化する場合、構造化文書を構成する各要素が適応化の対象となる。
【００１５】
このように、適応化される構造化文書に対して提供者が電子署名を付与する場合、従来の構造化文書に対する電子署名方式のように、構造化文書全体のダイジェストに対して電子署名を付与すると、適応化が行われることにより構造化文書が変更されるため、受信端末において受信された構造化文書の正当性を検証することが不可能となる。
【００１６】
かかる問題点に関して、従来の構造化文書に対する電子署名方式では、構造化文書全体に対するダイジェスト値に、各要素のダイジェスト値を連結して、連結された値に対して電子署名を付与している。この結果、受信端末において、各要素についての正当性を検証できるため、適応化が行われていない要素についての正当性を検証することが可能である。例えば、ある要素の値が削除された場合でも、他要素については、受信端末において正当性の検証が可能である。
【先行技術文献】
【特許文献】
【００１７】
【特許文献１】特開２００２−２２９４４８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１８】
しかしながら、従来の構造化文書に対する電子署名方式では、適応化されていない要素の正当性を検証できるだけであって、構造化文書の提供者によって実際に適応化を許可されているかどうか検証することはできないという問題点があった。
【００１９】
また、従来の構造化文書に対する電子署名方式では、要素の値が削除される適応化には対応できるものの、要素自体が追加されるような適応化が行われた場合、その要素が追加されたものであるか否かについて分からない場合、受信端末において、送信元において付与された電子署名の正当性についての検証が不可能となるという問題点があった。
【００２０】
また、従来の構造化文書に対する電子署名方式では、追加された要素が、その後、削除された場合に、その事実を検知できないという問題点があった。
【００２１】
そこで、本発明は、以上の点に鑑みてなされたもので、構造化文書に対する電子署名方式において、上述の問題点を解決することを可能とする構造化文書署名装置、構造化文書適応化装置及び構造化文書検証装置を提供することを目的とする。
【課題を解決するための手段】
【００２２】
本発明の第１の特徴は、構造化文書署名装置であって、構造化文書を構成する要素に、前記要素の値又は前記要素の子要素に対して適応可能なアクションを示す適応化ポリシーを関連付ける適応化ポリシー関連付け部と、前記要素に前記適応化ポリシーが関連付けられた前記構造化文書に基づいて、前記構造化文書を構成する各要素の属性値としてそれぞれ前記各要素の値のハッシュ値及び前記各要素の子要素のハッシュ値を挿入し、前記属性値を含む前記各要素のハッシュ値を構成要素とするハッシュ木を構成するハッシュ木構成部と、前記ハッシュ木の根及び前記適応化ポリシーに対して電子署名を付与する電子署名付与部と、前記構造化文書及び前記電子署名を出力する出力部とを具備することを要旨とする。
【００２３】
かかる発明によれば、構造化文書署名装置が、各要素に対して適応化ポリシーを指定することができ、各要素や各要素の値に対しての適応化を制約することができる。
【００２４】
また、かかる発明によれば、構造化文書についての適応化後も、ハッシュ木を用いて電子署名の正当性の検証を行うことができるため、提供するデータ（各要素や各要素の値）の正当性を検証することが可能である。
【００２５】
また、かかる発明によれば、ハッシュ木の構成要素を構造化文書に埋め込むことにより、適応化により要素や要素の値が削除された場合でも、埋め込まれたハッシュ木の構成要素からハッシュ木を再構成することが可能であり、構造化文書適応化装置が、削除する要素や要素の値のハッシュ値を計算して構造化文書に埋め込む必要がなくなるため、処理量を削減することが可能である。
【００２６】
本発明の第１の特徴において、前記出力部が、前記構造化文書及び前記電子署名と共に、前記適応化ポリシーを出力するように構成されていてもよい。
【００２７】
かかる発明によれば、構造化文書の受信端末は、受信した構造化文書に対する適応化ポリシーの正当性を検証することが可能である。
【００２８】
また、本発明の第１の特徴において、前記適応化ポリシー関連付け部が、前記適応化ポリシーの所在を示す情報を用いて、前記要素に前記適応化ポリシーを関連付けるように構成されていてもよい。
【００２９】
かかる発明によれば、構造化文書署名装置が、適応化ポリシーを出力することなく、構造化文書の受信端末が、受信した構造化文書に対する適応化ポリシーを参照することが可能であり、構造化文書署名装置による通信量を削減することが可能である。
【００３０】
また、本発明の第１の特徴において、前記適応化ポリシー関連付け部が、前記適応化ポリシーを編集する手段を具備するように構成されていてもよい。
【００３１】
かかる発明によれば、適応化ポリシー関連付け部は、適応化ポリシーを各要素又は各要素の値に対応付ける際に、当該適応化ポリシーを編集することが可能である。
【００３２】
また、本発明の第１の特徴において、前記ハッシュ木構成部が、前記ハッシュ木の根を算出した後、前記各要素に属性値として挿入されている前記各要素の値のハッシュ値又は前記各要素の子要素のハッシュ値を削除するように構成されていてもよい。
【００３３】
かかる発明によれば、構文化文書署名装置から出力される構造化文書から、埋め込まれているハッシュ木の構成要素が削除されることにより、構文化文書署名装置による通信量を削減することが可能である。
【００３４】
また、本発明の第１の特徴において、値の追加を許可する要素に対して、前記要素に関連付けられている前記適応化ポリシーに反する値の追加が前記要素に対して行われていないことを検証するための検証手段を設ける検証手段設定部を具備するように構成されていてもよい。
【００３５】
ここで、検証手段設定部として、前記適応化ポリシー関連付け部が、値の追加を許可する要素に、前記適応化ポリシーと、前記適応化ポリシーに反する値の追加が前記要素に対して行われないことを検証するための検証値とを関連付けるように構成されていてもよい。
【００３６】
また、検証値は、任意に選ばれた第１の値及び第２の値、及び、落とし戸付ハッシュ関数に基づいて前記値の追加を許可されている構造化文書適応化装置のハッシュ鍵と前記第１の値と前記第２の値とから計算されたハッシュ値であり、前記第２の値及び前記ハッシュ値は、前記値の追加を許可する要素の属性値として挿入されており、前記第１の値は、前記値の追加を許可する要素の値として挿入されていてもよい。
【００３７】
かかる発明によれば、上述の検証手段によって、適応化ポリシーに反する要素の値の追加が行われていないことを検証することが可能である。
【００３８】
本発明の第２の特徴は、構造化文書適応化装置であって、構造化文書を構成する要素又は前記要素の値に対する適応化の種別を決定する決定部と、前記構造化文書で指定されている適応化ポリシーに基づいて、決定された前記適応化が前記要素又は前記要素の値に対して許可されているか否かについて検査する検査部と、前記検査結果に応じて、前記要素又は前記要素の値に対して前記適応化を行う適応化部とを具備することを要旨とする。
【００３９】
かかる発明によれば、構造化文書適応化装置は、構造化文書で指定されている適応化ポリシーに従って、構造化文書を適応化することが可能である。
【００４０】
本発明の第２の特徴において、前記適応化部が、前記要素又は前記要素の値を削除し、削除した前記要素のハッシュ値又は前記要素の値のハッシュ値を、それぞれ前記要素の親要素又は前記要素に属性値として挿入するように構成されていてもよい。
【００４１】
かかる発明によれば、構造化文書の適応化のうち、要素又は要素の値の削除を行い、削除された要素の値のハッシュ値又は要素のハッシュ値（要素に対応するハッシュ木の構成要素）を構造化文書に埋め込むことにより、受信端末によるハッシュ木の再構成が可能となる。
【００４２】
また、本発明の第２の特徴において、前記適応化部が、前記要素の値を追加する場合、前記適応化ポリシーに反する適応化が前記要素に対して行われていないことを検証するための検証手段を設けるように構成されていてもよい。
【００４３】
ここで、前記適応化部が、前記要素の値を追加し、前記適応化ポリシーに反する適応化が前記要素に対して行われないことを検証するための検証値を前記要素に関連付けるように構成されていてもよい。
【００４４】
かかる発明によれば、構造化文書の適応化として、要素の値の追加を行い、値の追加を行った要素に対して、例えば、構造化文書検証装置が、適応化ポリシーに反した適応化が行われていないことを検証することが可能である。
【００４５】
また、本発明の第２の特徴において、前記適応化部が、所定の要素に追加する要素の値と、前記構造化文書適応化装置の秘密鍵と、前記構造化文書における前記所定の要素の属性値に挿入されている第２の値及びハッシュ値と、前記構造化文書における前記所定の要素の値に挿入されている第１の値とを用いて、前記追加する要素の値と対になる値を計算し、前記追加する要素の値と前記構造化文書における前記所定の要素の値に挿入されている要素の値とを置き換え、前記構造化文書における前記所定の要素の属性値に挿入されている第２の値と前記追加する要素の値と対になる値とを置き換えるように構成されていてもよい。
【００４６】
本発明の第３の特徴は、構造化文書検証装置であって、構造化文書が、該構造化文書で指定されている適応化ポリシーに従って適応化されているか否かについて検証する適応化検証部と、前記構造化文書を構成する各要素の属性値としてそれぞれ前記各要素の値のハッシュ値及び前記各要素の子要素のハッシュ値を挿入し、前記属性値を含む前記各要素のハッシュ値を構成要素とするハッシュ木を構成するハッシュ木構成部と、再構成した前記ハッシュ木の根と前記適応化ポリシーとに基づいて、前記構造化文書に付与されている電子署名の正当性について検証する電子署名検証部とを具備することを要旨とする。
【００４７】
かかる発明によれば、適応化された構造化文書が、適応化ポリシーに従って適応化されているか否かについて検証することが可能である。また、かかる発明によれば、構造化文書署名装置が付与した電子署名の正当性を検証することにより、構造化文書及び適応化ポリシーが構造化文書署名装置によって出力されたものであるか否かについて検証することが可能である。
【００４８】
本発明の第３の特徴において、前記ハッシュ木再構成部が、前記要素の値又は前記要素の子要素が削除されている場合、それぞれ前記要素に属性値として挿入されている前記値のハッシュ値又は前記子要素のハッシュ値を前記ハッシュ木の構成要素とするように構成されていてもよい。
【００４９】
かかる発明によれば、構造化文書検証装置が、構造化文書適応化装置によりデータ（要素の値又は要素の子要素）が削除されていた場合でも、ハッシュ木を再構成することが可能である。
【００５０】
また、本発明の第３の特徴において、前記ハッシュ木再構成部が、値の追加が許可されている要素に対して、前記適応化ポリシーに従って適応化が行われているか否かについて検証するように構成されていてもよい。
【００５１】
かかる発明によれば、追加された要素の値が削除されておらず、当該要素の値の追加が、許可されている構造化文書適応化装置によって追加されたものであるか否かについて検証することが可能である。
【００５２】
また、本発明の第３の特徴において、前記適応化検証部が、前記構造化文書において、落とし戸付ハッシュ関数に基づいて、値の追加が許可されている要素の値と、前記要素の属性値に挿入されている第２の値と、前記値の追加を行った構造化文書適応化装置のハッシュ鍵とからハッシュ値を計算し、前記要素の属性値に挿入されているハッシュ値を一致するか否かについて検証するように構成されていてもよい。
【発明の効果】
【００５３】
以上説明したように、本発明によれば、従来の構造化文書に対する電子署名方式における問題点を解決することを可能とする構造化文書署名装置、構造化文書適応化装置及び構造化文書検証装置を提供することができる。
【図面の簡単な説明】
【００５４】
【図１】本発明の実施形態に係る構造化文書検証システムの概略構成図である
【図２】本発明の実施形態に係る構造化文書署名装置の機能ブロック図である。
【図３】本発明の第１の実施形態に係る構造化文書署名装置の動作を示すフローチャートである。
【図４】本発明の第１の実施形態で用いられる構造化文書の木構造の一例を示す図である。
【図５】本発明の第１の実施形態で用いられる構造化文書のＸＭＬ記述の一例を示す図である。
【図６】本発明の第１の実施形態で用いられる適応化ポリシーの一例を示す図である。
【図７】本発明の第１の実施形態に係る構造化文書署名装置によって生成される適応化ポリシー付構造化文書の一例を示す図である。
【図８】本発明の第１の実施形態に係る構造化文書署名装置によって構成されるハッシュ木の木構造の一例を示す図である。
【図９】本発明の第１の実施形態に係る構造化文書署名装置によって構成されるハッシュ木を埋め込んだ構造化文書の一例を示す図である。
【図１０】本発明の第１の実施形態に係る構造化文書署名装置によって生成されるＸＭＬ署名の一例を示す図である。
【図１１】本発明の第１の実施形態に係る構造化文書署名装置から出力される文書の一例を示す図である。
【図１２】本発明の第１の実施形態に係る構造化文書署名装置から出力される文書において、適応化ポリシーを指定する方法を示す図である。
【図１３】本発明の一実施形態に係る構造化文書適応化装置の機能ブロック図である。
【図１４】本発明の第１の実施形態に係る構造化文書適応化装置の動作を示すフローチャートである。
【図１５】本発明の第１の実施形態に係る構造化文書適応化装置によって生成されるリクエストの一例を示す図である。
【図１６】本発明の第１の実施形態に係る構造化文書適応化装置によって生成されるレスポンスの一例を示す図である。
【図１７】本発明の第１の実施形態に係る構造化文書適応化装置によって適応化が行われた後の構造化文書の一例を示す図である。
【図１８】本発明の一実施形態に係る構造化文書検証装置の機能ブロック図である。
【図１９】本発明の第１の実施形態に係る構造化文書検証装置の動作を示すフローチャートである。
【図２０】本発明の第２の実施形態に係る構造化文書署名装置によって構成されるハッシュ木を埋め込んだ構造化文書の一例を示す図である。
【図２１】本発明の第３の実施形態に係る構造化文書検証システムの動作を示すフローチャートである。
【図２２】本発明の第３の実施形態で用いられる適応化ポリシーの一例を示す図である。
【図２３】本発明の第３の実施形態に係る構造化文書署名装置によって生成される適応化ポリシー付構造化文書の一例を示す図である。
【図２４】本発明の第３の実施形態に係る構造化文書署名装置によって算出されるデータの追加が許可されている要素に対応するハッシュ木の構成要素の一例を示す図である。
【図２５】本発明の第３の実施形態に係る構造化文書適応化装置によって適応化が行われた後の構造化文書の一例を示す図である。
【図２６】本発明の第３の実施形態に係る構造化文書適応化装置から出力される文書の一例を示す図である。
【図２７】本発明の第３の実施形態で用いられるＸＭＬ書名の一例を示す図である。
【図２８】本発明の第４の実施形態に係る構造化文書署名装置によって生成される適応化ポリシー付構造化文書の一例を示す図である。
【図２９】本発明の第４の実施形態に係る構造化文書署名装置によって算出されるデータの追加が許可されている要素に対応するハッシュ木の構成要素の一例を示す図である。
【図３０】本発明の第４の実施形態に係る構造化文書適応化装置によってデータが追加された適応化ポリシー付構造化文書の一例を示す図である。
【図３１】従来技術に係る電子署名ファイルのフォーマットを示す図である。
【図３２】従来技術に係る電子署名方式において用いられる構造化文書の一例を示す図である。
【図３３】従来技術に係る電子署名方式において用いられる電子署名付構造化文書の一例を示す図である。
【発明を実施するための形態】
【００５５】
（本発明の第１の実施形態）
以下、図面を参照して、本発明の第１の実施形態に係る構造化文書検証システムについて説明する。図１は、本発明の第１の実施形態に係る構造化文書検証システム１の全体構成を示す図である。
【００５６】
図１に示すように、本実施形態の構造化文書検証システム１は、構造化文書署名装置１００と、１つ以上の構造化文書適応化装置２００１乃至２００ｎと、構造化文書検証装置３００とを備えている。
【００５７】
本実施形態において、構造化文書署名装置１００は、電子署名を施す構造化文書に対して適応化ポリシーを設定することができ、構造化文書検証装置３００は、検証対象の電子署名付構造化文書が適応化ポリシーに従っているかについて、及び、検証対象の電子署名付構造化文書が構造化文書署名装置１００によって出力されたものであるか否かについて検証することができる。
【００５８】
以下、構造化文書署名装置１００、構造化文書適応化装置２００、構造化文書検証装置３００について、より詳細に説明する。
【００５９】
第１に、構造化文書署名装置１００について説明する。図２に示すように、構造化文書署名装置１００は、構造化文書入力部１０１と、適応化ポリシー挿入部１０２と、ハッシュ木構成部１０３と、電子署名付与部１０４と、構造化文書出力部１０５とを備えている。
【００６０】
構造化文書入力部１０１は、要素及び要素の値からなる構造化文書（例えば、ＸＭＬ文書）を入力するものである。要素及び要素の値の具体例については後述する。
【００６１】
適応化ポリシー挿入部１０２は、構造化文書を構成する要素に、当該要素の値又は当該要素の子要素に対して適応可能なアクションを示す適応化ポリシーを関連付けるものである。適応化ポリシーの具体例については後述する。
【００６２】
また、適応化ポリシー挿入部１０２は、適応化ポリシーの所在を示す情報（例えば、ＵＲＬ：Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を用いて、構造化文書を構成する要素に適応化ポリシーを関連付けるように構成されていてもよい。また、適応化ポリシー挿入部１０２は、適応化ポリシーを編集する手段を具備するように構成されていてもよい。
【００６３】
ハッシュ木構成部１０３は、要素に適応化ポリシーが関連付けられた構造化文書（適応ポリシー付構造化文書）に基づいて、構造化文書を構成する各要素のハッシュ値及び当該各要素の値のハッシュ値からなるハッシュ木を構成するものである。
【００６４】
具体的には、ハッシュ木構成部１０３は、構造化文書を構成する各要素の属性値としてそれぞれ当該各要素の子要素のハッシュ値及び当該各要素の値のハッシュ値を挿入し、当該属性値を含む各要素のハッシュ値を構成要素とするハッシュ木を構成するように構成されている。なお、詳細なハッシュ木の構成方法については後述する。
【００６５】
電子署名付与部１０４は、ハッシュ木の根に対して電子署名を付与すると共に、適応化ポリシーに対して電子署名を付与するものである。
【００６６】
具体的には、電子署名付与部１０４は、構造化文書署名装置１０の秘密鍵を用いてハッシュ木の根を暗号化することによって得られた電子署名、及び構造化文書署名装置１０の秘密鍵を用いて適応化ポリシーを暗号化することによって得られた電子署名を、それぞれ当該ハッシュ木の根及び当該適応化ポリシーに対して付与する。
【００６７】
構造化文書出力部１０５は、電子署名を付与した構造化文書を出力するものである。構造化文書出力部１０５は、電子署名を付与した構造化文書と共に、電子署名を付与した適応化ポリシーを出力することも可能である。
【００６８】
図３乃至図１２を参照して、構造化文書署名装置１００の動作について具体的に説明する。ここでは、図４及び図５に示す構造化文書（ＸＭＬ文書）が用いられるものとする。図４は、当該構造化文書の木構造を示すものであり、四角は「要素」を表し、丸は、「要素の値（要素が有する値）」を表している。また、図５は、ＸＭＬで記述された当該構造化文書を示すものである。
【００６９】
図３に示すように、ステップ１００１において、構造化文書入力部１０１は、入力された構造化文書を解析して適応化ポリシー挿入部１０２に対して出力する。
【００７０】
図５に示す構造化文書には、＜Ｄｏｃｕｍｅｎｔ＞要素と、＜Ｃｈａｐｔｅｒ１＞要素と、＜Ｃｈａｐｔｅｒ２＞要素と、＜Ｓｅｃｔｉｏｎ１-１＞要素と、＜Ｓｅｃｔｉｏｎ１-２＞要素と、＜Ｓｅｃｔｉｏｎ２-１＞要素と、＜Ｓｅｃｔｉｏｎ２-２＞要素とが含まれている。
【００７１】
ここで、＜Ｃｈａｐｔｅｒ１＞要素及び＜Ｃｈａｐｔｅｒ２＞要素は、＜Ｄｏｃｕｍｅｎｔ＞要素の子要素であり、＜Ｓｅｃｔｉｏｎ１-１＞要素及び＜Ｓｅｃｔｉｏｎ１-２＞要素は、＜Ｃｈａｐｔｅｒ１＞要素の子要素であり、＜Ｓｅｃｔｉｏｎ２-１＞要素及び＜Ｓｅｃｔｉｏｎ２-２＞要素は、＜Ｃｈａｐｔｅｒ２＞要素の子要素である。
【００７２】
また、＜Ｄｏｃｕｍｅｎｔ＞要素の値は「ｍ０」であり、＜Ｃｈａｐｔｅｒ１＞要素の値は「ｍ１」であり、＜Ｃｈａｐｔｅｒ２＞要素の値は「ｍ２」であり、＜Ｓｅｃｔｉｏｎ１-１＞要素の値は「ｍ１１」であり、＜Ｓｅｃｔｉｏｎ１-２＞要素の値は「ｍ１２」であり、＜Ｓｅｃｔｉｏｎ２-１＞要素の値は「ｍ２１」であり、＜Ｓｅｃｔｉｏｎ２-２＞要素の値は「ｍ２２」である。
【００７３】
ステップ１００２において、要素（例えば、Ｄｏｃｕｍｅｎｔ）が、当該要素の子要素（例えば、Ｃｈａｐｔｅｒ１）又は当該要素の値（例えば、ｍ０）を有する場合、適応化ポリシー挿入部１０２は、当該要素（例えば、Ｄｏｃｕｍｅｎｔ）に所定の適応化ポリシー（例えば、Ｐｏｌｉｃｙ０）を関連付ける。
【００７４】
例えば、適応化ポリシー挿入部１０２は、当該要素の属性値として、所定の適応化ポリシーを示すＵＲＩ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｉｄｅｎｔｉｆｉｅｒｓ）を埋め込むことによって、当該要素に所定の適応化ポリシーを関連付ける。なお、適応化ポリシー挿入部１０２は、当該要素に所定の適応化ポリシーを関連付ける際に、当該適応化ポリシーを編集することも可能である。
【００７５】
適応化ポリシー挿入部１０２は、構造化文書を構成する全ての要素に対して、上述のような適応化ポリシーの関連付け処理を行う。
【００７６】
図６に、ＸＡＣＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）で記述された適応化ポリシーの一例を示す。
【００７７】
図６に示すように、要素に関連付けられる適応化ポリシーは、当該要素の値及び当該要素の子要素のそれぞれに対して、適応可能なアクションを示すポリシーを有するため、複数の＜Ｒｕｌｅ＞要素を持つことになる。
【００７８】
図６に示す適応化ポリシーは、２つの＜Ｒｕｌｅ＞要素を有しており、第１の＜Ｒｕｌｅ＞要素は、当該適応ポリシーが関連付けられている要素の値の削除を許可するものであり、第２の＜Ｒｕｌｅ＞要素は、当該適応ポリシーが関連付けられている要素の子要素（この場合、＜Ｓｅｃｔｉｏｎ１-２＞要素）の削除を許可するものである。
【００７９】
例えば、図６に示す適応化ポリシーは、＜Ｃｈａｐｔｅｒ１＞要素に関連付けられた場合、＜Ｃｈａｐｔｅｒ１＞要素の値と、＜Ｃｈａｐｔｅｒ１＞要素の子要素である＜Ｓｅｃｔｉｏｎ１-２＞要素とに対して、削除（ｄｅｌｅｔｅ）を許可している。
【００８０】
なお、適応化ポリシーに書かれていない要素や要素の値に関しては、全ての適応化が禁止されているものとする。
【００８１】
また、適応化ポリシーは、構造化文書と共に出力されてもよいし、外部文書として別の場所に保持されていてもよい。
【００８２】
図７に、ＸＭＬで記述された適応化ポリシー付構造化文書を示す。ここで、適応化ポリシー付構造化文書を構成する各要素の属性値として、適応化ポリシーのＵＲＩが挿入されている。
【００８３】
例えば、図７に示す適応化ポリシー付構造化文書では、＜Ｃｈａｐｔｅｒ１  Ｐｏｌｉｃｙ＝“＃Ｐｏｌｉｃｙ１”＞のように、＜Ｃｈａｐｔｅｒ１＞要素の属性値として、適応化ポリシーのＵＲＩ（＃Ｐｏｌｉｃｙ１）が挿入されることによって、＜Ｃｈａｐｔｅｒ１＞要素に、適応化ポリシー「Ｐｏｌｉｃｙ１」が関連付けられる。かかる場合、適応化ポリシー「Ｐｏｌｉｃｙ１」は、構造化文書と共に出力される。
【００８４】
また、図７に示す適応化ポリシー付構造化文書では、＜Ｃｈａｐｔｅｒ２  Ｐｏｌｉｃｙ＝“ｈｔｔｐ://ｗｗｗ.ｘｙｚ.ｃｏｍ/ｐｏｌｉｃｙ２.ｘｍｌ＃Ｐｏｌｉｃｙ２”＞のように、＜Ｃｈａｐｔｅｒ１＞要素の属性値として、適応化ポリシー「Ｐｏｌｉｃｙ２」の所在を示す情報（ＵＲＬ）が挿入されることによって、＜Ｃｈａｐｔｅｒ２＞要素に、適応化ポリシー「Ｐｏｌｉｃｙ２」が関連付けられることも可能である。かかる場合、適応化ポリシー「Ｐｏｌｉｃｙ２」は、別の場所に保存されている外部文書である。
【００８５】
ステップ１００３において、ハッシュ木構成部１０３は、適応化ポリシー付構造化文書に基づいてハッシュ木を構成して（図８参照）、構造化文書を構成する各要素の属性値に当該ハッシュ木の構成要素を埋め込む（図９参照）。
【００８６】
図８に、図７に示す適応化ポリシー付構造化文書に基づいて構成されるハッシュ木を示す。図８に示すハッシュ木は、図４に示すハッシュ木と同一の構造であり、四角の中のアルファベットは、図４に示す要素（例えば、＜Ｃｈａｐｔｅｒ１＞要素）に対応するハッシュ木の構成要素（例えば、Ａ）を示す。
【００８７】
これらのアルファベットは、図９に示すように、各要素の開始タグ（例えば、＜Ｃｈａｐｔｅｒ１  Ｐｏｌｉｃｙ＝“＃Ｐｏｌｉｃｙ１”  ＨａｓｈＶａｌｕｅ＝“ｈ（ｍ１）”  ＨａｓｈＣｈｉｌｄ１＝“Ａａ”  ＨａｓｈＣｈｉｌｄ２＝“Ａｂ”＞）のハッシュ値として計算される。
【００８８】
図８に示すように、ハッシュ木の構成要素には、＜Ｄｏｃｕｍｅｎｔ＞要素の開始タグのハッシュ値「Ｒ」と、＜Ｃｈａｐｔｅｒ１＞要素の開始タグのハッシュ値「Ａ」と、＜Ｃｈａｐｔｅｒ２＞要素の開始タグのハッシュ値「Ｂ」と、＜Ｓｅｃｔｉｏｎ１-１＞要素の開始タグのハッシュ値「Ａａ」と、＜Ｓｅｃｔｉｏｎ１-２＞要素の開始タグのハッシュ値「Ａｂ」と、＜Ｓｅｃｔｉｏｎ２-１＞要素の開始タグのハッシュ値「Ｂａ」と、＜Ｓｅｃｔｉｏｎ２-２＞要素の開始タグのハッシュ値「Ｂｂ」と、＜Ｄｏｃｕｍｅｎｔ＞要素の値「ｍ０」のハッシュ値「ｈ（ｍ０）」と、＜Ｃｈａｐｔｅｒ１＞要素の値「ｍ１」のハッシュ値「ｈ（ｍ１）」と、＜Ｃｈａｐｔｅｒ２＞要素の値「ｍ２」のハッシュ値「ｈ（ｍ２）」と、＜Ｓｅｃｔｉｏｎ１-１＞要素の値「ｍ１１」のハッシュ値「ｈ（ｍ１１）」と、＜Ｓｅｃｔｉｏｎ１-２＞要素の値「ｍ１２」のハッシュ値「ｈ（ｍ１２）」と、＜Ｓｅｃｔｉｏｎ２-１＞要素の値「ｍ２１」のハッシュ値「ｈ（ｍ２１）」と、＜Ｓｅｃｔｉｏｎ２-２＞要素の値「ｍ２２」のハッシュ値「ｈ（ｍ２２）」とが含まれる。以下、＜ＸＹＺ＞要素のハッシュ値と、＜ＸＹＺ＞要素の開始タグのハッシュ値とを同義とする。
【００８９】
具体的には、ハッシュ木構成部１０３は、要素が値を有する場合、当該要素の属性値として当該値のハッシュ値を代入する。次に、ハッシュ木構成部１０３は、当該要素が子要素を有する場合、当該要素の属性値として当該子要素のハッシュ値を代入する。
【００９０】
ハッシュ木構成部１０３は、要素の値のハッシュ値の代入、及び当該要素が有する全ての子要素のハッシュ値の代入を終えると、当該値のハッシュ値及び当該子要素のハッシュ値（属性値）を含む当該要素のハッシュ値を算出して、当該要素のハッシュ値を、当該要素に対応するハッシュ木の構成要素とする。
【００９１】
ハッシュ木構成部１０３は、上述のように、要素の値のハッシュ値の代入及び当該要素の全ての子要素のハッシュ値の代入を、構造化文書を構成する全ての要素に対して再帰的に行うことによって、各要素に対応するハッシュ木の構成要素を導出して、当該ハッシュ木の構成要素を構造化文書に埋め込んでいく。
【００９２】
すなわち、ハッシュ木構成部１０３は、子要素を有しない要素（例えば、＜Ｓｅｃｔｉｏｎ１-１＞要素）から親要素を有しない要素（例えば、＜Ｄｏｃｕｍｅｎｔ＞要素）まで順番に、上述のようなハッシュ木の構成要素の導出処理（埋め込み処理）を行う。
【００９３】
図９に、図７に示す適応化ポリシー付構造化文書に、図８に示すハッシュ木の構成要素を埋め込む様子を示す。
【００９４】
ここで、各要素の開始タグは、属性値「ＨａｓｈＶａｌｕｅ」に、各要素の値のハッシュ値を含み、属性値「ＨａｓｈＣｈｉｌｄ１」や「ＨａｓｈＣｈｉｌｄ２」等に、それぞれ長男要素や次男要素等に対応するハッシュ木の構成要素を含む。
【００９５】
したがって、各要素が、属性値として、各要素の値のハッシュ値や各要素の子要素（長男要素や次男要素等）のハッシュ値を含み、各要素のハッシュ値が、新たなハッシュ木の構成要素となることで、構造化文書に対するハッシュ木の埋め込みを可能としている。
【００９６】
図９の例では、＜Ｄｏｃｕｍｅｎｔ＞要素の属性値に、適応化ポリシーを示すＵＲＩ「＃Ｐｏｌｉｃｙ０」と、＜Ｄｏｃｕｍｅｎｔ＞要素の値「ｍ０」のハッシュ値「ｈ（ｍ０）」と、＜Ｄｏｃｕｍｅｎｔ＞要素の子要素（長男要素）である＜Ｃｈａｐｔｅｒ１＞要素のハッシュ値「Ａ」と、＜Ｄｏｃｕｍｅｎｔ＞要素の子要素（次男要素）である＜Ｃｈａｐｔｅｒ２＞要素のハッシュ値「Ｂ」とが挿入されている。
【００９７】
なお、図９において、ハッシュ木の根要素である＜Ｄｏｃｕｍｅｎｔ＞要素のハッシュ値である「Ｒ」は、ハッシュ木の根であり、電子署名の対象となる。
【００９８】
また、＜Ｃｈａｐｔｅｒ１＞要素の属性値に、適応化ポリシーを示すＵＲＩ「＃Ｐｏｌｉｃｙ１」と、＜Ｃｈａｐｔｅｒ１＞要素の値「ｍ１」のハッシュ値「ｈ（ｍ１）」と、＜Ｃｈａｐｔｅｒ１＞要素の子要素（長男要素）である＜Ｓｅｃｔｉｏｎ１-１＞要素のハッシュ値「Ａａ」と、＜Ｃｈａｐｔｅｒ１＞要素の子要素（次男要素）である＜Ｓｅｃｔｉｏｎ１-２＞要素のハッシュ値「Ａｂ」とが挿入されている。
【００９９】
また、＜Ｃｈａｐｔｅｒ２＞要素の属性値に、適応化ポリシーを示すＵＲＩ「＃Ｐｏｌｉｃｙ２」と、＜Ｃｈａｐｔｅｒ２＞要素の値「ｍ２」のハッシュ値「ｈ（ｍ２）」と、＜Ｃｈａｐｔｅｒ２＞要素の子要素（長男要素）である＜Ｓｅｃｔｉｏｎ２-１＞要素のハッシュ値「Ｂａ」と、＜Ｃｈａｐｔｅｒ２＞要素の子要素（次男要素）である＜Ｓｅｃｔｉｏｎ２-２＞要素のハッシュ値「Ｂｂ」とが挿入されている。
【０１００】
また、＜Ｓｅｃｔｉｏｎ１-１＞要素の属性値に、適応化ポリシーを示すＵＲＩ「＃Ｐｏｌｉｃｙ１１」と、＜Ｓｅｃｔｉｏｎ１-１＞要素の値「ｍ１１」のハッシュ値「ｈ（ｍ１１）」とが挿入されている。
【０１０１】
また、＜Ｓｅｃｔｉｏｎ１-２＞要素の属性値に、適応化ポリシーを示すＵＲＩ「＃Ｐｏｌｉｃｙ１２」と、＜Ｓｅｃｔｉｏｎ１-２＞要素の値「ｍ１２」のハッシュ値「ｈ（ｍ１２）」とが挿入されている。
【０１０２】
また、＜Ｓｅｃｔｉｏｎ２-１＞要素の属性値に、適応化ポリシーを示すＵＲＩ「＃Ｐｏｌｉｃｙ２１」と、＜Ｓｅｃｔｉｏｎ２-１＞要素の値「ｍ２１」のハッシュ値「ｈ（ｍ２１）」とが挿入されている。
【０１０３】
さらに、＜Ｓｅｃｔｉｏｎ２-２＞要素の属性値に、適応化ポリシーを示すＵＲＩ「＃Ｐｏｌｉｃｙ２２」と、＜Ｓｅｃｔｉｏｎ２-２＞要素の値「ｍ２２」のハッシュ値「ｈ（ｍ２２）」とが挿入されている。
【０１０４】
その後、ハッシュ木構成部１０３は、ハッシュ木を埋め込んだ構造化文書を出力する。
【０１０５】
ステップ１００４において、電子署名付与部１０４は、ハッシュ木の根「Ｒ」に対して電子署名を付与する。例えば、電子署名付与部１０４は、ＸＭＬ署名を用いて、上述の電子署名の付与を行うことができる。
【０１０６】
また、適応化ポリシーが構造化文書と共に出力される場合、電子署名付与部１０４は、当該適応化ポリシーに対して電子署名を付与する。
【０１０７】
図１０に、電子署名付与部１０４によって生成されるＸＭＬ署名の一例を示す。図１０に示すように、電子署名付与部１０４は、署名対象である「適応化ポリシー」及び「ハッシュ木の根」のそれぞれに対して、＜Ｒｅｆｅｒｅｎｃｅ＞要素を生成する。ここで、＜Ｒｅｆｅｒｅｎｃｅ＞要素には、属性値として、署名対象を示すＵＲＩが含まれる。
【０１０８】
「適応化ポリシー」に係る＜Ｒｅｆｅｒｅｎｃｅ＞要素のおける＜ＤｉｇｅｓｔＶａｌｕｅ＞要素には、適応化ポリシーのハッシュ値が代入され、「ハッシュ木の根」に係る＜Ｒｅｆｅｒｅｎｃｅ＞要素のおける＜ＤｉｇｅｓｔＶａｌｕｅ＞要素には、ハッシュ木の根である「Ｒ」が代入される。
【０１０９】
電子署名付与部１０４は、２つの＜Ｒｅｆｅｒｅｎｃｅ＞要素を含む＜ＳｉｇｎｅｄＩｎｆｏ＞要素に対して電子署名を付与する、すなわち、＜ＳｉｇｎａｔｕｒｅＶａｌｕｅ＞要素に電子署名を代入する。
【０１１０】
ステップ１００５において、構造化文書出力部１０５は、ハッシュ木を埋め込んだ構造化文書及び電子署名（ＸＭＬ署名）を出力する。なお、構造化文書出力部１０５は、ハッシュ木を埋め込んだ構造化文書及び電子署名（ＸＭＬ署名）と共に、適応化ポリシーを出力することも可能である。
【０１１１】
例えば、構造化文書出力部１０５は、図１１に示すような文書を出力する。ここで、＜ＡｄａｐｔａｔｉｏｎＰｏｌｉｃｙ＞要素は、適応化ポリシーを指定し、＜Ｄｏｃｕｍｅｎｔ＞要素は、提供する構造化文書を指定し、＜Ｓｉｇｎａｔｕｒｅ＞要素は、ＸＭＬ署名を用いて適応化ポリシー及び構造化文書に付与された電子署名を指定する。
【０１１２】
なお、＜ＡｄａｐｔａｔｉｏｎＰｏｌｉｃｙ＞要素は、図１２（ａ）に示すように、＜ＰｏｌｉｃｙＬｏｃａｔｉｏｎ＞要素を用いて、適応化ポリシーの所在を示すＵＲＬによって、適応化ポリシーを指定してもよいし、図１２（ｂ）に示すように、＜Ｐｏｌｉｃｙ＞要素を用いて、ＸＡＣＭＬの記述方法に従った適応化ポリシーを直接指定してもよい。
【０１１３】
第２に、構造化文書適応化装置２００について説明する。図１３に示すように、構造化文書適応化装置２００は、構造化文書入力部２０１と、適応化決定部２０２と、適応化ポリシー検査部２０３と、適応化部２０４と、構造化文書出力部２０５とを備えている。
【０１１４】
構造化文書入力部２０１は、入力された構造化文書を解析して適応化決定部２０２に対して出力するものである。
【０１１５】
適応化決定部２０２は、構造化文書を構成する要素又は当該要素の値に対する適応化の種別を決定するものである。すなわち、適応化決定部２０２は、入力された構造化文書において、適応化の内容及び対象を決定するものである。
【０１１６】
適応化ポリシー検査部２０３は、構造化文書で指定されている適応化ポリシーに基づいて、適応化決定部２０２により決定された適応化が、当該要素又は当該要素の値に対して許可されているか否かについて検査するものである。
【０１１７】
例えば、適応化ポリシー検査部２０３は、構造化文書署名装置１００によって設定された適応化ポリシーを参照し、適応化決定部２０２により決定された適応化が、当該適応化ポリシーによって許可されているか否かについて検査する。
【０１１８】
適応化部２０４は、適応化ポリシー検査部２０３による検査結果に応じて、当該要素又は当該要素の値に対して適応化を行うものである。構造化文書出力部２０５は、適応化した構造化文書を出力するものである。
【０１１９】
図１４乃至図１７を参照して、構造化文書適応化装置２００において、適応化の種別が「データ（要素又は要素の値）の削除」である場合の動作について具体的に説明する。
【０１２０】
ステップ２００１において、構造化文書入力部２０１は、入力された構造化文書を解析して適応化決定部２０２に対して出力する。
【０１２１】
ステップ２００２において、適応化決定部２０２は、適応化の種別が「要素の削除」である場合、適応化ポリシー検査部２０３に対して、対象となる要素の削除が適応化ポリシーによって許可されているか否かについて問い合わせる。また、適応化決定部２０２は、適応化の種別が「要素の値の削除」である場合、適応化ポリシー検査部２０３に対して、対象となる要素の値の削除が適応化ポリシーによって許可されているか否かについて問い合わせる。
【０１２２】
具体的には、適応化決定部２０２は、図１５に示すリクエストによって、上述の問い合わせを行う。ここで、適応化ポリシーとして、図６に示すＸＡＣＭＬで記述されている適応化ポリシーが用いられるものとする。
【０１２３】
適応化決定部２０２が、＜Ｃｈａｐｔｅｒ１＞要素の値「ｍ１」の削除の可否について問い合わせる場合、図１５に示すリクエストにおいて、＜Ｃｈａｐｔｅｒ１＞要素に対応する適応化ポリシーを指定する「Ｐｏｌｉｃｙ１」が、＜Ｒｅｓｏｕｒｃｅ＞要素の子要素である＜Ａｔｔｒｉｂｕｔｅ＞要素に、属性値として代入され、＜Ｃｈａｐｔｅｒ１＞の値を意味する「ｔｅｘｔ（）」が、＜Ｒｅｓｏｕｒｃｅ＞要素の子要素である＜ＡｔｔｒｉｂｕｔｅＶａｌｕｅ＞要素の値に代入され、適応化の種別が「削除」であることを表す「ｄｅｌｅｔｅ」が、＜Ａｃｔｉｏｎ＞要素の子要素である＜Ａｔｔｒｉｂｕｔｅ＞要素の子要素である＜ＡｔｔｒｉｂｕｔｅＶａｌｕｅ＞要素の値に代入される。
【０１２４】
ステップ２００３において、適応化ポリシー検査部２０３は、受信したリクエストに対応する適応化ポリシーを参照して、当該要素又は当該要素の値の削除が許可されているか否かについて検査し、検査結果を適応化決定部２０２に返す。具体的には、適応化ポリシー検査部２０３は、図１６に示すレスポンスによって、上述の検索結果を適応化決定部２０２に返す。
【０１２５】
図１６に示すレスポンスは、検査結果が、リクエストに係る要素又は要素の値の削除が適応化ポリシーによって許可されていることを示している。なお、要素が削除される場合、当該要素の子要素又は当該要素の値も同時に削除されることになるが、適応化ポリシーに矛盾があり、対象となる要素の削除が許可されているが、当該対象となる要素の子要素又は当該対象となる要素の値の削除が許可されていない場合であっても、当該対象となる要素に対応する適応化ポリシーを優先して当該対象となる要素の削除が許可される。
【０１２６】
ステップ２００４において、当該要素又は当該要素の値の削除が許可されている場合、適応化部２０４が、構造化文書の適応化、すなわち、当該要素又は当該要素の値の削除を行う。ここで、適応化部２０４は、要素の削除に伴い、当該要素の値及び当該要素の子要素も同時に削除する。
【０１２７】
ステップ２００５において、構造化文書出力部２０５は、適応化部２０４により、適応化が行われてデータが削除された後の構造化文書を出力する。図１７に、個々で出力される構造化文書の一例を示す。図１７の例では、図９に示す構造化文書から、＜Ｃｈａｐｔｅｒ１＞要素の値「ｍ１」が削除されている。
【０１２８】
なお、複数の適応化対象が存在する場合、適応化決定部２０２が、それぞれの適応化対象に係るリクエストを生成し、適応化部２０４が、許可されている適応化を随時行っていく。
【０１２９】
第３に、構造化文書検証装置３００について説明する。図１８に示すように、構造化文書検証装置３００は、構造化文書入力部３０１と、ハッシュ木再構成部３０２と、データ正当性検証部３０３と、適応化ポリシー検証部３０４とを備えている。
【０１３０】
構造化文書入力部３０１は、入力された構造化文書の構造を解析してデータ正当性検証部３０３及びルール正当性検証部３０４に対して出力するものである。
【０１３１】
ハッシュ木再構成部３０２は、受信した構造化文書に基づいて、当該構造化文書を構成する各要素及び当該各要素の値からなるハッシュ木を再構成するものである。
【０１３２】
具体的には、ハッシュ木再構成部３０２は、構造化文書を構成する各要素の属性値としてそれぞれ当該各要素の子要素のハッシュ値及び当該各要素の値のハッシュ値を挿入し、当該属性値を含む各要素のハッシュ値を構成要素とするハッシュ木を再構成するように構成されている。
【０１３３】
データ正当性検証部３０３は、適応化ポリシーと、ハッシュ木再構成部３０２によって再構成されたハッシュ木の根とを用いて、受信した構造化文書に付与されている構造化文書署名装置１００の電子署名の正当性について検証するものである。すなわち、データ正当性検証部３０３は、当該適応化ポリシー及び当該構造化文書が構造化文書名装置１００によって生成されたものであるか否かについて検証するものである。
【０１３４】
適応化ポリシー検証部３０４は、受信した構造化文書が、当該構造化文書で指定されている適応化ポリシーに従って適応化されているか否かについて検証するものである。
【０１３５】
サービス利用部３０５は、データ正当性検証部３０３及び適応化ポリシー検証部３０４による検証結果に応じて、当該構造化文書を正当なものとして利用する。
【０１３６】
図１９を参照して、構造化文書検証装置３００の動作について具体的に説明する。
【０１３７】
図１９に示すように、ステップ３００１において、構造化文書入力部３０１が、入力された構造化文書の構造を解析してデータ正当性検証部３０３及び適応化ポリシー検証部３０４に対して出力する
ステップ３００２において、ハッシュ木再構成部３０２が、データ正当性検証部３０３を介して受信した構造化文書に基づいて、当該構造化文書を構成する各要素及び当該各要素の値からなるハッシュ木を再構成する。
【０１３８】
具体的には、ハッシュ木再構成部３０２は、構造化文書署名装置１００のハッシュ木構成部１０４と同様に、ハッシュ木の再構成を行うが、特定の要素が削除されていた場合、当該特定の要素の親要素の属性値に代入されている当該特定の要素のハッシュ値を、当該特定の要素に対応するハッシュ木の構成要素とし、特定の要素の値が削除されていた場合、当該特定の要素の属性値に代入されている当該値のハッシュ値を、当該値に対応するハッシュ木の構成要素とする。
【０１３９】
例えば、ハッシュ木再構成部３０２は、図１７に示す構造化文書に基づいて、ハッシュ木を再構成する場合、＜Ｃｈａｐｔｅｒ１＞要素の値「ｍ１」が削除されているため、＜Ｃｈａｐｔｅｒ１＞要素の値に対応するハッシュ木の構成要素を生成する際、＜Ｃｈａｐｔｅｒ１＞要素の属性値として代入されている値「ｍ１」のハッシュ値を用いる。
【０１４０】
ステップ３００３において、データ正当性検証部３０３は、構造化文書において指定されている適応化ポリシーと、ハッシュ木再構成部３０２によって再構成されたハッシュ木の根とを用いて、受信した構造化文書に付与されている構造化文書署名装置１００の電子署名の正当性について検証する。
【０１４１】
ステップ３００４において、適応化ポリシー検証部３０４は、受信した構造化文書が、当該構造化文書で指定されている適応化ポリシーに従って適応化されているか否かについて検証する。
【０１４２】
当該構造化文書において、特定の要素が削除されていた場合、当該特定の要素の親要素の属性値に、当該特定の要素のハッシュ値が残っており、また、特定の要素の値が削除されていた場合、当該特定の要素の属性値に、当該特定の要素の値のハッシュ値が残っている。そのため、適応化ポリシー検証部３０４は、構造化文書のどの部分（要素又は要素の値）が削除されたのか知ることができ、削除された部分が、適応化ポリシーに従っているかについて検証を行うことができる。
【０１４３】
適応化ポリシーが、ＸＡＣＭＬで記述されている場合、適応化ポリシー検証部３０４は、対象データに対する削除の可否を問い合わせるためのリクエストを生成し、当該対照データの削除が許可されるかについてのレスポンスに応じて、当該削除が当該適応化ポリシーに違反していないかについて検証することができる。
【０１４４】
ステップ３００５において、サービス利用部３０５は、データ正当性検証部３０３及び適応化ポリシー検証部３０４による検証結果に応じて、当該構造化文書を正当なものとして利用する。
【０１４５】
（本発明の第１の実施形態の作用・効果）
本発明の第１の実施形態に係る構造化文書署名装置１００によれば、各要素に対して適応化ポリシーを指定することができ、各要素や各要素の値に対しての適応化を制約することができる。
【０１４６】
また、本発明の第１の実施形態に係る構造化文書署名装置１００によれば、構造化文書についての適応化後もハッシュ木を用いて電子署名の正当性の検証を行うことができるため、提供するデータ（各要素や各要素の値）の正当性を検証することが可能である。
【０１４７】
また、本発明の第１の実施形態に係る構造化文書署名装置１００によれば、構造化文書の受信端末（例えば、構造化文書検証装置３００）は、受信した構造化文書に対する適応化ポリシーの正当性を検証することが可能である。
【０１４８】
また、本発明の第１の実施形態に係る構造化文書署名装置１００によれば、適応化ポリシーを出力することなく、構造化文書の受信端末（例えば、構造化文書検証装置３００）が、受信した構造化文書に対する適応化ポリシーを参照することが可能であり、通信量を削減することが可能である。
【０１４９】
また、本発明の第１の実施形態に係る構造化文書署名装置１００によれば、適応化ポリシー挿入部１０２は、適応化ポリシーを各要素又は各要素の値に対応付ける際に、当該適応化ポリシーを編集することが可能である。
【０１５０】
また、本発明の第１の実施形態に係る構造化文書署名装置１００によれば、ハッシュ木を構造化文書に埋め込むことにより、適応化により要素や要素の値が削除された場合でも、埋め込まれたハッシュ木の構成要素からハッシュ木を再構成することが可能であり、構造化文書適応化装置２００が、要素や要素の値を削除する際に、それらのハッシュ値を計算して構造化文書に埋め込む必要がなくなるため、処理量を削減することが可能である。
【０１５１】
本発明の第１の実施形態に係る構造化文書適応化装置２００によれば、構造化文書で指定されている適応化ポリシーに従って、構造化文書を適応化することが可能である。
【０１５２】
また、本発明の第１の実施形態に係る構造化文書適応化装置２００によれば、構造化文書の適応化のうち、要素又は要素の値の削除を行い、削除された要素の値のハッシュ値又は要素のハッシュ値を構造化文書に埋め込むことにより、受信端末（例えば、構造化文書検証装置３００）によるハッシュ木の再構成が可能となる。
【０１５３】
本発明の第１の実施形態に係る構造化文書検証装置３００によれば、適応化された構造化文書が、適応化ポリシーに従って適応化されているか否かについて検証することが可能である。
【０１５４】
また、本発明の第１の実施形態に係る構造化文書検証装置３００によれば、構造化文書署名装置１００が付与した電子署名の正当性を検証することにより、構造化文書及び適応化ポリシーが構造化文書署名装置１００によって出力されたものであるか否かについて検証することが可能である。
【０１５５】
また、本発明の第１の実施形態に係る構造化文書検証装置３００によれば、構造化文書適応化装置２００によりデータ（要素の値又は要素の子要素）が削除されていた場合でも、ハッシュ木を再構成することが可能である。
【０１５６】
（本発明の第２の実施形態）
図２０を参照して、本発明の第２の実施形態について説明する。以下、本実施形態に係る構造化文書検証システムについて、上述の第１の実施形態に係る構造化文書検証システムとの相違点を主として説明する。
【０１５７】
本実施形態において、構造化文書署名装置１００のハッシュ木構成部１０３は、ハッシュ木を構成して当該ハッシュ木の根を算出した後、構造化文書を構成する各要素に属性値として挿入されている当該各要素の値のハッシュ値又は当該各要素の子要素のハッシュ値を削除するように構成されている。ハッシュ木構成部１０３は、特定の要素に属性値として挿入されている当該特定の要素の値のハッシュ値又は当該特定の要素の子要素のハッシュ値を削除するように構成されていてもよい。
【０１５８】
構造化文書適応化装置２００の適応化部２０４は、データ（要素又は要素の値）の削除を行った場合、構造化文書検証装置３００において、そのままでは、削除したデータに対応するハッシュ木の構成要素が算出不可能になる。
【０１５９】
そのため、適応化部２０４は、特定の要素の値を削除する場合、当該特定の要素の属性値に当該値のハッシュ値を代入する。また、適応化部２０４は、特定の要素を削除する場合、上述のハッシュ木構成部１０３と同様に、当該特定の要素の値のハッシュ値と当該特定の要素の子要素のハッシュ値を、当該特定の要素の属性値に代入する。
【０１６０】
適応化部２０４は、削除する要素の全ての子要素のハッシュ値を当該要素の属性値に代入し、当該要素のハッシュ値を当該要素の親要素の属性値に代入した後、当該要素の削除を行う。
【０１６１】
図２０に、適応化部２０４によって＜Ｓｅｃｔｉｏｎ１-２＞要素が削除された場合の構造化文書を示す。
【０１６２】
図２０では、＜Ｓｅｃｔｉｏｎ１-２＞要素が削除されたことで、＜Ｓｅｃｔｉｏｎ１-２＞要素及び＜Ｓｅｃｔｉｏｎ１-２＞要素の値が削除されており、＜Ｓｅｃｔｉｏｎ１-２＞要素の親要素である＜Ｃｈａｐｔｅｒ１＞要素に、＜Ｓｅｃｔｉｏｎ１-２＞要素に対応するハッシュ木の構成要素（＜Ｓｅｃｔｉｏｎ１-２＞要素のハッシュ値）である「Ａｂ」が代入されている。
【０１６３】
構造化文書署名装置１００が、上述の一連の操作を、構造化文書適応化装置２００に指示するために、図６に示す適応化ポリシーの＜Ｏｂｌｉｇａｔｉｏｎ＞要素を利用する。
【０１６４】
構造化文書検証装置３００のハッシュ木再構成部３０２は、構造化文書においてデータ（要素又は要素の値）が削除されていた場合であっても、削除されたデータに対応するハッシュ木の構成要素を算出することが可能であるため、ハッシュ木の再構成が可能となる。
【０１６５】
（本発明の第２の実施形態の作用・効果）
本実施形態に係る構文化文書署名装置１００によれば、構文化文書署名装置１００から出力される構造化文書から、埋め込まれているハッシュ木の構成要素が削除されることにより、通信量を削減することが可能である。
【０１６６】
（本発明の第３の実施形態）
図２１乃至図２７を参照して、本発明の第３の実施形態について説明する。以下、本実施形態に係る構造化文書検証システムについて、上述の第１の実施形態に係る構造化文書検証システムとの相違点を主として説明する。
【０１６７】
本実施形態では、適応化の種別として「データ（要素又は要素の値）の追加」が行われる場合について考える。この場合、追加が許可されている要素に対して、コンテンツ生成者の電子署名だけでは検知が困難ないくつかの適応化ポリシー違反が考えられる。
【０１６８】
第１の適応化ポリシー違反は、追加を許可されていない構造化文書適応化装置２００によるデータ（要素又は要素の値）の追加である。
【０１６９】
また、第２の適応化ポリシー違反は、追加を許可されている構造化文書適応化装置２００により追加されたデータに対する改竄である。
【０１７０】
さらに、第３の適応化ポリシー違反は、追加を許可されている構造化文書適応化装置２００により追加されたデータがその後消去された場合に、当該データが追加されたという痕跡が消去されることである。
【０１７１】
この点、第１及び第２の適応化ポリシー違反については、追加されたデータに対して、追加が許可されている構造化文書適応化装置２００によって付与された電子署名によって検知することが可能である。
【０１７２】
また、第３の適応化ポリシー違反については、適応化の操作自体を不可逆なものとすることで検知することが可能である。
【０１７３】
以下、図２１乃至図２７を参照して、本実施形態に係る構造化文書検証システムにおいて、データの追加が行われる場合の動作について詳細に説明する。
【０１７４】
図２１に示すように、ステップ４００１において、構造化文書署名装置１００の適応化ポリシー挿入部１０２が、適応化（データの追加）を許可する場所（例えば、特定の要素の値や特定の要素の子要素）と、適応化（データの追加）を許可する構造化文書適応化装置２００とを指定して適応化ポリシーに記述する。
【０１７５】
図２２に、ステップ４００１において適応化ポリシー挿入部１０２によりＸＡＣＭＬで記述された適応化ポリシーの一例を示す。
【０１７６】
図２２に示す適応化ポリシーにおいて、＜Ｓｕｂｊｅｃｔ＞要素の値「ｅ１３」は、適応化が許可されている構造化文書適応化装置のＩＤを示しており、＜Ｒｅｓｏｕｒｃｅ＞要素の値「ｔｅｘｔ（）」は、適応化が許可されている場所としての当該適応化ポリシーが関連付けられている要素の値を示しており、＜Ａｃｔｉｏｎ＞要素の値「ａｄｄ」は、適応化の種別としての「データの追加」を示している。
【０１７７】
ステップ４００２において、適応化ポリシー挿入部１０２が、構造化文書に、当該適応化ポリシーが関連付けられた新しい要素を生成する。また、適応化ポリシー挿入部１０２は、当該要素の属性値として、検証値及びデータの追加が許可される構造化文書適応化装置２００の公開鍵を挿入する。なお、検証値は、適応化ポリシーに反する適応化が前記要素に対して行われないことを検証するためのランダムな文字列であり、異なる要素に対して同じ検証値が存在してはならない。
【０１７８】
すなわち、ステップ４００２において、適応化ポリシーに反する適応化が前記要素に対して行われていないことを検証するための検証手段が設けられる。なお、構造化文書検証装置３００は、当該検証手段を利用して、適応化ポリシーに反する適応化が、特定の要素に対して行われていないことを検証する。
【０１７９】
図２３に、ステップ４００２において適応化ポリシー挿入部１０２により新しい要素が生成された構造化文書の一例を示す。
【０１８０】
図２３に示すように、適応化ポリシー挿入部１０２は、新しい要素である＜Ｓｅｃｔｉｏｎ１-３＞要素の属性値に、適応化ポリシーを指定するＵＲＩ「＃Ｐｏｌｉｃｙ１３」と、検証値「ｖｅｒｉｆｉｅｒ１３」と、データの追加が許可される構造化文書適応化装置２００の公開鍵「ＰＫｅ１」とを挿入する。
【０１８１】
図２３に示す構造化文書では、適応化ポリシー「Ｐｏｌｉｃｙ１３（図２２参照）」は、＜Ｓｅｃｔｉｏｎ１-３＞要素に対して新たな値を追加することを許可するものである。
【０１８２】
ステップ４００３において、ハッシュ木構成部１０３は、新しく生成した要素の属性値に挿入されている検証値を、当該検証値のハッシュ値に置き換えた当該要素のハッシュ値を、当該要素に対応するハッシュ木の構成要素として、ハッシュ木を構成する。例えば、図２３における＜Ｓｅｃｔｉｏｎ１-３＞要素に対応するハッシュ木の構成要素は、図２４に示す＜Ｓｅｃｔｉｏｎ１-３＞要素のハッシュ値となる。
【０１８３】
ステップ４００４において、構造化文書適応化装置２００の適応化部２０４は、追加するデータを生成し、適応化ポリシーによりデータの追加が許可された要素の値に代入する。
【０１８４】
図２５に、ステップ４００４において、適応化部２０４によって、図２３に示す構造化文書に対して、データの追加を行った後の構造化文書を示す。図２５に示す構造化文書では、データの追加が許可されている＜Ｓｅｃｔｉｏｎ１-３＞要素に対して、要素の値「ｍ１３」が追加されている。
【０１８５】
ステップ４００５において、適応化部２０４は、以降に当該構造化文書を受け取る構造化文書適応化装置２００によりデータが破棄されるのを防ぐため、＜Ｓｅｃｔｉｏｎ１-３＞要素の属性値に挿入されている検証値「ｖｅｒｉｆｉｅｒ１３」を、当該検証値のハッシュ値「ｈ（ｖｅｒｉｆｉｅｒ１３）」に置き換える。この結果、データの追加が不可逆な行為となるため、別の構造化文書適応化装置２００が、当該構造化文書適応化装置２００により追加されたデータを削除したとしても、同時に検証値「ｖｅｒｉｆｉｅｒ１３」の復元を行わない限り、当該構造化文書をデータの追加前の状態に戻すことはできない。
【０１８６】
ステップ４００６において、適応化部２０４は、データの改竄を防ぐため、＜Ｓｅｃｔｉｏｎ１-３＞要素の属性値に挿入されている公開鍵「ＰＫｅ１３」に対応する秘密鍵により、当該データに電子署名を付与する。
【０１８７】
ステップ４００７において、構造化文書出力部２０５は、データの追加を行った構造化文書と共に、追加したデータに付与された電子署名を出力する。
【０１８８】
図２６に、構造化文書出力部２０５によって出力される文書の一例を示す。図２６に示す文書では、追加されたデータに対応する＜Ｓｉｇｎａｔｕｒｅ＞要素をＸＭＬ署名で表している。図２６に示す文書には、追加されたデータの電子署名を表す＜Ｓｉｇｎａｔｕｒｅ＞要素が追加されている（図１１参照）。
【０１８９】
図２７に、追加されたデータに対応するＸＭＬ署名の一例を示す。図２７に示すＸＭＬ署名において、＜Ｒｅｆｅｒｅｎｃｅ＞要素が、属性値として、＜Ｓｅｃｔｉｏｎ１-３＞要素を示すＵＲＩを有しており、上述の公開鍵「ＰＫｅ１３」に対応する秘密鍵を用いて、＜Ｓｅｃｔｉｏｎ１-３＞要素全体のハッシュ値を暗号化した電子署名を付与している。
【０１９０】
ステップ４００８において、構造化文書検証装置３００の適応化ポリシー検証部３０４による検査結果によって、データの追加が許可されている要素に対して、当該要素の値が追加されていた場合、ハッシュ木再構成部３０２は、そのままハッシュ木を再構成し、当該要素の値が追加されていない場合、ハッシュ木再構成部３０２は、当該要素の属性値に挿入されている検証値を、当該検証値のハッシュ値に置き換えてから、ハッシュ木を再構成する。
【０１９１】
また、ハッシュ木再構成部３０２は、要素の値の追加が許可されている要素に対して、適応化ポリシーに従って適応化が行われているか否かについて検証するように構成されていてもよい。
【０１９２】
ステップ４００９において、データ正当性検証部３０３が、当該要素の属性値に挿入されている公開鍵と、追加された当該要素の値を用いて、構造化文書適応化装置２００の電子署名の正当性について検証する。
【０１９３】
（本発明の第３の実施形態の作用・効果）
本実施形態に係る構造化文書署名装置１００及び構造化文書適応化装置２００によれば、構造化文書の適応化として、要素の値の追加を行い、値の追加を行った要素に対して、適応化ポリシーに反した適応化が行われていないことを検証することが可能である。
【０１９４】
本実施形態に係る構造化文書検証装置３００によれば、追加された要素の値が削除されておらず、当該要素の値の追加が、許可されている構造化文書適応化装置によって追加されたものであるか否かについて検証することが可能である。
【０１９５】
（本発明の第４の実施形態）
図２８乃至図３０を参照して、本発明の第４の実施形態について説明する。以下、本実施形態に係る構造化文書検証システムについて、上述の第３の実施形態に係る構造化文書検証システムとの相違点を主として説明する。
【０１９６】
本実施形態では、上述の第３の実施形態とは別の方法によって、構造化適応化装置２００によるデータの追加（適応化）を実現する。
【０１９７】
具体的には、落とし戸付ハッシュ関数の性質を利用することによって、適応化ポリシーに反する改竄を検知することを実現する。すなわち、本実施形態では、以下に示すように、落とし戸付ハッシュ関数の性質を利用して、適応化ポリシーに反する適応化が、特定の要素に対して行われていないことを検証するための検証手段が設けられる。落とし戸付ハッシュ関数とは、秘密鍵を用いることにより、意図的に衝突を作り出すことが可能なハッシュ関数である。
【０１９８】
例えば、ある値の組（ｍ’（第１の値）,  ｒ’（第２の値））のハッシュ値Ｈ（ｍ’,  ｒ’）を考える。通常のハッシュ関数では、ハッシュ値がＨ（ｍ’,  ｒ’）と等しくなるような値の組（ｍ,  ｒ）を、Ｈ（ｍ’,  ｒ’）から求めることは非常に困難である。しかしながら、Ｈが、落とし戸付ハッシュ関数であり、固有のハッシュ鍵ＨＫによってハッシュされている場合、ハッシュ鍵ＨＫと対となる秘密鍵ＰＫと、ｍ’と、ｒ’と、Ｈ（ｍ’,  ｒ’）とから、任意のｍに対して、Ｈ（ｍ’,  ｒ’）＝Ｈ（ｍ,  ｒ）となるようなｒを容易に計算することが可能となる。
【０１９９】
落とし戸付ハッシュ関数については、「Ｈ.  Ｋｒａｗｃｚｙｋ及びＴ.  Ｒａｂｉｎ著、“Ｃｈａｍｅｌｅｏｎ  Ｈａｓｈｉｎｇ  ａｎｄ  Ｓｉｇｎａｔｕｒｅｓ”、Ｉｎ  Ｐｒｏｃ.  ｏｆ  ＮＤＳＳ  ２０００.  Ｉｎｔｅｒｎｅｔ  Ｓｏｃｉｅｔｙ,  ２０００」に開示されている。
【０２００】
以下、図２８乃至図３０を参照して、本実施形態に係る構造化文書検証システムにおいて、データの追加が行われる場合の動作について詳細に説明する。
【０２０１】
第１に、構造化文書署名装置１００の適応化ポリシー挿入部１０２が、適応化ポリシーによって適応化を許可されている構造化文書適応化装置２００が公開するハッシュ鍵と、任意に選んだ値との組から、落とし戸付ハッシュ関数によるハッシュ値を計算して、データの追加を許可する要素の属性値に代入する。
【０２０２】
図２８に示す構造化文書は、図７に示す適応化ポリシー付構造化文書に対して、任意に選んだ値の組（ｍ１３’,  ｒ１３’）と、適応化を許可されている構造化文書適応化装置２００のハッシュ鍵ＨＫとを用いて、落とし戸付ハッシュ関数により計算したハッシュ値Ｈ（ｍ１３’,  ｒ１３’）を埋め込んだものである。
【０２０３】
図２８に示す構造化文書には、上述の第３の実施形態の場合と同様に、＜Ｃｈａｐｔｅｒ１＞要素の新たな子要素として＜Ｓｅｃｔｉｏｎ１-３＞要素が生成されており、＜Ｓｅｃｔｉｏｎ１-３＞要素の属性値として、ハッシュ値Ｈ（ｍ１３’,  ｒ１３’）及びｒ１３’が代入されており、＜Ｓｅｃｔｉｏｎ１-３＞要素の値にｍ１３’が代入されている。
【０２０４】
ここで、＜Ｓｅｃｔｉｏｎ１-３＞要素に対応するハッシュ木の構成要素は、図２９に示すように、ｒ１３’を含まない＜Ｓｅｃｔｉｏｎ１-３＞要素の開始タグのハッシュ値となる。
【０２０５】
第２に、構造化文書適応化装置２００の適応化部２０４が、追加するデータを生成し、生成したデータと、構造化文書署名装置１００が任意に選んだ値の組と、落とし戸付ハッシュ関数から生成されたハッシュ値と、上述のハッシュ鍵に対応する秘密鍵とを用いて、当該データと対になる値を計算する。
【０２０６】
ここで、落とし戸付ハッシュ関数の性質により、追加するデータと対になる値から得られるハッシュ値は、構造化文書署名装置が任意に選んだ値の組から得られたハッシュ値と等しい。
【０２０７】
第３に、適応化部２０４は、追加するデータを、データの追加が許可された要素の値（図２８の例では、ｍ１３’）と置き換え、当該追加するデータと対になる値を、当該要素の属性値に代入されている値（図２８の例では、ｒ１３’）と置き換える。
【０２０８】
図３０に、図２８に示す構造化文書に対して、構造化文書適応化装置２００の適応化部２０４が適応化（データの追加）を行った後の構造化文書である。
【０２０９】
図３０において、図２８における＜Ｓｅｃｔｉｏｎ１-３＞要素の値「ｍ１３’」は、追加するデータ「ｍ１３」に置き換えられ、図２８における＜Ｓｅｃｔｉｏｎ１-３＞要素の属性値として代入されている値「ｒ１３’」は、「ｍ１３」と対になる値「ｒ１３」に置き換えられている。
【０２１０】
また、落とし戸付ハッシュ関数の性質により、Ｈ（ｍ１３’,  ｒ１３’）＝Ｈ（ｍ１３,  ｒ１３）となる。さらに、「ｍ１３’」及び「ｒ１３’」は、廃棄されるため、当該データの追加は、不可逆なものとなる。
【０２１１】
第４に、構造化文書検証装置３００の適応化ポリシー検証部３０４が、データ（要素の値）の追加が許可されている要素の値と、当該要素の属性値に代入されている値と、データの追加を行った構造化文書適応化装置２００が公開するハッシュ鍵とから、落とし戸付ハッシュ関数を用いてハッシュ値を計算して、当該要素の属性値に代入されているハッシュ値を一致するか否かについて検証する。
【０２１２】
第５に、ハッシュ木再構成部３０２が、当該構造化文書に基づいてハッシュ木を再構成し、データ正当性検証部３０３が、構造化文書署名装置１００によって付与された電子書名の正当性について検証する。
【０２１３】
例えば、図３０に示す構造化文書が受信された場合、適応化ポリシー検証部３０４が、「ｍ１３」と「ｒ１３」とからＨ（ｍ１３,  ｒ１３）を計算して、＜Ｓｅｃｔｉｏｎ１-３＞要素の属性値に代入されているハッシュ値Ｈ（ｍ１３’,  ｒ１３’）と等しいか否かについて検証し、ハッシュ木再構成部３０２が、当該検証結果に応じて、ハッシュ木を再構成する。
【０２１４】
もし、ハッシュ鍵に対応する秘密鍵を知らない第三者が「ｍ１３」を「ｍ１３’」に改竄しようとした場合、Ｈ（ｍ１３’,  ｒ１３’）＝Ｈ（ｍ１３”,  ｒ１３”）となるような「ｒ１３”」を発見することが困難であるため、ハッシュ値の正当性についての検証か、電子書名の正当性についての検証のどちらかによって改竄が検知されることになる。
【符号の説明】
【０２１５】
１…構造化文書検証システム
１００…構造化文書署名装置
１０１、２０１、３０１…構造化文書入力部
１０２…適応化ポリシー挿入部
１０３…ハッシュ木構成部
１０４…電子署名付与部
１０５、２０５…構造化文書出力部
２００…構造化文書適応化部
２０２…適応化決定部
２０３…適応化ポリシー検査部
２０４…適応化部
３００…構造化文書検証装置
３０２…ハッシュ木再構成部
３０３…データ正当性検証部
３０４…適応化ポリシー検証部
３０５…サービス利用部
【図１】
2010124482.tif 000003
【図２】
2010124482.tif 000004
【図３】
2010124482.tif 000005
【図４】
2010124482.tif 000006
【図５】
2010124482.tif 000007
【図６】
2010124482.tif 000008
【図７】
2010124482.tif 000009
【図８】
2010124482.tif 000010
【図９】
2010124482.tif 000011
【図１０】
2010124482.tif 000012
【図１１】
2010124482.tif 000013
【図１２】
2010124482.tif 000014
【図１３】
2010124482.tif 000015
【図１４】
2010124482.tif 000016
【図１５】
2010124482.tif 000017
【図１６】
2010124482.tif 000018
【図１７】
2010124482.tif 000019
【図１８】
2010124482.tif 000020
【図１９】
2010124482.tif 000021
【図２０】
2010124482.tif 000022
【図２１】
2010124482.tif 000023
【図２２】
2010124482.tif 000024
【図２３】
2010124482.tif 000025
【図２４】
2010124482.tif 000026
【図２５】
2010124482.tif 000027
【図２６】
2010124482.tif 000028
【図２７】
2010124482.tif 000029
【図２８】
2010124482.tif 000030
【図２９】
2010124482.tif 000031
【図３０】
2010124482.tif 000032
【図３１】
2010124482.tif 000033
【図３２】
2010124482.tif 000034
【図３３】
2010124482.tif 000035