JP2019086744A - Encryption system, user system, encryption method, and encryption program - Google Patents

Encryption system, user system, encryption method, and encryption program Download PDF

Info

Publication number
JP2019086744A
JP2019086744A JP2017217331A JP2017217331A JP2019086744A JP 2019086744 A JP2019086744 A JP 2019086744A JP 2017217331 A JP2017217331 A JP 2017217331A JP 2017217331 A JP2017217331 A JP 2017217331A JP 2019086744 A JP2019086744 A JP 2019086744A
Authority
JP
Japan
Prior art keywords
key
user terminal
attribute
user
encryption
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
JP2017217331A
Other languages
Japanese (ja)
Other versions
JP6936482B2 (en
Inventor
倫宏 大平
Michihiro Ohira
倫宏 大平
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.)
Tokyo Metropolitan Industrial Technology Research Instititute (TIRI)
Original Assignee
Tokyo Metropolitan Industrial Technology Research Instititute (TIRI)
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 Tokyo Metropolitan Industrial Technology Research Instititute (TIRI) filed Critical Tokyo Metropolitan Industrial Technology Research Instititute (TIRI)
Priority to JP2017217331A priority Critical patent/JP6936482B2/en
Publication of JP2019086744A publication Critical patent/JP2019086744A/en
Application granted granted Critical
Publication of JP6936482B2 publication Critical patent/JP6936482B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

To improve the safety of an attribute base encryption.SOLUTION: A encryption system is equipped with: a key issuing mechanism; and a user system which includes a first user terminal having a first attribute including one or more attributes, and a second user terminal. The key issuing mechanism generates a first public key, and discloses the first public key. The second user terminal generates a second public key, and discloses the second public key. The key issuing mechanism generates a first secret key corresponding to the first attribute according to a request from the first user terminal, and distributes the first secret key to the first user terminal. The second user terminal generates a second secret key corresponding to the first attribute according to a request from the first user terminal, and distributes the second secret key to the first user terminal. The first user terminal generates an encryption key for encryption of an attribute-based signal by using the first public key and the second public key, and generates a first decryption key for decryption of the attribute-based encryption by using the first secret key and the second secret key.SELECTED DRAWING: Figure 1

Description

本発明は、暗号システム、ユーザシステム、暗号方法、及び暗号プログラムに関する。   The present invention relates to an encryption system, a user system, an encryption method, and an encryption program.

近年、電子ファイルの数及びサイズの増加に伴い、クラウドストレージサービスが普及している。クラウドストレージを利用するにあたり、個人情報及び機密情報を保護するために、電子ファイルに暗号化が施される。暗号方式として、属性ベース暗号が知られている(例えば、特許文献1、特許文献2、及び非特許文献1参照)。属性ベース暗号は、ユーザごとに複数の属性を付与し、ユーザの属性に基づいて設定された復号条件(ポリシー)を満たすユーザのみが暗号文を復号可能な暗号技術である。   In recent years, with the increase in the number and size of electronic files, cloud storage services have become widespread. In using cloud storage, encryption is applied to electronic files to protect personal information and confidential information. Attribute-based encryption is known as an encryption method (see, for example, Patent Document 1, Patent Document 2, and Non-Patent Document 1). The attribute-based encryption is a cryptographic technology that gives a plurality of attributes for each user and allows only a user who satisfies the decryption condition (policy) set based on the user's attribute to decrypt the ciphertext.

属性ベース暗号では、全ての暗号文を復号可能なマスタ秘密鍵を管理する必要がある。多くのシステムでは、鍵発行機関がマスタ秘密鍵を管理している。このため、クラウド上のサーバ等を用いてシステムを構築する場合、サーバでマスタ秘密鍵を管理する必要があり、本来は秘密とすべき情報がサーバの管理者等には、公開されてしまうこととなる。このような問題に対応するために、マスタ秘密鍵の管理者権限を複数の鍵発行機関に分散して配置する方法が提案されている。例えば、非特許文献1には、複数の鍵発行機関が発行する秘密鍵を組み合わせることで、暗号化鍵及び復号鍵を生成することが記載されている。   In attribute-based encryption, it is necessary to manage a master secret key that can decrypt all ciphertexts. In many systems, a key issuing authority manages the master secret key. Therefore, when constructing a system using a server or the like on the cloud, it is necessary to manage the master secret key on the server, and information that should originally be kept secret will be disclosed to the server manager or the like. It becomes. In order to cope with such a problem, a method has been proposed in which the administrator authority of the master secret key is distributed and arranged to a plurality of key issuing organizations. For example, Non-Patent Document 1 describes that an encryption key and a decryption key are generated by combining secret keys issued by a plurality of key issuing organizations.

特表2014−531850号公報Japanese Patent Application Publication No. 2014-531850 特開2017−126851号公報JP, 2017-126851, A

Huang Lin,Zhenfu Cao,Xiaohui Liang,Jun Shao,“Secure Threshold Multi Authority Attribute Based Encryption without a Central Authority”,Progress in Cryptology - INDOCRYPT 2008,pp 426−436Huang Lin, Zhenfu Cao, Xiaohui Liang, Jun Shao, "Secure Threshold Multi-Authority Attribute Based Encryption Without a Central Authority", Progress in Cryptology-INDOCRYPT 2008, pp 426-436

しかしながら、非特許文献1に記載のシステムにおいて、複数の鍵発行機関が結託した場合には、全ての暗号文を復号できることとなる。このため、本技術分野では、さらなる安全性の向上が望まれている。   However, in the system described in Non-Patent Document 1, when a plurality of key issuing organizations collude, all ciphertexts can be decrypted. For this reason, further improvement of safety is desired in this technical field.

本発明の一側面に係る暗号システムは、属性ベース暗号を用いたシステムである。この暗号システムは、鍵発行機関と、1以上の属性を含む第1属性を有する第1ユーザ端末及び第2ユーザ端末を含むユーザシステムと、を備える。鍵発行機関は、第1公開鍵を生成するとともに、第1公開鍵を公開する。第2ユーザ端末は、第2公開鍵を生成するとともに、第2公開鍵を公開する。第1ユーザ端末は、第1属性に応じた第1秘密鍵を鍵発行機関に要求するとともに、第1属性に応じた第2秘密鍵を第2ユーザ端末に要求する。鍵発行機関は、第1ユーザ端末からの要求に応じて、第1秘密鍵を生成して第1秘密鍵を第1ユーザ端末に配布する。第2ユーザ端末は、第1ユーザ端末からの要求に応じて、第2秘密鍵を生成して第2秘密鍵を第1ユーザ端末に配布する。第1ユーザ端末は、第1公開鍵及び第2公開鍵を用いて属性ベース暗号の暗号化用の暗号化鍵を生成し、第1秘密鍵及び第2秘密鍵を用いて属性ベース暗号の復号用の第1復号鍵を生成する。   An encryption system according to an aspect of the present invention is a system using attribute-based encryption. The cryptographic system comprises a key issuing authority and a user system comprising a first user terminal having a first attribute comprising one or more attributes and a second user terminal. The key issuing organization generates the first public key and makes the first public key public. The second user terminal generates a second public key and makes the second public key public. The first user terminal requests the key issuing organization for the first secret key corresponding to the first attribute and also requests the second user key for the second secret key corresponding to the first attribute. The key issuing organization generates a first secret key and distributes the first secret key to the first user terminal in response to a request from the first user terminal. The second user terminal generates a second secret key and distributes the second secret key to the first user terminal in response to a request from the first user terminal. The first user terminal generates an encryption key for attribute-based encryption encryption using the first public key and the second public key, and decrypts the attribute-based encryption using the first secret key and the second secret key. Generating a first decryption key for the

この暗号システムでは、第1ユーザ端末は、鍵発行機関によって生成された第1公開鍵とユーザシステム内の第2ユーザ端末によって生成された第2公開鍵とを用いて属性ベース暗号の暗号化用の暗号化鍵を生成する。第1ユーザ端末は、鍵発行機関によって生成された第1秘密鍵とユーザシステム内の第2ユーザ端末によって生成された第2秘密鍵とを用いて属性ベース暗号の復号用の第1復号鍵を生成する。このように、鍵発行機関としての役割をユーザシステム内の第2ユーザ端末が担うことにより、鍵発行機関が結託することによって暗号文が復号される可能性を低減することができる。その結果、属性ベース暗号の安全性を向上させることが可能となる。   In this encryption system, the first user terminal uses the first public key generated by the key issuing organization and the second public key generated by the second user terminal in the user system for encryption of attribute-based encryption. Generate an encryption key for The first user terminal uses the first secret key generated by the key issuing organization and the second secret key generated by the second user terminal in the user system to generate a first decryption key for attribute based encryption. Generate As described above, the second user terminal in the user system plays a role as a key issuing organization, which can reduce the possibility of decryption of a ciphertext by collusion by the key issuing organization. As a result, it is possible to improve the security of attribute-based encryption.

第2ユーザ端末は、1以上の属性を含む第2属性を有してもよい。第2ユーザ端末は、第2属性に応じた第3秘密鍵を鍵発行機関に要求するとともに、第2属性に応じた第4秘密鍵を生成してもよい。鍵発行機関は、第2ユーザ端末からの要求に応じて、第3秘密鍵を生成して第3秘密鍵を第2ユーザ端末に配布してもよい。第2ユーザ端末は、第1公開鍵及び第2公開鍵を用いて暗号化鍵を生成してもよく、第3秘密鍵及び第4秘密鍵を用いて属性ベース暗号の復号用の第2復号鍵を生成してもよい。この場合、第2ユーザ端末は、鍵発行機関によって生成された第1公開鍵と第2ユーザ端末自身が生成した第2公開鍵とを用いて属性ベース暗号の暗号化用の暗号化鍵を生成する。第2ユーザ端末は、鍵発行機関によって生成された第3秘密鍵と第2ユーザ端末自身が生成した第4秘密鍵とを用いて属性ベース暗号の復号用の第2復号鍵を生成する。このように、鍵発行機関としての役割をユーザシステム内の第2ユーザ端末が担うことにより、鍵発行機関が結託することによって暗号文が復号される可能性を低減することができる。その結果、属性ベース暗号の安全性を向上させることが可能となる。   The second user terminal may have a second attribute that includes one or more attributes. The second user terminal may request the key issuing organization for a third secret key corresponding to the second attribute, and may generate a fourth secret key corresponding to the second attribute. The key issuing organization may generate a third secret key and distribute the third secret key to the second user terminal in response to a request from the second user terminal. The second user terminal may generate an encryption key using the first public key and the second public key, and may use the third secret key and the fourth secret key to perform second decryption for attribute-based encryption. You may generate a key. In this case, the second user terminal generates an encryption key for encryption of attribute-based encryption using the first public key generated by the key issuing organization and the second public key generated by the second user terminal itself. Do. The second user terminal generates a second decryption key for decryption of the attribute-based encryption using the third secret key generated by the key issuing organization and the fourth secret key generated by the second user terminal itself. As described above, the second user terminal in the user system plays a role as a key issuing organization, which can reduce the possibility of decryption of a ciphertext by collusion by the key issuing organization. As a result, it is possible to improve the security of attribute-based encryption.

暗号システムは、別の鍵発行機関をさらに備えてもよい。第2ユーザ端末は、ユーザシステムで用いられる複数の属性のうちの1以上の属性を委譲属性の集合として別の鍵発行機関に委譲してもよい。第1ユーザ端末は、第1属性が委譲属性の集合に含まれる場合には、第2秘密鍵を別の鍵発行機関に要求してもよい。別の鍵発行機関は、第1ユーザ端末からの要求に応じて、第2秘密鍵を生成して第2秘密鍵を第1ユーザ端末に配布してもよい。この場合、第2ユーザ端末は、委譲属性に関する秘密鍵の生成及び配布を行う必要がなくなるので、第2ユーザ端末のユーザの負担を軽減することができる。   The cryptographic system may further comprise another key issuing authority. The second user terminal may delegate one or more of the plurality of attributes used in the user system to another key issuing organization as a set of delegation attributes. The first user terminal may request the second secret key from another key issuing organization if the first attribute is included in the set of delegation attributes. Another key issuing organization may generate a second secret key and distribute the second secret key to the first user terminal in response to a request from the first user terminal. In this case, since the second user terminal does not have to generate and distribute the secret key related to the transfer attribute, the burden on the user of the second user terminal can be reduced.

本発明の別の側面に係るユーザシステムは、1以上の属性を含む第1属性を有する第1ユーザ端末と第2ユーザ端末とを含み、属性ベース暗号を利用するシステムである。第1ユーザ端末は、外部の鍵発行機関によって生成された第1公開鍵と第2ユーザ端末によって生成された第2公開鍵とを取得して、第1公開鍵及び第2公開鍵を用いて属性ベース暗号の暗号化用の暗号化鍵を生成する。第1ユーザ端末は、第1属性に応じた第1秘密鍵を鍵発行機関に要求するとともに、第1属性に応じた第2秘密鍵を第2ユーザ端末に要求する。第1ユーザ端末は、第1秘密鍵を鍵発行機関から取得し、第2秘密鍵を第2ユーザ端末から取得し、第1秘密鍵及び第2秘密鍵を用いて属性ベース暗号の復号用の第1復号鍵を生成する。   A user system according to another aspect of the present invention is a system that includes an attribute-based encryption including a first user terminal having a first attribute including one or more attributes and a second user terminal. The first user terminal acquires the first public key generated by the external key issuing organization and the second public key generated by the second user terminal, and uses the first public key and the second public key. Generate an encryption key for attribute based encryption. The first user terminal requests the key issuing organization for the first secret key corresponding to the first attribute and also requests the second user key for the second secret key corresponding to the first attribute. The first user terminal acquires the first secret key from the key issuing organization, acquires the second secret key from the second user terminal, and uses the first secret key and the second secret key to decrypt the attribute-based encryption. Generate a first decryption key.

このユーザシステムでは、第1ユーザ端末は、外部の鍵発行機関によって生成された第1公開鍵とユーザシステム内の第2ユーザ端末によって生成された第2公開鍵とを用いて属性ベース暗号の暗号化用の暗号化鍵を生成する。第1ユーザ端末は、外部の鍵発行機関から取得した第1秘密鍵とユーザシステム内の第2ユーザ端末から取得した第2秘密鍵とを用いて属性ベース暗号の復号用の第1復号鍵を生成する。このように、鍵発行機関としての役割をユーザシステム内の第2ユーザ端末が担うことにより、鍵発行機関が結託することによって暗号文が復号される可能性を低減することができる。その結果、属性ベース暗号の安全性を向上させることが可能となる。   In this user system, the first user terminal uses the first public key generated by an external key issuing organization and the second public key generated by the second user terminal in the user system to encrypt attribute-based encryption. An encryption key for encryption. The first user terminal uses the first secret key acquired from the external key issuing organization and the second secret key acquired from the second user terminal in the user system to generate a first decryption key for attribute-based encryption. Generate As described above, the second user terminal in the user system plays a role as a key issuing organization, which can reduce the possibility of decryption of a ciphertext by collusion by the key issuing organization. As a result, it is possible to improve the security of attribute-based encryption.

第2ユーザ端末は、1以上の属性を含む第2属性を有してもよい。第2ユーザ端末は、第2属性に応じた第3秘密鍵を鍵発行機関に要求するとともに、第2属性に応じた第4秘密鍵を生成してもよい。第2ユーザ端末は、第1公開鍵及び第2公開鍵を用いて暗号化鍵を生成してもよい。第2ユーザ端末は、第3秘密鍵を鍵発行機関から取得して、第3秘密鍵及び第4秘密鍵を用いて属性ベース暗号の復号用の第2復号鍵を生成してもよい。この場合、第2ユーザ端末は、外部の鍵発行機関によって生成された第1公開鍵と第2ユーザ端末自身によって生成された第2公開鍵とを用いて属性ベース暗号の暗号化用の暗号化鍵を生成する。また、第2ユーザ端末は、外部の鍵発行機関から取得した第3秘密鍵と第2ユーザ端末自身が生成した第4秘密鍵とを用いて属性ベース暗号の復号用の第2復号鍵を生成する。このように、鍵発行機関としての役割をユーザシステム内の第2ユーザ端末が担うことにより、鍵発行機関が結託することによって暗号文が復号される可能性を低減することができる。その結果、属性ベース暗号の安全性を向上させることが可能となる。   The second user terminal may have a second attribute that includes one or more attributes. The second user terminal may request the key issuing organization for a third secret key corresponding to the second attribute, and may generate a fourth secret key corresponding to the second attribute. The second user terminal may generate the encryption key using the first public key and the second public key. The second user terminal may obtain the third secret key from the key issuing authority, and generate the second decryption key for decryption of the attribute-based encryption using the third secret key and the fourth secret key. In this case, the second user terminal encrypts for encryption of attribute-based encryption using the first public key generated by the external key issuing organization and the second public key generated by the second user terminal itself. Generate a key. Also, the second user terminal generates a second decryption key for attribute-based encryption decryption using the third secret key acquired from the external key issuing organization and the fourth secret key generated by the second user terminal itself. Do. As described above, the second user terminal in the user system plays a role as a key issuing organization, which can reduce the possibility of decryption of a ciphertext by collusion by the key issuing organization. As a result, it is possible to improve the security of attribute-based encryption.

第2ユーザ端末は、ユーザシステムで用いられる複数の属性のうちの1以上の属性を委譲属性の集合として別の鍵発行機関に委譲してもよい。第1ユーザ端末は、第1属性が委譲属性の集合に含まれる場合には、第2秘密鍵を別の鍵発行機関に要求してもよい。この場合、第2ユーザ端末は、委譲属性に関する秘密鍵の生成及び配布を行う必要がなくなるので、第2ユーザ端末のユーザの負担を軽減することができる。   The second user terminal may delegate one or more of the plurality of attributes used in the user system to another key issuing organization as a set of delegation attributes. The first user terminal may request the second secret key from another key issuing organization if the first attribute is included in the set of delegation attributes. In this case, since the second user terminal does not have to generate and distribute the secret key related to the transfer attribute, the burden on the user of the second user terminal can be reduced.

本発明のさらに別の側面に係る暗号方法は、1以上の属性を含む第1属性を有する第1ユーザ端末と第2ユーザ端末とを含み、属性ベース暗号を利用するユーザシステムにおいて、第1ユーザ端末が行う暗号方法である。この暗号方法は、外部の鍵発行機関によって生成された第1公開鍵と第2ユーザ端末によって生成された第2公開鍵とを取得するステップと、第1公開鍵及び第2公開鍵を用いて属性ベース暗号の暗号化用の暗号化鍵を生成するステップと、第1属性に応じた第1秘密鍵を鍵発行機関に要求するとともに、第1属性に応じた第2秘密鍵を第2ユーザ端末に要求するステップと、第1秘密鍵を鍵発行機関から取得し、第2秘密鍵を第2ユーザ端末から取得するステップと、第1秘密鍵及び第2秘密鍵を用いて属性ベース暗号の復号用の第1復号鍵を生成するステップと、を備える。   An encryption method according to still another aspect of the present invention includes a first user terminal having a first attribute including one or more attributes and a second user terminal, and in a user system using attribute-based encryption, the first user terminal It is an encryption method performed by the terminal. This encryption method comprises the steps of acquiring a first public key generated by an external key issuing organization and a second public key generated by a second user terminal, and using the first public key and the second public key. Generating an encryption key for encryption of attribute-based encryption; requesting a first private key according to the first attribute from the key issuing organization; and generating a second private key according to the first attribute as the second user The step of requesting the terminal, the step of acquiring the first secret key from the key issuing organization, and the step of acquiring the second secret key from the second user terminal, and the attribute-based encryption using the first secret key and the second secret key Generating a first decryption key for decryption.

この暗号方法では、第1ユーザ端末は、外部の鍵発行機関によって生成された第1公開鍵とユーザシステム内の第2ユーザ端末によって生成された第2公開鍵とを用いて属性ベース暗号の暗号化用の暗号化鍵を生成する。第1ユーザ端末は、外部の鍵発行機関から取得した第1秘密鍵とユーザシステム内の第2ユーザ端末から取得した第2秘密鍵とを用いて属性ベース暗号の復号用の第1復号鍵を生成する。このように、鍵発行機関としての役割をユーザシステム内の第2ユーザ端末が担うことにより、鍵発行機関が結託することによって暗号文が復号される可能性を低減することができる。その結果、属性ベース暗号の安全性を向上させることが可能となる。   In this encryption method, the first user terminal uses the first public key generated by an external key issuing organization and the second public key generated by the second user terminal in the user system to encrypt attribute-based encryption. An encryption key for encryption. The first user terminal uses the first secret key acquired from the external key issuing organization and the second secret key acquired from the second user terminal in the user system to generate a first decryption key for attribute-based encryption. Generate As described above, the second user terminal in the user system plays a role as a key issuing organization, which can reduce the possibility of decryption of a ciphertext by collusion by the key issuing organization. As a result, it is possible to improve the security of attribute-based encryption.

本発明のさらに別の側面に係る暗号プログラムは、コンピュータに、外部の鍵発行機関によって生成された第1公開鍵と、コンピュータとともにユーザシステムに属するユーザ端末によって生成された第2公開鍵と、を取得するステップと、第1公開鍵及び第2公開鍵を用いて属性ベース暗号の暗号化用の暗号化鍵を生成するステップと、コンピュータの1以上の属性を含む第1属性に応じた第1秘密鍵を鍵発行機関に要求するとともに、第1属性に応じた第2秘密鍵をユーザ端末に要求するステップと、第1秘密鍵を鍵発行機関から取得し、第2秘密鍵をユーザ端末から取得するステップと、第1秘密鍵及び第2秘密鍵を用いて属性ベース暗号の復号用の第1復号鍵を生成するステップと、を実行させるための暗号プログラムである。   An encryption program according to still another aspect of the present invention includes a computer, a first public key generated by an external key issuing organization, and a second public key generated by a user terminal belonging to a user system together with the computer. Obtaining, generating an encryption key for encryption of attribute-based encryption using the first public key and the second public key, and a first according to a first attribute including one or more attributes of the computer. Requesting a secret key from the key issuing organization, and requesting a second secret key corresponding to the first attribute from the user terminal, acquiring the first secret key from the key issuing authority, and obtaining the second secret key from the user terminal It is an encryption program for executing the step of acquiring and the step of generating a first decryption key for decryption of attribute-based encryption using the first secret key and the second secret key.

この暗号プログラムでは、コンピュータは、外部の鍵発行機関によって生成された第1公開鍵とユーザシステム内のユーザ端末によって生成された第2公開鍵とを用いて属性ベース暗号の暗号化用の暗号化鍵を生成する。コンピュータは、外部の鍵発行機関から取得した第1秘密鍵とユーザシステム内のユーザ端末から取得した第2秘密鍵とを用いて属性ベース暗号の復号用の第1復号鍵を生成する。このように、鍵発行機関としての役割をユーザシステム内のユーザ端末が担うことにより、鍵発行機関が結託することによって暗号文が復号される可能性を低減することができる。その結果、属性ベース暗号の安全性を向上させることが可能となる。   In this encryption program, the computer encrypts for encryption of attribute-based encryption using the first public key generated by the external key issuing organization and the second public key generated by the user terminal in the user system. Generate a key. The computer generates a first decryption key for decryption of the attribute-based encryption using the first secret key acquired from the external key issuing organization and the second secret key acquired from the user terminal in the user system. As described above, when the user terminal in the user system plays a role as a key issuing organization, it is possible to reduce the possibility that a ciphertext is decrypted by collusion by the key issuing organization. As a result, it is possible to improve the security of attribute-based encryption.

本発明によれば、属性ベース暗号の安全性を向上させることができる。   According to the present invention, the security of attribute-based encryption can be improved.

図1は、一実施形態に係る暗号システムの構成を示す図である。FIG. 1 is a diagram showing the configuration of a cryptographic system according to an embodiment. 図2は、属性ベース暗号で用いられるアクセス構造の一例を示す図である。FIG. 2 is a diagram showing an example of an access structure used in attribute-based encryption. 図3は、図1に示される暗号システムにおける初期設定処理を示すシーケンス図である。FIG. 3 is a sequence diagram showing an initial setting process in the cryptographic system shown in FIG. 図4は、図1に示される暗号システムにおける暗号化鍵生成処理を示すシーケンス図である。FIG. 4 is a sequence diagram showing an encryption key generation process in the encryption system shown in FIG. 図5は、図1に示される暗号システムにおける復号鍵生成処理を示すシーケンス図である。FIG. 5 is a sequence diagram showing a decryption key generation process in the encryption system shown in FIG. 図6は、図1に示される暗号システムにおける暗号化処理を示すシーケンス図である。FIG. 6 is a sequence diagram showing an encryption process in the encryption system shown in FIG. 図7は、図1に示される暗号システムにおける復号処理を示すシーケンス図である。FIG. 7 is a sequence diagram showing decryption processing in the encryption system shown in FIG. 図8は、図1に示される暗号システムにおける委譲処理を示すシーケンス図である。FIG. 8 is a sequence diagram showing delegation processing in the encryption system shown in FIG. 図9は、図1に示される暗号システムにおける秘密鍵生成処理を示すシーケンス図である。FIG. 9 is a sequence diagram showing a secret key generation process in the encryption system shown in FIG.

以下、図面を参照しながら本発明の実施形態が詳細に説明される。なお、図面の説明において同一要素には同一符号が付され、重複する説明は省略される。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In the description of the drawings, the same elements will be denoted by the same reference symbols, without redundant description.

図1は、一実施形態に係る暗号システムの構成を示す図である。図1に示されるように、暗号システム1は、属性ベース暗号を用いた暗号化及び復号を行うシステムである。属性ベース暗号は、ユーザの属性に基づいて設定された復号条件(ポリシー)を満たすユーザのみが暗号文を復号可能な暗号技術である。暗号システム1は、ユーザシステム10と、複数の鍵発行機関(本実施形態では、鍵発行機関20A〜20C)と、公開サーバ30と、クラウドストレージ40と、を備えている。ユーザシステム10と、鍵発行機関20A〜20Cと、公開サーバ30と、クラウドストレージ40とは、ネットワークNWによって互いに通信可能に接続されている。ネットワークNWは、有線及び無線のいずれで構成されてもよい。ネットワークNWの例としては、移動体通信網、インターネット、及びWAN(Wide Area Network)等が挙げられる。   FIG. 1 is a diagram showing the configuration of a cryptographic system according to an embodiment. As shown in FIG. 1, the encryption system 1 is a system that performs encryption and decryption using attribute-based encryption. Attribute-based encryption is an encryption technology in which only a user who can satisfy a decryption condition (policy) set based on the attribute of the user can decrypt the ciphertext. The encryption system 1 includes a user system 10, a plurality of key issuing organizations (in the present embodiment, key issuing organizations 20A to 20C), a public server 30, and a cloud storage 40. The user system 10, the key issuing organizations 20A to 20C, the public server 30, and the cloud storage 40 are communicably connected to each other by the network NW. The network NW may be configured by either wired or wireless. Examples of the network NW include a mobile communication network, the Internet, and a wide area network (WAN).

ユーザシステム10は、属性ベース暗号を利用するユーザ側のシステムである。ユーザシステム10は、複数のユーザ端末(本実施形態では、ユーザ端末11A〜11C)を含む。ユーザ端末は、ユーザにより用いられる端末装置である。ユーザ端末の例としては、デスクトップPC(Personal Computer)、ノートPC、スマートフォン、及びタブレット端末等が挙げられる。ここでは、ユーザ端末11A〜11Cは、同一の組織に属する。ユーザ端末11A〜11Cは、LAN等によって互いに通信可能に接続され、不図示のゲートウェイ装置を介してネットワークNWに接続されている。なお、ユーザ端末11A〜11Cは、同一組織に属していなくてもよい。   The user system 10 is a user-side system that uses attribute-based encryption. The user system 10 includes a plurality of user terminals (in the present embodiment, user terminals 11A to 11C). The user terminal is a terminal device used by the user. Examples of the user terminal include a desktop PC (Personal Computer), a notebook PC, a smartphone, and a tablet terminal. Here, the user terminals 11A to 11C belong to the same organization. The user terminals 11A to 11C are communicably connected to each other by a LAN or the like, and are connected to the network NW via a gateway device (not shown). The user terminals 11A to 11C may not belong to the same organization.

ユーザ端末11A〜11Cは、物理的には、1又は複数のプロセッサ、RAM(Random Access Memory)及びROM(Read Only Memory)等の主記憶装置、ハードディスク装置等の補助記憶装置、キーボード等の入力装置、ディスプレイ等の出力装置、並びに、データ送受信デバイスである通信モジュール等のハードウェアを備えるコンピュータとして構成され得る。ユーザ端末11A〜11Cの各機能は、主記憶装置等のハードウェアに1又は複数の所定のコンピュータプログラム(暗号プログラム)を読み込ませることにより、1又は複数のプロセッサの制御のもとで各ハードウェアを動作させるとともに、主記憶装置及び補助記憶装置におけるデータの読み出し及び書き込みを行うことで実現される。   The user terminals 11A to 11C physically have one or more processors, a main storage device such as a random access memory (RAM) and a read only memory (ROM), an auxiliary storage device such as a hard disk device, and an input device such as a keyboard. , An output device such as a display, and hardware such as a communication module which is a data transmission / reception device. Each function of the user terminals 11A to 11C is controlled by one or more processors by causing one hardware such as a main storage to read one or more predetermined computer programs (encryption programs). , And reading and writing data in the main storage device and the auxiliary storage device.

ユーザUA〜UCのそれぞれは、1以上の属性(以下、「属性の組み合わせ」という。)を有する。ユーザUAはユーザ端末11A(第1ユーザ端末)を使用し、ユーザUBはユーザ端末11B(第2ユーザ端末)を使用し、ユーザUCはユーザ端末11Cを使用している。ユーザUA〜UCは、例えば、ユーザ端末11A〜11Cにおいて、属性ベース暗号のためのアプリケーションを用いて、属性ベース暗号でデータを暗号化し、暗号化されたデータ(以下、「暗号文」という。)をクラウドストレージ40に格納する。また、ユーザUA〜UCは、ユーザ端末11A〜11Cを用いて、クラウドストレージ40から暗号文を取得し、暗号文を復号する。ユーザ端末11A〜11Cの少なくとも1台は、鍵発行機関としての役割を担う。本実施形態では、ユーザ端末11Bが鍵発行機関としての役割を担っている。   Each of the users UA to UC has one or more attributes (hereinafter referred to as "combination of attributes"). The user UA uses the user terminal 11A (first user terminal), the user UB uses the user terminal 11B (second user terminal), and the user UC uses the user terminal 11C. For example, in the user terminals 11A to 11C, the users UA to UC encrypt data with attribute-based encryption using an application for attribute-based encryption, and the encrypted data (hereinafter referred to as "ciphertext"). Are stored in the cloud storage 40. Also, the users UA to UC use the user terminals 11A to 11C to acquire a ciphertext from the cloud storage 40 and decrypt the ciphertext. At least one of the user terminals 11A to 11C plays a role as a key issuing organization. In the present embodiment, the user terminal 11B plays a role as a key issuing organization.

鍵発行機関20A〜20Cは、属性ベース暗号の公開鍵及び秘密鍵を生成する。公開鍵は、全てのユーザ(ユーザ端末11A〜11C)に共通の鍵である。秘密鍵は、各ユーザ(ユーザ端末11A〜11C)に固有の鍵であって、ユーザの属性の組み合わせに応じて生成される。公開鍵及び秘密鍵の生成に関する詳細な説明は、後述する。鍵発行機関20A〜20Cは、ユーザシステム10の外部に設けられる。鍵発行機関20A〜20Cは、公開鍵を含む公開情報を公開サーバ30に送信する。なお、ユーザ端末11Bも、鍵発行機関20A〜20Cと同様の機能を有する。   The key issuing authorities 20A to 20C generate public keys and private keys of attribute-based encryption. The public key is a key common to all users (user terminals 11A to 11C). The secret key is a key unique to each user (user terminals 11A to 11C), and is generated according to the combination of the user's attributes. A detailed description of the generation of the public key and the secret key will be described later. The key issuing organizations 20A to 20C are provided outside the user system 10. The key issuing organizations 20A to 20C transmit public information including the public key to the public server 30. The user terminal 11B also has the same function as that of the key issuing organizations 20A to 20C.

公開サーバ30は、公開情報を公開するためのサーバ装置である。公開サーバ30は、鍵発行機関20A〜20Cのそれぞれから公開情報を受信し、公開情報を不図示の記憶装置に格納する。公開サーバ30は、暗号システム1に含まれる各機関からの要求に応じて、公開情報を各機関に送信する。   The public server 30 is a server device for publicizing public information. The public server 30 receives the public information from each of the key issuing organizations 20A to 20C, and stores the public information in a storage device (not shown). The public server 30 transmits public information to each organization in response to a request from each organization included in the encryption system 1.

クラウドストレージ40は、オンラインストレージとも呼ばれ、ネットワークNW上でデータを共有するサービスである。クラウドストレージ40は、例えば、単一又は複数のファイルサーバを含む。クラウドストレージ40は、ユーザ端末11A〜11Cからデータを受信して、受信したデータを格納する。クラウドストレージ40は、ユーザ端末11A〜11Cからの要求に応じて、格納しているデータをユーザ端末11A〜11Cに送信する。クラウドストレージ40に代えて、ユーザシステム10内に設けられた記憶装置(ローカルストレージ)が用いられてもよい。   The cloud storage 40 is also referred to as online storage, and is a service that shares data on the network NW. The cloud storage 40 includes, for example, a single or a plurality of file servers. The cloud storage 40 receives data from the user terminals 11A to 11C and stores the received data. The cloud storage 40 transmits the stored data to the user terminals 11A to 11C in response to the request from the user terminals 11A to 11C. Instead of the cloud storage 40, a storage device (local storage) provided in the user system 10 may be used.

次に、図2を参照して、属性ベース暗号を説明する。図2は、属性ベース暗号で用いられるアクセス構造の一例を示す図である。図2に示されるアクセス構造は、ツリー形式で示されている。アクセス構造は、復号を許可する復号条件(ポリシー)を表す。ポリシーは、属性の論理和及び論理積で表される。図2では、{属性AT1∧(属性AT2∧属性AT3)}∨属性AT4の条件を満たすユーザが、暗号文を復号することができる。なお、「∨」は論理和を示し、「∧」は論理積を示す。各ユーザは、属性ベース暗号のためのアプリケーションを用いてデータを暗号化する際に、アクセス構造を指定する。   Next, attribute-based encryption will be described with reference to FIG. FIG. 2 is a diagram showing an example of an access structure used in attribute-based encryption. The access structure shown in FIG. 2 is shown in a tree format. The access structure represents a decryption condition (policy) that permits decryption. A policy is expressed by logical sum and logical product of attributes. In FIG. 2, the user who satisfies the condition of {attribute AT1∧ (attribute AT2∧attribute AT3)} ∨ attribute AT4 can decrypt the ciphertext. "∨" indicates a logical sum, and "∧" indicates a logical product. Each user specifies an access structure when encrypting data using an application for attribute based encryption.

例えば、ユーザ端末11AのユーザUAが、開発部に所属し、海外支社を経験しており、プロジェクトPを担当しているとする。この場合、ユーザUAの属性は、「開発部」、「海外支社経験者」、及び「プロジェクトP担当者」である。ユーザ端末11BのユーザUBが、情報グループに所属し、IoT(Internet of Things)を担当しているとする。この場合、ユーザUBの属性は、「情報G」、及び「IoT」である。ユーザ端末11CのユーザUCが、総務課に所属しているとする。この場合、ユーザUCの属性は、「総務課」である。   For example, it is assumed that the user UA of the user terminal 11A belongs to the development department, experiences the overseas branch office, and is in charge of the project P. In this case, the attributes of the user UA are "development department", "overseas branch office experienced person", and "project P person in charge". It is assumed that the user UB of the user terminal 11B belongs to the information group and is in charge of IoT (Internet of Things). In this case, the attributes of the user UB are “information G” and “IoT”. It is assumed that the user UC of the user terminal 11C belongs to the general affairs section. In this case, the attribute of the user UC is "General Affairs Division".

図2のアクセス構造において、属性AT1が「開発部」であり、属性AT2が「海外支社経験者」であり、属性AT3が「プロジェクトP担当者」であり、属性AT4が「総務部」であると仮定する。この場合、ユーザUA及びユーザUCの属性の組み合わせはポリシーを満たすので、ユーザUA及びユーザUCは暗号文を復号することができる。一方、ユーザUBの属性の組み合わせはポリシーを満たさないので、ユーザUBは暗号文を復号することができない。   In the access structure of FIG. 2, attribute AT1 is "Development Department", attribute AT2 is "overseas branch office experienced person", attribute AT3 is "person in charge of Project P", and attribute AT4 is "General Affairs Department" Suppose. In this case, since the combination of the attributes of the user UA and the user UC satisfies the policy, the user UA and the user UC can decrypt the ciphertext. On the other hand, since the combination of the attributes of the user UB does not satisfy the policy, the user UB can not decrypt the ciphertext.

次に、図3〜図7を参照して、暗号システム1の動作例を説明する。図3は、図1に示される暗号システムにおける初期設定処理を示すシーケンス図である。図4は、図1に示される暗号システムにおける暗号化鍵生成処理を示すシーケンス図である。図5は、図1に示される暗号システムにおける復号鍵生成処理を示すシーケンス図である。図6は、図1に示される暗号システムにおける暗号化処理を示すシーケンス図である。図7は、図1に示される暗号システムにおける復号処理を示すシーケンス図である。   Next, an operation example of the cryptographic system 1 will be described with reference to FIGS. 3 to 7. FIG. 3 is a sequence diagram showing an initial setting process in the cryptographic system shown in FIG. FIG. 4 is a sequence diagram showing an encryption key generation process in the encryption system shown in FIG. FIG. 5 is a sequence diagram showing a decryption key generation process in the encryption system shown in FIG. FIG. 6 is a sequence diagram showing an encryption process in the encryption system shown in FIG. FIG. 7 is a sequence diagram showing decryption processing in the encryption system shown in FIG.

なお、説明の便宜上、ユーザについては、ユーザUA,UBのみを図示し、鍵発行機関については、鍵発行機関20A,20Bのみを図示する。また、ユーザ端末11Bが鍵発行機関としての役割を担っている。いずれのユーザ端末及び鍵発行機関が、暗号システム1における秘密鍵及び公開鍵の鍵発行機関となるかは、予め設定されている。又は、鍵発行機関20Aが、鍵発行機関となる機関を指定してもよい。   For convenience of explanation, only users UA and UB are illustrated for the user, and only key issuing organizations 20A and 20B are illustrated for the key issuing organization. In addition, the user terminal 11B plays a role as a key issuing organization. It is set in advance which user terminal and key issuing organization will be the key issuing organization of the private key and the public key in the cryptographic system 1. Alternatively, the key issuing organization 20A may designate an institution as a key issuing organization.

図3に示されるように、暗号システム1では、まず初期設定処理が行われる。具体的には、各ユーザは、利用属性の申請を行う。ここではユーザUA,UBのみを説明するが、他のユーザについても同様である。ユーザUAは、ユーザ端末11Aを用いて鍵発行機関20Aに利用属性の申請を行う(ステップS11)。同様に、ユーザUBは、ユーザ端末11Bを用いて鍵発行機関20Aに利用属性の申請を行う(ステップS11)。利用属性の申請には、ユーザの属性又はユーザが利用したい属性(属性の組み合わせ)と、ユーザを特定するための識別情報(ユーザ識別情報)と、が含まれる。ユーザ識別情報としては、ウェブページ等において予め登録されたログインID及びパスワードの組み合わせが用いられ得る。ユーザが使用するユーザ端末のIP(Internet Protocol)アドレスがユーザ識別情報として用いられてもよい。   As shown in FIG. 3, in the cryptographic system 1, first, an initialization process is performed. Specifically, each user applies for a usage attribute. Although only the users UA and UB are described here, the same applies to other users. The user UA applies the usage attribute to the key issuing organization 20A using the user terminal 11A (step S11). Similarly, the user UB applies the usage attribute to the key issuing organization 20A using the user terminal 11B (step S11). The application of the usage attribute includes a user attribute or an attribute (combination of attributes) that the user wants to use, and identification information (user identification information) for identifying the user. As the user identification information, a combination of a login ID and a password registered in advance in a web page or the like may be used. The IP (Internet Protocol) address of the user terminal used by the user may be used as the user identification information.

続いて、鍵発行機関20Aは、各ユーザから利用属性の申請を受信すると、初期設定を行う(ステップS12)。ステップS12において、鍵発行機関20Aは、素数p1を位数とする生成元gからなる巡回群G1と、素数p2を位数とする生成元gからなる巡回群G2と、式(1)で表される双線形写像eを有する巡回群GTと、を決定する。巡回群G1は、素数p1を位数とする巡回群であり、乗算が定義された巡回群である。巡回群G2は、素数p2を位数とする巡回群であり、乗算が定義された巡回群である。巡回群GTは、加算及び乗算が定義された巡回群である。そして、鍵発行機関20Aは、式(1)を満たす双線形写像eを決定する。双線形写像eは、2つの引数を有し、e(・,・)で表される写像である。

Figure 2019086744
Subsequently, when the key issuing organization 20A receives an application of usage attribute from each user, it performs initial setting (step S12). In step S12, the key issuing authority 20A is a cyclic group G1 consisting of a generator g 1 of the prime p1 and quantile, a cyclic group G2 consisting of a generator g 2 for the prime p2 and of order, the formula (1) And determine a cyclic group GT having a bilinear mapping e represented by. The cyclic group G1 is a cyclic group having a prime number p1 as an order, and is a cyclic group in which multiplication is defined. The cyclic group G2 is a cyclic group having a prime number p2 as an order, and is a cyclic group in which multiplication is defined. The cyclic group GT is a cyclic group in which addition and multiplication are defined. Then, the key issuing organization 20A determines a bilinear map e which satisfies the equation (1). The bilinear mapping e is a mapping that has two arguments and is represented by e (···).
Figure 2019086744

続いて、鍵発行機関20Aは、乱数b(b∈Zp1)をランダムに決定し、元g を計算する。 Subsequently, the key issuing organization 20A randomly determines a random number b (bεZ p1 ) and calculates an element g 1 b .

また、鍵発行機関20Aは、各ユーザから申請されたN個の属性に対して、巡回群G1から乱数h,h,・・・,h(h,h,・・・,h∈G1)をランダムに選択する。 In addition, the key issuing organization 20A determines, from the cyclic group G1, random numbers h 1 , h 2 ,..., H N (h 1 , h 2 ,...,) For N attributes applied by each user. Choose h N ∈ G 1) at random.

そして、鍵発行機関20Aは、生成元g、生成元g、元g 、双線形写像e、乱数h,h,・・・,h、及び鍵発行機関(ここでは、鍵発行機関20A,20B及びユーザ端末11B)を特定するための識別情報(発行機関識別情報)を公開情報として公開するために、公開情報を公開サーバ30に送信する(ステップS13)。発行機関識別情報としては、例えば、鍵発行機関のIPアドレスが用いられる。そして、公開サーバ30は、不図示の記憶装置に公開情報を格納する(ステップS14)。 The key issuing organization 20A then generates a generator g 1 , a generator g 2 , an element g 1 b , a bilinear map e, random numbers h 1 , h 2 , ..., h N , and a key issuing organization (here, The public information is transmitted to the public server 30 in order to publicize the identification information (issuing institution identification information) for specifying the key issuing organizations 20A and 20B and the user terminal 11B as public information (step S13). As the issuing agency identification information, for example, the IP address of the key issuing agency is used. Then, the public server 30 stores the public information in a storage device (not shown) (step S14).

なお、鍵発行機関20Aは、全てのユーザから利用属性の申請を受け取った後にステップS12を実施しているが、ステップS12の実施タイミングはこれに限られない。例えば、鍵発行機関20Aは、ユーザから利用属性の申請を受け取る前に生成元g及び生成元gの選択、元g の計算、並びに双線形写像eの決定を行ってもよく、ユーザから利用属性の申請を受け取る前に生成元g、生成元g、元g 、双線形写像e、及び発行機関識別情報を公開サーバ30に送信してもよい。鍵発行機関20Aは、ユーザから新たな属性の申請を受け取ると、その属性に対応する乱数h(nは1〜Nの整数)を選択し、選択した乱数hを公開サーバ30に送信してもよい。また、各ユーザとユーザの属性の組み合わせとが対応付けられて、各ユーザとユーザの属性の組み合わせとの対応関係が鍵発行機関20Aにおいて管理されてもよい。鍵発行機関20Aは、各ユーザとユーザの属性の組み合わせとの対応関係を他の鍵発行機関に送信してもよい。 Although the key issuing organization 20A carries out step S12 after receiving the application for use attribute from all the users, the execution timing of step S12 is not limited to this. For example, the key issuing organization 20A may select the generators g 1 and g 2 , calculate the source g 1 b , and determine the bilinear mapping e before receiving an application for usage attribute from the user. The generator g 1 , the generator g 2 , the element g 1 b , the bilinear map e, and the issuing organization identification information may be transmitted to the public server 30 before receiving an application for use attribute from the user. When the key issuing organization 20A receives an application for a new attribute from the user, it selects a random number h n (n is an integer of 1 to N) corresponding to the attribute, and transmits the selected random number h n to the public server 30. May be In addition, each user may be associated with a combination of user attributes, and the correspondence relationship between each user and the combination of user attributes may be managed in the key issuing organization 20A. The key issuing organization 20A may transmit the correspondence between each user and the combination of the user's attributes to another key issuing organization.

続いて、各ユーザ(ユーザ端末11A及びユーザ端末11B)と、複数の鍵発行機関のうち鍵発行機関20A以外の鍵発行機関(ここでは、鍵発行機関20B)とは、公開サーバ30から公開情報を取得する(ステップS15)。なお、暗号システム1内の各機関は、公開サーバ30のIPアドレスを予め取得している。   Subsequently, each user (user terminal 11A and user terminal 11B) and a key issuing organization other than the key issuing organization 20A among the plurality of key issuing organizations (here, the key issuing organization 20B) Is acquired (step S15). In addition, each organization in the encryption system 1 acquires the IP address of the public server 30 in advance.

続いて、図4に示されるように、暗号システム1では、暗号化鍵生成処理が行われる。暗号化鍵生成処理では、まず、各鍵発行機関(ここでは、鍵発行機関20A,20B及びユーザ端末11B)が公開鍵PKを生成する(ステップS21)。なお、各鍵発行機関には番号j(jは1〜Ncの整数)が割り当てられている。総数Ncは、公開鍵PK及び秘密鍵SK を生成する鍵発行機関の総数である。ステップS21では、j番目の鍵発行機関は、乱数aを生成し、式(2)に示される計算を行って公開鍵PKを生成する。

Figure 2019086744
Subsequently, as shown in FIG. 4, in the cryptographic system 1, an encryption key generation process is performed. In the encryption key generating process, first, (here, the key issuing authority 20A, 20B and the user terminal 11B) each key issuing authority generates a public key PK j (step S21). Each key issuing organization is assigned a number j (j is an integer from 1 to Nc). The total number Nc is the total number of key issuing authorities that generate the public key PK j and the secret key SK u j . In step S21, the j-th key issuing organization generates a random number a j and performs the calculation shown in equation (2) to generate a public key PK j .
Figure 2019086744

そして、各鍵発行機関は、公開鍵PKを公開するために公開鍵PKを公開サーバ30に送信する(ステップS22)。そして、公開サーバ30は、不図示の記憶装置に公開鍵PKを公開情報として格納する(ステップS23)。 Each key issuing authority sends the public key PK j to the public server 30 to publish the public key PK j (step S22). Then, the public server 30 stores the public key PK j as public information in a storage device (not shown) (step S23).

続いて、暗号システム1内の各機関(ここでは、ユーザ端末11A,11B、及び鍵発行機関20A,20B)は、公開サーバ30からNc個の公開鍵PKを取得する(ステップS24)。そして、各機関は、Nc個の公開鍵PKを用いて属性ベース暗号の暗号化用の暗号化鍵PKを生成する(ステップS25)。具体的には、各機関は、式(3)に示されるように、各公開鍵PKを加算し、その加算結果e(g,gを計算する。

Figure 2019086744
Subsequently, (in this case, the user terminal 11A, 11B, and the key issuing authority 20A, 20B) each engine in the cryptographic system 1 obtains Nc number of the public key PK j from the public server 30 (step S24). Each engine produces an encryption key PK for encryption attribute-based encryption using the Nc-number of the public key PK j (step S25). Specifically, each organization adds each public key PK j as shown in Formula (3), and calculates the addition result e (g 1 , g 2 ) a .
Figure 2019086744

そして、各機関は、式(4)に示されるように、公開情報と加算結果e(g,gとを属性ベース暗号の暗号化用の暗号化鍵PKとする。

Figure 2019086744
Then, as shown in Expression (4), each organization sets the public information and the addition result e (g 1 , g 2 ) a as the encryption key PK for attribute-based encryption.
Figure 2019086744

このように、暗号化鍵生成処理では、鍵発行機関20A,20Bは、公開鍵PK(第1公開鍵)を生成するとともに、公開鍵PKを公開する。同様に、ユーザ端末11Bは、公開鍵PK(第2公開鍵)を生成するとともに、公開鍵PKを公開する。ユーザ端末11Aは、鍵発行機関20A,20Bによって生成された公開鍵PKとユーザ端末11Bによって生成された公開鍵PKとを取得して、これらの公開鍵PKを用いて属性ベース暗号の暗号化用の暗号化鍵PKを生成する。 As described above, in the encryption key generation process, the key issuing organizations 20A and 20B generate the public key PK j (first public key) and publish the public key PK j . Similarly, the user terminal 11B generates a public key PK j (second public key) and publicizes the public key PK j . The user terminal 11A acquires the public key PK j generated by the key issuing organizations 20A and 20B and the public key PK j generated by the user terminal 11B, and uses these public keys PK j to perform attribute-based encryption An encryption key PK for encryption is generated.

続いて、図5に示されるように、暗号システム1では、復号鍵生成処理が行われる。ここでは、ユーザ端末11Aが復号鍵を生成する場合を説明する。復号鍵生成処理では、まず、ユーザ端末11Aが各鍵発行機関(ここでは、鍵発行機関20A,20B及びユーザ端末11B)に秘密鍵を要求する(ステップS31)。このとき、ユーザ端末11Aは、ユーザUAの属性の組み合わせ(第1属性)を指定して、ユーザUAの属性の組み合わせに対応した秘密鍵を要求する。   Subsequently, as shown in FIG. 5, in the cryptographic system 1, decryption key generation processing is performed. Here, a case where the user terminal 11A generates a decryption key will be described. In the decryption key generation process, first, the user terminal 11A requests a secret key from each key issuing organization (here, the key issuing organizations 20A and 20B and the user terminal 11B) (step S31). At this time, the user terminal 11A designates a combination (first attribute) of the attributes of the user UA, and requests a secret key corresponding to the combination of the attributes of the user UA.

そして、各鍵発行機関(ここでは、鍵発行機関20A,20B及びユーザ端末11B)は、ユーザ端末11Aから秘密鍵の要求を受け取ると、ユーザUAの属性の組み合わせに応じた秘密鍵を生成する(ステップS32)。このとき、各鍵発行機関は、指定されたユーザUAの属性の組み合わせにユーザUAに無関係な属性が含まれている場合には、指定されたユーザUAの属性の組み合わせを否決してもよい。   When each key issuing organization (here, the key issuing organizations 20A and 20B and the user terminal 11B) receives the request for the secret key from the user terminal 11A, it generates a secret key according to the combination of the attributes of the user UA ( Step S32). At this time, each key issuing organization may never deny the combination of the designated user UA's attributes if the combination of the designated user UA's attributes includes an attribute irrelevant to the user UA.

ステップS32では、まず、各鍵発行機関は、ユーザ端末11A(ユーザUA)に対して乱数s をランダムに決定して、式(5)に示される計算を行う。なお、乱数s はユーザごとに決定される値である。ユーザUAの属性(ユーザUAの属性の組み合わせに含まれる属性)の総数Xは、ユーザシステム10で用いられる属性の総数N以下である。なお、乱数huxは、ユーザUAのX個の属性のうちのx番目の属性に対応する乱数hである。

Figure 2019086744
In step S32, first, each key issuing organization randomly determines a random number su j for the user terminal 11A (user UA), and performs the calculation shown in equation (5). The random number su j is a value determined for each user. The total number X of the attributes of the user UA (attributes included in the combination of the attributes of the user UA) is equal to or less than the total number N of attributes used in the user system 10. The random number h ux is a random number h n corresponding to the x-th attribute of the X attributes of the user UA.
Figure 2019086744

続いて、各鍵発行機関は、式(6)に示される秘密鍵SK をユーザ端末11Aに送信(配布)する(ステップS33)。

Figure 2019086744
Subsequently, each key issuing organization transmits (distributes) the secret key SK u j shown in Formula (6) to the user terminal 11A (step S33).
Figure 2019086744

そして、ユーザ端末11Aは、Nc個の秘密鍵SK を用いて属性ベース暗号の復号用の復号鍵SKを生成する(ステップS34)。具体的には、ユーザ端末11Aは、式(7)及び式(8)に示されるように、Nc個の秘密鍵SK を要素ごとに加算し、その加算結果を復号鍵SKとする。なお、復号鍵SKには、X個の属性鍵(属性鍵Ku1〜KuX)が含まれる。

Figure 2019086744

Figure 2019086744
Then, the user terminal 11A generates the decryption key SK u for attribute-based encryption decryption using the Nc secret keys SK u j (step S34). Specifically, as shown in the equations (7) and (8), the user terminal 11A adds the Nc secret keys SK u j for each element, and uses the addition result as the decryption key SK u . The decryption key SK u includes X attribute keys (attribute keys K u1 to K uX ).
Figure 2019086744

Figure 2019086744

このように、復号鍵生成処理では、ユーザ端末11Aは、鍵発行機関20A,20BにユーザUAの属性の組み合わせに応じた秘密鍵SK (第1秘密鍵)を要求するとともに、ユーザ端末11BにユーザUAの属性の組み合わせに応じた秘密鍵SK (第2秘密鍵)を要求する。鍵発行機関20A,20Bは、ユーザ端末11Aからの要求に応じて、秘密鍵SK を生成して秘密鍵SK をユーザ端末11Aに配布する。同様に、ユーザ端末11Bは、ユーザ端末11Aからの要求に応じて、秘密鍵SK を生成して秘密鍵SK をユーザ端末11Aに配布する。ユーザ端末11Aは、鍵発行機関20A,20Bから秘密鍵SK を取得するとともに、ユーザ端末11Bから秘密鍵SK を取得する。そして、ユーザ端末11Aは、これらの秘密鍵SK を用いて属性ベース暗号の復号用の復号鍵SK(第1復号鍵)を生成する。 As described above, in the decryption key generation process, the user terminal 11A requests the key issuing organization 20A, 20B for the secret key SK u j (first secret key) according to the combination of the attributes of the user UA, and the user terminal 11B Request the secret key SK u j (second secret key) according to the combination of the attributes of the user UA. The key issuing authority 20A, 20B, in response to a request from the user terminal 11A, to distribute the secret key SK u j to the user terminal 11A generates the secret key SK u j. Similarly, the user terminal 11B, in response to a request from the user terminal 11A, to distribute the secret key SK u j to the user terminal 11A generates the secret key SK u j. The user terminal 11A acquires the secret key SK u j from the key issuing organizations 20A and 20B, and acquires the secret key SK u j from the user terminal 11B. Then, the user terminal 11A generates a decryption key SK u (first decryption key) for decryption of the attribute-based encryption using these secret keys SK u j .

続いて、ユーザが属性ベース暗号を用いて暗号化を行う暗号化処理を説明する。ここでは、ユーザ端末11Aが暗号化を行う場合を説明する。図6に示されるように、暗号化処理では、まずユーザUAがユーザ端末11Aを用いて所望のデータMsgを暗号化する(ステップS41)。ユーザ端末11Aには、例えば、属性ベース暗号のための暗号アプリケーションが予めインストールされている。ユーザUAは、暗号アプリケーションにおいて、当該データを復号可能な属性の組み合わせ(アクセス構造)を指定する。図2の例では、「開発部」かつ「海外支社経験者」かつ「プロジェクトP担当者」の属性の組み合わせを有するユーザ、又は「総務課」の属性の組み合わせを有するユーザが復号できるように、アクセス構造の指定が行われる。なお、各ユーザは、任意のアクセス構造を指定でき、例えば、当該ユーザが復号できないアクセス構造を指定することもできる。   Subsequently, encryption processing will be described in which the user performs encryption using attribute-based encryption. Here, the case where the user terminal 11A performs encryption will be described. As shown in FIG. 6, in the encryption process, the user UA first encrypts desired data Msg using the user terminal 11A (step S41). For example, an encryption application for attribute-based encryption is pre-installed in the user terminal 11A. The user UA specifies a combination of attributes (access structure) that can decrypt the data in the cryptographic application. In the example of FIG. 2, a user having a combination of the attributes “Development Department”, “overseas branch office experienced person” and “person in charge of Project P”, or a user having a combination of attributes “General Affairs Division” can decode An access structure is specified. Each user can specify an arbitrary access structure, for example, can specify an access structure that the user can not decrypt.

そして、ユーザ端末11Aは、線形秘密分散法を用いて、指定されたアクセス構造をl行m列の行列Mの形で表現する。なお、行の総数lは、アクセス構造に含まれる属性であって、重複している属性でも別個に計数した場合の属性の数と等しい。例えば、図2の例では、ポリシーを満たす行列の一例として、式(9)で示される行列Mが生成される。

Figure 2019086744
Then, the user terminal 11A expresses the designated access structure in the form of a matrix M of l rows and m columns, using the linear secret sharing method. Note that the total number l of rows is an attribute included in the access structure, and even the overlapping attributes are equal to the number of attributes when counted separately. For example, in the example of FIG. 2, a matrix M represented by equation (9) is generated as an example of a matrix that satisfies the policy.
Figure 2019086744

そして、ユーザ端末11Aは、行列Mに対応して、m個の要素を含むベクトルvをランダムに生成する。式(10)に示されるように、ベクトルvは、秘密情報sと、乱数z〜zと、を含む。

Figure 2019086744
Then, the user terminal 11A randomly generates a vector v including m elements corresponding to the matrix M. As shown in equation (10), the vector v includes secret information s and random numbers z 2 to z m .
Figure 2019086744

そして、ユーザ端末11Aは、式(11)に示されるように、ベクトルvと、行列Mのi(iは1〜lの整数)行目の行Mと、を用いて値λを計算する。

Figure 2019086744
Then, the user terminal 11A calculates the value λ i using the vector v and the row M i of the row i of the matrix M (i is an integer of 1 to 1), as shown in Equation (11). Do.
Figure 2019086744

続いて、ユーザ端末11Aは、l個の乱数rをランダムに決定する。そして、ユーザ端末11Aは、式(12)に示されるように、値λと乱数rと暗号化鍵PKとを用いて暗号化対象のデータMsgを暗号化し、暗号文を生成する。なお、乱数hρ(i)は、i行目の属性に対応する乱数hである。

Figure 2019086744
Subsequently, the user terminal 11A is randomly determining l random numbers r i. Then, the user terminal 11A encrypts the data Msg to be encrypted using the value λ i , the random number r i and the encryption key PK, as shown in Expression (12), to generate a ciphertext. The random number h ((i) is a random number h n corresponding to the attribute of the i-th row.
Figure 2019086744

そして、ユーザ端末11Aは、クラウドストレージ40に暗号文を送信する(ステップS42)。クラウドストレージ40は、ユーザ端末11Aから暗号文を受信すると、暗号文を不図示の記憶装置に格納する(ステップS43)。   Then, the user terminal 11A transmits the ciphertext to the cloud storage 40 (step S42). When receiving the ciphertext from the user terminal 11A, the cloud storage 40 stores the ciphertext in a storage device (not shown) (step S43).

続いて、ユーザが属性ベース暗号を用いて暗号文を復号する復号処理を説明する。ここでは、ユーザ端末11Aが復号を行う場合を説明する。図7に示されるように、復号処理では、まずユーザUAがユーザ端末11Aを用いて、クラウドストレージ40に暗号文の取得を要求する(ステップS51)。そして、クラウドストレージ40は、ユーザ端末11Aから暗号文の取得要求を受信すると、要求されている暗号文を不図示の記憶装置から読み出し、当該暗号文をユーザ端末11Aに送信する(ステップS52)。   Subsequently, decryption processing in which a user decrypts a ciphertext using attribute-based encryption will be described. Here, the case where the user terminal 11A performs decryption will be described. As shown in FIG. 7, in the decryption process, the user UA first requests the cloud storage 40 to acquire a ciphertext using the user terminal 11A (step S51). Then, when the cloud storage 40 receives the request for acquiring the ciphertext from the user terminal 11A, the cloud storage 40 reads the requested ciphertext from the storage device (not shown) and transmits the ciphertext to the user terminal 11A (step S52).

続いて、ユーザ端末11Aは、クラウドストレージ40から暗号文を受信すると、ユーザUAの復号鍵SKを用いて復号を行う(ステップS53)。このとき、ユーザ端末11Aは、ユーザUAの属性の組み合わせが暗号文に設定されたポリシーを満たす場合には、式(13)を満たす値wを計算することができる。

Figure 2019086744
Subsequently, the user terminal 11A receives the ciphertext from the cloud storage 40, performs decoding using the decryption key SK u user UA (step S53). At this time, when the combination of the attributes of the user UA satisfies the policy set in the ciphertext, the user terminal 11A can calculate the value w i satisfying the equation (13).
Figure 2019086744

そして、ユーザ端末11Aは、式(14)に示されるように、値wとユーザUAの復号鍵SKとを用いて暗号文を復号し、元のデータMsgを得る。なお、属性鍵Kρ(i)は、行列M(アクセス構造)に含まれるl個の属性のうちのi行目の属性に対応する属性鍵Kuxである。

Figure 2019086744
Then, the user terminal 11A decrypts the ciphertext using the value w i and the decryption key SK u of the user UA, as shown in equation (14), and obtains the original data Msg. The attribute key K ((i) is the attribute key K ux corresponding to the attribute of the i-th row of the l attributes included in the matrix M (access structure).
Figure 2019086744

このように、各ユーザは、自身の属性の組み合わせが暗号文に設定されたポリシーを満たす場合にのみ、ユーザの復号鍵を用いて当該暗号文の復号が可能となる。属性ベース暗号の安全性は、離散対数問題の困難性に起因している。例えば、一例を挙げると、生成元gと元g a1とから、乱数aを計算することが困難であるという性質である。この性質により、上記の属性ベース暗号は安全であるといえる。 As described above, each user can decrypt the ciphertext using the decryption key of the user only when the combination of the attributes of the user satisfies the policy set in the ciphertext. The security of attribute-based cryptography stems from the difficulty of the discrete logarithm problem. For example, the way of example, a generator g 1 of the original g 1 a1 Tokyo, is the property that it is difficult to calculate the random number a 1. Due to this property, it can be said that the above attribute-based encryption is secure.

次に、図8及び図9を参照して、暗号システム1の別の動作例を説明する。図8は、図1に示される暗号システムにおける委譲処理を示すシーケンス図である。図9は、図1に示される暗号システムにおける秘密鍵生成処理を示すシーケンス図である。委譲とは、鍵発行機関がN個の属性のうちの一部についての権限を他の機関に受け渡すことを意味する。なお、説明の便宜上、ユーザについては、ユーザUA,UBのみを図示し、鍵発行機関については、鍵発行機関20A,20B,20Cのみを図示する。また、ユーザ端末11Bが鍵発行機関としての役割を担っている。   Next, another operation example of the cryptographic system 1 will be described with reference to FIGS. 8 and 9. FIG. 8 is a sequence diagram showing delegation processing in the encryption system shown in FIG. FIG. 9 is a sequence diagram showing a secret key generation process in the encryption system shown in FIG. Delegation means that the key issuing authority passes the authority over some of the N attributes to other authorities. For convenience of explanation, only users UA and UB are shown for the user, and only key issuing organizations 20A, 20B and 20C are shown for the key issuing organization. In addition, the user terminal 11B plays a role as a key issuing organization.

初期設定処理において、ユーザ端末11B(ユーザUB)は、複数の鍵発行機関のうち、委譲先の鍵決定機関となることを承諾している鍵発行機関の中から委譲先の鍵発行機関を任意に選択する。そして、ユーザ端末11Bは、例えば、ステップS11において、利用属性の申請に加えて、委譲対象の属性である委譲属性と委譲先の鍵発行機関(鍵発行機関20C;別の鍵発行機関)の発行機関識別情報とを鍵発行機関20Aに通知する。鍵発行機関20Aは、ステップS13において、公開情報に委譲属性と委譲先の鍵発行機関の発行機関識別情報とを含めて公開サーバ30に送信する。これにより、委譲属性と委譲先の鍵発行機関とが暗号システム1内の各機関に事前に周知される。なお、ユーザ端末11Bは、複数の鍵発行機関に異なる委譲属性を委譲してもよい。委譲先の鍵発行機関は、秘密鍵SK 及び公開鍵PKを生成している鍵発行機関と重複してもよい。 In the initial setting process, the user terminal 11B (user UB) arbitrarily selects the key issuing organization of the transferee from among the key issuing organizations that are approved to be the key determination organization of the transferee among a plurality of key issuing organizations. Select to Then, for example, in step S11, the user terminal 11B issues, in addition to the application for the usage attribute, a delegation attribute which is a delegation target attribute and a key issuing organization (key issuing organization 20C; another key issuing organization) of the delegation destination. The key issuing organization 20A is notified of the organization identification information. In step S13, the key issuing organization 20A transmits the public information including the transfer attribute and the issuing organization identification information of the key issuing organization of the transfer destination to the public server 30. As a result, the transfer attribute and the key issuing organization of the transfer destination are known in advance to each of the organizations in the cryptographic system 1. The user terminal 11B may delegate different delegation attributes to a plurality of key issuing organizations. The key issuing organization to be transferred may overlap with the key issuing organization that is generating the private key SK u j and the public key PK j .

ここでは、ユーザ端末11BがN個の属性の一部を鍵発行機関20Cに委譲する場合について説明する。まず、ユーザ端末11Bが委譲鍵を生成する(ステップS61)。ステップS61では、まず、ユーザ端末11Bは、乱数s をランダムに決定して、式(15)に示される計算を行う。委譲属性の総数Yは、ユーザシステム10で用いられる属性の総数N以下である。乱数hdyは、Y個の委譲属性のうちのy番目の属性に対応する乱数hである。

Figure 2019086744
Here, the case where the user terminal 11B transfers some of the N attributes to the key issuing organization 20C will be described. First, the user terminal 11B generates a transfer key (step S61). In step S61, first, the user terminal 11B randomly determines the random number s d j and performs the calculation shown in equation (15). The total number Y of delegation attributes is equal to or less than the total number N of attributes used in the user system 10. The random number h dy is a random number h n corresponding to the y-th attribute of the Y transfer attributes.
Figure 2019086744

そして、ユーザ端末11Bは、式(16)に示される委譲鍵DKを鍵発行機関20Cに送信(配布)する(ステップS62)。委譲鍵DKには、Y個の属性鍵(属性鍵Kd1 〜KdY )が含まれる。なお、委譲鍵DKからは、元の秘密鍵SK を判別することはできない。

Figure 2019086744
Then, the user terminal 11B transmits (distributes) the transfer key DK j shown in the equation (16) to the key issuing organization 20C (step S62). The transfer key DK j includes Y attribute keys (attribute keys K d1 j to K dY j ). Note that the original secret key SK u j can not be determined from the transfer key DK j .
Figure 2019086744

また、鍵発行機関20Cは、公開サーバ30から公開情報を取得する(ステップS63)。   Also, the key issuing organization 20C acquires public information from the public server 30 (step S63).

続いて、図9に示されるように、暗号システム1では、復号鍵生成処理が行われる。ここでは、ユーザ端末11Aが復号を行う場合を説明する。復号鍵生成処理では、まず、ユーザ端末11Aが、ユーザUAの属性の組み合わせが委譲属性の集合に含まれるか否かを判定する(ステップS71)。ユーザUAの属性の組み合わせが委譲属性の集合に含まれないと判断された場合(ステップS71:NO)、図5に示される復号鍵生成処理が行われる。   Subsequently, as shown in FIG. 9, in the cryptographic system 1, decryption key generation processing is performed. Here, the case where the user terminal 11A performs decryption will be described. In the decryption key generation processing, first, the user terminal 11A determines whether or not the combination of the attributes of the user UA is included in the set of delegation attributes (step S71). If it is determined that the combination of the attributes of the user UA is not included in the set of delegation attributes (step S71: NO), the decryption key generation process shown in FIG. 5 is performed.

一方、ユーザ端末11Aは、ユーザUAの属性の組み合わせが委譲属性の集合に含まれると判断した場合(ステップS71:YES)、各鍵発行機関に秘密鍵を要求する(ステップS72)。図5のステップS31と比較して、ユーザ端末11Bに代えて鍵発行機関20Cに秘密鍵を要求する点が異なる。そして、各鍵発行機関(ここでは、鍵発行機関20A〜20C)は、ユーザ端末11Aから秘密鍵の要求を受け取ると、ユーザUAの属性の組み合わせに応じた秘密鍵を生成する(ステップS73)。   On the other hand, when the user terminal 11A determines that the combination of the attributes of the user UA is included in the set of delegation attributes (step S71: YES), the user terminal 11A requests a secret key from each key issuing organization (step S72). Compared to step S31 of FIG. 5, the point of requesting a secret key to the key issuing organization 20C instead of the user terminal 11B is different. When each key issuing organization (here, key issuing organizations 20A to 20C) receives a request for a secret key from the user terminal 11A, it generates a secret key according to the combination of the user UA's attributes (step S73).

ステップS73では、鍵発行機関20Cは、ユーザ端末11A(ユーザUA)に対して乱数s をランダムに決定して、式(17)に示される計算を行う。属性鍵Kdux は、ユーザUAのX個の属性のうちのx番目の属性に対応する属性鍵Kdy である。なお、鍵発行機関20A,20Bの秘密鍵生成処理は、ステップS32と同様であるので、説明を省略する。

Figure 2019086744
In step S73, the key issuing organization 20C randomly determines a random number su j for the user terminal 11A (user UA), and performs the calculation shown in equation (17). The attribute key K dux j is an attribute key K dy j corresponding to the x-th attribute of the X attributes of the user UA. The secret key generation process of the key issuing organizations 20A and 20B is the same as that in step S32, and thus the description thereof is omitted.
Figure 2019086744

続いて、各鍵発行機関は、式(6)に示される秘密鍵SK をユーザ端末11Aに送信(配布)する(ステップS74)。そして、ユーザ端末11Aは、ステップS34と同様に、Nc個の秘密鍵SK を用いて属性ベース暗号の復号用の復号鍵SKを生成する(ステップS75)。 Subsequently, each key issuing organization transmits (distributes) the secret key SK u j shown in Formula (6) to the user terminal 11A (step S74). Then, as in step S34, the user terminal 11A generates the decryption key SK u for decryption of the attribute-based encryption using the Nc secret keys SK u j (step S75).

以上説明したように、暗号システム1、ユーザシステム10、ユーザ端末11Aが行う暗号方法、及びユーザ端末11Aに暗号方法を実行させる暗号プログラムでは、ユーザ端末11Aは、鍵発行機関20A,20Bによって生成された公開鍵PKと、ユーザシステム10内のユーザ端末11Bによって生成された公開鍵PKとを用いて属性ベース暗号の暗号化用の暗号化鍵PKを生成する。ユーザ端末11Aは、鍵発行機関20A,20Bによって生成された秘密鍵SK とユーザシステム10内のユーザ端末11Bによって生成された秘密鍵SK とを用いて属性ベース暗号の復号用の復号鍵SKを生成する。 As described above, in the encryption system 1, the user system 10, the encryption method performed by the user terminal 11A, and the encryption program that causes the user terminal 11A to execute the encryption method, the user terminal 11A is generated by the key issuing organizations 20A and 20B. a public key PK j has, generates an encryption key PK for encryption attribute-based encryption using a public key PK j generated by the user terminal 11B in the user system 10. The user terminal 11A is decoded attribute-based encryption for decryption by using the secret key SK u j generated by the user terminal 11B of the key issuing authority 20A, a secret key SK u j and the user system 10 produced by 20B Generate key SK u .

ユーザ端末11Bが暗号化及び復号を行う場合も同様である。つまり、ユーザ端末11Bは、ユーザUBの属性の組み合わせ(第2属性)に応じた秘密鍵SK (第3秘密鍵)を鍵発行機関20A,20Bに要求するとともに、ユーザUBの属性の組み合わせに応じた秘密鍵SK (第4秘密鍵)を生成する。鍵発行機関20A,20Bは、ユーザ端末11Bからの要求に応じて、秘密鍵SK を生成して秘密鍵SK をユーザ端末11Bに配布する。ユーザ端末11Bは、公開鍵PKを用いて暗号化鍵PKを生成し、鍵発行機関20A,20Bから秘密鍵SK を取得して、鍵発行機関20A,20Bによって生成された秘密鍵SK とユーザ端末11B自身が生成した秘密鍵SK とを用いて属性ベース暗号の復号用の復号鍵SK(第2復号鍵)を生成する。 The same applies to the case where the user terminal 11B performs encryption and decryption. That is, the user terminal 11B requests the key issuing organization 20A, 20B for the secret key SK u j (third secret key) according to the combination (second attribute) of the user UB's attributes, and the combination of the user UB's attributes A secret key SK u j (fourth secret key) is generated according to. The key issuing authority 20A, 20B, in response to a request from the user terminal 11B, distributing the secret key SK u j to the user terminal 11B generates a secret key SK u j. The user terminal 11B generates the encryption key PK using the public key PK j , acquires the secret key SK u j from the key issuing organizations 20A and 20B, and generates the secret key SK generated by the key issuing organizations 20A and 20B. generating a decryption key SK u for decoding the attribute-based encryption (second decryption key) by using the secret key SK u j to u j and the user terminal 11B itself generated.

このように、鍵発行機関としての役割をユーザシステム10内のユーザ端末11Bが担うことにより、鍵発行機関が結託することによって暗号文が復号される可能性を低減することができる。つまり、ユーザUBが鍵の管理権限の一部を有しているので、ユーザシステム10以外の全ての鍵発行機関が結託した場合でも、暗号文を復号することはできない。その結果、属性ベース暗号の安全性を向上させることが可能となる。   As described above, when the user terminal 11B in the user system 10 plays a role as a key issuing organization, it is possible to reduce the possibility that a ciphertext is decrypted by collusion by the key issuing organization. That is, since the user UB has a part of the key management authority, even when all the key issuing organizations other than the user system 10 collude, the ciphertext can not be decrypted. As a result, it is possible to improve the security of attribute-based encryption.

ユーザ端末11Bは、ユーザシステム10で用いられる複数(N個)の属性のうちの1以上(Y個)の属性を委譲属性の集合として鍵発行機関20Cに委譲する。そして、ユーザ端末11Aは、ユーザUAの属性の組み合わせが委譲属性の集合に含まれる場合には、ユーザ端末11Bに代えて委譲先の鍵発行機関20Cに秘密鍵SK を要求する。鍵発行機関20Cは、ユーザ端末11Aからの要求に応じて、秘密鍵SK を生成して秘密鍵SK をユーザ端末11Aに配布する。このように、ユーザシステム10において機密性を保ちたい属性に対しては、ユーザ端末11B(ユーザUB)自身が鍵発行機関の役割を果たし、ユーザシステム10のユーザ(ユーザUA等)に対して鍵の生成及び配布を行う。また、ユーザ端末11BのユーザUBの負担を軽減するために、ユーザシステム10において機密性に拘らない属性、及び関係の無い属性等に対しては、ユーザ端末11Bは委譲鍵DKを作成し、鍵発行機関20Cに委譲属性に関する鍵の生成及び配布を委譲する。これにより、ユーザ端末11Bは、委譲属性に関する秘密鍵の生成及び配布を行う必要がなくなるので、ユーザ端末11BのユーザUBの負担を軽減することができる。一方、委譲属性以外の属性については、ユーザUBが鍵の管理権限の一部を有しているので、ユーザシステム10以外の全ての鍵発行機関が結託した場合でも、暗号文を復号することはできない。その結果、ユーザUBの負担を軽減しつつ、属性ベース暗号の安全性を向上させることが可能となる。 The user terminal 11B delegates one or more (Y) of the plurality (N) of attributes used in the user system 10 to the key issuing organization 20C as a set of delegation attributes. Then, when the combination of the attributes of the user UA is included in the set of delegation attributes, the user terminal 11A requests the secret key SK u j from the key issuing organization 20C of the delegation destination instead of the user terminal 11B. The key issuing authority 20C, in response to a request from the user terminal 11A, to distribute the secret key SK u j to the user terminal 11A generates the secret key SK u j. As described above, with respect to the attribute for which confidentiality is desired to be maintained in the user system 10, the user terminal 11B (user UB) itself plays the role of key issuing organization, and the key for the user (user UA etc.) of the user system 10 Create and distribute the Further, in order to reduce the burden on the user UB of the user terminal 11B, the user terminal 11B creates the transfer key DK j for the attribute not related to confidentiality and the attribute not related to the user system 10, The key issuing authority 20C delegates the generation and distribution of keys relating to the delegation attribute. As a result, the user terminal 11B is not required to generate and distribute the secret key relating to the transfer attribute, so the burden on the user UB of the user terminal 11B can be reduced. On the other hand, for attributes other than the transfer attribute, since the user UB has a part of the key management authority, even when all the key issuing organizations other than the user system 10 concur, it is possible to decrypt the ciphertext Can not. As a result, it is possible to improve the security of the attribute-based encryption while reducing the burden on the user UB.

なお、本発明に係る暗号システム、ユーザシステム、暗号方法、及び暗号プログラムは上記実施形態に限定されない。   Note that the encryption system, user system, encryption method, and encryption program according to the present invention are not limited to the above embodiment.

上記実施形態では、各ユーザが鍵発行機関20Aに利用属性の申請を行っているが、他の鍵発行機関に利用属性の申請を行ってもよい。例えば、ある組織のユーザが利用属性の申請を行う鍵発行機関と、別の組織のユーザが利用属性の申請を行う鍵発行機関とが異なる場合のように、2以上の鍵発行機関に利用属性の申請が行われることがある。このような場合、1つの鍵発行機関(例えば、鍵発行機関20A)がそれ以外の鍵発行機関に申請された属性を取りまとめてもよい。他の鍵発行機関は、自身に申請された利用属性について、鍵発行機関20Aに利用属性の申請を行う。鍵発行機関20Aは、上記実施形態と同様に初期設定を行う。   In the above embodiment, each user applies for the use attribute to the key issuing organization 20A, but may apply to the other key issuing organization. For example, as in the case where a key issuing organization to which a user of one organization applies for use attribute and a key issuing organization to which a user of another organization applies for use attribute are different, use attributes to two or more key issuing organizations Applications may be made. In such a case, one key issuing organization (e.g., key issuing organization 20A) may compile attributes applied to other key issuing organizations. The other key issuing organization applies for the use attribute to the key issuing organization 20A for the use attribute applied to itself. The key issuing organization 20A performs initialization as in the above embodiment.

暗号システム1は、公開サーバ30を備えていなくてもよい。この場合、公開情報は、暗号システム1内の各機関に電子メール等によって直接配布される。   The cryptographic system 1 may not have the public server 30. In this case, the public information is directly distributed to each organization in the cryptographic system 1 by e-mail or the like.

ユーザの属性は、所定の規則によって決定されてもよい。例えば、ユーザが会社員である場合には、所属部署、及び入社年度等の属性が管理されている。この場合、これらの属性を一括して、企業の管理部門において利用属性の申請が行われてもよく、各ユーザは利用属性の申請を行わなくてもよい。   The attributes of the user may be determined by predetermined rules. For example, when the user is a company employee, attributes such as the department to which the user belongs and the year of employment are managed. In this case, these attributes may be collectively applied to the usage attribute in the management department of the company, and each user may not apply for the usage attribute.

ユーザシステム10は、1つの組織に属するユーザ端末だけでなく、異なる組織に属するユーザ端末を含んでもよい。この場合、同じ名称の属性が2以上の組織で利用される可能性がある。このため、各組織の属性が一意に識別可能なように属性名等が設定される。例えば、ユーザUAがE社に属しており、ユーザUBがF社に属しており、ユーザUA及びユーザUBが「総務課」の属性について利用属性の申請を行う場合、属性名を「総務課E社」、及び「総務課F社」として2つの属性が区別されるか、会社名の属性と「総務課」の属性とが論理積される。   The user system 10 may include not only user terminals belonging to one organization but also user terminals belonging to different organizations. In this case, an attribute with the same name may be used by two or more organizations. Therefore, attribute names and the like are set so that the attributes of each organization can be uniquely identified. For example, when the user UA belongs to the company E, the user UB belongs to the company F, and the users UA and UB apply for the use attribute with respect to the attribute "general affairs section", The two attributes are distinguished as "company" and "general affairs section F company", or the attribute of the company name and the attribute of "general affairs section" are ANDed together.

また、ユーザ端末11Bが鍵発行機関20Cに委譲属性を委譲した場合、ユーザ端末11Aは、図5と同様、各鍵発行機関(図5の例では、鍵発行機関20A,20B及びユーザ端末11B)に秘密鍵を要求してもよい。そして、ユーザ端末11BがステップS71の処理を行い、ユーザUAの属性の組み合わせが委譲属性の集合に含まれないと判断された場合(ステップS71:NO)、図5に示される復号鍵生成処理が行われる。一方、ユーザ端末11Bは、ユーザUAの属性の組み合わせが委譲属性の集合に含まれると判断した場合(ステップS71:YES)、ユーザ端末11Aに委譲先の鍵発行機関20Cを通知し、ユーザ端末11Aは鍵発行機関20Cに秘密鍵を要求してもよい。   Further, when the user terminal 11B transfers the transfer attribute to the key issuing organization 20C, the user terminal 11A, as in FIG. 5, each key issuing organization (in the example of FIG. 5, the key issuing organizations 20A and 20B and the user terminal 11B) Request a secret key. Then, when the user terminal 11B performs the process of step S71 and it is determined that the combination of the attributes of the user UA is not included in the set of delegation attributes (step S71: NO), the decryption key generation process shown in FIG. To be done. On the other hand, when the user terminal 11B determines that the combination of the attributes of the user UA is included in the set of delegation attributes (step S71: YES), the user terminal 11A notifies the user terminal 11A of the key issuing organization 20C of the delegation destination, and the user terminal 11A May request the key issuing authority 20C for the private key.

1…暗号システム、10…ユーザシステム、11A…ユーザ端末(第1ユーザ端末)、11B…ユーザ端末(第2ユーザ端末)、11C…ユーザ端末、20A…鍵発行機関、20B…鍵発行機関、20C…鍵発行機関(別の鍵発行機関)、30…公開サーバ、40…クラウドストレージ、NW…ネットワーク、UA…ユーザ、UB…ユーザ、UC…ユーザ。   DESCRIPTION OF SYMBOLS 1 ... Encryption system, 10 ... User system, 11A ... User terminal (1st user terminal), 11B ... User terminal (2nd user terminal), 11C ... User terminal, 20A ... Key issuing organization, 20B ... Key issuing organization, 20C ... key issuing organization (another key issuing organization), 30 ... public server, 40 ... cloud storage, NW ... network, UA ... user, UB ... user, UC ... user.

Claims (8)

属性ベース暗号を用いた暗号システムであって、
鍵発行機関と、
1以上の属性を含む第1属性を有する第1ユーザ端末及び第2ユーザ端末を含むユーザシステムと、
を備え、
前記鍵発行機関は、第1公開鍵を生成するとともに、前記第1公開鍵を公開し、
前記第2ユーザ端末は、第2公開鍵を生成するとともに、前記第2公開鍵を公開し、
前記第1ユーザ端末は、前記第1属性に応じた第1秘密鍵を前記鍵発行機関に要求するとともに、前記第1属性に応じた第2秘密鍵を前記第2ユーザ端末に要求し、
前記鍵発行機関は、前記第1ユーザ端末からの要求に応じて、前記第1秘密鍵を生成して前記第1秘密鍵を前記第1ユーザ端末に配布し、
前記第2ユーザ端末は、前記第1ユーザ端末からの要求に応じて、前記第2秘密鍵を生成して前記第2秘密鍵を前記第1ユーザ端末に配布し、
前記第1ユーザ端末は、前記第1公開鍵及び前記第2公開鍵を用いて属性ベース暗号の暗号化用の暗号化鍵を生成し、前記第1秘密鍵及び前記第2秘密鍵を用いて属性ベース暗号の復号用の第1復号鍵を生成する、暗号システム。
An encryption system using attribute-based encryption
Key issuing authority,
A user system comprising a first user terminal having a first attribute comprising one or more attributes and a second user terminal;
Equipped with
The key issuing organization generates a first public key and makes the first public key public.
The second user terminal generates a second public key and makes the second public key public.
The first user terminal requests the key issuing organization for a first secret key corresponding to the first attribute, and requests a second secret key corresponding to the first attribute to the second user terminal.
The key issuing organization generates the first secret key and distributes the first secret key to the first user terminal in response to a request from the first user terminal.
The second user terminal generates the second secret key and distributes the second secret key to the first user terminal in response to a request from the first user terminal.
The first user terminal generates an encryption key for encryption of attribute-based encryption using the first public key and the second public key, and uses the first secret key and the second secret key. Cryptographic system for generating a first decryption key for decryption of attribute based cryptography.
前記第2ユーザ端末は、1以上の属性を含む第2属性を有し、
前記第2ユーザ端末は、前記第2属性に応じた第3秘密鍵を前記鍵発行機関に要求するとともに、前記第2属性に応じた第4秘密鍵を生成し、
前記鍵発行機関は、前記第2ユーザ端末からの要求に応じて、前記第3秘密鍵を生成して前記第3秘密鍵を前記第2ユーザ端末に配布し、
前記第2ユーザ端末は、前記第1公開鍵及び前記第2公開鍵を用いて前記暗号化鍵を生成し、前記第3秘密鍵及び前記第4秘密鍵を用いて属性ベース暗号の復号用の第2復号鍵を生成する、請求項1に記載の暗号システム。
The second user terminal has a second attribute including one or more attributes;
The second user terminal requests the key issuing organization for a third secret key corresponding to the second attribute, and generates a fourth secret key corresponding to the second attribute.
The key issuing organization generates the third secret key and distributes the third secret key to the second user terminal in response to a request from the second user terminal.
The second user terminal generates the encryption key using the first public key and the second public key, and uses the third secret key and the fourth secret key to decrypt the attribute-based encryption. The cryptographic system according to claim 1, wherein a second decryption key is generated.
別の鍵発行機関をさらに備え、
前記第2ユーザ端末は、前記ユーザシステムで用いられる複数の属性のうちの1以上の属性を委譲属性の集合として前記別の鍵発行機関に委譲し、
前記第1ユーザ端末は、前記第1属性が前記委譲属性の集合に含まれる場合には、前記第2秘密鍵を前記別の鍵発行機関に要求し、
前記別の鍵発行機関は、前記第1ユーザ端末からの要求に応じて、前記第2秘密鍵を生成して前記第2秘密鍵を前記第1ユーザ端末に配布する、請求項1又は請求項2に記載の暗号システム。
Further equipped with another key issuing agency,
The second user terminal delegates one or more of the plurality of attributes used in the user system to the other key issuing organization as a set of delegation attributes,
The first user terminal requests the second secret key from the other key issuing organization if the first attribute is included in the set of delegation attributes.
The other key issuing organization generates the second secret key and distributes the second secret key to the first user terminal in response to a request from the first user terminal. The encryption system according to 2.
1以上の属性を含む第1属性を有する第1ユーザ端末と第2ユーザ端末とを含み、属性ベース暗号を利用するユーザシステムであって、
前記第1ユーザ端末は、外部の鍵発行機関によって生成された第1公開鍵と前記第2ユーザ端末によって生成された第2公開鍵とを取得して、前記第1公開鍵及び前記第2公開鍵を用いて属性ベース暗号の暗号化用の暗号化鍵を生成し、
前記第1ユーザ端末は、前記第1属性に応じた第1秘密鍵を前記鍵発行機関に要求するとともに、前記第1属性に応じた第2秘密鍵を前記第2ユーザ端末に要求し、
前記第1ユーザ端末は、前記第1秘密鍵を前記鍵発行機関から取得し、前記第2秘密鍵を前記第2ユーザ端末から取得し、前記第1秘密鍵及び前記第2秘密鍵を用いて属性ベース暗号の復号用の第1復号鍵を生成する、ユーザシステム。
A user system including a first user terminal having a first attribute including one or more attributes and a second user terminal, wherein the user system uses attribute-based encryption,
The first user terminal acquires a first public key generated by an external key issuing organization and a second public key generated by the second user terminal, and the first public key and the second public key are acquired. Generate an encryption key for attribute based encryption encryption using the key,
The first user terminal requests the key issuing organization for a first secret key corresponding to the first attribute, and requests a second secret key corresponding to the first attribute to the second user terminal.
The first user terminal acquires the first secret key from the key issuing organization, acquires the second secret key from the second user terminal, and uses the first secret key and the second secret key. A user system generating a first decryption key for decryption of attribute-based encryption.
前記第2ユーザ端末は、1以上の属性を含む第2属性を有し、
前記第2ユーザ端末は、前記第2属性に応じた第3秘密鍵を前記鍵発行機関に要求するとともに、前記第2属性に応じた第4秘密鍵を生成し、
前記第2ユーザ端末は、前記第1公開鍵及び前記第2公開鍵を用いて前記暗号化鍵を生成し、
前記第2ユーザ端末は、前記第3秘密鍵を前記鍵発行機関から取得して、前記第3秘密鍵及び前記第4秘密鍵を用いて属性ベース暗号の復号用の第2復号鍵を生成する、請求項4に記載のユーザシステム。
The second user terminal has a second attribute including one or more attributes;
The second user terminal requests the key issuing organization for a third secret key corresponding to the second attribute, and generates a fourth secret key corresponding to the second attribute.
The second user terminal generates the encryption key using the first public key and the second public key.
The second user terminal acquires the third secret key from the key issuing organization, and generates a second decryption key for attribute-based encryption decryption using the third secret key and the fourth secret key. The user system according to claim 4.
前記第2ユーザ端末は、前記ユーザシステムで用いられる複数の属性のうちの1以上の属性を委譲属性の集合として別の鍵発行機関に委譲し、
前記第1ユーザ端末は、前記第1属性が前記委譲属性の集合に含まれる場合には、前記第2秘密鍵を前記別の鍵発行機関に要求する、請求項4又は請求項5に記載のユーザシステム。
The second user terminal delegates one or more of the plurality of attributes used in the user system to another key issuing organization as a set of delegation attributes,
The said 1st user terminal requests | requires the said 2nd secret key to the said another key issuing organization, when the said 1st attribute is contained in the set of the said transfer attribute, The 4th or Claim 5 User system.
1以上の属性を含む第1属性を有する第1ユーザ端末と第2ユーザ端末とを含み、属性ベース暗号を利用するユーザシステムにおいて、前記第1ユーザ端末が行う暗号方法であって、
外部の鍵発行機関によって生成された第1公開鍵と前記第2ユーザ端末によって生成された第2公開鍵とを取得するステップと、
前記第1公開鍵及び前記第2公開鍵を用いて属性ベース暗号の暗号化用の暗号化鍵を生成するステップと、
前記第1属性に応じた第1秘密鍵を前記鍵発行機関に要求するとともに、前記第1属性に応じた第2秘密鍵を前記第2ユーザ端末に要求するステップと、
前記第1秘密鍵を前記鍵発行機関から取得し、前記第2秘密鍵を前記第2ユーザ端末から取得するステップと、
前記第1秘密鍵及び前記第2秘密鍵を用いて属性ベース暗号の復号用の第1復号鍵を生成するステップと、
を備える暗号方法。
A cryptographic method performed by the first user terminal in a user system including a first user terminal and a second user terminal having a first attribute including one or more attributes and using attribute-based encryption,
Acquiring a first public key generated by an external key issuing organization and a second public key generated by the second user terminal;
Generating an encryption key for attribute-based encryption using the first public key and the second public key;
Requesting a first secret key according to the first attribute from the key issuing organization, and requesting a second secret key according to the first attribute from the second user terminal;
Acquiring the first secret key from the key issuing authority and acquiring the second secret key from the second user terminal;
Generating a first decryption key for decryption of attribute based encryption using the first secret key and the second secret key;
Cryptographic method comprising:
コンピュータに、
外部の鍵発行機関によって生成された第1公開鍵と、前記コンピュータとともにユーザシステムに属するユーザ端末によって生成された第2公開鍵と、を取得するステップと、
前記第1公開鍵及び前記第2公開鍵を用いて属性ベース暗号の暗号化用の暗号化鍵を生成するステップと、
前記コンピュータの1以上の属性を含む第1属性に応じた第1秘密鍵を前記鍵発行機関に要求するとともに、前記第1属性に応じた第2秘密鍵を前記ユーザ端末に要求するステップと、
前記第1秘密鍵を前記鍵発行機関から取得し、前記第2秘密鍵を前記ユーザ端末から取得するステップと、
前記第1秘密鍵及び前記第2秘密鍵を用いて属性ベース暗号の復号用の第1復号鍵を生成するステップと、
を実行させるための暗号プログラム。
On the computer
Acquiring a first public key generated by an external key issuing organization, and a second public key generated by a user terminal belonging to a user system together with the computer;
Generating an encryption key for attribute-based encryption using the first public key and the second public key;
Requesting a first secret key according to a first attribute including one or more attributes of the computer from the key issuing organization, and requesting a second secret key according to the first attribute from the user terminal;
Acquiring the first secret key from the key issuing authority and acquiring the second secret key from the user terminal;
Generating a first decryption key for decryption of attribute based encryption using the first secret key and the second secret key;
Cryptographic program to run.
JP2017217331A 2017-11-10 2017-11-10 Cryptographic systems, user systems, cryptographic methods, and cryptographic programs Active JP6936482B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017217331A JP6936482B2 (en) 2017-11-10 2017-11-10 Cryptographic systems, user systems, cryptographic methods, and cryptographic programs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017217331A JP6936482B2 (en) 2017-11-10 2017-11-10 Cryptographic systems, user systems, cryptographic methods, and cryptographic programs

Publications (2)

Publication Number Publication Date
JP2019086744A true JP2019086744A (en) 2019-06-06
JP6936482B2 JP6936482B2 (en) 2021-09-15

Family

ID=66762992

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017217331A Active JP6936482B2 (en) 2017-11-10 2017-11-10 Cryptographic systems, user systems, cryptographic methods, and cryptographic programs

Country Status (1)

Country Link
JP (1) JP6936482B2 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012203182A (en) * 2011-03-25 2012-10-22 Mitsubishi Electric Corp Encryption processing system, key generation device, encryption device, decoding device, encryption processing method, and encryption processing program
JP2014139623A (en) * 2013-01-21 2014-07-31 Nippon Telegr & Teleph Corp <Ntt> Function type cryptography system and method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012203182A (en) * 2011-03-25 2012-10-22 Mitsubishi Electric Corp Encryption processing system, key generation device, encryption device, decoding device, encryption processing method, and encryption processing program
JP2014139623A (en) * 2013-01-21 2014-07-31 Nippon Telegr & Teleph Corp <Ntt> Function type cryptography system and method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
高島克幸,岡本龍明: "アクセス権限を制御できる最新技術「関数型暗号」", 日経エレクトロニクス, vol. 第1087号, JPN6021030201, pages 87 - 95, ISSN: 0004566475 *

Also Published As

Publication number Publication date
JP6936482B2 (en) 2021-09-15

Similar Documents

Publication Publication Date Title
KR102025409B1 (en) Data access management system based on blockchain and method thereof
Yan et al. Heterogeneous data storage management with deduplication in cloud computing
Hota et al. Capability-based cryptographic data access control in cloud computing
CN108418784B (en) Distributed cross-domain authorization and access control method based on attribute password
US10735186B2 (en) Revocable stream ciphers for upgrading encryption in a shared resource environment
CN113037484B (en) Data transmission method, device, terminal, server and storage medium
WO2021098152A1 (en) Blockchain-based data processing method, device, and computer apparatus
CN114679340B (en) File sharing method, system, device and readable storage medium
Li et al. Multi-user searchable encryption with a designated server
JP2007201522A (en) Encryption communication system, key sharing method, key providing apparatus, and information processing apparatus
Kalaivani et al. Enhanced hierarchical attribute based encryption with modular padding for improved public auditing in cloud computing using semantic ontology
JP6401875B2 (en) Data processing system
Ramachandran et al. Secure and efficient data forwarding in untrusted cloud environment
JP4891933B2 (en) Access control device, access control method and program
US20240179150A1 (en) Management of access rights to digital files with possible delegation of the rights
JP2020099010A (en) Information processing method, information processing device, program, and information processing system
JP6936482B2 (en) Cryptographic systems, user systems, cryptographic methods, and cryptographic programs
Srisakthi et al. Pcsp: A protected cloud storage provider employing light weight techniques
Yasmin et al. Decentralized Entrance Power with Secret Endorsement of Data Stored in Clouds
Swetha et al. Security on mobile cloud computing using cipher text policy and attribute based encryption scheme
Dhal et al. RACC: an efficient and revocable fine grained access control model for cloud storage
Liu et al. A secure and efficient data sharing framework with delegated capabilities in hybrid cloud
Ullah et al. QuSigS: A quantum Signcryption scheme to recover key escrow problem and key revocation problem in cloud computing
SATHEESH et al. A NOVEL HARDWARE PARAMETERS BASED CLOUD DATA ENCRYPTION AND DECRYPTION AGAINST UNAUTHORIZED USERS.
JP2020098993A (en) Data management device, data management method, data management program, and data management system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201021

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210622

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210820

R150 Certificate of patent or registration of utility model

Ref document number: 6936482

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150