説明

情報処理装置、及び情報処理プログラム

【課題】原本データと共に属性情報にも長期署名を行う。
【解決手段】長期署名登録システム8は、ユーザからの属性の入力を受け付けることにより原本データに対する属性値群を設定する。そして、これらを圧縮して1個の長期署名用圧縮データを生成する。長期署名登録システム8は、長期署名用圧縮データを長期署名システム1に出力して登録する。長期署名システム1は、長期署名用圧縮データを解凍して原本データと属性値群を取得する。長期署名システム1は、原本データと属性値群の組(グループ)に対して長期署名を行い、原本データと属性値群の組に対するXAdES(長期署名データ)を作成する。長期署名システム1は、原本データ、属性値群、XAdESを圧縮して1個の長期署名一式データを作成して、これを文書管理システム9に出力して登録する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、及び情報処理プログラムに関し、例えば、長期署名データを処理するものに関する。
【背景技術】
【0002】
電子データの非改竄性(真正)を証明するために、電子データを秘密鍵で暗号化することにより電子署名を行い、当該秘密鍵に対応する公開鍵で電子データを復号化することにより検証する電子署名が広く利用されている。
電子データを公開鍵で復号化することにより、当該電子データは当該公開鍵に対応する秘密鍵で暗号化されたことを確認できるが、当該秘密鍵を有しているのは署名者であるので、当該電子データが当該署名者によるものであると認定することができる。例えるなら、秘密鍵は印鑑として機能し、公開鍵は印鑑証明書として機能している。
公開鍵は、認証局が発行する公開鍵証明書により配布され、配布を受けたものは当該証明書により公開鍵の真正を確認できるようになっている。
【0003】
ところで、電子署名は、署名などに用いた暗号アルゴリズムの危殆化などに対処するため有効期限が設定されている。
また、有効期限前であっても、署名者の都合で失効したり、秘密鍵の遺漏などによりルート証明書以下の全ての証明書が失効する場合もある。
そこで、この問題に対処するため、特許文献1に示されているように、電子署名の有効性を永続させるための電子署名フォーマット(以下、長期署名フォーマット)が規定されている。
【0004】
長期署名フォーマットでは、保存対象となる電子データと電子署名に対して、電子署名よりも有効期限の長いタイムスタンプであるアーカイブタイムスタンプを付与することにより、電子署名の有効期限が経過した後も電子データの正当性を保証する。
そして、当該アーカイブタイムスタンプの有効期限が経過する前に、当該アーカイブタイムスタンプよりも有効期限が長い第2世代のアーカイブタイムスタンプを付与することにより有効期限を延長する。以下、第3世代、第4世代、・・・、と有効期限を延長していくことにより、電子データの非改竄性の検証が長期に渡って可能となる。
【0005】
ところで、文書管理システムと長期署名システムが連携する場合、文書管理システムが長期署名の対象となる原本データを長期署名システムに入力し、長期署名処理された長期署名データを文書管理システムに戻すことが行われている。
通常、文書管理システムでは、原本データに対して日付や重要度(極秘、秘密、公知)などの各種属性値を持って管理しているが、これらの属性値は長期署名されていないという問題があった。
例えば、対象の長期署名されたデータが、過去から極秘であったのかということを証明するケースも考えられるため、これらの属性値は長期署名データと紐づけて長期署名対象としたいとの要望があった。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特表2003−533940号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
本発明は、原本データと共に属性情報にも長期署名を行うことを目的とする。
【課題を解決するための手段】
【0008】
請求項1に記載の発明では、原本データを取得する原本データ取得手段と、前記取得した原本データに対して属性情報を設定する設定手段と、前記取得した原本データと前記設定した属性情報を対応づける対応づけ手段と、前記対応づけた原本データと属性情報に長期署名を行った長期署名データを取得する長期署名データ取得手段と、を具備したことを特徴とする情報処理装置を提供する。
請求項2に記載の発明では、前記取得した原本データ、前記設定した属性情報、及び前記取得した長期署名データを対応づけて記憶する記憶手段を具備したことを特徴とする請求項1に記載の情報処理装置を提供する。
請求項3に記載の発明では、前記記憶手段が、前記原本データ、前記属性情報、及び前記長期署名データから生成された1のデータを記憶することを特徴とする請求項2に記載の情報処理装置を提供する。
請求項4に記載の発明では、前記1のデータから前記属性情報を読み取って提示する提示手段を具備したことを特徴とする請求項3に記載の情報処理装置を提供する。
請求項5に記載の発明では、前記対応づけ手段が、前記取得した原本データと前記設定した属性情報から1のデータを生成することにより前記原本データと前記属性情報を対応づけることを特徴とする請求項1から請求項4までのうちの何れか1の請求項に記載の情報処理装置を提供する。
請求項6に記載の発明では、原本データを取得する原本データ取得機能と、前記取得した原本データに対して属性情報を設定する設定機能と、前記取得した原本データと前記設定した属性情報を対応づける対応づけ機能と、前記対応づけた原本データと属性情報に長期署名を行った長期署名データを取得する長期署名データ取得機能と、をコンピュータで実現する情報処理プログラムを提供する。
【発明の効果】
【0009】
本発明は、原本データと属性情報を1つにまとめて長期署名することにより、原本データと共に属性情報にも長期署名を行うことができる。
【図面の簡単な説明】
【0010】
【図1】本実施の形態の概要を説明するための図である。
【図2】長期署名システム、長期署名登録システム、文書管理システムの構成を説明するための図である。
【図3】登録画面の一例を示した図である。
【図4】長期署名用圧縮データの構成を説明するための図である。
【図5】長期署名フォーマットを説明するための図である。
【図6】属性表示画面の一例を示した図である。
【図7】長期署名用圧縮データを作成する手順を説明するためのフローチャートである。
【図8】長期署名一式データを生成する手順の前半を説明するためのフローチャートである。
【図9】長期署名一式データを生成する手順の後半を説明するためのフローチャートである。
【発明を実施するための形態】
【0011】
(A)実施形態の概要
図1は、本実施の形態の概要を説明するための図である。括弧を付した番号は、処理の順序を示しており、以下、当該処理の順序に従って説明する。
(1)長期署名登録システム8は、ユーザからの属性の入力を受け付けることにより原本データに対する属性値群を設定する。そして、長期署名登録システム8は、原本データと属性値群がバラバラにならないように、これらを圧縮して1個の長期署名用圧縮データを生成する。
(2)長期署名登録システム8は、長期署名用圧縮データを長期署名システム1に出力して登録する。長期署名システム1は、長期署名用圧縮データを解凍して原本データと属性値群を取得する。
【0012】
(3)長期署名システム1は、原本データと属性値群の組(グループ)に対して長期署名を行い、原本データと属性値群の組に対するXAdES(長期署名データ)を作成する。
(4)長期署名システム1は、原本データ、属性値群、XAdESがバラバラにならないように、これらを圧縮して1個の長期署名一式データを作成する。
(5)長期署名システム1は、作成した長期署名一式データを文書管理システム9に出力して登録する。
文書管理システム9は、長期署名一式データが登録されると、これを記憶して管理する。あるいは、これを解凍し、原本データ、属性値群、XAdESを対応づけて管理してもよい。
【0013】
(B)実施形態の詳細
図2は、長期署名システム1、長期署名登録システム8、文書管理システム9の構成を説明するための図である。
長期署名システム1は、長期署名サーバ2、クライアント端末3、タイムスタンプサーバ5、リポジトリサーバ6、7などがインターネット4で通信可能に接続されて構成されている。
【0014】
長期署名サーバ2は、CPU(Central Processing Unit)21、ROM(Read Only Memory)22、記憶部23、入出力I/F24、RAM(Random Access Memory)25、表示部26、通信制御部27などから構成されている。
【0015】
CPU21は、記憶部23などに記憶されたプログラムに従って情報処理や長期署名サーバ2の各部の制御を行う中央処理装置である。
本実施の形態では、クライアント端末3やタイムスタンプサーバ5、リポジトリサーバ6、7と通信しながら長期署名データを作成する。
【0016】
ROM22は、読み取り専用のメモリであって、長期署名サーバ2が動作するための基本的なプログラムやパラメータなどが記憶されている。
RAM25は、読み書きが可能なメモリであって、長期署名サーバ2がクライアント端末3などと通信して長期署名データを作成するためのワーキングメモリなどを提供する。
【0017】
記憶部23は、例えば、ハードディスクなどの大容量の記憶装置を用いて構成されており、長期署名サーバ2を動作させるためのOS(Operating System)や長期署名データを生成するためのプログラムなどが記憶されている。
表示部26は、例えば、液晶やCRT(Cathode Ray Tube)などを用いた表示装置を備えており、長期署名サーバ2の運用担当者などが長期署名サーバ2を操作するための各種画面を表示する。
【0018】
入出力I/F24は、例えば、各種操作スイッチ、キーボード、マウスなどの入出力装置を備えており、運用担当者などは入出力I/F24から長期署名サーバ2を操作することができる。
通信制御部27は、インターネット4を介してクライアント端末3、タイムスタンプサーバ5、リポジトリサーバ6、7などと通信する。なお、インターネット4は、他の形態の通信網であってもよい。
長期署名サーバ2は、通信制御部27により、クライアント端末3から電子署名値や原本データと、これに設定された属性値群のハッシュ値(以下、属性値原本ハッシュ値)や公開鍵証明書などを受信することができる。
【0019】
クライアント端末3は、CPU31、ROM32、記憶部33、通信制御部34、RAM35、表示部36、入出力I/F37などから構成されている。
クライアント端末3は、長期署名サーバ2と協働することにより長期署名システム1の一部を構成するほか、単独で長期署名登録システム8、文書管理システム9を構成している。
【0020】
CPU31は、記憶部33などに記憶されたプログラムに従って情報処理やクライアント端末3の各部の制御を行う中央処理装置である。
本実施の形態では、属性値の入力を受け付けて、原本データに属性値群を設定したり(長期署名登録システム8)、長期署名サーバ2との各種情報の送受信、秘密鍵による電子署名などを行ったり(長期署名システム1)、長期署名が成された原本データと属性値群を保管したりする(文書管理システム9)。
【0021】
ROM32は、読み取り専用のメモリであって、クライアント端末3が動作するための基本的なプログラムやパラメータなどが記憶されている。
RAM35は、読み書きが可能なメモリであって、例えば、クライアント端末3が原本データに属性値群を設定する場合や、クライアント端末3が長期署名サーバ2と通信しながら電子署名や属性値原本ハッシュ値の作成を行う場合、あるいは、クライアント端末3が長期署名された原本データや属性値群を管理する場合にワーキングメモリを提供する。
【0022】
記憶部33は、例えば、ハードディスクなどの大容量の記憶装置を用いて構成されており、クライアント端末3を動作させるためのOSや電子署名を行うための秘密鍵、当該秘密鍵に対応する公開鍵の公開鍵証明書、長期署名対象となっている原本データや属性値群などが記憶されている。
原本データとしては、例えば、ワープロやテキストエディタなどで作成された電子文書のほか、画像データ、音声データなどの各種のデータファイルが可能である。
【0023】
また、クライアント端末3が長期署名サーバ2と協働して長期署名データを作成するためのプログラム(JAVA(登録商標)などで作成されている)は、作成の度に長期署名サーバ2からダウンロードするように構成してもよいし、あるいは、予め記憶部33に記憶しておき、これを使用するように構成することもできる。
【0024】
表示部36は、例えば、液晶やCRTなどを用いた表示装置を備えており、クライアント端末3のユーザがクライアント端末3を操作するための各種画面を表示する。
【0025】
入出力I/F37は、例えば、キーボード、マウス、ICカードリーダライタなどの入出力装置を備えている。
ICカードリーダライタは、ICカードを接続してクライアント端末3とICカードの通信を仲介する。
ICカードは、CPU、ROM、RAM、EEPROM(Electrically Erasable and Programmable ROM)などを備えた情報処理装置であり、例えば、クライアント端末3を使用するユーザを認証するためのユーザ認証情報などが記憶されている。
また、秘密鍵や公開鍵証明書などをICカードに記憶させ、ICカードの秘密鍵を使って電子署名するようにクライアント端末3を構成することもできる。
【0026】
通信制御部34は、インターネット4を介して長期署名サーバ2との通信を行う。長期署名サーバ2へのハッシュ値の送信、電子署名値の送信などは、通信制御部34を用いて行われる。
【0027】
タイムスタンプサーバ5は、タイムスタンプを発行するサーバであり、TSA(Time Stamping Authority:タイムスタンプ局)に設置されている。
タイムスタンプサーバ5は、時刻配信局の配信する時刻によって補正される正確な時計を有しており、タイムスタンプ発行対象となる電子データを受信すると、これに当該時計による現在日時刻を付してタイムスタンプ用の秘密鍵で電子署名(暗号化)することによりタイムスタンプを発行する。
【0028】
リポジトリサーバ6は、TSA−CA(Time Stamping Authority Certificate Authority:タイムスタンプ認証局)に設置されたサーバであって、タイムスタンプの検証に用いる公開鍵証明書(タイムスタンプに用いた秘密鍵に対応する公開鍵の公開鍵証明書)の失効情報を提供する。
失効情報にリストアップされていない公開鍵証明書は失効していないため、これによって公開鍵証明書の有効性を確認し、当該有効な公開鍵証明書によってタイムスタンプの有効性を確認することができる。
【0029】
リポジトリサーバ7は、CA(Certificate Authority)に設置されたサーバであって、クライアント端末3の行った電子署名の検証に用いる公開鍵証明書(クライアント端末3の秘密鍵に対応する公開鍵の公開鍵証明書)の失効情報を提供する。
失効情報にリストアップされていない公開鍵証明書は失効していないため、これによって公開鍵証明書の有効性を確認し、当該有効な公開鍵証明書によってクライアント端末3の行った電子署名の有効性を確認することができる。
リポジトリサーバ6とリポジトリサーバ7が提供する失効情報は、定期・不定期(例えば、24時間ごと)に更新される。
【0030】
図3は、長期署名登録システム8によってクライアント端末3に表示される登録画面の一例を示した図である。
登録画面は、「対象ファイル名」、「ファイル名変換処理」、「関連情報」、「参照」、及び「処理実行」の各エリアを有している。
【0031】
「対象ファイル名」は、ファイル名を変更する原本データを指定するエリアである。
ユーザが長期署名する書類をスキャナなどで読み込む場合、スキャンした後のデータには、一般に、自動的にファイル名が付与されるため、当該エリアでユーザの定義するファイル名に変換する原本データを指定する。図では、「09−J−24.pdf」なる原本データが指定されている。
このようにして、登録アプリケーションに処理対象となる原本データを登録することができる。
【0032】
また、「ファイル選択」ボタンは、ファイルを一覧して対象となる原本データを選択するためのボタンであり、「内容確認のため開く」ボタンは、確認のために、選択した原本データの内容を表示するためのボタンである。
更に、「ファイル選択毎に追番をインクリメント」チェックボックスは、選択したファイルに1ずつ増加する追番を自動的に付与するか否かを選択するためのボックスである。
【0033】
「ファイル名変換処理」は、変換後のファイル名を設定するためのエリアである。
「変換後のファイル名」には、ユーザが下の「1.製品コード/開発コード」〜「6.内容(履歴)」の各項目で設定したファイル名が表示される。
【0034】
「1.製品コード/開発コード」では、製品コードや開発コードをドロップダウンメニューで選択するようになっている。
「2.ステップ」では、例えば、事前検討や承認済みなど、原本データの位置する段階をドロップダウンメニューで選択するようになっている。
「3.資料コード」では、原本データの資料としての位置づけを表すコードをドロップダウンメニューで選択するようになっている。
【0035】
「4.追番」では、原本データのファイル名に付与する追番が設定できるようになっており、「+」ボタンで追番を1だけインクリメントし、「−」ボタンで追番を1だけデクリメントし、「リセット」ボタンで初期値「1」にリセットできるようになっている。
「5.Rev.」では、原本データの版数をドロップダウンメニューで選択するようになっている。
【0036】
「6.内容(履歴)」では、原本データの内容をドロップダウンメニューで選択するようになっている。また、下のボックスに履歴を入力することもできる。「設定」ボタンがクリック(選択)されると入力内容が確定する。
「ファイル名生成」ボタンは、変換後のファイル名を生成するためのボタンであり、クリックされると、「1.製品コード/開発コード」〜「6.内容(履歴)」で入力された内容に従ってファイル名が生成され、「変換後のファイル名」に生成されたファイル名が表示される。
【0037】
「関連情報」は、原本データに付属させる属性値を設定するためのエリアである。
「1.作成日」では、原本データを作成した日をドロップダウンメニューで選択するようになっている。
「2.機密レベル」では、原本データの機密レベルをドロップダウンメニューで選択するようになっている。
【0038】
「3.所有者」では、原本データの所有者をドロップダウンメニューで選択するようになっている。
「4.アクセス権」では、原本データにアクセスする権限を持っている者をドロップダウンメニューで選択するようになっている。
「5.次回更新日(見直し期間)」では、属性値を見直して更新する日をドロップダウンメニューで選択するようになっている。
【0039】
「6.保管期限」では、原本データや属性値の保管期限をドロップダウンメニューで選択するようになっている。
「7.複製」では、複製が可能であるか否かをドロップダウンメニューで選択するようになっている。
「8.備考」では、備考をキーボードなどから入力するようになっている。
以上のようにして登録アプリケーション上で処理対象となる原本データに関する属性値(複数)を設定することができる。
【0040】
「参照」は、処理実行後に参照するファイルを選択するエリアである。
「処理済フォルダを開く」ボタンは、処理実行された長期署名前の原本データが格納されたフォルダ(ディレクトリ)を開くためのボタンであり、「リストを開く」ボタンは、処理実行された長期署名データのリストを開くボタンである。
【0041】
「処理実行」は、長期署名用圧縮データを長期署名対象に登録するためのエリアである。
「登録」ボタンをクリックすると、クライアント端末3は、「関連情報」で設定した各属性値を、当該属性値をファイル名とするテキストファイルに変換し(後述)、原本データとともに所定の圧縮方式(例えば、ZIP方式)で圧縮して長期署名用圧縮データを生成する。
そして、長期署名登録システム8は、長期署名用圧縮データを長期署名対象用のフォルダに格納して長期署名システム1に登録する。
【0042】
図4は、長期署名用圧縮データの構成を説明するための図である。
長期署名用圧縮データは、所定のフォルダに、属性値群と原本データを格納し、これを圧縮することにより形成されている。
より詳細には、各属性値は、「極秘.txt」などと、テキストファイルのファイル名として設定されている。テキストファイルの中身は属性値を入れてもよい。
そして、これら属性値名ファイルと、原本データ「C−J−01−001−1−製品企画書.pdf」が同じフォルダに格納され、フォルダごと圧縮されている。フォルダ名は、例えば、原本データのファイル名にするなど任意に設定することができる。
【0043】
このように原本データと属性値群を1つのフォルダにまとめて圧縮したのは、長期署名登録システム8でこれらデータを管理する際、及び、長期署名登録システム8から長期署名システム1にデータを送信する際に、原本データや属性値群がバラバラにならないようにするためである。また、データの容量を小さくすることもできる。
【0044】
また、属性値をテキストファイルのファイル名としたのは、圧縮された状態であっても、テキストファイルの題名を読み取ることができるからである。テキストファイルの題名を読み出すことにより属性値を読み出すことができる。
なお、属性値は、このように1つの属性値をファイル名とする1つのファイルを作成するほか、1つの属性値用ファイルの中に全ての属性値を記載してもよい。あるいは、属性値を記載したCSV(Comma Separated Values)ファイルを作成する場合も考えられる。
【0045】
図5は、長期署名システム1が生成する長期署名データのフォーマット(長期署名フォーマット)を説明するための図である。
本実施の形態の長期署名データは、XAdES(XML Advanced Electronic Signatures)の規定に従い、XML(Extensible Markup Language)言語を用いて記述されている。
【0046】
署名前XAdESデータは、クライアント端末3が電子署名を行う対象となる署名対象データを格納したXML要素であって、KeyInfo、署名対象プロパティ、SignedInfoの各要素から構成されている。署名前XAdESデータをクライアント端末3が電子署名することによりESが生成される。
【0047】
KeyInfoには、クライアント端末3が電子署名に用いた秘密鍵に対応する公開鍵の公開鍵証明書が設定されている。公開鍵証明書には、例えば、公開鍵、公開鍵の所有者、認証局、認証局の署名などが含まれている。
署名対象プロパティには、公開鍵証明書のハッシュ値が設定されている。
SignedInfoには、属性値原本ハッシュ値(解凍後の原本データファイル名とそのハッシュ値、および、それぞれの属性値ファイル名とそれぞれのハッシュ値の一式)、及び署名対象プロパティのハッシュ値(以下、署名対象プロパティハッシュ値)が設定されている。
【0048】
ESは、上記の署名前XAdESデータとSignatureValueを要素として構成されている。
SignatureValueには、SignedInfoをクライアント端末3が秘密鍵で署名した署名値が設定されている。
このように、クライアント端末3がSignedInfoに対して電子署名することにより、署名前XAdESデータに対する署名が行われる。
【0049】
ES−Tは、上記のESと署名タイムスタンプを要素として構成されている。
署名タイムスタンプには、ESに対して発行されたSTS(署名タイムスタンプ)が設定されている。STSは、タイムスタンプサーバ5において、SignatureValueのハッシュ値に現在日時刻を付与して、これをタイムスタンプサーバ5の秘密鍵で電子署名したものである。
【0050】
ES−XL(ES−XLong)は、上記のES−Tと検証情報を要素として構成されている。
検証情報は、証明書群と失効情報群を用いて構成されている。
証明書群は、クライアント端末3が署名に用いた秘密鍵の公開鍵証明書と、タイムスタンプサーバ5がタイムスタンプに用いた秘密鍵の公開鍵証明書の認証パス上の公開鍵証明書で構成されている。
この認証パスは、ルート認証局は自己署名証明書を発行し、そのルート認証局は子認証局に証明書を発行し、その子認証局は孫認証局に証明書を発行し、・・・、末端の認証局は、個人、証明書所有者に証明書を発行するという証明書信頼チェーンにおいて、公開鍵証明書の検証をルート認証局まで遡って確認するものである。
失効情報群は、公開鍵証明書の失効情報で構成されている。
【0051】
ES−A(1st)は、上記のES−XLとATS(1st)を要素として構成されている。
ATS(1st)(Archive Time Stamp:アーカイブタイムスタンプ)は、第1世代のATSであって、ES−Tを検証する情報、原本ハッシュ値、クライアント端末3による電子署名、タイムスタンプサーバ5によるタイムスタンプ(STS)などから所定の方法で作成されたハッシュ値が含まれており、ATS(1st)によってES−XLの正当性を検証することができる。
【0052】
ES−A(2nd)は、ES−A(1st)とATS(2nd)を要素として構成されている。
ATS(2nd)は、第2世代のATSであって、ES−A(1st)を検証する情報、原本ハッシュ値、クライアント端末3による電子署名、タイムスタンプサーバ5によるタイムスタンプ(STS、ATS(1st))などから所定の方法で生成されたハッシュ値が含まれており、ATS(2nd)によってES−A(1st)の正当性を検証することができる。
図示しないが、更に、ES−A(2nd)とATS(3rd)を要素とするES−A(3rd)、ES−A(3rd)とATS(4th)を要素とするES−A(4th)、・・・と更に世代を続けることができる。
【0053】
以上のように構成された長期署名データは、次のようにして作成される。
まず、ES−XLまで作成し、署名タイムスタンプと検証情報が有効なうちにATS(1st)を取得し、ES−A(1st)を構築する。
そして、ATS(1st)が有効性を失う前(タイムスタンプトークンの公開鍵証明書の有効期限切れや失効前、あるいは、関連する暗号アルゴリズムの危殆化前)に、ATS(2nd)を取得する。
以下、同様にして現在のATSが有効性を失う前に次世代のATSを取得していくことを繰り返す。
このようにして、ES−XLに対してATSが時系列的に付与され、最新の世代のATSが有効期限内である長期署名データが得られる。
【0054】
このように、長期署名システム1では、原本データに属性値群を付属させて長期署名を行うことができるほか、原本データや署名用の秘密鍵といった機密情報をクライアント端末3から外部に出さずにクライアント端末3と長期署名サーバ2が協働することにより長期署名データを作成できるという効果もある。
なお、長期署名サーバ2に属性値群と原本データ、及び署名用の秘密鍵を預けて、長期署名サーバ2で全ての処理を行うように構成することも可能である。
【0055】
図6は、文書管理システム9によってクライアント端末3に表示される属性表示画面の一例を示した図である。
文書管理システム9は、原本データ、属性値群、XAdES(長期署名データ)を組にして圧縮した長期署名一式データを長期署名システム1から受け取ると、これを解凍し、原本データ、属性値群、XAdESをそれぞれのデータベースのテーブルに保存する。
【0056】
属性表示画面では、これらデータベースに保存された各値が、それぞれのフィールドに設定されて表示される。
図では、文書名として「C−J−01−001−1−製品企画書.pdf」なる原本データのファイル名、「ES−A.xml」なるXAdESファイル名、及び、「作成日」、「機密レベル」、・・・などの各属性値が表示されている。
【0057】
図7は、長期署名登録システム8が長期署名用圧縮データを作成する手順を説明するためのフローチャートである。
以下の処理は、クライアント端末3のCPU31が所定のプログラムに従って行うものである。
【0058】
まず、クライアント端末3は、原本データを取得する(ステップ5)。
この処理は、登録画面(図3)でユーザが長期署名の対象となる原本データを指定してファイル名を設定することにより行われる。
次に、クライアント端末3は、当該原本データに付随させる属性値群を取得する(ステップ10)。
この処理は、登録画面でユーザが各属性値を設定することにより行われる。
【0059】
以降の処理は、ユーザが登録画面で「登録ボタン」をクリックすることにより開始される。
まず、クライアント端末3は、原本データと属性値群を対応づけて格納するためのフォルダを作成する(ステップ15)。
次に、クライアント端末3は、各属性値をファイル名とするテキストファイルを属性値ごとに作成し、ステップ15で作成したフォルダに当該テキストファイルと原本データを格納する(ステップ20)。
【0060】
次に、クライアント端末3は、原本データとテキストファイルを格納したフォルダをフォルダごと所定の方式で圧縮し、単一のファイルからなる長期署名用圧縮データを作成する(ステップ25)。
そして、クライアント端末3は、作成した長期署名用圧縮データを長期署名用のフォルダに格納することにより長期署名システム1に登録する。
【0061】
図8は、長期署名システム1が長期署名一式データを生成する手順の前半を説明するためのフローチャートである。
以下の処理は、クライアント端末3のCPU31と、長期署名サーバ2のCPU21が所定のプログラムに従って行うものである。
【0062】
まず、クライアント端末3は、長期署名用のフォルダに長期署名用圧縮データが格納されたか否かを監視している(ステップ30)。
長期署名用圧縮データが格納されていない場合は(ステップ30;N)、引き続き監視を継続し、長期署名用圧縮データが格納された場合は(ステップ30;Y)、ユーザ名、パスワードなどのログイン情報を長期署名サーバ2に送信する(ステップ35)。
【0063】
このログイン情報の送信は、予めクライアント端末3にログイン情報を記憶しておき、自動的に行ってもよいし、あるいは、クライアント端末3がユーザが装着したICカードから読み取ってもよいし、更には、表示部36にログイン画面を表示して、ユーザが入力し、これを送信してもよい。
【0064】
長期署名サーバ2は、クライアント端末3からログイン情報を受信すると、これによってユーザを認証してログイン処理を行い、ログイン処理が完了した旨をクライアント端末3に送信する(ステップ40)。
【0065】
クライアント端末3は、ログインの完了を確認すると、長期署名用圧縮データを解凍して原本データと属性値群を取り出し、原本データファイル名とそのハッシュ値、および、それぞれの属性値ファイル名とそれぞれのハッシュ値の一式である属性値原本ハッシュ値を計算する。
そして、クライアント端末3は、署名用の秘密鍵の公開鍵証明書と属性値原本ハッシュ値を長期署名サーバ2に送信する(ステップ45)。
【0066】
長期署名サーバ2は、クライアント端末3から公開鍵証明書と属性値原本ハッシュ値を受信すると、これを用いてSignedInfoを生成し、クライアント端末3に送信する(ステップ50)。
クライアント端末3は、長期署名サーバ2からSignedInfoを受信すると、これを署名用の秘密鍵で電子署名する(ステップ55)。
そして、クライアント端末3は、当該電子署名による署名値を長期署名サーバ2に送信する(ステップ60)。
【0067】
長期署名サーバ2は、署名値を受信すると、その署名値に対するタイムスタンプ要求をタイムスタンプサーバ5に送信してSTSを署名値ごとに発行してもらい、これら署名値に対するSTSをタイムスタンプサーバ5から受信して取得する(ステップ65)。
なお、タイムスタンプサーバ5にアクセスが集中しており、長期署名サーバ2がタイムスタンプサーバにアクセスできなかった場合、長期署名サーバ2がクライアント端末3に待ち時間を指定し(例えば、10分)、クライアント端末3が指定された時間にアクセスをリトライするように構成することもできる。
【0068】
長期署名サーバ2は、先にクライアント端末3が送信した公開鍵証明書、SignedInfo、署名値などからESを作成し、これにタイムスタンプサーバ5から取得したSTSを付与してES−Tを作成する(ステップ70)。長期署名サーバ2は、作成したES−Tを所定のディレクトリに保存する。
【0069】
そして、長期署名サーバ2は、保存したES−Tで用いられている署名値とSTSの検証に必要な公開鍵証明書と失効情報を判断し、定期的にリポジトリサーバ6、7にアクセスして、これらの公開鍵証明書と失効情報を収集する。
【0070】
次に、長期署名サーバ2は、ES−T(所定のフォルダに保存したものと同じもの)、及びES−Tチケットをクライアント端末3に送信する(ステップ75)。
ES−Tチケットには、クライアント端末3が以降の処理を開始する時間を指定する情報や、長期署名サーバ2が以降の処理を再開する際に処理対象となっているXAdESを特定する情報などが含まれている。
クライアント端末3は、長期署名サーバ2から、これらの情報を受信して格納する(ステップ80)。
【0071】
以上で前半の処理は終了し、クライアント端末3は、ES−Tチケットで指定された時間まで長期署名データ生成処理を休止する。この休止期間は、リポジトリサーバ6、7で失効情報などが更新される時間を見込んだ時間であり、例えば、24時間程度である。
このように休止期間を設けるのは、リポジトリサーバ6、7が提供する失効情報が最新のものに更新されるまでの時間を稼ぐためである。即ち、クライアント端末3が電子署名したり、タイムスタンプサーバ5がSTSを発行した時点で、本来は公開鍵証明書が失効しているにもかかわらず、まだ失効情報などが更新されていない事態を回避するためである。
【0072】
図9は、長期署名システム1で長期署名一式データを生成する手順の後半を説明するためのフローチャートである。
クライアント端末3は、ES−Tチケットで指定された所定時間が経過したか監視する(ステップ100)。
所定時間が経過していない場合(ステップ100;N)、クライアント端末3は、監視を継続する。
一方、所定時間が経過した場合(ステップ100;Y)、クライアント端末3は、ログイン情報を長期署名サーバ2に送信する(ステップ105)。
【0073】
長期署名サーバ2は、クライアント端末3からログイン情報を受信すると、これによってユーザを認証してログイン処理を行い、ログイン処理が完了した旨をクライアント端末3に送信する(ステップ110)。
クライアント端末3は、長期署名サーバ2からログイン処理が完了した旨を受信すると、格納しておいたES−Tチケットを長期署名サーバ2に送信する(ステップ115)。
【0074】
長期署名サーバ2は、クライアント端末3からES−Tチケットを受信すると、これを確認し、クライアント端末3が何れのXAdESに係る処理を続行しようとしているのかを認識する。
これにより、長期署名サーバ2は、当該XAdESで使用する検証情報を特定し、クライアント端末3に送信する(ステップ120)。
【0075】
クライアント端末3は、長期署名サーバ2から検証情報を受信すると、ES−Tに検証情報を付与してES−XLを生成することにより検証情報を埋め込む(ステップ125)。
【0076】
次に、クライアント端末3は、ATS(1st)を付与する前のXAdESから、長期署名対象データを生成し、これを長期署名サーバ2に送信してATS(1st)の取得を要求する(ステップ130)。
長期署名対象データには、例えば、原本データ、署名値、STS、検証情報などの非改竄性を検証するための情報(例えば、これらのハッシュ値)が含まれている。
【0077】
長期署名サーバ2は、クライアント端末3から長期署名対象データを受信すると、これらをタイムスタンプサーバ5に送信し、タイムスタンプサーバ5から、これに対して発行されたタイムスタンプ、即ちATS(1st)を取得する(ステップ135)。
【0078】
次に、長期署名サーバ2は、XAdESに関しては、所定のディレクトリに保存しておいたXAdES−Tに検証情報とATS(1st)を付与してXAdES−A(1st)を生成してクライアント端末3に送信する(ステップ140)。
クライアント端末3は、XAdESに関しては、XAdES−A(1st)を受信して保存する(ステップ145)。
【0079】
以上のようにして、長期署名システム1は、XAdESを生成する。
その後、長期署名システム1は、原本データ、属性値群、XAdESを組にして圧縮し、長期署名一式データを作成し、文書管理システム9に出力する。
ここで用いる圧縮手順は、長期署名用圧縮データの圧縮手順と同じであり、長期署名システム1は、フォルダを生成して、当該フォルダに、原本データ、属性値をファイル名とするテキストファイル群、及びXAdESを格納し、フォルダごと圧縮する。
【0080】
以上に説明した実施の形態により、次のような効果を得ることができる。
(1)長期に渡って証拠性を確保すべき文書管理システムにおいて、原本データと属性値をまとめて証拠化することができる。
(2)原本データの中に属性値を含めないため、原本データの再利用が可能となる。
(3)システム間でデータ群をやり取りする際に、対応するデータ群を対応づけて圧縮することにより1つのデータにすることができ、これによってデータの散逸を防止することができる。
(4)属性値をファイル名とすることにより、圧縮された状態のまま属性値を読み出すことができる。
(5)属性値を読み出して表示することによりユーザが属性値を確認・検証することができる。
(6)原本データ、属性値、XAdESを1つの証拠化ファイルとすることができ、管理が容易になる。
(7)長期署名登録システム8、長期署名システム1、文書管理システム9が連携することにより、原本データに対する属性値の設定、原本データと属性値に対する長期署名の生成、及び管理を一貫して行うことができる。
(8)署名用の秘密鍵や原本データといった秘密情報をクライアント端末3の外部に出さずにクライアント端末3と長期署名サーバ2が協働して長期署名データを作成することができる。
【0081】
なお、実施の形態では、長期署名方式としてXAdESを例に説明したが、PAdES(PDF Advanced Electronic Signatures)など、他の方式を用いてもよい。
【0082】
以上に説明した実施の形態により、次の構成を得ることができる。
クライアント端末3は、登録画面で原本データの選択を受け付けることにより原本データを取得し、また、当該原本データに対する各属性値を設定するため、原本データを取得する原本データ取得手段と、前記取得した原本データに対して属性情報(属性値)を設定する設定手段を備えている。
また、クライアント端末3は、長期署名用圧縮データを作成することにより原本データと属性値群を対応づけているため、前記取得した原本データと前記設定した属性情報を対応づける対応づけ手段を備えている。
なお、実施の形態では、圧縮することにより1ファイルとしたが、これに限定するものではなく、非圧縮状態の1ファイルとしたり、あるいは、原本データと属性値群に共通の番号を付与して紐づけするなどしてもよい。
また、クライアント端末3は、長期署名サーバ2から原本データと属性値群の組に対するXAdESを受信するため、前記対応づけた原本データと属性情報に長期署名を行った長期署名データを取得する長期署名データ取得手段を備えている。
このため、クライアント端末3は、このような手段を備えた情報処理装置として機能している。
【0083】
また、クライアント端末3は、長期署名一式データを文書管理システム9に記憶することにより、原本データ、属性値群、XAdESを対応づけて記憶するため、前記取得した原本データ、前記設定した属性情報、及び前記取得した長期署名データ(XAdES)を対応づけて記憶する記憶手段を備えている。
【0084】
また、原本データ、属性値群、長期署名データは、長期署名一式データとして1のデータとすることにより対応づけられているため、前記記憶手段は、前記原本データ、前記属性情報、及び前記長期署名データから生成された1のデータを記憶している。
【0085】
また、文書管理システム9は、長期署名一式データから属性値を読み取って表示するため、クライアント端末3は、前記1のデータから前記属性情報を読み取って提示する提示手段を備えている。
【0086】
また、長期署名登録システム8は、原本データと属性値群を圧縮して長期署名用圧縮データとすることにより原本データ属性値群を対応づけるため、クライアント端末3は、前記対応づけ手段は、前記取得した原本データと前記設定した属性情報から1のデータを生成することにより前記原本データと前記属性情報を対応づけている。なお、非圧縮データとしたり、他の方法で原本データと属性値群を紐づけてもよい。
【0087】
また、クライアント端末3は、原本データを取得する原本データ取得機能と、前記取得した原本データに対して属性情報を設定する設定機能と、前記取得した原本データと前記設定した属性情報を対応づける対応づけ機能と、前記対応づけた原本データと属性情報に長期署名を行った長期署名データを取得する長期署名データ取得機能と、をコンピュータで実現する情報処理プログラムを実行して、長期署名登録システム8、長期署名システム1、文書管理システム9としての機能を発揮している。
【符号の説明】
【0088】
1 長期署名システム
2 長期署名サーバ
3 クライアント端末
4 インターネット
5 タイムスタンプサーバ
6 リポジトリサーバ
7 リポジトリサーバ
8 長期署名登録システム
9 文書管理システム

【特許請求の範囲】
【請求項1】
原本データを取得する原本データ取得手段と、
前記取得した原本データに対して属性情報を設定する設定手段と、
前記取得した原本データと前記設定した属性情報を対応づける対応づけ手段と、
前記対応づけた原本データと属性情報に長期署名を行った長期署名データを取得する長期署名データ取得手段と、
を具備したことを特徴とする情報処理装置。
【請求項2】
前記取得した原本データ、前記設定した属性情報、及び前記取得した長期署名データを対応づけて記憶する記憶手段を具備したことを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記記憶手段は、前記原本データ、前記属性情報、及び前記長期署名データから生成された1のデータを記憶することを特徴とする請求項2に記載の情報処理装置。
【請求項4】
前記1のデータから前記属性情報を読み取って提示する提示手段を具備したことを特徴とする請求項3に記載の情報処理装置。
【請求項5】
前記対応づけ手段は、前記取得した原本データと前記設定した属性情報から1のデータを生成することにより前記原本データと前記属性情報を対応づけることを特徴とする請求項1から請求項4までのうちの何れか1の請求項に記載の情報処理装置。
【請求項6】
原本データを取得する原本データ取得機能と、
前記取得した原本データに対して属性情報を設定する設定機能と、
前記取得した原本データと前記設定した属性情報を対応づける対応づけ機能と、
前記対応づけた原本データと属性情報に長期署名を行った長期署名データを取得する長期署名データ取得機能と、
をコンピュータで実現する情報処理プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2012−175552(P2012−175552A)
【公開日】平成24年9月10日(2012.9.10)
【国際特許分類】
【出願番号】特願2011−37380(P2011−37380)
【出願日】平成23年2月23日(2011.2.23)
【出願人】(000002325)セイコーインスツル株式会社 (3,629)
【Fターム(参考)】