JP2018180408A - Encryption processing method, encryption processing system, encryption device, decryption device, and program - Google Patents

Encryption processing method, encryption processing system, encryption device, decryption device, and program Download PDF

Info

Publication number
JP2018180408A
JP2018180408A JP2017082706A JP2017082706A JP2018180408A JP 2018180408 A JP2018180408 A JP 2018180408A JP 2017082706 A JP2017082706 A JP 2017082706A JP 2017082706 A JP2017082706 A JP 2017082706A JP 2018180408 A JP2018180408 A JP 2018180408A
Authority
JP
Japan
Prior art keywords
attribute
decryption
encryption
ciphertext
information
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.)
Granted
Application number
JP2017082706A
Other languages
Japanese (ja)
Other versions
JP6720107B2 (en
Inventor
桜子 田村
Sakurako Tamura
桜子 田村
真紀子 青柳
Makiko Aoyanagi
真紀子 青柳
知加良 盛
Shigeru Chikara
盛 知加良
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/en
Publication of JP2018180408A publication Critical patent/JP2018180408A/en
Application granted granted Critical
Publication of JP6720107B2 publication Critical patent/JP6720107B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To provide an encryption technology capable of adding an attribute ID or an attribute value acquisition method without modifying a system.SOLUTION: An encryption device 300 generates an encrypted text from a plaintext, a decryption condition and encryption option information by using a public parameter. A decryption device 500 acquires an attribute ID used under the decryption condition used for generating the encrypted text and environmental information as its value by using the encryption option information used for generating the encrypted text received from the encryption device 300, and transmits them to a decryption key generation device 400. The decryption key generation device 400 generates a decryption key from the environmental information received from the decryption device 500 and a master key, and transmits the decryption key to the decryption device 500. The decryption device 500 decrypts the encrypted text by using the decryption key received from the decryption key generation device 400.SELECTED DRAWING: Figure 1

Description

本発明は、秘匿化したデータの不正利用を防止するアクセス制御に用いることができる暗号技術に関する。   The present invention relates to an encryption technique that can be used for access control that prevents unauthorized use of concealed data.

公開鍵暗号の発展技術である関数型暗号は、暗号化時に復号できる人やグループなどに関する条件(以下、復号条件という)を一般的な論理式(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”である場合に限り暗号化されたデータにアクセスすることができる(つまり復号することができる)ことを表すものである。   In functional-type cryptography, which is an advanced technology of public key cryptography, a condition (hereinafter referred to as a decryption condition) regarding a person or group that can be decrypted at the time of encryption is a logic using a general logical expression (AND operator, OR operator, etc. It has the feature that it can be designated by the formula) (Non-Patent Document 1). For example, the value of attribute ID "gid" representing a group ID (hereinafter also referred to as attribute value) is either "GID 01" or "GID 02", and the value of attribute ID "date" representing a date is "20170302". A logical expression indicating that access is permitted in a certain case is {(gid = GID01) OR (gid = GID02)} AND (date = 20170302). This logical expression can access encrypted data only when a person whose group ID "gid" is either "GID01" or "GID02" has a date "date" of "20170302". Can be decoded).

関数型暗号を用いると、秘匿化したいデータを、上記のような論理式で表される復号条件が付いた暗号化データとしてクラウドで管理し、ユーザは自分の属性値に合致する復号条件が設定された暗号化データだけを復号することができるというアクセス制御を備えた暗号処理システムを実現できる。   When using functional encryption, the data to be concealed is managed in the cloud as encrypted data with the decryption condition represented by the above logical expression, and the user sets the decryption condition that matches his / her attribute value It is possible to realize a cryptographic processing system provided with access control that can decrypt only the encrypted data.

高島克幸,岡本龍明,“アクセス権限を制御できる最新技術「関数型暗号」”,日経エレクトロニクス (1087) 2012-07-23号,日経BP社,pp.87-95,2012.Katsuyuki Takashima, Takuaki Okamoto, "The Latest Technology for Controlling Access Authority" Functional Cryptography ", Nikkei Electronics (1087) 2012-07-23, Nikkei BP, pp. 87-95, 2012.

関数型暗号を利用した暗号処理システムでは、システム設計時にアクセス権限の制御に利用する属性IDを指定する。そのため、システム設計時に指定していなかった新たな属性IDを追加、利用する場合、公開パラメータとマスター鍵(以下、システムパラメータという)を再生成する必要がある。   In a cryptographic processing system using functional encryption, at the time of system design, an attribute ID used to control access authority is specified. Therefore, when adding and using a new attribute ID which has not been designated at the time of system design, it is necessary to regenerate the public parameter and the master key (hereinafter referred to as a system parameter).

また、属性値の取得方法もシステム設計時に指定する。そのため、新たに取得方法を追加する場合、システムを改修する必要がある。   In addition, the method for acquiring attribute values is also specified at the time of system design. Therefore, when adding a new acquisition method, it is necessary to modify the system.

つまり、新たな属性IDや新たな属性値の取得方法を追加する場合には、システムに手を加える必要があった。   That is, when adding a new attribute ID or a new attribute value acquisition method, it was necessary to modify the system.

そこで本発明では、システムに手を加えることなく、属性IDの追加や属性値取得方法の追加を可能とする暗号技術を提供することを目的とする。   Therefore, it is an object of the present invention to provide an encryption technique that enables addition of an attribute ID and addition of an attribute value acquisition method without modifying the system.

本発明の一態様は、M、Nを1以上の整数、標準属性IDを用途が既に定義されている属性ID、拡張属性IDを用途が未定義である属性ID、属性IDリストをM個の標準属性IDとN個の拡張属性IDからなるリストとし、システムパラメータ生成装置、暗号化装置、復号鍵生成装置、復号装置を含む暗号処理システムが、暗号化、復号を行う暗号処理方法であって、前記暗号化装置は、前記システムパラメータ生成装置が前記属性IDリストから生成した公開パラメータを記録しており、前記復号鍵生成装置は、前記システムパラメータ生成装置が前記属性IDリストから生成したマスター鍵を記録しており、復号条件を前記属性IDリストに含まれる標準属性IDまたは拡張属性IDを用いた原始的な論理式を論理演算子により結合した論理式、暗号化オプション情報を前記属性IDリストに含まれる属性IDを用いて指定される情報とし、前記暗号化装置が、前記公開パラメータを用いて、平文と前記復号条件と前記暗号化オプション情報から暗号文を生成する暗号文生成ステップと、前記復号装置が、前記暗号化装置から受信した前記暗号文の生成に用いた前記暗号化オプション情報を用いて、前記暗号文の生成に用いた前記復号条件で用いられている属性IDとその値である環境情報を取得する環境情報取得ステップと、前記復号鍵生成装置が、前記復号装置から受信した前記環境情報と前記マスター鍵から復号鍵を生成する復号鍵生成ステップと、前記復号装置が、前記復号鍵生成装置から受信した前記復号鍵を用いて、前記暗号文を復号する復号ステップとを含む。   One aspect of the present invention is that M, N is an integer of 1 or more, standard attribute ID is an attribute ID whose application is already defined, extended attribute ID is an attribute ID whose application is undefined, attribute ID list is M pieces An encryption processing method in which an encryption processing system including a system parameter generation device, an encryption device, a decryption key generation device, and a decryption device as a list including a standard attribute ID and N extended attribute IDs performs encryption and decryption. The encryption device records the public parameter generated by the system parameter generation device from the attribute ID list, and the decryption key generation device generates a master key generated by the system parameter generation device from the attribute ID list Is a logical combination of primitive logical expressions using standard attribute IDs or extended attribute IDs included in the attribute ID list. Formula, encryption option information is information specified by using the attribute ID included in the attribute ID list, and the encryption device uses the public parameter to calculate the plaintext, the decryption condition, and the encryption option information The ciphertext generation step of generating a ciphertext; and the decryption used for generation of the ciphertext using the encryption option information used for generation of the ciphertext received by the decryption apparatus from the encryption apparatus An environment information acquisition step of acquiring environment information which is an attribute ID and its value used in the condition, and the decryption key generation device generates a decryption key from the environment information received from the decryption device and the master key And a decryption step of decrypting the ciphertext by using the decryption key received from the decryption key generation device.

本発明によれば、システムに手を加えることなく、属性IDや属性値取得方法を追加することが可能となる。   According to the present invention, it is possible to add an attribute ID and an attribute value acquisition method without modifying the system.

暗号処理システム100の構成の一例を示すブロック図。FIG. 1 is a block diagram showing an example of the configuration of a cryptographic processing system 100. システムパラメータ生成装置200の構成の一例を示すブロック図。FIG. 2 is a block diagram showing an example of the configuration of a system parameter generation device 200. 暗号化装置300の構成の一例を示すブロック図。FIG. 2 is a block diagram showing an example of the configuration of an encryption apparatus 300. 復号鍵生成装置400の構成の一例を示すブロック図。FIG. 7 is a block diagram showing an example of the configuration of a decryption key generation device 400. 復号装置500の構成の一例を示すブロック図。FIG. 16 is a block diagram showing an example of the configuration of a decoding device 500. セットアップ処理の一例を示すシークエンス図。The sequence diagram which shows an example of a setup process. 暗号化処理の一例を示すシークエンス図。The sequence diagram which shows an example of encryption processing. 復号処理の一例を示すシークエンス図。The sequence diagram which shows an example of a decoding process. 暗号化オプション情報(拡張属性IDの用途の定義)の取り扱いの様子を示す図。The figure which shows the mode of handling of encryption option information (definition of the use of extended attribute ID). 暗号化オプション情報(属性IDの属性値の取得方法の指定)の取り扱いの様子を示す図。The figure which shows the mode of handling of encryption option information (designation of acquisition method of attribute value of attribute ID).

以下、本発明の実施の形態について、詳細に説明する。なお、同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。
<第一実施形態>
Hereinafter, embodiments of the present invention will be described in detail. Note that components having the same function will be assigned the same reference numerals and redundant description will be omitted.
First Embodiment

[システム構成]
暗号処理システム100は、関数型暗号を用いて、平文を暗号化したデータである暗号化データに対するアクセス制御を提供するシステムである。システムパラメータ生成装置200は、暗号化・復号に必要な情報である公開パラメータとマスター鍵を生成する。暗号化装置300は、公開パラメータを用いて、平文と復号条件と暗号化オプション情報から暗号文を生成する。復号鍵生成装置400は、復号条件で用いられている属性IDとその値である環境情報とマスター鍵を用いて復号鍵を生成する。なお、環境情報は、復号装置500が取得し、復号鍵生成装置400に送信した情報であり、復号装置500や復号装置500を利用するユーザに関する情報(例えば、グループID”gid”とその値)、一般的な情報(例えば、日付”date”とその値)などがある。復号装置500は、復号鍵を用いて暗号文を復号する。
[System configuration]
The cryptographic processing system 100 is a system that provides access control for encrypted data, which is data obtained by encrypting plaintext, using functional encryption. The system parameter generation device 200 generates a public parameter and a master key, which are information necessary for encryption / decryption. The encryption apparatus 300 generates a ciphertext from the plaintext, the decryption condition, and the encryption option information using the public parameter. The decryption key generation device 400 generates a decryption key using the attribute ID used in the decryption condition and the environment information and the master key that are the value thereof. The environment information is information that the decryption device 500 acquires and transmits to the decryption key generation device 400, and information on the decryption device 500 and the user who uses the decryption device 500 (for example, the group ID “gid” and its value) , General information (eg, date "date" and its value). The decryption apparatus 500 decrypts the ciphertext using the decryption key.

図1を参照して、暗号処理システム100について説明する。図1は、暗号処理システム100の構成の一例を示すブロック図である。暗号処理システム100は、システムパラメータ生成装置200、暗号化装置300、復号鍵生成装置400、復号装置500を含む。システムパラメータ生成装置200、暗号化装置300、復号鍵生成装置400、復号装置500は、インターネットなどのネットワーク800に接続し、相互に通信可能である。   The cryptographic processing system 100 will be described with reference to FIG. FIG. 1 is a block diagram showing an example of the configuration of the cryptographic processing system 100. As shown in FIG. The cryptographic processing system 100 includes a system parameter generation device 200, an encryption device 300, a decryption key generation device 400, and a decryption device 500. The system parameter generation device 200, the encryption device 300, the decryption key generation device 400, and the decryption device 500 are connected to a network 800 such as the Internet and can communicate with each other.

次に、図2〜図5を参照して、システムパラメータ生成装置200、暗号化装置300、復号鍵生成装置400、復号装置500の各装置について説明する。図2は、システムパラメータ生成装置200の構成の一例を示すブロック図である。システムパラメータ生成装置200は、システムパラメータ生成部210、送受信部280、記録部290を含む。送受信部280は、システムパラメータ生成装置200がその他の装置と交換する必要がある情報を適宜送受信するための構成部である。記録部290は、システムパラメータ生成装置200の処理に必要な情報を適宜記録する構成部である。例えば、システムパラメータ生成に用いる属性IDを記録する。   Next, each of the system parameter generation device 200, the encryption device 300, the decryption key generation device 400, and the decryption device 500 will be described with reference to FIGS. FIG. 2 is a block diagram showing an example of the configuration of the system parameter generation device 200. As shown in FIG. The system parameter generation device 200 includes a system parameter generation unit 210, a transmission / reception unit 280, and a recording unit 290. The transmission and reception unit 280 is a component for appropriately transmitting and receiving information that the system parameter generation device 200 needs to exchange with other devices. The recording unit 290 is a component that appropriately records information necessary for the process of the system parameter generation device 200. For example, the attribute ID used for system parameter generation is recorded.

図3は、暗号化装置300の構成の一例を示すブロック図である。暗号化装置300は、暗号文生成部310、送受信部380、記録部390を含む。送受信部380は、暗号化装置300がその他の装置と交換する必要がある情報を適宜送受信するための構成部である。記録部390は、暗号化装置300の処理に必要な情報を適宜記録する構成部である。例えば、公開パラメータ、属性IDを記録する。属性IDは、復号条件や暗号化オプション情報を記述するために用いる。   FIG. 3 is a block diagram showing an example of the configuration of the encryption device 300. As shown in FIG. The encryption device 300 includes a ciphertext generation unit 310, a transmission / reception unit 380, and a recording unit 390. The transmission and reception unit 380 is a component for appropriately transmitting and receiving information that the encryption device 300 needs to exchange with other devices. The recording unit 390 is a component that appropriately records information necessary for the process of the encryption device 300. For example, the public parameter and attribute ID are recorded. The attribute ID is used to describe decryption conditions and encryption option information.

図4は、復号鍵生成装置400の構成の一例を示すブロック図である。復号鍵生成装置400は、復号鍵生成部410、送受信部480、記録部490を含む。送受信部480は、復号鍵生成装置400がその他の装置と交換する必要がある情報を適宜送受信するための構成部である。記録部490は、復号鍵生成装置400の処理に必要な情報を適宜記録する構成部である。例えば、マスター鍵を記録する。   FIG. 4 is a block diagram showing an example of the configuration of the decryption key generation device 400. As shown in FIG. The decryption key generation device 400 includes a decryption key generation unit 410, a transmission / reception unit 480, and a recording unit 490. The transmitting and receiving unit 480 is a component for appropriately transmitting and receiving information that the decryption key generation device 400 needs to exchange with another device. The recording unit 490 is a component that appropriately records information necessary for the processing of the decryption key generation device 400. For example, the master key is recorded.

図5は、復号装置500の構成の一例を示すブロック図である。復号装置500は、環境情報取得部510、復号部520、送受信部580、記録部590を含む。送受信部580は、復号装置500がその他の装置と交換する必要がある情報を適宜送受信するための構成部である。記録部590は、復号装置500の処理に必要な情報を適宜記録する構成部である。例えば、暗号文を記録する。   FIG. 5 is a block diagram showing an example of the configuration of decoding apparatus 500. The decryption apparatus 500 includes an environment information acquisition unit 510, a decryption unit 520, a transmission / reception unit 580, and a recording unit 590. The transmitting and receiving unit 580 is a component for appropriately transmitting and receiving information that the decoding device 500 needs to exchange with other devices. The recording unit 590 is a component that appropriately records information necessary for the process of the decoding device 500. For example, the ciphertext is recorded.

[セットアップ処理]
以下、図6を参照して、システムパラメータである公開パラメータとマスター鍵を生成するセットアップ処理について説明する。
[Setup process]
Hereinafter, with reference to FIG. 6, a setup process for generating a public parameter and a master key which are system parameters will be described.

セットアップ処理に際して、暗号化データの復号条件の記述に用いる属性IDを指定する。属性IDには、用途が既に定義されている標準属性IDと用途が未定義である拡張属性IDがある。ここで、属性IDの用途が定義されているとは、その属性IDの取り得る値とその値の取得方法が定義されていることをいう。   At the time of setup processing, an attribute ID used to describe decryption conditions of encrypted data is designated. The attribute ID includes a standard attribute ID whose use is already defined and an extended attribute ID whose use is undefined. Here, that the application of the attribute ID is defined means that a possible value of the attribute ID and a method of acquiring the value are defined.

標準属性IDの例として、グループIDを表す属性ID”gid”、日付を表す属性ID”date”がある。拡張属性IDは、標準属性IDと異なるID名を持つ。例えば、拡張属性IDを”ext_info1”、”ext_info2”などとする。拡張属性IDの用途は、復号条件に関する付加的な情報である暗号化オプション情報を用いて定義される。   Examples of the standard attribute ID include an attribute ID "gid" representing a group ID and an attribute ID "date" representing a date. The extended attribute ID has an ID name different from the standard attribute ID. For example, the extended attribute ID is "ext_info1", "ext_info2" or the like. The use of the extended attribute ID is defined using encryption option information which is additional information on the decryption condition.

なお、暗号化オプション情報は、拡張属性IDの用途の定義の他、属性IDの属性値の取得方法の指定に関する記述を含むことができる。詳しくは後ほど説明する。   The encryption option information can include, in addition to the definition of the use of the extended attribute ID, a description on the specification of the method of acquiring the attribute value of the attribute ID. Details will be described later.

以下、システムパラメータの生成に用いる標準属性IDの数をM、拡張属性IDの数をNとする(M、Nは1以上の整数)。また、M個の標準属性IDとN個の拡張属性IDからなるリストを属性IDリストという。   Hereinafter, it is assumed that the number of standard attribute IDs used for generation of system parameters is M, and the number of extended attribute IDs is N (M and N are integers of 1 or more). A list consisting of M standard attribute IDs and N extended attribute IDs is called an attribute ID list.

システムパラメータ生成装置200のシステムパラメータ生成部210は、関数型暗号を用いて、属性IDリストから公開パラメータpkとマスター鍵mkを生成する(S210)。その際、暗号の安全性の尺度を表すセキュリティパラメータを指定してもよい。   The system parameter generation unit 210 of the system parameter generation device 200 generates the public parameter pk and the master key mk from the attribute ID list using the functional encryption (S210). At that time, a security parameter that represents a measure of cryptographic security may be specified.

なお、公開パラメータpkとマスター鍵mkの生成には、関数型暗号アルゴリズムであればどのようなものを用いてもよい。   In addition, as long as it is a functional encryption algorithm, what kind of thing may be used for the production | generation of the open parameter pk and the master key mk.

システムパラメータ生成装置200の送受信部280は、S210で生成した公開パラメータpkを暗号化装置300に送信する(S280−1)。暗号化装置300は、受信した公開パラメータpkを記録部390に記録する。公開パラメータpkは、暗号化に際して必要となる情報である。   The transmission / reception unit 280 of the system parameter generation device 200 transmits the public parameter pk generated in S210 to the encryption device 300 (S280-1). The encryption device 300 records the received public parameter pk in the recording unit 390. The public parameter pk is information required for encryption.

また、システムパラメータ生成装置200の送受信部280は、S210で生成したマスター鍵mkを復号鍵生成装置400に送信する(S280−2)。復号鍵生成装置400は、受信したマスター鍵mkを記録部490に記録する。マスター鍵mkは、復号に際して必要となる情報である。   The transmission / reception unit 280 of the system parameter generation device 200 transmits the master key mk generated in S210 to the decryption key generation device 400 (S280-2). The decryption key generation device 400 records the received master key mk in the recording unit 490. The master key mk is information necessary for decryption.

なお、S280−1とS280−2の順序は上記順序に限るものではなく、S280−2、S280−1の順であってもよいし、同時であってもよい。   The order of S280-1 and S280-2 is not limited to the above order, and the order of S280-2 and S280-1 may be or may be simultaneous.

[暗号化処理]
以下、図7を参照して、秘匿化対象データである平文から暗号文を生成する暗号化処理について説明する。
[Encryption processing]
Hereinafter, the encryption processing for generating a ciphertext from plaintext which is data to be concealed will be described with reference to FIG.

暗号化処理に際して、復号条件と暗号化オプション情報を指定する。なお、暗号化オプション情報は、必要に応じて指定されるものである。   In the encryption process, decryption conditions and encryption option information are specified. The encryption option information is designated as necessary.

復号条件は、属性ID(属性IDリストに含まれる標準属性IDまたは拡張属性ID)を用いた原始的な論理式を論理演算子(例えば、AND演算子、OR演算子、NOT演算子、閾値演算子など)により結合した論理式として表現される。先述の論理式{(gid=GID01) OR (gid=GID02)} AND (date=20170302)は、復号条件の例であり、原始的な論理式(gid=GID01)、(gid=GID02)、(date=20170302)をOR演算子とAND演算子で結合した論理式となっている。   The decoding condition is a primitive logical expression using attribute ID (standard attribute ID or extended attribute ID included in attribute ID list) as logical operator (for example, AND operator, OR operator, NOT operator, threshold operation) It is expressed as a logical expression connected by a child etc.). The above-mentioned logical expression {(gid = GID01) OR (gid = GID02)} AND (date = 20170302) is an example of a decoding condition, and primitive logical expressions (gid = GID01), (gid = GID02), ( It is a logical expression in which date = 20170302) is combined with the OR operator and the AND operator.

暗号化オプション情報は、拡張属性IDの用途の定義、属性IDの属性値の取得方法の指定を記述するものであり、属性IDリストに含まれる属性IDを用いて指定される情報である。   The encryption option information describes the definition of the purpose of the extended attribute ID and the specification of the method of acquiring the attribute value of the attribute ID, and is information specified using the attribute ID included in the attribute ID list.

まず、拡張属性IDの用途の定義の例について説明する(図9参照)。例えば、拡張属性ID”ext_info1”を用いて、”ext_info1←gid”と記述すると、グループIDを表す標準属性ID”gid”の値を保持するための新たなID名を有する属性ID”ext_info1”が定義されたことになる。これにより、標準属性ID”gid”の名前をリネームした属性ID”ext_info1”が復号条件の指定に利用できるようになる。   First, an example of definition of usage of extended attribute ID will be described (see FIG. 9). For example, when describing “ext_info1ggid” using the extended attribute ID “ext_info1”, the attribute ID “ext_info1” having a new ID name for holding the value of the standard attribute ID “gid” representing the group ID is It will be defined. As a result, the attribute ID "ext_info1" obtained by renaming the name of the standard attribute ID "gid" can be used to specify the decryption condition.

また、単に既存の属性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”に関する条件を記述できるようになる。   Also, the extended attribute ID can be used to define a new attribute ID different from the M standard attribute IDs instead of simply defining the usage of the extended attribute ID as a renaming of the existing attribute ID. Hereinafter, description will be made using an example. In the application “app_B” installed in the decryption apparatus 500, the attribute ID “uid” can be handled. That is, in the application “app_B”, it is assumed that the possible values of the attribute ID “uid” and the method of acquiring the values are defined. In this example, it is assumed that there is no application installed in the decryption apparatus 500 that can handle the attribute ID “uid” other than the application “app_B”. If there are a plurality of applications that can handle the attribute ID “uid”, the application package name and class name described later can be specified by a method of specifying in the encryption option information. At this time, if “ext_info1 ← uid” is described using the extended attribute ID “ext_info1”, the undefined extended attribute ID “ext_info1” holds the value of the attribute ID “uid” of the application “app_B”. It is defined as the attribute ID of. After that, it becomes possible to describe the condition related to the attribute ID “uid” representing the user ID in the specification of the decryption condition.

例えば、”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”が復号条件の指定に利用できるようになる。   For example, when an application package name such as “app_A.app_A_class.param00”, a class name, and a parameter name are used to describe “ext_info11app_A.app_A_class.param00”, the application package installed in the decryption apparatus 500 ” Attribute ID "ext_info1" for holding the value of parameter "param00" of class "app_A_class" of app_A "is defined. As a result, the attribute ID "ext_info1" for holding the value of the parameter "param00" of the class "app_A_class" included in the application package "app_A" can be used to specify the decryption condition.

また、例えば、”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”が復号条件の指定に利用できるようになる。   Further, for example, if “ext_info1 ← app_A.app_A_class” is described using a combination of application package name and class name as “app_A.app_A_class”, the class of application package “app_A” installed in the decryption apparatus 500 The attribute ID "ext_info1" for holding the value of a certain parameter of "app_A_class" is defined. When there are a plurality of parameters used in the class "app_A_class", the application decides which value of the parameter is to be returned as the value of the extended attribute ID "ext_info1". Alternatively, a value to be acquired may be designated in the encryption option information. As a result, the attribute ID "ext_info1" for holding the value of the parameter of the class "app_A_class" included in the package "app_A" can be used to specify the decryption condition.

次に、属性IDの属性値の取得方法の指定の例について説明する(図10参照)。例えば、”ext_info1←http://xxx.com”と記述すると、属性ID”ext_info1”の属性値をURL”http://xxx.com”で指定されるシステム外部のWebサーバから取得することを指定することになる。これにより、属性ID”ext_info1”には、”http://xxx.com”からの出力の値(httpレスポンス)が保持されるようになる。   Next, an example of designation of a method of acquiring the attribute value of the attribute ID will be described (see FIG. 10). For example, if “ext_info1 ← http: //xxx.com” is described, acquiring the attribute value of the attribute ID “ext_info1” from the Web server outside the system specified by the URL “http://xxx.com” It will be specified. As a result, the value (http response) of the output from “http://xxx.com” is held in the attribute ID “ext_info1”.

また、例えば、標準属性ID”date”を用いて、”date←http://xxx.com”と記述すると、システム既定の方法により属性ID”date”の属性値を取得する代わりに、URL”http://xxx.com”で指定されるシステム外部のWebサーバから取得することを指定することになる。   Also, for example, if “date date http://xxx.com” is described using the standard attribute ID “date”, the URL “instead of acquiring the attribute value of the attribute ID“ date ”according to the system default method It will be specified to acquire from a web server outside the system specified by http://xxx.com.

暗号化装置300の暗号文生成部310は、公開パラメータpkを用いて、平文Mと復号条件cと暗号化オプション情報opから暗号文Dを生成する(S310)。平文Mは、暗号化装置300のユーザが復号装置500のユーザと共有したい情報である。また、復号条件cと暗号化オプション情報opは、暗号化装置300のユーザが指定するものであり、これらの情報を用いて平文Mへのアクセス条件を指定する。   The ciphertext generation unit 310 of the encryption device 300 generates a ciphertext D from the plaintext M, the decryption condition c, and the encryption option information op using the public parameter pk (S310). The plaintext M is information that the user of the encryption device 300 wants to share with the user of the decryption device 500. Further, the decryption condition c and the encryption option information op are designated by the user of the encryption device 300, and the access condition to the plaintext M is designated using these information.

暗号文Dの生成方法について、説明する。例えば、公開パラメータpkを用いて、平文Mと復号条件cから暗号化データCを生成し、暗号化データCと暗号化オプション情報opの組として暗号文Dを生成する。また、公開パラメータpkを用いて、平文Mと復号条件cから暗号化データCを生成し、暗号化データCと復号条件cと暗号化オプション情報opの組として暗号文Dを生成してもよい。   The method of generating the ciphertext D will be described. For example, the encrypted data C is generated from the plaintext M and the decryption condition c using the public parameter pk, and the ciphertext D is generated as a set of the encrypted data C and the encryption option information op. Alternatively, encrypted data C may be generated from plaintext M and decryption condition c using public parameter pk, and ciphertext D may be generated as a combination of encrypted data C, decryption condition c and encryption option information op. .

暗号文が、後述するS480で復号鍵skを受信する前に、復号装置500が復号条件や暗号化オプション情報の記述に用いている属性IDを特定できる形式となっていない場合は、すべての属性IDに対して、その値を取得するようにすれば、環境情報を取得できる。一方、暗号文が、S480で復号鍵skを受信する前に、復号装置500が復号条件や暗号化オプション情報の記述に用いている属性IDを特定できる形式となっている場合は、復号情報の記述に用いている属性IDに対して、その値を取得すればよいので、環境情報を効率的に取得することができる。   If the ciphertext does not have a format in which the decryption device 500 can specify the attribute ID used for describing the decryption condition and the encryption option information before receiving the decryption key sk in S480 described later, all the attributes Environment information can be acquired by acquiring the value of the ID. On the other hand, if the decryption text is in a format that allows the decryption device 500 to specify the attribute ID used for describing the decryption condition and the encryption option information before receiving the decryption key sk in S480, Environment information can be efficiently acquired because the value of the attribute ID used in the description may be acquired.

暗号化装置300の送受信部380は、S310で生成した暗号文Dを復号装置500に送信する(S380)。復号装置500は、受信した暗号文Dを記録部590に記録する。   The transmission / reception unit 380 of the encryption device 300 transmits the ciphertext D generated in S310 to the decryption device 500 (S380). The decryption device 500 records the received ciphertext D in the recording unit 590.

[復号処理]
以下、図8を参照して、暗号文を復号する復号処理について説明する。
[Decryption processing]
The decryption processing for decrypting the ciphertext will be described below with reference to FIG.

復号装置500の環境情報取得部510は、暗号文Dの生成に用いた暗号化オプション情報opを用いて、暗号文Dの生成に用いた復号条件cで用いられている属性IDとその値である環境情報αを取得する(S510)。   The environment information acquisition unit 510 of the decryption apparatus 500 uses the encryption option information op used to generate the ciphertext D, and uses the attribute ID used in the decryption condition c used to generate the ciphertext D and the value thereof. Certain environmental information α is acquired (S510).

暗号文Dが暗号化データCと暗号化オプション情報opの組である場合、環境情報取得部510は、暗号文Dから暗号化オプション情報opを抽出し、暗号化オプション情報opを用いて、すべての属性IDに対して、その値を取得し、環境情報αを取得する。また、暗号文Dが暗号化データCと復号条件cと暗号化オプション情報opの組である場合、環境情報取得部510は、暗号文Dから復号条件cと暗号化オプション情報opを抽出し、復号条件cで用いられている属性IDに対して、その値を取得し、環境情報αを取得する。   When the ciphertext D is a set of the encrypted data C and the encryption option information op, the environment information acquisition unit 510 extracts the encryption option information op from the ciphertext D, and uses the encryption option information op to perform all the operations. For the attribute ID of, the value is acquired, and the environment information α is acquired. When the ciphertext D is a combination of the encrypted data C, the decryption condition c, and the encryption option information op, the environment information acquisition unit 510 extracts the decryption condition c and the encryption option information op from the ciphertext D, For the attribute ID used in the decryption condition c, the value is acquired, and the environment information α is acquired.

復号装置500の送受信部580は、S510で取得した環境情報αを復号鍵生成装置400に送信する(S580)。復号鍵生成装置400は、受信した環境情報αを記録部490に記録する。   The transmission / reception unit 580 of the decryption apparatus 500 transmits the environment information α acquired in S510 to the decryption key generation apparatus 400 (S580). The decryption key generation device 400 records the received environment information α in the recording unit 490.

復号鍵生成装置400の復号鍵生成部410は、S580で受信した環境情報αと記録部490に記録してあるマスター鍵mkから復号鍵skを生成する(S410)。   The decryption key generation unit 410 of the decryption key generation device 400 generates the decryption key sk from the environment information α received in S580 and the master key mk recorded in the recording unit 490 (S410).

復号鍵生成装置400の送受信部480は、S410で生成した復号鍵skを復号装置500に送信する(S480)。復号装置500は、受信した復号鍵skを記録部590に記録する。   The transmission / reception unit 480 of the decryption key generation device 400 transmits the decryption key sk generated in S410 to the decryption device 500 (S480). The decryption apparatus 500 records the received decryption key sk in the recording unit 590.

復号装置500の復号部520は、S480で受信した復号鍵skを用いて、記録部590に記録した暗号文Dを復号する(S520)。環境情報αが復号条件cを満たす場合は、復号結果は正しい平文となる一方、環境情報αが復号条件cを満たさない場合は、復号結果は意味をなさないランダムな値となる。   The decryption unit 520 of the decryption apparatus 500 decrypts the ciphertext D recorded in the recording unit 590 using the decryption key sk received in S480 (S520). When the environment information α satisfies the decryption condition c, the decryption result is a correct plaintext, whereas when the environment information α does not satisfy the decryption condition c, the decryption result is a random value that does not make sense.

上記説明では、送受信部580は、必ず環境情報αを復号鍵生成装置400に送信するものとした。しかし、暗号文Dから復号条件cを抽出できる場合、送受信部580が環境情報αを復号鍵生成装置400に送信する前に、環境情報取得部510が、環境情報αが復号条件cを満たすか否かを判断し、満たす場合は送信する一方、満たさない場合は処理を中止するようにしてもよい。このようにすると、復号部520は、必ず暗号文Dから正しく平文Mを復号するようになる。   In the above description, the transmission / reception unit 580 always transmits the environment information α to the decryption key generation device 400. However, when the decryption condition c can be extracted from the ciphertext D, whether the environment information α satisfies the decryption condition c before the transmitting / receiving unit 580 transmits the environment information α to the decryption key generation device 400 It is possible to judge whether or not to transmit, when satisfying, but to stop the processing when not satisfying. In this way, the decryption unit 520 always decrypts the plaintext M correctly from the ciphertext D.

[暗号化オプション情報]
(拡張属性IDの用途の定義)
暗号化オプション情報に拡張属性IDの用途の定義を記述する場合、セットアップ処理時点では未定義となっていた拡張属性IDを利用する。
[Encryption option information]
(Definition of usage of extended attribute ID)
When describing the definition of the use of the extended attribute ID in the encryption option information, the extended attribute ID which has been undefined at the time of setup processing is used.

以下、図9を参照して、暗号化オプション情報の取り扱いについて説明する。まず、暗号化処理時点において、暗号化オプション情報opとして、例えば”ext_info1←gid”と指定する。また、復号条件cとして、例えば、{(ext_info1=GID01) OR (ext_info1=GID02)} AND (date=20170302)と指定する。暗号化装置300の暗号文生成部310は、これらの暗号化オプション情報opと復号条件cから暗号文Dを生成する。   The handling of the encryption option information will be described below with reference to FIG. First, at the time of encryption processing, for example, “ext_info1 ← gid” is specified as the encryption option information op. In addition, as the decryption condition c, for example, {(ext_info1 = GID01) OR (ext_info1 = GID02)} AND (date = 20170302) is specified. The ciphertext generation unit 310 of the encryption device 300 generates a ciphertext D from the encryption option information op and the decryption condition c.

次に、復号処理時点において、復号装置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に送信する。   Next, at the time of decryption processing, the environment information acquisition unit 510 of the decryption apparatus 500 acquires the value of the attribute ID “gid” based on the encryption option information op “ext_info 1 g gid” used for generating the ciphertext D. Do. Since the attribute ID "gid" is a standard attribute ID, for example, a method defined at the system design stage is used as a method of acquiring the attribute value. If the standard attribute ID is not used, an acquisition method when defining the application of the extended attribute ID is used. When the value acquired by the predetermined method is "GID02" as described above, "ext_info1 = GID02" is obtained. Similarly, regarding the attribute ID "date", when the acquired value is "20170302", "date = 20170302" is obtained. The transmission / reception unit 580 of the decryption apparatus 500 transmits “ext_info1 = GID02” and “date = 20170302” to the decryption key generation apparatus 400 as the environment information α.

復号鍵生成装置400の復号鍵生成部410は、環境情報α”ext_info1= GID02”、”date=20170302”とマスター鍵mkから復号鍵skを生成する。復号鍵生成装置400の送受信部480は、復号鍵skを復号装置500に送信する。   The decryption key generation unit 410 of the decryption key generation device 400 generates the decryption key sk from the environment information α′′ext_info1 = GID02 ′ ′ and “date = 20170302” and the master key mk. The transmission / reception unit 480 of the decryption key generation device 400 transmits the decryption key sk to the decryption device 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は、意味をなさないランダムな値を生成することになる。   The decryption unit 520 of the decryption apparatus 500 decrypts the ciphertext D using the decryption key sk. In this case, the decryption condition c is {(ext_info1 = GID01) OR (ext_info1 = GID02)} AND (date = 20170302), and the decryption key sk is generated from the environment information α "ext_info1 = GID02", "date = 20170302" The plaintext is correctly decrypted. On the other hand, for example, when the decryption key sk is generated with the environment information α as “ext_info1 = GID03”, “date = 20170302”, the decryption unit 520 does not make sense because the decryption condition c is not satisfied. It will generate a value.

このように、セットアップ処理時点で未定義になっていた拡張属性IDの用途を暗号化オプション情報に定義することにより、拡張属性IDを用いて復号条件を指定することが可能となるため、システムパラメータの再生成が不要となる。   As described above, by defining the purpose of the extended attribute ID that was undefined at the setup processing time in the encryption option information, it becomes possible to specify the decryption condition using the extended attribute ID, so system parameters There is no need to regenerate the

先述の例では、1つの拡張属性ID”ext_info1”を用いて暗号化オプション情報op”ext_info1←gid”を指定していたが、システムが許容する数、つまりセットアップ処理時に指定した拡張属性IDの数を限度として、複数の拡張属性IDの用途の定義を暗号化オプション情報に記述することもできる。   In the previous example, encryption option information op "ext_info1 1 gid" was specified using one extended attribute ID "ext_info1", but the number allowed by the system, that is, the number of extended attribute IDs specified during setup processing The definition of usage of multiple extended attribute IDs can also be described in the encryption option information.

(属性IDの属性値の取得方法の指定)
暗号化オプション情報に属性IDの属性値の取得方法の指定を記述する場合、標準属性IDまたは拡張属性IDを利用する。
(Specification of acquisition method of attribute value of attribute ID)
When specifying the acquisition method of the attribute value of the attribute ID in the encryption option information, the standard attribute ID or the extended attribute ID is used.

以下、図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を生成する。   Hereinafter, the handling of the encryption option information will be described with reference to FIG. First, at the time of encryption processing, for example, “ext_info1 ← gid” and “ext_info1 ← http: //xxx.com” are designated as the encryption option information op. In addition, as the decryption condition c, for example, {(ext_info1 = GID01) OR (ext_info1 = GID02)} AND (date = 20170302) is specified. The ciphertext generation unit 310 of the encryption device 300 generates a ciphertext D from the encryption option information op and the decryption condition c.

次に、復号処理時点において、復号装置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に送信する。   Next, at the time of decryption processing, the environment information acquisition unit 510 of the decryption apparatus 500 sets the value of the attribute ID “gid” based on “ext_info1 ← gid” of the encryption option information op used to generate the ciphertext D. get. Here, since “ext_info1 ← http: //xxx.com” is specified in the encryption option information op, instead of acquiring the value of the attribute ID “gid” by the default method, the external web server “http” is obtained. Get from: xxx.com If this value is "GID01", then "ext_info1 = GID01". Similarly, regarding the attribute ID "date", when the acquired value is "20170302", "date = 20170302" is obtained. The transmission / reception unit 580 of the decryption apparatus 500 transmits “ext_info1 = GID01” and “date = 20170302” to the decryption key generation apparatus 400 as the environment information α.

復号鍵生成装置400の復号鍵生成部410は、環境情報α”ext_info1= GID01”、”date=20170302”とマスター鍵mkから復号鍵skを生成する。復号鍵生成装置400の送受信部480は、復号鍵skを復号装置500に送信する。   The decryption key generation unit 410 of the decryption key generation device 400 generates the decryption key sk from the environment information α′′ext_info1 = GID01 ′ ′ and “date = 20170302 ′ ′ and the master key mk. The transmission / reception unit 480 of the decryption key generation device 400 transmits the decryption key sk to the decryption device 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は、意味をなさないランダムな値を生成することになる。   The decryption unit 520 of the decryption apparatus 500 decrypts the ciphertext D using the decryption key sk. In this case, the decryption condition c is {(ext_info1 = GID01) OR (ext_info1 = GID02)} AND (date = 20170302), and the decryption key is generated from the environment information α "ext_info1 = GID01" and "date = 020170302" The plaintext is correctly decrypted because On the other hand, for example, when the decryption key sk is generated with the environment information α as “ext_info1 = GID04” and “date = 20170302”, the decryption unit 520 does not make sense because the decryption condition c is not satisfied. It will generate a value.

このように、セットアップ処理時点で未定義になっていた拡張属性IDの用途を暗号化オプション情報に定義するとともに、その属性値の取得方法の指定を暗号化オプション情報に定義することにより、拡張属性IDを用いて復号条件を指定することが可能となるため、システムパラメータの再生成やシステムの改修が不要となる。   Thus, while defining the use of the extended attribute ID that was undefined at the setup processing time in the encryption option information and defining the specification method of acquiring the attribute value in the encryption option information, the extended attribute is defined. Since the ID can be used to specify a decryption condition, there is no need to regenerate system parameters or modify the system.

ここで説明した例のように、1つの拡張属性IDを複数回用いて暗号化オプション情報を記述することもできる。   As in the example described here, one extended attribute ID can be used multiple times to describe encryption option information.

また、取得先として信頼できる外部のWebサーバを指定すれば、既定の方法により取得する値よりも信頼できる値を取得できるようにもなる。   In addition, if an external web server that can be trusted is specified as an acquisition destination, it becomes possible to acquire a value that is more reliable than a value acquired by a predetermined method.

取得先である外部のWebサーバが複数の属性値を保持している場合、そのうちどれを取得するのかを指定するため補助的な情報を暗号化オプション情報に指定できるようにしてもよい。例えば、地域により異なる時間情報については、地域名を補助的な情報として指定したうえで、属性“時間情報”の値を取得するようにすることで、その地域の時間情報が取得できるようになる。   When an external Web server which is an acquisition destination holds a plurality of attribute values, auxiliary information may be specified as encryption option information in order to specify which one of them is to be acquired. For example, for time information that varies depending on the area, specifying the area name as supplementary information and acquiring the value of the attribute “time information” makes it possible to acquire time information of the area. .

[その他]
暗号化オプション情報を暗号化データのヘッダ情報として付与することにより、暗号化データと暗号化オプション情報の組として暗号文を生成することができる。この場合、ヘッダ情報を解析され、暗号化オプション情報が改ざんされる可能性がある。改ざんされた場合、暗号装置300のユーザが意図しない環境情報の取得が行われ、ユーザが意図しない復号鍵の生成が行われてしまうかもしれない。
[Others]
By giving encryption option information as header information of encryption data, a ciphertext can be generated as a set of encryption data and encryption option information. In this case, the header information may be analyzed and the encryption option information may be falsified. In the case of tampering, acquisition of environment information unintended by the user of the cryptographic device 300 may be performed, and generation of a decryption key unintended by the user may be performed.

そこで、暗号化オプション情報の改ざんを検知した場合に復号処理を停止する機能を付加し、改ざんによる不正な復号を防止するようにする。改ざん検知機能は、例えば、ハッシュ値を利用して実現できる。暗号装置300の暗号文生成部310が暗号文を生成する際、暗号化オプション情報とあわせて、暗号化オプション情報のハッシュ値を取り、暗号化データに付与し、暗号文を生成する。復号装置500の環境情報取得部510は、暗号文に含まれる暗号化オプション情報とそのハッシュ値から暗号化オプション情報が改ざんされていないかの検証を行う。改ざんされている場合は処理を停止する一方、改ざんされていない場合は先述のように環境情報を取得する。このようにすることにより、暗号装置300のユーザが意図しない復号鍵の生成を防ぐことが可能となる。   Therefore, when tampering of the encryption option information is detected, a function to stop the decryption processing is added to prevent unauthorized decryption due to the tampering. The tampering detection function can be realized, for example, using a hash value. When the ciphertext generation unit 310 of the encryption apparatus 300 generates a ciphertext, a hash value of the encryption option information is taken together with the encryption option information, and is added to the encrypted data to generate a ciphertext. The environment information acquisition unit 510 of the decryption apparatus 500 verifies from the encryption option information included in the ciphertext and the hash value whether the encryption option information has been tampered with. If it is tampered with, the process is stopped, and if it is not tampered with, environmental information is acquired as described above. By doing this, it is possible to prevent the generation of the decryption key that the user of the encryption device 300 does not intend.

本発明によれば、暗号化オプション情報を用いることにより、システムに手を加えることなく、属性IDや属性値取得方法を追加することが可能となる。   According to the present invention, by using the encryption option information, it is possible to add an attribute ID and an attribute value acquiring method without modifying the system.

<補記>
本発明の装置は、例えば単一のハードウェアエンティティとして、キーボードなどが接続可能な入力部、液晶ディスプレイなどが接続可能な出力部、ハードウェアエンティティの外部に通信可能な通信装置(例えば通信ケーブル)が接続可能な通信部、CPU(Central Processing Unit、キャッシュメモリやレジスタなどを備えていてもよい)、メモリであるRAMやROM、ハードディスクである外部記憶装置並びにこれらの入力部、出力部、通信部、CPU、RAM、ROM、外部記憶装置の間のデータのやり取りが可能なように接続するバスを有している。また必要に応じて、ハードウェアエンティティに、CD−ROMなどの記録媒体を読み書きできる装置(ドライブ)などを設けることとしてもよい。このようなハードウェア資源を備えた物理的実体としては、汎用コンピュータなどがある。
<Supplementary Note>
The apparatus according to the present invention is, for example, an input unit to which a keyboard or the like can be connected, an output unit to which a liquid crystal display or the like can be connected as a single hardware entity, or a communication apparatus (eg, communication cable) capable of communicating outside the hardware entity. Communication unit that can be connected, CPU (central processing unit, cache memory, registers, etc. may be provided), RAM or ROM that is memory, external storage device that is hard disk, input unit for these, output unit, communication unit , CPU, RAM, ROM, and a bus connected so as to enable exchange of data between external storage devices. If necessary, the hardware entity may be provided with a device (drive) capable of reading and writing a recording medium such as a CD-ROM. Examples of physical entities provided with such hardware resources include general purpose computers.

ハードウェアエンティティの外部記憶装置には、上述の機能を実現するために必要となるプログラムおよびこのプログラムの処理において必要となるデータなどが記憶されている(外部記憶装置に限らず、例えばプログラムを読み出し専用記憶装置であるROMに記憶させておくこととしてもよい)。また、これらのプログラムの処理によって得られるデータなどは、RAMや外部記憶装置などに適宜に記憶される。   The external storage device of the hardware entity stores a program necessary for realizing the above-mentioned function, data required for processing the program, and the like (not limited to the external storage device, for example, the program is read) It may be stored in the ROM which is a dedicated storage device). In addition, data and the like obtained by the processing of these programs are appropriately stored in a RAM, an external storage device, and the like.

ハードウェアエンティティでは、外部記憶装置(あるいはROMなど)に記憶された各プログラムとこの各プログラムの処理に必要なデータが必要に応じてメモリに読み込まれて、適宜にCPUで解釈実行・処理される。その結果、CPUが所定の機能(上記、…部、…手段などと表した各構成要件)を実現する。   In the hardware entity, each program stored in the external storage device (or ROM etc.) and data necessary for processing of each program are read into the memory as necessary, and interpreted and processed appropriately by the CPU . As a result, the CPU realizes predetermined functions (each component requirement expressed as the above-mentioned,...

本発明は上述の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。また、上記実施形態において説明した処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されるとしてもよい。   The present invention is not limited to the above-described embodiment, and various modifications can be made without departing from the spirit of the present invention. Further, the processing described in the above embodiment may be performed not only in chronological order according to the order of description but also may be performed in parallel or individually depending on the processing capability of the device that executes the processing or the necessity. .

既述のように、上記実施形態において説明したハードウェアエンティティ(本発明の装置)における処理機能をコンピュータによって実現する場合、ハードウェアエンティティが有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記ハードウェアエンティティにおける処理機能がコンピュータ上で実現される。   As described above, when the processing function in the hardware entity (the apparatus of the present invention) described in the above embodiment is implemented by a computer, the processing content of the function that the hardware entity should have is described by a program. Then, by executing this program on a computer, the processing function of the hardware entity is realized on the computer.

この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、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)等を用いることができる。   The program describing the processing content can be recorded in a computer readable recording medium. As the computer readable recording medium, any medium such as a magnetic recording device, an optical disc, a magneto-optical recording medium, a semiconductor memory, etc. may be used. Specifically, for example, as a magnetic recording device, a hard disk device, a flexible disk, a magnetic tape or the like as an optical disk, a DVD (Digital Versatile Disc), a DVD-RAM (Random Access Memory), a CD-ROM (Compact Disc Read Only) Memory), CD-R (Recordable) / RW (Rewritable), etc. as magneto-optical recording medium, MO (Magneto-Optical disc) etc., as semiconductor memory EEP-ROM (Electronically Erasable and Programmable Only Read Memory) etc. Can be used.

また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD−ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。   Further, this program is distributed, for example, by selling, transferring, lending, etc. a portable recording medium such as a DVD, a CD-ROM or the like in which the program is recorded. Furthermore, this program may be stored in a storage device of a server computer, and the program may be distributed by transferring the program from the server computer to another computer via a network.

このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。   For example, a computer that executes such a program first temporarily stores a program recorded on a portable recording medium or a program transferred from a server computer in its own storage device. Then, at the time of execution of the process, the computer reads the program stored in its own recording medium and executes the process according to the read program. Further, as another execution form of this program, the computer may read the program directly from the portable recording medium and execute processing according to the program, and further, the program is transferred from the server computer to this computer Each time, processing according to the received program may be executed sequentially. In addition, a configuration in which the above-described processing is executed by a so-called ASP (Application Service Provider) type service that realizes processing functions only by executing instructions and acquiring results from the server computer without transferring the program to the computer It may be Note that the program in the present embodiment includes information provided for processing by a computer that conforms to the program (such as data that is not a direct command to the computer but has a property that defines the processing of the computer).

また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、ハードウェアエンティティを構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。   Further, in this embodiment, the hardware entity is configured by executing a predetermined program on a computer, but at least a part of the processing content may be realized as hardware.

Claims (7)

M、Nを1以上の整数、標準属性IDを用途が既に定義されている属性ID、拡張属性IDを用途が未定義である属性ID、属性IDリストをM個の標準属性IDとN個の拡張属性IDからなるリストとし、
システムパラメータ生成装置、暗号化装置、復号鍵生成装置、復号装置を含む暗号処理システムが、暗号化、復号を行う暗号処理方法であって、
前記暗号化装置は、前記システムパラメータ生成装置が前記属性IDリストから生成した公開パラメータを記録しており、
前記復号鍵生成装置は、前記システムパラメータ生成装置が前記属性IDリストから生成したマスター鍵を記録しており、
復号条件を前記属性IDリストに含まれる標準属性IDまたは拡張属性IDを用いた原始的な論理式を論理演算子により結合した論理式、暗号化オプション情報を前記属性IDリストに含まれる属性IDを用いて指定される情報とし、
前記暗号化装置が、前記公開パラメータを用いて、平文と前記復号条件と前記暗号化オプション情報から暗号文を生成する暗号文生成ステップと、
前記復号装置が、前記暗号化装置から受信した前記暗号文の生成に用いた前記暗号化オプション情報を用いて、前記暗号文の生成に用いた前記復号条件で用いられている属性IDとその値である環境情報を取得する環境情報取得ステップと、
前記復号鍵生成装置が、前記復号装置から受信した前記環境情報と前記マスター鍵から復号鍵を生成する復号鍵生成ステップと、
前記復号装置が、前記復号鍵生成装置から受信した前記復号鍵を用いて、前記暗号文を復号する復号ステップと
を含む暗号処理方法。
M, N is an integer of 1 or more, Standard attribute ID is an attribute ID whose application is already defined, Extended attribute ID is an attribute ID whose application is undefined, attribute ID list is M standard attribute IDs and N pieces A list of extended attribute IDs,
A cryptographic processing system including a system parameter generation device, an encryption device, a decryption key generation device, and a decryption device is a cryptographic processing method for performing encryption and decryption,
The encryption device records public parameters generated by the system parameter generation device from the attribute ID list,
The decryption key generation device records a master key generated by the system parameter generation device from the attribute ID list,
A logical expression in which a primitive logical expression using a standard attribute ID or an extended attribute ID included in the attribute ID list as a decryption condition is connected by a logical operator, an encryption ID information is included in the attribute ID list Information to be specified using
A ciphertext generation step of generating a ciphertext from the plaintext, the decryption condition, and the encryption option information using the public parameter;
The attribute ID used in the decryption condition used for generating the ciphertext and the value thereof using the encryption option information used for generating the ciphertext received from the encryption device by the decryption device An environmental information acquisition step of acquiring environmental information which is
A decryption key generation step of the decryption key generation device generating a decryption key from the environment information received from the decryption device and the master key;
A decryption step of decrypting the ciphertext by using the decryption key received from the decryption key generation device by the decryption device.
請求項1に記載の暗号処理方法であって、
前記暗号化オプション情報は、拡張属性IDの用途を定義する記述を含むことを特徴とする暗号処理方法。
The encryption processing method according to claim 1, wherein
The encryption processing method according to claim 1, wherein the encryption option information includes a description defining an application of the extended attribute ID.
請求項1または2に記載の暗号処理方法であって、
前記暗号化オプション情報は、属性IDの属性値の取得方法を指定する記述を含むことを特徴とする暗号処理方法。
The encryption processing method according to claim 1 or 2, wherein
The encryption processing method, wherein the encryption option information includes a description specifying a method of acquiring an attribute value of the attribute ID.
M、Nを1以上の整数、標準属性IDを用途が既に定義されている属性ID、拡張属性IDを用途が未定義である属性ID、属性IDリストをM個の標準属性IDとN個の拡張属性IDからなるリストとし、
復号条件を前記属性IDリストに含まれる標準属性IDまたは拡張属性IDを用いた原始的な論理式を論理演算子により結合した論理式、暗号化オプション情報を前記属性IDリストに含まれる属性IDを用いて指定される情報とし、
システムパラメータ生成装置、暗号化装置、復号鍵生成装置、復号装置を含む暗号処理システムであって、
前記暗号化装置は、
前記システムパラメータ生成装置が前記属性IDリストから生成した公開パラメータを記録する記録部と、
前記公開パラメータを用いて、平文と前記復号条件と前記暗号化オプション情報から暗号文を生成する暗号文生成部を含み、
前記復号鍵生成装置は、
前記システムパラメータ生成装置が前記属性IDリストから生成したマスター鍵を記録する記録部と、
前記復号装置から受信した環境情報と前記マスター鍵から復号鍵を生成する復号鍵生成部を含み、
前記復号装置は、
前記暗号化装置から受信した前記暗号文の生成に用いた前記暗号化オプション情報を用いて、前記暗号文の生成に用いた前記復号条件で用いられている属性IDとその値である前記環境情報を取得する環境情報取得部と、
前記復号鍵生成装置から受信した前記復号鍵を用いて、前記暗号文を復号する復号部を含む
暗号処理システム。
M, N is an integer of 1 or more, Standard attribute ID is an attribute ID whose application is already defined, Extended attribute ID is an attribute ID whose application is undefined, attribute ID list is M standard attribute IDs and N pieces A list of extended attribute IDs,
A logical expression in which a primitive logical expression using a standard attribute ID or an extended attribute ID included in the attribute ID list as a decryption condition is connected by a logical operator, an encryption ID information is included in the attribute ID list Information to be specified using
An encryption processing system including a system parameter generation device, an encryption device, a decryption key generation device, and a decryption device,
The encryption device is
A recording unit that records the public parameter generated by the system parameter generation device from the attribute ID list;
A ciphertext generation unit that generates a ciphertext from the plaintext, the decryption condition, and the encryption option information using the public parameter;
The decryption key generation device
A recording unit that records the master key generated by the system parameter generation device from the attribute ID list;
A decryption key generation unit that generates a decryption key from the environment information received from the decryption apparatus and the master key;
The decoding device is
The attribute ID used in the decryption condition used in the generation of the ciphertext using the encryption option information used for generation of the ciphertext received from the encryption device, and the environment information that is the value thereof The environmental information acquisition unit to acquire
An encryption processing system including a decryption unit that decrypts the ciphertext using the decryption key received from the decryption key generation device.
請求項4に記載の暗号処理システムに含まれる暗号化装置。   The encryption apparatus contained in the encryption processing system of Claim 4. 請求項4に記載の暗号処理システムに含まれる復号装置。   A decryption apparatus included in the cryptographic processing system according to claim 4. 請求項5に記載の暗号化装置、請求項6に記載の復号装置のいずれかの装置としてコンピュータを機能させるためのプログラム。   A program for causing a computer to function as any one of the encryption device according to claim 5 and the decryption device according to claim 6.
JP2017082706A 2017-04-19 2017-04-19 Cryptographic processing method, cryptographic processing system, encryption device, decryption device, and program Active JP6720107B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017082706A JP6720107B2 (en) 2017-04-19 2017-04-19 Cryptographic processing method, cryptographic processing system, encryption device, decryption device, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017082706A JP6720107B2 (en) 2017-04-19 2017-04-19 Cryptographic processing method, cryptographic processing system, encryption device, decryption device, and program

Publications (2)

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

Family

ID=64276647

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017082706A Active JP6720107B2 (en) 2017-04-19 2017-04-19 Cryptographic processing method, cryptographic processing system, encryption device, decryption device, and program

Country Status (1)

Country Link
JP (1) JP6720107B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022259494A1 (en) * 2021-06-10 2022-12-15 日本電信電話株式会社 Communication system, user terminal, communication method, and communication program
WO2022259495A1 (en) * 2021-06-10 2022-12-15 日本電信電話株式会社 Communication system, user terminal, communication method and communication program
WO2023181802A1 (en) * 2022-03-24 2023-09-28 株式会社 東芝 Information transmission/reception system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022259494A1 (en) * 2021-06-10 2022-12-15 日本電信電話株式会社 Communication system, user terminal, communication method, and communication program
WO2022259495A1 (en) * 2021-06-10 2022-12-15 日本電信電話株式会社 Communication system, user terminal, communication method and communication program
WO2023181802A1 (en) * 2022-03-24 2023-09-28 株式会社 東芝 Information transmission/reception system

Also Published As

Publication number Publication date
JP6720107B2 (en) 2020-07-08

Similar Documents

Publication Publication Date Title
JP5196883B2 (en) Information security apparatus and information security system
KR100628655B1 (en) Method and system for exchanging contents between different DRM devices
JP5281074B2 (en) Information security apparatus and information security system
JP4760101B2 (en) Content providing system, content reproducing apparatus, program, and content reproducing method
KR100942992B1 (en) Method and apparatus for rights-preserving interoperability in drm
US9240882B2 (en) Key generating device and key generating method
JP2008517519A (en) Method and system for content exchange between different digital rights management domains
KR20080090672A (en) Method and apparatus for protecting digital contents stored in usb mass storage device
JP5015742B2 (en) Decryption method and apparatus for right object, and content sharing method and apparatus using the same
JP4945717B2 (en) Rights object generation method and device, rights object transmission method and device, rights object reception method and device
JP2012044577A5 (en)
JP6720107B2 (en) Cryptographic processing method, cryptographic processing system, encryption device, decryption device, and program
JP2020022057A (en) Encrypted data generation apparatus, digital signature generation apparatus, data generation apparatus with digital signature, and data generation system with digital signature
CN105187426B (en) For realizing the method and system of cross-domain access based on authentication information
JP2016129403A (en) System and method for obfuscated initial value of encrypted protocol
CN110879876B (en) System and method for issuing certificates
JP6919484B2 (en) Cryptographic communication method, cryptographic communication system, key issuing device, program
JP2012003682A (en) Access control system, access control method, authentication device and authentication system
JP2012014529A (en) Storage device and information processor
JP5337076B2 (en) Secret calculation system, secret calculation method, unauthorized use prevention method
JP2008295008A (en) Security method for information recording medium, information processing apparatus, program, and recording medium
CN111130788B (en) Data processing method and system, data reading method and iSCSI server
JP2016134722A (en) Key sharing device, key sharing system, key sharing method, program
JP6560859B2 (en) Data usage control system and method
JP6353412B2 (en) ID password authentication method, password management service system, information terminal, password management service device, user terminal, and program thereof

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