JP4989259B2 - 署名情報処理方法、そのプログラムおよび情報処理装置 - Google Patents

署名情報処理方法、そのプログラムおよび情報処理装置 Download PDF

Info

Publication number
JP4989259B2
JP4989259B2 JP2007055679A JP2007055679A JP4989259B2 JP 4989259 B2 JP4989259 B2 JP 4989259B2 JP 2007055679 A JP2007055679 A JP 2007055679A JP 2007055679 A JP2007055679 A JP 2007055679A JP 4989259 B2 JP4989259 B2 JP 4989259B2
Authority
JP
Japan
Prior art keywords
signature
information
data
processing
storage unit
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.)
Expired - Fee Related
Application number
JP2007055679A
Other languages
English (en)
Other versions
JP2008219585A (ja
Inventor
弘二郎 中山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2007055679A priority Critical patent/JP4989259B2/ja
Priority to US12/038,860 priority patent/US20080222421A1/en
Publication of JP2008219585A publication Critical patent/JP2008219585A/ja
Application granted granted Critical
Publication of JP4989259B2 publication Critical patent/JP4989259B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/04Masking or blinding
    • H04L2209/043Masking or blinding of tables, e.g. lookup, substitution or mapping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/68Special signature format, e.g. XML format

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Description

本発明は情報セキュリティに関するものであり、特に電子署名を付与されたデータを処理する技術に関するものである。
電子データの正当性を保証するための技術として電子署名がある。電子署名は、署名対象データの作成者を特定すること、署名が付与された後の署名対象データに対する改ざんを検出することなどを可能とする電子データであり、例えば、公開鍵暗号技術を利用することで実現される。
また、近年XML(Extensible Markup Language)と呼ばれるデータ形式が注目を集めている。XMLは、標準化団体W3C(World Wide Web Consortium)によって仕様が公開されているマークアップ言語の1つであり、各種データを保存する際のフォーマットや、異なる計算機間でデータを交換する際のフォーマットとして広く利用されている。
Webサービスと呼ばれるシステム連携技術では、データ交換のフォーマットとしてSOAP(Simple Object Access Protocol)と呼ばれるXML形式のメッセージ(SOAPメッセージ)を利用することで、異なる環境の計算機間でのシステム連携を実現する。このように、XMLは様々な場面での利用が進められており、XMLデータのセキュリティを確保することは非常に重要な課題である。
XMLのセキュリティに関する仕様として、XML-Signature Syntax and Processing(以下、「XML署名」と記す)がある(例えば、非特許文献1参照)。XML署名は、電子署名に関する情報をXMLで記述するための構文や、その情報の処理方法を規定した仕様であり、W3Cによって仕様が公開されている。XML署名では、XMLデータに対する署名や、その他の電子データに対する署名の方法を規定している。
XMLの記述方法には自由度が存在するため、同じ内容を意味するデータであってもその表現方法が異なることがある。例えば、「<element></element>」と「<element />」はどちらも空要素を表しており、XMLデータとしては同じ内容を意味しているが、バイト列としては異なるデータである。電子署名の計算はバイト列に対して行なわれるため、「<element></element>」から計算される署名値と「<element />」から計算される署名値とは異なる。しかし「<element></element>」と「<element />」とは、XMLデータとしては同じ内容を意味するため、署名値も同じであることが望ましい。
そこで、XML署名では、署名値を計算する前に、署名対象のXMLデータに対して正規化処理を行なうことが一般的である。XML署名の際に利用される正規化処理のアルゴリズムとしては、例えば、Exclusive XML Canonicalizationなどがある(例えば、非特許文献2参照)。Exclusive XML Canonicalizationにより正規化を行なうと、空要素の記述はすべて省略されていない形に統一される。すなわち、「<element />」という要素に対してExclusive XML Canonicalizationを用いて正規化を行なうと「<element></element>」という要素が結果として得られる。このように、署名を付与する計算機と署名の検証を行なう計算機とにおいて、署名値を計算する前に署名対象データに対して正規化処理を行うことで、記述方法が異なっていても、同じ内容を意味するデータから同じ署名値を得ることが可能になる。
Donald Eastlake 他、"XML-Signature Syntax and Processing"、[online]、2002年2月12日、W3C、[2006年12月8日検索]、インターネット<URL:http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/> John Boyer 他、"Exclusive XML Canonicalization"、[online]、2002年7月18日、W3C、[2006年12月8日検索]、インターネット<URL:http://www.w3.org/TR/2002/REC-xml-exc-c14n-20020718/>
前記したように、署名の付与されたデータ(例えば、XMLデータ)に対して処理を行なう際に、データ(例えば、XMLデータ)の形式が変わってしまうために、署名の有効性が損なわれることがある。例えば、図15に示した例のように、署名装置1510が、署名済みのXMLデータを、中継装置1520を介して検証装置1530に送信し、検証装置1530において署名検証を行なう場合について考える。以下では、各装置間で交換されるXMLデータをメッセージとも記すことにする。
図15に示した例では、まず、署名装置1510がメッセージに署名を付与する(ステップS1501)。その後、署名装置1510は、署名付きのメッセージを中継装置1520に送信する(ステップS1502)。中継装置1520は、メッセージを受信し(ステップS1503)、受信したメッセージに対して何らかの処理を行なう(ステップS1504)。中継装置1520は、処理を行なった後のメッセージを検証装置1530に送信する(ステップS1505)。検証装置1530は、メッセージを受信し(ステップS1506)、受信したメッセージに含まれる署名の検証を行なう(ステップS1507)。
ここで、中継装置1520における処理、すなわち、ステップS1504において、XMLデータの意味は変わっていなくても、XMLデータの形式が変わってしまうと、署名の有効性が損なわれることがある。中継装置1520における処理、すなわち、ステップS1504において、署名の有効性が損なわれるような処理を行なった場合には、検証装置1530は、メッセージを受信した後における署名検証で失敗する。
署名の有効性を損なう処理の例として、名前空間プレフィックスの変更と改行およびスペースの変更について説明する。まず、名前空間プレフィックスの変更について説明する。ここで、次の2つのXMLデータについて考える。
(1)
<a:elem xmlns:a=”http://example.org” />
(2)
<b:elem xmlns:b=”http://example.org” />
(1)では、名前空間プレフィックスの値として「a」を使用しており、(2)では、名前空間プレフィックスの値として「b」を使用している。名前空間プレフィックス以外については、(1)と(2)は同じデータである。Exclusive XML Canonicalizationでは、名前空間プレフィックスの正規化は行なわないため、(1)に対する署名の結果と(2)に対する署名の結果とは異なる。そのため、例えば、ステップS1504において、(1)のデータを(2)のデータに変換した場合、署名の有効性が損なわれる。
次に、改行および空白スペースの変更について説明する。次の2つのXMLデータについて考える。
(3)
<a>
<b>xyz</b>
</a>
(4)
<a><b>xyz</b></a>
(3)では、開始タグ<a>の後および終了タグ</a>の前に改行が存在する。また、開始タグ<b>の前にスペースが存在する。(4)では、改行やスペースは存在しない。Exclusive XML Canonicalizationでは、このような要素内容における改行やスペースの正規化は行なわないため、(3)に対する署名の結果と(4)に対する署名の結果とは異なる。そのため、例えば、ステップS1504において、(3)のデータを(4)のデータに変換した場合、署名の有効性が損なわれる。
そこで、本発明は、署名が付与されたデータに対して処理を行なう際に、署名の有効性が損なわれることを防ぐことを目的とする。
前記した課題を解決するために、本発明は、署名に関する情報である署名情報を含んだデータに対して処理を実行し、情報を処理する処理部と、情報を記憶する記憶部とを備えた情報処理装置による署名情報処理方法である。処理部は、データから署名情報を抽出して記憶部に格納する抽出処理を行ない、データに対して情報の処理を実行した後、処理の実行後のデータに含まれる署名情報を記憶部に格納されている署名情報に置換する置換処理を行なう。
本発明によれば、署名が付与されたデータに対して処理を行なう際に、署名の有効性が損なわれることを防ぐことが可能である。
以下、図面を参照しながら本発明を実施するための最良の形態(以下、「実施形態」という)を説明する。
≪第1実施形態≫
以下、図面を参照しながら本発明の第1実施形態について説明する。
図1は、第1実施形態におけるシステムの構成を示す図である。図1に示すように、本システムは、署名装置110と、情報処理装置としての中継装置120と、検証装置130とが、ネットワーク140を介して相互に通信可能にされている。ここでは、署名が付与されたデータ、すなわち、署名に関する情報である署名情報を含んだデータが、署名装置110から中継装置120を介して検証装置130に送信される。署名情報に関する詳細な説明は、図4を参照して後記する。本実施形態では、署名が付与されたデータの例として、XML署名が付与されたXMLデータを用いることにする。以下では、各装置間で交換されるXMLデータをメッセージとも記すことにする。
署名装置110は、送信するメッセージに対して署名を付与する署名付与部111と、メッセージの送受信を行う通信処理部112とから構成される。
中継装置120は、メッセージの送受信を行う通信処理部121と、受信したメッセージに対して処理を行なうメッセージ処理部122と、受信したメッセージに含まれる署名情報を抽出する署名情報抽出部123と、送信するメッセージに含まれる署名情報を置換する署名情報置換部124と、署名情報抽出部123によって抽出された署名情報を記憶しておく署名情報記憶部125とから構成される。署名情報記憶部125は、参照先要素を記憶しておく参照先要素記憶部126と、署名対象情報を記憶しておく署名対象情報記憶部127とから構成される。参照先要素および署名対象情報に関する詳細な説明は、図4を参照して後記する。また、本実施形態では、署名情報抽出部123と、署名情報置換部124とによって署名情報処理方法が実施される。
検証装置130は、メッセージの送受信を行なう通信処理部131と、メッセージに付与された署名の検証を行なう署名検証部132とから構成される。
図2は、図1に示した各装置のハードウェア構成を示す図である。図1に示した署名装置110と、中継装置120と、検証装置130とは、図2に示すような一般的な計算機201を用いて実現することができる。
計算機201は、情報を処理する処理部としてのCPU(Central Processing Unit)205と、情報を記憶する記憶部としてのメモリ206と、ハードディスクなどの記憶装置207と、キーボードやマウスなどの入力装置203と、ディスプレイなどの出力装置204と、ネットワークに接続するための通信装置202とを備える。計算機201は、通信装置202を介して例えばインターネットなどのネットワーク140に接続している。計算機201では、CPU205が、記憶装置207からメモリ206上に呼び出された所定のプログラムを実行することにより各機能が実現される。
なお、本実施形態では、署名、中継および検証の各機能が、別の計算機に実装され、それぞれを署名装置110、中継装置120、検証装置130とする場合を例として説明するが、署名、中継および検証の各機能のうち、複数の機能が同一計算機に実装されることとしてもよい。例えば、中継および検証の機能が、同一計算機に実装されることとしてもよい。
図3は、図1に示したシステムが実行する処理の流れを示す図である。図3を参照して(適宜図1および図2参照)、システムが実行する処理について説明する。
署名装置110において、署名付与部111は、送信するメッセージに対してXML署名を付与する(ステップS301)。本処理は、一般的に実施されているXML署名の処理と同様である。通信処理部112は、署名済みのメッセージを中継装置120に送信する(ステップS302)。
中継装置120において、通信処理部121は、署名装置110の通信処理部112から送信されたメッセージを受信する(ステップS303)。そして、署名情報抽出部123は、受信したメッセージに含まれる署名情報を抽出し、署名情報記憶部125に格納する(ステップS304)。この抽出処理の詳細については、図5を参照して後記する。次に、メッセージ処理部122は、メッセージに対して何らかの処理を行なう(ステップS305)。そして、署名情報置換部124は、送信するメッセージに含まれる署名情報を、署名情報記憶部125に格納された署名情報で置換する(ステップS306)。この置換処理の詳細については、図9を参照して後記する。次に、通信処理部121は、置換されたメッセージを検証装置130に送信する(ステップS307)。
検証装置130において、通信処理部131は、中継装置120の通信処理部121から送信されたメッセージを受信する(ステップS308)。そして、署名検証部132は、受信したメッセージに付与されている署名を検証する(ステップS309)。
図4は、XML署名の付与されたメッセージの例を示す図である。図4を参照して(適宜図1参照)、XML署名の付与されたメッセージについて説明する。なお、以下の説明では、名前空間プレフィックス「ds」を用いるが、名前空間プレフィックス「ds」は、XML署名で規定される名前空間URL(Uniform Resource Locator)に対応しているものとする。
メッセージに含まれる署名情報は、署名に関する情報を意味する。署名装置110は、所定のアルゴリズムに基づいて、この署名情報から出力値を生成し、生成した出力値および署名情報を、中継装置120を介して検証装置130に送信する。検証装置130は、出力値および署名情報を受信し、前記したアルゴリズムに基づいて、受信した署名情報から出力値を生成し、生成した出力値と受信した出力値とが一致することを確認する。このような署名の技術によって、署名情報の改ざんを防止することができる。
署名情報には、署名対象情報、参照先要素などがある。署名対象情報は、前記した出力値としての署名値を算出する際に用いる情報であり、参照先要素は、前記した出力値としてのダイジェスト値を算出する際に用いる情報である。
図4に示した例では、02行目に示された情報(名前に関する情報)、03〜05行目に示された情報(カード番号に関する情報)が参照先要素であり、署名装置110は、それぞれの参照先要素からそれぞれのダイジェスト値を生成して、生成したそれぞれのダイジェスト値を、11行目に示されたダイジェスト値、例えば6fyXrYpG...(省略)、15行目に示されたダイジェスト値、例えばfvjUGVLI...(省略)としてメッセージに挿入する。
また、07〜17行目に示された情報が署名対象情報であり、署名装置110は、署名対象情報からそれぞれの署名値を生成して、生成した署名値を、18行目に示された署名値、例えばt55PNG2x...(省略)としてメッセージに挿入する。
図5は、図1に示した署名情報抽出部123における抽出処理の流れを示す図である。図5を参照して(適宜図1ないし図4参照)、署名情報抽出部123における抽出処理について説明する。
署名情報抽出部123は、受信したメッセージ内に含まれるすべての<ds:Signature>要素について、以下に説明する署名情報抽出処理(ステップS502〜ステップS509)を行なう(ステップS501)。署名情報抽出処理では、署名情報抽出部123は、対象とする<ds:Signature>要素内に含まれる<ds:SignatureValue>要素の内容を署名値として取得する(ステップS502)。図4に示したメッセージ例の場合、署名値は“t55PNG2x...(省略)”となる。次に、署名情報抽出部123は、<ds:Signature>要素に含まれる署名対象情報(例えば<ds:SignedInfo>要素)を取得し、取得した署名対象情報内に、署名対象情報の祖先要素で宣言されている必要な名前空間宣言を取り込む(ステップS503)。祖先要素で宣言されている名前空間宣言の取り込み処理は、前記した非特許文献2などに記載された処理の一部として一般的に実施されているものである。図4に示したメッセージ例の場合、祖先要素の名前空間宣言を取り込んだ後の署名対象情報は次のようになる。
<ds:SignedInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
...(省略)
<ds:Reference URI="#id-name">
...(省略)
<ds:DigestValue>6fyXrYpG...(省略)</ds:DigestValue>
</ds:Reference>
<ds:Reference URI="#id-card">
...(省略)
<ds:DigestValue>fvjUGVLI...(省略)</ds:DigestValue>
</ds:Reference>
</ds:SignedInfo>
次に、署名情報抽出部123は、ステップS502で取得した署名値をキーにして、ステップS503で取得した署名対象情報を署名対象情報記憶部127に格納する(ステップS504)。署名対象情報は、名前空間宣言が取り込まれた状態で署名対象情報記憶部127に格納される。署名値および署名対象情報は、それぞれ署名値127a(図6参照)および署名対象情報127b(図6参照)として対応付けられて署名対象情報記憶部127(図6参照)に格納される。
次に、署名情報抽出部123は、署名対象情報内のすべての<ds:Reference>要素について、以下に説明する参照先要素の取得処理(ステップS506〜ステップS508)を行なう(ステップS505)。参照先要素の取得処理では、署名情報抽出部123は、対象とする<ds:Reference>要素内に含まれる<ds:DigestValue>要素の内容をダイジェスト値として取得する(ステップS506)。図4に示したメッセージ例の最初に出現する<ds:Reference>要素(09〜12行目)の場合、ダイジェスト値は“6fyXrYpG...(省略)”となる。
次に、署名情報抽出部123は、対象とする<ds:Reference>要素の参照先要素を取得し、取得した参照先要素内に、参照先要素の祖先要素で宣言されている必要な名前空間宣言を取り込む(ステップS507)。図4に示したメッセージ例の最初に出現する<ds:Reference>要素(09〜12行目)の場合、<ds:Reference>要素はURI=”#id-name”属性を持つ。これは、同じXMLデータ内で、Id属性の値として”id-name”という値を持つ属性を持つ要素を参照していることを表す。したがって、参照先要素は<or:name>要素である。このようにして<or:name>要素を取得し、<or:name>要素の祖先要素で宣言されている名前空間宣言を取り込む。祖先要素で宣言されている名前空間宣言を取り込んだ後の参照先要素は次のようになる。
<or:name Id="id-name" xmlns:or="http://example.com/order">John</or:name>
次に、署名情報抽出部123は、ステップS506で取得したダイジェスト値をキーにして、ステップS507で取得した参照先要素を参照先要素記憶部126に格納する(ステップS508)。参照先要素は、名前空間宣言が取り込まれた状態で参照先要素記憶部126に格納される。ダイジェスト値および参照先要素は、それぞれダイジェスト値126a(図7参照)および参照先要素126bとして対応付けられて参照先要素記憶部126(図7参照)に格納される。
続いて、署名情報抽出部123は、LOOP処理の終端に達すると(ステップS509)、ステップS505に戻り、LOOP処理を繰り返す。署名情報抽出部123は、ステップS505で開始されるLOOP処理を終了して、LOOP処理の終端に達すると(ステップS510)、ステップS501に戻り、LOOP処理を繰り返す。署名情報抽出部123は、ステップS501で開始されるLOOP処理を終了すると、抽出処理を終了する。
図6は、図1に示した署名対象情報記憶部127に格納される情報例を示す図である。図6に示すように、署名対象情報記憶部127に格納される情報は、署名値127aと、署名対象情報127bとが対応付けられたものである。
図7は、図1に示した参照先要素記憶部126に格納される情報例を示す図である。図7に示すように、参照先要素記憶部126に格納される情報は、ダイジェスト値126aと、参照先要素126bとが対応付けられたものである。
図8は、図1に示したメッセージ処理部122による処理後のメッセージの例を示す図である。図8を参照して(適宜図1参照)、処理後のメッセージについて説明する。
メッセージ処理部122は、メッセージに対して所定の処理を行なう。つまり、メッセージ処理部122による処理前のメッセージ(図4参照)と処理後のメッセージ(図8参照)とでは、メッセージの形式が異なっている。図8に示すように、例えば、名前空間URI"http://example.com/order"に対応付けられた名前空間プレフィックスが”or”から”ns”に変更されている。また、図8に示すように、例えば、処理前のメッセージ(図4参照)では<or:card>要素内に改行およびスペースが含まれているが、処理後のメッセージ(図8参照)では<ns:card>要素内に改行およびスペースが含まれていない。これらの変更により、処理後のメッセージ(図8参照)から算出されるダイジェスト値および署名値が、処理前のメッセージ(図4参照)に挿入されているダイジェスト値および署名値と異なるために、処理後のメッセージ(図8参照)では、署名の有効性が損なわれている。
図9は、図1に示した署名情報置換部124における置換処理の流れを示す図である。図9を参照して(適宜図1ないし図8参照)、署名情報置換部124における置換処理について説明する。
署名情報置換部124は、送信するメッセージ内に含まれるすべての<ds:Signature>要素について、以下に説明する署名情報置換処理(ステップS902〜ステップS909)を行なう(ステップS901)。署名情報置換処理では、署名情報置換部124は、対象とする<ds:Signature>要素内に含まれる<ds:SignatureValue>要素の内容を署名値として取得する(ステップS902)。
次に、署名情報置換部124は、署名対象情報記憶部127に、ステップS902で取得した署名値と一致する署名値を有する署名対象情報(例えば<ds:SignedInfo>要素)が存在するか否かを判定する(ステップS903)。署名対象情報記憶部127に、署名値が一致する署名対象情報が存在する場合には(ステップS903で「Yes」)、署名情報置換部124は、メッセージ内の署名対象情報を署名対象情報記憶部127内の値に置換する(ステップS904)。つまり、署名情報置換部124は、ステップS902によって取得した署名値と一致する署名値127aと対応付けられた署名対象情報127bを、署名対象情報記憶部127から取得し、ステップS903によって存在が確認された署名対象情報を、取得した署名対象情報127bで置換する。署名対象情報記憶部127に、署名値が一致する署名対象情報が存在しない場合には(ステップS903で「No」)、ステップS905に進む。
次に、署名情報置換部124は、ステップ902で取得した署名値を含んだ署名対象情報内のすべての<ds:Reference>要素について、以下に説明する参照先要素の置換処理(ステップS906〜ステップS908)を行なう(ステップS905)。参照先要素の置換処理では、署名情報置換部124は、対象とする<ds:Reference>要素内に含まれる<ds:DigestValue>要素の内容をダイジェスト値として取得する(ステップS906)。次に、署名情報置換部124は、参照先要素記憶部126に、ステップS906で取得したダイジェスト値と一致するダイジェスト値を有する参照先要素が存在するか否かを判定する(ステップS907)。参照先要素記憶部126に、ダイジェスト値が一致する参照先要素が存在する場合には(ステップS907で「Yes」)、署名情報置換部124は、メッセージ内の参照先要素を参照先要素記憶部126内の値に置換する(ステップS908)。つまり、署名情報置換部124は、ステップS906によって取得したダイジェスト値と一致するダイジェスト値126aと対応付けられた参照先要素126bを、参照先要素記憶部126から取得し、ステップS907によって存在が確認された参照先要素を、取得した参照先要素126bで置換する。参照先要素記憶部126に、ダイジェスト値が一致する参照先要素が存在しない場合には(ステップS907で「No」)、ステップS909に進む。
続いて、署名情報置換部124は、LOOP処理の終端に達すると(ステップS909)、ステップS905に戻り、LOOP処理を繰り返す。署名情報置換部124は、ステップS905で開始されるLOOP処理を終了して、LOOP処理の終端に達すると(ステップS910)、ステップS901に戻り、LOOP処理を繰り返す。署名情報置換部124は、ステップS901で開始されるLOOP処理を終了すると、置換処理を終了する。
図10は、図1に示した署名情報置換部124による置換処理を行なった後のメッセージの例を示す図である。図10を参照して(適宜図1参照)、置換処理後のメッセージについて説明する。
中継装置120の通信処理部121は、置換処理を行なった後のメッセージ(図10参照)を検証装置130に送信する。送信されたメッセージは、検証装置130の通信処理部131により受信される。検証装置130の署名検証部132は、一般的なXML署名で実施されている技術(例えば、図4を用いて説明した検証装置130による検証技術)により、受信したメッセージに含まれるXML署名の検証を行なう。検証装置130が受信するメッセージは、図10に示すように、署名の有効性が保たれているため、署名検証部132では署名検証を成功する。
このように、本実施形態では、中継装置120の署名情報抽出部123が、データから署名情報を抽出して署名情報記憶部125に格納する抽出処理を行ない、メッセージ処理部122がデータに対して処理を実行した後、データに含まれる署名情報を署名情報記憶部125に格納されている署名情報に置換する置換処理を行なう。したがって、中継装置120の処理において署名の有効性を損なうような処理をしている場合でも、署名の有効性を損なう前の状態に戻すことができる。これにより、署名が付与されたデータに対して処理を行なう際に、署名の有効性が損なわれることを防ぐことが可能である。
本発明は、署名を用いたシステムにおいて幅広く適用することができる。例えば、旅行の予約システムにおいて、署名の付与された旅行予約情報を、旅行代理店、旅行企画会社、宿泊施設等に転送する際に、署名の有効性が損なわれる可能性がある。本発明を旅行予約システムに適用することで署名の有効性を確保したまま予約情報等のデータを転送することができる。また、例えば、情報のライフサイクルに応じてデータを移動することで最適なデータ配置を行なう情報ライフサイクルマネジメントが検討されている。情報ライフサイクルマネジメントにおいて署名の付与されたデータを移動する際に、署名の有効性が損なわれる可能性がある。本発明を情報ライフサイクルマネジメントに適用することで、署名の有効性を確保したままデータの配置を行なうことが可能になる。
≪第2実施形態≫
以下、図面を参照しながら本発明の第2実施形態について説明する。
近年の情報システムでは、ネットワーク上に公開されている様々なサービスを利用してシステムを構築することが多い。このようなシステムにおいて、利用するサービス内で署名の有効性を損なうような処理を行なう可能性がある。
第1実施形態で説明した方法により、署名の有効性を損なう処理を行なった場合でも、署名の有効性を確保することができるようになる。しかし、サービスが複数存在する場合、署名の有効性が損なわれる箇所が分からないと、第1実施形態で説明した抽出処理や置換処理を実施する箇所を特定することができない。本実施形態では、様々なサービスを利用してシステムを構築する際に、署名の有効性が損なわれる箇所を検出し、第1実施形態で説明した技術を利用して、システム全体に渡って署名の有効性を確保する技術について説明する。
図11は、第2実施形態におけるシステムの構成を示す図である。図11に示すように、本システムは、情報処理装置1110と、サービス提供装置A(1120)と、サービス提供装置B(1130)とにより構成される。ここでは、サービス提供装置が2つ存在する場合を例として説明するが、サービス提供装置の数は特に限定されるものではない。各装置間では、データ(例えば、XMLデータ)が交換される。XMLデータ(メッセージ)にはXML署名が付与されていることがある。本実施形態においては、例えば、情報処理装置1110を構築または運用する管理者が、情報処理装置1110を用いて署名の有効性が損なわれる箇所を検出する状況が想定される。また、本実施形態は、本管理者がシステムを構築する際に、サービス提供装置A(1120)、サービス提供装置B(1130)の内部で行なわれる処理について把握していない状況において、特に有効である。
情報処理装置1110は、通信処理部121、メッセージ処理部122、署名情報抽出部123、署名情報置換部124、署名情報記憶部125、署名有効性検証部1111、署名有効性記憶部1112により構成される。メッセージ処理部122、通信処理部121、署名情報抽出部123、署名情報置換部124、署名情報記憶部125は、第1実施形態で説明したものと同じである。本実施形態では、第1実施形態と同様の構成である署名情報抽出部123および署名情報置換部124に加えて、署名有効性検証部1111によって署名情報処理方法が実施される。
情報処理装置1110は、サービス提供装置A(1120)、サービス提供装置B(1130)の提供するサービスを利用して、一つのビジネスプロセスを実行する。サービス提供装置A(1120)の提供するサービスを利用する場合には、情報処理装置1110からサービス提供装置A(1120)にメッセージが送信される。サービス提供装置A(1120)では、受信したメッセージに対して何らかの処理を行なった後、情報処理装置1110にメッセージを返信する。情報処理装置1110から送信されるメッセージおよびサービス提供装置A(1120)から返信されるメッセージには、XML署名が付与されている場合がある。
情報処理装置1110から送信されるメッセージにXML署名が付与されている場合には、サービス提供装置A(1120)における処理の際にXML署名の有効性が損なわれる可能性がある。その場合、サービス提供装置A(1120)から返信されるメッセージには、有効性の損なわれたXML署名が付与されていることがある。また、第1実施形態の場合と同様に、情報処理装置1110内のメッセージ処理部122においてXML署名の有効性を損なう処理を実施することもある。このように、情報処理装置1110において、サービス提供装置によるサービスを利用してビジネスプロセスを実行する際には、サービス提供装置、情報処理装置1110などにおいて署名の有効性が損なわれる可能性がある。
図12は、図11に示したシステムが実行する処理の流れを示す図である。図12を参照して(適宜図11参照)、システムが実行する処理について説明する。なお、以下で説明する処理は、主にシステムの構築時に実施されることを想定している。前記したように、本システムは、情報処理装置1110がサービス提供装置A(1120)、サービス提供装置B(1130)を利用して1つのビジネスプロセスを実現する。
まず、例えば、システムの管理者が端末(不図示)を介して情報処理装置1110に対してテストデータを送信する。これによって、通信処理部121は、テストデータを受信し、署名有効性検証部1111は、通信処理部121が受信したテストデータに基づいて、ビジネスプロセスを開始する(ステップS1201)。ビジネスプロセスの実行の際に、署名有効性検証部1111は、各装置間で交換されるすべてのメッセージに関して、署名の有効性の検証を行なう(ステップS1202)。署名の有効性の検証についての詳細な説明は、図13を参照して後記する。
署名有効性検証部1111は、すべての有効性が保たれているか否かを判定し(ステップS1203)、すべての有効性が保たれている場合には(ステップS1203で「Yes」)、本処理を終了する。有効性が保たれていないメッセージがある場合には(ステップS1203で「No」)、署名有効性検証部1111は、有効性が保たれていないメッセージに対して、署名情報の抽出、置換処理の設定を行い(ステップS1204)、ステップS1201に戻る。ステップS1204において署名情報の抽出、置換処理の設定がなされたメッセージについては、次のステップS1201で開始されるビジネスプロセスによって署名情報の抽出、置換処理が実行され、署名の有効性が保たれる形式に変更される可能性がある。署名情報の抽出、置換処理の設定がなされるメッセージは、有効性が保たれていないメッセージのうち、全部であってもよいし、一部が選択されたものであってもよい。署名情報の抽出、置換処理の設定を行なうメッセージの効率的な選択については、図14を参照して後記する。
図13は、図12に示した署名の有効性検証処理(ステップS1202)の詳細な流れを示す図である。図13を参照して(適宜図11参照)、署名の有効性検証処理について説明する。
まず、署名有効性検証部1111は、各装置間で交換されるすべてのメッセージを取得する(ステップS1301)。そして、取得したすべてのメッセージについて、メッセージの有効性を検証する処理(ステップS1303〜ステップS1306)を行なう(ステップS1302)。メッセージの有効性を検証する処理では、取得したメッセージに含まれるすべての<ds:Reference>要素について、有効性の検証結果取得処理(ステップS1304〜ステップS1305)を行なう(ステップS1303)。有効性の検証結果取得処理では、まず、署名有効性検証部1111は、<ds:Reference>要素内のダイジェスト値(<ds:DigestValue>要素の内容)を取得するとともに、対象とする<ds:Reference>要素の参照先要素を取得し、参照先要素からダイジェスト値を算出して取得する。このようにして取得した2つのダイジェスト値が一致するか否かを検証する(ステップS1304)。この検証処理は、通常のXML署名の検証処理の一部として一般的に実施されている処理である。署名有効性検証部1111は、検証結果を署名有効性記憶部1112に格納する(ステップS1305)。
続いて、署名有効性検証部1111は、LOOP処理の終端に達すると(ステップS1306)、ステップS1303に戻り、LOOP処理を繰り返す。署名有効性検証部1111は、ステップS1303で開始されるLOOP処理を終了して、LOOP処理の終端に達すると(ステップS1307)、ステップS1302に戻り、LOOP処理を繰り返す。署名有効性検証部1111は、ステップS1302で開始されるLOOP処理を終了すると、有効性検証処理を終了する。
図14は、図11に示した署名有効性記憶部1112に格納される情報例を示す図である。図14を参照して(適宜図11参照)、署名有効性記憶部1112に格納される情報について説明する。
署名有効性記憶部1112に格納される情報は、ステップS1305(図13参照)において、署名有効性検証部1111によって格納される。署名有効性記憶部1112に格納される情報は、ダイジェスト値1401と、検証対象のメッセージを取得した箇所に関する情報と、時刻1404と、署名有効性1405とが対応付けられたものである。
ダイジェスト値1401は、メッセージ内に<ds:DigestValue>要素の内容として含まれていたダイジェスト値である。
検証対象のメッセージを取得した箇所に関する情報としては、対象サービス1402、IN/OUT1403などを用いることが可能である。例えば、対象サービス1402が「A」となっている場合には、情報処理装置1110とサービス提供装置Aとの間で交換されるメッセージが取得されたことを表す。対象サービス1402としては、サービス提供装置を一意に識別可能な情報、例えば、サービス提供装置の識別情報、IPアドレス、URLなどを用いることが可能である。また、IN/OUT1403が「OUT」となっている場合には、情報処理装置1110から送信されるメッセージを取得したことを表す。IN/OUT1403が「IN」となっている場合には、情報処理装置1110が受信するメッセージを取得したことを表す。
時刻1404は、メッセージを取得した時刻である。
署名有効性1405は、ステップS1304において実施した署名の有効性の検証結果である。すなわち、署名有効性1405は、ステップS1303において2つのダイジェスト値が一致した場合には「有効」が、一致しなかった場合には「無効」が、署名有効性検証部1111によって格納される。
このようにして、署名有効性検証部1111が、情報処理装置1110と各サービス提供装置との間で交換されるすべてのメッセージについて署名の有効性を検証する。有効性の検証の結果、すべてのメッセージについて署名が有効な場合、すなわち、ステップS1203の処理において、署名有効性検証部1111が、署名有効性記憶部1112の署名有効性1405がすべて「有効」であると判定した場合には、図12に示した処理を終了する。この場合、ビジネスプロセスにおいて署名の有効性を損なう処理をする箇所が存在しなかったことを表す。一方、有効ではない署名が含まれる場合、すなわち、ステップS
1203の処理において、署名有効性検証部1111が、署名有効性記憶部1112の署名有効性1405に「無効」が含まれると判定した場合には、署名の有効性を損なう処理が存在することを表す。この場合、第1実施形態で説明した方法により、署名情報の抽出、置換処理を行なうことで署名の有効性を確保することができる。
署名有効性1405に「無効」が含まれる場合、署名有効性検証部1111は、署名有効性1405が「無効」であるデータのダイジェスト値1401と同じダイジェスト値1401を持ち、署名有効性1405が「有効」である箇所におけるメッセージを、署名情報の抽出処理が行なわれるメッセージとして選択することが好ましい。図14に示した署名有効性記憶部1112の例の場合、データ1407およびデータ1408において署名有効性1405が「無効」となっている。データ1407およびデータ1408は、いずれもダイジェスト値1401が「6fyXrYpG...(省略)」である。そこで、ダイジェスト値1401が「6fyXrYpG...(省略)」で、署名有効性1405が「有効」であるデータ1406で示される箇所において、署名情報の抽出処理を行なう。すなわち、データ1406では、対象サービス1402が「A」、IN/OUT1403が「OUT」であることから、情報処理装置1110からサービス提供装置A(1120)に送信するメッセージにおいて、第1実施形態で説明した署名情報の抽出処理を行なうように設定する。
また、署名有効性1405に「無効」が含まれる場合、署名有効性検証部1111は、署名有効性1405が「無効」になっている箇所のうち、時刻1404が一番早い箇所におけるメッセージを、署名情報の置換処理が行なわれるメッセージとして選択することが好ましい。図14に示した署名有効性記憶部1112の例の場合、データ1407およびデータ1408において署名有効性1405が「無効」となっているが、データ1407の方が早い時刻1404を有するため、データ1407が示す箇所において、署名情報の置換処理を行なうように設定する。すなわち、データ1407では、対象サービスが「A」、IN/OUT1403が「IN」であることから、サービス提供装置A(1120)から情報処理装置1110に対して送信されるメッセージにおいて、第1実施形態で説明した署名情報の置換処理を行なうように設定する。
前記したように、署名情報の抽出処理、置換処理の設定をした後、再び情報処理装置1110にテストデータを送信するなどしてビジネスプロセスを開始し、署名の有効性の検証を行なう。署名有効性検証部1111は、ステップS1203において、署名有効性記憶部1112の署名有効性1405がすべて「有効」であると判定するまで、ステップS1204、ステップS1201およびステップS1202を繰り返す。
このように、署名有効性検証部1111は、ビジネスプロセスにおける複数箇所で署名の有効性を検証することにより(例えば、各装置間で交換されるメッセージの署名の有効性を検証することにより)、署名が有効である箇所および署名が無効である箇所を検出し、署名が有効である箇所において、署名情報の抽出処理の設定、署名が無効である箇所において、署名情報の置換処理の設定を行なうことができる。また、署名有効性検証部1111に第1実施形態で説明した中継装置120の構成を追加することで、適切な署名情報の抽出、置換処理の設定を行なうことができる。
本実施形態では、署名の有効性を検証する際、ダイジェスト値の検証を行なう場合を例として説明した。署名の有効性を検証する際に、ダイジェスト値の検証に加え、署名値の検証を行なってもよい。
なお、本実施形態では、各装置間で交換されるメッセージについて署名の有効性検証を行なったが、他の箇所で署名の有効性の検証を行なってもよい。例えば、情報処理装置1110内のメッセージ処理部122における処理の途中で署名の有効性の検証を行なってもよい。
また、本実施形態では、メッセージを取得した箇所を表す情報として、対象サービス1402およびIN/OUT1403の情報を用いたが、他の情報を用いてメッセージを取得した箇所を表してもよい。例えば、メッセージ処理部122における処理は、ビジネスプロセスとして記述されていることがある。このようなビジネスプロセスを記述するための言語として、BPEL4WS(Business Process Execution Language for Web Services)などがある。ビジネスプロセスは、アクティビティと呼ばれる複数のステップにより構成される。このようにメッセージ処理部122における処理がビジネスプロセスとして記述されている場合、ビジネスプロセスを構成する各アクティビティの前後において署名の有効性の検証を行なってもよい。
また、本実施形態では、メッセージを取得した箇所を表す情報として、対象サービス1402およびIN/OUT1403の情報を用いたが、メッセージ処理部122におけるアクティビティの前後で署名の有効性の検証を行なう場合、アクティビティを特定する識別子を用いてメッセージを取得した箇所を表してもよい。
第1実施形態におけるシステムの構成を示す図である。 図1に示した各装置のハードウェア構成を示す図である。 図1に示したシステムが実行する処理の流れを示す図である。 署名の付与されたメッセージの例を示す図である。 図1に示した署名情報抽出部における抽出処理の流れを示す図である。 図1に示した署名対象情報記憶部に格納される情報例を示す図である。 図1に示した参照先要素記憶部に格納される情報例を示す図である。 図1に示したメッセージ処理部による処理後のメッセージの例を示す図である。 図1に示した署名情報置換部における置換処理の流れを示す図である。 図1に示した署名情報置換部による置換処理を行なった後のメッセージの例を示す図である。 第2実施形態におけるシステムの構成を示す図である。 図11に示したシステムが実行する処理の流れを示す図である。 図12に示した署名の有効性検証処理の詳細な流れを示す図である。 図11に示した署名有効性記憶部に格納される情報例を示す図である。 従来技術による処理の流れを示す図である。
符号の説明
110 署名装置
111 署名付与部
112 通信処理部
120 中継装置
121 通信処理部
122 メッセージ処理部
123 署名情報抽出部
124 署名情報置換部
125 署名情報記憶部
126 参照先要素記憶部
127 署名対象情報記憶部
130 検証装置
131 通信処理部
132 署名検証部
140 ネットワーク
201 計算機
202 通信装置
203 入力装置
204 出力装置
205 CPU(処理部)
206 メモリ(記憶部)
207 記憶装置
240 ネットワーク
1110 情報処理装置
1111 署名有効性検証部
1112 署名有効性記憶部
1120,1130 サービス提供装置
1401 ダイジェスト値
1402 対象サービス
1403 IN/OUT
1404 取得時刻
1405 署名有効性

Claims (9)

  1. 署名に関する情報である署名情報を含んだデータに対して処理を実行し、情報を処理する処理部と、情報を記憶する記憶部とを備えた情報処理装置による署名情報処理方法であって、
    前記処理部は、
    前記データから署名情報を抽出して前記記憶部に格納する抽出処理を行ない、
    前記データに対して情報の処理を実行した後、
    当該情報の処理の実行にかかるデータに含まれる署名情報を前記記憶部に格納されている署名情報に置換する置換処理を行なうこと
    を特徴とする署名情報処理方法。
  2. 前記処理部は、
    前記署名情報として署名対象情報が前記データに含まれている場合において、
    前記データから署名対象情報を抽出して前記記憶部に格納し、
    前記データに対して情報の処理を実行した後、
    当該情報の処理の実行にかかるデータに含まれる署名対象情報を前記記憶部に格納されている署名対象情報に置換すること
    を特徴とする請求項1に記載の署名情報処理方法。
  3. 前記処理部は、
    前記データから署名対象情報を抽出するとともに、前記データから署名値を抽出し、
    抽出した署名対象情報および署名値を対応付けて前記記憶部に格納し、
    前記データに含まれる署名対象情報を置換する際に、
    前記データに含まれる署名値と一致する署名値と対応付けられた署名対象情報を前記記憶部から取得し、
    取得した署名対象情報に前記データに含まれる署名対象情報を置換すること
    を特徴とする請求項2に記載の署名情報処理方法。
  4. 前記処理部は、
    前記署名情報として参照先要素が前記データに含まれている場合において、
    前記データから参照先要素を抽出して前記記憶部に格納し、
    前記データに対して処理を実行した後、
    当該情報の処理の実行にかかるデータに含まれる参照先要素を前記記憶部に格納されている参照先要素に置換すること
    を特徴とする請求項1に記載の署名情報処理方法。
  5. 前記処理部は、
    前記データから参照先要素を抽出するとともに、前記データからダイジェスト値を抽出し、
    抽出した参照先要素およびダイジェスト値を対応付けて前記記憶部に格納し、
    前記データに含まれる参照先要素を置換する際に、
    前記データに含まれるダイジェスト値と一致するダイジェスト値と対応付けられた参照先要素を前記記憶部から取得し、
    取得した参照先要素に前記データに含まれる参照先要素を置換すること
    を特徴とする請求項4に記載の署名情報処理方法。
  6. 前記処理部は、
    ビジネスプロセスにおける複数箇所で署名の有効性を検証することにより、署名が有効である箇所および署名が無効である箇所を検出し、
    署名が有効である箇所において、前記抽出処理を行ない、
    署名が無効である箇所において前記置換処理を行なうこと
    を特徴とする請求項1ないし請求項5のいずれか1項に記載の署名情報処理方法。
  7. 前記処理部は、
    署名が無効である箇所のうち、データの取得時刻が最も早い箇所において前記置換処理を行なうように設定する処理および再びビジネスプロセスを実行する処理を、すべての箇所において署名が有効になるまで繰り返すこと
    を特徴とする請求項6に記載の署名情報処理方法。
  8. 請求項1ないし請求項7のいずれか1項に記載の署名情報処理方法をコンピュータに実行させるプログラム。
  9. 署名に関する情報である署名情報を含んだデータに対して処理を実行し、情報を処理する処理部と、情報を記憶する記憶部とを備えた情報処理装置であって、
    前記処理部は、
    前記データから署名情報を抽出して前記記憶部に格納する抽出処理を行ない、
    前記データに対して情報の処理を実行した後、
    当該情報の処理の実行にかかるデータに含まれる署名情報を前記記憶部に格納されている署名情報に置換する置換処理を行なうこと
    を特徴とする情報処理装置。
JP2007055679A 2007-03-06 2007-03-06 署名情報処理方法、そのプログラムおよび情報処理装置 Expired - Fee Related JP4989259B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007055679A JP4989259B2 (ja) 2007-03-06 2007-03-06 署名情報処理方法、そのプログラムおよび情報処理装置
US12/038,860 US20080222421A1 (en) 2007-03-06 2008-02-28 Signature information processing method, its program and information processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007055679A JP4989259B2 (ja) 2007-03-06 2007-03-06 署名情報処理方法、そのプログラムおよび情報処理装置

Publications (2)

Publication Number Publication Date
JP2008219585A JP2008219585A (ja) 2008-09-18
JP4989259B2 true JP4989259B2 (ja) 2012-08-01

Family

ID=39742837

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007055679A Expired - Fee Related JP4989259B2 (ja) 2007-03-06 2007-03-06 署名情報処理方法、そのプログラムおよび情報処理装置

Country Status (2)

Country Link
US (1) US20080222421A1 (ja)
JP (1) JP4989259B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2532134B1 (en) * 2010-02-26 2013-06-12 NEC Europe Ltd. A method for processing a soap message within a network and a network
JP5763943B2 (ja) * 2011-03-24 2015-08-12 株式会社東芝 情報処理装置及びプログラム
DE102016104530A1 (de) * 2016-03-11 2017-09-14 Huf Hülsbeck & Fürst Gmbh & Co. Kg Verfahren zur Kontrolle des Zugriffs auf Fahrzeuge
US20200329044A1 (en) * 2018-02-21 2020-10-15 Ntt Docomo, Inc. Radio communication system, security proxy device, and relay device

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5465299A (en) * 1992-12-03 1995-11-07 Hitachi, Ltd. Electronic document processing system and method of forming digital signature
JP3730498B2 (ja) * 2000-09-19 2006-01-05 株式会社東芝 署名用記憶媒体
JP4366040B2 (ja) * 2002-03-07 2009-11-18 インターナショナル・ビジネス・マシーンズ・コーポレーション ネットワークサービスシステム、サーバ及びプログラム
US7774831B2 (en) * 2002-12-24 2010-08-10 International Business Machines Corporation Methods and apparatus for processing markup language messages in a network
US7340611B2 (en) * 2003-01-28 2008-03-04 Microsoft Corporation Template-driven XML digital signature
JP4676136B2 (ja) * 2003-05-19 2011-04-27 株式会社日立製作所 文書構造検査方法および装置
US7308458B2 (en) * 2003-06-11 2007-12-11 Wtviii, Inc. System for normalizing and archiving schemas
US7685511B2 (en) * 2003-08-29 2010-03-23 Sun Microsystems, Inc. Framework for providing and using schema data for markup languages
US7539869B1 (en) * 2003-09-17 2009-05-26 Sun Microsystems, Inc. System and methods for using a signature protocol by a nonsigning client
US20050149729A1 (en) * 2003-12-24 2005-07-07 Zimmer Vincent J. Method to support XML-based security and key management services in a pre-boot execution environment
JP3945708B2 (ja) * 2004-01-23 2007-07-18 インターナショナル・ビジネス・マシーンズ・コーポレーション 情報処理システム、変換処理システム、逆変換処理システム、変換方法、変換プログラム、及び記録媒体
JP4546105B2 (ja) * 2004-02-03 2010-09-15 株式会社日立製作所 メッセージ交換方法、およびメッセージ変換システム
JP2005301576A (ja) * 2004-04-09 2005-10-27 Hitachi Ltd データ通信システムの制御方法、データ通信システム、及び情報処理装置
JP2005333233A (ja) * 2004-05-18 2005-12-02 Mitsubishi Electric Corp 電子署名装置および署名検証装置
JP4587162B2 (ja) * 2004-06-04 2010-11-24 キヤノン株式会社 情報処理装置、情報処理方法及びそのプログラム
JP2006094080A (ja) * 2004-09-24 2006-04-06 Hitachi Ltd 署名検証装置
KR100825736B1 (ko) * 2005-12-07 2008-04-29 한국전자통신연구원 무선 xml 전자 서명 서비스 제공 장치 및 그 방법

Also Published As

Publication number Publication date
US20080222421A1 (en) 2008-09-11
JP2008219585A (ja) 2008-09-18

Similar Documents

Publication Publication Date Title
JP3730498B2 (ja) 署名用記憶媒体
US7995761B2 (en) Data providing system, data receiving system, computer-readable recording medium storing data providing program, and computer-readable recording medium storing data receiving program
JP2008146601A (ja) 情報処理装置及び情報処理方法
JP4989259B2 (ja) 署名情報処理方法、そのプログラムおよび情報処理装置
WO2012093625A1 (ja) Webページ改竄検知装置及び記憶媒体
JP4546105B2 (ja) メッセージ交換方法、およびメッセージ変換システム
CN109902505A (zh) 一种电子签章的存储、验证方法和装置
US20100191864A1 (en) Message conversion method and message conversion system
JP4151432B2 (ja) Xml署名・暗号化手順生成システム
JP5108285B2 (ja) 署名方法、情報処理装置、および署名プログラム
JP4643718B2 (ja) セキュリティ強化プログラム及びセキュリティ強化装置
US8959344B2 (en) Method and system for handling defined areas within an electronic document
KR101748627B1 (ko) 문서 편집에 대한 인증이 가능한 웹 기반의 전자 문서 서비스 장치 및 그 동작 방법
JP4878193B2 (ja) 判定プログラム、判定方法及び判定装置
JP4887176B2 (ja) 属性認証システム、同システムにおける属性認証方法およびプログラム
JP2011002923A (ja) 情報処理装置及びプログラム
JP2005244719A (ja) 画像処理装置および画像処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム
JP4134094B2 (ja) 署名検証装置及び署名作成・検証システム及び署名検証方法
JP2006174055A (ja) 情報存在証明処理装置および情報利用端末装置および情報存在証明システムおよび情報存在証明方法およびプログラムおよび記録媒体
JP2007181093A (ja) タイムスタンプサーバ装置、及びタイムスタンプ発行方法、及びタイムスタンプ発行プログラム
JP7313232B2 (ja) 情報処理装置及びその制御方法、並びにプログラム
JP2004280342A (ja) Xml変換システム、方法、プログラムおよび記録媒体
KR101065937B1 (ko) 서비스 플로우 처리 방법 및 장치
JP2006094080A (ja) 署名検証装置
JP2009272720A (ja) 情報処理装置、署名方法、プログラムおよび記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100115

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120131

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120402

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120424

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120427

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150511

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees