JP2006279349A - Schema document processing device and schema document processing method - Google Patents
Schema document processing device and schema document processing method Download PDFInfo
- Publication number
- JP2006279349A JP2006279349A JP2005093222A JP2005093222A JP2006279349A JP 2006279349 A JP2006279349 A JP 2006279349A JP 2005093222 A JP2005093222 A JP 2005093222A JP 2005093222 A JP2005093222 A JP 2005093222A JP 2006279349 A JP2006279349 A JP 2006279349A
- Authority
- JP
- Japan
- Prior art keywords
- document
- schema
- schema document
- verification
- encrypted
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Storage Device Security (AREA)
- Document Processing Apparatus (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
本発明は、XMLやSGMLといった構造化文書において、文書が取りうる構造と内容とを文法的に規定するスキーマ文書処理装置およびスキーマ文書処理方法に関する。 The present invention relates to a schema document processing apparatus and a schema document processing method that grammatically define the structure and contents that a document can take in structured documents such as XML and SGML.
近年、複数のネットワーク装置で実行される異なるサービスを、人手を介さずに連携させて一連の処理を実現するという、ウェブサービスが発展しつつある。ウェブサービスにおいては、複数のサービスの間でXML文書が送受信されることで情報伝達が行われ、一連の処理が進められる。ウェブサービスを支える技術の一つが、スキーマ処理の技術である。XMLやSGMLといった構造化文書の技術領域において、スキーマとは文書が取りうる構造と内容とを文法的に規定したものである。スキーマを記述するための言語をスキーマ言語と呼び、XMLに対するスキーマ言語としてDTD(Document Type Definition; 文書型定義)、W3C XML Schema、RELAX NGといったものがある。スキーマ言語を用いた特定の記述のことをスキーマ文書と呼ぶ。 In recent years, a web service has been developed in which different services executed by a plurality of network devices are linked without human intervention to realize a series of processes. In the web service, an XML document is transmitted / received between a plurality of services, information is transmitted, and a series of processes proceeds. One of the technologies that support web services is the schema processing technology. In the technical field of structured documents such as XML and SGML, a schema is a grammatical definition of the structure and contents that a document can take. A language for describing a schema is called a schema language. Examples of schema languages for XML include DTD (Document Type Definition), W3C XML Schema, and RELAX NG. A specific description using a schema language is called a schema document.
ウェブサービスでは人手を介さずにサービスが実行されるので、マシン処理可能なように、サービスの入出力データの形式と意味とが明確に規定される必要がある。もしその規定に則ったデータが受け渡しされなければ、サービスが誤った結果を返すだけでなく、サービスそのものがダウンする可能性もある。サービスの入力あるいは出力として許される文書をスキーマ文書によって規定し、サービス間で受け渡しされる文書がスキーマを満たしているかを検証した後にサービスを利用することで、上述の問題を回避できる。なおXMLの技術領域では、あるXML文書D1がXML規格のタグ付けルールに従っているとき「文書D1は整形式(well-formed)である」といい、あるXML文書D2があるスキーマ文書Sが規定する要素名や要素の階層関係や内容の型などをすべて満たすとき「文書D2は妥当(valid)である」とよぶ。言うまでもないが、文書が妥当なためには整形式である必要がある。 Since a web service is executed without human intervention, it is necessary to clearly define the format and meaning of the input / output data of the service so that machine processing is possible. If data that conforms to the rules is not passed, not only will the service return an incorrect result, but the service itself may go down. The above-mentioned problem can be avoided by defining a document allowed as an input or output of a service by a schema document and using the service after verifying whether a document passed between services satisfies the schema. In the technical field of XML, when a certain XML document D1 conforms to the tagging rules of the XML standard, it is said that “document D1 is well-formed”, and a schema document S with a certain XML document D2 defines. When all the element names, element hierarchical relationships, content types, and the like are satisfied, it is referred to as “document D2 is valid”. Needless to say, a document must be well-formed in order to be valid.
ウェブサービスを支える別の技術として、暗号化/復号化処理の技術がある。XML文書を対象とする暗号の国際標準として、XML暗号(XML Encryption)がある。XML暗号を用いると、文書中の任意の要素から下位構造を暗号化することができる。ウェブサービスでは、同じ文書が複数のサービスで受け渡しされて処理される、あるいは、文書の一部がコピーされて複数のサービスで利用されるということがよく起こる。このとき、セキュリティ上の要求から、文書の一部を特定のサービスにだけ利用可能とし、他のサービスから秘匿したい場合がある。 Another technology that supports web services is encryption / decryption processing technology. As an international standard of encryption for XML documents, there is XML encryption (XML Encryption). When XML encryption is used, the substructure can be encrypted from any element in the document. In web services, the same document is often delivered and processed by a plurality of services, or a part of the document is copied and used by a plurality of services. At this time, there is a case where a part of the document can be used only for a specific service and kept secret from other services due to security requirements.
例えば、クレジットカード内容を含む注文書を、発注者と本屋とクレジットカード会社と宅配業者との間で情報を追記しながら受け渡して一連の処理を進めることを考える。このとき、クレジットカード内容の部分はクレジットカード会社だけが処理できるようにし、本屋と宅配業者にはクレジット決済されたことだけが伝わることがセキュリティ上望ましい。XML暗号を用いると、発注者がクレジットカード内容を記述した要素を、クレジットカード会社が公開する暗号鍵で暗号化できる。このとき、クレジットカード会社だけが暗号化された要素を復号化して利用でき、本屋と宅配業者にはクレジットカード内容を知られずに済むようになる。 For example, consider that a purchase order including credit card contents is transferred while adding information to the orderer, the bookstore, the credit card company, and the courier, and a series of processing is proceeded. At this time, it is desirable from the viewpoint of security that only the credit card company can process the portion of the credit card contents, and that only the credit settlement is transmitted to the bookstore and the delivery company. When XML encryption is used, the element describing the credit card contents by the orderer can be encrypted with an encryption key disclosed by the credit card company. At this time, only the credit card company can decrypt and use the encrypted elements, so that the book store and the delivery company do not need to know the contents of the credit card.
図7および図8は、スキーマ文書の一例を示す図である。図9は、図7および図8で示すスキーマ文書が示す規定を満たすXML文書の例を示す図である。図10は、図9に示すXML文書の一部を暗号化した文書の例を示す図である。例えば図9に示すXML文書において、クレジットカード内容を示すcreditCardInfo要素から下位の構造(すなわち、開始タグ<bo:creditCardInfo>から終了タグ</bo:creditCardInfo>まで)を暗号化することを考える。XML暗号を用いて暗号化すると、図10に示すように、この部分がEncryptData要素から下位の構造に置換される。ここで、文書要素が暗号化されることをスキーマ文書で想定していなかった場合、暗号化された文書はスキーマ検証によって妥当ではないと判定されてしまう。例えば、図9のXML文書を規定するスキーマ文書がW3C XML Schemaを用いて図7および図8のように記述されているとする。すなわち、図9の(C)のxsi:schemaLocation属性で指定されているスキーマ文書bo.xsdが図7および図8で示されるものであるとする。このとき、図10のXML文書は図7のスキーマ文書の規定を満たさないので妥当ではないと判定されてしまう。 7 and 8 are diagrams illustrating examples of schema documents. FIG. 9 is a diagram illustrating an example of an XML document that satisfies the rules indicated by the schema document illustrated in FIGS. 7 and 8. FIG. 10 is a diagram showing an example of a document obtained by encrypting a part of the XML document shown in FIG. For example, in the XML document shown in FIG. 9, let us consider encrypting a structure (ie, from the start tag <bo: creditCardInfo> to the end tag </ bo: creditCardInfo>) from the creditCardInfo element indicating the credit card contents. When encryption is performed using XML encryption, as shown in FIG. 10, this part is replaced with a lower structure from the EncryptData element. Here, if the schema document does not assume that the document element is encrypted, the encrypted document is determined to be invalid by the schema verification. For example, it is assumed that the schema document that defines the XML document in FIG. 9 is described as shown in FIGS. 7 and 8 using W3C XML Schema. That is, it is assumed that the schema document bo.xsd specified by the xsi: schemaLocation attribute in (C) of FIG. 9 is the one shown in FIGS. At this time, the XML document in FIG. 10 does not satisfy the rules of the schema document in FIG.
妥当でない文書はサービスの入力や出力として不適切なので、ウェブサービスでの一連の処理が正常に終了しなくなる。これに対して、例えば特許文献1に開示される技術では、スキーマ文書の規定を変化させる箇所と内容とを事前に取り決め、この取り決めを記述した変化規則を各サービスが共有し、妥当性検証時にスキーマ文書の規定を満たさない文書要素が出現した際には、前記変化規則を適用して変化させた規定で改めて妥当性検証を行う、というものがある。
Since invalid documents are inappropriate as input or output of the service, a series of processing in the web service does not end normally. On the other hand, for example, in the technique disclosed in
しかしながら、従来技術では、任意の文書要素を暗号化したい場合に、次のような課題がある。まず一般の検証処理では、スキーマ文書の規定を満たさないと検証が失敗するので、スキーマ文書で暗号化が許容されていない文書要素を暗号化すると、その要素を含む文書の検証は失敗する。これを避けるには、様々なサービス提供者による暗号化の要求を勘案して、スキーマ文書作成者があらかじめ文書要素が置換されうることをスキーマ文書中に記述しなければならない。 However, the conventional technique has the following problem when it is desired to encrypt an arbitrary document element. First, in general verification processing, verification fails unless the specification of the schema document is satisfied. Therefore, when a document element that is not allowed to be encrypted in the schema document is encrypted, verification of the document including the element fails. In order to avoid this, it is necessary for the schema document creator to describe in advance in the schema document that the document element can be replaced in consideration of encryption requests by various service providers.
例えば図9において、発注者はcreditCardInfo要素以下を暗号化したいかもしれないし、cardNumberInfo要素とvalidThru要素とを個別に暗号化したいかもしれないし、payerInfo要素以下をまとめて暗号化したいかもしれない。このような様々な暗号化の可能性を考慮すると、スキーマ記述が複雑化になる。スキーマ記述が複雑化すると、その記述に工数が大きくかかるだけでなく、記述エラーの発生の可能性が増え、以後の拡張や保守が難しくなる。特許文献1に開示される変化規則においても、上記の課題はあてはまる。
For example, in FIG. 9, the orderer may want to encrypt the creditCardInfo element or less, may want to individually encrypt the cardNumberInfo element and the validThru element, or may want to encrypt the payerInfo element and the following together. Considering such various encryption possibilities, the schema description becomes complicated. If the schema description becomes complicated, not only will it take a lot of man-hours for the description, but also the possibility of description errors will increase, making subsequent expansion and maintenance difficult. The above problem also applies to the change rule disclosed in
まず、変化規則が記述されていなければ検証は失敗するので、任意箇所を暗号化することはできない。また、サービス提供者による暗号化の要求を勘案して変化規則を作成すると、変化規則が増大・複雑化する。さらに、変化規則は各サービスで共有される必要があるので、変化規則に対する変更や追加が生じた場合に一貫性を保つための保守が難しくなる。 First, if the change rule is not described, the verification fails, so that any part cannot be encrypted. Also, if a change rule is created in consideration of the encryption request by the service provider, the change rule increases and becomes complicated. Furthermore, since change rules need to be shared by each service, maintenance to maintain consistency is difficult when changes or additions to the change rules occur.
また別の課題として、スキーマ記述にある要素が暗号化された要素で置換されうることをスキーマ文書中に記述する、あるいは、前記変化規則として記述した場合、暗号化された要素にどのような情報が記載されているかを、本来情報を復号できないサービスが知りうることになってしまう。例えば、暗号化された情報がクレジットカード情報であることが知られてしまえば、悪意のある攻撃者によって不正な解読の対象にさらされる危険性がある。このように、スキーマ記述や前記変化規則が広く知られてしまうことは、暗号化の主旨から見て好ましくない。 Another issue is that in the schema document that an element in the schema description can be replaced with an encrypted element, or what information is contained in the encrypted element when described as the change rule. Can be known by a service that cannot originally decrypt the information. For example, if it is known that the encrypted information is credit card information, there is a risk of being exposed to unauthorized decryption by a malicious attacker. Thus, it is not preferable from the viewpoint of encryption that the schema description and the change rule are widely known.
そこで、本発明は、上記問題点に鑑みてなされたもので、文書の任意の要素を暗号化できるという利便性を備えながら、その暗号化された文書に対するスキーマ検証が適切に行えるようなスキーマ文書処理装置およびスキーマ文書処理方法を提供することを目的とする。 Therefore, the present invention has been made in view of the above problems, and provides a schema document that can appropriately verify a schema of an encrypted document while having the convenience of being able to encrypt an arbitrary element of the document. It is an object to provide a processing device and a schema document processing method.
上記課題を解決するために、本発明は、文書中で暗号化する箇所を指定する指定手段と、暗号化前の文書がスキーマ検証で合格できる第1のスキーマ文書に応じて、前記指定箇所が暗号化された文書がスキーマ検証で合格できる第2のスキーマ文書を生成する生成手段と、前記指定箇所を復号化可能な相手には前記第1のスキーマ文書が取得でき、前記指定箇所を復号化不能な相手には前記第2のスキーマ文書が取得できるように送信するメッセージを設定する設定手段とを含むことを特徴とするスキーマ文書処理装置である。本発明によれば、文書の任意の要素を暗号化できるという利便性を備えながら、その暗号化された文書に対するスキーマ検証を適切に行うことができる。 In order to solve the above-described problem, the present invention provides a designation unit that designates a location to be encrypted in a document and a first schema document in which the document before encryption can pass the schema verification. Generation means for generating a second schema document that allows the encrypted document to pass the schema verification, and the first schema document can be acquired by a partner that can decrypt the designated place, and the designated place is decrypted. A schema document processing apparatus comprising setting means for setting a message to be transmitted so that the second schema document can be acquired for an impossible party. According to the present invention, it is possible to appropriately perform schema verification on an encrypted document while providing the convenience that an arbitrary element of the document can be encrypted.
前記生成手段は、異なった暗号鍵ごとに前記第2のスキーマ文書を生成することを特徴とする。前記設定手段は、文書中の箇所を暗号化したときと同じ暗号を前記第1のスキーマ文書の実体あるいは参照に対してかけることを特徴とする。これにより、相手に応じたスキーマ文書の取得を実現できる。本発明のスキーマ文書処理装置は、前記第1のスキーマ文書および前記第2のスキーマ文書の少なくとも一方を用いてスキーマ検証を行う検証手段をさらに備える。本発明のスキーマ文書処理装置は、前記スキーマ検証の結果、妥当な文書について所定の処理を行う処理手段をさらに備える。 The generation unit generates the second schema document for each different encryption key. The setting means applies the same encryption to the entity or reference of the first schema document when a portion in the document is encrypted. Thereby, acquisition of the schema document according to the other party can be realized. The schema document processing apparatus of the present invention further includes verification means for performing schema verification using at least one of the first schema document and the second schema document. The schema document processing apparatus of the present invention further includes processing means for performing a predetermined process for a valid document as a result of the schema verification.
本発明は、文書中で暗号化する箇所を指定するステップと、暗号化前の文書がスキーマ検証で合格できる第1のスキーマ文書に応じて、前記指定箇所が暗号化された文書が、スキーマ検証で合格できる第2のスキーマ文書を生成するステップと、前記指定箇所を復号化可能な相手には前記第1のスキーマ文書が取得でき、前記指定箇所を復号化不能な相手には前記第2のスキーマ文書が取得できるように送信するメッセージを設定するステップとを含むスキーマ文書処理方法である。本発明によれば、文書の任意の要素を暗号化できるという利便性を備えながら、その暗号化された文書に対するスキーマ検証を適切に行うことができる。 The present invention provides a step of designating a portion to be encrypted in a document and a first schema document that can pass the pre-encryption document by schema validation. Generating a second schema document that can be passed in the step, and obtaining the first schema document for a partner that can decrypt the designated location, and the second schema document for a partner that cannot decrypt the designated location. A schema document processing method including: setting a message to be transmitted so that the schema document can be acquired. According to the present invention, it is possible to appropriately perform schema verification on an encrypted document while providing the convenience that an arbitrary element of the document can be encrypted.
本発明のスキーマ文書処理方法は、異なった暗号鍵ごとに前記第2のスキーマ文書を生成するステップをさらに含む。 The schema document processing method of the present invention further includes a step of generating the second schema document for each different encryption key.
本発明のスキーマ文書処理方法は、文書中の箇所を暗号化したときと同じ暗号を前記第1のスキーマ文書の実体あるいは参照に対してかけるステップをさらに含むことを特徴とする。これにより、相手に応じたスキーマ文書の取得を実現できる。本発明のスキーマ文書処理方法は、前記第1のスキーマ文書および前記第2のスキーマ文書の少なくとも一方を用いてスキーマ検証を行うステップをさらに含む。本発明のスキーマ文書処理方法は、前記スキーマ検証の結果、妥当な文書について所定の処理を行うステップをさらに含む。 The schema document processing method of the present invention further includes a step of applying the same cipher as that when a portion in the document is encrypted to the entity or reference of the first schema document. Thereby, acquisition of the schema document according to the other party can be realized. The schema document processing method of the present invention further includes a step of performing schema verification using at least one of the first schema document and the second schema document. The schema document processing method of the present invention further includes a step of performing a predetermined process for a valid document as a result of the schema verification.
本発明によれば、文書の任意の要素を暗号化できるという利便性を備えながら、その暗号化された文書に対するスキーマ検証が適切に行えるようなスキーマ文書処理装置およびスキーマ文書処理方法を提供することができる。 According to the present invention, it is possible to provide a schema document processing apparatus and a schema document processing method capable of appropriately performing schema verification on an encrypted document while having the convenience that an arbitrary element of the document can be encrypted. Can do.
以下、本発明を実施するための最良の形態について実施例を用いて説明する。 Hereinafter, the best mode for carrying out the present invention will be described with reference to examples.
図1は、本発明の第1実施例に係わるシステム構成を示す図である。図1に示すように、システム1は、サービス装置21〜2nを備える。これらはネットワーク3を介して接続されている。サービス装置21は、スキーマ文書処理部201、メッセージ受信部202、メッセージ送信部203、メッセージ記憶部204、文書記憶部205、スキーマ文書記憶部206、スキーマ検証部207、暗号化部208、復号化部209、サービス処理部210および入出力部211を備える。
FIG. 1 is a diagram showing a system configuration according to the first embodiment of the present invention. As shown in FIG. 1, the
各サービス装置21〜2nはパブリックネットワーク3を介してメッセージを送受信して一連の処理を実行する。ここでサービスには、たとえばホテル予約、航空機予約、レンタカー予約などが含まれる。送受信されるメッセージはSOAPエンベロープ形式(すなわちXML文書形式)であり、SOAPエンベロープのボディにサービス処理部210の入出力となるXML文書が含まれる。サービスを実際に処理するサービス処理部210にXML文書を渡す前に、スキーマ検証部207による検証が行われ、妥当な文書だけがサービス処理部210によって処理される。スキーマ言語は、本実施例ではW3C XML Schemaを用いる。本実施例では、特定のサービス装置だけが内容を復号化できる一つの暗号鍵を用いて、文書中の任意の要素(複数可)を暗号化する。入出力部211は、文書中で暗号化する箇所を指定するものである。暗号鍵は暗号化部208に保有されている。
Each service device 21-2n transmits and receives messages via the
スキーマ文書処理部201は、暗号化前の文書がスキーマ検証で合格できる第1のスキーマ文書に応じて、指定箇所が暗号化された文書がスキーマ検証で合格できる第2のスキーマ文書を生成し、指定箇所を復号化可能な相手には第1のスキーマ文書が取得でき、指定箇所を復号化不能な相手には第2のスキーマ文書が取得できるように送信するメッセージを設定するものである。このとき、スキーマ文書処理部201は、文書中の箇所を暗号化したときと同じ暗号を第1のスキーマ文書の実体あるいは参照に対してかける。ここでスキーマ文書の実態とは、スキーマ文書自体のことである。スキーマ検証部207は、第1のスキーマ文書又は第2のスキーマ文書を用いてスキーマ検証を行うものである。サービス処理部210は、スキーマ検証の結果、妥当な文書について所定の処理を行う。
The schema
図2は、SOAPエンベロープ31を他のサービス装置22〜2nに送信する前にスキーマ文書処理部201が実行する処理を模式的に示した図である。また、図5は図2で説明した処理に関わる、スキーマ文書処理部201の処理フローを示す図である。
FIG. 2 is a diagram schematically illustrating processing executed by the schema
ステップS11で、スキーマ文書処理部201は、XML文書D中の暗号化する要素の指示を受け取る。参照符号32は暗号化する要素を示す。ステップS12で、スキーマ文書処理部201は、暗号化する要素32について、その定義がある箇所をスキーマ文書Sから検出する。ステップS13で、スキーマ文書処理部201は、暗号化する要素32と同じ種類の要素がXML文書Dの他の部分に存在し、同じ種類の要素はすべて暗号化の対象であると判断した場合(ステップS14)、ステップS16に進む。ステップS13で、暗号化する要素32と同じ種類の要素がXML文書D中の他の部分に存在しない場合は、ステップS16に進む。
In step S11, the schema
ステップS16で、元のスキーマ文書Sで暗号化する要素の定義が記述されている箇所を、暗号化後の要素を定義したスキーマ記述と置換したスキーマ文書S’を生成する。図9と図10の例で言えば、この処理におけるスキーマ文書Sは、図7および図8に示すものとなり、新たに生成されるスキーマ文書S’は、図7(A)から図8 (B)の部分をXML暗号標準に規定される<EncryptedData>要素以下のスキーマ記述に置換したものになる。 In step S16, a schema document S 'is generated by replacing the portion where the definition of the element to be encrypted in the original schema document S is described with the schema description defining the encrypted element. In the example of FIGS. 9 and 10, the schema document S in this process is as shown in FIGS. 7 and 8, and the newly generated schema document S ′ is shown in FIGS. ) Is replaced with a schema description below the <EncryptedData> element defined in the XML encryption standard.
暗号化する要素と同じ種類の要素が文書中の他の部分に存在し、かつ、同じ種類のものが暗号化されない場合は、新たに生成されるスキーマ文書S’に暗号化前の要素と暗号化後の要素の両方の定義が含まれる必要がある。したがって、同じ種類のものが存在する暗号化する要素については、元のスキーマ文書Sで暗号化する要素の定義が記述されている箇所を、暗号化前の要素と暗号化後の要素のいずれかを選択できるスキーマ記述に書き換え、それ以外の箇所は暗号化後の要素を定義したスキーマ記述に置換したスキーマ文書S’を生成する(ステップS15)。要素のいずれかを選択できるスキーマ記述の一例として図9と図10を用いて説明すると、スキーマ文書S’は、図7 (A)の直前に<xsd:choice>に続いて<EncryptedData>要素以下のスキーマ記述が挿入され、図8(B)の直後に</xsd:choice>が挿入されたものになる。なお、前記のスキーマ記述の変更は、スキーマ記述を実際に上書きしても良いし、インポートしても良い。 If an element of the same type as the element to be encrypted exists in another part of the document and the same type of element is not encrypted, the newly-created schema document S ′ includes the element before encryption and the encryption. The definition of both elements after conversion must be included. Therefore, for the elements to be encrypted that have the same type, the place where the definition of the element to be encrypted in the original schema document S is described is either the element before encryption or the element after encryption. The schema document S ′ is generated by replacing the encrypted description with the schema description that defines the encrypted elements in other portions (step S15). Referring to FIGS. 9 and 10 as an example of a schema description in which one of the elements can be selected, the schema document S ′ is immediately below <EncryptedData> element immediately after <xsd: choice> immediately before FIG. </ Xsd: choice> is inserted immediately after FIG. 8B. The schema description can be changed by actually overwriting or importing the schema description.
ステップS17で、スキーマ文書処理部201は、要素を暗号化部208に暗号化させる。ステップS18で、スキーマ文書処理部201は、図2の「スキーマ付替とエンベローピング」において、XML文書Dから参照されるスキーマ文書をSからS’に置換する。ステップS19で、スキーマ文書処理部201は、XML文書DをSOAPボディ33に、Sへのスキーマ参照をSOAPヘッダ34に持つSOAPエンベローブ31を生成する。このため、元のスキーマ文書Sは、XML文書Dを含むSOAPエンベロープ31のSOAPヘッダ34中の要素から参照される。
In step S17, the schema
ステップS20で、スキーマ文書処理部201は、前記要素の暗号化と同じ暗号鍵を用いてSOAPヘッダ34のスキーマ参照を暗号化部208に暗号化させる。すなわち、ヘッダ要素は、文書の要素の暗号化と同じ暗号鍵を使って暗号化される。このため、文書の要素を復号化できるサービス装置は、このヘッダ要素も復号化できるので元のスキーマ文書Sを入手することができる。なお本実施例では、スキーマ参照にはxsi:schemaLocation属性をSOAPヘッダでも用いる。ステップS21で、SOAPエンベロープ31をメッセージ送信部203を使ってパブリックネットワーク3へ送信する。
In step S <b> 20, the schema
図3は、SOAPエンベロープ31をパブリックネットワーク3を介して他のサービス装置から受信した後に、暗号化部分を復号可能な場合にスキーマ文書処理部201が実行する処理を模式的に示した図である。図4は、SOAPエンベロープ31をパブリックネットワーク3を介して他のサービス装置から受信した後に、暗号化部分を復号できない場合にスキーマ文書処理部201が実行する処理を模式的に示した図である。
FIG. 3 is a diagram schematically showing processing executed by the schema
また、図6は図3および図4で説明した処理に関わる、スキーマ文書処理部201の処理フローを示す図である。ステップS31で、スキーマ文書処理部201は、受信したSOAPエンベローブ31のヘッダ34の復号化を復号化部209で試みる。ステップS32で、スキーマ文書処理部201は、ヘッダ34が復号できない場合、ステップS33に進む。ステップS34で、スキーマ文書処理部201は、復号化部分にスキーマ参照を含まない場合、ステップS33に進む。
この場合はスキーマ文書Sを入手できないので、文書Dが参照するスキーマ文書S’が以後のスキーマ検証で用いられる。すなわち、ステップS33で、スキーマ文書処理部201は、受信したSOAPエンベローブ31からボディ33にあるXML文書Dを取り出し、文書記憶部205に記憶させ、ステップS38に進む。
FIG. 6 is a diagram illustrating a processing flow of the schema
In this case, since the schema document S cannot be obtained, the schema document S ′ referred to by the document D is used in the subsequent schema verification. That is, in step S33, the schema
ヘッダ34が復号でき、かつ復号化部分にスキーマ参照を含む場合、ヘッダ34のスキーマ参照35からスキーマ文書Sを入手できる。ステップS35で、スキーマ文書処理部201は、以後のスキーマ検証でスキーマ文書Sが利用されるように、受信したSOAPエンベローブ31のボディ33にある文書Dのスキーマ参照を、スキーマ文書Sへの参照に付け替える。ステップS36で、スキーマ文書処理部201は、受信したSOAPエンベローブ31からボディ33にある文書Dを取り出し、文書記憶部205に記憶させる。ステップS37で、スキーマ文書処理部201は、前記文書中の暗号化された要素を復号化する。ステップS38で、スキーマ文書処理部201は、スキーマ検証部207にスキーマの妥当性を検証させる。ステップS39で、妥当であれば、ステップS40で、サービス処理部210に検証された文書を渡し、サービスを実行させる。
If the
以上、本発明の実施形態について説明した。ここまでの説明では既に標準化されたXML関連技術に基づいて説明したが、
1)文書が木構造形式に構造化され、
2)その木構造形式に対するスキーマ言語が存在し、
3)木構造の部分木に対する暗号化方式が存在し、
4)文書にメタデータが付与可能であり、
5)前記メタデータを前記暗号化方式で暗号化できる
場合には、本発明が適用できることは明らかである。
The embodiment of the present invention has been described above. In the description so far, the description has been based on the XML-related technology that has already been standardized.
1) The document is structured in a tree structure format,
2) There is a schema language for the tree structure format,
3) There is an encryption method for the subtree of the tree structure,
4) Metadata can be added to the document,
5) It is obvious that the present invention can be applied when the metadata can be encrypted by the encryption method.
次に、本発明の第2実施例について説明する。第1実施例では、特定のサービス装置が復号化できる一つの暗号鍵を用いていた。これを、複数の暗号鍵を用意し、個々の暗号鍵と文書の暗号箇所とを対応付けて暗号化するようにし、暗号鍵ごとに生成したスキーマ文書を用いて検証するようにしてもよい。暗号鍵と暗号箇所を使い分けることで、一つの文書の中で、複数のサービス装置に対して内容を知ることができる箇所をコントロールするようにでき、その暗号化に応じたスキーマ文書で各サービス装置が検証できるようになる。上述した本の発注の例で説明すれば、クレジットカード内容の暗号化に加え、発注された内容を暗号化してクレジットカード会社には具体的な本の名前などが知られないようにすることができる。なお、サービス装置の構成は実施例1と同様であるため図1を用いて説明する。 Next, a second embodiment of the present invention will be described. In the first embodiment, one encryption key that can be decrypted by a specific service device is used. This may be verified by using a schema document generated for each encryption key by preparing a plurality of encryption keys, encrypting each encryption key in association with the encrypted portion of the document. By using the encryption key and encryption location properly, it is possible to control the location where the contents can be known for a plurality of service devices in one document, and each service device with a schema document corresponding to the encryption Can be verified. In the book ordering example described above, in addition to encrypting the credit card content, the ordered content may be encrypted so that the credit card company does not know the specific name of the book. it can. The configuration of the service device is the same as that of the first embodiment, and will be described with reference to FIG.
図11は、異なるサービス向けに、文書の複数箇所に異なった暗号鍵による暗号化が行われる場合のSOAPエンベロープ131とXML文書Dの模式図を示す図である。スキーマ文書処理部201での処理については、暗号鍵ごとに新たなスキーマ文書を生成する。そして、元のスキーマ文書への参照をSOAPヘッダ34に記載するのではなく、復号化可能な要素に応じた複数のスキーマ文書をSOAPヘッダ34に暗号化して記載する。
FIG. 11 is a diagram illustrating a schematic diagram of the
図11の斜線のハッチ部分41と格子のハッチ部分42とが異なる暗号鍵で暗号化された部分である。スキーマ文書S1は、格子部分の暗号化要素を含み、斜線部分が復号化された文書を許容するものである。スキーマ文書S2は、斜線部分の暗号化要素を含み、格子部分が復号化された文書を許容するものである。スキーマ文書S3は、斜線部分と格子部分の暗号化要素を含む文書を許容するものである。 The hatched portion 41 in FIG. 11 and the hatched portion 42 of the lattice are portions encrypted with different encryption keys. The schema document S1 allows a document including an encryption element of a lattice part and a decrypted hatched part. The schema document S2 includes an encrypted element with a hatched portion and allows a document with a lattice portion decrypted. The schema document S3 allows a document including encrypted elements of a hatched portion and a lattice portion.
次に、スキーマ検証部201の処理については、一つの暗号鍵に対応して復号化できるスキーマ参照と文書要素ごとに検証を行う。そして、すべての検証で妥当な場合にのみ、サービス処理部210に文書を渡してサービスを実行させる。ここで渡す文書は、このサービス装置で復号化可能な文書要素をすべて復号化したものである。なお、復号化できる部分がない場合の処理は、前記実施例1と同様である。
Next, the processing of the
図11の例で説明すると、あるサービス装置が斜線部分と格子部分の両方を復号化可能な場合は、斜線部分を復号化したときの検証と格子部分を復号化したときの検証とをそれぞれ行う。そして、いずれの検証でも妥当である場合には、斜線部分と格子部分を復号化した文書をサービス処理部210に渡す。
Referring to the example of FIG. 11, when a certain service device can decode both the hatched portion and the lattice portion, verification when the hatched portion is decoded and verification when the lattice portion is decoded are performed. . If any verification is valid, a document obtained by decoding the hatched portion and the lattice portion is passed to the
なお、上記各実施例において、スキーマ文書への参照を用いたが、これをスキーマ文書を実体として文書とエンベロープに含めるように構成しても良い。また、前記の実施形態では元のスキーマ文書への参照をエンベロープのヘッダに記載した。これを、文書の暗号化部分にスキーマ文書への参照を含める形にし、復号化後にスキーマ文書への参照が含まれていれば文書中の他の部分のスキーマ参照を削除するようにしてもよい。 In each of the above embodiments, the reference to the schema document is used. However, it may be configured so that the schema document is included in the document and the envelope as an entity. In the above embodiment, the reference to the original schema document is described in the header of the envelope. This may include a reference to the schema document in the encrypted part of the document, and if the reference to the schema document is included after decryption, the schema reference of other parts in the document may be deleted. .
また、前記の実施例では複数のサービス装置がネットワークを介して分散処理を行う形を取った。これを、共有の文書記憶装置が存在し、これに各サービス装置がアクセスする形態を取っても良い。この場合は、共有文書記憶装置への書き込み前に、図2の1から4の処理が行われて、5の「送信」の代わりに書き込みが行われる。そして、共有文書記憶装置から読み出し時に、図3乃至図4の1の「受信」の代わりに読み出しが行われ、それ以降の処理が順次行われる。また、前記の実施例では暗号化部がサービス装置に応じた暗号鍵を保有していたが、これを暗号鍵を適宜配布するように構成しても良い。配布方式は、公開鍵方式やアクセスコントロールチケットを用いる方式といったネットワークを用いた方式でも良いし、鍵が記録されたメディアの郵送といった物理的な方式でも良い。
In the above embodiment, a plurality of service devices perform distributed processing via a network. Alternatively, a shared document storage device may exist and each service device may access it. In this case, the
本発明では、文書の任意の要素が暗号化される際に、暗号化された要素を含む文書が妥当となるスキーマ文書を生成する。そして、暗号化された要素を含む文書から前記スキーマ文書が入手可能にするとともに、暗号化された要素を復号可能であるサービスに対して復号化された要素を含む文書が妥当となるスキーマ文書を入手可能とした。従って、文書を暗号化する側は元のスキーマにとらわれることなく、文書の任意の要素に暗号をかけることができる。そして、暗号化された文書を受け取った側は、復号化できる要素に応じたスキーマ文書を用いて、受け取った文書を検証することができるようになる。 In the present invention, when an arbitrary element of a document is encrypted, a schema document in which the document including the encrypted element is valid is generated. Then, the schema document can be obtained from the document including the encrypted element, and the schema document including the decrypted element is valid for the service capable of decrypting the encrypted element. It was made available. Therefore, the side that encrypts the document can encrypt any element of the document without being bound by the original schema. Then, the side receiving the encrypted document can verify the received document using the schema document corresponding to the element that can be decrypted.
なお、本発明によるスキーマ文書処理方法は、例えば、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)等を用いて実現され、プログラムをハードディスク装置や、CD−ROM、DVDまたはフレキシブルディスクなどの可搬型記憶媒体等からインストールし、または通信回路からダウンロードし、CPUがこのプログラムを実行することで、各ステップが実現される。 The schema document processing method according to the present invention is realized using, for example, a CPU (Central Processing Unit), a ROM (Read Only Memory), a RAM (Random Access Memory), and the like, and the program is stored in a hard disk device, a CD-ROM, Each step is realized by installing from a portable storage medium such as a DVD or a flexible disk, or downloading from a communication circuit, and the CPU executing this program.
以上本発明の好ましい実施例について詳述したが、本発明は係る特定の実施例に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形、変更が可能である。 Although the preferred embodiments of the present invention have been described in detail above, the present invention is not limited to the specific embodiments, and various modifications, within the scope of the gist of the present invention described in the claims, It can be changed.
1 システム
21〜2n サービス装置
3 ネットワーク
201 スキーマ文書処理部
202 メッセージ受信部
203 メッセージ送信部
204 メッセージ記憶部
205 文書記憶部
206 スキーマ文書記憶部
207 スキーマ検証部
208 暗号化部
209 復号化部
210 サービス処理部
211 入出力部
DESCRIPTION OF
Claims (10)
暗号化前の文書がスキーマ検証で合格できる第1のスキーマ文書に応じて、前記指定箇所が暗号化された文書がスキーマ検証で合格できる第2のスキーマ文書を生成する生成手段と、
前記指定箇所を復号化可能な相手には前記第1のスキーマ文書が取得でき、前記指定箇所を復号化不能な相手には前記第2のスキーマ文書が取得できるように送信するメッセージを設定する設定手段と
を含むことを特徴とするスキーマ文書処理装置。 A specifying means for specifying a portion to be encrypted in the document;
Generating means for generating a second schema document in which the document encrypted in the designated portion can pass in the schema verification according to the first schema document in which the document before encryption can pass in the schema verification;
A setting for setting a message to be transmitted so that the first schema document can be acquired for a partner that can decrypt the designated location, and the second schema document can be obtained for a partner that cannot decrypt the designated location. And a schema document processing apparatus.
暗号化前の文書がスキーマ検証で合格できる第1のスキーマ文書に応じて、前記指定箇所が暗号化された文書が、スキーマ検証で合格できる第2のスキーマ文書を生成するステップと、
前記指定箇所を復号化可能な相手には前記第1のスキーマ文書が取得でき、前記指定箇所を復号化不能な相手には前記第2のスキーマ文書が取得できるように送信するメッセージを設定するステップと、
を含むことを特徴とするスキーマ文書処理方法。 Specifying the location to be encrypted in the document;
Generating a second schema document in which the specified portion of the encrypted document can pass the schema verification in response to a first schema document that the document before encryption can pass the schema verification;
A step of setting a message to be transmitted so that the first schema document can be acquired for a partner that can decrypt the designated location, and the second schema document can be obtained for a partner that cannot decrypt the designated location. When,
A schema document processing method comprising:
The schema document processing method according to claim 9, further comprising a step of performing a predetermined process on a valid document as a result of the schema verification.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005093222A JP2006279349A (en) | 2005-03-28 | 2005-03-28 | Schema document processing device and schema document processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005093222A JP2006279349A (en) | 2005-03-28 | 2005-03-28 | Schema document processing device and schema document processing method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006279349A true JP2006279349A (en) | 2006-10-12 |
Family
ID=37213653
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005093222A Pending JP2006279349A (en) | 2005-03-28 | 2005-03-28 | Schema document processing device and schema document processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006279349A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015009119A1 (en) * | 2013-07-19 | 2015-01-22 | 고려대학교 산학협력단 | Deniable encryption system and method |
KR20150010571A (en) * | 2013-07-19 | 2015-01-28 | 고려대학교 산학협력단 | System and method for deniable encryption |
-
2005
- 2005-03-28 JP JP2005093222A patent/JP2006279349A/en active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015009119A1 (en) * | 2013-07-19 | 2015-01-22 | 고려대학교 산학협력단 | Deniable encryption system and method |
KR20150010571A (en) * | 2013-07-19 | 2015-01-28 | 고려대학교 산학협력단 | System and method for deniable encryption |
KR101584127B1 (en) | 2013-07-19 | 2016-01-11 | 고려대학교 산학협력단 | System and method for deniable encryption |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4755189B2 (en) | Content encryption method, network content providing system and method using the same | |
JP5034498B2 (en) | Digital content encryption and decryption method, and business flow system using digital content | |
US9536058B2 (en) | Apparatus and method for managing digital copyright on EPUB-based content, and apparatus and method for providing EPUB-based content according to user's right | |
US8104074B2 (en) | Identity providers in digital identity system | |
US20060173787A1 (en) | Data protection management apparatus and data protection management method | |
US20020082997A1 (en) | Controlling and managing digital assets | |
KR100713044B1 (en) | Encryption/recording device, reproduction device, and computer-readable recording medium | |
US20080301431A1 (en) | Text security method | |
JPH10260903A (en) | Group ciphering method and file ciphering system | |
US20120290837A1 (en) | Method and system for secured management of online XML document services through structure-preserving asymmetric encryption | |
CN1985252A (en) | Apparatus and method for processing digital rights object | |
KR20060126958A (en) | Content distribution method and content server | |
JP2009049731A (en) | Encryption method, decryption method, and key management method | |
Hwang et al. | An operational model and language support for securing XML documents | |
US8959344B2 (en) | Method and system for handling defined areas within an electronic document | |
JP2005284915A (en) | Information retrieval device and method, information retrieval system, and control method for the same | |
JP2006279349A (en) | Schema document processing device and schema document processing method | |
JP4227479B2 (en) | Encapsulation apparatus, license generation apparatus, service provision apparatus, encapsulation program, license generation program, and service provision program | |
CN100401285C (en) | Method of managing metadata | |
Santos et al. | Secure Javascript Object Notation (SecJSON) Enabling granular confidentiality and integrity of JSON documents | |
JP2006113664A (en) | Document management device | |
JP2002259634A (en) | Information distributing method, information transmitter, information receiver, information transmitting program, information receiving program, recording medium storing information transmitting program and recording medium storing information receiving program | |
JP2005318162A (en) | Information leakage preventing system | |
TW201642160A (en) | Method and system for WEB-based article protection | |
JP2006080785A (en) | Electronic filing document browsing system, its server, client, program |