(57)【特許請求の範囲】
【請求項１】
関数型暗号方式を用いたデータ利用制御システムにおいて、
上記関数型暗号方式に基づくデータの復号をするデータ復号部と、
上記関数型暗号方式により暗号化されたデータを復号するための復号条件が格納されるデータ制御部と、属性情報を取得する環境属性収集部と、上記属性情報がデータ制御部に格納された上記復号条件を満たすかどうかを定期的に判定する条件判定部と、を含み、
当該復号条件を満たさないと判定された場合には、上記データ制御部は、当該復号条件
に対応する復号化済みのデータを削除する、
データ利用制御システム。
【請求項２】
関数型暗号方式を用いたデータ利用制御方法において、
データ復号部が、上記関数型暗号方式に基づくデータの復号をするデータ復号ステップと、
環境属性収集部が、属性情報を収集する環境属性収集ステップと、
条件判定部が、上記属性情報がデータ制御部から読み込んだ上記関数型暗号方式により暗号化されたデータを復号するための復号条件を満たすかどうかを定期的に判定する条件判定ステップと、を含み、
当該復号条件を満たさないと判定された場合には、上記データ制御部は、当該復号条件
に対応する復号化済みのデータを削除する、
データ利用制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子データの保護及び利用制御を行う技術に関する。例えば、電子データの閲覧、複製、改竄などを防ぐための暗号化方式と、当該電子データの閲覧ソフトの利用可否の制御方式に関する技術に関する。 
【背景技術】
【０００２】
暗号技術は電子データの送受信や保存の際のデータ保護として一般的に利用されているが、主に通信路上における盗聴や改竄の防止やデータ格納媒体の盗難/紛失に備えた情報漏洩対策として用いられている。
【０００３】
また、コンテンツ制御の従来技術としてはデジタル著作権管理（Digital Rights Management:DRM）がある。これはコンテンツを暗号化して提供し、復号しながら再生することにより特定の再生ソフトウェア以外での利用を制御するものである。
【０００４】
なお、関数型暗号として、特許文献１に記載された技術が知られている。関数型暗号は、暗号-復号のメカニズムの中に高度なロジックを組み込むことができる。そのため、関数型暗号では暗号化と同時に暗号化データへのアクセス制御を実現できる。 
【先行技術文献】
【非特許文献】
【０００５】
【特許文献１】国際公開２０１０／１２３１２２号
【発明の概要】
【発明が解決しようとする課題】
【０００６】
暗号技術を利用することで電子データの送受信時の通信路上における盗聴や改竄の防止やデータ格納媒体の盗難/紛失による情報漏洩を防ぐことはできるが、暗号化データを復号した後の管理（破棄、再暗号化など）は基本的には所有者依存となる。この方式では一時的に電子データを譲渡するケースにおいてはデータの真の所有者が電子データのライフサイクルを適切に管理することが困難となる。
【０００７】
従来技術は復号時の制御が主となるため、利用資格を失った場合には対応する復号鍵を失効させるなどが必要であるが、これは鍵の運用コストを増大させる原因となっている。
【０００８】
この発明は、従来よりも適切なデータの保護及び利用を図ることができるデータ利用制御システム及び方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の一態様によるデータ利用制御システムは、関数型暗号方式を用いたデータ利用制御システムにおいて、関数型暗号方式に基づくデータの復号をするデータ復号部と、前記関数型暗号方式により暗号化されたデータを復号するための復号条件が格納されるデータ制御部と、属性情報を取得する環境属性収集部と、前記属性情報がデータ制御部に格納された上記復号条件を満たすかどうかを定期的に判定する条件判定部と、を含み、当該復号条件を満たさないと判定された場合には、データ制御部は、当該復号条件に対応する復号化済みのデータを削除する。
【発明の効果】
【００１０】
従来よりも適切なデータの保護及び利用を図ることができる。
【図面の簡単な説明】
【００１１】
【図１】データ利用制御システムの機能ブロック図。
【図２】事前準備を説明するための図。
【図３】データ復号を説明するための図。
【図４】データ消去（第一方式）を説明するための図。
【図５】データ消去（第二方式）を説明するための図。
【発明を実施するための形態】
【００１２】
以下、図面を参照して、データ利用制御システム及び方法の一実施形態について説明する。
【００１３】
関数型暗号は暗号-復号のメカニズムの中に高度なロジックを組み込むことができ、データの暗号化と同時に暗号化データへのアクセス制御を実現できる。以下の実施形態では、任意の関数型暗号方式を用いて暗号化データを復号後、その復号条件を保持して当該データの復号可否状態を監視することにより、予め暗号化データに設定された復号条件の範囲内で復号された状態を制御する。
【００１４】
データ利用制御システムは、図１に例示するように、データ送信装置１、鍵生成装置３及びデータ利用装置２を備えている。
【００１５】
データ送信装置１は、暗号化データ格納部１１、暗号化データ送信部１２及び暗号化データ生成部１３を備えている。
【００１６】
暗号化データ生成部１３は、平文データを暗号化して暗号化データを生成する。暗号化データ格納部１１は、当該暗号化データを格納する。暗号化データ送信部１２は、指定された暗号化データをデータ利用装置２に送信する。
【００１７】
鍵生成装置３は、復号鍵生成部３１及び復号鍵送信部３２を備えている。
【００１８】
復号鍵生成部３１は、鍵生成依頼に基づいて取得した情報から復号鍵を生成する。復号鍵送信部３２は、当該復号鍵をデータ利用装置２に送信する。
【００１９】
データ利用装置２は、データ制御機能、データ保存機能、鍵制御機能を備えている。
【００２０】
データ制御機能は、暗号化データ取得部２１１、データ制御部２１２及びプログラム制御部２１３により実現される。暗号化データ取得部２１１は、データ送信装置１から送信された暗号化データを取得し、データ格納部２２１に格納する。データ制御部２１２は、データ復号部２３１から登録された復号条件を格納し、定期的に条件判定部２３２に復号可否を問い合わせ、復号不可状態になった場合に復号化されたデータをデータ格納部２２１から消去する（後述する第一方式）、又は、プログラム制御部２１３に当該平文データを利用しているプログラムの制御を依頼する（後述する第二方式）。プログラム制御部２１３は、データ制御部から制御依頼を受けると、当該データ再生プログラムを停止させる。
【００２１】
データ保存機能は、データ格納部２２１により実現される。データ格納部２２１は、データ送信装置１から送信された暗号化データやデータ復号部２３１が復号した平文データを取得しこれを格納する。
【００２２】
鍵制御機能は、データ復号部２３１、条件判定部２３２、鍵取得部２３３及び環境属性収集部２３４により実現される。データ復号部２３１は、暗号化データ復号依頼を受ける復号鍵取得を依頼し取得した復号鍵で当該暗号化データを復号し、データ格納部２２１に格納し、また復号したデータの復号条件をデータ制御部２１２に登録する。条件判定部２３２は、データ制御部２１２から判定依頼を受けると環境属性収集部２３４から最新の環境属性を収集し、復号条件と照らし合わせて復号可否を判定する。鍵取得部２３３は、復号鍵生成依頼を受けると当該暗号化データの復号に必要な属性情報を取得し、鍵生成装置３に復号鍵の生成を依頼し、取得した復号鍵をデータ復号部２３１に送信する。ここで、環境属性は、「時間」「位置情報」「日時」など、時間経過やユーザの行動等とともに動的に変化する情報を含んでいてもよい。環境属性収集部２３４は、属性収集依頼を受けて環境属性を収集し、依頼元に送信する。環境属性はデータ利用装置外に属性情報発信装置として構築してもよいし、データ利用装置のその他の機能として実装してもよい。また、属性収集依頼を受けて環境属性を収集する前提ではなく、環境属性収集部２３４は、定期的に特定の属性情報を収集したり、外部から環境属性の状態変化通知を受けて情報を更新してもよい。
【００２３】
また、データ利用装置２は、データ再生プログラムを実行可能である。データ再生プログラムに基づいて、データ格納部２２１に格納されたデータを指定し、平文状態のデータを読み出してデータ表示部２４１に表示させる。
【００２４】
データ利用装置２は、データの復号条件をもとにデータの利用を制御する。データの利用制御の実現方式は、復号したデータそのものを制御する第一方式と、データを実行するためのプログラムを制御する第二方式とを例に挙げることができる。
【００２５】
データ利用制御方法は、以下に説明する［事前準備（暗号データ配布）］［データ復号］［データ消去（第一方式）］［データ消去（第二方式）］で説明する処理の全部又は一部により例えば実現される。［事前準備（暗号データ配布）］［データ復号］の処理により、所定の関数型暗号方式が実現される。その上で、［データ消去（第一方式）］と［データ消去（第二方式）］との少なくとも一方が実現される。
【００２６】
［事前準備（暗号データ配布）］
事前準備は、図２に示すステップＡ１からステップＡ５の処理により例えば実現される。
【００２７】
暗号化データ生成部１３は、平文データを暗号化して暗号化データを生成し、暗号化データ格納部１１に格納する（ステップＡ１）。
【００２８】
暗号化データ送信部１２は、暗号化データ格納部１１から暗号化データを読み込む（ステップＡ２）
暗号化データ送信部１２は、読み込んだ暗号化データをデータ利用装置２に送信し、データ利用装置２の暗号化データ取得部２１１が暗号化データ送信部１２からデータを取得する。（ステップＡ３）。
【００２９】
暗号化データ取得部２１１は、取得した暗号化データをデータ格納部２２１に送信する（ステップＡ４）。
【００３０】
データ格納部２２１は、受信した暗号化データを格納する（ステップＡ５）。
【００３１】
［データ復号］
データ復号は、図３に示すステップＢ１からステップＢ１４の処理により例えば実現される。
【００３２】
データ表示部２４１でユーザが選択した暗号化データについての情報が、データ格納部２２１に送信される（ステップＢ１）。
【００３３】
データ格納部２２１は、選択された暗号化データの復号をデータ復号部２３１に依頼する（ステップＢ２）。
【００３４】
データ復号部２３１は、鍵取得部２３３に復号鍵を要求する（ステップＢ３）。
【００３５】
鍵取得部２３３は、環境属性収集部２３４に復号鍵生成に必要な属性情報を要求する（ステップＢ４）。
【００３６】
環境属性収集部２３４は、要求された属性情報を収集し鍵取得部２３３に送信する（ステップＢ５）。
【００３７】
鍵取得部２３３は、取得した属性情報を鍵生成装置３に送信する（ステップＢ６）。
【００３８】
復号鍵生成部３１は、取得した属性情報からが復号鍵を生成し（ステップＢ７）、復号鍵送信部３２が生成された復号鍵を鍵取得部２３３に送信する（ステップＢ８）。
【００３９】
鍵取得部２３３は、復号鍵をデータ復号部２３１に送信する（ステップＢ９）。
【００４０】
データ復号部２３１は、受信した復号鍵を用いて暗号化データを復号してデータを得る（ステップＢ１０）。
【００４１】
データ復号部２３１は、復号したデータをデータ格納部２２１に格納する（ステップＢ１１）。
【００４２】
データ表示部２４１は、データ格納部２２１に格納された復号済みデータを読み出して表示する（ステップＢ１２）。
【００４３】
データ復号部２３１は、復号したデータの復号条件をデータ制御部２１２に格納する旨の依頼を行い（ステップＢ１３）、データ制御部２１２は当該復号条件を格納する（ステップＢ１４）。このようにして、データ復号部２３１は、関数型暗号方式に基づくデータの復号の際に、そのデータの復号条件をデータ制御部２１２に格納する。そのデータの復号条件とは、例えばそのデータを復号するための属性情報を満たすための条件のことである。
【００４４】
［データ消去（第一方式）］
データ消去は、図４に示すステップＣ１からステップＣ６の処理により例えば実現される。
【００４５】
データ制御部２１２は、格納された復号条件の状態の判定を定期的に条件判定部２３２に依頼する（ステップＣ１）。
【００４６】
条件判定部２３２は、データ制御部２１２から取得した復号条件に対応する属性情報の収集を環境属性収集部２３４に依頼し（ステップＣ２）、取得する（ステップＣ３）。
【００４７】
条件判定部２３２は、取得した属性情報で条件判定を行う（ステップＣ４）。すなわち、条件判定部２３２は、データ制御部２１２に格納された復号条件に対応する環境属性が、当該復号条件を満たすかどうかを判定する。
【００４８】
そして、条件判定部２３２は、その判定結果をデータ制御部２１２に返却する（ステップＣ５）。例えば、条件判定部２３２は、復号不可となった場合にはデータ制御部２１２に通知する。
【００４９】
データ制御部２１２は、復号不可通知を取得すると、当該復号化済ファイルをデータ格納部２２１から消去する（ステップＣ６）。すなわち、当該復号条件を満たさないと判定された場合には、データ制御部２１２は、当該復号条件に対応するデータを利用不可とする。このように、第一方式においては、当該復号条件を満たさないと判定された場合には、データ制御部２１２は、当該復号条件に対応するデータを削除する。
【００５０】
［データ消去（第二方式）］
データ消去は、図５に示すステップＣ１からステップＣ５、ステップＣ７からステップＣ９の処理により例えば実現される。
【００５１】
ステップＣ１からステップＣ５は、［データ消去（第一方式）］で説明したステップＣ１からステップＣ５と同様であるため説明を省略する。以下では、［データ消去（第一方式）］と異なるステップＣ７及びステップＣ９について説明をする。
【００５２】
データ制御部２１２は、復号不可通知を取得すると、当該復号化済ファイルを表示する再生プログラムを制御するようプログラム制御部２１３に通知する（ステップＣ７）。
【００５３】
プログラム制御部２１３は、再生プログラムを停止するため当該プロセスを停止する旨の依頼をデータ表示部２４１に行う（ステップＣ８）。
【００５４】
データ表示部２４１では、再生プログラムの表示が行われない（ステップＣ９）。
【００５５】
このようにして、当該復号条件を満たさないと判定された場合には、データ制御部２１２は、当該復号条件に対応するデータを利用可能なプログラムに対して当該復号条件に対応するデータを利用不可とする制御を行う。
【００５６】
上記の実施形態によれば、電子データの安全性を保護（暗号化し、利用期間を制御）しつつ、電子データが他者に渡ったとしても（データ削除まで含めた）ライフサイクル管理が可能である。
【００５７】
また、上記の実施形態によれば、利用条件を暗号化データに含めて一体として流通させることができ、その条件に応じて復号鍵を生成するため、利用資格を失った場合でも復号鍵の失効処理を行う必要がなく、システムの運用コストを削減することができる。
【００５８】
また、上記の実施形態によれば、利用条件を暗号化データに含めておき、その利用条件をもとにしてデータの復号を行う。これにより、データ利用のタイミングにかかわらず事前に暗号化データを配布しておくことができるため、データ利用時の配布の手間（オペレーションコスト）を削減できる。
【００５９】
［変形例等］
上記説明した処理は、記載の順にしたがって時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。
【００６０】
また、各装置における各種の処理機能をコンピュータによって実現してもよい。その場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、各装置における各種の処理機能がコンピュータ上で実現される。
【００６１】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
【００６２】
また、このプログラムの流通は、例えば、そのプログラムを記録したＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させてもよい。
【００６３】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶部に格納する。そして、処理の実行時、このコンピュータは、自己の記憶部に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実施形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよい。さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるＡＳＰ（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。なお、プログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【００６４】
また、コンピュータ上で所定のプログラムを実行させることにより、各装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【符号の説明】
【００６５】
１      データ送信装置
１１    暗号化データ格納部
１２    暗号化データ送信部
１３    暗号化データ生成部
２      データ利用装置
２１１  暗号化データ取得部
２１２  データ制御部
２１３  プログラム制御部
２２１  データ格納部
２３１  データ復号部
２３２  条件判定部
２３３  鍵取得部
２３４  環境属性収集部
２４１  データ表示部
３      鍵生成装置
３１    復号鍵生成部
３２    復号鍵送信部
【図１】
0006560859.tif 000002
【図２】
0006560859.tif 000003
【図３】
0006560859.tif 000004
【図４】
0006560859.tif 000005
【図５】
0006560859.tif 000006