(57)【要約】      （修正有）【課題】サーバで電子データを管理する場合に、電子データそのものをサーバに記憶させる場合に比して、電子データの安全性を向上させる。【解決手段】電子データ管理システム１０において、不特定多数がアクセス可能であるクラウドサーバ１４に比して、限定されたユーザがアクセス可能であり、電子データの所有者が管理するローカル装置１２には電子データが記憶される。ローカル装置のハッシュ値算出部は電子データのハッシュ値を算出し、属性情報抽出部は、電子データの属性情報を抽出して、電子データのＩＤ、ハッシュ値、属性情報及び公開先ユーザＩＤをクラウドサーバに送信する。クラウドサーバの属性管理ＤＢには、ローカル装置から送信された、電子データＩＤ及び属性情報が関連付けられて記憶され、ハッシュ管理ＤＢには、データＩＤ、及び、暗号化処理部により電子データの公開先ユーザの公開鍵で暗号化されたハッシュ値が関連付けられて記憶される。【選択図】図１
2020043396.tif 000002
【特許請求の範囲】
【請求項１】
電子データのハッシュ値及び属性情報をサーバに送信する送信部と、
前記電子データを記憶する自装置側記憶部と、
を備える自装置と、
前記電子データの前記ハッシュ値と前記属性情報とを関連付けて記憶するサーバ側記憶部と、
を備えるサーバと、
を含むことを特徴とする電子データ管理システム。
【請求項２】
前記自装置は、
前記電子データのハッシュ値を算出するハッシュ値算出部と、
前記ハッシュ値算出部が算出したハッシュ値と、前記サーバから受信した当該電子データのハッシュ値とが異なる場合に通知を出力する通知出力部と、
をさらに備える、
ことを特徴とする請求項１に記載の電子データ管理システム。
【請求項３】
前記サーバ側記憶部は、暗号化された前記ハッシュ値と前記属性情報とを関連付けて記憶する、
ことを特徴とする請求項１又は２に記載の電子データ管理システム。
【請求項４】
前記ハッシュ値は、予め選択された公開先利用者の公開鍵で暗号化される、
ことを特徴とする請求項３に記載の電子データ管理システム。
【請求項５】
前記電子データは、編集が制限されているデータである、
ことを特徴とする請求項１から３のいずれか１項に記載の電子データ管理システム。
【請求項６】
電子データを記憶する自装置から受信した、前記電子データのハッシュ値と属性情報とを関連付けて記憶するサーバ側記憶部、
を備えることを特徴とする電子データ管理サーバ。
【請求項７】
コンピュータを、
電子データを記憶する自装置から受信した、前記電子データのハッシュ値と属性情報とを関連付けて記憶するサーバ側記憶部、
として機能させることを特徴とする電子データ管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子データ管理システム、電子データ管理サーバ、及び電子データ管理プログラムに関する。
【背景技術】
【０００２】
従来、利用者が利用する利用者端末からインターネットなどの通信回線を介してアクセス可能なサーバを用いて電子データを管理するシステムが提案されている。
【０００３】
例えば、特許文献１には、サーバを用いて電子データを管理するシステムであって、電子データに付加された付加情報の漏洩を防止する観点から、ローカル環境に置かれた複合機が、電子データ固有の検索キーを生成し、当該電子データから付加情報を削除して生成した検索キーを当該電子データに書き込んだ上でクラウドサーバに保存し、削除した付加情報をローカル環境に保存しておくシステムが開示されている。当該システムにおいては、電子データを読み出す際には、クラウドサーバから電子データを読み出し、当該電子データに付された検索キーに基づいてローカル環境にある付加情報を電子データに付加して電子データを復元している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−１０２７９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、様々な利用者がアクセスし得るサーバに電子データを記憶させた（保存した）場合、電子データが漏洩するあるいは改ざんされるなどの安全性（セキュリティ）の面での問題が生じ得る。
【０００６】
本発明の目的は、サーバで電子データを管理する場合に、電子データそのものをサーバに記憶させる場合に比して、電子データの安全性を向上させることにある。
【課題を解決するための手段】
【０００７】
請求項１に係る発明は、電子データのハッシュ値及び属性情報をサーバに送信する送信部と、前記電子データを記憶する自装置側記憶部と、を備える自装置と、前記電子データの前記ハッシュ値と前記属性情報とを関連付けて記憶するサーバ側記憶部と、を備えるサーバと、を含むことを特徴とする電子データ管理システムである。
【０００８】
請求項２に係る発明は、前記自装置は、前記電子データのハッシュ値を算出するハッシュ値算出部と、前記ハッシュ値算出部が算出したハッシュ値と、前記サーバから受信した当該電子データのハッシュ値とが異なる場合に通知を出力する通知出力部と、をさらに備える、ことを特徴とする請求項１に記載の電子データ管理システムである。
【０００９】
請求項３に係る発明は、前記サーバ側記憶部は、暗号化された前記ハッシュ値と前記属性情報とを関連付けて記憶する、ことを特徴とする請求項１又は２に記載の電子データ管理システムである。
【００１０】
請求項４に係る発明は、前記ハッシュ値は、予め選択された公開先利用者の公開鍵で暗号化される、ことを特徴とする請求項３に記載の電子データ管理システムである。
【００１１】
請求項５に係る発明は、前記電子データは、編集が制限されているデータである、ことを特徴とする請求項１から３のいずれか１項に記載の電子データ管理システムである。
【００１２】
請求項６に係る発明は、電子データを記憶する自装置から受信した、前記電子データのハッシュ値と属性情報とを関連付けて記憶するサーバ側記憶部、を備えることを特徴とする電子データ管理サーバである。
【００１３】
請求項７に係る発明は、コンピュータを、電子データを記憶する自装置から受信した、前記電子データのハッシュ値と属性情報とを関連付けて記憶するサーバ側記憶部、として機能させることを特徴とする電子データ管理プログラムである。
【発明の効果】
【００１４】
請求項１、５、６又は７に係る発明によれば、サーバで電子データを管理する場合に、電子データそのものをサーバに記憶させる場合に比して、電子データの安全性を向上させることができる。
【００１５】
請求項２に係る発明によれば、電子データが改ざんされたことを利用者に通知することができる。
【００１６】
請求項３に係る発明によれば、電子データのハッシュ値を暗号化しない場合に比して、電子データの安全性をより向上させることができる。
【００１７】
請求項４に係る発明によれば、予め選択された公開先利用者に対してのみ電子データを公開することができる。
【図面の簡単な説明】
【００１８】
【図１】本実施形態に係る電子データ管理システムの構成概略図である。
【図２】ローカル装置の構成概略図である。
【図３】クラウドサーバの構成概略図である。
【図４】属性管理ＤＢの内容を示す概念図である。
【図５】ハッシュ管理ＤＢの内容を示す概念図である。
【図６】クライアント装置の構成概略図である。
【図７】クラウドサーバに電子データを登録する際の処理の流れを示すフローチャートである。
【図８】クラウドサーバから電子データを読み出す際の処理の流れを示すフローチャートである。
【図９】通知画面の例を示す図である。
【発明を実施するための形態】
【００１９】
図１は、本実施形態に係る電子データ管理システム１０の構成概略図である。電子データ管理システム１０は、自装置としてのローカル装置１２、電子データ管理サーバとしてのクラウドサーバ１４、及び、利用者（ユーザ）が利用するクライアント装置１６を含んで構成されている。ローカル装置１２、クラウドサーバ１４、及びクライアント装置１６は、ＬＡＮあるいはインターネットなどの通信回線１８を介して互いに通信可能に接続されている。なお、図１においては、ローカル装置１２、クラウドサーバ１４、及びクライアント装置１６は１つずつ示されているが、電子データ管理システム１０は、それぞれを複数有していてもよい。
【００２０】
電子データ管理システム１０は、電子データの保存あるいは管理、電子データの閲覧あるいは送信などを含む電子データ管理サービスを提供する。電子データ管理システム１０によれば、ユーザは自分の電子データを電子データ管理サービスに保存して管理させることができる。また、電子データ管理システム１０によれば、電子データを所有しているユーザである所有者が、他のユーザである公開先ユーザに当該電子データを公開することができる。なお、本明細書における「ユーザ」という文言は、電子データの所有者、公開先ユーザ、及び電子データの閲覧者（後述）を含む概念である。
【００２１】
電子データ管理システム１０が管理する電子データとしては、電子文書、動画像データ、静止画像データ、音声データなどが含まれる。また、電子データ管理システム１０が管理する電子データは、編集されないことを前提とするデータ、換言すれば、ユーザが編集することを予定していないデータであるとする。さらにいえば、編集が制限されているデータである場合もある。なお、編集とは、電子データの内容、あるいは、ファイル名や作成者などの属性情報を変更することを意味する。また、編集が制限されているとは、内容、又は、属性情報の全部若しくは一部の編集が禁止されていることを意味し、編集ができないように設定されて保存されている場合（パスワードがあれば編集可能である場合も含む）や、その内容自体の編集が禁止されている旨の明示がある（文書であれば、「編集禁止」などの記載がある）場合を含む。
【００２２】
図２は、ローカル装置１２の構成概略図である。ローカル装置１２は、電子データ管理システム１０で管理される電子データの所有者が管理する装置であり、例えば、所有者が管理するローカル（オンプレミス）サーバ、又は、所有者が利用するパーソナルコンピュータ若しくはタブレットなどの携帯端末である。ローカル装置１２は、通信回線１８に接続されているものの、少なくともクラウドサーバ１４に比して、限定されたユーザがアクセス可能となっている。詳しくは、ローカル装置１２に記憶されている電子データに対するアクセス権限を有するユーザは、クラウドサーバ１４に対するアクセス権限を有するユーザよりも少なくなっている。本実施形態では、ローカル装置１２に対しては、ローカル装置１２に記憶されている電子データの所有者、及び、電子データ管理サービス（クラウドサーバ１４）のみがアクセス可能となっており、その他のユーザはローカル装置１２にアクセスできなくなっている。
【００２３】
通信部２０は、例えばネットワークアダプタなどを含んで構成される。通信部２０は、通信回線１８を介して、クラウドサーバ１４あるいはクライアント装置１６と通信する機能を発揮する。
【００２４】
自装置側記憶部としての記憶部２２は、例えばＲＯＭ、ＲＡＭ、あるいはハードディスクなどを含んで構成される。記憶部２２には、ローカル装置１２の各部を動作させるためのプログラムが記憶される。さらに、図２に示すように、記憶部２２には、電子データ管理サービスで管理される電子データ２４（電子データ２４本体）が記憶される。電子データ２４は、所有者が直接ローカル装置１２に記憶させてもよいし、所有者が利用するクライアント装置１６からローカル装置１２に電子データ２４を送信してローカル装置１２に記憶させてもよい。電子データ２４をクライアント装置１６から送信する場合は、クラウドサーバ１４を介して（すなわち電子データ管理サービスを介して）送信するようにしてもよい。
【００２５】
制御部２６は、例えばＣＰＵあるいはマイクロコントローラなどを含んで構成される。制御部２６は、記憶部２２に記憶されたプログラムに従って、ローカル装置１２の各部を制御する。また、図２に示されるように、制御部２６は、ハッシュ値算出部２８、属性情報抽出部３０、及び通知出力部３２としても機能する。
【００２６】
ハッシュ値算出部２８は、記憶部２２に記憶された電子データ２４（つまり電子データ管理サービスで管理される電子データ２４）のハッシュ値を算出する。ハッシュ値の算出は、既知のハッシュ値算出アルゴリズム（例えば、ＭＤ５、ＳＨＡ−１、ＳＨＡ−２５６など）を用いて行うことができる。ハッシュ値とは、電子データ２４の内容及び属性情報に基づいて、一定の計算方法により算出される値である。したがって、電子データ２４の内容及び属性情報が同一であれば同じハッシュ値が算出され、電子データ２４の内容あるいは属性情報が同一でないならば異なるハッシュ値が算出される。なお、本実施形態では、電子データ２４の内容及び属性情報に基づいてハッシュ値が算出されるが、例えば電子データ２４の内容のみに基づいてハッシュ値を算出するようにしてもよい。後述するように、ハッシュ値は改ざんされたことを検出するために用いられるが、何を改ざんされたことを検出したいかに応じて、何に基づいてハッシュ値を算出するかが決定されてよい。
【００２７】
属性情報抽出部３０は、記憶部２２に記憶された電子データ２４の属性情報を抽出する。属性情報としては、例えば、電子データ２４のデータ名（ファイル名）、登録日時、作成者などが含まれる。これらの情報は、例えば電子データ２４のメタデータ（付帯情報）から取得することができる。また、属性情報として電子データ２４の内容が含まれていてもよい。電子データ２４の内容は、例えば属性情報抽出部３０が電子データ２４を解析することで取得することができる。もちろん、電子データ２４の登録時に、所有者が当該電子データ２４の内容を入力するようにしてもよく、その場合は、属性情報抽出部３０は、ユーザが入力した電子データ２４の内容を取得する。
【００２８】
電子データ２４をクラウドサーバ１４で管理すべく、ハッシュ値算出部２８が算出した電子データ２４のハッシュ値、及び、属性情報抽出部３０が抽出した電子データ２４の属性情報は、当該電子データ２４を一意に識別するデータＩＤと関連付けられて、通信部２０によりクラウドサーバ１４に送信される。このように、通信部２０は、ハッシュ値及び属性情報をクラウドサーバ１４に送信する送信部としても機能する。
【００２９】
好ましくは、ハッシュ値、属性情報、及びデータＩＤにさらに関連付けて、当該データＩＤが示す電子データ２４の公開先ユーザを示す公開先ユーザＩＤが送信されてもよい。公開先ユーザは、当該電子データ２４の所有者によって決定されてよい。ちなみに、公開先ユーザは、個人であってもよく、例えば企業のような複数のユーザを含む団体であってもよい。また、１つの電子データに対して複数の公開先ユーザを指定することもできる。その場合は、１つのハッシュ値、属性情報、及びデータＩＤの組に複数の公開先ユーザＩＤが関連付けられることになる。詳しくは後述するが、これにより、所有者は、電子データ管理サービスにユーザ登録しているユーザのうち、特定のユーザに対してのみ当該電子データ２４を公開することができる。
【００３０】
通知出力部３２は、電子データ管理サービスで管理されている電子データ２４をユーザが利用する際に、当該電子データが改ざんされているか否かを当該ユーザに対して通知する処理を行う。通知出力部３２の処理の詳細については後述する。
【００３１】
なお、ローカル装置１２がパーソナルコンピュータや携帯端末である場合には、ユーザからのアクセス要求を入力するための、例えばタッチパネル、キーボード、マウス、あるいはマイクなどを含んで構成される入力部、あるいは、ユーザからのアクセス要求に応じた情報を表示するための、例えば液晶パネルなどを含んで構成される表示部を有していてもよい。
【００３２】
図３は、クラウドサーバ１４の構成概略図である。クラウドサーバ１４は、電子データ管理システム１０で管理される電子データの所有者以外の者（他者）が管理する装置であり、例えば、ストレージサービスなどのクラウドサービスを提供するサーバである。上述のように、クラウドサーバ１４は、少なくともローカル装置１２に比して、不特定多数のユーザがアクセス可能となっている。本実施形態では、クラウドサーバ１４に対しては、誰でもアクセス可能となっている。その上で、電子データ管理サービスにユーザ登録したユーザが、電子データ管理サービスを利用することが可能となる。
【００３３】
通信部４０は、例えばネットワークアダプタなどを含んで構成される。通信部４０は、通信回線１８を介して、ローカル装置１２あるいはクライアント装置１６と通信する機能を発揮する。
【００３４】
サーバ側記憶部としての記憶部４２は、例えばＲＯＭ、ＲＡＭ、あるいはハードディスクなどを含んで構成される。記憶部４２には、クラウドサーバ１４の各部を動作させるための電子データ管理プログラムが記憶される。さらに、図２に示すように、記憶部４２には、公開鍵ＤＢ４４、属性管理ＤＢ４６、及びハッシュ管理ＤＢ４８が定義される。
【００３５】
公開鍵ＤＢ４４には、電子データ管理サービスを利用するユーザ（登録済みユーザ）を識別するユーザＩＤと、当該ユーザの公開鍵とが関連付けられて記憶される。例えば、ユーザは、電子データ管理サービスに対するユーザ登録時において、自分の公開鍵を登録しておく。これにより、公開鍵ＤＢ４４にユーザＩＤと公開鍵が記憶される。なお、各ユーザは、登録した公開鍵に対応する秘密鍵も生成しておき、秘密鍵は当該ユーザが利用するクライアント装置１６に記憶させておく。詳しくは後述するが、公開鍵ＤＢ４４に登録された公開鍵は、ローカル装置１２から送信されてきたハッシュ値を暗号化するために用いられる。
【００３６】
属性管理ＤＢ４６には、ローカル装置１２から送信されたデータＩＤ及び当該データＩＤに対応する電子データ２４の属性情報が関連付けられて記憶される。図４に、属性管理ＤＢ４６の内容の例が示されている。図４では、属性管理ＤＢ４６はテーブル形式で表され、１つのレコードが１つの電子データ２４に対応するものとなっている。なお、属性管理ＤＢ４６のデータ構造はテーブル形式に限るものではない。
【００３７】
本実施形態では、属性管理ＤＢ４６には、属性情報として、電子データ２４のデータ名、登録日時、作成者、取引日付、取引金額、及び取引先などが記憶されている。もちろん、属性情報の項目としてはこれに限るものではない。図４の例では、電子データ２４が「契約書」の電子文書であるため、その属性情報として作成者、取引日付、取引金額、及び取引先などが含まれているが、属性管理ＤＢ４６に記憶される属性情報の項目は、登録される電子データ２４の種類に応じて、電子データ２４毎に異なっていてもよい。
【００３８】
さらに、属性管理ＤＢ４６においては、データＩＤ及び属性情報に関連付けてハッシュ値ＩＤが記憶される。当該ハッシュ値ＩＤは、後述するハッシュ管理ＤＢ４８に記憶されているハッシュ値を一意に識別するものである。
【００３９】
ハッシュ管理ＤＢ４８は、ローカル装置１２から送信されたデータＩＤ及び当該データＩＤに対応する電子データ２４のハッシュ値が関連付けられて記憶される。図５に、ハッシュ管理ＤＢ４８の内容の例が示されている。図５では、ハッシュ管理ＤＢ４８はテーブル形式で表され、１つのレコードが１つの電子データ２４に対応するものとなっている。なお、ハッシュ管理ＤＢ４８のデータ構造もテーブル形式に限るものではない。
【００４０】
なお、記憶部４２には、上記の他、属性管理ＤＢ４６あるいはハッシュ管理ＤＢ４８に記憶されている各データＩＤが示す電子データ２４が記憶されているローカル装置１２を識別する情報が記憶される。
【００４１】
後述の制御部５０は、ローカル装置１２からハッシュ値、属性情報、及びデータＩＤを受信する度に、属性管理ＤＢ４６及びハッシュ管理ＤＢ４８にその内容を登録する。属性管理ＤＢ４６及びハッシュ管理ＤＢ４８の２つのＤＢにより、電子データ２４のデータＩＤ、属性情報、及びハッシュ値が互いに関連付けられて記憶される。
【００４２】
好ましくは、ハッシュ値は、暗号化された上でハッシュ管理ＤＢ４８に記憶される。ハッシュ値の暗号化処理については後述する。
【００４３】
制御部５０は、例えばＣＰＵなどを含んで構成される。制御部５０は、記憶部４２に記憶された電子データ管理プログラムに従って、クラウドサーバ１４の各部を制御して、ユーザに電子データ管理サービスを提供する処理を行う。また、図３に示されるように、制御部５０は、暗号化処理部５２としても機能する。
【００４４】
暗号化処理部５２は、ローカル装置１２から受信したハッシュ値を暗号化する処理を実行する。本実施形態では、暗号化処理部５２は、受信したハッシュ値に関連付けられている公開先ユーザＩＤにより、電子データ２４の公開先ユーザを特定し、公開鍵ＤＢ４４に記憶されている当該公開先ユーザの公開鍵を用いてハッシュ値を暗号化する。これにより、当該ハッシュ値は、公開先ユーザが有している秘密鍵でのみ復号が可能となる。ちなみに、ハッシュ値に複数の公開先ユーザＩＤが関連付けられている場合は、暗号化処理部５２は、各公開先ユーザＩＤが示す各ユーザの公開鍵により、当該ハッシュ値をそれぞれ暗号化する。これにより、１つのハッシュ値に対して複数の暗号化ハッシュ値が生成されることになる。なお、暗号化の方式は他の方式であってもよい。その場合であっても、公開先ユーザのみが復号可能な方式で暗号化されるのが好適である。
【００４５】
図６は、クライアント装置１６の構成概略図である。クライアント装置１６は、電子データ管理システム１０で管理される電子データを閲覧する閲覧者（公開先ユーザ含む）が利用する装置であり、例えば、パーソナルコンピュータあるいはタブレットなどの携帯端末である。なお、電子データ２４の所有者と閲覧者が同一である場合は、ローカル装置１２がクライアント装置１６の役割を果たしてもよい。
【００４６】
通信部６０は、例えばネットワークアダプタなどを含んで構成される。通信部６０は、通信回線１８を介して、クラウドサーバ１４あるいはクライアント装置１６と通信する機能を発揮する。
【００４７】
入力部６２は、例えばタッチパネル、キーボード、マウス、あるいはマイクなどを含んで構成される。入力部６２は、閲覧者からの指示をクライアント装置１６に入力するために用いられる。
【００４８】
表示部６４は、例えば液晶パネルなどを含んで構成される。表示部６４は、種々の画面を表示する。
【００４９】
記憶部６６は、例えばＲＯＭ、ＲＡＭ、あるいはハードディスクなどを含んで構成される。記憶部６６には、クライアント装置１６の各部を動作させるためのプログラムが記憶される。さらに、図６に示すように、記憶部６６には、秘密鍵６８が記憶される。
【００５０】
秘密鍵６８は、閲覧者が電子データ管理サービスにユーザ登録した際に公開鍵と共に登録したものである。秘密鍵６８は、クラウドサーバ１４の公開鍵ＤＢ４４に記憶された公開鍵と対になるものである。
【００５１】
制御部７０は、例えばＣＰＵあるいはマイクロコントローラなどを含んで構成される。制御部７０は、記憶部６６に記憶されたプログラムに従って、クライアント装置１６の各部を制御する。また、図６に示されるように、制御部７０は、復号処理部７２及び表示処理部７４としても機能する。
【００５２】
復号処理部７２は、クラウドサーバ１４から送信された暗号化ハッシュ値を復号する処理を行う。具体的には、クラウドサーバ１４から受信した暗号化ハッシュ値を記憶部６６に記憶された秘密鍵６８で復号する。上述の通り、暗号化ハッシュ値は、公開先ユーザの公開鍵で暗号化されているため、閲覧者が電子データ２４の公開先ユーザとして選択されていれば、秘密鍵６８により暗号化ハッシュ値を復号することができる。一方、閲覧者が電子データ２４の公開先ユーザでないならば、当該閲覧者が持つ秘密鍵６８では暗号化ハッシュ値を復号できないこととなる。
【００５３】
表示処理部７４は、種々の画面を表示部６４に表示させる処理を行う。具体的には、表示処理部７４は、クラウドサーバ１４から受信した、電子データ管理サービスで管理されている電子データ２４の属性情報の一覧を表示部６４に表示させる。また、表示処理部７４は、閲覧者が電子データ２４の公開先ユーザである場合は、閲覧者が指定した当該電子データ２４を表示部６４に表示させる。また、表示処理部７４は、電子データ２４の改ざんの有無を示す通知画面を表示部６４に表示させる。
【００５４】
電子データ管理システム１０の構成概要は以上の通りである。以下、図７及び図８に示すフローチャートに従って、電子データ管理システム１０の処理の流れを説明する。
【００５５】
まず、図７のフローチャートに従って、電子データ２４の所有者が電子データ２４を電子データ管理サービスに登録する場合の処理の流れを説明する。
【００５６】
ステップＳ１０において、電子データ２４の所有者が電子データ２４をローカル装置１２に記憶させることで、ローカル装置１２が電子データ２４を取得する。
【００５７】
ステップＳ１２において、ローカル装置１２のハッシュ値算出部２８は、ステップＳ１０で取得した電子データ２４のハッシュ値を算出する。
【００５８】
ステップＳ１４において、ローカル装置１２の属性情報抽出部３０は、ステップＳ１０で取得した電子データ２４の属性情報を抽出する。
【００５９】
ステップＳ１６において、ローカル装置１２の通信部２０は、ステップＳ１０で取得した電子データ２４のデータＩＤ、ステップＳ１２で算出したハッシュ値、ステップＳ１４で抽出した属性情報、及び、所有者により選択された公開先ユーザを示す公開先ユーザＩＤを互いに関連付けてクラウドサーバ１４に送信する。
【００６０】
ステップＳ１８において、クラウドサーバ１４の暗号化処理部５２は、ステップＳ１６でローカル装置１２から受信した公開先ユーザＩＤに基づいて、公開鍵ＤＢ４４から当該公開先ユーザＩＤが示すユーザの公開鍵を特定する。その上で、暗号化処理部５２は、ステップＳ１６でローカル装置１２から受信したハッシュ値を特定した公開鍵で暗号化する。
【００６１】
ステップＳ２０において、クラウドサーバ１４の制御部５０は、ステップＳ１６でローカル装置１２から受信したデータＩＤと属性情報を関連付けて属性管理ＤＢ４６に記憶させる。また、制御部５０は、ステップＳ１６でローカル装置１２から受信したデータＩＤと、ステップＳ１８で暗号化したハッシュ値を関連付けてハッシュ管理ＤＢ４８に記憶させる。これにより、データＩＤ、属性情報、ハッシュ値が互いに関連付けられて記憶部４２に記憶される。
【００６２】
以上の処理により、電子データ管理システム１０において、ローカル装置１２に電子データ２４（本体）が記憶され、クラウドサーバ１４に当該電子データ２４のハッシュ値と属性情報が記憶される。電子データ管理システム１０においては、このように電子データ２４が管理（保存）される。
【００６３】
次に、図８のフローチャートに従って、閲覧者が電子データ管理サービスに登録された電子データ２４を閲覧する場合の処理の流れを説明する。
【００６４】
ステップＳ３０において、閲覧者はクライアント装置１６を用いて、クラウドサーバ１４に対して、電子データ管理サービスで管理されている電子データ２４の一覧の閲覧要求を送信する。
【００６５】
ステップＳ３２において、クライアント装置１６からの閲覧要求に対して、属性管理ＤＢ４６に記憶されている情報、すなわち、電子データ管理サービスで管理されている電子データ２４のデータＩＤ及び属性情報の一覧をクライアント装置１６に送信する。
【００６６】
ステップＳ３４において、クライアント装置１６の表示処理部７４は、クラウドサーバ１４から受信したデータＩＤ及び属性情報の一覧を表示部６４に表示させる。このようにして、閲覧者は、電子データ管理サービスで管理されている電子データ２４の属性情報を把握することができる。
【００６７】
ステップＳ３６において、閲覧者は、ステップＳ３４で一覧表示された電子データ２４の属性情報に基づいて、所望の電子データ２４のデータＩＤをクラウドサーバ１４に送信する。
【００６８】
ステップＳ３８において、クラウドサーバ１４の制御部５０は、ステップＳ３６でクライアント装置１６から受信したデータＩＤをキーとしてハッシュ管理ＤＢ４８を検索し、当該データＩＤに関連付けられた暗号化ハッシュ値を特定し、特定した暗号化ハッシュ値をクライアント装置１６に送信する。なお、データＩＤに関連付けられた暗号化ハッシュ値が複数ある場合は、複数の暗号化ハッシュ値をクライアント装置１６に送信してよい。
【００６９】
ステップＳ４０において、クライアント装置１６の復号処理部７２は、ステップＳ３８でクラウドサーバ１４から受信した暗号化ハッシュ値を記憶部６６に記憶された秘密鍵６８で復号化する処理を試みる。復号化ができなかった場合（ステップＳ４０において「いいえ」）は、電子データ管理システム１０はそれ以上の処理は行わずに処理を終了する。なお、復号化ができなかった場合とは、閲覧者が当該電子データ２４の公開先ユーザではなく、閲覧者が持っている秘密鍵６８が当該電子データ２４のハッシュ値を暗号化した公開鍵に対応したものではない場合、あるいは、そもそも閲覧者が秘密鍵６８を持っていない場合である。復号化ができた場合（ステップＳ４０において「はい」）は、ステップＳ４２に進む。なお、ステップＳ３８で複数の暗号化ハッシュ値が送信された場合は、複数の暗号化ハッシュ値のうちいずれかが復号できればステップＳ４２に進み、全ての暗号化ハッシュ値が復号できなければ処理を終了する。
【００７０】
ステップＳ４２において、クライアント装置１６の通信部６０は、ステップＳ４０で復号した復号ハッシュ値をクラウドサーバ１４に送信する。クラウドサーバ１４は、当該復号ハッシュ値をローカル装置１２に転送する。ローカル装置１２が複数ある場合、転送先のローカル装置１２は、ステップＳ３６でクライアント装置１６から受信したデータＩＤに基づいて、当該データＩＤが示す電子データ２４が記憶されているローカル装置１２が選択される。
【００７１】
ステップＳ４４において、ローカル装置１２がクラウドサーバ１４から復号ハッシュ値を受信すると、ローカル装置１２のハッシュ値算出部２８は、記憶部２２に記憶されている電子データ２４のハッシュ値を算出する。受信した復号ハッシュ値と区別するために、ステップＳ４４で算出されたハッシュ値を「算出ハッシュ値」と記載する。
【００７２】
ステップＳ４６において、ローカル装置１２の制御部２６は、クラウドサーバ１４から受信した復号ハッシュ値と、ステップＳ４４で算出した算出ハッシュ値が同一であるか否かを判定する。
【００７３】
復号ハッシュ値と算出ハッシュ値が同一である場合（ステップＳ４６において「はい」）は、電子データ２４の内容及び属性情報が登録時と同一である、すなわち、電子データ２４の内容及び属性情報が改ざんされていないといえる。したがって、ステップＳ４８において、ローカル装置１２の通信部２０は、電子データ２４をクラウドサーバ１４に送信する。クラウドサーバ１４は、当該電子データ２４をクライアント装置１６に転送する。
【００７４】
復号ハッシュ値と算出ハッシュ値が異なる場合（ステップＳ４６において「いいえ」）は、電子データ２４の内容及び属性情報が登録時と同一でない、すなわち、電子データ２４の内容あるいは属性情報が改ざんされているといえる。したがって、ステップＳ５０において、ローカル装置１２の通知出力部３２は、電子データ２４が改ざんされていること閲覧者に通知するための通知信号をクラウドサーバ１４に送信する。クラウドサーバ１４は、当該通知信号をクライアント装置１６に転送する。
【００７５】
ステップＳ５２において、クライアント装置１６の表示処理部７４は、ステップＳ４８又はステップＳ５０においてクラウドサーバ１４経由でローカル装置１２から受信した各情報に基づいて表示部６４に表示させる表示処理を行う。
【００７６】
具体的には、ステップＳ４８でローカル装置１２から電子データ２４が送信された場合は、表示処理部７４は、当該電子データ２４を表示部６４に表示させる。
【００７７】
また、ステップＳ５０でローカル装置１２から通知情報が送信された場合は、表示処理部７４は、当該通知情報に基づく通知画面を表示部６４に表示させる。図９（ａ）に、通知画面の例が示されている。図９（ａ）に示すように、通知画面には、電子データ２４のデータ名、電子データが変更されていること、及び、復号ハッシュ値と算出ハッシュ値とが含まれるのが好ましい。
【００７８】
なお、ステップＳ４８において、電子データ２４と共に、通知出力部３２が電子データ２４が改ざんされていないこと閲覧者に通知するための通知信号をクラウドサーバ１４を経由してクライアント装置１６に送信してもよい。その場合は、電子データ２４を表示するに先立って、あるいは電子データ２４と共に、当該通知情報に基づく通知画面を表示部６４に表示させる。例えば、図９（ｂ）に示すように、電子データ２４のデータ名、電子データが変更されてないこと、及び、復号ハッシュ値と算出ハッシュ値とを表示するようにしてもよい。
【００７９】
以上説明した電子データ管理システム１０によれば、電子データ２４は、クラウドサーバ１４に比して限定されたユーザがアクセス可能となっているから、電子データ２４そのものをクラウドサーバ１４に記憶させた場合に比して、電子データ２４の漏洩、あるいは電子データ２４が改ざんされる可能性を低減することができる。
【００８０】
また、電子データ２４そのものをクラウドサーバ１４に記憶させないから、クラウドサーバ１４に記憶されるデータ量を低減することができる。これにより、例えば、クラウドサーバ１４が提供するストレージサービスが容量に応じて課金されるものであれば、電子データ２４をクラウドサーバ１４に記憶させた場合に比して、当該ストレージサービスの利用コストを抑制することができる。
【００８１】
また、電子データ２４のハッシュ値は暗号化された上でクラウドサーバ１４に記憶されるから、ハッシュ値の不正利用による電子データ２４が不正利用されることが防止される。
【００８２】
さらに、復号ハッシュ値と算出ハッシュ値が異なる場合に通知出力部３２により閲覧者に対して通知が行われるから、閲覧者は、電子データ２４が改ざんされていることを把握することができる。
【００８３】
以上、本発明に係る実施形態を説明したが、本発明は上記実施形態に限られるものではなく、本発明の趣旨を逸脱しない限りにおいて種々の変更が可能である。
【符号の説明】
【００８４】
１０  電子データ管理システム、１２  ローカル装置、１４  クラウドサーバ、１６  クライアント装置、１８  通信回線、２０，４０，６０  通信部、２２，４２，６６  記憶部、２４  電子データ、２６，５０，７０  制御部、２８  ハッシュ値算出部、３０  属性情報抽出部、３２  通知出力部、４４  公開鍵ＤＢ、４６  属性管理ＤＢ、４８  ハッシュ管理ＤＢ、５２  暗号化処理部、６２  入力部、６４  表示部、６８  秘密鍵、７２  復号処理部、７４  表示処理部。
【図１】
2020043396.tif 000003
【図２】
2020043396.tif 000004
【図３】
2020043396.tif 000005
【図４】
2020043396.tif 000006
【図５】
2020043396.tif 000007
【図６】
2020043396.tif 000008
【図７】
2020043396.tif 000009
【図８】
2020043396.tif 000010
【図９】
2020043396.tif 000011