JP5511925B2 - アクセス権付き暗号化装置、アクセス権付き暗号システム、アクセス権付き暗号化方法およびアクセス権付き暗号化プログラム - Google Patents

アクセス権付き暗号化装置、アクセス権付き暗号システム、アクセス権付き暗号化方法およびアクセス権付き暗号化プログラム Download PDF

Info

Publication number
JP5511925B2
JP5511925B2 JP2012223709A JP2012223709A JP5511925B2 JP 5511925 B2 JP5511925 B2 JP 5511925B2 JP 2012223709 A JP2012223709 A JP 2012223709A JP 2012223709 A JP2012223709 A JP 2012223709A JP 5511925 B2 JP5511925 B2 JP 5511925B2
Authority
JP
Japan
Prior art keywords
unit
encryption
encrypted file
encrypted
access restriction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2012223709A
Other languages
English (en)
Other versions
JP2014078770A (ja
Inventor
拓海 森
学 田中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Mitsubishi Electric Information Systems Corp
Original Assignee
Mitsubishi Electric Corp
Mitsubishi Electric Information Systems Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp, Mitsubishi Electric Information Systems Corp filed Critical Mitsubishi Electric Corp
Priority to JP2012223709A priority Critical patent/JP5511925B2/ja
Publication of JP2014078770A publication Critical patent/JP2014078770A/ja
Application granted granted Critical
Publication of JP5511925B2 publication Critical patent/JP5511925B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、例えば、アクセス権を設定してデータを暗復号するアクセス権付き暗号化装置、アクセス権付き復号装置、アクセス権付き暗号システム、アクセス権付き暗号化方法、アクセス権付き復号方法、アクセス権付き暗号化プログラム、アクセス権付き復号プログラムに関するものである。
一般によく利用されている持ち運びが容易なノートPC(パーソナルコンピュータ)またはその他のモバイルコンピュータは盗難に合うリスクが高い。
ノートPCまたはその他のモバイルコンピュータの盗難は、コンピュータそのものの資産価値の損失よりもむしろ、コンピュータの内部に保存された個人情報や重要機密情報が漏洩することによる企業の信頼の喪失、という2次的被害の影響の方がはるかに大きい。
そのため、機密データが漏洩するという事件の増加に伴い、コンピュータ内の機密データを保護することが求められている。
コンピュータ内に保存された機密データを保護するための最も一般的な手段はデータの暗号化である。
万一、機密データを含むコンピュータが悪意のある者の手に渡った場合でも、機密データを復号するための復号鍵が無ければ機密データの情報を読み取ることはできない。
しかしながら、現存する暗号化方法には以下のような課題がある。
例えば、あるファイルシステムに保存する全てのファイルを同一の暗号鍵を用いて暗号化した場合には次のような課題がある。
利用者が復号鍵を損失した場合、全てのファイルが復号できなくなる。また、損失した復号鍵が悪意のある者に渡れば、全てのファイルが読み取られる危険性がある。
また、全てのファイルを別々の暗号鍵で暗号化した場合、復号処理が煩雑になってしまう。さらに、復号可能な利用者が追加された場合、追加された利用者の復号鍵を用いて復号できるように、ファイルを新たに暗号化する必要がある。また、復号可能な利用者が削除された場合、削除された利用者の復号鍵を用いて復号できないように、ファイルを新たに暗号化する必要がある。
特許文献1は、乱数生成器を用いて生成した乱数値を共通鍵暗号方式の共通鍵として用いてファイルを暗号化し、ファイルの復号が許可された利用者の公開鍵を用いて公開鍵暗号方式で共通鍵を暗号化する、という方式を開示している。
このようにすることで、全てのファイルを別々の共通鍵を用いて暗号化することができる。また、復号可能な利用者が変化した場合、ファイルの暗号化に用いた共通鍵を特定の公開鍵で暗号化すればよく、ファイルを再暗号化する必要は無い。
しかし、複数の利用者にファイルの復号を許可する場合、複数の利用者それぞれの公開鍵を用いて共通鍵を暗号化し、暗号化した複数の共通鍵を暗号化ファイルに付加する必要がある。
そのため、複数の利用者それぞれの公開鍵を収集しなければならず、共通鍵の暗号化が煩雑になり、暗号化ファイルのデータサイズが大きくなる、という課題がある。
特許文献1が開示する方式の課題の具体例は以下のとおりである。
例えば「人事部に所属し、且つ、総務部に所属する社員」にファイルのアクセスを許可する場合、人事部に所属する社員と総務部に所属する社員とを洗い出し、人事部と総務部との両方に所属する対象社員を判断し、対象社員の全員分の公開鍵(または公開鍵を含んだ証明書)を取得しなければならない。このため、作業が非常に煩雑である。
また、ファイルのアクセスを許可する対象社員が多い場合、「ファイルの暗号化に用いた共通鍵を対象社員の公開鍵を用いて暗号化したメタデータ」を対象社員の人数分、暗号化ファイルに付加しなければならない。すなわち、100人の社員にファイルのアクセスを許可する場合、100個のメタデータが暗号化ファイルに付加されることになり、暗号化ファイルのデータサイズが増大する。
特許第4593774号公報
Dan Boneh Amit Sahai and Brent Waters "Functional encryption:Definitions and challenges" TCC 2011 LNCS 6597 pp. 253−−273 2011.
本発明は、例えば、暗号化した1つの共通鍵を含み、一人以上の復号可能者が復号可能な暗号化ファイルを生成できるようにすること目的とする。
本発明のアクセス権付き暗号化装置は、
暗号化されるデータをアクセス制限データとして生成するアクセス制限データ生成部と、
暗号化された前記アクセス制限データを復号することが許可される利用者が有する属性に関する条件を復号可能条件として示す復号可能条件情報を取得する復号可能条件情報取得部と、
前記アクセス制限データ生成部によって生成された前記アクセス制限データを共通鍵を用いて共通鍵暗号方式で暗号化するアクセス制限データ暗号化部と、
前記アクセス制限データ暗号化部が前記アクセス制限データの暗号化に用いる前記共通鍵を、公開鍵と、前記復号可能条件情報取得部によって取得された前記復号可能条件情報とを用いて、前記復号可能条件を満たす属性に関連付けて生成される秘密鍵を用いて復号されるようにデータを暗号化するアクセス権付き暗号方式で、暗号化する共通鍵暗号化部と、
前記アクセス制限データ暗号化部によって暗号化された前記アクセス制限データと、前記共通鍵暗号化部によって暗号化された前記共通鍵と、を含んだ暗号化ファイルを生成する暗号化ファイル生成部とを備える。
本発明によれば、例えば、暗号化した1つの共通鍵を含み、一人以上の復号可能者が復号可能な暗号化ファイルを生成することができる。
実施の形態1における透過的暗号化ファイルシステム100の構成図。 実施の形態1におけるユーザ管理ファイル199の一例を示す図。 実施の形態1におけるデータ暗号化部140の構成図。 実施の形態1における暗号化ファイル生成部144の構成図。 実施の形態1における暗号化ファイル119の構成図。 実施の形態1における透過的暗号化処理を示すフローチャート。 実施の形態1におけるデータ暗号化処理(S140)を示すフローチャート。 実施の形態1における暗号化ファイル生成処理(S144)を示すフローチャート。 実施の形態1におけるデータ復号部150の構成図。 実施の形態1における透過的復号処理を示すフローチャート。 実施の形態1におけるデータ復号処理(S230)を示すフローチャート。 実施の形態1における透過的暗号化ファイルシステム100のハードウェア資源の一例を示す図。 実施の形態1における透過的暗号化ファイルシステム100の透過的暗号化方法の概要図。 実施の形態1における透過的暗号化ファイルシステム100の透過的暗号化方法の概要図。 実施の形態1における透過的暗号化ファイルシステム100の透過的暗号化方法の概要図。 実施の形態1における透過的暗号化ファイルシステム100の構成例を示す図。 実施の形態1における透過的暗号化ファイルシステム100の構成例を示す図。 実施の形態2(実施例1)における暗号化ファイル記憶部160の一例を示す図。 実施の形態2(実施例2)における暗号化ファイル記憶部160の一例を示す図。
実施の形態1.
暗号化した1つの共通鍵を含み、一人以上の復号可能者が復号可能な暗号化ファイルを生成する形態について説明する。
図1は、実施の形態1における透過的暗号化ファイルシステム100の構成図である。
実施の形態1における透過的暗号化ファイルシステム100の構成について、図1に基づいて説明する。
透過的暗号化ファイルシステム100は、アクセス権付き暗号化装置、アクセス権付き復号装置、アクセス権付き暗号システムの一例である。
透過的暗号化ファイルシステム100は、ユーザおよびアプリケーションプログラムがデータの暗号化および復号を意識しなくても、データを暗号化および復号するシステムである。
つまり、透過的暗号化ファイルシステム100は、データを保存するときにデータを透過的に暗号化し、データを使用するときにデータを透過的に復号する。
透過的暗号化ファイルシステム100は、ログイン部101、アクセス権付き暗号鍵生成部109、アプリケーション部110、ファイルシステム部120、デバイス制御部130、データ暗号化部140、データ復号部150、暗号化ファイル記憶部160及びシステム記憶部190を備える。
ログイン部101は、透過的暗号化ファイルシステム100に対するユーザのログインに関するログイン処理を実行する。
アクセス権付き暗号鍵生成部109は、アクセス権付き暗号方式の鍵生成アルゴリズムを実行し、1つの公開鍵(以下、「システム公開鍵191」という)とユーザ別の秘密鍵(以下、「ユーザ秘密鍵192」という)とを生成する。
アクセス権付き暗号方式は、復号可能条件を満たす属性に関連付けて生成されるユーザ秘密鍵192を用いて復号されるように、データを暗号化する暗号方式である。ここで、復号可能条件とは、暗号化されたデータを復号することが許可される(復号可能グループに属する)復号可能者が有する属性に関する条件である。
アクセス権付き暗号方式の一例として「関数型暗号」と呼ばれる暗号方式が挙げられる。関数型暗号では、復号可能者の属性を表す属性値を用いた論理式(例えば、「属性値a AND 属性値b」「属性値a OR 属性値b」など)を復号可能条件として指定することができる。関数型暗号(アクセス権付き暗号方式の一例)については、例えば、[非特許文献1]を参照のこと。
以下、復号可能条件を示すデータを「アクセス権情報112」という。
アプリケーション部110(アクセス制限データ生成部の一例)は、テキストファイル、ドキュメントファイル、画像ファイル、音声ファイルなどのデータを生成および編集するアプリケーションプログラム、を実行する実行部である。
実施の形態において、アプリケーション部110によって生成されるデータは暗号化され、アクセス権情報112が示す復号可能条件を満たすユーザ(復号可能者)だけがこのデータを復号して使用することができる。
以下、アプリケーション部110によって生成されるデータを「アクセス制限データ111」という。アクセス制限データ111は、アプリケーション部110によって一時的にメモリ(記憶部の一例)(図示省略)に記憶される。
ファイルシステム部120は、アクセス制限データ111を記憶管理する。
例えば、ファイルシステム部120は、デバイス制御部130を介して、暗号化ファイル記憶部160にアクセス制限データ111を記憶する。
また、ファイルシステム部120は、デバイス制御部130を介して、暗号化ファイル記憶部160からアクセス制限データ111を取得する。
デバイス制御部130は、暗号化ファイル記憶部160を制御する。
例えば、デバイス制御部130は、データ暗号化部140によって暗号化されたアクセス制限データ111を暗号化ファイル記憶部160に記憶し、データ復号部150によって復号されたアクセス制限データ111を暗号化ファイル記憶部160から取得する。
データ暗号化部140(復号可能条件情報取得部、共通鍵暗号化部、暗号化ファイル生成部の一例)は、アクセス権付き暗号方式によって、アクセス制限データ111を暗号化する。
このとき、データ暗号化部140は、乱数を生成し、生成した乱数を共通鍵として用いて共通鍵暗号方式の暗号化アルゴリズムを実行し、アクセス制限データ111を暗号化する。以下、暗号化したアクセス制限データ111を「暗号化データ119b」という。
さらに、データ暗号化部140は、アクセス権情報112を用いてアクセス権付き暗号方式の暗号化アルゴリズムを実行し、アクセス制限データ111の暗号化に用いた乱数(共通鍵)を暗号化する。以下、暗号化した乱数(共通鍵)を「暗号化乱数119a」という。
そして、データ暗号化部140は、暗号化乱数119aと暗号化データ119bとを含んだ暗号化ファイル119を生成する。
データ復号部150(利用者識別子入力部、利用者秘密鍵取得部、共通鍵復号部、アクセス制限データ復号部の一例)は、アクセス権付き暗号方式によって、暗号化ファイル119からアクセス制限データ111を復号する。
このとき、データ復号部150は、ユーザ秘密鍵192を用いてアクセス権付き暗号方式の復号アルゴリズムを実行し、暗号化ファイル119に含まれる暗号化乱数119aを乱数(共通鍵)に復号する。
さらに、データ復号部150は、復号した乱数を共通鍵として用いて共通鍵暗号方式の復号アルゴリズムを実行し、暗号化ファイル119に含まれる暗号化データ119bをアクセス制限データ111に復号する。
暗号化ファイル記憶部160(暗号化ファイル記憶部の一例)は、暗号化ファイル119を記憶する。
システム記憶部190(秘密鍵記憶部の一例)は、透過的暗号化ファイルシステム100で使用する各種データを記憶する。
例えば、システム記憶部190は、システム公開鍵191およびユーザ管理ファイル199を記憶する。ユーザ管理ファイル199は、ユーザ毎に、ユーザが有する属性およびユーザに割り当てられたユーザ秘密鍵192を設定するファイルである。
暗号化ファイル記憶部160およびシステム記憶部190は、例えば、HDD(ハード・ディスク・ドライブ)またはSSD(ソリッド・ステート・ドライブ)などの記憶装置によって構成される。
次に、アクセス権付き暗号鍵生成部109が実行するアクセス権付き暗号鍵生成処理について説明する。
アクセス権付き暗号鍵生成部109は、アクセス権付き暗号方式の公開鍵生成アルゴリズムを実行し、1つのシステム公開鍵191を生成する。
システム公開鍵191の生成方法は、通常の公開鍵暗号方式での公開鍵の生成方法と同様である。例えば、アクセス権付き暗号鍵生成部109は、乱数を生成し、生成した乱数および所定のパラメータを用いてシステム公開鍵191を生成する。
システム公開鍵191は、秘匿しなくてよい情報であるため、任意の場所(例えば、外部ストレージまたはインターネット上のサーバ)に保存しても構わない。この場合、透過的暗号化ファイルシステム100はシステム公開鍵191を使用する際に保存場所からシステム公開鍵191を取得する。
アクセス権付き暗号鍵生成部109は、ユーザ管理ファイル199に設定された各ユーザの属性を用いて、ユーザ毎にユーザ秘密鍵192を生成する。
図2は、実施の形態1におけるユーザ管理ファイル199の一例を示す図である。
実施の形態1におけるユーザ管理ファイル199について、図2に基づいて説明する。
ユーザ管理ファイル199は、ユーザ毎に、ユーザが有する属性およびユーザに割り当てられたユーザ秘密鍵192を設定するファイルである。
ユーザ管理ファイル199(ユーザ秘密鍵192を除く)は、ユーザ秘密鍵192を生成する前に、予め生成しておく。
ユーザ管理ファイル199は、「ユーザID」「所属」などの属性と「パスワード」と「ユーザ秘密鍵」とを対応付けている。
「ユーザID」は、ユーザを識別する識別子を示す。
「所属」は、ユーザが所属する部署の識別子(例えば、名称、部署コード)を示す。
「パスワード」は、ユーザが透過的暗号化ファイルシステム100にログインするために使用するパスワードを示す。
「ユーザ秘密鍵」は、ユーザが有する属性に応じてユーザに割り当てられたユーザ秘密鍵192を示す。
ユーザIDおよび所属はユーザが有する属性の一例である。ユーザが有する属性として、その他に、氏名、年齢、性別、住所、役職、入社年度などが挙げられる。
アクセス権付き暗号鍵生成部109は、ユーザ毎に、ユーザ管理ファイル199から1つの属性値(例えば、ユーザID)または複数の属性値(例えば、ユーザIDと所属)を取得する。
アクセス権付き暗号鍵生成部109は、ユーザ毎に、ユーザ管理ファイル199から取得した1つまたは複数の属性値を入力パラメータとして用いて、アクセス権付き暗号方式の秘密鍵生成アルゴリズムを実行する。これにより、ユーザ毎に、ユーザの1つまたは複数の属性値の情報を埋め込んだユーザ秘密鍵192が生成される。
アクセス権付き暗号鍵生成部109は、ユーザ毎に、生成したユーザ秘密鍵192をユーザIDに対応付けてユーザ管理ファイル199に設定する。
次に、アクセス権付き暗号鍵生成部109によって生成されたシステム公開鍵191を用いて暗号化ファイル119を生成するデータ暗号化部140の構成について、図3に基づいて説明する。
図3は、実施の形態1におけるデータ暗号化部140の構成図である。
データ暗号化部140は、公開鍵入力部141、アクセス権情報入力部142、データ入力部143、暗号化ファイル生成部144および暗号化ファイル出力部145を備える。
公開鍵入力部141は、システム記憶部190からシステム公開鍵191を取得する。
アクセス権情報入力部142(復号可能条件情報取得部の一例)は、アクセス権情報112を取得する。例えば、アクセス権情報112は、アプリケーション部110に対してアクセス制限データ111の生成を要求するユーザによって指定され、または、暗号化ファイル119を保存するディレクトリ(フォルダともいう)に予め設定される。
データ入力部143は、アプリケーション部110によって生成されたアクセス制限データ111をデバイス制御部130から入力する。
暗号化ファイル生成部144(アクセス制限データ暗号化部、共通鍵暗号化部、暗号化ファイル生成部の一例)は、公開鍵入力部141が取得したシステム公開鍵191と、アクセス権情報入力部142が取得したアクセス権情報112と、データ入力部143が入力したアクセス制限データ111とを用いて、暗号化ファイル119を生成する。
暗号化ファイル出力部145は、暗号化ファイル生成部144によって生成された暗号化ファイル119をデバイス制御部130へ出力する。
次に、暗号化ファイル生成部144の構成について、図4に基づいて説明する。
図4は、実施の形態1における暗号化ファイル生成部144の構成図である。
暗号化ファイル生成部144は、乱数生成部144A、共通鍵暗号化部144B、アクセス権付き暗号化部144Cおよび暗号化ファイル構成部144Dを備える。
乱数生成部144Aは、アクセス制限データ111を暗復号するための共通鍵として用いる乱数144aを生成する。
共通鍵暗号化部144B(アクセス制限データ暗号化部の一例)は、乱数生成部144Aによって生成された乱数144aを共通鍵として用いて共通鍵暗号方式の暗号化アルゴリズムを実行し、アクセス制限データ111を暗号化する。
アクセス権付き暗号化部144C(共通鍵暗号化部の一例)は、システム公開鍵191とアクセス権情報112とを入力パラメータとして用いてアクセス権付き暗号方式の暗号化アルゴリズムを実行し、乱数144aを暗号化する。
暗号化ファイル構成部144D(暗号化ファイル生成部の一例)は、アクセス権付き暗号化部144Cによって暗号化された乱数144a(暗号化乱数119a)と、共通鍵暗号化部144Bによって暗号化されたアクセス制限データ111(暗号化データ119b)とを含んだ暗号化ファイル119を生成する。
図5は、実施の形態1における暗号化ファイル119の構成図である。
図5に示すように、暗号化ファイル119は、メタデータフィールド119Aとデータフィールド119Bとを有する。
データフィールド119Bは、ユーザデータ(例えば、暗号化データ119b)を設定する領域である。
メタデータフィールド119Aは、ユーザデータに関する情報を含んだメタデータ(例えば、暗号化乱数119a)を設定する領域である。
暗号化ファイル構成部144Dは、暗号化ファイル119のメタデータフィールド119Aに暗号化乱数119aを設定し、暗号化ファイル119のデータフィールド119Bに暗号化データ119bを設定する。
次に、暗号化ファイル119を生成する際の透過的暗号化処理について、図6に基づいて説明する。
図6は、実施の形態1における透過的暗号化処理を示すフローチャートである。
ここで、システム公開鍵191およびユーザ管理ファイル199(ユーザ秘密鍵192を含む)は予め生成されているものとする。
S101において、アクセス制限データ111を生成したいユーザは、透過的暗号化ファイルシステム100にログインする。
このとき、ユーザは、キーボードまたはマウスなどの入力機器を用いて、ユーザIDおよびパスワードを透過的暗号化ファイルシステム100に入力する。
ログイン部101は、入力されたユーザIDと同じユーザIDがユーザ管理ファイル199(図2参照)に設定されているか否かを判定する。入力されたユーザIDと同じユーザIDがユーザ管理ファイル199に設定されていない場合、ログイン部101はログインを許可しない。
入力されたユーザIDと同じユーザIDがユーザ管理ファイル199に設定されている場合、ログイン部101は、そのユーザIDに対応付けられているパスワードをユーザ管理ファイル199から取得する。
ログイン部101は、取得したパスワードと入力されたパスワードとが同じであるか否かを判定する。取得したパスワードと入力されたパスワードとが異なる場合、ログイン部101はログインを許可しない。
取得したパスワードと入力されたパスワードとが同じである場合、ログイン部101はログインを許可する。以下、ログインが許可されたユーザを「ログインユーザ」という。
ログインが許可された場合、処理はS110に進む。
S110において、ログインユーザは、入力機器を用いて、アクセス制限データ111の生成をアプリケーション部110に対して要求すると共に、アクセス制限データ111のアクセス権情報112を指定する。
但し、実施の形態2で説明するように、アクセス権情報112はアクセス制限データ111の暗号化ファイル119が記憶されるディレクトリに予め設定してもよい。
例えば、人事部に所属する社員だけにアクセス制限データ111を使用させたい場合、ログインユーザはアクセス制限データ111として属性値「人事部」を指定する。
人事部と総務部との少なくともいずれかに所属する社員にアクセス制限データ111を使用させたい場合、ログインユーザはアクセス制限データ111として属性値の論理式「人事部 OR 総務部」を指定する。
人事部と総務部との両方に所属する社員だけにアクセス制限データ111を使用させたい場合、ログインユーザはアクセス制限データ111として属性値の論理式「人事部 AND 総務部」を指定する。
アプリケーション部110は、テキストエディタ、ワードプロセッサ、画像編集プログラムまたは音声編集プログラムなどのアプリケーションプログラムを実行し、アクセス制限データ111を生成する。生成されたアクセス制限データ111は、アプリケーション部110によって一時的にメモリ(記憶部の一例)に記憶される。
アプリケーション部110は、生成したアクセス制限データ111と指定されたアクセス権情報112とをファイルシステム部120に出力する。
S110の後、処理はS120に進む。
S120において、ファイルシステム部120は、アプリケーション部110から出力されたアクセス制限データ111とアクセス権情報112とを入力する。
ファイルシステム部120は、アクセス権情報112が示す条件を満たすユーザだけがアクセスできるようにアクセス制限データ111を保存するために、アクセス制限データ111とアクセス権情報112とをデバイス制御部130に出力する。
S120の後、処理はS130に進む。
S130において、デバイス制御部130は、ファイルシステム部120から出力されたアクセス制限データ111とアクセス権情報112とを入力する。
デバイス制御部130は、アクセス権情報112が示す条件を満たすユーザだけが復号できるようにアクセス制限データ111を暗号化するために、アクセス制限データ111とアクセス権情報112とをデータ暗号化部140に出力する。
S130の後、処理はS140に進む。
S140において、データ暗号化部140は、デバイス制御部130から出力されたアクセス制限データ111とアクセス権情報112とを入力する。
データ暗号化部140は、アクセス権情報112を用いてアクセス権付き暗号方式の暗号化アルゴリズムを実行し、アクセス制限データ111を暗号化した暗号化データ119bを含んだ暗号化ファイル119を生成する。
データ暗号化部140は、生成した暗号化ファイル119をデバイス制御部130に出力する。
データ暗号化処理(S140)の詳細については後述する。
S140の後、処理はS150に進む。
S150において、デバイス制御部130は、データ暗号化部140から出力された暗号化ファイル119を入力し、入力した暗号化ファイル119を暗号化ファイル記憶部160に記憶する。
例えば、デバイス制御部130は、暗号化ファイル119とアクセス制限データ111のデータ名とを対応付けて暗号化ファイル記憶部160に記憶する。
S150の後、透過的暗号化処理は終了する。
図7は、実施の形態1におけるデータ暗号化処理(S140)を示すフローチャートである。
データ暗号化部140(図3参照)が実行するデータ暗号化処理(S140)について、図7に基づいて説明する。
S141において、公開鍵入力部141は、システム記憶部190からシステム公開鍵191を入力する。
S141の後、処理はS142に進む。
S142において、アクセス権情報入力部142は、デバイス制御部130から出力されるアクセス権情報112を入力する。
S142の後、処理はS143に進む。
S143において、データ入力部143は、デバイス制御部130から出力されるアクセス制限データ111を入力する。
S143の後、処理はS144に進む。
但し、S141からS143の順番を変えて実行しても構わない。
S144において、暗号化ファイル生成部144は、システム公開鍵191とアクセス権情報112とを用いて、アクセス制限データ111を暗号化した暗号化データ119bを含んだ暗号化ファイル119を生成する。
暗号化ファイル生成処理(S144)の詳細については後述する。
S144の後、処理はS145に進む。
S145において、暗号化ファイル出力部145は、暗号化ファイル生成部144によって生成された暗号化ファイル119をデバイス制御部130に出力する。
S145の後、データ暗号化処理(S140)は終了する。
図8は、実施の形態1における暗号化ファイル生成処理(S144)を示すフローチャートである。
暗号化ファイル生成部144(図4参照)が実行する暗号化ファイル生成処理(S144)について、図8に基づいて説明する。
S144Aにおいて、乱数生成部144Aは、アクセス制限データ111を暗号化するための共通鍵として用いる乱数144aを生成する。
S144Aの後、処理はS144Bに進む。
S144Bにおいて、共通鍵暗号化部144Bは、乱数生成部144Aによって生成された乱数144aを共通鍵として用いて共通鍵暗号方式の暗号化アルゴリズムを実行し、アクセス制限データ111を暗号化する。
S144Bの後、処理はS144Cに進む。
S144Cにおいて、アクセス権付き暗号化部144Cは、システム公開鍵191とアクセス権情報112とを用いてアクセス権付き暗号方式の暗号化アルゴリズムを実行し、乱数144aを暗号化する。
これにより、暗号化された乱数144a(暗号化乱数119a)にはアクセス権情報112に関する情報が埋め込まれる。そして、アクセス権情報112が示す条件を満たすユーザに割り当てられたユーザ秘密鍵192を用いた場合にだけ、暗号化された乱数144aが復号される。
S144Cの後、処理はS144Dに進む。
但し、S144BとS144Cとは順番を入れ替えても構わない。
S144Dにおいて、暗号化ファイル構成部144Dは、暗号化されたアクセス制限データ111(暗号化データ119b)と暗号化された乱数144a(暗号化乱数119a)とを含んだ暗号化ファイル119(図5参照)を生成する。
S144Dの後、暗号化ファイル生成処理(S144)は終了する。
次に、暗号化ファイル119を復号するデータ復号部150の構成について、図9に基づいて説明する。
図9は、実施の形態1におけるデータ復号部150の構成図である。
データ復号部150は、暗号化ファイル分解部151、アクセス権付き復号部152および共通鍵方式復号部153を備える。
暗号化ファイル分解部151は、暗号化ファイル119から暗号化乱数119aおよび暗号化データ119bを取得する。
アクセス権付き復号部152(利用者識別子入力部、利用者秘密鍵取得部、共通鍵復号部の一例)は、ユーザ秘密鍵192を用いてアクセス権付き暗号方式の復号アルゴリズムを実行し、暗号化乱数119aを復号する。
共通鍵方式復号部153(アクセス制限データ復号部の一例)は、暗号化乱数119aを復号して得られた乱数144aを用いて共通鍵暗号方式の復号アルゴリズムを実行し、暗号化データ119bを復号する。暗号化データ119bを復号することにより、アクセス制限データ111が得られる。
次に、暗号化ファイル119をアクセス制限データ111に復号する際の透過的復号処理について、図10に基づいて説明する。
図10は、実施の形態1における透過的復号処理を示すフローチャートである。
S201において、アクセス制限データ111を使用したいユーザは透過的暗号化ファイルシステム100にユーザIDとパスワードとを入力してログインし、ログイン部101はユーザのログインを処理する。ログインの処理方法は、透過的暗号化処理(図6)のS101と同様である。
ログインが許可された場合、処理はS210に進む。
S210において、S201でログインしたログインユーザは、入力機器を用いて、アクセス制限データ111の読み出しをアプリケーション部110に対して要求する。
要求を受けたアプリケーション部110は、ファイルシステム部120に対してアクセス制限データ111を要求する。
要求を受けたファイルシステム部120は、デバイス制御部130に対してアクセス制限データ111を要求する。
S210の後、処理はS220に進む。
S220において、デバイス制御部130は、要求されたアクセス制限データ111を暗号化した暗号化データ119bを含んだ暗号化ファイル119を暗号化ファイル記憶部160から取得する。
例えば、デバイス制御部130は、アクセス制限データ111のデータ名に対応付けられた暗号化ファイル119を暗号化ファイル記憶部160から取得する。
S220の後、S230に進む。
S230において、デバイス制御部130は、取得した暗号化ファイル119をデータ復号部150に出力する。
データ復号部150は、ログインユーザのユーザ秘密鍵192を用いてアクセス権付き暗号方式の復号アルゴリズムを実行し、暗号化ファイル119からアクセス制限データ111を復号する。
但し、ログインユーザがアクセス制限データ111の使用を許可された(グループに属する)ユーザではない場合、ログインユーザのユーザ秘密鍵192を用いて暗号化ファイル119からアクセス制限データ111を復号することができない。
その場合、アプリケーション部110はアクセス制限データ111の読み出しエラーをディスプレイに表示し、透過的復号化処理(図10)は終了する(図示省略)。
暗号化ファイル119からアクセス制限データ111を復号することができた場合、データ復号部150は、復号により得られたアクセス制限データ111をデバイス制御部130に出力する。
データ復号処理(S230)の詳細については後述する。
S230の後、S240に進む。
S240において、デバイス制御部130は、データ復号部150から出力されたアクセス制限データ111を入力し、入力したアクセス制限データ111をファイルシステム部120に出力する。
ファイルシステム部120は、デバイス制御部130から出力されたアクセス制限データ111を入力し、入力したアクセス制限データ111をアプリケーション部110に出力する。
アプリケーション部110は、アクセス制限データ111を出力する。例えば、アプリケーション部110は、アクセス制限データ111をディスプレイに表示する。
S240の後、透過的復号処理(図10)は終了する。
図11は、実施の形態1におけるデータ復号処理(S230)を示すフローチャートである。
データ復号部150(図9参照)が実行するデータ復号処理(S230)について、図11に基づいて説明する。
S231において、暗号化ファイル分解部151は、暗号化ファイル119(図5参照)のメタデータフィールド119Aから暗号化乱数119aを取得し、暗号化ファイル119のデータフィールド119Bから暗号化データ119bを取得する。
S231の後、処理はS232に進む。
S232において、アクセス権付き復号部152は、ユーザ管理ファイル199(図2参照)からログインユーザのユーザIDに対応付けられたユーザ秘密鍵192を取得する。
アクセス権付き復号部152は、取得したユーザ秘密鍵192を用いてアクセス権付き暗号方式の復号アルゴリズムを実行し、暗号化乱数119aを乱数144aに復号する。
但し、ログインユーザがアクセス制限データ111の使用を許可された(グループに属する)ユーザではない場合、ログインユーザのユーザ秘密鍵192を用いて暗号化乱数119aを乱数144aに復号することができない。
その場合、アクセス権付き復号部152は復号エラーをデバイス制御部130に通知し、データ復号処理(図11)は終了する(図示省略)。
その後、デバイス制御部130はファイルシステム部120を介してアクセス制限データ111の読み出しエラーをアプリケーション部110に通知し、アプリケーション部110はアクセス制限データ111の読み出しエラーをディスプレイに表示する。
暗号化乱数119aを乱数144aに復号することができた場合、処理はS233に進む。
S233において、共通鍵方式復号部153は、乱数144aを共通鍵として用いて共通鍵暗号方式の復号アルゴリズムを実行し、暗号化データ119bをアクセス制限データ111に復号する。
共通鍵方式復号部153は、復号により得られたアクセス制限データ111をデバイス制御部130に出力する。
S233の後、データ復号処理(図11)は終了する。
図12は、実施の形態1における透過的暗号化ファイルシステム100のハードウェア資源の一例を示す図である。
図12において、透過的暗号化ファイルシステム100(コンピュータの一例)は、CPU901(Central Processing Unit)を備えている。CPU901は、バス902を介してROM903、RAM904、通信ボード905(通信装置)、ディスプレイ911(表示装置)、キーボード912、マウス913、ドライブ914、磁気ディスク装置920などのハードウェアデバイスと接続され、これらのハードウェアデバイスを制御する。ドライブ914は、FD(Flexible Disk)、CD(Compact Disc)、DVD(Digital Versatile Disc)などの記憶媒体を読み書きする装置である。
ROM903、RAM904、磁気ディスク装置920およびドライブ914は記憶装置の一例である。キーボード912、マウス913および通信ボード905は入力装置の一例である。ディスプレイ911および通信ボード905は出力装置の一例である。
通信ボード905は、有線または無線で、LAN(Local Area Network)、インターネット、電話回線などの通信網に接続している。
磁気ディスク装置920には、OS921(オペレーティングシステム)、プログラム群922、ファイル群923が記憶されている。
プログラム群922には、実施の形態において「〜部」として説明する機能を実行するプログラムが含まれる。プログラム(例えば、アクセス権付き暗号化プログラム、アクセス権付き復号プログラム)は、CPU901により読み出され実行される。すなわち、プログラムは、「〜部」としてコンピュータを機能させるものであり、また「〜部」の手順や方法をコンピュータに実行させるものである。
ファイル群923には、実施の形態において説明する「〜部」で使用される各種データ(入力、出力、判定結果、計算結果、処理結果など)が含まれる。
実施の形態において構成図およびフローチャートに含まれている矢印は主としてデータや信号の入出力を示す。
フローチャートなどに基づいて説明する実施の形態の処理はCPU901、記憶装置、入力装置、出力装置などのハードウェアを用いて実行される。
実施の形態において「〜部」として説明するものは「〜回路」、「〜装置」、「〜機器」であってもよく、また「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明するものは、ファームウェア、ソフトウェア、ハードウェアまたはこれらの組み合わせのいずれで実装されても構わない。
図13、図14および図15は、実施の形態1における透過的暗号化ファイルシステム100の透過的暗号化方法の概要図である。
実施の形態1における透過的暗号化ファイルシステム100の透過的暗号化方法の概要について、図13から図15に基づいて説明する。
図13において、人事部200Aに所属するユーザ201a・201bには、所属先を示す属性値「人事部」の情報が埋め込まれたユーザ秘密鍵192a・192bが割り当てられる。
また、営業部200Bに所属するユーザ201c・201dには、所属先を示す属性値「営業部」の情報が埋め込まれたユーザ秘密鍵192c・192dが割り当てられる。
一方、暗号化ファイル119は、アクセス制限データ111を暗号化して得られた暗号化データ119bと、暗号化データ119bを復号するための共通鍵として用いる乱数144aを暗号化して得られた暗号化乱数119aとを含んでいる。また、暗号化乱数119aには、復号可能条件を示す論理式「人事部 OR 総務部」に関する情報が埋め込まれている。
この場合、人事部200Aに所属するユーザ201a・201bは、自分に割り当てられたユーザ秘密鍵192a・192bを用いて、暗号化ファイル119からアクセス制限データ111を復号することができる。ユーザ秘密鍵192a・192bに、暗号化乱数119aを復号するための復号可能条件を満たす属性値「人事部」の情報が埋め込まれているからである。
しかし、営業部200Bに所属するユーザ201c・201dは、自分に割り当てられたユーザ秘密鍵192c・192dを用いて、暗号化ファイル119からアクセス制限データ111を復号することができない。ユーザ秘密鍵192c・192dに、暗号化乱数119aを復号するための復号可能条件を満たす属性値「人事部」の情報が埋め込まれていないためである。
これにより、透過的暗号化ファイルシステム100は、人事部200Aまたは総務部に所属する社員だけに使用させたいアクセス制限データ111を、他の部署(例えば、営業部200B)に所属する社員に対して秘匿することができる。
図14において、ユーザ201bの所属が人事部200Aから営業部200Bに変更になった場合、透過的暗号化ファイルシステム100は、ユーザ201bに割り当てていた元のユーザ秘密鍵192bを破棄する。
そして、透過的暗号化ファイルシステム100は、新たな所属先を示す属性値「営業部」の情報を埋め込んだユーザ秘密鍵192bを生成し、生成したユーザ秘密鍵192bをユーザ201bに新たに割り当てる。
これにより、営業部200Bに所属したユーザ201bは、新たに割り当てられたユーザ秘密鍵192bを用いて、暗号化ファイル119からアクセス制限データ111を復号することができなくなる。つまり、営業部200Bに移ったユーザ201bに対してアクセス制限データ111を秘匿することができる。
以上のように、ユーザが所属するグループが変更になる場合であっても、暗号化ファイル119を新たに生成し直す必要はない。
図15において、ユーザ201eが人事部200Aに新たに配属になった場合、透過的暗号化ファイルシステム100は、所属先を示す属性値「人事部」の情報を埋め込んだユーザ秘密鍵192eを生成し、生成したユーザ秘密鍵192eをユーザ201eに割り当てる。
これにより、人事部200Aに所属したユーザ201eは、自分に割り当てられたユーザ201eを用いて、暗号化ファイル119からアクセス制限データ111を復号することができる。
以上のように、ユーザが新たに加わった場合であっても、暗号化ファイル119を新たに生成し直す必要はない。
実施の形態1では、データを透過的に暗号化および復号する透過的暗号化ファイルシステム100について説明した。
透過的暗号化ファイルシステム100は、一台のコンピュータで構成してもよいし、複数台のコンピュータで構成してもよい。
例えば、透過的暗号化ファイルシステム100は、データを暗号化するアクセス権付き暗号化装置210と、データを復号するアクセス権付き復号装置211と、の二台のコンピュータで構成してもよい(図16、図17参照)。
図16および図17は、実施の形態1における透過的暗号化ファイルシステム100の構成例を示す図である。
図16に示すようにアクセス権付き暗号化装置210はデータ暗号化部140およびその他の構成を備え、図17に示すようにアクセス権付き復号装置211はデータ復号部150およびその他の構成を備える。
アクセス権付き暗号化装置210とアクセス権付き復号装置211とは、ネットワーク219を介して通信を行う。
例えば、アクセス権付き暗号化装置210およびアクセス権付き復号装置211は、以下のように動作する。
アクセス権付き暗号化装置210のデバイス制御部130は、アクセス権付き暗号鍵生成部109によって生成されたユーザ秘密鍵192をユーザIDと共にアクセス権付き復号装置211へ送信する。
アクセス権付き復号装置211のデバイス制御部130は、ユーザ秘密鍵192とユーザIDとを受信し、受信したユーザ秘密鍵192を受信したユーザIDに対応付けてユーザ管理ファイル199に設定する。
アクセス権付き復号装置211のデバイス制御部130は、アクセス要求されたアクセス制限データ111の暗号化ファイル119をアクセス権付き暗号化装置210に要求する。
アクセス権付き暗号化装置210のデバイス制御部130は、要求された暗号化ファイル119をアクセス権付き復号装置211へ送信する。
アクセス権付き暗号化装置210のデバイス制御部130は暗号化ファイル119を受信し、データ復号部150は暗号化ファイル119を復号する。
実施の形態1において、アクセス権付き暗号方式は以下のような暗号方式である。
アクセス権付き暗号方式は、復号可能者を論理式(述語)によって指定できる暗号方式(例えば、関数型暗号)である。
これは従来のRSA暗号(RSAは登録商標)などとは異なり、暗号化ファイルを復号できるのは暗号化に使用した公開鍵に対応するただ1人のユーザではない。つまり、暗号化時に指定した述語にマッチしたユーザのユーザ秘密鍵であれば暗号化ファイルを復号できる。
このような暗号を用いることで、例えば、3人のユーザが復号できる暗号化ファイルを作成する場合に、3人それぞれの公開鍵を用いて暗号化を実施しなくてもよく、効率的である。
また、暗号化時に指定する述語には、ユーザではなく、ユーザの属性(例えば、役職や所属など)を使用することができる。
さらに、ユーザの属性を述語で指定した場合、その属性を持つユーザが新たに追加(ユーザ秘密鍵が新たに発行)されても、再暗号化の必要はない。
実施の形態1により、例えば、以下のような効果を奏することができる。
透過的暗号化ファイルシステム100は、アクセス権情報112を入力パラメータにしてアクセス権付き暗号方式でアクセス制限データ111を暗号化することにより、透過的かつ効率的にアクセス制限データ111を安全に保管することができる。
ユーザの所属や役職などを表す属性値を含む論理式(述語論理式ともいう)によって表現される複雑なアクセス権をアクセス制限データ111に設定したい場合であっても、透過的暗号化ファイルシステム100は、論理式を示すアクセス権情報112を入力パラメータとするアクセス権付き暗号方式でアクセス制限データ111を暗号化することにより、暗号化ファイル119のサイズ増加を抑えることができる。アクセス権付き暗号方式を用いることにより、暗号化ファイル119に設定する暗号化乱数119aの個数が1つで済むためである。
ユーザの属性(例えば、所属)が変更になる場合であっても、透過的暗号化ファイルシステム100は、ユーザに紐付けられたユーザ秘密鍵192を再発行するだけで、アクセス制限データ111を再暗号化しなくてよい。
ユーザグループ(属性)に新たにユーザが追加される場合であっても、透過的暗号化ファイルシステム100は、新たに追加されるユーザに対して当該ユーザグループ(属性)の情報を埋め込んだユーザ秘密鍵192を発行するだけで、アクセス制限データ111を再暗号化しなくてよい。
実施の形態1において、例えば、以下のようなアクセス権付き暗号化装置、アクセス権付き復号装置およびアクセス権付き暗号システム(100)について説明した。括弧内に実施の形態で用いた符号または名称を記す。
アクセス権付き暗号化装置は、アクセス制限データ生成部と、復号可能条件情報取得部と、アクセス制限データ暗号化部と、共通鍵暗号化部と、暗号化ファイル生成部とを備える。
前記アクセス制限データ生成部(110)は、暗号化されるデータをアクセス制限データ(111)として生成する。
前記復号可能条件情報取得部(142)は、暗号化された前記アクセス制限データを復号することが許可される利用者が有する属性に関する条件を復号可能条件として示す復号可能条件情報(112)を取得する。
前記アクセス制限データ暗号化部(144B)は、前記アクセス制限データ生成部によって生成された前記アクセス制限データを共通鍵(144a)を用いて共通鍵暗号方式で暗号化する。
前記共通鍵暗号化部(144C)は、前記アクセス制限データ暗号化部が前記アクセス制限データの暗号化に用いる前記共通鍵を、公開鍵(191)と、前記復号可能条件情報取得部によって取得された前記復号可能条件情報とを用いて、アクセス権付き暗号方式で暗号化する。前記アクセス権付き暗号方式は、前記復号可能条件を満たす属性に関連付けて生成される秘密鍵(192)を用いて復号されるようにデータを暗号化する暗号方式である。
前記暗号化ファイル生成部(144D)は、前記アクセス制限データ暗号化部によって暗号化された前記アクセス制限データと、前記共通鍵暗号化部によって暗号化された前記共通鍵と、を含んだ暗号化ファイル(119)を生成する。
アクセス権付き復号装置は、暗号化ファイル記憶部と、秘密鍵記憶部と、利用者識別子入力部と、利用者秘密鍵取得部と、共通鍵復号部と、アクセス制限データ復号部とを備える。
前記暗号化ファイル記憶部(160)は、暗号化ファイル(119)を記憶する。
前記秘密鍵記憶部(190、199)は、利用者毎に、利用者を識別する識別子(ユーザID)と、利用者が有する属性に関連付けて生成される秘密鍵(192)と、を対応付けて記憶する。
前記利用者識別子入力部(152)は、利用者を識別する利用者識別子を入力する。
前記利用者秘密鍵取得部(152)は、前記秘密鍵記憶部に記憶される秘密鍵のうち、前記利用者識別子入力部に入力された前記利用者識別子と同じ識別子に対応付けられた秘密鍵を利用者秘密鍵として取得する。
前記共通鍵復号部(152)は、前記暗号化ファイル記憶部に記憶される前記暗号化ファイルに含まれる暗号化された前記共通鍵(119a)を、前記利用者秘密鍵取得部によって取得された前記利用者秘密鍵を用いて、前記アクセス権付き暗号方式で復号する。
前記アクセス制限データ復号部(153)は、前記共通鍵復号部によって前記共通鍵が復号された場合、前記暗号化ファイル記憶部に記憶される前記暗号化ファイルに含まれる暗号化された前記アクセス制限データ(119b)を、前記共通鍵復号部によって復号された前記共通鍵を用いて、前記共通鍵暗号方式で復号する。
実施の形態2.
暗号化ファイル119が保存されるディレクトリに予めアクセス権情報112を設定し、ディレクトリに予め設定されたアクセス権情報112を用いて暗号化ファイル119を生成する形態について説明する。
以下、実施の形態1と異なる事項について主に説明する。説明を省略した事項については実施の形態1と同様である。
透過的暗号化ファイルシステム100の構成は、実施の形態1と同様である(図1参照)。
但し、暗号化ファイル記憶部160は、アクセス権情報112が予め設定されるディレクトリを有する。
ディレクトリは、一般的なファイルシステムで利用されるものであり、「フォルダ」とも呼ばれる。
例えば、ディレクトリは、暗号化ファイル119を記憶するための記憶領域、暗号化ファイル119を記憶するための記憶領域に関する情報、またはその両方を組み合わせたものである。
<実施例1>
図18は、実施の形態2(実施例1)における暗号化ファイル記憶部160の一例を示す図である。
実施の形態2(実施例1)における暗号化ファイル記憶部160について、図18に基づいて説明する。
暗号化ファイル記憶部160は、暗号化ファイル119を記憶するための2つのディレクトリ220A・220Bを備える。
ディレクトリ220Aは人事部用の暗号化ファイル119を記憶するためのものであり、ディレクトリ220Aにはアクセス権情報112aとして属性値「人事部」が設定されている。
ディレクトリ220Bは営業部用の暗号化ファイル119を記憶するためのものであり、ディレクトリ220Bにはアクセス権情報112bとして属性値「営業部」が設定されている。
次に、ディレクトリ220A・220Bに設定されたアクセス権情報112a・112bを利用する方法について、実施の形態1で説明したフローチャートに基づいて説明する。
図6のS110において、ログインユーザは、アクセス権情報112を指定する代わりに、アクセス制限データ111の暗号化ファイル119を記憶するディレクトリを指定する。
例えば、人事部用のアクセス制限データ111を生成した場合、ログインユーザは人事部用のディレクトリ220Aを保存先として指定する。
図6のS140において、データ暗号化部140は、ログインユーザに指定されたディレクトリ220Aに設定されているアクセス権情報112aを用いて、暗号化ファイル119を生成する。そのため、データ暗号化部140のアクセス権情報入力部142は、ディレクトリ220Aからアクセス権情報112aを取得する(図7のS142参照)。
図6のS150において、デバイス制御部130は、ログインユーザに指定されたディレクトリ220Aに暗号化ファイル119を記憶する。
透過的暗号化処理(図6参照)のその他の処理については実施の形態1と同様である。また、透過的復号処理(図10参照)についても実施の形態1と同様である。
<実施例2>
図19は、実施の形態2(実施例2)における暗号化ファイル記憶部160の一例を示す図である。
実施の形態2(実施例2)における暗号化ファイル記憶部160について、図19に基づいて説明する。
暗号化ファイル記憶部160は、人事部用のディレクトリ220Aと営業部用のディレクトリ220Bとを備える。
人事部用のディレクトリ220Aはサブディレクトリ221Aを備える。サブディレクトリ221Aにはアクセス権情報112が設定されていない。このため、サブディレクトリ221Aは、親のディレクトリ220Aに設定されたアクセス権情報112を継承する。
営業部用のディレクトリ220Bは営業部長用のサブディレクトリ221Bを備える。サブディレクトリ221Bにはアクセス権情報112cとして属性値「営業部長」が設定されている。
次に、サブディレクトリ221Aを利用する方法について、実施の形態1で説明したフローチャートに基づいて説明する。
図6のS110において、ログインユーザは、アクセス権情報112を指定する代わりに、アクセス制限データ111の暗号化ファイル119を記憶するサブディレクトリを指定する。
例えば、人事部用のアクセス制限データ111を生成した場合、ログインユーザは人事部用のディレクトリ220A内のサブディレクトリ221Aを保存先として指定する。
図6のS140において、ログインユーザに指定されたサブディレクトリ221Aにはアクセス権情報112が設定されていないため、データ暗号化部140は、サブディレクトリ221Aの親のディレクトリ220Aに設定されているアクセス権情報112aを用いて、暗号化ファイル119を生成する。そのため、データ暗号化部140のアクセス権情報入力部142は、ディレクトリ220Aからアクセス権情報112aを取得する(図7のS142参照)。
図6のS150において、デバイス制御部130は、ログインユーザに指定されたサブディレクトリ221Aに暗号化ファイル119を記憶する。
次に、サブディレクトリ221Bを利用する方法について、実施の形態1で説明したフローチャートに基づいて説明する。
図6のS110において、ログインユーザは、アクセス権情報112を指定する代わりに、アクセス制限データ111の暗号化ファイル119を記憶するサブディレクトリを指定する。
例えば、営業部長用のアクセス制限データ111を生成した場合、ログインユーザは営業部長用のサブディレクトリ221Bを保存先として指定する。
図6のS140において、データ暗号化部140は、ログインユーザに指定されたサブディレクトリ221Bに設定されているアクセス権情報112cを用いて、暗号化ファイル119を生成する。そのため、データ暗号化部140のアクセス権情報入力部142は、サブディレクトリ221Bからアクセス権情報112cを取得する(図7のS142参照)。
図6のS150において、デバイス制御部130は、ログインユーザに指定されたサブディレクトリ221Bに暗号化ファイル119を記憶する。
次に、サブディレクトリ221Bを利用する別の方法について、実施の形態1で説明したフローチャートに基づいて説明する。
図6のS110において、ログインユーザは、営業部長用のサブディレクトリ221Bを指定したものとする。
図6のS140において、データ暗号化部140は、ログインユーザに指定されたサブディレクトリ221Bに設定されているアクセス権情報112cと、サブディレクトリ221Bの親のディレクトリ220Bに設定されているアクセス権情報112bとを用いて、暗号化ファイル119を生成する。そのため、データ暗号化部140のアクセス権情報入力部142は、サブディレクトリ221Bからアクセス権情報112cを取得すると共に親のディレクトリ220Bからアクセス権情報112bを取得する。
例えば、データ暗号化部140は、アクセス権情報112cとアクセス権情報112bとの論理積「営業部 AND 営業部長」を復号可能条件として用いて暗号化ファイル119を生成する。但し、データ暗号化部140は、論理和「営業部 OR 営業部長」または排他的論理和「営業部 NOR 営業部長」など、その他の種類の論理式を復号可能条件として用いてもよい。この場合、複数のアクセス権情報112を組み合わせてどのような種類の論理式を生成するかを指定する情報を、ディレクトリ220B、サブディレクトリ221Bまたはアクセス権情報112cに設定しておけばよい。
図6のS150において、デバイス制御部130は、ログインユーザに指定されたサブディレクトリ221Bに暗号化ファイル119を記憶する。
透過的暗号化処理(図6参照)のその他の処理については実施の形態1と同様である。また、透過的復号処理(図10参照)についても実施の形態1と同様である。
実施の形態2により、例えば、以下のような効果を奏することができる。
透過的暗号化ファイルシステム100は、暗号化ファイル119を保存するディレクトリからアクセス権情報112を自動で取得することができる。
透過的暗号化ファイルシステム100は、自動で取得したアクセス権情報112を入力パラメータにしてアクセス権付き暗号方式でアクセス制限データ111を暗号化することにより、透過的かつ効率的にアクセス制限データ111を安全に保管することができる。
実施の形態2において、例えば、以下のようなアクセス権付き暗号化装置(100)について説明した。括弧内に実施の形態で用いた符号または名称を記す。
暗号化ファイル記憶部(160)は、前記暗号化ファイル(119)を記憶するための1つ以上のディレクトリであって前記復号可能条件情報(112)が予め設定される1つ以上のディレクトリ(220)を有する。
ディレクトリ指定情報取得部(142)は、前記暗号化ファイル記憶部が有する1つ以上のディレクトリのうち前記暗号化ファイルを設定するいずれかのディレクトリを指定するディレクトリ指定情報を取得する。
復号可能条件情報取得部(142)は、前記暗号化ファイル記憶部が有する1つ以上のディレクトリそれぞれに設定された前記復号可能条件情報のうち、前記ディレクトリ指定情報取得部によって取得されたディレクトリ指定情報によって指定されるディレクトリに設定された前記復号可能条件情報を取得する。
100 透過的暗号化ファイルシステム、101 ログイン部、109 アクセス権付き暗号鍵生成部、110 アプリケーション部、111 アクセス制限データ、112 アクセス権情報、119 暗号化ファイル、119A メタデータフィールド、119B データフィールド、119a 暗号化乱数、119b 暗号化データ、120 ファイルシステム部、130 デバイス制御部、140 データ暗号化部、141 公開鍵入力部、142 アクセス権情報入力部、143 データ入力部、144 暗号化ファイル生成部、144A 乱数生成部、144B 共通鍵暗号化部、144C アクセス権付き暗号化部、144D 暗号化ファイル構成部、144a 乱数、145 暗号化ファイル出力部、150 データ復号部、151 暗号化ファイル分解部、152 アクセス権付き復号部、153 共通鍵方式復号部、160 暗号化ファイル記憶部、190 システム記憶部、191 システム公開鍵、192 ユーザ秘密鍵、193 システム共通鍵、199 ユーザ管理ファイル、200A 人事部、200B 営業部、201a,201b,201c,201d,201e ユーザ、210 アクセス権付き暗号化装置、211 アクセス権付き復号装置、219 ネットワーク、220A,220B ディレクトリ、221A,221B サブディレクトリ、901 CPU、902 バス、903 ROM、904 RAM、905 通信ボード、911 ディスプレイ、912 キーボード、913 マウス、914 ドライブ、920 磁気ディスク装置、921 OS、922 プログラム群、923 ファイル群。

Claims (6)

  1. 暗号化されるデータをアクセス制限データとして生成するアクセス制限データ生成部と、
    暗号化された前記アクセス制限データを復号することが許可される利用者が有する属性に関する条件を復号可能条件として示す復号可能条件情報を取得する復号可能条件情報取得部と、
    前記アクセス制限データ生成部によって生成された前記アクセス制限データを共通鍵を用いて共通鍵暗号方式で暗号化するアクセス制限データ暗号化部と、
    前記アクセス制限データ暗号化部が前記アクセス制限データの暗号化に用いる前記共通鍵を、公開鍵と、前記復号可能条件情報取得部によって取得された前記復号可能条件情報とを用いて、前記復号可能条件を満たす属性に関連付けて生成される秘密鍵を用いて復号されるようにデータを暗号化するアクセス権付き暗号方式で、暗号化する共通鍵暗号化部と、
    前記アクセス制限データ暗号化部によって暗号化された前記アクセス制限データと、前記共通鍵暗号化部によって暗号化された前記共通鍵と、を含んだ暗号化ファイルを生成する暗号化ファイル生成部と
    前記暗号化ファイルを記憶するための1つ以上のディレクトリであって前記復号可能条件情報が予め設定される1つ以上のディレクトリを有する暗号化ファイル記憶部と、
    前記暗号化ファイル記憶部が有する1つ以上のディレクトリのうち前記暗号化ファイルを設定するいずれかのディレクトリを指定するディレクトリ指定情報を取得するディレクトリ指定情報取得部とを備え、
    前記復号可能条件情報取得部は、前記暗号化ファイル記憶部が有する1つ以上のディレクトリそれぞれに設定された前記復号可能条件情報のうち、前記ディレクトリ指定情報取得部によって取得されたディレクトリ指定情報によって指定されるディレクトリに設定された前記復号可能条件情報を取得する
    ことを特徴とするアクセス権付き暗号化装置。
  2. 前記暗号化ファイル記憶部が有する1つ以上のディレクトリのうち少なくともいずれかのディレクトリがサブディレクトリを含み、
    前記ディレクトリ指定情報取得部が前記サブディレクトリを指定する情報を前記ディレクトリ指定情報として取得した場合、前記復号可能条件情報取得部は、前記暗号化ファイル記憶部が有する1つ以上のディレクトリそれぞれに設定された前記復号可能条件のうち、前記サブディレクトリを含むディレクトリに設定された前記復号可能条件情報を取得する
    ことを特徴とする請求項記載のアクセス権付き暗号化装置。
  3. 請求項1または請求項2に記載のアクセス権付き暗号化装置と、アクセス権付き復号装置とを備え、
    前記アクセス権付き復号装置は、
    前記暗号化ファイルに含まれる暗号化された前記共通鍵を、前記秘密鍵を用いて前記アクセス権付き暗号方式で復号する共通鍵復号部と、
    前記暗号化ファイルに含まれる暗号化された前記アクセス権限データを、前記共通鍵を用いて前記共通鍵暗号方式で復号するアクセス制限データ復号部と
    を備えることを特徴とするアクセス権付き暗号システム。
  4. 利用者が有する属性に関する条件である復号可能条件を示す復号可能条件情報が設定される1つ以上のディレクトリを有する暗号化ファイル記憶部と、
    前記暗号化ファイル記憶部が有する1つ以上のディレクトリのうちのいずれかのディレクトリを指定するディレクトリ指定情報を取得するディレクトリ指定情報取得部と、
    暗号化されるデータをアクセス制限データとして生成するアクセス制限データ生成部と、
    前記ディレクトリ指定情報取得部によって取得されたディレクトリ指定情報が指定するディレクトリに設定された前記復号可能条件情報を取得する復号可能条件情報取得部と、
    前記アクセス制限データ生成部によって生成された前記アクセス制限データを共通鍵を用いて共通鍵暗号方式で暗号化するアクセス制限データ暗号化部と、
    前記アクセス制限データ暗号化部が前記アクセス制限データの暗号化に用いる前記共通鍵を、公開鍵と、前記復号可能条件情報取得部によって取得された前記復号可能条件情報とを用いて、前記復号可能条件を満たす属性に関連付けて生成される秘密鍵を用いて復号されるようにデータを暗号化するアクセス権付き暗号方式で、暗号化する共通鍵暗号化部と、
    前記アクセス制限データ暗号化部によって暗号化された前記アクセス制限データと、前記共通鍵暗号化部によって暗号化された前記共通鍵と、を含んだ暗号化ファイルを生成し、前記ディレクトリ指定情報取得部によって取得されたディレクトリ指定情報が指定するディレクトリに前記暗号化ファイルを記憶する暗号化ファイル生成部と
    用者毎に、利用者を識別する識別子と、利用者が有する属性に関連付けて生成される秘密鍵と、を対応付けて記憶する秘密鍵記憶部と、
    利用者を識別する利用者識別子を入力する利用者識別子入力部と、
    前記秘密鍵記憶部に記憶される秘密鍵のうち、前記利用者識別子入力部に入力された前記利用者識別子と同じ識別子に対応付けられた秘密鍵を利用者秘密鍵として取得する利用者秘密鍵取得部と、
    前記暗号化ファイル記憶部に記憶される前記暗号化ファイルに含まれる暗号化された前記共通鍵を、前記利用者秘密鍵取得部によって取得された前記利用者秘密鍵を用いて、前記アクセス権付き暗号方式で復号する共通鍵復号部と、
    前記共通鍵復号部によって前記共通鍵が復号された場合、前記暗号化ファイル記憶部に記憶される前記暗号化ファイルに含まれる暗号化された前記アクセス制限データを、前記共通鍵復号部によって復号された前記共通鍵を用いて、前記共通鍵暗号方式で復号するアクセス制限データ復号部と
    を備えることを特徴とするアクセス権付き暗号システム。
  5. 暗号化ファイル記憶部と、ディレクトリ指定情報取得部と、アクセス制限データ生成部と、復号可能条件情報取得部と、アクセス制限データ暗号化部と、共通鍵暗号化部と、暗号化ファイル生成部とを備えるコンピュータを用いるアクセス権付き暗号化方法であって、
    前記暗号化ファイル記憶部が、利用者が有する属性に関する条件である復号可能条件を示す復号可能条件情報が設定される1つ以上のディレクトリを有し、
    ディレクトリ指定情報取得部が、前記暗号化ファイル記憶部が有する1つ以上のディレクトリのうちのいずれかのディレクトリを指定するディレクトリ指定情報を取得し、
    前記アクセス制限データ生成部が、暗号化されるデータをアクセス制限データとして生成し、
    前記復号可能条件情報取得部が、前記ディレクトリ指定情報取得部によって取得されたディレクトリ指定情報が指定するディレクトリに設定された前記復号可能条件情報を取得し、
    前記アクセス制限データ暗号化部が、前記アクセス制限データ生成部によって生成された前記アクセス制限データを共通鍵を用いて共通鍵暗号方式で暗号化し、
    前記共通鍵暗号化部が、前記アクセス制限データ暗号化部が前記アクセス制限データの暗号化に用いる前記共通鍵を、公開鍵と、前記復号可能条件情報取得部によって取得された前記復号可能条件情報とを用いて、前記復号可能条件を満たす属性に関連付けて生成される秘密鍵を用いて復号されるようにデータを暗号化するアクセス権付き暗号方式で、暗号化し、
    前記暗号化ファイル生成部が、前記アクセス制限データ暗号化部によって暗号化された前記アクセス制限データと、前記共通鍵暗号化部によって暗号化された前記共通鍵と、を含んだ暗号化ファイルを生成し、前記ディレクトリ指定情報取得部によって取得されたディレクトリ指定情報が指定するディレクトリに前記暗号化ファイルを記憶する
    ことを特徴とするアクセス権付き暗号化方法。
  6. 暗号化ファイル記憶部を用いるアクセス権付き暗号化プログラムであって、
    前記暗号化ファイル記憶部は、利用者が有する属性に関する条件である復号可能条件を示す復号可能条件情報が設定される1つ以上のディレクトリを有する記憶部であり、
    前記暗号化ファイル記憶部が有する1つ以上のディレクトリのうちのいずれかのディレクトリを指定するディレクトリ指定情報を取得するディレクトリ指定情報取得処理と、
    暗号化されるデータをアクセス制限データとして生成するアクセス制限データ生成処理と、
    前記ディレクトリ指定情報取得処理によって取得されたディレクトリ指定情報が指定するディレクトリに設定された前記復号可能条件情報を取得する復号可能条件情報取得処理と、
    前記アクセス制限データ生成処理によって生成された前記アクセス制限データを共通鍵を用いて共通鍵暗号方式で暗号化するアクセス制限データ暗号化処理と、
    前記アクセス制限データ暗号化処理で前記アクセス制限データの暗号化に用いる前記共通鍵を、公開鍵と、前記復号可能条件情報取得処理によって取得された前記復号可能条件情報とを用いて、前記復号可能条件を満たす属性に関連付けて生成される秘密鍵を用いて復号されるようにデータを暗号化するアクセス権付き暗号方式で、暗号化する共通鍵暗号化処理と、
    前記アクセス制限データ暗号化処理によって暗号化された前記アクセス制限データと、前記共通鍵暗号化処理によって暗号化された前記共通鍵と、を含んだ暗号化ファイルを生成し、前記ディレクトリ指定情報取得処理によって取得されたディレクトリ指定情報が指定するディレクトリに前記暗号化ファイルを記憶する暗号化ファイル生成処理と
    をコンピュータに実行させるためのアクセス権付き暗号化プログラム。
JP2012223709A 2012-10-06 2012-10-06 アクセス権付き暗号化装置、アクセス権付き暗号システム、アクセス権付き暗号化方法およびアクセス権付き暗号化プログラム Active JP5511925B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012223709A JP5511925B2 (ja) 2012-10-06 2012-10-06 アクセス権付き暗号化装置、アクセス権付き暗号システム、アクセス権付き暗号化方法およびアクセス権付き暗号化プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012223709A JP5511925B2 (ja) 2012-10-06 2012-10-06 アクセス権付き暗号化装置、アクセス権付き暗号システム、アクセス権付き暗号化方法およびアクセス権付き暗号化プログラム

Publications (2)

Publication Number Publication Date
JP2014078770A JP2014078770A (ja) 2014-05-01
JP5511925B2 true JP5511925B2 (ja) 2014-06-04

Family

ID=50783774

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012223709A Active JP5511925B2 (ja) 2012-10-06 2012-10-06 アクセス権付き暗号化装置、アクセス権付き暗号システム、アクセス権付き暗号化方法およびアクセス権付き暗号化プログラム

Country Status (1)

Country Link
JP (1) JP5511925B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016103960A1 (ja) * 2014-12-25 2016-06-30 国立大学法人 東京大学 制御装置、解析装置、復号装置および送信装置
JP6522263B2 (ja) 2017-01-18 2019-05-29 三菱電機株式会社 準同型演算装置、暗号システム及び準同型演算プログラム
WO2019142268A1 (ja) * 2018-01-17 2019-07-25 三菱電機株式会社 登録装置、検索操作装置、データ管理装置、登録プログラム、検索操作プログラムおよびデータ管理プログラム
CN115238296A (zh) * 2022-09-23 2022-10-25 深圳雷柏科技股份有限公司 基于hid的加解密方法、装置、计算机设备及存储介质
JP7492805B1 (ja) 2022-11-21 2024-05-30 株式会社野村総合研究所 コンテンツ管理システム、コンテンツ管理方法、及びコンテンツ管理プログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6249866B1 (en) * 1997-09-16 2001-06-19 Microsoft Corporation Encrypting file system and method
JP2004072151A (ja) * 2002-08-01 2004-03-04 Mitsubishi Electric Corp ファイル暗号化機能を有する端末装置
JP4998518B2 (ja) * 2003-09-30 2012-08-15 大日本印刷株式会社 情報処理装置、情報処理システム及びプログラム
US8880879B2 (en) * 2008-09-04 2014-11-04 Intel Corporation Accelerated cryptography with an encryption attribute
JP5494171B2 (ja) * 2010-04-19 2014-05-14 日本電気株式会社 ファイル管理システム、ストレージサーバ、クライアント、ファイル管理方法およびプログラム
JP5586397B2 (ja) * 2010-09-24 2014-09-10 株式会社インテック セキュア・ネットワーク・ストレージ・システム、方法、クライアント装置、サーバ装置、及びプログラム

Also Published As

Publication number Publication date
JP2014078770A (ja) 2014-05-01

Similar Documents

Publication Publication Date Title
JP4902207B2 (ja) ファイルの暗号化と復号化のための複数のキーを管理するシステムと方法
US7487366B2 (en) Data protection program and data protection method
US7792300B1 (en) Method and apparatus for re-encrypting data in a transaction-based secure storage system
US11232222B2 (en) Access management system, access management method and program
JP4851200B2 (ja) アイテムに対する使用権をアクセス権に基づいて生成する方法およびコンピュータ読取り可能媒体
US20070014416A1 (en) System and method for protecting against dictionary attacks on password-protected TPM keys
US8181028B1 (en) Method for secure system shutdown
US20080235521A1 (en) Method and encryption tool for securing electronic data storage devices
KR20080090672A (ko) Ums 기기의 컨텐츠를 보호하기 위한 방법 및 장치
JP2008103936A (ja) 秘密情報管理装置および秘密情報管理システム
US9563789B1 (en) Separate cryptographic keys for protecting different operations on data
JP5511925B2 (ja) アクセス権付き暗号化装置、アクセス権付き暗号システム、アクセス権付き暗号化方法およびアクセス権付き暗号化プログラム
CN111132150A (zh) 一种保护数据的方法、装置、存储介质和电子设备
US7949137B2 (en) Virtual disk management methods
JP2007108833A (ja) 複数パスワード記憶装置及びパスワード管理方法
JP2010526354A (ja) 暗合化された制御によるドキュメントへのアクセス
US10380353B2 (en) Document security in enterprise content management systems
GB2552522A (en) Method and system for encrypting files and storing the encrypted files in a storage file system
JP2005284703A (ja) 医療情報流通システム及びその情報アクセス制御方法、コンピュータプログラム
JP4192738B2 (ja) 電子文書編集装置、電子文書編集プログラム
JP5480786B2 (ja) 情報共有システム、方法、バーチャルマシン管理サーバ及びそのプログラム
GB2434887A (en) Access control by encrypting stored data with a key based on a "fingerprint" of the device storing the data
JP7159747B2 (ja) 電子ファイル作成装置、電子データ処理装置、電子データ管理システム、電子データ管理方法、及びプログラム
JP2011147088A (ja) 情報処理システム
Pal et al. Enhancing file data security in linux operating system by integrating secure file system

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140130

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140225

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140325

R150 Certificate of patent or registration of utility model

Ref document number: 5511925

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250