JP6720107B2 - 暗号処理方法、暗号処理システム、暗号化装置、復号装置、プログラム - Google Patents

暗号処理方法、暗号処理システム、暗号化装置、復号装置、プログラム Download PDF

Info

Publication number
JP6720107B2
JP6720107B2 JP2017082706A JP2017082706A JP6720107B2 JP 6720107 B2 JP6720107 B2 JP 6720107B2 JP 2017082706 A JP2017082706 A JP 2017082706A JP 2017082706 A JP2017082706 A JP 2017082706A JP 6720107 B2 JP6720107 B2 JP 6720107B2
Authority
JP
Japan
Prior art keywords
attribute
decryption
encryption
ids
ciphertext
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
JP2017082706A
Other languages
English (en)
Other versions
JP2018180408A (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2017082706A priority Critical patent/JP6720107B2/ja
Publication of JP2018180408A publication Critical patent/JP2018180408A/ja
Application granted granted Critical
Publication of JP6720107B2 publication Critical patent/JP6720107B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、秘匿化したデータの不正利用を防止するアクセス制御に用いることができる暗号技術に関する。
公開鍵暗号の発展技術である関数型暗号は、暗号化時に復号できる人やグループなどに関する条件(以下、復号条件という)を一般的な論理式(AND演算子、OR演算子などを用いた論理式)で指定できるという特徴を持つ(非特許文献1)。例えば、グループIDを表す属性ID”gid”の値(以下、属性値ともいう)が”GID01”、”GID02”のいずれかであり、日付を表す属性ID”date”の値が”20170302”である場合にアクセスを許可することを表す論理式は、{(gid=GID01) OR (gid=GID02)} AND (date=20170302)となる。この論理式はグループID”gid”が”GID01”、”GID02”のいずれかである人が日付”date”が”20170302”である場合に限り暗号化されたデータにアクセスすることができる(つまり復号することができる)ことを表すものである。
関数型暗号を用いると、秘匿化したいデータを、上記のような論理式で表される復号条件が付いた暗号化データとしてクラウドで管理し、ユーザは自分の属性値に合致する復号条件が設定された暗号化データだけを復号することができるというアクセス制御を備えた暗号処理システムを実現できる。
高島克幸,岡本龍明,"アクセス権限を制御できる最新技術「関数型暗号」",日経エレクトロニクス (1087) 2012-07-23号,日経BP社,pp.87-95,2012.
関数型暗号を利用した暗号処理システムでは、システム設計時にアクセス権限の制御に利用する属性IDを指定する。そのため、システム設計時に指定していなかった新たな属性IDを追加、利用する場合、公開パラメータとマスター鍵(以下、システムパラメータという)を再生成する必要がある。
また、属性値の取得方法もシステム設計時に指定する。そのため、新たに取得方法を追加する場合、システムを改修する必要がある。
つまり、新たな属性IDや新たな属性値の取得方法を追加する場合には、システムに手を加える必要があった。
そこで本発明では、システムに手を加えることなく、属性IDの追加や属性値取得方法の追加を可能とする暗号技術を提供することを目的とする。
本発明の一態様は、M、Nを1以上の整数、標準属性IDを用途が既に定義されている属性ID、拡張属性IDを用途が未定義である属性ID、属性IDリストをM個の標準属性IDとN個の拡張属性IDからなるリストとし、システムパラメータ生成装置、暗号化装置、復号鍵生成装置、復号装置を含む暗号処理システムが、暗号化、復号を行う暗号処理方法であって、前記暗号化装置は、前記システムパラメータ生成装置が前記属性IDリストから生成した公開パラメータを記録しており、前記復号鍵生成装置は、前記システムパラメータ生成装置が前記属性IDリストから生成したマスター鍵を記録しており、復号条件を前記属性IDリストに含まれる標準属性IDまたは拡張属性IDを用いた原始的な論理式を論理演算子により結合した論理式、暗号化オプション情報を前記属性IDリストに含まれる属性IDを用いて指定される情報とし、前記暗号化装置が、前記公開パラメータを用いて、平文と前記復号条件と前記暗号化オプション情報から暗号文を生成する暗号文生成ステップと、前記復号装置が、前記暗号化装置から受信した前記暗号文の生成に用いた前記暗号化オプション情報を用いて、前記暗号文の生成に用いた前記復号条件で用いられている属性IDとその値である環境情報を取得する環境情報取得ステップと、前記復号鍵生成装置が、前記復号装置から受信した前記環境情報と前記マスター鍵から復号鍵を生成する復号鍵生成ステップと、前記復号装置が、前記復号鍵生成装置から受信した前記復号鍵を用いて、前記暗号文を復号する復号ステップとを含む。
本発明によれば、システムに手を加えることなく、属性IDや属性値取得方法を追加することが可能となる。
暗号処理システム100の構成の一例を示すブロック図。 システムパラメータ生成装置200の構成の一例を示すブロック図。 暗号化装置300の構成の一例を示すブロック図。 復号鍵生成装置400の構成の一例を示すブロック図。 復号装置500の構成の一例を示すブロック図。 セットアップ処理の一例を示すシークエンス図。 暗号化処理の一例を示すシークエンス図。 復号処理の一例を示すシークエンス図。 暗号化オプション情報(拡張属性IDの用途の定義)の取り扱いの様子を示す図。 暗号化オプション情報(属性IDの属性値の取得方法の指定)の取り扱いの様子を示す図。
以下、本発明の実施の形態について、詳細に説明する。なお、同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。
<第一実施形態>
[システム構成]
暗号処理システム100は、関数型暗号を用いて、平文を暗号化したデータである暗号化データに対するアクセス制御を提供するシステムである。システムパラメータ生成装置200は、暗号化・復号に必要な情報である公開パラメータとマスター鍵を生成する。暗号化装置300は、公開パラメータを用いて、平文と復号条件と暗号化オプション情報から暗号文を生成する。復号鍵生成装置400は、復号条件で用いられている属性IDとその値である環境情報とマスター鍵を用いて復号鍵を生成する。なお、環境情報は、復号装置500が取得し、復号鍵生成装置400に送信した情報であり、復号装置500や復号装置500を利用するユーザに関する情報(例えば、グループID”gid”とその値)、一般的な情報(例えば、日付”date”とその値)などがある。復号装置500は、復号鍵を用いて暗号文を復号する。
図1を参照して、暗号処理システム100について説明する。図1は、暗号処理システム100の構成の一例を示すブロック図である。暗号処理システム100は、システムパラメータ生成装置200、暗号化装置300、復号鍵生成装置400、復号装置500を含む。システムパラメータ生成装置200、暗号化装置300、復号鍵生成装置400、復号装置500は、インターネットなどのネットワーク800に接続し、相互に通信可能である。
次に、図2〜図5を参照して、システムパラメータ生成装置200、暗号化装置300、復号鍵生成装置400、復号装置500の各装置について説明する。図2は、システムパラメータ生成装置200の構成の一例を示すブロック図である。システムパラメータ生成装置200は、システムパラメータ生成部210、送受信部280、記録部290を含む。送受信部280は、システムパラメータ生成装置200がその他の装置と交換する必要がある情報を適宜送受信するための構成部である。記録部290は、システムパラメータ生成装置200の処理に必要な情報を適宜記録する構成部である。例えば、システムパラメータ生成に用いる属性IDを記録する。
図3は、暗号化装置300の構成の一例を示すブロック図である。暗号化装置300は、暗号文生成部310、送受信部380、記録部390を含む。送受信部380は、暗号化装置300がその他の装置と交換する必要がある情報を適宜送受信するための構成部である。記録部390は、暗号化装置300の処理に必要な情報を適宜記録する構成部である。例えば、公開パラメータ、属性IDを記録する。属性IDは、復号条件や暗号化オプション情報を記述するために用いる。
図4は、復号鍵生成装置400の構成の一例を示すブロック図である。復号鍵生成装置400は、復号鍵生成部410、送受信部480、記録部490を含む。送受信部480は、復号鍵生成装置400がその他の装置と交換する必要がある情報を適宜送受信するための構成部である。記録部490は、復号鍵生成装置400の処理に必要な情報を適宜記録する構成部である。例えば、マスター鍵を記録する。
図5は、復号装置500の構成の一例を示すブロック図である。復号装置500は、環境情報取得部510、復号部520、送受信部580、記録部590を含む。送受信部580は、復号装置500がその他の装置と交換する必要がある情報を適宜送受信するための構成部である。記録部590は、復号装置500の処理に必要な情報を適宜記録する構成部である。例えば、暗号文を記録する。
[セットアップ処理]
以下、図6を参照して、システムパラメータである公開パラメータとマスター鍵を生成するセットアップ処理について説明する。
セットアップ処理に際して、暗号化データの復号条件の記述に用いる属性IDを指定する。属性IDには、用途が既に定義されている標準属性IDと用途が未定義である拡張属性IDがある。ここで、属性IDの用途が定義されているとは、その属性IDの取り得る値とその値の取得方法が定義されていることをいう。
標準属性IDの例として、グループIDを表す属性ID”gid”、日付を表す属性ID”date”がある。拡張属性IDは、標準属性IDと異なるID名を持つ。例えば、拡張属性IDを”ext_info1”、”ext_info2”などとする。拡張属性IDの用途は、復号条件に関する付加的な情報である暗号化オプション情報を用いて定義される。
なお、暗号化オプション情報は、拡張属性IDの用途の定義の他、属性IDの属性値の取得方法の指定に関する記述を含むことができる。詳しくは後ほど説明する。
以下、システムパラメータの生成に用いる標準属性IDの数をM、拡張属性IDの数をNとする(M、Nは1以上の整数)。また、M個の標準属性IDとN個の拡張属性IDからなるリストを属性IDリストという。
システムパラメータ生成装置200のシステムパラメータ生成部210は、関数型暗号を用いて、属性IDリストから公開パラメータpkとマスター鍵mkを生成する(S210)。その際、暗号の安全性の尺度を表すセキュリティパラメータを指定してもよい。
なお、公開パラメータpkとマスター鍵mkの生成には、関数型暗号アルゴリズムであればどのようなものを用いてもよい。
システムパラメータ生成装置200の送受信部280は、S210で生成した公開パラメータpkを暗号化装置300に送信する(S280−1)。暗号化装置300は、受信した公開パラメータpkを記録部390に記録する。公開パラメータpkは、暗号化に際して必要となる情報である。
また、システムパラメータ生成装置200の送受信部280は、S210で生成したマスター鍵mkを復号鍵生成装置400に送信する(S280−2)。復号鍵生成装置400は、受信したマスター鍵mkを記録部490に記録する。マスター鍵mkは、復号に際して必要となる情報である。
なお、S280−1とS280−2の順序は上記順序に限るものではなく、S280−2、S280−1の順であってもよいし、同時であってもよい。
[暗号化処理]
以下、図7を参照して、秘匿化対象データである平文から暗号文を生成する暗号化処理について説明する。
暗号化処理に際して、復号条件と暗号化オプション情報を指定する。なお、暗号化オプション情報は、必要に応じて指定されるものである。
復号条件は、属性ID(属性IDリストに含まれる標準属性IDまたは拡張属性ID)を用いた原始的な論理式を論理演算子(例えば、AND演算子、OR演算子、NOT演算子、閾値演算子など)により結合した論理式として表現される。先述の論理式{(gid=GID01) OR (gid=GID02)} AND (date=20170302)は、復号条件の例であり、原始的な論理式(gid=GID01)、(gid=GID02)、(date=20170302)をOR演算子とAND演算子で結合した論理式となっている。
暗号化オプション情報は、拡張属性IDの用途の定義、属性IDの属性値の取得方法の指定を記述するものであり、属性IDリストに含まれる属性IDを用いて指定される情報である。
まず、拡張属性IDの用途の定義の例について説明する(図9参照)。例えば、拡張属性ID”ext_info1”を用いて、”ext_info1←gid”と記述すると、グループIDを表す標準属性ID”gid”の値を保持するための新たなID名を有する属性ID”ext_info1”が定義されたことになる。これにより、標準属性ID”gid”の名前をリネームした属性ID”ext_info1”が復号条件の指定に利用できるようになる。
また、単に既存の属性IDのリネームとして拡張属性IDの用途を定義するのではなく、M個の標準属性IDとは異なる新たな属性IDを定義するために、拡張属性IDを用いることもできる。以下、例を用いて説明する。復号装置500にインストールされたアプリケーション”app_B”において、属性ID”uid”が扱えるものとする。つまり、アプリケーション”app_B”において属性ID”uid”の取り得る値とその値の取得方法が定義されているものとする。この例では、復号装置500にインストールされたアプリケーションで、属性ID”uid”を扱えるものはアプリケーション”app_B”以外にないものとする。なお、属性ID”uid”を扱えるアプリケーションが複数存在する場合は、後述のアプリケーションパッケージ名、クラス名を暗号化オプション情報に指定する方法により特定することができる。このとき、拡張属性ID”ext_info1”を用いて、”ext_info1←uid”と記述すると、未定義であった拡張属性ID”ext_info1”がアプリケーション”app_B”の属性ID”uid”の値を保持するための属性IDとして定義されたことになる。以降、復号条件の指定に、ユーザIDを表す属性ID”uid”に関する条件を記述できるようになる。
例えば、”app_A.app_A_class.param00”のようなアプリケーションパッケージ名、クラス名、パラメータ名の組合せを用いて、”ext_info1←app_A.app_A_class.param00”と記述すると、復号装置500にインストールされたアプリケーションパッケージ”app_A”のクラス”app_A_class”のパラメータ”param00”の値を保持するための属性ID”ext_info1”が定義されたことになる。これにより、アプリケーションパッケージ” app_A”に含まれるクラス”app_A_class”のパラメータ”param00”の値を保持するための属性ID”ext_info1”が復号条件の指定に利用できるようになる。
また、例えば、”app_A.app_A_class”のように、アプリケーションパッケージ名、クラス名の組合せを用いて、”ext_info1←app_A.app_A_class”と記述すると、復号装置500にインストールされたアプリケーションパッケージ”app_A”のクラス”app_A_class”のあるパラメータの値を保持するための属性ID”ext_info1”が定義されたことになる。クラス”app_A_class”で利用されるパラメータが複数ある場合、どのパラメータの値を拡張属性ID”ext_info1”の値として返すのかは、アプリケーションが決定するものとする。もしくは、暗号化オプション情報にて取得する値を指定するようにしてもよい。これにより、パッケージ” app_A”に含まれるクラス”app_A_class”のパラメータの値を保持するための属性ID”ext_info1”が復号条件の指定に利用できるようになる。
次に、属性IDの属性値の取得方法の指定の例について説明する(図10参照)。例えば、”ext_info1←http://xxx.com”と記述すると、属性ID”ext_info1”の属性値をURL”http://xxx.com”で指定されるシステム外部のWebサーバから取得することを指定することになる。これにより、属性ID”ext_info1”には、”http://xxx.com”からの出力の値(httpレスポンス)が保持されるようになる。
また、例えば、標準属性ID”date”を用いて、”date←http://xxx.com”と記述すると、システム既定の方法により属性ID”date”の属性値を取得する代わりに、URL”http://xxx.com”で指定されるシステム外部のWebサーバから取得することを指定することになる。
暗号化装置300の暗号文生成部310は、公開パラメータpkを用いて、平文Mと復号条件cと暗号化オプション情報opから暗号文Dを生成する(S310)。平文Mは、暗号化装置300のユーザが復号装置500のユーザと共有したい情報である。また、復号条件cと暗号化オプション情報opは、暗号化装置300のユーザが指定するものであり、これらの情報を用いて平文Mへのアクセス条件を指定する。
暗号文Dの生成方法について、説明する。例えば、公開パラメータpkを用いて、平文Mと復号条件cから暗号化データCを生成し、暗号化データCと暗号化オプション情報opの組として暗号文Dを生成する。また、公開パラメータpkを用いて、平文Mと復号条件cから暗号化データCを生成し、暗号化データCと復号条件cと暗号化オプション情報opの組として暗号文Dを生成してもよい。
暗号文が、後述するS480で復号鍵skを受信する前に、復号装置500が復号条件や暗号化オプション情報の記述に用いている属性IDを特定できる形式となっていない場合は、すべての属性IDに対して、その値を取得するようにすれば、環境情報を取得できる。一方、暗号文が、S480で復号鍵skを受信する前に、復号装置500が復号条件や暗号化オプション情報の記述に用いている属性IDを特定できる形式となっている場合は、復号情報の記述に用いている属性IDに対して、その値を取得すればよいので、環境情報を効率的に取得することができる。
暗号化装置300の送受信部380は、S310で生成した暗号文Dを復号装置500に送信する(S380)。復号装置500は、受信した暗号文Dを記録部590に記録する。
[復号処理]
以下、図8を参照して、暗号文を復号する復号処理について説明する。
復号装置500の環境情報取得部510は、暗号文Dの生成に用いた暗号化オプション情報opを用いて、暗号文Dの生成に用いた復号条件cで用いられている属性IDとその値である環境情報αを取得する(S510)。
暗号文Dが暗号化データCと暗号化オプション情報opの組である場合、環境情報取得部510は、暗号文Dから暗号化オプション情報opを抽出し、暗号化オプション情報opを用いて、すべての属性IDに対して、その値を取得し、環境情報αを取得する。また、暗号文Dが暗号化データCと復号条件cと暗号化オプション情報opの組である場合、環境情報取得部510は、暗号文Dから復号条件cと暗号化オプション情報opを抽出し、復号条件cで用いられている属性IDに対して、その値を取得し、環境情報αを取得する。
復号装置500の送受信部580は、S510で取得した環境情報αを復号鍵生成装置400に送信する(S580)。復号鍵生成装置400は、受信した環境情報αを記録部490に記録する。
復号鍵生成装置400の復号鍵生成部410は、S580で受信した環境情報αと記録部490に記録してあるマスター鍵mkから復号鍵skを生成する(S410)。
復号鍵生成装置400の送受信部480は、S410で生成した復号鍵skを復号装置500に送信する(S480)。復号装置500は、受信した復号鍵skを記録部590に記録する。
復号装置500の復号部520は、S480で受信した復号鍵skを用いて、記録部590に記録した暗号文Dを復号する(S520)。環境情報αが復号条件cを満たす場合は、復号結果は正しい平文となる一方、環境情報αが復号条件cを満たさない場合は、復号結果は意味をなさないランダムな値となる。
上記説明では、送受信部580は、必ず環境情報αを復号鍵生成装置400に送信するものとした。しかし、暗号文Dから復号条件cを抽出できる場合、送受信部580が環境情報αを復号鍵生成装置400に送信する前に、環境情報取得部510が、環境情報αが復号条件cを満たすか否かを判断し、満たす場合は送信する一方、満たさない場合は処理を中止するようにしてもよい。このようにすると、復号部520は、必ず暗号文Dから正しく平文Mを復号するようになる。
[暗号化オプション情報]
(拡張属性IDの用途の定義)
暗号化オプション情報に拡張属性IDの用途の定義を記述する場合、セットアップ処理時点では未定義となっていた拡張属性IDを利用する。
以下、図9を参照して、暗号化オプション情報の取り扱いについて説明する。まず、暗号化処理時点において、暗号化オプション情報opとして、例えば”ext_info1←gid”と指定する。また、復号条件cとして、例えば、{(ext_info1=GID01) OR (ext_info1=GID02)} AND (date=20170302)と指定する。暗号化装置300の暗号文生成部310は、これらの暗号化オプション情報opと復号条件cから暗号文Dを生成する。
次に、復号処理時点において、復号装置500の環境情報取得部510は、暗号文Dの生成に用いた暗号化オプション情報op”ext_info1←gid”に基づいて、属性ID”gid”の値を取得する。属性ID”gid”は、標準属性IDであるため、その属性値の取得方法については、例えば、システム設計段階において定められた方法を用いることになる。なお、標準属性IDでない場合は、拡張属性IDの用途を定義した際の取得方法を用いることになる。このように既定の方法により取得された値を”GID02”とすると、”ext_info1= GID02”となる。属性ID”date”についても、同様に、取得された値を”20170302”とすると、”date=20170302”となる。復号装置500の送受信部580は、環境情報αとして、”ext_info1= GID02”と”date=20170302”を復号鍵生成装置400に送信する。
復号鍵生成装置400の復号鍵生成部410は、環境情報α”ext_info1= GID02”、”date=20170302”とマスター鍵mkから復号鍵skを生成する。復号鍵生成装置400の送受信部480は、復号鍵skを復号装置500に送信する。
復号装置500の復号部520は、復号鍵skを用いて、暗号文Dを復号する。この場合、復号条件cが{(ext_info1=GID01) OR (ext_info1=GID02)} AND (date=20170302)であり、復号鍵skは環境情報α”ext_info1= GID02”、”date=20170302”から生成されたものであるため、正しく平文が復号される。一方、例えば、環境情報αを”ext_info1= GID03”、”date=20170302”として復号鍵skが生成されていた場合、復号条件cが満たされないことから、復号部520は、意味をなさないランダムな値を生成することになる。
このように、セットアップ処理時点で未定義になっていた拡張属性IDの用途を暗号化オプション情報に定義することにより、拡張属性IDを用いて復号条件を指定することが可能となるため、システムパラメータの再生成が不要となる。
先述の例では、1つの拡張属性ID”ext_info1”を用いて暗号化オプション情報op”ext_info1←gid”を指定していたが、システムが許容する数、つまりセットアップ処理時に指定した拡張属性IDの数を限度として、複数の拡張属性IDの用途の定義を暗号化オプション情報に記述することもできる。
(属性IDの属性値の取得方法の指定)
暗号化オプション情報に属性IDの属性値の取得方法の指定を記述する場合、標準属性IDまたは拡張属性IDを利用する。
以下、図10を参照して、暗号化オプション情報の取り扱いについて説明する。まず、暗号化処理時点において、暗号化オプション情報opとして、例えば”ext_info1←gid”、”ext_info1←http://xxx.com”と指定する。また、復号条件cとして、例えば、{(ext_info1=GID01) OR (ext_info1=GID02)} AND (date=20170302)と指定する。暗号化装置300の暗号文生成部310は、これらの暗号化オプション情報opと復号条件cから暗号文Dを生成する。
次に、復号処理時点において、復号装置500の環境情報取得部510は、暗号文Dの生成に用いた暗号化オプション情報opの”ext_info1←gid”に基づいて、属性ID”gid”の値を取得する。ここで、暗号化オプション情報opに”ext_info1←http://xxx.com”と指定されているため、既定の方法により属性ID”gid”の値を取得する代わりに、外部のWebサーバ”http://xxx.com”から取得する。この値を”GID01”とすると、”ext_info1= GID01”となる。属性ID”date”についても、同様に、取得された値を”20170302”とすると、”date=20170302”となる。復号装置500の送受信部580は、環境情報αとして、”ext_info1= GID01”と”date=20170302”を復号鍵生成装置400に送信する。
復号鍵生成装置400の復号鍵生成部410は、環境情報α”ext_info1= GID01”、”date=20170302”とマスター鍵mkから復号鍵skを生成する。復号鍵生成装置400の送受信部480は、復号鍵skを復号装置500に送信する。
復号装置500の復号部520は、復号鍵skを用いて、暗号文Dを復号する。この場合、復号条件cが{(ext_info1=GID01) OR (ext_info1=GID02)} AND (date=20170302)であり、復号鍵は環境情報α”ext_info1= GID01”、”date=20170302”から生成されたものであるため、正しく平文が復号される。一方、例えば、環境情報αを”ext_info1= GID04”、”date=20170302”として復号鍵skが生成されていた場合、復号条件cが満たされないことから、復号部520は、意味をなさないランダムな値を生成することになる。
このように、セットアップ処理時点で未定義になっていた拡張属性IDの用途を暗号化オプション情報に定義するとともに、その属性値の取得方法の指定を暗号化オプション情報に定義することにより、拡張属性IDを用いて復号条件を指定することが可能となるため、システムパラメータの再生成やシステムの改修が不要となる。
ここで説明した例のように、1つの拡張属性IDを複数回用いて暗号化オプション情報を記述することもできる。
また、取得先として信頼できる外部のWebサーバを指定すれば、既定の方法により取得する値よりも信頼できる値を取得できるようにもなる。
取得先である外部のWebサーバが複数の属性値を保持している場合、そのうちどれを取得するのかを指定するため補助的な情報を暗号化オプション情報に指定できるようにしてもよい。例えば、地域により異なる時間情報については、地域名を補助的な情報として指定したうえで、属性“時間情報”の値を取得するようにすることで、その地域の時間情報が取得できるようになる。
[その他]
暗号化オプション情報を暗号化データのヘッダ情報として付与することにより、暗号化データと暗号化オプション情報の組として暗号文を生成することができる。この場合、ヘッダ情報を解析され、暗号化オプション情報が改ざんされる可能性がある。改ざんされた場合、暗号装置300のユーザが意図しない環境情報の取得が行われ、ユーザが意図しない復号鍵の生成が行われてしまうかもしれない。
そこで、暗号化オプション情報の改ざんを検知した場合に復号処理を停止する機能を付加し、改ざんによる不正な復号を防止するようにする。改ざん検知機能は、例えば、ハッシュ値を利用して実現できる。暗号装置300の暗号文生成部310が暗号文を生成する際、暗号化オプション情報とあわせて、暗号化オプション情報のハッシュ値を取り、暗号化データに付与し、暗号文を生成する。復号装置500の環境情報取得部510は、暗号文に含まれる暗号化オプション情報とそのハッシュ値から暗号化オプション情報が改ざんされていないかの検証を行う。改ざんされている場合は処理を停止する一方、改ざんされていない場合は先述のように環境情報を取得する。このようにすることにより、暗号装置300のユーザが意図しない復号鍵の生成を防ぐことが可能となる。
本発明によれば、暗号化オプション情報を用いることにより、システムに手を加えることなく、属性IDや属性値取得方法を追加することが可能となる。
<補記>
本発明の装置は、例えば単一のハードウェアエンティティとして、キーボードなどが接続可能な入力部、液晶ディスプレイなどが接続可能な出力部、ハードウェアエンティティの外部に通信可能な通信装置(例えば通信ケーブル)が接続可能な通信部、CPU(Central Processing Unit、キャッシュメモリやレジスタなどを備えていてもよい)、メモリであるRAMやROM、ハードディスクである外部記憶装置並びにこれらの入力部、出力部、通信部、CPU、RAM、ROM、外部記憶装置の間のデータのやり取りが可能なように接続するバスを有している。また必要に応じて、ハードウェアエンティティに、CD−ROMなどの記録媒体を読み書きできる装置(ドライブ)などを設けることとしてもよい。このようなハードウェア資源を備えた物理的実体としては、汎用コンピュータなどがある。
ハードウェアエンティティの外部記憶装置には、上述の機能を実現するために必要となるプログラムおよびこのプログラムの処理において必要となるデータなどが記憶されている(外部記憶装置に限らず、例えばプログラムを読み出し専用記憶装置であるROMに記憶させておくこととしてもよい)。また、これらのプログラムの処理によって得られるデータなどは、RAMや外部記憶装置などに適宜に記憶される。
ハードウェアエンティティでは、外部記憶装置(あるいはROMなど)に記憶された各プログラムとこの各プログラムの処理に必要なデータが必要に応じてメモリに読み込まれて、適宜にCPUで解釈実行・処理される。その結果、CPUが所定の機能(上記、…部、…手段などと表した各構成要件)を実現する。
本発明は上述の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。また、上記実施形態において説明した処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されるとしてもよい。
既述のように、上記実施形態において説明したハードウェアエンティティ(本発明の装置)における処理機能をコンピュータによって実現する場合、ハードウェアエンティティが有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記ハードウェアエンティティにおける処理機能がコンピュータ上で実現される。
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、DVD(Digital Versatile Disc)、DVD−RAM(Random Access Memory)、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)等を、光磁気記録媒体として、MO(Magneto-Optical disc)等を、半導体メモリとしてEEP−ROM(Electronically Erasable and Programmable-Read Only Memory)等を用いることができる。
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD−ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、ハードウェアエンティティを構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。

Claims (8)

  1. M、Nを1以上の整数、標準属性IDを用途が既に定義されている属性ID、拡張属性IDを用途が未定義である属性ID、属性IDリストをM個の標準属性IDとN個の拡張属性IDからなるリストとし、
    システムパラメータ生成装置、暗号化装置、復号鍵生成装置、復号装置を含む暗号処理システムが、暗号化、復号を行う暗号処理方法であって、
    前記暗号化装置は、前記システムパラメータ生成装置が前記属性IDリストから生成した公開パラメータを記録しており、
    前記復号鍵生成装置は、前記システムパラメータ生成装置が前記属性IDリストから生成したマスター鍵を記録しており、
    復号条件を前記属性IDリストに含まれる標準属性IDまたは拡張属性IDを用いた原始的な論理式を論理演算子により結合した論理式、暗号化オプション情報を前記属性IDリストに含まれる属性IDを用いて指定される情報とし、
    前記暗号化装置が、前記公開パラメータを用いて、平文と前記復号条件と前記暗号化オプション情報から暗号文を生成する暗号文生成ステップと、
    前記復号装置が、前記暗号化装置から受信した前記暗号文の生成に用いた前記暗号化オプション情報を用いて、前記暗号文の生成に用いた前記復号条件で用いられている属性IDとその値である環境情報を取得する環境情報取得ステップと、
    前記復号鍵生成装置が、前記復号装置から受信した前記環境情報と前記マスター鍵から復号鍵を生成する復号鍵生成ステップと、
    前記復号装置が、前記復号鍵生成装置から受信した前記復号鍵を用いて、前記暗号文を復号する復号ステップと
    を含む暗号処理方法。
  2. 請求項1に記載の暗号処理方法であって、
    前記暗号化オプション情報は、拡張属性IDの用途を定義する記述を含むことを特徴とする暗号処理方法。
  3. 請求項1または2に記載の暗号処理方法であって、
    前記暗号化オプション情報は、属性IDの属性値の取得方法を指定する記述を含むことを特徴とする暗号処理方法。
  4. M、Nを1以上の整数、標準属性IDを用途が既に定義されている属性ID、拡張属性IDを用途が未定義である属性ID、属性IDリストをM個の標準属性IDとN個の拡張属性IDからなるリストとし、
    復号条件を前記属性IDリストに含まれる標準属性IDまたは拡張属性IDを用いた原始的な論理式を論理演算子により結合した論理式、暗号化オプション情報を前記属性IDリストに含まれる属性IDを用いて指定される情報とし、
    システムパラメータ生成装置、暗号化装置、復号鍵生成装置、復号装置を含む暗号処理システムであって、
    前記暗号化装置は、
    前記システムパラメータ生成装置が前記属性IDリストから生成した公開パラメータを記録する記録部と、
    前記公開パラメータを用いて、平文と前記復号条件と前記暗号化オプション情報から暗号文を生成する暗号文生成部を含み、
    前記復号鍵生成装置は、
    前記システムパラメータ生成装置が前記属性IDリストから生成したマスター鍵を記録する記録部と、
    前記復号装置から受信した環境情報と前記マスター鍵から復号鍵を生成する復号鍵生成部を含み、
    前記復号装置は、
    前記暗号化装置から受信した前記暗号文の生成に用いた前記暗号化オプション情報を用いて、前記暗号文の生成に用いた前記復号条件で用いられている属性IDとその値である前記環境情報を取得する環境情報取得部と、
    前記復号鍵生成装置から受信した前記復号鍵を用いて、前記暗号文を復号する復号部を含む
    暗号処理システム。
  5. M、Nを1以上の整数、標準属性IDを用途が既に定義されている属性ID、拡張属性IDを用途が未定義である属性ID、属性IDリストをM個の標準属性IDとN個の拡張属性IDからなるリストとし、
    復号条件を前記属性IDリストに含まれる標準属性IDまたは拡張属性IDを用いた原始的な論理式を論理演算子により結合した論理式、暗号化オプション情報を前記属性IDリストに含まれる属性IDを用いて指定される情報とし、
    前記属性IDリストから生成された公開パラメータを記録する記録部と、
    前記公開パラメータを用いて、平文と前記復号条件と前記暗号化オプション情報から暗号文を生成する暗号文生成部と
    を含む暗号化装置。
  6. M、Nを1以上の整数、標準属性IDを用途が既に定義されている属性ID、拡張属性IDを用途が未定義である属性ID、属性IDリストをM個の標準属性IDとN個の拡張属性IDからなるリストとし、
    復号条件を前記属性IDリストに含まれる標準属性IDまたは拡張属性IDを用いた原始的な論理式を論理演算子により結合した論理式、暗号化オプション情報を前記属性IDリストに含まれる属性IDを用いて指定される情報とし、
    暗号文の生成に用いた前記暗号化オプション情報を用いて、前記暗号文の生成に用いた前記復号条件で用いられている属性IDとその値である環境情報を取得する環境情報取得部と、
    前記環境情報を用いて生成された復号鍵を用いて、前記暗号文を復号する復号部と
    を含む復号装置。
  7. 請求項5に記載の暗号化装置としてコンピュータを機能させるためのプログラム。
  8. 請求項6に記載の復号装置としてコンピュータを機能させるためのプログラム。
JP2017082706A 2017-04-19 2017-04-19 暗号処理方法、暗号処理システム、暗号化装置、復号装置、プログラム Active JP6720107B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017082706A JP6720107B2 (ja) 2017-04-19 2017-04-19 暗号処理方法、暗号処理システム、暗号化装置、復号装置、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017082706A JP6720107B2 (ja) 2017-04-19 2017-04-19 暗号処理方法、暗号処理システム、暗号化装置、復号装置、プログラム

Publications (2)

Publication Number Publication Date
JP2018180408A JP2018180408A (ja) 2018-11-15
JP6720107B2 true JP6720107B2 (ja) 2020-07-08

Family

ID=64276647

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017082706A Active JP6720107B2 (ja) 2017-04-19 2017-04-19 暗号処理方法、暗号処理システム、暗号化装置、復号装置、プログラム

Country Status (1)

Country Link
JP (1) JP6720107B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20240283635A1 (en) * 2021-06-10 2024-08-22 Nippon Telegraph And Telephone Corporation Communication system, user terminal, communication method, and communication program
US20240146513A1 (en) * 2021-06-10 2024-05-02 Nippon Telegraph And Telephone Corporation Communication system, user terminal, communication method, and communication program
JP2023141724A (ja) * 2022-03-24 2023-10-05 株式会社東芝 情報送受信システム

Also Published As

Publication number Publication date
JP2018180408A (ja) 2018-11-15

Similar Documents

Publication Publication Date Title
KR100628655B1 (ko) 상이한 디지털 저작권 관리 도메인간의 콘텐츠 교환을 위한방법 및 시스템
JP5281074B2 (ja) 情報セキュリティ装置および情報セキュリティシステム
JP4760101B2 (ja) コンテンツ提供システム,コンテンツ再生装置,プログラム,およびコンテンツ再生方法
KR100942992B1 (ko) Drm에서의 사업자 권리를 보장하는 호환성 제공 방법 및장치
JP5196883B2 (ja) 情報セキュリティ装置および情報セキュリティシステム
JP4179563B2 (ja) 暗号通信の暗号鍵を管理する技術
KR101391152B1 (ko) Ums 기기의 컨텐츠를 보호하기 위한 방법 및 장치
CN105745660B (zh) 用于在客户机设备上支持多个数字权利管理协议的技术
JP5015742B2 (ja) 権利客体の復号方法と装置、及びそれを利用したコンテンツ共有方法と装置
JP6049908B2 (ja) ファイル保管システム
JP6720107B2 (ja) 暗号処理方法、暗号処理システム、暗号化装置、復号装置、プログラム
JP2012044577A5 (ja)
JP2009238212A (ja) 権利オブジェクト生成方法及びそのデバイス、権利オブジェクト伝送方法及びそのデバイス、並びに権利オブジェクト受信方法及びそのデバイス
CN105187426B (zh) 用于基于认证信息实现跨域访问的方法和系统
JP5511925B2 (ja) アクセス権付き暗号化装置、アクセス権付き暗号システム、アクセス権付き暗号化方法およびアクセス権付き暗号化プログラム
JP2012003682A (ja) アクセス制御システム、アクセス制御方法、認証装置、認証システム
Foltz et al. Simplified key management for digital access control of information objects
JP2012014529A (ja) 記憶装置および情報処理装置
JP6919484B2 (ja) 暗号通信方法、暗号通信システム、鍵発行装置、プログラム
JP6320943B2 (ja) 鍵共有装置、鍵共有システム、鍵共有方法、プログラム
JP5677194B2 (ja) コンテンツ販売管理装置及びコンテンツ販売システム及びコンピュータプログラム及びコンテンツ販売管理方法
JP6319816B2 (ja) 認証ファイル生成システム、ファイル認証システム、認証ファイル生成方法、ファイル認証方法、認証ファイル生成プログラムおよびファイル認証プログラム
JP6560859B2 (ja) データ利用制御システム及び方法
JP4765377B2 (ja) コンテンツ提供サーバ,および携帯電話
JP2006277697A (ja) コンテンツ転送システム,コンテンツ転送装置,コンテンツ再生装置,コンテンツ転送方法およびコンテンツ再生方法

Legal Events

Date Code Title Description
A80 Written request to apply exceptions to lack of novelty of invention

Free format text: JAPANESE INTERMEDIATE CODE: A80

Effective date: 20170419

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190619

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200330

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200428

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200519

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: 20200616

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200617

R150 Certificate of patent or registration of utility model

Ref document number: 6720107

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150