タイムスタンプ機能付き保存装置
【課題】 ファイルサーバに保存しているデータに対してユーザが簡単に時刻認証を行える仕組みとユーザインタフェースを提供し、かつ、時刻認証の有効期限が来る前にユーザの設定に応じて有効期限の延長を行うことで、時刻認証の有効期限の問題に間違いなく対応できるようになる。
【解決手段】 ファイルサーバは、ユーザの設定に応じて、有効期限を自動的に延長する、或いは確認した上で延長する機能を持ち、延長した場合にはデータと以前のタイムスタンプとに関連付けて、新しいタイムスタンプを保存する。
【解決手段】 ファイルサーバは、ユーザの設定に応じて、有効期限を自動的に延長する、或いは確認した上で延長する機能を持ち、延長した場合にはデータと以前のタイムスタンプとに関連付けて、新しいタイムスタンプを保存する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、所定の通信媒体を介して他のデジタルデータ処理装置とつながっており、保存しているデジタルデータに対して時刻認証の機能を提供する保存装置に関するものである。
【背景技術】
【0002】
従来、コンピュータやプリンタ、FAX、複合機といったデジタルデータ処理装置には時計が搭載されているものがあり、データの作成時刻やジョブの処理時刻はこの時計が刻んでいる時刻を参照して付けられている。この時計が刻む時刻は、これら電子機器の管理者や使用者が自由に設定することが可能で、実際の時刻とは別の時刻が付けられることを防止出来ない。言い換えれば、電子機器のシステムソフトが付けた時刻は、第三者から見て正しいと信頼するに足りるシステムになっているとは言えない。
【0003】
又、従来例としては、例えば特許文献1をあげることが出来る。
【特許文献1】特開2000-276430号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
この問題を解決するためには、作成したデータが存在している時刻を公正明大な第三者に証明してもらえればよい。この証明を行う公正明大な第三者がいわゆる時刻認証局であり、これは精密な時計で刻まれる時刻に基づく時刻データ(タイムスタンプ)を付けてそれを認証するサービスをインターネット上で行っている。この時刻認証局は標準規格を満足する機能を備えているので、他者からそれが刻んだ時刻は正しいと認識される。即ち、タイムスタンプを付けることを依頼するもの、付けられたタイムスタンプを確認するもの、どちらもこの時刻認証局を信じることで、そのタイムスタンプも信用することが出来る。
【0005】
しかし、この時刻認証局にタイムスタンプを付けるように依頼することと付いたタイムスタンプを時刻認証局で確認することは、おおむねPC(パーソナルコンピュータ)上で行われている。具体的な手順は、PC上で何らかのデジタルデータを作成する。その後、PC上にてそのデジタルデータのハッシュ値を計算して、認証を受けたい時刻認証局を選択してそれに対してそのハッシュ値を送付し、時刻認証局にて作成されたタイムスタンプを受信し、紙原稿のデジタルデータと受信したタイムスタンプとをセットにして管理する。更に、そのタイムスタンプを時刻認証局にて確認するときは、タイムスタンプを時刻認証局に送付し、時刻認証局にて確認された結果を受信し、その結果をPCの画面上に表示する。以上の手順でもって時刻認証とその確認を行うが、この場合、時刻認証したデジタルデータとその時刻を証明するタイムスタンプとが別のファイルとして存在しており、管理が煩雑になるという問題がある。そこで、デジタルデータの保存を行う保存サーバにおいて時刻認証の生成・確認をも行えるようにようになれば、その手間を大きく省くことが可能になる。しかし、保存サーバというのはアクセス制限をつけることは可能であるが、一度保存サーバからローカルのデジタルデータ処理装置にダウンロードした後はそれを変更することを防止することが出来ない。時刻認証したタイムスタンプとそのデジタルデータは、認証後は変更されないようにすべきである。これは、認証後にデジタルデータが変更されれば時刻認証したタイムスタンプによって無効であると判定されることを意味する。更に、タイムスタンプは他のデジタル証明書と同様にその有効期限が存在する。有効期限が過ぎるとタイムスタンプが押されていてもその内容の改変や存在時刻の証明が出来なくなるという問題がある。
【0006】
本発明は、上記の問題点を解消するためになされたもので、デジタルデータを編集可能なように保存しながら、時刻認証の検証が行えるように変更不可能な形式で保存することが可能で、更にタイムスタンプの有効期限の問題を解決することが可能な保存サーバを提供する。
【課題を解決するための手段】
【0007】
データを保存する保存装置において、
保存しているデータのハッシュ値を計算する手段と、
前記ハッシュ値を時刻認証局に送信する手段と、
前記時刻認証局に時刻認証を要求する手段と、
前記時刻認証局から受信したタイムスタンプを保存する手段と、
を備える。
【発明の効果】
【0008】
以上説明したように、本発明によれば、保存サーバにデジタルデータを保存しながら時刻認証を行うことができ、いつでも保存していたデジタルデータを編集するために可変な形でダウンロードしたり、時刻認証されたデジタルデータを第三者に送信して証明するために時刻認証された変更不可の形でダウンロードしたりすることが可能となる。
【発明を実施するための最良の形態】
【0009】
〔システム構成〕
図1は、本発明の実施例における機器の構成図ある。ここでは、画像処理装置102、情報処理装置103、時刻認証サーバ104、保存サーバ105が存在しており、これらはネットワーク101を介して相互に通信可能である。画像処理装置102は、紙原稿をスキャンしたり、情報処理装置103から送られてきた印刷ジョブを処理して印刷したり、情報処理装置103からFTPプロトコルでputされた印刷データを処理したり、紙原稿をスキャンしその画像をPDFデータに変換しメールに添付した上で情報処理装置103や保存サーバ105に送信したりする機能が備わっている。情報処理装置103は、文書ソフトなどのアプリケーションによってデジタルデータを作成したり、そのデジタルデータのハッシュ値を計算して時刻認証サーバ104に送信したり、その後時刻認証サーバ104からタイムスタンプを受信したりする機能が備わっている。時刻認証サーバ104は、規格に準拠して正確な時間を刻む時計を有しており、それに基づいたタイムスタンプを生成し、画像処理装置102、情報処理装置103、保存サーバ105などの要求に従ってそのタイムスタンプを送信したり、作成したタイムスタンプを検証したりする機能が備わっている。保存サーバ105は、画像処理装置102、情報処理装置103、時刻認証サーバ104などの要求に従ってこれらからデジタルデータを受信して保存したり、これらへ送信したりする機能が備わっている。
【0010】
この図において画像処理装置、情報処理装置、時刻認証サーバと保存サーバは、それぞれ1台しか示されていないが、複数台ある場合も同様に考えられる。なお、本実施例の場合、このネットワーク101はLAN(ローカルエリアネットワーク)でもINTRANET(イントラネット)、INTERNET(インターネット)でもでも構わない。これら複数の機器をネットワーク接続するものであればどのような形式のネットワークでも良い。例えば、ケーブルがフロアやビル内のオフィスにおけるコンピュータを接続するネットワークであるLANによく使われる。インターネットとの接続方式としては、古くは電話によるダイアルアップから、最近はxDSLや光ファイバによるブロードバンド接続がよく使われる。以上より、画像処理装置102、情報処理装置103、時刻認証局104、保存サーバ105がインターネット上に存在する場合も、イントラネット上に存在する場合も、同様に実施可能である。
【0011】
〔デジタルデータの作成から保存サーバへのアップロード時のユーザオペレーション〕
ここでは、デジタルデータを作成し、これを保存サーバへのアップロードする場合について述べる。
【0012】
まず、ユーザは、PC(パーソナルコンピュータ)に代表される情報処理装置103において、文書ソフトなどのアプリケーションによってデジタルデータを作成する。作成が完了するとそれをデジタルデータとして保存する。ユーザは、このデジタルデータを他人が再編集を行えるように共有したいと考えたので、ネットワーク上の保存サーバ105へのアップロードし、このデジタルデータを保存サーバ105にて保存する。
【0013】
あるいは、コピーおよび複合機に代表される画像処理装置102によってデジタルデータが作成される場合も考えられる。ユーザは画像処理装置102に装備しているスキャナに紙原稿をセットしスタートさせる。画像処理装置102は紙原稿をスキャンしそのイメージを読み取り、それをTIFFやJPEGといったデジタルデータに変換し、さらにはマルチTIFFやPDFといったファイル形式に変換する。それを画像処理装置102から直接保存サーバ105へアップロードしたり、一旦そのデジタルデータを情報処理装置103に転送して保存サーバ105へアップロードしたりする。その後、保存サーバ105はデジタルデータを受信して保存する。
【0014】
保存サーバ105の例として、Cabinetを示す。図2はそのサービスにログインしたときの操作画面の例である。画面の一行目201にはこの操作画面において操作できるコマンドのメニューが選択できるバーがある。この場合、ファイル202、コマンド203、ヘルプ204がある。画面の二行目205にはCabinetにログインしたユーザ名を表示いる。この場合、ログイン名はAAA_USER005656である。画面の三行目206にはCabinetにログインした後、そのユーザがアクセスできるトップディレクトリ名を表示している。その下の左半分のフォルダ一覧画面207にはその配下にあるフォルダの一覧を表示している。そして、その右半分のデジタルデータ一覧画面209には、その左半分のフォルダ一覧画面207で選択したフォルダ(この場合は、Personal208)内のデジタルデータを一覧で示している。この場合、四つのデジタルデータが保存されていて、そのデジタルデータ名212やデジタルデータサイズ213、作成日214、代表頁のサムネール表示211、タイムスタンプの状態215などが示される。このフォルダ名とその日付から、目的のデジタルデータにアクセスすることが出来る。図2の画面例は専用アプリケーションでの操作画面の例であるが、何でも良い。他には、Webクライアントとしてマイクロソフト社のインタネットエクスプローラやHTTPクライアントも考えられる。
【0015】
保存サーバへのアップロード時、デジタルデータごと整理をするためにフォルダを作成する。図2のメニューバー201からコマンド203を選択すると、図4に示されるようにコマンドとして用意されている機能から選択できるようになる。ここで、「フォルダの作成」406を選択すると、図3の左に示すようにフォルダの名前付けを行う画面301が表示される。ここでフォルダ名302を入力すると、図2のフォルダ一覧画面207に新しいフォルダが作成される。
【0016】
その後、新規に作成したフォルダを選択し、このフォルダ内にデジタルデータをアップロードすることを指示する。更に、メニューバー201からコマンド203を選択し、図4のアップロード402を選択する。すると、図3の右に示すようにアップロードするデジタルデータの名前を入力する画面303が表示される。ここでデジタルデータ名304を入力すると、図2のデジタルデータ一覧画面209にアップロードされたデジタルデータが表示される。その画面においては、そのデジタルデータ名212やデジタルデータサイズ213、作成日214、代表頁のサムネール表示211、タイムスタンプの状態215などが示される。デジタルデータをアップロードした後、保存サーバ105にアクセスすると図2のように保存サーバ105に保存されているデジタルデータを見ることが出来る。
【0017】
〔時刻認証取得時のユーザオペレーション〕
ここでは、保存サーバにて保存されているデジタルデータに対して時刻認証を行う場合について述べる。
【0018】
まず、ユーザは保存サーバ105にログインし、目的のデジタルデータを特定する。ここまでの方法は既に前節で述べたものと同じである。特定後は、保存サーバ105が時刻認証を有しているので、その実行を指示する。この時の画面表示の例を図3に具体例を示す。
【0019】
例えば図2の画面においては、フォルダ一覧画面207において目的のフォルダ名を選択するとそのフォルダ内に保存しているデジタルデータが表示される。図2においては、フォルダ一覧画面207において「Personal」208を選択すると、このフォルダ内に保存されている4つのデジタルデータがデジタルデータ一覧画面209に表示され、この場合「friend」「marriage」「cards」「map」が保存されている。例えば、「cards」という名前のデジタルデータに対して時刻認証を行う操作について説明する。「cards」というデジタルデータは、そのTime stamp欄215を見ると「none」と示されており、これはそのデジタルデータが時刻認証されていないことを示している。
【0020】
図2のデジタルデータ一覧画面209において、「cards」というデジタルデータのcheck欄210にあるチェックボックスを選択する。チェックされるとチェックボックスが白から黒に変化する。その後、コマンド203から図4に示す「時刻認証を行う」408を実行する。ユーザに対する確認の画面が表示された後、保存サーバ105は「cards」というデジタルデータに対して時刻認証を行う。
【0021】
保存サーバ105に保存されているデジタルデータに対して時刻認証を行う操作方法は上記の方法は一例であるので、デジタルデータの選択方法や選択したデジタルデータに対して時刻認証を指示する方法は、ユーザが保存サーバ105に対して指示が行えるようになっていれば、この画面を実現するアプリケーションやOSに依存していて異なっていても構わない。
【0022】
時刻認証サーバ104によって時刻認証された後、保存サーバ105は時刻認証サーバ104からタイムスタンプを受信する。受信したタイムスタンプは、時刻認証したデジタルデータ(この場合は「cards」である)と関連付けされて保存される。例えば、時刻認証したデジタルデータとタイムスタンプを保存サーバ105の同じフォルダ内に保存する方法が考えられる。
【0023】
例えば、図2のデジタルデータ一覧画面209においては、デジタルデータ「friend」が時刻認証され、そのタイムスタンプが保存されている状態であり、タイムスタンプの状態215において「done」と表示されている。
【0024】
〔時刻認証確認時のユーザオペレーション〕
ここでは、時刻認証取得後に、ユーザが時刻認証を行いたい場合について述べる。
【0025】
まず、ユーザは保存サーバ105にログインし、目的のデジタルデータを選択する。ここまでの方法は既に前節で述べたものと同じである。図2のデジタルデータ一覧画面209に示されている4つのデジタルデータのうち、「friend」は、そのTime stamp欄215が「done」となっているので、これは上記で説明したように、時刻認証されそのタイムスタンプが保存されている状態であることを示している。デジタルデータ「friend」を選択すると、そのcheck欄210は白から黒に表示が変わる。その後、コマンド203から図4に示す「時刻認証を検証する」409を実行する。ユーザに対する確認の画面が表示された後、保存サーバ105はデジタルデータ「friend」に対して時刻認証の検証を行う。時刻認証サーバ104から送られた検証の結果を保存サーバ105はユーザに対して表示する。その結果表示の画面例を図10に示す。ここでは、結果表示欄1002に「有効です」「無効です」とそれぞれ表示される。また、時刻認証サーバ104が検証した時刻も検証時刻欄1003に表示される。
【0026】
また、図2のデジタルデータ一覧画面209においては、デジタルデータ「marriage」が時刻認証されそのタイムスタンプが保存され、時刻認証サーバ104にて検証され、それが有効である状態であり、タイムスタンプの状態215において「valid」と表示されている。
【0027】
この検証における「有効です」は、作成したタイムスタンプが時刻認証サーバ104にて作成されたものであり、作成後から検証した時点までに改竄がないことを保証するというものである。となると、検証した以降は改竄の保証がないので、将来においても有効であることを意味しない。しかし、ユーザにとってデジタルデータを見たときに有効であって欲しいという要望がある。この場合、保存サーバにアクセスしたときに常に時刻認証の検証を行ってその結果を表示するようにすればよい。これは、時刻認証取得時にオプションとして、常に検証するのか、ユーザの指示時にのみ件所を行うのかを選択できるようにすればよい。このオプションの選択画面の例を図11に示す。
【0028】
これにより、ユーザは目的のデジタルデータについてタイムスタンプの存在とその正当性を簡単に認識することが出来る。
【0029】
更に、ユーザがその時刻認証の検証結果を印刷する場合について述べる。図10に示すように検証結果が表示されると、図5に示すようにユーザがその結果を印刷指示できる画面501が表示される。この画面501では印刷出力するモードが選択できるようになっている。
【0030】
図5における表紙印刷502とは、画面に表示されている内容に準じて、画像のサムネール、名称、日付と共に検証結果を印刷出力するモードである。図5におけるリンク印刷503とは、保存サーバ105に保存されているデジタルデータへのリンクを示すリンクデータを印刷出力するモードである。図5における本文印刷504とは、保存サーバに保存されている認証されたデジタルデータの全頁を印刷出力するモードである。これらの印刷モードは組み合わせて指定することが出来る。ユーザはモードの指定後、OKボタン505を押すことで印刷を開始させることができる。これらの印刷モードを指定して印刷を行うと、時刻認証の検証結果である有効、時刻認証された時刻、タイプスタンプを発行した時刻認証サーバ104の名前などのID情報、時刻認証を検証した時刻といった基本情報と共に、指定したオプションを印刷する。或いは無効といった検証結果と共に指定したオプションを印刷する。
【0031】
キャンセルボタン506を押すと印刷は行われない。
【0032】
図12に、その印刷出力の例を示す。1201は基本情報を印刷した出力例である。この基本情報1201には、デジタルデータ名1202(この場合はmarriage)、検証結果1203(この場合は有効)、認証時刻1204(この場合は、2003.09.15 15:23に認証済み)、その認証を行った認証サーバ1205(この場合はCabinet)、そして時刻認証を検証した時刻1206(この場合は、2003.09.18 18:01)が記載されている。図5における表紙印刷502を指定した場合、出力紙1211が出力される。この出力紙1211には、デジタルデータ名1212(この場合はmarriage)、デジタルデータの作成日付1213(この場合は、2003.09.10 10:10)、検証結果1214(この場合は有効)、そして代表ページのサムネール1215が記載されている。図5におけるリンク印刷503を指定した場合、出力紙1221が出力される。この出力紙1221には、デジタルデータ名1222(この場合はmarriage)とデジタルデータへのリンク情報1223(この場合リンク情報をバーコード化して印刷し、バーコードスキャナで呼び出すことで正確にリンク情報が入力できるようになっている)が記載されている。図5における本文印刷504を指定した場合、出力紙1231が出力される。これはデジタルデータを印刷出力したものである。これら印刷出力1201、1211、1221、1231はそれぞれの用紙に印刷されるばかりでなく、まとめて印刷される場合もありうる。
【0033】
以上の操作を行うことで、ユーザはタイムスタンプつきの印刷出力に対する認証された時刻と認証されたデジタルデータを得ることが出来、それによって時刻認証された印刷出力の確認を行うことが出来る。
【0034】
〔時刻認証の有効期限〕
タイムスタンプは他のデジタル証明書と同様にその有効期限が存在する。暗号方式や鍵長にも依るが、数年であることが多い。その有効期限が過ぎるとタイムスタンプが押されていてもその内容の改変や存在時刻の証明が出来なくなるという問題がある。
【0035】
図2のデジタルデータ一覧画面209には、フォルダ「Personal」208内に保存されている4つのデジタルデータ(「friend」「marriage」「cards」「map」)を表示している例である。例えば、デジタルデータ「marriage」はタイムスタンプの状態215において「valid」と表示されているが、これは時刻認証されそのタイムスタンプが保存され、時刻認証サーバ104にて検証され、それが有効であることを示している。例えば、デジタルデータ「map」はタイムスタンプの状態215において「invalid」と表示されているが、これは時刻認証されそのタイムスタンプが保存され、時刻認証サーバ104にて検証された所、それが無効であることを示している。この無効は、内容が改竄されたりタイムスタンプが改竄されたりした場合以外にも、タイムスタンプの有効期限が超過している場合も相当する。
【0036】
有効期限を超過してタイムスタンプが押されたデータを無効なものにしないためには、有効期限内に再度タイムスタンプをつける方法がある。具体的には、タイムスタンプを含めたデジタルデータに対してハッシュ値を計算して、後は上記で述べたように初めてタイムスタンプをつけた方法と同様に、それを時刻認証サーバ104に送信し新しいタイムスタンプを取得すればよい。再発行時の時刻認証サーバは、以前の時刻認証サーバである必要は無く、更に同じ暗号方式や鍵長である必要も無い。この様にして有効期限を延長することで、長期間のタイムスタンプの有効性を保証することが出来る。
【0037】
しかし、保存サーバにてタイムスタンプ付きのデジタルデータを保管している場合、その有効期限が過ぎてしまい無効となることに気が付きにくいものである。そこで、保存サーバにて時刻認証を行うとき、有効期限を考慮した保存の方法を提供する。例えば、図2のデジタルデータ一覧画面209において、「cards」というデジタルデータのcheck欄210にあるチェックボックスを選択する。チェックされるとチェックボックスが白から黒に変化する。その後、コマンド203から図4に示す「時刻認証を行う」408を実行する。ユーザに対する確認の画面が表示された後、保存サーバ105は「cards」というデジタルデータに対して時刻認証を行う。この時、図13に示すように、有効期限に関するオプション設定を行う。有効期限に関するオプション設定を行う画面1301が表示される。この中で、有効期限を保存サーバ105にて監視し、それが来る前に自動的に再度タイムスタンプを生成し有効期限を延長するように設定するのが、チェックマーク「有効期限を自動延長する」1302である。それに対し、自動ではなくそのデジタルデータの管理者に対し延長の指示を仰ぐのが、チェックマーク「有効期限の延長の前に確認する」1303である。この場合、延長の指示を仰ぐ管理者に関する情報を登録する必要があり、「確認先情報」の設定ボタン1304にて情報を登録する。登録情報の一例として、名前1305とメールアドレス1306を示している。
【0038】
〔有効期限延長に関する保存サーバの動作〕
保存サーバ105は、図13にて設定された情報に基づき有効期限の延長に関する動作を行う。
【0039】
保存サーバ105が保存している全てのデジタルデータに対して、そのタイムスタンプ内の情報からタイムスタンプの有効期限を捕捉する。保存サーバ105はその有効期限と保存サーバ105が持つ現在時刻とを比較し、有効期限になる適切な時間の前に、延長に関する動作を始める。デジタルデータの延長設定が自動延長の場合には、デジタルデータとそのタイムスタンプを合わせたデータに対するハッシュ値を計算する。そのハッシュ値を時刻認証サーバ104に送信し、新しいタイムスタンプを取得する。新しく得られたタイムスタンプをデジタルデータに関連付けされて保存される。この時、新旧合わせて複数個のタイムスタンプが存在する。そこで、タイムスタンプは作成した日付順に保存しておくことで、複数個のタイムスタンプの関連性が明確になる。
【0040】
次に、デジタルデータの延長設定が確認を取る場合について説明する。自動延長と同様に、保存サーバ105は有効期限になる適切な時間の前に、登録されている管理者に連絡を取り、延長するかどうかの判断を仰ぐ。デジタルデータの有効期限内に確認が取れれば、その指示に従う。延長する場合は、自動延長と同様に、デジタルデータとそのタイムスタンプを合わせたデータに対するハッシュ値を計算し、そのハッシュ値を時刻認証サーバ104に送信し、新しいタイムスタンプを取得し、新しく得られたタイムスタンプをデジタルデータに関連付けして保存する。この時、新旧合わせて複数個のタイムスタンプが存在するが、自動延長と同様に、タイムスタンプは作成した日付順に保存しておくことで、複数個のタイムスタンプの関連性が明確になる。
【0041】
最後に保存サーバ105は、タイムスタンプの延長を行うと、その結果を管理者に通知する。その通知先や通知方法は、図示はしていないが登録されている情報に基づいて、例えばeメールや音声電話、郵便などで通知される。
【0042】
〔保存サーバからデジタルデータのダウンロード時のユーザオペレーション〕
ここでは、保存サーバにて保存されているデジタルデータを取得する場合について述べる。
【0043】
ダウンロードには二つの目的が有り、保存していたデジタルデータを編集するために可変な形でダウンロードするものと、時刻認証されたデジタルデータを第三者に送信して証明するために時刻認証された変更不可の形でダウンロードするものがある。それぞれの場合、ダウンロードするデジタルデータは異なる。そこでユーザは保存サーバ105に対して可変な形でのダウンロードか、時刻認証された変更不可の形でのダウンロードかを明示してダウンロードを指示する。
【0044】
その操作方法を説明すると、図2において時刻認証されているデジタルデータを選択する。図2において上2つは時刻認証されているデジタルデータであり、下2つは時刻認証されていないデジタルデータである。これらのデジタルデータの中からダウンロードしたいものを選択する。Check欄210のチェックボックスを選択すると、白から黒に表示が変わる。その後、コマンド203からダウンロードを実行する。この時、保存していたデジタルデータを編集するために可変な形でダウンロードする場合は「可変形式でダウンロード」403を実行し、時刻認証されたデジタルデータを時刻認証された変更不可の形でダウンロードする場合は「時刻認証でダウンロード」404を実行する。この異なる操作によって、ユーザが欲するデジタルデータの形式を保存サーバ105に対して通知することが出来る。これによって、ユーザは保存サーバ105から異なる目的に適したそれぞれの形式のデジタルデータをダウンロードすることができる。
【0045】
〔時刻認証取得時の保存サーバの内部動作〕
ここでは、図6を用いて、時刻認証を取得する時、保存サーバの内部動作に関しての詳細な説明を行う。
【0046】
ユーザが指示を行うと、その指示がネットワーク101経由で保存サーバ105のデータ管理処理部158に送られ、保存サーバ105はそのデジタルデータの時刻認証を開始する。まず、保存サーバ105はデータ管理処理部158に管理しているデジタルデータに対してハッシュ値生成部153において一方向性関数を用いてハッシュ値を生成する。この時用いる一方向性関数とそのパラメータは、時刻認証局処理部154があらかじめ時刻認証サーバ104とネットワーク101経由でネゴシエーションを行い、時刻認証サーバ104が指定する一方向性関数とそのパラメータを認識してその時刻認証局処理部154内に保存している。この情報を用いてハッシュ値生成部153はハッシュ値を生成する。本実施例においては、どの時刻認証サーバであっても問題ない。一般的に運用上のメリットから、保存サーバ105が連携・契約している時刻認証サーバを用いられる。または、いくつかの時刻認証サーバと連携・契約しているのであれば、ユーザに対して選択肢を示し、ユーザの選択に従うということであっても良い。よって、どの時刻認証サーバにおいて認証するのか一意に決まるので、用いるべき一方向性関数とそのパラメータは決定できる。この時、複数の時刻認証サーバの管理を時刻認証局処理部154が行う。
【0047】
保存サーバ105はハッシュ値を生成した後、生成したハッシュ値をネットワーク101経由で時刻認証サーバ104へ送信し、時刻認証を要求する。時刻認証サーバ104においては、正確な時刻を刻む時計を持っていて、そこから正確な時刻を得ることが出来る。保存サーバ105から送信されたハッシュ値を受信すると、時刻認証サーバ104は、その時の時刻情報と送られたハッシュ値に対して認証サーバが持つ秘密鍵で持って電子署名を生成し、それをタイムスタンプとして保存サーバ105へ返信する。この認証シーケンスにおけるプロトコルは認証サーバが指定したものを用いる。一般的にはこのプロトコルは標準化されており、それに従ってタイムスタンプの取得が行われる。このシーケンスは、インターネット上の時刻認証局であろうとイントラネット上の時刻認証サーバであろうと、その方法は変わらない。
【0048】
〔時刻認証取得後の保存サーバの内部動作〕
ここでは、図6を用いて、時刻認証を取得した後の保存サーバの内部動作に関しての詳細な説明を行う。
【0049】
まず、保存サーバ105は、ネットワークインタフェース152によってネットワーク101経由で時刻認証サーバ104から送られてきたタイムスタンプを受信する。受信したタイムスタンプは、保存サーバ105内のデータ管理処理部158に送られそこで保存される。データ管理処理部158は時刻認証したデジタルデータとそのタイムスタンプとを関連付けて管理する。関連付けの具体的な方法は色々と考えられるが、例えば、一つのデジタルデータごとに一つのフォルダを用意し、その中に対となるデジタルデータとタイムスタンプを保存する方法や、XMLなどの記述言語を用いたデータによって対となるデジタルデータとタイムスタンプを特定する方法などが考えられる。
【0050】
或いは、デジタルデータとタイムスタンプを一つのデジタルデータに合体したうえで編集できない属性としたデータに変換した上で管理する方法もある。例えば、Adobe社のAcrobatに対する時刻認証プラグインによる管理がある。これは、データ管理処理部158にて管理されているデジタルデータを、タイムスタンプデータ処理部155においてPDFデータに変換する。その後、時刻認証サーバ104から送られデータ管理処理部158に保存されているタイムスタンプをタイムスタンプデータ処理部155に送り、タイムスタンプデータ処理部155においてPDFデータにタイムスタンプを埋め込む。その上で、Acrobatの暗号化機能を用いて編集できない属性としてPDFデータとしている。この方法は既にAcrobatにおいて実現されているので、この方法をそのまま使うことで、タイムスタンプが埋められた変更不可のデジタルデータとして管理する方法が実現できる。
【0051】
具体例には、時刻認証した2002.09.21_meeting_memo.docというデジタルデータとそのタイムスタンプである2002.09.21_meeting_memo.tmsというデジタルデータが存在している場合を考える。2002.09.21_meeting_memo.docをPDFファイルに変換しタイムスタンプを埋め込んだものが2002.09.21_meeting_memo.pdfというPDFデータである。このPDFデータは時刻認証したファイルの内容がわかる上に、タイムスタンプも内蔵しているのでこのPDFデータだけで時刻認証の検証を行うことも出来るという特徴がある。即ち、本特許における保存サーバ105はファイルを保存するためにファイルそのものを保存することと、時刻認証した場合にはそのタイムスタンプと、そのデータとタイムスタンプを一体化して編集不可能なファイルの3種類のファイルを保存するという特徴がある。これらはデータ管理処理部158によって管理されている。
【0052】
以上、時刻認証取得時の内部動作のステップをフローチャートにまとめると、図7のようになる。
【0053】
〔時刻認証確認時の保存サーバの内部動作〕
ここでは、図6を用いて、時刻認証を取得した後の保存サーバの内部動作に関しての詳細な説明を行う。
【0054】
ユーザが指示を行うと、その指示がネットワーク101経由で保存サーバ105のデータ管理処理部158に送られ、保存サーバ105はそのデジタルデータの時刻認証の確認を開始する。まず、保存サーバ105は、前節で記述しているようにその内部管理テーブル或いは別のXMLなどで記述されたリンクファイルによって、指定されたデジタルデータに対応するタイムスタンプを検索する。検索したタイムスタンプをタイムスタンプデータ処理部155において処理し、時刻認証を行った時刻認証サーバを特定する。特定された時刻認証サーバ104に対して、保存サーバ105はデータ管理処理部158に管理しているタイムスタンプをネットワークインタフェース152からネットワーク101経由で送信し、時刻認証の確認要求を行う。このタイムスタンプの構造は標準規格に規定されているので、時刻認証サーバの特定方法の詳細は記述しない。時刻認証サーバ104では確認要求があると、時刻認証サーバ104のみが持つ秘密鍵によってタイムスタンプ内の電子署名を復号化し改竄があったかどうかの判定を行い、同時に埋め込まれている時刻情報を取り出す。これらの結果を画像処理装置102に返信する。この認証確認シーケンスにおけるプロトコルは認証サーバが指定したものを用いる。一般的にはこのプロトコルは標準化されており、それに従ってタイムスタンプの取得が行われるので、詳細は省略する。
【0055】
保存サーバ105は、ネットワークインタフェース152によってネットワーク101経由で時刻認証サーバ104から送られてきた時刻認証の確認の結果を受信すると、これをタイムスタンプデータ処理部155に送る。タイムスタンプデータ処理部155は、その結果をデータ管理処理部158に通知する。データ管理処理部158はデジタルデータやタイムスタンプの存在と共に、その結果を表示し、ユーザに通知する。
【0056】
以上、時刻認証取確認時の内部動作のステップをフローチャートにまとめると、図8のようになる。
【0057】
〔デジタルデータのダウンロード時の保存サーバの内部動作〕
ここでは、図6を用いて、ユーザがデジタルデータのダウンロードを行う時の保存サーバの内部動作に関しての詳細な説明を行う。
【0058】
ユーザは保存サーバ105に対して、可変な形でのダウンロードか時刻認証された変更不可の形でのダウンロードかを明示してダウンロードを指示する。その指示がネットワーク101経由で保存サーバ105のデータ管理処理部158に送られ、保存サーバ105はそのデジタルデータのダウンロードを開始する。保存サーバ105の要求判定処理部157がその指示の内容を判断し、可変な形でのダウンロードか時刻認証された変更不可の形でのダウンロードかを判定する。これは前節でユーザのオペレーションに関して説明しているように、ユーザがどちらをしたいのかを指示する。それによって指示内容が異なるので、これを要求判定処理部157が判断すればよい。要求判定処理部157は、その判断をデータ管理処理部158に通知する。データ管理処理部158はその通知に基づいて、適切なデータをユーザに送信する。具体的には、可変な形でのダウンロード要求である場合、データ管理処理部158は管理しているデータのうちユーザがアップロードしたデジタルデータそのものを選択し、時刻認証された変更不可の形でのダウンロード要求である場合、データ管理処理部158は管理しているデータのうちタイムスタンプが埋められた変更不可のデジタルデータを選択する。データ管理処理部158は、ユーザのダウンロード要求に従い選択したデータを、ネットワークインタフェース152によってネットワーク101経由で送信する。これによって、保存サーバ105はその内部の保存しているデジタルデータのうち、可変な形で保存しているデジタルデータなのか時刻認証された変更不可の形で保存しているデジタルデータなのかを識別してユーザにダウンロードすることが可能となる。
【0059】
以上、内部動作のステップをフローチャートにまとめると、図9のようになる。
【0060】
〔保存サーバに時刻認証サーバ機能を持たせる〕
言うまでもなく、保存サーバに時刻認証サーバ機能を持たせることで、保存サーバがネットワークを介して時刻認証を行わなくて済むような構成とすることも考えられる。この構成にすれば、保存サーバで使われている時刻表示が正しいことが一般に認められるが、保存サーバから取り出されたデータの時刻属性が正しいことが常に証明されるわけではないので、時刻認証の必要性がなくなるわけではない。
【図面の簡単な説明】
【0061】
【図1】本発明に関連した装置のネットワーク構成図である。
【図2】実施例に示したデジタルデータを保存サーバへアップロードする時のユーザオペレーション画面の具体例である。
【図3】実施例に示したデジタルデータを保存サーバへアップロードする時のユーザオペレーション画面の具体例である。
【図4】実施例に示したFTPコマンドの具体例である。
【図5】実施例に示した時刻認証確認時のユーザオペレーション画面の具体例である。
【図6】実施例に示した保存サーバの構成図である。
【図7】実施例に示した時刻認証取得時の内部動作のステップをフローチャートで示したものである。
【図8】実施例に示した時刻認証確認時の内部動作のステップをフローチャートで示したものである。
【図9】実施例に示した時刻認証確認後の内部動作のステップをフローチャートで示したものである。
【図10】実施例に示した時刻認証の検証結果を表示する画面例である。
【図11】実施例に示した時刻認証のオプションを指定する画面例である。
【図12】実施例に示した時刻認証の検証結果の印刷例である。
【図13】実施例に示した時刻認証の有効期限オプションを指定する画面例である。
【技術分野】
【0001】
本発明は、所定の通信媒体を介して他のデジタルデータ処理装置とつながっており、保存しているデジタルデータに対して時刻認証の機能を提供する保存装置に関するものである。
【背景技術】
【0002】
従来、コンピュータやプリンタ、FAX、複合機といったデジタルデータ処理装置には時計が搭載されているものがあり、データの作成時刻やジョブの処理時刻はこの時計が刻んでいる時刻を参照して付けられている。この時計が刻む時刻は、これら電子機器の管理者や使用者が自由に設定することが可能で、実際の時刻とは別の時刻が付けられることを防止出来ない。言い換えれば、電子機器のシステムソフトが付けた時刻は、第三者から見て正しいと信頼するに足りるシステムになっているとは言えない。
【0003】
又、従来例としては、例えば特許文献1をあげることが出来る。
【特許文献1】特開2000-276430号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
この問題を解決するためには、作成したデータが存在している時刻を公正明大な第三者に証明してもらえればよい。この証明を行う公正明大な第三者がいわゆる時刻認証局であり、これは精密な時計で刻まれる時刻に基づく時刻データ(タイムスタンプ)を付けてそれを認証するサービスをインターネット上で行っている。この時刻認証局は標準規格を満足する機能を備えているので、他者からそれが刻んだ時刻は正しいと認識される。即ち、タイムスタンプを付けることを依頼するもの、付けられたタイムスタンプを確認するもの、どちらもこの時刻認証局を信じることで、そのタイムスタンプも信用することが出来る。
【0005】
しかし、この時刻認証局にタイムスタンプを付けるように依頼することと付いたタイムスタンプを時刻認証局で確認することは、おおむねPC(パーソナルコンピュータ)上で行われている。具体的な手順は、PC上で何らかのデジタルデータを作成する。その後、PC上にてそのデジタルデータのハッシュ値を計算して、認証を受けたい時刻認証局を選択してそれに対してそのハッシュ値を送付し、時刻認証局にて作成されたタイムスタンプを受信し、紙原稿のデジタルデータと受信したタイムスタンプとをセットにして管理する。更に、そのタイムスタンプを時刻認証局にて確認するときは、タイムスタンプを時刻認証局に送付し、時刻認証局にて確認された結果を受信し、その結果をPCの画面上に表示する。以上の手順でもって時刻認証とその確認を行うが、この場合、時刻認証したデジタルデータとその時刻を証明するタイムスタンプとが別のファイルとして存在しており、管理が煩雑になるという問題がある。そこで、デジタルデータの保存を行う保存サーバにおいて時刻認証の生成・確認をも行えるようにようになれば、その手間を大きく省くことが可能になる。しかし、保存サーバというのはアクセス制限をつけることは可能であるが、一度保存サーバからローカルのデジタルデータ処理装置にダウンロードした後はそれを変更することを防止することが出来ない。時刻認証したタイムスタンプとそのデジタルデータは、認証後は変更されないようにすべきである。これは、認証後にデジタルデータが変更されれば時刻認証したタイムスタンプによって無効であると判定されることを意味する。更に、タイムスタンプは他のデジタル証明書と同様にその有効期限が存在する。有効期限が過ぎるとタイムスタンプが押されていてもその内容の改変や存在時刻の証明が出来なくなるという問題がある。
【0006】
本発明は、上記の問題点を解消するためになされたもので、デジタルデータを編集可能なように保存しながら、時刻認証の検証が行えるように変更不可能な形式で保存することが可能で、更にタイムスタンプの有効期限の問題を解決することが可能な保存サーバを提供する。
【課題を解決するための手段】
【0007】
データを保存する保存装置において、
保存しているデータのハッシュ値を計算する手段と、
前記ハッシュ値を時刻認証局に送信する手段と、
前記時刻認証局に時刻認証を要求する手段と、
前記時刻認証局から受信したタイムスタンプを保存する手段と、
を備える。
【発明の効果】
【0008】
以上説明したように、本発明によれば、保存サーバにデジタルデータを保存しながら時刻認証を行うことができ、いつでも保存していたデジタルデータを編集するために可変な形でダウンロードしたり、時刻認証されたデジタルデータを第三者に送信して証明するために時刻認証された変更不可の形でダウンロードしたりすることが可能となる。
【発明を実施するための最良の形態】
【0009】
〔システム構成〕
図1は、本発明の実施例における機器の構成図ある。ここでは、画像処理装置102、情報処理装置103、時刻認証サーバ104、保存サーバ105が存在しており、これらはネットワーク101を介して相互に通信可能である。画像処理装置102は、紙原稿をスキャンしたり、情報処理装置103から送られてきた印刷ジョブを処理して印刷したり、情報処理装置103からFTPプロトコルでputされた印刷データを処理したり、紙原稿をスキャンしその画像をPDFデータに変換しメールに添付した上で情報処理装置103や保存サーバ105に送信したりする機能が備わっている。情報処理装置103は、文書ソフトなどのアプリケーションによってデジタルデータを作成したり、そのデジタルデータのハッシュ値を計算して時刻認証サーバ104に送信したり、その後時刻認証サーバ104からタイムスタンプを受信したりする機能が備わっている。時刻認証サーバ104は、規格に準拠して正確な時間を刻む時計を有しており、それに基づいたタイムスタンプを生成し、画像処理装置102、情報処理装置103、保存サーバ105などの要求に従ってそのタイムスタンプを送信したり、作成したタイムスタンプを検証したりする機能が備わっている。保存サーバ105は、画像処理装置102、情報処理装置103、時刻認証サーバ104などの要求に従ってこれらからデジタルデータを受信して保存したり、これらへ送信したりする機能が備わっている。
【0010】
この図において画像処理装置、情報処理装置、時刻認証サーバと保存サーバは、それぞれ1台しか示されていないが、複数台ある場合も同様に考えられる。なお、本実施例の場合、このネットワーク101はLAN(ローカルエリアネットワーク)でもINTRANET(イントラネット)、INTERNET(インターネット)でもでも構わない。これら複数の機器をネットワーク接続するものであればどのような形式のネットワークでも良い。例えば、ケーブルがフロアやビル内のオフィスにおけるコンピュータを接続するネットワークであるLANによく使われる。インターネットとの接続方式としては、古くは電話によるダイアルアップから、最近はxDSLや光ファイバによるブロードバンド接続がよく使われる。以上より、画像処理装置102、情報処理装置103、時刻認証局104、保存サーバ105がインターネット上に存在する場合も、イントラネット上に存在する場合も、同様に実施可能である。
【0011】
〔デジタルデータの作成から保存サーバへのアップロード時のユーザオペレーション〕
ここでは、デジタルデータを作成し、これを保存サーバへのアップロードする場合について述べる。
【0012】
まず、ユーザは、PC(パーソナルコンピュータ)に代表される情報処理装置103において、文書ソフトなどのアプリケーションによってデジタルデータを作成する。作成が完了するとそれをデジタルデータとして保存する。ユーザは、このデジタルデータを他人が再編集を行えるように共有したいと考えたので、ネットワーク上の保存サーバ105へのアップロードし、このデジタルデータを保存サーバ105にて保存する。
【0013】
あるいは、コピーおよび複合機に代表される画像処理装置102によってデジタルデータが作成される場合も考えられる。ユーザは画像処理装置102に装備しているスキャナに紙原稿をセットしスタートさせる。画像処理装置102は紙原稿をスキャンしそのイメージを読み取り、それをTIFFやJPEGといったデジタルデータに変換し、さらにはマルチTIFFやPDFといったファイル形式に変換する。それを画像処理装置102から直接保存サーバ105へアップロードしたり、一旦そのデジタルデータを情報処理装置103に転送して保存サーバ105へアップロードしたりする。その後、保存サーバ105はデジタルデータを受信して保存する。
【0014】
保存サーバ105の例として、Cabinetを示す。図2はそのサービスにログインしたときの操作画面の例である。画面の一行目201にはこの操作画面において操作できるコマンドのメニューが選択できるバーがある。この場合、ファイル202、コマンド203、ヘルプ204がある。画面の二行目205にはCabinetにログインしたユーザ名を表示いる。この場合、ログイン名はAAA_USER005656である。画面の三行目206にはCabinetにログインした後、そのユーザがアクセスできるトップディレクトリ名を表示している。その下の左半分のフォルダ一覧画面207にはその配下にあるフォルダの一覧を表示している。そして、その右半分のデジタルデータ一覧画面209には、その左半分のフォルダ一覧画面207で選択したフォルダ(この場合は、Personal208)内のデジタルデータを一覧で示している。この場合、四つのデジタルデータが保存されていて、そのデジタルデータ名212やデジタルデータサイズ213、作成日214、代表頁のサムネール表示211、タイムスタンプの状態215などが示される。このフォルダ名とその日付から、目的のデジタルデータにアクセスすることが出来る。図2の画面例は専用アプリケーションでの操作画面の例であるが、何でも良い。他には、Webクライアントとしてマイクロソフト社のインタネットエクスプローラやHTTPクライアントも考えられる。
【0015】
保存サーバへのアップロード時、デジタルデータごと整理をするためにフォルダを作成する。図2のメニューバー201からコマンド203を選択すると、図4に示されるようにコマンドとして用意されている機能から選択できるようになる。ここで、「フォルダの作成」406を選択すると、図3の左に示すようにフォルダの名前付けを行う画面301が表示される。ここでフォルダ名302を入力すると、図2のフォルダ一覧画面207に新しいフォルダが作成される。
【0016】
その後、新規に作成したフォルダを選択し、このフォルダ内にデジタルデータをアップロードすることを指示する。更に、メニューバー201からコマンド203を選択し、図4のアップロード402を選択する。すると、図3の右に示すようにアップロードするデジタルデータの名前を入力する画面303が表示される。ここでデジタルデータ名304を入力すると、図2のデジタルデータ一覧画面209にアップロードされたデジタルデータが表示される。その画面においては、そのデジタルデータ名212やデジタルデータサイズ213、作成日214、代表頁のサムネール表示211、タイムスタンプの状態215などが示される。デジタルデータをアップロードした後、保存サーバ105にアクセスすると図2のように保存サーバ105に保存されているデジタルデータを見ることが出来る。
【0017】
〔時刻認証取得時のユーザオペレーション〕
ここでは、保存サーバにて保存されているデジタルデータに対して時刻認証を行う場合について述べる。
【0018】
まず、ユーザは保存サーバ105にログインし、目的のデジタルデータを特定する。ここまでの方法は既に前節で述べたものと同じである。特定後は、保存サーバ105が時刻認証を有しているので、その実行を指示する。この時の画面表示の例を図3に具体例を示す。
【0019】
例えば図2の画面においては、フォルダ一覧画面207において目的のフォルダ名を選択するとそのフォルダ内に保存しているデジタルデータが表示される。図2においては、フォルダ一覧画面207において「Personal」208を選択すると、このフォルダ内に保存されている4つのデジタルデータがデジタルデータ一覧画面209に表示され、この場合「friend」「marriage」「cards」「map」が保存されている。例えば、「cards」という名前のデジタルデータに対して時刻認証を行う操作について説明する。「cards」というデジタルデータは、そのTime stamp欄215を見ると「none」と示されており、これはそのデジタルデータが時刻認証されていないことを示している。
【0020】
図2のデジタルデータ一覧画面209において、「cards」というデジタルデータのcheck欄210にあるチェックボックスを選択する。チェックされるとチェックボックスが白から黒に変化する。その後、コマンド203から図4に示す「時刻認証を行う」408を実行する。ユーザに対する確認の画面が表示された後、保存サーバ105は「cards」というデジタルデータに対して時刻認証を行う。
【0021】
保存サーバ105に保存されているデジタルデータに対して時刻認証を行う操作方法は上記の方法は一例であるので、デジタルデータの選択方法や選択したデジタルデータに対して時刻認証を指示する方法は、ユーザが保存サーバ105に対して指示が行えるようになっていれば、この画面を実現するアプリケーションやOSに依存していて異なっていても構わない。
【0022】
時刻認証サーバ104によって時刻認証された後、保存サーバ105は時刻認証サーバ104からタイムスタンプを受信する。受信したタイムスタンプは、時刻認証したデジタルデータ(この場合は「cards」である)と関連付けされて保存される。例えば、時刻認証したデジタルデータとタイムスタンプを保存サーバ105の同じフォルダ内に保存する方法が考えられる。
【0023】
例えば、図2のデジタルデータ一覧画面209においては、デジタルデータ「friend」が時刻認証され、そのタイムスタンプが保存されている状態であり、タイムスタンプの状態215において「done」と表示されている。
【0024】
〔時刻認証確認時のユーザオペレーション〕
ここでは、時刻認証取得後に、ユーザが時刻認証を行いたい場合について述べる。
【0025】
まず、ユーザは保存サーバ105にログインし、目的のデジタルデータを選択する。ここまでの方法は既に前節で述べたものと同じである。図2のデジタルデータ一覧画面209に示されている4つのデジタルデータのうち、「friend」は、そのTime stamp欄215が「done」となっているので、これは上記で説明したように、時刻認証されそのタイムスタンプが保存されている状態であることを示している。デジタルデータ「friend」を選択すると、そのcheck欄210は白から黒に表示が変わる。その後、コマンド203から図4に示す「時刻認証を検証する」409を実行する。ユーザに対する確認の画面が表示された後、保存サーバ105はデジタルデータ「friend」に対して時刻認証の検証を行う。時刻認証サーバ104から送られた検証の結果を保存サーバ105はユーザに対して表示する。その結果表示の画面例を図10に示す。ここでは、結果表示欄1002に「有効です」「無効です」とそれぞれ表示される。また、時刻認証サーバ104が検証した時刻も検証時刻欄1003に表示される。
【0026】
また、図2のデジタルデータ一覧画面209においては、デジタルデータ「marriage」が時刻認証されそのタイムスタンプが保存され、時刻認証サーバ104にて検証され、それが有効である状態であり、タイムスタンプの状態215において「valid」と表示されている。
【0027】
この検証における「有効です」は、作成したタイムスタンプが時刻認証サーバ104にて作成されたものであり、作成後から検証した時点までに改竄がないことを保証するというものである。となると、検証した以降は改竄の保証がないので、将来においても有効であることを意味しない。しかし、ユーザにとってデジタルデータを見たときに有効であって欲しいという要望がある。この場合、保存サーバにアクセスしたときに常に時刻認証の検証を行ってその結果を表示するようにすればよい。これは、時刻認証取得時にオプションとして、常に検証するのか、ユーザの指示時にのみ件所を行うのかを選択できるようにすればよい。このオプションの選択画面の例を図11に示す。
【0028】
これにより、ユーザは目的のデジタルデータについてタイムスタンプの存在とその正当性を簡単に認識することが出来る。
【0029】
更に、ユーザがその時刻認証の検証結果を印刷する場合について述べる。図10に示すように検証結果が表示されると、図5に示すようにユーザがその結果を印刷指示できる画面501が表示される。この画面501では印刷出力するモードが選択できるようになっている。
【0030】
図5における表紙印刷502とは、画面に表示されている内容に準じて、画像のサムネール、名称、日付と共に検証結果を印刷出力するモードである。図5におけるリンク印刷503とは、保存サーバ105に保存されているデジタルデータへのリンクを示すリンクデータを印刷出力するモードである。図5における本文印刷504とは、保存サーバに保存されている認証されたデジタルデータの全頁を印刷出力するモードである。これらの印刷モードは組み合わせて指定することが出来る。ユーザはモードの指定後、OKボタン505を押すことで印刷を開始させることができる。これらの印刷モードを指定して印刷を行うと、時刻認証の検証結果である有効、時刻認証された時刻、タイプスタンプを発行した時刻認証サーバ104の名前などのID情報、時刻認証を検証した時刻といった基本情報と共に、指定したオプションを印刷する。或いは無効といった検証結果と共に指定したオプションを印刷する。
【0031】
キャンセルボタン506を押すと印刷は行われない。
【0032】
図12に、その印刷出力の例を示す。1201は基本情報を印刷した出力例である。この基本情報1201には、デジタルデータ名1202(この場合はmarriage)、検証結果1203(この場合は有効)、認証時刻1204(この場合は、2003.09.15 15:23に認証済み)、その認証を行った認証サーバ1205(この場合はCabinet)、そして時刻認証を検証した時刻1206(この場合は、2003.09.18 18:01)が記載されている。図5における表紙印刷502を指定した場合、出力紙1211が出力される。この出力紙1211には、デジタルデータ名1212(この場合はmarriage)、デジタルデータの作成日付1213(この場合は、2003.09.10 10:10)、検証結果1214(この場合は有効)、そして代表ページのサムネール1215が記載されている。図5におけるリンク印刷503を指定した場合、出力紙1221が出力される。この出力紙1221には、デジタルデータ名1222(この場合はmarriage)とデジタルデータへのリンク情報1223(この場合リンク情報をバーコード化して印刷し、バーコードスキャナで呼び出すことで正確にリンク情報が入力できるようになっている)が記載されている。図5における本文印刷504を指定した場合、出力紙1231が出力される。これはデジタルデータを印刷出力したものである。これら印刷出力1201、1211、1221、1231はそれぞれの用紙に印刷されるばかりでなく、まとめて印刷される場合もありうる。
【0033】
以上の操作を行うことで、ユーザはタイムスタンプつきの印刷出力に対する認証された時刻と認証されたデジタルデータを得ることが出来、それによって時刻認証された印刷出力の確認を行うことが出来る。
【0034】
〔時刻認証の有効期限〕
タイムスタンプは他のデジタル証明書と同様にその有効期限が存在する。暗号方式や鍵長にも依るが、数年であることが多い。その有効期限が過ぎるとタイムスタンプが押されていてもその内容の改変や存在時刻の証明が出来なくなるという問題がある。
【0035】
図2のデジタルデータ一覧画面209には、フォルダ「Personal」208内に保存されている4つのデジタルデータ(「friend」「marriage」「cards」「map」)を表示している例である。例えば、デジタルデータ「marriage」はタイムスタンプの状態215において「valid」と表示されているが、これは時刻認証されそのタイムスタンプが保存され、時刻認証サーバ104にて検証され、それが有効であることを示している。例えば、デジタルデータ「map」はタイムスタンプの状態215において「invalid」と表示されているが、これは時刻認証されそのタイムスタンプが保存され、時刻認証サーバ104にて検証された所、それが無効であることを示している。この無効は、内容が改竄されたりタイムスタンプが改竄されたりした場合以外にも、タイムスタンプの有効期限が超過している場合も相当する。
【0036】
有効期限を超過してタイムスタンプが押されたデータを無効なものにしないためには、有効期限内に再度タイムスタンプをつける方法がある。具体的には、タイムスタンプを含めたデジタルデータに対してハッシュ値を計算して、後は上記で述べたように初めてタイムスタンプをつけた方法と同様に、それを時刻認証サーバ104に送信し新しいタイムスタンプを取得すればよい。再発行時の時刻認証サーバは、以前の時刻認証サーバである必要は無く、更に同じ暗号方式や鍵長である必要も無い。この様にして有効期限を延長することで、長期間のタイムスタンプの有効性を保証することが出来る。
【0037】
しかし、保存サーバにてタイムスタンプ付きのデジタルデータを保管している場合、その有効期限が過ぎてしまい無効となることに気が付きにくいものである。そこで、保存サーバにて時刻認証を行うとき、有効期限を考慮した保存の方法を提供する。例えば、図2のデジタルデータ一覧画面209において、「cards」というデジタルデータのcheck欄210にあるチェックボックスを選択する。チェックされるとチェックボックスが白から黒に変化する。その後、コマンド203から図4に示す「時刻認証を行う」408を実行する。ユーザに対する確認の画面が表示された後、保存サーバ105は「cards」というデジタルデータに対して時刻認証を行う。この時、図13に示すように、有効期限に関するオプション設定を行う。有効期限に関するオプション設定を行う画面1301が表示される。この中で、有効期限を保存サーバ105にて監視し、それが来る前に自動的に再度タイムスタンプを生成し有効期限を延長するように設定するのが、チェックマーク「有効期限を自動延長する」1302である。それに対し、自動ではなくそのデジタルデータの管理者に対し延長の指示を仰ぐのが、チェックマーク「有効期限の延長の前に確認する」1303である。この場合、延長の指示を仰ぐ管理者に関する情報を登録する必要があり、「確認先情報」の設定ボタン1304にて情報を登録する。登録情報の一例として、名前1305とメールアドレス1306を示している。
【0038】
〔有効期限延長に関する保存サーバの動作〕
保存サーバ105は、図13にて設定された情報に基づき有効期限の延長に関する動作を行う。
【0039】
保存サーバ105が保存している全てのデジタルデータに対して、そのタイムスタンプ内の情報からタイムスタンプの有効期限を捕捉する。保存サーバ105はその有効期限と保存サーバ105が持つ現在時刻とを比較し、有効期限になる適切な時間の前に、延長に関する動作を始める。デジタルデータの延長設定が自動延長の場合には、デジタルデータとそのタイムスタンプを合わせたデータに対するハッシュ値を計算する。そのハッシュ値を時刻認証サーバ104に送信し、新しいタイムスタンプを取得する。新しく得られたタイムスタンプをデジタルデータに関連付けされて保存される。この時、新旧合わせて複数個のタイムスタンプが存在する。そこで、タイムスタンプは作成した日付順に保存しておくことで、複数個のタイムスタンプの関連性が明確になる。
【0040】
次に、デジタルデータの延長設定が確認を取る場合について説明する。自動延長と同様に、保存サーバ105は有効期限になる適切な時間の前に、登録されている管理者に連絡を取り、延長するかどうかの判断を仰ぐ。デジタルデータの有効期限内に確認が取れれば、その指示に従う。延長する場合は、自動延長と同様に、デジタルデータとそのタイムスタンプを合わせたデータに対するハッシュ値を計算し、そのハッシュ値を時刻認証サーバ104に送信し、新しいタイムスタンプを取得し、新しく得られたタイムスタンプをデジタルデータに関連付けして保存する。この時、新旧合わせて複数個のタイムスタンプが存在するが、自動延長と同様に、タイムスタンプは作成した日付順に保存しておくことで、複数個のタイムスタンプの関連性が明確になる。
【0041】
最後に保存サーバ105は、タイムスタンプの延長を行うと、その結果を管理者に通知する。その通知先や通知方法は、図示はしていないが登録されている情報に基づいて、例えばeメールや音声電話、郵便などで通知される。
【0042】
〔保存サーバからデジタルデータのダウンロード時のユーザオペレーション〕
ここでは、保存サーバにて保存されているデジタルデータを取得する場合について述べる。
【0043】
ダウンロードには二つの目的が有り、保存していたデジタルデータを編集するために可変な形でダウンロードするものと、時刻認証されたデジタルデータを第三者に送信して証明するために時刻認証された変更不可の形でダウンロードするものがある。それぞれの場合、ダウンロードするデジタルデータは異なる。そこでユーザは保存サーバ105に対して可変な形でのダウンロードか、時刻認証された変更不可の形でのダウンロードかを明示してダウンロードを指示する。
【0044】
その操作方法を説明すると、図2において時刻認証されているデジタルデータを選択する。図2において上2つは時刻認証されているデジタルデータであり、下2つは時刻認証されていないデジタルデータである。これらのデジタルデータの中からダウンロードしたいものを選択する。Check欄210のチェックボックスを選択すると、白から黒に表示が変わる。その後、コマンド203からダウンロードを実行する。この時、保存していたデジタルデータを編集するために可変な形でダウンロードする場合は「可変形式でダウンロード」403を実行し、時刻認証されたデジタルデータを時刻認証された変更不可の形でダウンロードする場合は「時刻認証でダウンロード」404を実行する。この異なる操作によって、ユーザが欲するデジタルデータの形式を保存サーバ105に対して通知することが出来る。これによって、ユーザは保存サーバ105から異なる目的に適したそれぞれの形式のデジタルデータをダウンロードすることができる。
【0045】
〔時刻認証取得時の保存サーバの内部動作〕
ここでは、図6を用いて、時刻認証を取得する時、保存サーバの内部動作に関しての詳細な説明を行う。
【0046】
ユーザが指示を行うと、その指示がネットワーク101経由で保存サーバ105のデータ管理処理部158に送られ、保存サーバ105はそのデジタルデータの時刻認証を開始する。まず、保存サーバ105はデータ管理処理部158に管理しているデジタルデータに対してハッシュ値生成部153において一方向性関数を用いてハッシュ値を生成する。この時用いる一方向性関数とそのパラメータは、時刻認証局処理部154があらかじめ時刻認証サーバ104とネットワーク101経由でネゴシエーションを行い、時刻認証サーバ104が指定する一方向性関数とそのパラメータを認識してその時刻認証局処理部154内に保存している。この情報を用いてハッシュ値生成部153はハッシュ値を生成する。本実施例においては、どの時刻認証サーバであっても問題ない。一般的に運用上のメリットから、保存サーバ105が連携・契約している時刻認証サーバを用いられる。または、いくつかの時刻認証サーバと連携・契約しているのであれば、ユーザに対して選択肢を示し、ユーザの選択に従うということであっても良い。よって、どの時刻認証サーバにおいて認証するのか一意に決まるので、用いるべき一方向性関数とそのパラメータは決定できる。この時、複数の時刻認証サーバの管理を時刻認証局処理部154が行う。
【0047】
保存サーバ105はハッシュ値を生成した後、生成したハッシュ値をネットワーク101経由で時刻認証サーバ104へ送信し、時刻認証を要求する。時刻認証サーバ104においては、正確な時刻を刻む時計を持っていて、そこから正確な時刻を得ることが出来る。保存サーバ105から送信されたハッシュ値を受信すると、時刻認証サーバ104は、その時の時刻情報と送られたハッシュ値に対して認証サーバが持つ秘密鍵で持って電子署名を生成し、それをタイムスタンプとして保存サーバ105へ返信する。この認証シーケンスにおけるプロトコルは認証サーバが指定したものを用いる。一般的にはこのプロトコルは標準化されており、それに従ってタイムスタンプの取得が行われる。このシーケンスは、インターネット上の時刻認証局であろうとイントラネット上の時刻認証サーバであろうと、その方法は変わらない。
【0048】
〔時刻認証取得後の保存サーバの内部動作〕
ここでは、図6を用いて、時刻認証を取得した後の保存サーバの内部動作に関しての詳細な説明を行う。
【0049】
まず、保存サーバ105は、ネットワークインタフェース152によってネットワーク101経由で時刻認証サーバ104から送られてきたタイムスタンプを受信する。受信したタイムスタンプは、保存サーバ105内のデータ管理処理部158に送られそこで保存される。データ管理処理部158は時刻認証したデジタルデータとそのタイムスタンプとを関連付けて管理する。関連付けの具体的な方法は色々と考えられるが、例えば、一つのデジタルデータごとに一つのフォルダを用意し、その中に対となるデジタルデータとタイムスタンプを保存する方法や、XMLなどの記述言語を用いたデータによって対となるデジタルデータとタイムスタンプを特定する方法などが考えられる。
【0050】
或いは、デジタルデータとタイムスタンプを一つのデジタルデータに合体したうえで編集できない属性としたデータに変換した上で管理する方法もある。例えば、Adobe社のAcrobatに対する時刻認証プラグインによる管理がある。これは、データ管理処理部158にて管理されているデジタルデータを、タイムスタンプデータ処理部155においてPDFデータに変換する。その後、時刻認証サーバ104から送られデータ管理処理部158に保存されているタイムスタンプをタイムスタンプデータ処理部155に送り、タイムスタンプデータ処理部155においてPDFデータにタイムスタンプを埋め込む。その上で、Acrobatの暗号化機能を用いて編集できない属性としてPDFデータとしている。この方法は既にAcrobatにおいて実現されているので、この方法をそのまま使うことで、タイムスタンプが埋められた変更不可のデジタルデータとして管理する方法が実現できる。
【0051】
具体例には、時刻認証した2002.09.21_meeting_memo.docというデジタルデータとそのタイムスタンプである2002.09.21_meeting_memo.tmsというデジタルデータが存在している場合を考える。2002.09.21_meeting_memo.docをPDFファイルに変換しタイムスタンプを埋め込んだものが2002.09.21_meeting_memo.pdfというPDFデータである。このPDFデータは時刻認証したファイルの内容がわかる上に、タイムスタンプも内蔵しているのでこのPDFデータだけで時刻認証の検証を行うことも出来るという特徴がある。即ち、本特許における保存サーバ105はファイルを保存するためにファイルそのものを保存することと、時刻認証した場合にはそのタイムスタンプと、そのデータとタイムスタンプを一体化して編集不可能なファイルの3種類のファイルを保存するという特徴がある。これらはデータ管理処理部158によって管理されている。
【0052】
以上、時刻認証取得時の内部動作のステップをフローチャートにまとめると、図7のようになる。
【0053】
〔時刻認証確認時の保存サーバの内部動作〕
ここでは、図6を用いて、時刻認証を取得した後の保存サーバの内部動作に関しての詳細な説明を行う。
【0054】
ユーザが指示を行うと、その指示がネットワーク101経由で保存サーバ105のデータ管理処理部158に送られ、保存サーバ105はそのデジタルデータの時刻認証の確認を開始する。まず、保存サーバ105は、前節で記述しているようにその内部管理テーブル或いは別のXMLなどで記述されたリンクファイルによって、指定されたデジタルデータに対応するタイムスタンプを検索する。検索したタイムスタンプをタイムスタンプデータ処理部155において処理し、時刻認証を行った時刻認証サーバを特定する。特定された時刻認証サーバ104に対して、保存サーバ105はデータ管理処理部158に管理しているタイムスタンプをネットワークインタフェース152からネットワーク101経由で送信し、時刻認証の確認要求を行う。このタイムスタンプの構造は標準規格に規定されているので、時刻認証サーバの特定方法の詳細は記述しない。時刻認証サーバ104では確認要求があると、時刻認証サーバ104のみが持つ秘密鍵によってタイムスタンプ内の電子署名を復号化し改竄があったかどうかの判定を行い、同時に埋め込まれている時刻情報を取り出す。これらの結果を画像処理装置102に返信する。この認証確認シーケンスにおけるプロトコルは認証サーバが指定したものを用いる。一般的にはこのプロトコルは標準化されており、それに従ってタイムスタンプの取得が行われるので、詳細は省略する。
【0055】
保存サーバ105は、ネットワークインタフェース152によってネットワーク101経由で時刻認証サーバ104から送られてきた時刻認証の確認の結果を受信すると、これをタイムスタンプデータ処理部155に送る。タイムスタンプデータ処理部155は、その結果をデータ管理処理部158に通知する。データ管理処理部158はデジタルデータやタイムスタンプの存在と共に、その結果を表示し、ユーザに通知する。
【0056】
以上、時刻認証取確認時の内部動作のステップをフローチャートにまとめると、図8のようになる。
【0057】
〔デジタルデータのダウンロード時の保存サーバの内部動作〕
ここでは、図6を用いて、ユーザがデジタルデータのダウンロードを行う時の保存サーバの内部動作に関しての詳細な説明を行う。
【0058】
ユーザは保存サーバ105に対して、可変な形でのダウンロードか時刻認証された変更不可の形でのダウンロードかを明示してダウンロードを指示する。その指示がネットワーク101経由で保存サーバ105のデータ管理処理部158に送られ、保存サーバ105はそのデジタルデータのダウンロードを開始する。保存サーバ105の要求判定処理部157がその指示の内容を判断し、可変な形でのダウンロードか時刻認証された変更不可の形でのダウンロードかを判定する。これは前節でユーザのオペレーションに関して説明しているように、ユーザがどちらをしたいのかを指示する。それによって指示内容が異なるので、これを要求判定処理部157が判断すればよい。要求判定処理部157は、その判断をデータ管理処理部158に通知する。データ管理処理部158はその通知に基づいて、適切なデータをユーザに送信する。具体的には、可変な形でのダウンロード要求である場合、データ管理処理部158は管理しているデータのうちユーザがアップロードしたデジタルデータそのものを選択し、時刻認証された変更不可の形でのダウンロード要求である場合、データ管理処理部158は管理しているデータのうちタイムスタンプが埋められた変更不可のデジタルデータを選択する。データ管理処理部158は、ユーザのダウンロード要求に従い選択したデータを、ネットワークインタフェース152によってネットワーク101経由で送信する。これによって、保存サーバ105はその内部の保存しているデジタルデータのうち、可変な形で保存しているデジタルデータなのか時刻認証された変更不可の形で保存しているデジタルデータなのかを識別してユーザにダウンロードすることが可能となる。
【0059】
以上、内部動作のステップをフローチャートにまとめると、図9のようになる。
【0060】
〔保存サーバに時刻認証サーバ機能を持たせる〕
言うまでもなく、保存サーバに時刻認証サーバ機能を持たせることで、保存サーバがネットワークを介して時刻認証を行わなくて済むような構成とすることも考えられる。この構成にすれば、保存サーバで使われている時刻表示が正しいことが一般に認められるが、保存サーバから取り出されたデータの時刻属性が正しいことが常に証明されるわけではないので、時刻認証の必要性がなくなるわけではない。
【図面の簡単な説明】
【0061】
【図1】本発明に関連した装置のネットワーク構成図である。
【図2】実施例に示したデジタルデータを保存サーバへアップロードする時のユーザオペレーション画面の具体例である。
【図3】実施例に示したデジタルデータを保存サーバへアップロードする時のユーザオペレーション画面の具体例である。
【図4】実施例に示したFTPコマンドの具体例である。
【図5】実施例に示した時刻認証確認時のユーザオペレーション画面の具体例である。
【図6】実施例に示した保存サーバの構成図である。
【図7】実施例に示した時刻認証取得時の内部動作のステップをフローチャートで示したものである。
【図8】実施例に示した時刻認証確認時の内部動作のステップをフローチャートで示したものである。
【図9】実施例に示した時刻認証確認後の内部動作のステップをフローチャートで示したものである。
【図10】実施例に示した時刻認証の検証結果を表示する画面例である。
【図11】実施例に示した時刻認証のオプションを指定する画面例である。
【図12】実施例に示した時刻認証の検証結果の印刷例である。
【図13】実施例に示した時刻認証の有効期限オプションを指定する画面例である。
【特許請求の範囲】
【請求項1】
データを保存する保存装置において、
保存しているデータのハッシュ値を計算する手段と、
前記ハッシュ値を時刻認証局に送信する手段と、
前記時刻認証局に時刻認証を要求する手段と、
前記時刻認証局から受信したタイムスタンプを保存する手段と、
を備えたことを特徴とする保存装置。
【請求項2】
請求項1に記載の保存装置において、
タイムスタンプから有効期限に関する情報を取得する手段を持ち、
前記有効期限になる適切な時間の前に、有効期限の延長に関する動作を始めることを特徴とする保存装置。
【請求項3】
請求項2に記載の保存装置において、
ユーザの設定に応じて、有効期限の延長に関する動作を行うにあたり確認を取らずに行うか、確認を取って行うかの動作を決定することを特徴とする保存装置。
【請求項4】
請求項2に記載の保存装置において、
保存している前記データと前記タイムスタンプとを合わせたデータに対する第二のハッシュ値を計算する手段と、
前記第二のハッシュ値を時刻認証局に送信する手段と、
前記時刻認証局に時刻認証を要求する手段と、
前記時刻認証局から第二のタイムスタンプを受信する手段と、
前記データと前記第一のタイムスタンプに前記第二のタイムスタンプを関連付けて保存する手段と、
を備えたことを特徴とする保存装置。
【請求項5】
請求項2に記載の保存装置において、
有効期限の延長を行った後で、前記データの関係者に通知を行う手段を備えたことを特徴とする保存装置。
【請求項1】
データを保存する保存装置において、
保存しているデータのハッシュ値を計算する手段と、
前記ハッシュ値を時刻認証局に送信する手段と、
前記時刻認証局に時刻認証を要求する手段と、
前記時刻認証局から受信したタイムスタンプを保存する手段と、
を備えたことを特徴とする保存装置。
【請求項2】
請求項1に記載の保存装置において、
タイムスタンプから有効期限に関する情報を取得する手段を持ち、
前記有効期限になる適切な時間の前に、有効期限の延長に関する動作を始めることを特徴とする保存装置。
【請求項3】
請求項2に記載の保存装置において、
ユーザの設定に応じて、有効期限の延長に関する動作を行うにあたり確認を取らずに行うか、確認を取って行うかの動作を決定することを特徴とする保存装置。
【請求項4】
請求項2に記載の保存装置において、
保存している前記データと前記タイムスタンプとを合わせたデータに対する第二のハッシュ値を計算する手段と、
前記第二のハッシュ値を時刻認証局に送信する手段と、
前記時刻認証局に時刻認証を要求する手段と、
前記時刻認証局から第二のタイムスタンプを受信する手段と、
前記データと前記第一のタイムスタンプに前記第二のタイムスタンプを関連付けて保存する手段と、
を備えたことを特徴とする保存装置。
【請求項5】
請求項2に記載の保存装置において、
有効期限の延長を行った後で、前記データの関係者に通知を行う手段を備えたことを特徴とする保存装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2007−26080(P2007−26080A)
【公開日】平成19年2月1日(2007.2.1)
【国際特許分類】
【出願番号】特願2005−207168(P2005−207168)
【出願日】平成17年7月15日(2005.7.15)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成19年2月1日(2007.2.1)
【国際特許分類】
【出願日】平成17年7月15日(2005.7.15)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]