(57)【要約】【課題】不正な署名がされることを防止する。【解決手段】署名生成装置２００は、上位装置１０１から送られた署名の対象とするコンテンツを保持し、当該コンテンツの妥当性を検証する。その際、署名対象コンテンツ部２０４によって検証される妥当性に当該コンテンツに対する署名の制限を含める。そのために、署名制限部２０５を備える。署名対象コンテンツ部２０４は、より具体的には、コンテンツの妥当性を検証するための基本書式を用意し、署名制限部２０５は、当該基本書式に対する追加の書式を含める。これにより、署名対象コンテンツ部によって検証される妥当性に当該コンテンツに対する署名の制限を含める。そして、基本書式および追加の書式は、例えば、ＸＭＬスキーマによって記述される。また、コンテンツは、例えば、請求書の文書データであり、署名の制限は、当該請求書の金額に応じた制限である。【選択図】        図１
2004172915.tif 000002
【特許請求の範囲】
【請求項１】
上位装置から送られた署名の対象とするコンテンツを保持し、当該コンテンツの妥当性を検証する署名対象コンテンツ部を備えた電子署名生成装置において、
前記署名対象コンテンツ部によって検証される妥当性に当該コンテンツに対する署名の制限を含める署名制限部を備えたことを特徴とする電子署名生成装置。
【請求項２】
前記署名対象コンテンツ部は、前記コンテンツの妥当性を検証するための基本書式を用意し、
前記署名制限部は、当該基本書式に対する追加の書式を含めることにより、前記署名対象コンテンツ部によって検証される妥当性に当該コンテンツに対する署名の制限を含めることを特徴とする請求項１記載の電子署名生成装置。
【請求項３】
前記基本書式および追加の書式は、ＸＭＬによって記述されることを特徴とする請求項２記載の電子署名生成装置。
【請求項４】
前記コンテンツは、請求書の文書データであり、前記署名の制限は、当該請求書の金額に応じた制限であることを特徴とする請求項１ないし３のいずれか１項記載の電子署名生成装置。
【請求項５】
前記コンテンツに対する署名の権限を与える署名鍵を前記上位装置に提供する署名鍵部を備え、
前記署名の制限は、前記署名鍵部によって提供される署名鍵ごとに決定されることを特徴とする請求項１ないし４のいずれか１項記載の電子署名生成装置。
【請求項６】
前記上位装置を当該署名生成装置にアクセスする端末として認証する端末認証部を備え、
前記署名の生成は、前記端末認証部によって認証された後のみ可能となることを特徴とする請求項１ないし５のいずれか１項記載の電子署名生成装置。
【請求項７】
前記署名の制限は、前記コンテンツの種類ごとに決定される署名処理可能時間であることを特徴とする請求項１記載の電子署名生成装置。
【請求項８】
前記署名対象コンテンツ部は、前記コンテンツの妥当性を検証するための基本書式を用意し、
前記署名制限部は、当該基本書式に対する追加の書式を含めることにより、前記署名対象コンテンツ部によって検証される妥当性に当該コンテンツに対する署名処理可能時間を含めることを特徴とする請求項７記載の電子署名生成装置。
【請求項９】
前記基本書式および追加の書式は、ＸＭＬによって記述されることを特徴とする請求項８記載の電子署名生成装置。
【請求項１０】
上位装置から送られた署名の対象とするコンテンツを保持し、当該コンテンツに対する署名書の送付先に対応した方式で署名を生成し、当該方式を認識する情報とともに署名書を送付する電子署名生成装置において、
前記署名書の送付先と署名の方式とを対応付ける署名方式情報を持ち、前記上位装置による署名書送付先の指定に応じた署名の方式を、当該署名方式情報から取得する署名方式部を備えたことを特徴とする電子署名生成装置。
【請求項１１】
前記署名方式部が、前記上位装置により指定される署名書送付先に応じた署名の方式を示す署名方式情報を持たないときは、前記上位装置から署名の方式を入力し、当該入力された方式を署名方式情報として保持し、署名書とともに送付先に送付することを特徴とする請求項１０記載の電子署名生成装置。
【請求項１２】
上位装置から送られた署名の対象とするコンテンツを保持し、当該コンテンツの妥当性を検証する署名対象コンテンツ部と、
前記署名対象コンテンツ部によって検証される妥当性に当該コンテンツに対する署名の制限を含める署名制限部を備えたことを特徴とする請求項１０記載の電子署名生成装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、企業等において、請求書、申請書を含む文書データ等に署名を行う際、電子的な手段によりこれを実行できる電子署名生成装置に関するものである。
【０００２】
【従来の技術】
電子的な手段による電子署名生成装置は、そのハードウェア構成については、パーソナルコンピュータ等から成る。この装置は、ユーザーのパーソナルコンピュータ等の上位装置からアクセスを受ける。
このため、電子署名生成装置は、上位装置のアクセスを認証し、ユーザーに対して署名の権限を与える署名鍵Ｋｓを提供する。そして、コンテンツｘの送信者は、署名鍵Ｋｓを使用し、電子署名生成アルゴリズムによって上記コンテンツｘから電子署名Ｓｉｇ（Ｋｓ，ｘ）を生成する（例えば、特許文献１参照）。そして、送信者は、コンテンツｘとともに、この電子署名Ｓｉｇ（Ｋｓ，ｘ）を送信する。
【０００３】
一方、コンテンツｘの受信者は、署名鍵Ｋｐを使用し、電子署名検証アルゴリズムによって電子署名Ｓｉｇ（Ｋｓ，ｘ）を処理する。そして、“Ｖｅｒ（Ｋｐ，Ｓｉｇ（Ｋｓ，ｘ））＝ｘ”を検証することによって電子署名Ｓｉｇ（Ｋｓ，ｘ）を認証する。
ここで、電子署名の生成処理は、実際にはメッセージダイジェスト処理と併用されることが多い。長いコンテンツｘからの電子署名Ｓｉｇ（Ｋｓ，ｘ）の生成はそれだけ時間がかかり、またコスト高になるからである。ここで、メッセージダイジェスト処理とは、任意長の元のコンテンツｘに対して１００〜１６０ビット程度、例えば１２８ビットの固定長のメッセージダイジェストＭ（ｘ）を生成する処理をいう。
【０００４】
この場合、送信者は、上記のようなメッセージダイジェストＭ（ｘ）に対する電子署名Ｓｉｇ（Ｋｓ，Ｍ（ｘ））を上記署名鍵Ｋｓを用いて生成し、これを上記コンテンツｘと合わせて送信する。
受信者は、送られてきたコンテンツｘから自ら新たなメッセージダイジェストＭ（ｘ）を生成して“Ｖｅｒ（Ｋｐ，Ｓｉｇ（Ｋｓ，Ｍ（ｘ）））＝Ｍ（ｘ）”を検証する。すなわち受信者は、署名鍵Ｋｐを用いて上記電子署名Ｓｉｇ（Ｋｓ，Ｍ（ｘ））からメッセージダイジェストＭ（ｘ）を生成する。これを、上記電子署名Ｓｉｇ（Ｋｓ，Ｍ（ｘ））と合わせて送られてきたコンテンツｘから、送信者が行ったと同様の手法で自ら生成した新たなメッセージダイジェストＭ（ｘ）と比較することによって、認証を行うものである。
【０００５】
また、署名対象となる文書データ等のコンテンツｘが上位装置から送られた場合、そのコンテンツｘの構造等の妥当性について電子署名生成装置によって検証がされる。例えば、コンテンツは、ＸＭＬ（ｅｘｔｅｎｓｉｂｌｅ  ｍａｒｋｕｐ  ｌａｎｇｕａｇｅ）によって記述されている（例えば、非特許文献１参照）。そのため、電子署名生成装置は、ＸＭＬスキーマによる基本スキーマを用意しており、これを使用して上位装置から送られたコンテンツを検証する。
【０００６】
【特許文献１】
特開２０００−１３８６７０公報  「認証処理方法」沖電気工業  小山法孝
【非特許文献１】
インターネット
ＸＭＬ  Ｓｃｈｅｍａ  Ｐａｒｔ  ０：  Ｐｒｉｍｅｒ
ＵＲＬ  〈ｈｔｔｐ：／／ｗｗｗ．ｗ３．ｏｒｇ／ＴＲ／ｘｍｌｓｃｈｅｍａ−０／〉
ＸＭＬ  Ｓｃｈｅｍａ  Ｐａｒｔ  １：  Ｓｔｒｕｃｔｕｒｅ
ＵＲＬ  〈ｈｔｔｐ：／／ｗｗｗ．ｗ３．ｏｒｇ／ＴＲ／ｘｍｌｓｃｈｅｍａ−１／〉
【０００７】
【発明が解決しようとする課題】
上述した従来の技術では、一旦ユーザーが電子署名生成装置にアクセスし、署名鍵を取得した後は、どのようなコンテンツであるかに拘わらず、署名をつけることが可能であった。つまり、署名鍵により与えられた署名の権限をどのように使うかはユーザーの良心に委ねられていた。
【０００８】
ところが、近年の企業等における勤務形態の変化等により、このような署名権限の取扱いが妥当ではない状況も増えている。すなわち、企業等において、パートタイマー等の臨時的な雇用関係にある労働者が上述した装置のユーザーとなる場合が増えている。このような場合、高額の伝票などに署名をつける権限を何ら疑いなく与えることは、信頼関係の点を考慮すると、全く問題なしとすることはできなかった。
【０００９】
また、上述した装置へのアクセスの制限として、常勤者については、８：００〜１７：００、パートタイマー等については、８：００〜１２：００というように、ユーザーごとにアクセス可能な時間を設定する方法があった。
しかしながら、この方法では、許可された時間内であれば、何ら制限なく高額の伝票などへの署名が可能であり、その時間内において上述した場合と全く同じ問題があった。
【００１０】
一方、電子署名の方式としては、上述した署名の簡略化のためのダイジェストアルゴリズム、暗号化のための暗号化アルゴリズム、計算した署名値や鍵情報を格納する証明書の形式等に関し、それぞれ複数の方式がある。そして、これらの方式は、署名者がコンテンツを送付する相手先が使用する方式を選択しなければならない。そうしなければ、相手先は署名を検証できないからである。
【００１１】
しかしながら、電子商取引の拡大により、これまで取引のなかった企業が新たに相手先となることが増えている。これにより、相手先の多様化による署名方式の種類の増加が生じ得るようになっている。よって、ユーザーが署名の際に署名方式の選択を誤る事態が生じる状況が多くなっている。また、上述した企業等における勤務形態の変化等ともあいまって、不慣れな操作者によってさらに誤りが生じやすい状況となっている。
本発明は、以上の状況を改善できる有用性の高い電子署名生成装置を提供することを課題とした。
【００１２】
【課題を解決するための手段】
本発明は以上の点を解決するため次の構成を採用する。
〈構成１〉
上位装置から送られた署名の対象とするコンテンツを保持し、当該コンテンツの妥当性を検証する署名対象コンテンツ部を備えた電子署名生成装置において、前記署名対象コンテンツ部によって検証される妥当性に当該コンテンツに対する署名の制限を含める署名制限部を備える。
【００１３】
ここに、前記署名対象コンテンツ部は、より具体的には、前記コンテンツの妥当性を検証するための基本書式を用意し、前記署名制限部は、当該基本書式に対する追加の書式を含めることにより、前記署名対象コンテンツ部によって検証される妥当性に当該コンテンツに対する署名の制限を含める。
そして、前記基本書式および追加の書式は、例えば、ＸＭＬスキーマによって記述される。
また、前記コンテンツは、例えば、請求書の文書データであり、前記署名の制限は、当該請求書の金額に応じた制限である。
【００１４】
〈構成２〉
構成１における電子署名生成装置であって、署名の制限を、コンテンツの種類ごとに決定される署名処理可能時間としたものである。
ここに、署名対象コンテンツ部は、具体的には、前記コンテンツの妥当性を検証するための基本書式を用意し、署名制限部は、当該基本書式に対する追加の書式を含めることにより、前記署名対象コンテンツ部によって検証される妥当性に当該コンテンツに対する署名処理可能時間を含める。
また、前記基本書式および追加の書式は、例えば、ＸＭＬスキーマによって記述される。
【００１５】
〈構成３〉
上位装置から送られた署名の対象とするコンテンツを保持し、当該コンテンツに対する署名書の送付先に対応した方式で署名を生成し、当該方式を認識する情報とともに署名書を送付する電子署名生成装置において、前記署名書の送付先と署名の方式とを対応付ける署名方式情報を持ち、前記上位装置による署名書送付先の指定に応じた署名の方式を、当該署名方式情報から取得する署名方式部を備えたものである。
【００１６】
前記署名方式部が、前記上位装置により指定される署名書送付先に応じた署名の方式を示す署名方式情報を持たないときは、前記上位装置から署名の方式を入力し、当該入力された方式を署名方式情報として保持し、署名書とともに送付先に送付する。
【００１７】
〈構成４〉
構成３における電子署名生成装置であって、上位装置から送られた署名の対象とするコンテンツを保持し、当該コンテンツの妥当性を検証する署名対象コンテンツ部と、前記署名対象コンテンツ部によって検証される妥当性に当該コンテンツに対する署名の制限を含める署名制限部を備えたものである。
これは、構成３の装置と、構成１ないし２の装置とを組み合わせたものであり、最も実際的な装置である。
【００１８】
【発明の実施の形態】
以下、本発明の実施の形態を具体的な実施例を用いて説明する。
〈実施例１〉
図１は、本発明の電子署名生成装置の実施例１の構成を説明するブロック図である。
図１において、本発明の装置のハードウェアは、上位装置１０１、認証端末データベース１０２、署名鍵ストア１０３、基本スキーマストア１０４、署名制限スキーマストア１０５から成る。
【００１９】
上位装置１０１は、企業内における各場所に設けられた共用あるいは個人用のパーソナルコンピュータ等である。あるいは、これは、モバイル機器であってもよい。このような上位装置１０１は、ＬＡＮまたはＷＡＮを介して署名生成装置２００と接続される。そして、上位装置１０１は、署名生成装置２００に対してアクセス権限を持ち、署名対象コンテンツを指定して署名生成要求を行う。
【００２０】
署名生成装置２００は、企業内における所定の場所に設けられたパーソナルコンピュータ等から成る。前述した認証端末データベース１０２、署名鍵ストア１０３、基本スキーマストア１０４、署名制限スキーマストア１０５は、署名生成装置２００のハードディスク等に格納される。
【００２１】
認証端末データベース１０２は、上位装置１０１が本当に署名生成装置２００にアクセス権限を持つものであるかどうかを認証するための情報を格納したデータベースである。
署名鍵ストア１０３は、電子署名の生成に用いる署名鍵を格納したデータベースである。本実施例では、公開鍵方式の鍵ペアが格納されているものとする。
【００２２】
基本スキーマストア１０４は、署名対象のコンテンツのデータ構造等が、規定に従っているかを検証するためのスキーマを格納したデータベースである。本実施例では、ＸＭＬ文書構造の妥当性を検証するためのＸＭＬスキーマが格納されているものとする。
署名制限スキーマストア１０５には、署名鍵への参照と関連付けて、その署名鍵に対する制約を記述したスキーマが格納されている。これらのスキーマには、以下の情報が含まれる。
【００２３】
第１は、上位装置１０１が署名生成機能を利用可能な状態かを判断するための情報である。
第２は、署名鍵が利用可能な状態であるかを判断するための情報である。
第３は、署名対象コンテンツの形式（文書フォーマット等）に対して、署名処理を許可するかを判断するための情報である。
第４は、署名対象コンテンツの記載内容に対して、署名処理を許可するかを判断するための情報である。
第５は、上記の情報を複号して生成される、署名処理を許可するかを判断するための情報である。
【００２４】
ここで、署名制限スキーマの例を図５に示す。このスキーマには、『〈請求金額〉〈／請求金額〉タグで記述された要素の値が、１０００００以上１００００００未満でなければ妥当ではない』という制限が記述されている。このスキーマにより文書Ａを検証すると、〈請求金額〉要素の値は、２０００００であるので、検証結果は、『ＯＫ』となる。
また、署名制限スキーマは、署名鍵ごとに変えることができる。例えば、署名鍵Ａでは、『金額１００，０００〜９９９，９９９円の請求書』、署名鍵Ｂでは、『金額１，０００，０００円以上の請求書』等である。
【００２５】
署名生成装置２００の機能は、新規署名生成部２０１、端末認証部２０２、署名鍵部２０３、署名対象コンテンツ部２０４、署名制限部２０５、スキーマ更新部２０６に分けられる。
新規署名生成部２０１は、端末認証部２０２、署名鍵部２０３、署名対象コンテンツ部２０４を用いて、上位装置１０１から新たに発生した署名生成の要求を処理する。
【００２６】
端末認証部２０２は、上位装置１０１から認証のための情報を受け取る。そして、その情報を認証端末データベース１０２の情報と照合する。これによって、上位装置１０１の認証を行う。
署名鍵部２０３は、上位装置１０１からの署名生成要求に対して、実際に使用する署名鍵を、署名鍵ストア１０３から取得し、保持する。
【００２７】
署名対象コンテンツ部２０４は、署名対象となる文書データ等のコンテンツを上位装置１０１から取得し、保持する。
署名制限部２０５は、署名鍵部２０３で署名鍵が設定された後、その署名鍵に対する制約情報を記述したスキーマを署名制限スキーマストア１０５から取得する。
スキーマ更新部２０６は、基本スキーマストア１０４から取得した基本スキーマに、署名制限スキーマストア１０５から取得した署名制限スキーマを結合し、新たなスキーマを生成する。
【００２８】
ここで、このスキーマの生成について説明する。本実施例では、署名制限を記述するためにＸＭＬスキーマを用いる。ＸＭＬスキーマの場合、図６に示すように、基本スキーマの一部に、追加したい署名制限スキーマへの参照を追加する。これによって、スキーマの結合ができる。そして、結合後の新たなスキーマは、署名対象コンテンツ自体の構造の妥当性を検証する情報に加え、署名処理を許可するかについての制約情報を含むことになる。
【００２９】
〈実施例１の動作〉
図２に従い、署名処理の手順について説明する。なお、図２は、ＵＭＬアクティビティ図の書式に従って記述されている。
（１）アクセス認証
▲１▼上位装置１０１は、電子署名の新規の作成のため、署名生成装置２００にログイン要求を行う（Ｓ１）。
▲２▼ログイン要求が発生すると、署名生成装置２００は、当該上位装置１０１に対するアクセス認証のため、認証情報を要求し、それを上位装置１０１から取得する（Ｓ２）。この認証情報は、例えば、端末に固有の番号などである。
▲３▼署名生成装置２００は、上位装置１０１から取得した認証情報を、認証端末データベース１０２に問い合わせる（Ｓ２）。そして、上位装置１０１が登録された装置と判断されれば、署名生成装置２００へのアクセスを許可する（Ｓ３）。
【００３０】
（２）署名鍵設定
▲１▼上位装置１０１は、署名鍵を設定するため、これを特定するための識別情報である署名鍵ＩＤを、署名生成装置２００に渡す（Ｓ４）。ここに、署名鍵ＩＤとは、署名鍵ストア１０３に格納された署名鍵に到達するための情報である。
▲２▼署名生成装置２００は、署名鍵ストア１０３に問い合わせ、上位装置１０１から指定された署名鍵を取得する（Ｓ４）。
▲３▼署名生成装置２００は、署名制限スキーマストア１０５に格納された署名制限スキーマを照会し、取得した署名鍵が、上位装置１０１に利用可能権限がある鍵かどうかを判定する（Ｓ５）。
▲４▼署名鍵が利用可能であった場合、署名対象コンテンツ指定の処理段階へ進むことを許可する（Ｓ５）。
【００３１】
（３）署名対象コンテンツ設定
▲１▼上位装置１０１は、署名生成装置２００に、電子署名を生成したいコンテンツを渡す（Ｓ６）。
▲２▼署名生成装置２００は、取得した署名対象コンテンツに対応する基本スキーマを、基本スキーマストア１０４に問い合わせ、取得する（Ｓ７）。
▲３▼そして、この署名生成装置２００は、基本スキーマストア１０４から取得した基本スキーマと、署名鍵指定時に署名制限スキーマストア１０５から取得しておいた署名制限スキーマを結合し、署名対象コンテンツに対する結合スキーマを生成する（Ｓ８、Ｓ９）。
▲４▼そして、この署名生成装置２００は、生成した結合スキーマにより、署名対象コンテンツを検証する（Ｓ１０）。
▲５▼結合スキーマによる検証結果が正常であれば、署名取得の処理段階へ進むことを許可する（Ｓ１１）。
【００３２】
（４）署名取得
▲１▼上位装置１０１は、署名生成装置２００に、ダイジェスト値計算処理を要求する。
▲２▼署名生成装置２００は、前段階で取得した署名対象コンテンツに対するダイジェスト値を計算する（Ｓ１２）。
▲３▼そして、この署名生成装置２００は、ダイジェスト値を、前段階で取得した署名鍵により暗号化し、署名値を得る（Ｓ１３）。
▲４▼そして、この署名生成装置２００は、上位装置１０１に対して、計算した署名値を返す（Ｓ１４）。
【００３３】
次に、図３、４に従い、署名処理の詳細な手順について説明する。図３、４では、シーケンスを示すことによって本実施例の処理手順を図２よりも詳細に示している。なお、図３、４は、ＵＭＬ１．３版のシーケンス図の書式に従って記述されている。
（１）アクセス認証
▲１▼上位装置１０１は、署名生成装置２００の新規署名生成部２０１にアクセス要求を行う（Ｔ１）。
▲２▼アクセス要求が発生すると、新規署名生成部２０１は、端末認証のための情報を要求し、それを上位装置１０１から取得する（Ｔ２）。そして、この情報を端末認証部２０２に渡す（Ｔ３、Ｔ４）。
▲３▼端末認証部２０２は、新規署名生成部２０１を経由して上位装置１０１から取得した端末認証情報を、認証端末データベース１０２に問い合わせる（Ｔ５）。そして、上位装置１０１が登録された装置と判断されれば、署名生成装置２００へのアクセスを許可する（Ｔ６）。
【００３４】
（２）署名鍵設定
▲１▼上位装置１０１は、署名鍵を特定するための識別情報を、新規署名生成部２０１に渡す（Ｔ７）。ここに、署名鍵を特定するための情報とは、署名鍵ストア１０３に格納された署名鍵に到達するための情報である。この情報は、署名鍵部２０３に渡される（Ｔ８、Ｔ９）。
▲２▼署名鍵部２０３は、署名鍵ストア１０３に問い合わせ、上位装置１０１から指定された署名鍵を取得する（Ｔ１０）。そして、署名制限部２０５によって制限スキーマを取得する（Ｔ１１、Ｔ１２）。
▲３▼署名制限部２０５は、署名制限スキーマストア１０５に格納された署名制限スキーマを照会し（Ｔ１３）、取得した署名鍵が、上位装置１０１に利用可能権限がある鍵かどうかを判定し、署名鍵部２０３に回答する。
▲４▼署名鍵部２０３は、署名鍵が利用可能であった場合、署名対象コンテンツ指定の処理段階へ進むことを許可する（Ｔ１４）。
【００３５】
（３）署名対象コンテンツ設定
▲１▼上位装置１０１は、署名対象コンテンツ部２０４に、電子署名を生成したいコンテンツを渡す（Ｔ１５〜Ｔ１７）。
▲２▼署名対象コンテンツ部２０４は、取得した署名対象コンテンツに対応する基本スキーマを、基本スキーマストア１０４に問い合わせ、取得する（Ｔ１８）。
▲３▼スキーマ更新部２０６は、基本スキーマストア１０４から取得した基本スキーマと、署名鍵指定時に署名制限スキーマストア１０５から取得しておいた署名制限スキーマを結合し、署名対象コンテンツに対する結合スキーマを生成する（Ｔ１９〜Ｔ２１）。
▲４▼署名対象コンテンツ部２０４は、生成した結合スキーマにより、署名対象コンテンツを検証する（Ｔ２２）。
▲５▼結合スキーマによる検証結果が正常であれば、署名取得の処理段階へ進むことを許可する。
【００３６】
（４）署名取得
▲１▼上位装置１０１は、新規署名生成部２０１に、ダイジェスト値計算処理を要求する（Ｔ２３）。
▲２▼新規署名生成部２０１は、前段階で取得した署名対象コンテンツに対するダイジェスト値を計算する（Ｔ２４）。
▲３▼新規署名生成部２０１は、ダイジェスト値を、前段階で取得した署名鍵により暗号化し、署名値を得る（Ｔ２５〜Ｔ３０）。
▲４▼新規署名生成部２０１は、上位装置１０１に対して、計算した署名値を返す（Ｔ３１）。
【００３７】
〈実施例１の効果〉
署名鍵と署名対象コンテンツの内容に対応した利用制限を与える署名制限スキーマを設定可能とし、署名制限スキーマを格納するデータベースを署名生成装置２００に設けることによって、署名生成要求時に、署名対象コンテンツの内容を検証し、署名制限スキーマに適合しない場合は、署名処理を許可しないという処理が可能になる。
これにより、正当なアクセス権限を持つ装置・ユーザーからの要求であっても、規則に合致しないようなコンテンツに対する署名生成要求は自動的に却下し、担当者による内部不正を防止できるという効果が得られる。
【００３８】
〈実施例２〉
図７は、実施例２による電子署名生成装置の構成例を示す。
実施例２では、実施例１の構成に加えた機能ブロックとして、時刻同期部２０７が追加されている。
時刻同期部２０７は、システム内部あるいは外部のタイムサーバ等と連携し、署名生成装置２００内のシステム時刻をＵＴＣ（Ｃｏｏｒｄｉｎａｔｅｄ  Ｕｎｉｖｅｒｓａｌ  Ｔｉｍｅ：  協定世界時）に自動同期・補正する機能を持つ。ＵＴＣとの時刻同期方式、タイムサーバの構成などについては、本発明の構成の範囲外であり、説明を省略する。
【００３９】
また、実施例２では、実施例１と同様の署名制限スキーマストア１０５を持つが、この構成要素の機能が次のように変更される。
署名制限スキーマストア１０５に格納される署名制限スキーマには、実施例１で説明した制限に加え、このスキーマを適用可能な時間帯（例：開始時刻／終了時刻の組など）を記述した情報を含む。
【００４０】
〈実施例２の動作〉
図８に従い、署名処理の手順について説明する。
（１）アクセス認証
▲１▼上位装置１０１は、実施例１と同様に、電子署名の新規の作成のため、署名生成装置２００にログイン要求を行う（Ｓ１）。
▲２▼ログイン要求が発生すると、署名生成装置２００は、当該上位装置１０１に対するアクセス認証のため、認証情報を要求し、それを上位装置１０１から取得する（Ｓ２）。
▲３▼署名生成装置２００は、上位装置１０１から取得した認証情報を、認証端末データベース１０２に問い合わせ（Ｓ２）、上位装置１０１が登録された装置と判断されれば、署名生成装置２００へのアクセスを許可する（Ｓ３）。
【００４１】
（２）署名鍵設定
▲１▼上位装置１０１は、署名鍵を設定するため、これを特定するための識別情報である署名鍵ＩＤを、署名生成装置２００に渡す（Ｓ４）。ここに、署名鍵ＩＤとは、署名鍵ストア１０３に格納された署名鍵に到達するための情報である。
▲２▼署名生成装置２００は、署名鍵ストア１０３に問い合わせ、上位装置１０１から指定された署名鍵を取得する（Ｓ４）。
▲３▼ここで、署名生成装置２００は、時刻同期部２０７から、現在のシステム時刻を取得する（Ｓ４１）。
▲４▼署名生成装置２００は、署名制限スキーマストア１０５に格納された署名制限スキーマを照会する（Ｓ５）。
▲５▼まず、取得した署名鍵が、上位装置１０１に利用可能権限がある鍵かどうかを判定する（Ｓ５）。
▲６▼次に、時刻同期部２０７から取得したシステム時刻により、鍵の利用時間に関する判定を行い、現在の時刻がこの署名鍵を利用可能な時刻であるかを判定する（Ｓ５）。
▲７▼署名鍵が利用可能であった場合、署名対象コンテンツ指定の処理段階へ進むことを許可する（Ｓ５）。
【００４２】
（３）署名対象コンテンツ設定
▲１▼上位装置１０１は、署名生成装置２００に、電子署名を生成したいコンテンツを渡す（Ｓ６）。
▲２▼署名生成装置２００は、取得した署名対象コンテンツに対応する基本スキーマを、基本スキーマストア１０４に問い合わせ、取得する（Ｓ７）。
▲３▼そして、この署名生成装置２００は、基本スキーマストア１０４から取得した基本スキーマと、署名鍵指定時に署名制限スキーマストア１０５から取得しておいた署名制限スキーマを結合し、署名対象コンテンツに対する結合スキーマを生成する（Ｓ８、Ｓ９）。
▲４▼そして、この署名生成装置２００は、生成した結合スキーマにより、署名対象コンテンツを検証する（Ｓ１０）。
▲５▼結合スキーマによる検証結果が正常であれば、署名取得の処理段階へ進むことを許可する（Ｓ１１）。
【００４３】
（４）署名取得
▲１▼上位装置１０１は、実施例１と同様に、署名生成装置２００に、ダイジェスト値計算処理を要求する。
▲２▼署名生成装置２００は、前段階で取得した署名対象コンテンツに対するダイジェスト値を計算する（Ｓ１２）。
▲３▼そして、この署名生成装置２００は、ダイジェスト値を、前段階で取得した署名鍵により暗号化し、署名値を得る（Ｓ１３）。
▲４▼そして、この署名生成装置２００は、上位装置１０１に対して、計算した署名値を返す（Ｓ１４）。
【００４４】
次に、図９、１０に従い、署名処理の詳細な手順について説明する。図９、１０では、シーケンスを示すことによって本実施例の処理手順を図８よりも詳細に示している。
（１）アクセス認証
▲１▼上位装置１０１は、署名生成装置２００の新規署名生成部２０１にアクセス要求を行う（Ｔ１）。
▲２▼アクセス要求が発生すると、新規署名生成部２０１は、端末認証のための情報を要求し、それを上位装置１０１から取得する（Ｔ２）。そして、この情報を端末認証部２０２に渡す（Ｔ３、Ｔ４）
▲３▼端末認証部２０２は、新規署名生成部２０１を経由して上位装置１０１から取得した端末認証情報を、認証端末データベース１０２に問い合わせる（Ｔ５）。そして、上位装置１０１が登録された装置と判断されれば、署名生成装置２００へのアクセスを許可する（Ｔ６）。
【００４５】
（２）署名鍵設定
まず、時刻同期部２０７は、外部タイムサーバから現在の時刻を取得する（Ｔ６１）。この現在の時刻は、システム時刻として、新規署名生成部２０１によって取得される（Ｔ６２）。そして、新規署名生成部２０１は、取得したシステム時刻により、以下の処理手順において、鍵の利用時間に関する判定を行い、現在の時刻がこの署名鍵を利用可能な時刻であるかを判定する。
【００４６】
▲１▼上位装置１０１は、署名鍵を特定するための識別情報を、新規署名生成部２０１に渡す（Ｔ７）。この情報は、署名鍵部２０３に渡される（Ｔ８、Ｔ９）。
▲２▼署名鍵部２０３は、署名鍵ストア１０３に問い合わせ、上位装置１０１から指定された署名鍵を取得する（Ｔ１０）。そして、署名制限部２０５によって制限スキーマを取得する（Ｔ１１、Ｔ１２）。実施例２では、この制限スキーマに対し、更に、鍵の利用時間に関する制限スキーマが追加される。
▲３▼署名制限部２０５は、署名制限スキーマストア１０５に格納された署名制限スキーマを照会し（Ｔ１３）、取得した署名鍵が、上位装置１０１に利用可能権限がある鍵かどうかを判定し、署名鍵部２０３に回答する。
▲４▼署名鍵部２０３は、署名鍵が権限および時間の双方について利用可能であった場合、署名対象コンテンツ指定の処理段階へ進むことを許可する（Ｔ１４）。
【００４７】
（３）署名対象コンテンツ設定
▲１▼上位装置１０１は、署名対象コンテンツ部２０４に、電子署名を生成したいコンテンツを渡す（Ｔ１５〜Ｔ１７）。
▲２▼署名対象コンテンツ部２０４は、取得した署名対象コンテンツに対応する基本スキーマを、基本スキーマストア１０４に問い合わせ、取得する（Ｔ１８）。
▲３▼スキーマ更新部２０６は、基本スキーマストア１０４から取得した基本スキーマと、署名鍵指定時に署名制限スキーマストア１０５から取得しておいた署名制限スキーマを結合し、署名対象コンテンツに対する結合スキーマを生成する（Ｔ１９〜Ｔ２１）。
▲４▼署名対象コンテンツ部２０４は、生成した結合スキーマにより、署名対象コンテンツを検証する（Ｔ２２）。
▲５▼結合スキーマによる検証結果が正常であれば、署名取得の処理段階へ進むことを許可する。
【００４８】
（４）署名取得
▲１▼上位装置１０１は、新規署名生成部２０１に、ダイジェスト値計算処理を要求する（Ｔ２３）。
▲２▼新規署名生成部２０１は、前段階で取得した署名対象コンテンツに対するダイジェスト値を計算する（Ｔ２４）。
▲３▼新規署名生成部２０１は、ダイジェスト値を、前段階で取得した署名鍵により暗号化し、署名値を得る（Ｔ２５〜Ｔ３０）。
▲４▼新規署名生成部２０１は、上位装置１０１に対して、計算した署名値を返す（Ｔ３１）。
【００４９】
〈実施例２の効果〉
実施例２によれば、署名対象コンテンツの種類ごとに、署名付与の可能な時間帯を設定することが可能となり、たとえ、正当なアクセス権限を持つユーザーであっても、あるコンテンツに対して署名付与が認められない時間帯に、不正な署名生成要求を行うことを防止できるという効果がある。
【００５０】
〈実施例３〉
図１１は、実施例３による電子署名生成装置の構成例を示す。
実施例３では、実施例１の構成に加えた機能ブロックとして、署名方式部２０８が追加されており、データベースとして署名方式ストア１０６が追加されている。
署名方式ストア１０６は、署名送信先と、この署名送信先に対して用いるべき署名方式とを関連付けて格納している。署名方式には、ダイジェスト値計算処理のためのダイジェストアルゴリズム、暗号化のための暗号化アルゴリズム、署名結果の形式（証明書のフォーマット）等が含まれる。
【００５１】
署名方式部２０８は、上位装置１０１から署名（証明書）の送信先の情報を取得する。そして、上述した署名方式ストア１０６から上述した署名方式情報を取得する。この情報により、新規署名生成部２０１は署名方式に使用する署名方式を設定する。
【００５２】
〈実施例３の動作〉
図１２および図１３、１４に、実施例３の動作を示す。
以下、実施例１と異なる点のみ説明する。
【００５３】
署名方式設定（図１２のＳ３１）において、上位装置１０１は、作成しようとする署名書および署名対象コンテンツの送付先情報を指定する。
新規署名生成部２０１は、この署名送付先情報を受け取り（図１３のＴ５１）、署名方式部２０８に渡す（Ｔ５２、Ｔ５３）。
署名方式部２０８は、渡された署名送付先情報に対応する署名方式情報を署名方式ストア１０６に問い合わせて取得する。
署名方式部２０８は、署名方式情報に基づいて、これから実行する署名処理で使用する署名方式を決定し、新規署名生成部２０１に通知する。
【００５４】
署名取得（図１２のＳ１２〜Ｓ１４）において、上位装置１０１は、新規署名生成部２０１に、ダイジェスト値計算処理を要求する（図１４のＴ２３）。
新規署名生成部２０１は、前段階（Ｔ１５〜Ｔ２２）で取得した署名対象コンテンツに対して、ダイジェスト値を計算する（Ｔ２４〜Ｔ２６）。このときに用いるアルゴリズムは、署名方式部２０８で設定したものが使用される。
【００５５】
新規署名生成部２０１は、ダイジェスト値を、前段階（Ｔ７〜Ｔ１４）で取得した署名鍵によって暗号化し、署名値を得る（Ｔ２７〜Ｔ２９）。このときに用いる暗号化アルゴリズムおよび署名結果として生成する証明書形式は、署名方式部２０８で設定したものが使用される。
新規署名生成部２０１は、上位装置１０１に対して、計算した署名結果を返す（Ｔ３１）。
【００５６】
〈実施例３の効果〉
実施例３によれば、署名送信先に応じて自動的に用いるべき方式を選択する仕組みが提供される。これにより、送信先ごとにその都度署名形式を選択設定する煩雑さを軽減できる。また、ユーザーの誤操作により、送信先が検証できない署名形式で署名を作成し送信してしまうことを防止することができる。
【００５７】
〈実施例１〜３に関連した利用形態〉
実施例１〜３では、署名対象コンテンツが、ＸＭＬで記述されている例について説明したが、署名対象コンテンツはＸＭＬに限らず、コンテンツの構造を検証可能なものであれば、他の任意のフォーマットであってもよい。また、基本スキーマ、署名制限スキーマとして、ＸＭＬスキーマを用いる例について説明したが、署名対象コンテンツの内容を検証可能なデータ構造であれば、ＸＭＬスキーマでない任意のデータ構造でスキーマを記述してもよい。
上位装置１０１と署名生成装置２００との接続についてはＬＡＮ等により接続される場合に限らず、インターネット等により外部の上位装置と接続するものであってもよい。
【００５８】
【発明の効果】
以上詳述したように、本発明によれば、コンテンツごとに内容および時間を管理するとともに、送付先に応じた署名方式を自動的に選択する仕組みを提供するようにしたので、企業等における不正の発生にも対応できるとともに、署名方式の設定の際の誤操作を防止することができる。
【図面の簡単な説明】
【図１】実施例１による電子署名生成装置の構成例を示すブロック図である。
【図２】実施例１による署名生成装置の動作フローを示すアクティビティ図である。
【図３】実施例１による電子署名生成装置の詳細な動作を示すシーケンス図（その１）である。
【図４】実施例１による電子署名生成装置の詳細な動作を示すシーケンス図（その２）である。
【図５】署名制限スキーマの例の説明図である。
【図６】基本スキーマと署名制限スキーマとの結合例の説明図である。
【図７】実施例２による電子署名生成装置の構成例を示すブロック図である。
【図８】実施例２による署名生成装置の動作フローを示すアクティビティ図である。
【図９】実施例２による電子署名生成装置の詳細な動作を示すシーケンス図（その１）である。
【図１０】実施例２による電子署名生成装置の詳細な動作を示すシーケンス図（その２）である。
【図１１】実施例３による電子署名生成装置の構成例を示すブロック図である。
【図１２】実施例３による署名生成装置の動作フローを示すアクティビティ図である。
【図１３】実施例３による電子署名生成装置の詳細な動作を示すシーケンス図（その１）である。
【図１４】実施例３による電子署名生成装置の詳細な動作を示すシーケンス図（その２）である。
【符号の説明】
１０１  上位装置
２００  署名生成装置
２０１  新規署名生成部
２０２  端末認証部
２０３  署名鍵部
２０４  署名対象コンテンツ部
２０５  署名制限部
２０６  スキーマ更新部
２０７  時刻同期部
２０８  署名方式部
【図１】
2004172915.tif 000003
【図２】
2004172915.tif 000004
【図３】
2004172915.tif 000005
【図４】
2004172915.tif 000006
【図５】
2004172915.tif 000007
【図６】
2004172915.tif 000008
【図７】
2004172915.tif 000009
【図８】
2004172915.tif 000010
【図９】
2004172915.tif 000011
【図１０】
2004172915.tif 000012
【図１１】
2004172915.tif 000013
【図１２】
2004172915.tif 000014
【図１３】
2004172915.tif 000015
【図１４】
2004172915.tif 000016