JP2016076759A - Cryptographic system, encryption method, universal re-encryption key generation device and re-encryption key generation device - Google Patents
Cryptographic system, encryption method, universal re-encryption key generation device and re-encryption key generation device Download PDFInfo
- Publication number
- JP2016076759A JP2016076759A JP2014204445A JP2014204445A JP2016076759A JP 2016076759 A JP2016076759 A JP 2016076759A JP 2014204445 A JP2014204445 A JP 2014204445A JP 2014204445 A JP2014204445 A JP 2014204445A JP 2016076759 A JP2016076759 A JP 2016076759A
- Authority
- JP
- Japan
- Prior art keywords
- key
- encryption
- ciphertext
- encryption key
- universal
- 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
Links
- 238000000034 method Methods 0.000 title description 73
- 238000006243 chemical reaction Methods 0.000 claims description 11
- 238000012545 processing Methods 0.000 description 65
- 238000004364 calculation method Methods 0.000 description 32
- 239000013598 vector Substances 0.000 description 30
- 238000010586 diagram Methods 0.000 description 17
- 230000006870 function Effects 0.000 description 17
- 238000003860 storage Methods 0.000 description 16
- 239000011159 matrix material Substances 0.000 description 13
- 125000004122 cyclic group Chemical group 0.000 description 5
- 238000013507 mapping Methods 0.000 description 4
- 239000003795 chemical substances by application Substances 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000012797 qualification Methods 0.000 description 3
- 238000002910 structure generation Methods 0.000 description 3
- 239000000654 additive Substances 0.000 description 2
- 230000000996 additive effect Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
Images
Abstract
Description
この発明は、属性ベース暗号における代理人再暗号化(Attribute−Based Proxy Re―Encrtyption、AB−PRE)に関するものである。 The present invention relates to proxy re-encryption (Attribute-Based Proxy Re-Encryption, AB-PRE) in attribute-based encryption.
代理人再暗号化は、暗号文を復号することなく、暗号文の復号権限を他者に委譲するシステムである。言い換えると、代理人再暗号化は、暗号文を復号することなく、暗号文の復号可能な範囲を変更するシステムである。
非特許文献1には、AB−PRE方式に関する記載がある。非特許文献2には、属性を特定のユーザが任意に変更できる属性ベース暗号(Adaptable Attribute−Based Encryption,Ad−PRE)方式に関する記載がある。
The agent re-encryption is a system that delegates the authority to decrypt the ciphertext to another person without decrypting the ciphertext. In other words, the agent re-encryption is a system that changes the decryptable range of the ciphertext without decrypting the ciphertext.
Non-Patent Document 1 describes the AB-PRE method. Non-Patent
PREにおいて、暗号文のアクセス範囲を変更する際に用いられる再暗号化鍵は、変更したいアクセス範囲毎に異なるものを生成する必要がある。非特許文献1に記載されているAB−PRE方式では、再暗号化鍵を生成するためには、ユーザの秘密鍵、又は、マスター秘密鍵が必要である。そのため、再暗号化鍵を生成する度に、ユーザが秘密鍵を用いた処理を行わなければならず利便性が低くなる、あるいは、再暗号化鍵を生成する度に、マスター秘密鍵を用いた処理を行わなければならず安全性が低くなるという課題がある。 In the PRE, the re-encryption key used when changing the ciphertext access range needs to be generated differently for each access range to be changed. In the AB-PRE system described in Non-Patent Document 1, a user's secret key or master secret key is required to generate a re-encryption key. Therefore, every time a re-encryption key is generated, the user must perform processing using the secret key, which is less convenient, or every time a re-encryption key is generated, the master secret key is used. There is a problem that the process must be performed and safety is lowered.
非特許文献2に記載されているAd−PRE方式では、特定の高い権限を持ったエンティティであれば、どのような暗号文のアクセス範囲も自由に変更することができる。しかし、どのような暗号文も、いかなるアクセス範囲にも変更できてしまうため、安全性の面で課題がある。
In the Ad-PRE method described in
この発明は、利便性と安全性との少なくとも一方を高めた代理人再暗号化方式を提供することを目的とする。 An object of the present invention is to provide an agent re-encryption method that improves at least one of convenience and security.
この発明に係る暗号システムは、
ユーザ秘密鍵で復号可能なオリジナル暗号文を復号できないように前記ユーザ秘密鍵を変換して普遍再暗号化鍵を生成する普遍再暗号化鍵生成装置と、
前記ユーザ秘密鍵で復号可能なオリジナル暗号文についての復号可能な範囲を変更する再暗号化をするための再暗号化鍵であって、前記オリジナル暗号文を復号可能な範囲を示す情報が設定された再暗号化鍵を前記普遍再暗号化鍵生成装置が生成した前記普遍再暗号化鍵から生成する再暗号化鍵生成装置と
を備える。
An encryption system according to the present invention includes:
A universal re-encryption key generation device that generates a universal re-encryption key by converting the user secret key so that the original ciphertext that can be decrypted by the user private key cannot be decrypted;
A re-encryption key for re-encrypting to change a decryptable range for an original ciphertext that can be decrypted with the user private key, and information indicating a range in which the original ciphertext can be decrypted is set. A re-encryption key generating device that generates the re-encryption key from the universal re-encryption key generated by the universal re-encryption key generating device.
この発明に係る暗号システムでは、普遍再暗号化鍵生成装置が生成した普遍再暗号化鍵から再暗号化鍵生成装置が再暗号化鍵を生成する。普遍再暗号化鍵生成装置が普遍再暗号化鍵を1つ生成すれば、再暗号化鍵生成装置は変更したいアクセス範囲毎の再暗号化鍵を生成することが可能である。そのため、利便性と安全性との少なくとも一方を高めることが可能である。 In the cryptographic system according to the present invention, the re-encryption key generation device generates a re-encryption key from the universal re-encryption key generated by the universal re-encryption key generation device. If the universal re-encryption key generation device generates one universal re-encryption key, the re-encryption key generation device can generate a re-encryption key for each access range to be changed. Therefore, it is possible to improve at least one of convenience and safety.
実施の形態1.
***記法の説明***
以下の説明における記法について説明する。
Aがランダムな値または分布であるとき、数101は、Aの分布に従いAからyをランダムに選択することを表す。つまり、数101において、yは乱数である。
*** Explanation of notation ***
The notation in the following description will be described.
When A is a random value or distribution, Equation 101 represents selecting y from A randomly according to the distribution of A. That is, in Equation 101, y is a random number.
***基礎となる概念の説明***
<双線形写像>
対称双線形ペアリング群(p,G,GT,g,e)は、素数pと、位数pの巡回加法群Gと、位数pの巡回乗法群GTと、g≠0∈Gと、多項式時間で計算可能な非退化双線形ペアリングe:G×G→GTとの組である。非退化双線形ペアリングは、e(sg,tg)=e(g,g)stであり、e(g,g)≠1である。
*** Explanation of basic concepts ***
<Bilinear map>
Symmetric bilinear pairing groups (p, G, G T, g, e) is a prime number p, a cyclic additive group G of order p, and a cyclic multiplicative group G T of order p, g ≠ 0∈G If, nondegenerate bilinear pairing that can be calculated in polynomial time e: a set of a G × G → G T. Non-degenerate bilinear pairing is e (sg, tg) = e (g, g) st and e (g, g) ≠ 1.
<アクセス構造>
以下に説明するAB−PRE方式では、モノトーンアクセス構造が用いられる。
<Access structure>
In the AB-PRE system described below, a monotone access structure is used.
{P1,...,Pn}をユーザの集合とする。ユーザの集合族F⊆2{P1,...,Pn}と任意のユーザの集合Pi及び集合Pjとについて、Pi∈FかつPi⊆Pjならば、Pj∈Fである場合、ユーザの集合族Fはモノトーンである。ここで、F⊆2{P1,...,Pn}の{P1,...,Pn}は{P1,...,Pn}のことである。
{P 1 ,. . . , P n } is a set of users. User's collective family FP2 {P1,. . . , Pn} and any user set P i and set P j , if P i εF and P i ⊆P j, then if P j εF, then the user set family F is monotone. Here,
集合族Fがモノトーンであることに加えて、集合族Fが要素として空集合を含まない場合、集合族Fはモノトーンアクセス構造を構成する。集合族F内の集合を有資格集合と呼ぶ。 In addition to the set family F being monotone, if the set family F does not contain an empty set as an element, the set family F constitutes a monotone access structure. A set in the set family F is called a qualified set.
ABEでは、属性をユーザの集合で表す。つまり、アクセス構造Fは、属性の有資格集合から構成される。 In ABE, an attribute is represented by a set of users. That is, the access structure F is composed of a qualified set of attributes.
<線形秘密分散法>
条件1,2を満たす場合、秘密分散法Πは、集合族Fの下、群Zp上で線形である。つまり、線形秘密分散法である。
条件1:集合族Fの各集合に割り当てられる共有情報は、群Zp上のベクトルで形成される。そこで、共有情報をシェアベクトルと呼ぶ。
条件2:秘密分散法Πに対して、共有生成行列と呼ばれるL行r列の行列Mが存在する。i=1,...,Lの各整数iについて、集合族Fの集合を、行列Mのi番目の行に対して割り当てるインデックスρ(i)の集合ρと、ベクトルv→=(s,r2,...,rL)とが設定される。ここで、秘密値s∈Zpであり、乱数値r2,...,rL∈Zpである。そして、Mv→={M1v→,...,MLv→}が秘密分散法Πの秘密値sのL個のシェアベクトルとなっている。シェアベクトルMiv→は、インデックスρ(i)に対応する。
<Linear secret sharing method>
When the
Condition 1: shared information assigned to each of the sets Group F is formed by the vector on the group Z p. Therefore, the shared information is called a share vector.
Condition 2: For the secret sharing scheme, there exists an L-row r-column matrix M called a shared generator matrix. i = 1,. . . , L for each integer i, a set ρ of an index ρ (i) that assigns a set of the set family F to the i-th row of the matrix M, and a vector v → = (s, r 2 ,. r L ) is set. Here, the secret value sεZ p and the random value r 2 ,. . . , R L εZ p . And Mv → = {M 1 v → ,. . . , M L v → } are L share vectors of the secret value s of the secret sharing scheme. The share vector M i v → corresponds to the index ρ (i).
アクセス構造Fは、上述した行列Mと、インデックスの集合ρとの組とする。つまり、F=(M,ρ)である。
秘密分散法Πがアクセス構造F=(M,ρ)の下、LSSSであるとする。すると、任意の有資格集合S∈Fとし、I⊂{1,2,...,L}をI={i:ρ(i)∈S}とする。もし、{λi=Miv→}i∈Iが秘密分散法Πに従った秘密値sの正しいシェアベクトルの組である場合、Σi∈Iωi・λi=sとなる定数{ωi∈Zp}i∈Iが存在する。また、定数{ωi∈Zp}は、行列Mのサイズに対して多項式時間で計算可能である。
The access structure F is a set of the matrix M described above and the index set ρ. That is, F = (M, ρ).
Suppose that the secret sharing scheme is LSSS under the access structure F = (M, ρ). Then, an arbitrary qualified set S∈F, and I⊂ {1, 2,. . . , L} is I = {i: ρ (i) εS}. If {λ i = M i v → } iεI is a set of correct share vectors of the secret value s according to the secret sharing scheme 定 数 , a constant {Σ iεI ω i · λ i = s { there are ω i ∈Z p} i∈I. The constant {ω i εZ p } can be calculated in polynomial time for the size of the matrix M.
***構成の説明***
実施の形態1では、暗号文ポリシーのAB−PRE方式について説明する。暗号文ポリシーとは、暗号文にポリシーが埋め込まれること、つまりアクセス構造Fが埋め込まれることを意味する。
*** Explanation of configuration ***
In the first embodiment, an AB-PRE scheme for ciphertext policies will be described. The ciphertext policy means that the policy is embedded in the ciphertext, that is, the access structure F is embedded.
AB−PRE方式の基本構成について説明する。
AB−PRE方式は、Setup、KG、URKG、RKG、Enc、REnc、DecEnc、DecReEncの8つのアルゴリズムを備える暗号方法である。
A basic configuration of the AB-PRE method will be described.
The AB-PRE scheme is an encryption method including eight algorithms: Setup, KG, URKG, RKG, Enc, REnc, Dec Enc , and Dec ReEnc .
(Setup:セットアップ工程)
Setupアルゴリズムは、属性Uと、セキュリティパラメータ1λとを入力として、公開鍵pkと、マスター秘密鍵mskと、再暗号化秘密鍵rskとを出力する確率的アルゴリズムである。
(Setup: Setup process)
The Setup algorithm is a probabilistic algorithm that outputs the public key pk, the master secret key msk, and the re-encrypted secret key rsk with the attribute U and the security parameter 1 λ as inputs.
(KG:鍵生成工程)
KGアルゴリズムは、公開鍵pkと、マスター秘密鍵mskと、属性の有資格集合Sとを入力として、ユーザ秘密鍵skSを出力する確率的アルゴリズムである。
(KG: Key generation process)
The KG algorithm is a probabilistic algorithm that outputs a user secret key sk S with a public key pk, a master secret key msk, and a qualified set S of attributes as inputs.
(Enc:暗号化工程)
Encアルゴリズムは、公開鍵pkと、アクセス構造Fと、メッセージmとを入力として、オリジナル暗号文octFを出力する確率的アルゴリズムである。
(Enc: encryption process)
The Enc algorithm is a probabilistic algorithm that outputs the original ciphertext oct F with the public key pk, the access structure F, and the message m as inputs.
(URKG:普遍暗号化鍵生成工程)
URKGアルゴリズムは、公開鍵pkと、ユーザ秘密鍵skSとを入力として、普遍再暗号化鍵urkSを出力する確率的アルゴリズムである。
(URKG: Universal encryption key generation process)
The URKG algorithm is a stochastic algorithm that receives a public key pk and a user secret key sk S and outputs a universal re-encryption key urk S.
(RKG:再暗号化鍵生成工程)
RKGアルゴリズムは、公開鍵pkと、普遍再暗号化鍵urkSと、再暗号化秘密鍵rskと、アクセス構造F’とを入力として、再暗号化鍵rkS→F’を出力する確率的アルゴリズムである。
(RKG: Re-encryption key generation process)
The RKG algorithm uses a public key pk, a universal re-encryption key urk S , a re-encryption secret key rsk, and an access structure F ′ as inputs, and outputs a re-encryption key rk S → F ′. It is.
(REnc:再暗号化工程)
REncアルゴリズムは、公開鍵pkと、再暗号化鍵rkS→F’と、オリジナル暗号文octFとを入力として、再暗号文rctF’を出力する確率的アルゴリズムである。
(REnc: re-encryption process)
The REnc algorithm is a probabilistic algorithm that receives the public key pk, the re-encryption key rk S → F ′, and the original cipher text oct F , and outputs the re-cipher text rct F ′ .
(DecEnc:復号工程)
DecEncアルゴリズムは、公開鍵pkと、ユーザ秘密鍵skSと、オリジナル暗号文octFとを入力として、メッセージm、又は、復号失敗を表す記号⊥を出力する確定的アルゴリズムである。
(Dec Enc : Decoding process)
The Dec Enc algorithm is a deterministic algorithm that receives the public key pk, the user secret key sk S, and the original ciphertext oct F and outputs a message m or a symbol 表 す representing a decryption failure.
(DecReEnc:再暗号文復号工程)
DecReEncアルゴリズムは、公開鍵pkと、ユーザ秘密鍵skS’と、再暗号文rctF’とを入力として、メッセージm、又は、復号失敗を表す記号⊥を出力する確定的アルゴリズムである。
(Dec ReEnc : Re-ciphertext decryption step)
The Dec ReEnc algorithm is a deterministic algorithm that outputs a message m or a symbol 表 す indicating a decryption failure with the public key pk, the user secret key sk S ′, and the re-ciphertext rct F ′ as inputs.
図1は、実施の形態1に係る暗号システム10の構成図である。
暗号システム10は、鍵生成装置100と、暗号化装置200と、再暗号化鍵生成装置300と、再暗号化装置400と、復号装置500と、再暗号文復号装置600とを備える。鍵生成装置100は、普遍再暗号化鍵生成装置700を備える。
なお、ここでは、属性の有資格集合Sを有するユーザが使用する装置が復号装置500であり、属性の有資格集合S’を有するユーザが使用する装置が再暗号文復号装置600であるする。
FIG. 1 is a configuration diagram of an encryption system 10 according to the first embodiment.
The encryption system 10 includes a
Here, the device used by the user having the qualified set S of attributes is the
鍵生成装置100は、属性Uとセキュリティパラメータ1λとを入力として、Setupアルゴリズムを実行して、公開鍵pkと、マスター秘密鍵mskと、再暗号化秘密鍵rskとを生成する。また、鍵生成装置100は、公開鍵pkと、マスター秘密鍵mskと、ユーザの属性の有資格集合Sとを入力として、KGアルゴリズムを実行して、属性の有資格集合Sが設定されたユーザ秘密鍵skSを生成する。同様に、鍵生成装置100は、公開鍵pkと、マスター秘密鍵mskと、ユーザの属性の有資格集合S’とを入力として、KGアルゴリズムを実行して、属性の有資格集合S’が設定されたユーザ秘密鍵skS’を生成する。
そして、鍵生成装置100は、公開鍵pkを公開する。また、鍵生成装置100は、ユーザ秘密鍵skSを復号装置500と、普遍再暗号化鍵生成装置700とへ秘密裡に出力し、鍵生成装置100は、ユーザ秘密鍵skS’を再暗号文復号装置600へ秘密裡に出力する。また、鍵生成装置100は、再暗号化秘密鍵rskを再暗号化鍵生成装置300へ秘密裡に出力する。
なお、Setupアルゴリズムは、暗号システム10のセットアップ時に1度だけ実行される。その後、Setupアルゴリズムは、例えば、公開鍵pkとマスター秘密鍵mskと再暗号化秘密鍵rskとの少なくともいずれかを変更する必要がある場合に実行される。KGアルゴリズムは、各ユーザのユーザ秘密鍵を生成する度に実行される。
The
Then, the
Note that the Setup algorithm is executed only once when the cryptographic system 10 is set up. Thereafter, the Setup algorithm is executed when, for example, at least one of the public key pk, the master secret key msk, and the re-encryption secret key rsk needs to be changed. The KG algorithm is executed every time a user secret key for each user is generated.
暗号化装置200は、公開鍵pkと、アクセス構造Fと、メッセージmとを入力として、Encアルゴリズムを実行して、復号可能な範囲を示す情報としてアクセス構造Fを設定してメッセージmを暗号化したオリジナル暗号文octFを生成する。暗号化装置200は、オリジナル暗号文octFを再暗号化装置400と復号装置500とへ出力する。
The
普遍再暗号化鍵生成装置700は、公開鍵pkと、ユーザ秘密鍵skSとを入力として、URKGアルゴリズムを実行して、ユーザ秘密鍵skSで復号可能な暗号文を復号できないようにユーザ秘密鍵skSを変換して普遍再暗号化鍵urkSを生成する。普遍再暗号化鍵生成装置700は、普遍再暗号化鍵urkSを再暗号化鍵生成装置300へ秘密裡に出力する。
The universal re-encryption
再暗号化鍵生成装置300は、公開鍵pkと、普遍再暗号化鍵urkSと、再暗号化秘密鍵rskと、アクセス構造F’とを入力として、RKGアルゴリズムを実行して、再暗号化鍵rkS→F’を生成する。ここで生成される再暗号化鍵rkS→F’は、普遍再暗号化鍵urkSの生成時に利用したユーザ秘密鍵skSで復号可能な暗号文octFについての復号可能な範囲変更するための鍵であり、復号可能な範囲を示す情報としてアクセス構造F’が設定されている。再暗号化鍵生成装置300は、再暗号化鍵rkS→F’を再暗号化装置400へ出力する。
The re-encryption
再暗号化装置400は、公開鍵pkと、再暗号化鍵rkS→F’と、オリジナル暗号文octFとを入力として、REncアルゴリズムを実行して、オリジナル暗号文octFに設定された復号可能な範囲を示す情報を、アクセス構造Fからアクセス構造F’に変更して再暗号文rctF’を生成する。再暗号化装置400は、再暗号文rctF’を再暗号文復号装置600へ出力する。
The
復号装置500は、公開鍵pkと、ユーザ秘密鍵skSと、オリジナル暗号文octFとを入力として、DecEncアルゴリズムを実行して、メッセージm、又は、復号失敗を表す記号⊥を出力する。
The
再暗号文復号装置600は、公開鍵pkと、ユーザ秘密鍵skS’と、再暗号文rctF’とを入力として、DecReEncアルゴリズムを実行して、メッセージm、又は、復号失敗を表す記号⊥を出力する。
The
図2は、実施の形態1に係る鍵生成装置100の機能構成図である。
鍵生成装置100は、情報取得部110と、マスター鍵生成部120と、マスター鍵記憶部130と、ユーザ秘密鍵生成部140と、鍵出力部150とを備える。
また、上述した通り、鍵生成装置100は、普遍再暗号化鍵生成装置700を備える。普遍再暗号化鍵生成装置700の構成については後述する。
FIG. 2 is a functional configuration diagram of the
The
Further, as described above, the
情報取得部110は、暗号システム10の管理者によって入力された属性U及びセキュリティパラメータ1λ及び属性の有資格集合Sと、マスター鍵記憶部130に記憶された公開鍵pk及びマスター秘密鍵mskとを取得する。情報取得部110は、各情報を取得する機能として、セキュリティパラメータ取得部111と、属性カテゴリ取得部112と、マスター鍵取得部113と、有資格集合取得部114とを備える。
The
マスター鍵生成部120は、情報取得部110によって取得されたセキュリティパラメータ1λと属性Uとを用いて、公開鍵pkと、マスター秘密鍵mskと、再暗号化秘密鍵rskとを生成する。マスター鍵生成部120は、写像生成部121と、パラメータ生成部122と、アクセス構造生成部123と、エンコード関数生成部124と、鍵要素生成部125とを備える。
The master
マスター鍵記憶部130は、マスター鍵生成部120によって生成された公開鍵pkと、マスター秘密鍵mskと、再暗号化秘密鍵rskとを記憶する。
The master
ユーザ秘密鍵生成部140は、情報取得部110によって取得された属性の有資格集合Sと公開鍵pkとマスター秘密鍵mskとを用いて、属性の有資格集合Sを含むユーザ秘密鍵skSを生成する。ユーザ秘密鍵生成部140は、属性集合判定部141と、乱数生成部142と、鍵要素生成部143とを備える。
The user secret
鍵出力部150は、マスター鍵生成部120によって生成された公開鍵pkを公開用のサーバへ出力すること等により、公開する。また、鍵出力部150は、マスター鍵生成部120によって生成された再暗号化秘密鍵rskを再暗号化鍵生成装置300へ出力する。また、鍵出力部150は、ユーザ秘密鍵生成部140によって生成されたユーザ秘密鍵skSを復号装置500と普遍再暗号化鍵生成装置700とへ出力する。出力するとは、例えば、ネットワークを介して送信することである。
The key output unit 150 publishes the public key pk generated by the master
図3は、実施の形態1に係る暗号化装置200の機能構成図である。
暗号化装置200は、情報取得部210と、暗号文生成部220と、暗号文出力部230とを備える。
FIG. 3 is a functional configuration diagram of the
The
情報取得部210は、鍵生成装置100によって生成された公開鍵pkと、暗号化装置200のユーザによって入力されたメッセージm及びアクセス構造Fとを取得する。情報取得部210は、各情報を取得する機能として、公開鍵取得部211と、メッセージ取得部212と、アクセス構造取得部213とを備える。
The
暗号文生成部220は、情報取得部210によって取得された公開鍵pkとアクセス構造Fとを用いて、メッセージmを暗号化してオリジナル暗号文octFの暗号要素C0,C1,C2.i,Diを生成する。暗号文生成部220は、ランダムベクトル生成部221と、乱数生成部222と、暗号要素生成部223とを備える。
The
暗号文出力部230は、情報取得部210によって取得されたアクセス構造Fと、暗号文生成部220によって生成された暗号要素C0,C1,C2.i,Diとを含むオリジナル暗号文octFを復号装置500及び再暗号化装置400へ出力する。出力するとは、例えば、ネットワークを介して送信することである。
The
図4は、実施の形態1に係る普遍再暗号化鍵生成装置700の機能構成図である。
普遍再暗号化鍵生成装置700は、情報取得部710と、普遍再暗号化鍵生成部720と、普遍再暗号化鍵出力部730とを備える。
FIG. 4 is a functional configuration diagram of universal re-encryption
The universal re-encryption
情報取得部710は、鍵生成装置100によって生成された公開鍵pkとユーザ秘密鍵skSとを取得する。情報取得部710は、各情報を取得する機能として、公開鍵取得部711と、ユーザ秘密鍵取得部712とを備える。
The
普遍再暗号化鍵生成部720は、情報取得部710によって取得された公開鍵pkとユーザ秘密鍵skSとを用いて、普遍再暗号化鍵urkSの要素である変換後ユーザ秘密鍵skd:=(RK0,RK1,RK2.i)とパラメータ暗号文ctdF^:=(RC^0,RC^1,RC^2.i,RD^i)とを生成する。普遍再暗号化鍵生成部720は、乱数生成部721と、復号鍵変換部722と、ランダムベクトル生成部723と、パラメータ暗号化部724とを備える。
The universal re-encryption
普遍再暗号化鍵出力部730は、情報取得部710によって取得されたユーザ秘密鍵skSに含まれる属性の有資格集合Sと、普遍再暗号化鍵生成部720によって生成された変換後ユーザ秘密鍵skdとパラメータ暗号文ctdF^とを含む普遍再暗号化鍵urkSを再暗号化鍵生成装置300へ出力する。出力するとは、例えば、ネットワークを介して送信することである。
The universal re-encryption
図5は、実施の形態1に係る再暗号化鍵生成装置300の機能構成図である。
再暗号化鍵生成装置300は、情報取得部310と、再暗号化鍵生成部320と、再暗号化鍵出力部330とを備える。
FIG. 5 is a functional configuration diagram of the re-encryption
The re-encryption
情報取得部310は、鍵生成装置100によって生成された公開鍵pk及び再暗号化秘密鍵rskと、普遍再暗号化鍵生成装置700によって生成された普遍再暗号化鍵urkSと、ユーザ秘密鍵skSを使用するユーザ等によって入力されたアクセス構造F’とを取得する。情報取得部310は、各情報を取得する機能として、公開鍵取得部311と、普遍再暗号化鍵取得部312と、アクセス構造取得部313とを備える。
The
再暗号化鍵生成部320は、情報取得部310によって取得された公開鍵pkと再暗号化秘密鍵rskと普遍再暗号化鍵urkSとアクセス構造F’とを用いて、再暗号化鍵rkS→F’の要素である変換後暗号文ctdF’:=(RC^’0,RC^’1,RC^’2.i,RD^’i)を生成する。再暗号化鍵生成部320は、ランダムベクトル生成部321と、乱数生成部322と、属性設定部323とを備える。
The re-encryption
再暗号化鍵出力部330は、情報取得部310によって取得された普遍再暗号化鍵urkSに含まれる属性の有資格集合Sと、情報取得部310によって取得されたアクセス構造F’と、再暗号化鍵生成部320によって生成された変換後暗号文ctdFとを含む再暗号化鍵rkS→F’を再暗号化装置400へ出力する。出力するとは、例えば、ネットワークを介して送信することである。
The re-encryption
図6は、実施の形態1に係る再暗号化装置400の機能構成図である。
再暗号化装置400は、情報取得部410と、再暗号化判定部420と、再暗号化部430と、再暗号文出力部440とを備える。
FIG. 6 is a functional configuration diagram of the
The
情報取得部410は、鍵生成装置100によって生成された公開鍵pkと、再暗号化鍵生成装置300によって生成された再暗号化鍵rkS→F’と、暗号化装置200によって生成されたオリジナル暗号文octFとを取得する。情報取得部410は、各情報を取得する機能として、公開鍵取得部411と、再暗号化鍵取得部412と、オリジナル暗号文取得部413とを備える。
The
再暗号化判定部420は、情報取得部410によって取得された再暗号化鍵rkS→F’に含まれる属性の有資格集合Sと、情報取得部410によって取得されたオリジナル暗号文octFに含まれるアクセス構造Fとに基づき、再暗号化が可能か判定する。
The
再暗号化部430は、再暗号化が可能であると再暗号化判定部420によって判定された場合、情報取得部410によって取得された公開鍵pkと再暗号化鍵rkS→F’とオリジナル暗号文octFとを用いて、再暗号文rctF’の要素である復号情報decd=ReC1を生成する。再暗号化部430は、定数計算部431と、ペアリング演算部432とを備える。
When the
再暗号文出力部440は、情報取得部410によって取得された再暗号化鍵rkS→F’に含まれるアクセス構造F’及び変換後暗号文ctdF と、オリジナル暗号文octFに含まれる暗号要素ReC0=C0と、再暗号化部430によって生成された変換後ユーザ秘密鍵skdを含む再暗号文rctF’を、再暗号文復号装置600へ出力する。出力するとは、例えば、ネットワークを介して送信することである。
The
図7は、実施の形態1に係る復号装置500の機能構成図である。
復号装置500は、情報取得部510と、暗号文判定部520と、復号部530と、結果出力部540とを備える。
FIG. 7 is a functional configuration diagram of the
The
情報取得部510は、鍵生成装置100によって生成された公開鍵pk及びユーザ秘密鍵skSと、暗号化装置200によって生成されたオリジナル暗号文octFとを取得する。情報取得部510は、各情報を取得する機能として、公開鍵取得部511と、ユーザ秘密鍵取得部512と、オリジナル暗号文取得部513とを備える。
The
暗号文判定部520は、情報取得部510によって取得されたユーザ秘密鍵skSに含まれる属性の有資格集合Sと、情報取得部510によって取得されたオリジナル暗号文octFに含まれるアクセス構造Fとに基づき、復号が可能か判定する。
The
復号部530は、復号が可能であると暗号文判定部520によって判定された場合、情報取得部510によって取得された公開鍵pkとユーザ秘密鍵skSとを用いて、情報取得部510によって取得されたオリジナル暗号文octFを復号してメッセージmを生成する。復号部530は、定数計算部531と、ペアリング演算部532とを備える。
When the
結果出力部540は、復号が可能であると暗号文判定部520によって判定された場合、復号部530によって復号されたメッセージmを出力する。結果出力部540は、復号が不可能であると暗号文判定部520によって判定された場合、復号失敗を表す記号⊥を出力する。出力するとは、例えば、表示装置に表示することである。
When the
図8は、実施の形態1に係る再暗号文復号装置600の機能構成図である。
再暗号文復号装置600は、情報取得部610と、暗号文判定部620と、復号部630と、結果出力部640とを備える。
FIG. 8 is a functional configuration diagram of
The
情報取得部610は、鍵生成装置100によって生成された公開鍵pk及びユーザ秘密鍵skS’と、再暗号化装置400によって生成された再暗号文rctF’とを取得する。情報取得部610は、各情報を取得する機能として、公開鍵取得部611と、ユーザ秘密鍵取得部612と、再暗号文取得部613とを備える。
The
暗号文判定部620は、情報取得部610によって取得されたユーザ秘密鍵skS’に含まれる属性の有資格集合S’と、情報取得部610によって取得された再暗号文rctF’に含まれるアクセス構造F’とに基づき、復号が可能か判定する。
The
復号部630は、復号が可能であると暗号文判定部620によって判定された場合、情報取得部610によって取得された公開鍵pkとユーザ秘密鍵skS’とを用いて、情報取得部510によって取得された再暗号文rctF’を復号する。復号部630は、定数計算部631と、ペアリング演算部632と、デコード部633と、メッセージ計算部634とを備える。
When the
結果出力部640は、復号が可能であると暗号文判定部620によって判定された場合、復号部630によって復号されたメッセージmを出力する。結果出力部640は、復号が不可能であると暗号文判定部620によって判定された場合、復号失敗を表す記号⊥を出力する。出力するとは、例えば、表示装置に表示することである。
When the
***動作の説明***
図9は、Setupアルゴリズムの処理を示すフローチャートである。
Setupアルゴリズムは、図2に示す鍵生成装置100によって実行される。
*** Explanation of operation ***
FIG. 9 is a flowchart showing the process of the Setup algorithm.
The Setup algorithm is executed by the
(S101:情報取得処理)
セキュリティパラメータ取得部111は、暗号システム10の管理者等によって入力装置により入力された、セキュリティパラメータ1λを取得する。
属性カテゴリ取得部112は、暗号システム10で使用する属性U={1,2,...,|U|}を取得する。属性Uとは、例えば、所属部、所属課、社員ID等の属性カテゴリを示す情報である。
(S101: Information acquisition process)
The security parameter acquisition unit 111 acquires the security parameter 1 λ input from the input device by the administrator of the cryptographic system 10 or the like.
The attribute
(S102:写像生成処理)
写像生成部121は、S101で取得されたセキュリティパラメータ1λを入力として、双線形ペアリング群のパラメータparamG:=(p,G,GT,g,e)を生成する。ここで、巡回加法群Gと巡回乗法群GTとは位数pの剰余群である。
(S102: Mapping generation process)
The
(S103:パラメータ生成処理)
パラメータ生成部122は、処理装置により、数107に示すパラメータを生成する。
The
(S104:アクセス構造生成処理)
アクセス構造生成部123は、処理装置により、アクセス構造F〜を満たす属性の有資格集合Sが存在しないアクセス構造F〜=(M〜,ρ〜)を生成する。ここで、アクセス構造F〜に含まれる行列M〜は、L〜行r〜列の行列である。
アクセス構造F〜は、非正規の手順により、普遍再暗号化鍵urkSから後述するパラメータdを取り出されることがないようにために利用される。アクセス構造F〜を満たす属性の有資格集合S*が存在すると、その有資格集合S*から生成されたユーザ秘密鍵skS*を使えば、普遍再暗号化鍵urkSからパラメータdを取り出すことが可能になってしまう。そのため、アクセス構造F〜を満たす属性の有資格集合Sが存在しないアクセス構造F〜を生成する必要がある。
(S104: access structure generation process)
Access
The access structure F 1- is used so that a parameter d described later is not extracted from the universal re-encryption key urk S by an irregular procedure. When a qualified set of attributes S * exists to meet the access structure F ~, if you use the user secret key sk S * generated from the qualified set S *, to take out the parameter d from universal re-encryption key urk S Will be possible. Therefore, it is necessary to generate an access structure F ~ to the authorized set S of attributes that satisfy the access structure F ~ is not present.
(S105:エンコード関数生成処理)
エンコード関数生成部124は、処理装置により、位数pの群Zpの要素を、巡回乗法群GTの要素へ変換するエンコード関数Eを生成する。
(S105: Encoding function generation process)
(S106:鍵生成処理)
鍵要素生成部125は、処理装置により、S102で生成された双線形ペアリング群のパラメータparamGと、S103で生成されたパラメータと、S104で生成されたアクセス構造F〜と、S105で生成されたエンコード関数Eとを用いて、数108に示す公開鍵pkと、数109に示すマスター秘密鍵mskと、数110に示す再暗号化秘密鍵rskとを生成する。
The
(S107:鍵出力処理)
鍵出力部150は、公開鍵pkをネットワークを介して公開用のサーバへ出力すること等により、公開鍵pkを公開する。
また、鍵出力部150は、再暗号化秘密鍵rskをネットワークを介して再暗号化鍵生成装置300へ秘密裡に出力する。秘密裡に出力するとは、例えば、他の暗号方式により、再暗号化秘密鍵rskを暗号化して、再暗号化鍵生成装置300へ送信することである。もちろん、これに限らず、第三者へ漏洩しない他の方法により、再暗号化秘密鍵rskを再暗号化鍵生成装置300へ出力してもよい。
(S107: Key output process)
The key output unit 150 publishes the public key pk, for example, by outputting the public key pk to a public server via a network.
Also, the key output unit 150 secretly outputs the re-encrypted secret key rsk to the re-encrypted
図10は、実施の形態1に係るKGアルゴリズムの処理を示すフローチャートである。
KGアルゴリズムは、図2に示す鍵生成装置100によって実行される。
FIG. 10 is a flowchart showing processing of the KG algorithm according to the first embodiment.
The KG algorithm is executed by the
(S201:情報取得処理)
マスター鍵取得部113は、Setupアルゴリズムで生成された公開鍵pk及びマスター秘密鍵mskを取得する。
有資格集合取得部114は、暗号システム10の管理者等によって入力装置により入力された、ユーザ秘密鍵を使用するユーザの属性の有資格集合Sを取得する。ユーザの属性の有資格集合Sとは、そのユーザの属性を表す情報である。例えば、S101で入力された属性Uが所属部、所属課、社員IDという属性カテゴリを表す場合、属性の有資格集合Sは、そのユーザの所属部、所属課、社員IDを表す情報である。
(S201: Information acquisition process)
The master
The qualified
(S202:属性集合判定処理)
属性集合判定部141は、処理装置により、S201で取得された属性の有資格集合Sが、公開鍵pkに含まれるアクセス構造F〜を満たすか否か判定する。
この判定の具体的な方法は、アクセス構造F〜の設計によって異なる。しかし、線形秘密分散法の説明で述べた、I={i:ρ(i)∈S}とした場合に、Σi∈Iωi・λi=sとなる定数{ωi∈Zp}i∈Iが存在するか否かを判定することにより、判定することができる。
属性の有資格集合Sがアクセス構造F〜を満たさない場合、処理をS203へ進め、属性の有資格集合Sがアクセス構造F〜を満たす場合、処理を終了する。
(S202: attribute set determination processing)
Attribute
The specific method of determination is different depending on the access structure F ~ design. However, when I = {i: ρ (i) εS} described in the explanation of the linear secret sharing method, a constant {ω i εZ p } that satisfies Σ iεI ω i · λ i = s This can be determined by determining whether iεI exists.
If the authorized set S of attributes do not meet the access structure F ~, the process proceeds to S203, if the authorized set S of attributes to meet the access structure F ~, the process ends.
また、S104では、アクセス構造F〜を満たす属性の有資格集合Sが存在しないアクセス構造F〜を生成した。したがって、原則として、S201で入力された属性の有資格集合Sがアクセス構造F〜を満たすことはないので、この処理は省略してもよい。 Further, in S104, and it generates an access structure F ~ to the authorized set S of attributes that satisfy the access structure F ~ is not present. Therefore, in principle, since the authorized set S of attributes entered in S201 does not satisfy the access structure F ~, this processing may be omitted.
(S203:乱数生成処理)
乱数生成部142は、処理装置により、数111に示す乱数を生成する。
The random
(S204:鍵要素生成処理)
鍵要素生成部143は、処理装置により、S201で取得された公開鍵pk及びマスター秘密鍵sk及び属性の有資格集合Sと、S203で生成された乱数とを用いて、数112に示す鍵要素K0,K1,K2.i,K^0,K^1,K^2.iを生成する。
The key
鍵要素K0,K1,K2.iは、オリジナル暗号文を復号するために用いられる要素である。一方、鍵要素K^0,K^1,K^2.iは、再暗号文を復号するために用いられる要素である。
鍵要素K2.i及び鍵要素K^2.iには、ユーザ秘密鍵を使用するユーザの属性情報である属性の有資格集合Sが設定されている。つまり、オリジナル暗号文を復号するために用いられる要素と、再暗号文を復号するために用いられる要素との両方に、ユーザ秘密鍵を使用するユーザの属性情報である属性の有資格集合Sが設定されている。
Key elements K 0 , K 1 , K2 . i is an element used to decrypt the original ciphertext. On the other hand, the key elements K ^ 0 , K ^ 1 , K ^ 2. i is an element used to decrypt the re-ciphertext.
Key element K2 . i and key element K ^ 2. In i , a qualified set S of attributes which are attribute information of users who use the user secret key is set. That is, the attribute qualification set S that is the attribute information of the user who uses the user secret key is included in both the element used for decrypting the original ciphertext and the element used for decrypting the reciphertext. Is set.
(S205:鍵出力処理)
鍵出力部150は、S201で取得された属性の有資格集合Sと、S204で生成された鍵要素K0,K1,K2.i,K^0,K^1,K^2.iとを含むユーザ秘密鍵skSをネットワークを介して復号装置500へ秘密裡に出力する。
(S205: Key output processing)
The key output unit 150 includes the qualified set S of attributes acquired in S201 and the key elements K 0 , K 1 , K 2 generated in S204 . i , K ^ 0 , K ^ 1 , K ^ 2. The user secret key sk S including i is secretly output to the
ここでは、ユーザ秘密鍵skSを生成する場合について説明した。しかし、ユーザ秘密鍵skS’もユーザ秘密鍵skSと同様に生成される。
ユーザ秘密鍵skS’を生成する場合、S201で、属性の有資格集合S’が入力され、S204で、鍵要素K’0,K’1,K’2.i,K^’0,K^’1,K^’2.iが生成される。そして、S205で、属性の有資格集合S’と、鍵要素K’0,K’1,K’2.i,K^’0,K^’1,K^’2.iとを含むユーザ秘密鍵skS’がネットワークを介して再暗号文復号装置600へ秘密裡に出力される。
Here, the case where the user secret key sk S is generated has been described. However, the user secret key sk S ′ is also generated in the same manner as the user secret key sk S.
When generating the user secret key sk S ′ , a qualified set S ′ of attributes is input in S 201, and key elements K ′ 0 , K ′ 1 , K ′ in S 204 . i , K ^ ' 0 , K ^' 1 , K ^ ' 2. i is generated. In S205, the attribute qualified set S ′ and the key elements K ′ 0 , K ′ 1 , K′2 . i , K ^ ' 0 , K ^' 1 , K ^ ' 2. The user secret key sk S ′ including i is secretly output to the
図11は、実施の形態1に係るEncアルゴリズムの処理を示すフローチャートである。
Encアルゴリズムは、図3に示す暗号化装置200によって実行される。
(S301:情報取得処理)
公開鍵取得部211は、Setupアルゴリズムで生成された公開鍵pkを取得する。
メッセージ取得部212は、暗号化装置200のユーザによって入力装置により入力された、暗号化対象のメッセージmを取得する。
アクセス構造取得部213は、暗号化装置200のユーザによって入力装置により入力された、オリジナル暗号文octFを復号可能な範囲を示すアクセス構造F=(M,ρ)を取得する。ここで、アクセス構造Fに含まれる行列Mは、L行r列の行列である。
FIG. 11 is a flowchart showing processing of the Enc algorithm according to the first embodiment.
The Enc algorithm is executed by the
(S301: Information acquisition process)
The public
The
The access
(S302:ランダムベクトル生成処理)
ランダムベクトル生成部221は、処理装置により、ランダムにベクトルv=(s,v2,...,vr)∈Zp rを生成する。ここで、ベクトルvの先頭要素sが秘密値となる乱数であり、残りの要素v2,...,vrは特に意味を持たない乱数である。Zp rのrは、ベクトルの要素数がr個であることを意味している。
(S302: random vector generation process)
The random
(S303:乱数生成処理)
乱数生成部222は、処理装置により、数113に示す乱数を生成する。
The random
(S304:暗号要素生成処理)
暗号要素生成部223は、処理装置により、S301で取得された公開鍵pk及びメッセージm及びアクセス構造Fと、S302で生成されたベクトルvと、S303で生成された乱数とを用いて、数114に示す暗号要素C0,C1,C2.i,Diを生成する。
The cryptographic
暗号要素C2.iには、オリジナル暗号文octFを復号可能な範囲を示す属性情報であるアクセス構造Fが設定されている。 Cryptographic element C2 . In i , an access structure F which is attribute information indicating a range in which the original ciphertext oct F can be decrypted is set.
(S305:暗号文出力処理)
暗号文出力部230は、S301で取得されたアクセス構造Fと、S304で生成された暗号要素C0,C1,C2.i,Diとを含むオリジナル暗号文octFをネットワークを介して復号装置500及び再暗号化装置400へ秘密裡に出力する。
(S305: Ciphertext output processing)
The
図12は、実施の形態1に係るURKGアルゴリズムの処理を示すフローチャートである。
URKGアルゴリズムは、図4に示す普遍再暗号化鍵生成装置700によって実行される。
FIG. 12 is a flowchart showing processing of the URKG algorithm according to the first embodiment.
The URKG algorithm is executed by the universal re-encryption
(S401:情報取得処理)
公開鍵取得部711は、Setupアルゴリズムで生成された公開鍵pkを取得する。ユーザ秘密鍵取得部712は、KGアルゴリズムで生成されたユーザ秘密鍵skSを取得する。
(S401: Information acquisition process)
The public
(S402:パラメータd生成処理)
乱数生成部721は、処理装置により、数115に示す乱数であるパラメータdを生成する。
The random
(S403:復号鍵変換処理)
復号鍵変換部722は、処理装置により、S401で取得された公開鍵pk及びユーザ秘密鍵skSと、S402で生成されたパラメータdとを用いて、数116に示す変換後ユーザ秘密鍵skdの鍵要素RK0,RK1,RK2.iを生成する。
The decryption
(S404:ランダムベクトル生成処理)
ランダムベクトル生成部723は、処理装置により、ランダムにベクトルv〜=(s〜,v〜 2,...,v〜 r〜)∈Zp r〜を生成する。ここで、ベクトルv〜の先頭要素s〜が秘密値となる乱数であり、残りの要素v〜 2,...,v〜 rは特に意味を持たない乱数である。なお、ベクトルv〜におけるr〜はr〜のことである。
(S404: random vector generation process)
(S405:乱数生成処理)
乱数生成部721は、処理装置により、数117に示す乱数を生成する。
The random
(S406:パラメータ暗号化処理)
パラメータ暗号化部724は、処理装置により、S401で取得された公開鍵pkと、S402で生成されたパラメータdと、S404で生成されたベクトルv〜と、S405で生成された乱数とを用いて、数118に示すパラメータ暗号文ctdF^の暗号要素RC^0,RC^1,RC^2.i,RD^iを生成する。
(S407:普遍再暗号化鍵出力処理)
普遍再暗号化鍵出力部730は、S401で取得されたユーザ秘密鍵skSに含まれる属性の有資格集合Sと、S403で生成された変換後ユーザ秘密鍵skdの鍵要素RK0,RK1,RK2.iと、S406で生成されたパラメータ暗号文ctdF^の暗号要素RC^0,RC^1,RC^2.i,RD^iとを含む普遍再暗号化鍵urkSをネットワークを介して再暗号化鍵生成装置300へ秘密裡に出力する。
なお、普遍再暗号化鍵出力部730は、普遍再暗号化鍵urkSを鍵生成装置100の鍵出力部150へ出力し、鍵出力部150が普遍再暗号化鍵urkSを再暗号化鍵生成装置300へ秘密裡に出力してもよい。
(S407: Universal re-encryption key output process)
The universal re-encryption
The universal re-encryption
図13は、実施の形態1に係るRKGアルゴリズムの処理を示すフローチャートである。
RKGアルゴリズムは、図5に示す再暗号化鍵生成装置300によって実行される。
FIG. 13 is a flowchart showing processing of the RKG algorithm according to the first embodiment.
The RKG algorithm is executed by the re-encryption
(S501:情報取得処理)
公開鍵取得部311は、Setupアルゴリズムで生成された公開鍵pk及び再暗号化秘密鍵rskを取得する。
普遍再暗号化鍵取得部312は、URKGアルゴリズムで生成された普遍再暗号化鍵urkSを取得する。
アクセス構造取得部313は、ユーザ秘密鍵skSを使用するユーザ等によって入力装置により入力された、再暗号文rctF’を復号可能な範囲を示すアクセス構造F’=(M’,ρ’)を取得する。ここで、アクセス構造F’に含まれる行列M’は、L’行r’列の行列である。
(S501: Information acquisition process)
The public
The universal re-encryption
The access
(S502:ランダムベクトル生成処理)
ランダムベクトル生成部321は、処理装置により、ランダムにベクトルv^=(s^=s〜+s’,v^2,...,v^r’)∈Zp r’を生成する。ここで、ベクトルv^の先頭要素s’が秘密値となる乱数であり、残りの要素v^2,...,v^rは特に意味を持たない乱数である。
(S502: random vector generation process)
(S503:乱数生成処理)
乱数生成部322は、処理装置により、数119に示す乱数を生成する。
The random
(S504:属性設定処理)
属性設定部323は、処理装置により、S501で取得された公開鍵pk及び再暗号化秘密鍵rsk及び普遍再暗号化鍵urkS及びアクセス構造F’と、S502で生成されたベクトルv^と、S503で生成された乱数とを用いて、数120に示す変換後暗号文ctdF’の暗号要素RC^’0,RC^’1,RC^’2.i,RD^’iを生成する。
The
(S505:再暗号化鍵出力処理)
再暗号化鍵出力部330は、S501で取得されたアクセス構造F’及び普遍再暗号化鍵urkSに含まれる属性の有資格集合S及び変換後ユーザ秘密鍵skdの鍵要素RK0,RK1,RK2.iと、S504で生成された変換後暗号文ctdF’の暗号要素RC^’0,RC^’1,RC^’2.i,RD^’iとを含む再暗号化鍵rkS→F’をネットワークを介して再暗号化装置400へ秘密裡に出力する。
(S505: Re-encryption key output process)
Re-encryption
図14は、実施の形態1に係るREncアルゴリズムの処理を示すフローチャートである。
REncアルゴリズムは、図6に示す再暗号化装置400によって実行される。
FIG. 14 is a flowchart showing processing of the REnc algorithm according to the first embodiment.
The REnc algorithm is executed by the
(S601:情報取得処理)
公開鍵取得部411は、Setupアルゴリズムで生成された公開鍵pkを取得する。
再暗号化鍵取得部412は、RKGアルゴリズムで生成された再暗号化鍵rkS→F’を取得する。
オリジナル暗号文取得部413は、Encアルゴリズムで生成されたオリジナル暗号文octFを取得する。
(S601: Information acquisition process)
The public key acquisition unit 411 acquires the public key pk generated by the Setup algorithm.
The re-encryption
The original
(S602:再暗号化判定処理)
再暗号化判定部420は、処理装置により、S601で取得された再暗号化鍵rkS→F’に含まれる属性の有資格集合Sが、オリジナル暗号文octFに含まれるアクセス構造Fを満たすか否か判定する。
この判定の方法については、S202で説明した属性の有資格集合Sがアクセス構造F〜を満たすか否か判定する方法と同様である。
属性の有資格集合Sがアクセス構造Fを満たす場合、処理をS603へ進め、属性の有資格集合Sがアクセス構造Fを満たさない場合、処理を終了する。
(S602: Re-encryption determination process)
The
The method of this determination, the authorized set S of the attributes described in S202 is the same as the method for determining whether to satisfy the access structure F ~.
If the attribute qualified set S satisfies the access structure F, the process proceeds to S603. If the attribute qualified set S does not satisfy the access structure F, the process ends.
(S603:定数計算処理)
定数計算部431は、処理装置により、I={i:ρ(i)∈S}とした場合に、Σi∈IωiMi=(1,0,...,0)となる定数ωi∈Zpを計算する。ここで、Miは、行列Mのi番目の行である。
S202で説明した通り、属性の有資格集合Sがアクセス構造Fを満たす場合、I={i:ρ(i)∈S}とした場合に、Σi∈Iωi・λi=sとなる定数{ωi∈Zp}i∈Iが存在する。したがって、定数ωiを計算可能である。
(S603: Constant calculation process)
The
As described in S202, when the qualified set S of attributes satisfies the access structure F, when I = {i: ρ (i) εS}, Σ iεI ω i · λ i = s. There is a constant {ω i εZ p } iεI . Therefore, the constant ω i can be calculated.
(S604:ペアリング演算処理)
ペアリング演算部432は、処理装置により、S601で取得された公開鍵及び再暗号化鍵rkS→F’及びオリジナル暗号文octFと、S603で計算された定数ωiとを用いて、数121に示す演算を実行して、復号情報decd=ReC1を生成する。
The
(S605:再暗号文出力処理)
再暗号文出力部440は、S601で取得された再暗号化鍵rkS→F’に含まれるアクセス構造F’及び変換後暗号文ctdF’の暗号要素RC^’0,RC^’1,RC^’2.i,RD^’iと、オリジナル暗号文octFに含まれるC0=ReC0と、S604で生成された復号情報decd=ReC1とを含む再暗号文rctF’をネットワークを介して秘密裡に再暗号文復号装置600へ出力する。
(S605: Re-ciphertext output process)
The
図15は、実施の形態1に係るDecEncアルゴリズムの処理を示すフローチャートである。
DecEncアルゴリズムは、図7に示す復号装置500によって実行される。
FIG. 15 is a flowchart showing processing of the Dec Enc algorithm according to the first embodiment.
The Dec Enc algorithm is executed by the
(S701:情報取得処理)
公開鍵取得部511は、Setupアルゴリズムで生成された公開鍵pkを取得する。
ユーザ秘密鍵取得部512は、KGアルゴリズムで生成されたユーザ秘密鍵skSを取得する。
オリジナル暗号文取得部513は、Encアルゴリズムで生成されたオリジナル暗号文octFを取得する。
(S701: Information acquisition process)
The public
The user secret
The original
(S702:暗号文判定処理)
暗号文判定部520は、処理装置により、S701で取得されたユーザ秘密鍵skSに含まれる属性の有資格集合Sが、オリジナル暗号文octFに含まれるアクセス構造Fを満たすか否か判定する。
この判定の方法については、S202で説明した属性の有資格集合Sがアクセス構造F〜を満たすか否か判定する方法と同様である。
属性の有資格集合Sがアクセス構造Fを満たす場合、処理をS703へ進め、属性の有資格集合Sがアクセス構造Fを満たさない場合、処理をS705へ進める。
(S702: Ciphertext Judgment Processing)
The
The method of this determination, the authorized set S of the attributes described in S202 is the same as the method for determining whether to satisfy the access structure F ~.
If the attribute qualified set S satisfies the access structure F, the process proceeds to S703. If the attribute qualified set S does not satisfy the access structure F, the process proceeds to S705.
(S703:定数計算処理)
定数計算部531は、処理装置により、I={i:ρ(i)∈S}とした場合に、Σi∈IωiMi=(1,0,...,0)となる定数ωi∈Zpを計算する。S703の処理は、S603の処理と同様である。
(S703: Constant calculation processing)
The
(S704:ペアリング演算処理)
ペアリング演算部532は、処理装置により、S701で取得された公開鍵pk及びユーザ秘密鍵skS及びオリジナル暗号文octFと、S703で計算された定数ωiとを用いて、数122に示す演算を実行して、メッセージmを生成する。
The
(S705:結果出力処理)
結果出力部540は、S704でメッセージmを生成した場合には、生成されたメッセージmを出力する。一方、S702で属性の有資格集合Sがアクセス構造Fを満たさない場合には、復号失敗を表す記号⊥を出力する。
(S705: Result output processing)
The
図16は、実施の形態1に係るDecReEncアルゴリズムの処理を示すフローチャートである。
DecReEncアルゴリズムは、図8に示す再暗号文復号装置600によって実行される。
FIG. 16 is a flowchart showing processing of the Dec ReEnc algorithm according to the first embodiment.
The Dec ReEnc algorithm is executed by the
(S801:情報取得処理)
公開鍵取得部611は、Setupアルゴリズムで生成された公開鍵pkを取得する。
ユーザ秘密鍵取得部612は、KGアルゴリズムで生成されたユーザ秘密鍵skS’を取得する。
再暗号文取得部613は、REncアルゴリズムで生成された再暗号文rctF’を取得する。
(S801: Information acquisition process)
The public
The user secret
The
(S802:暗号文判定処理)
暗号文判定部620は、処理装置により、S801で取得されたユーザ秘密鍵skS’に含まれる属性の有資格集合S’が、再暗号文rctF’に含まれるアクセス構造F’を満たすか否か判定する。
この判定の方法については、S202で説明した属性の有資格集合Sがアクセス構造F〜を満たすか否か判定する方法と同様である。
属性の有資格集合S’がアクセス構造F’を満たす場合、処理をS803へ進め、属性の有資格集合S’がアクセス構造F’を満たさない場合、処理をS807へ進める。
(S802: Ciphertext Judgment Process)
The
The method of this determination, the authorized set S of the attributes described in S202 is the same as the method for determining whether to satisfy the access structure F ~.
If the attribute qualified set S ′ satisfies the access structure F ′, the process proceeds to S803. If the attribute qualified set S ′ does not satisfy the access structure F ′, the process proceeds to S807.
(S803:定数計算処理)
定数計算部631は、処理装置により、I’={i:ρ’(i)∈S’}とした場合に、Σi∈I’ω’iM’i=(1,0,...,0)となる定数ω’i∈Zpを計算する。ここで、M’iは、行列M’のi番目の行である。
(S803: Constant calculation process)
When the processing unit sets I ′ = {i: ρ ′ (i) εS ′}, the constant calculation unit 631 calculates Σ iεI′ω ′ i M ′ i = (1, 0 ,. , 0), a constant ω ′ i ∈Z p is calculated. Here, M ′ i is the i-th row of the matrix M ′.
(S804:ペアリング演算処理)
ペアリング演算部632は、処理装置により、S801で取得された公開鍵pk及びユーザ秘密鍵skS’及び再暗号文rctF’と、S803で計算された定数ω’iとを用いて、数123に示す演算を実行して、パラメータE(d)を生成する。
The pairing calculation unit 632 uses the public key pk, the user secret key sk S ′ and the re-ciphertext rct F ′ acquired in S801 by the processing device, and the constant ω ′ i calculated in S803 to The calculation shown in 123 is executed to generate the parameter E (d).
(S805:デコード処理)
デコード部633は、処理装置により、S801で取得された公開鍵pkに含まれるエンコード関数Eを用いて、S804で生成されたパラメータE(d)をデコードし、パラメータdを生成する。
(S805: Decoding process)
The
(S806:メッセージ計算処理)
メッセージ計算部634は、処理装置により、S801で取得された再暗号文rctF’と、S805で生成されたパラメータdとを用いて、数124に示す演算を実行して、メッセージmを計算する。
The
(S807:結果出力処理)
結果出力部640は、S806でメッセージmを生成した場合には、生成されたメッセージmを出力する。一方、S802で属性の有資格集合S’がアクセス構造F’を満たさない場合には、復号失敗を表す記号⊥を出力する。
(S807: Result output process)
The
***効果の説明***
以上のように、実施の形態1に係る暗号システム10では、普遍再暗号化鍵生成装置700がユーザ秘密鍵skSから普遍再暗号化鍵urkSを生成し、再暗号化鍵生成装置300が普遍再暗号化鍵urkSから再暗号化鍵rks→F’を生成する。そして、ユーザ秘密鍵skSは、普遍再暗号化鍵urkSを生成する際に必要なだけで、再暗号化鍵rks→F’を生成する際には必要ない。普遍再暗号化鍵urkSは1つ生成すれば、変更したいアクセス範囲毎の再暗号化鍵rkを生成することが可能である。
そのため、例えば、鍵生成装置100がユーザ秘密鍵skSを生成した際、普遍再暗号化鍵生成装置700が普遍再暗号化鍵urkSを生成してしまえば、以降、ユーザ秘密鍵skSもマスター秘密鍵mskも用いることなく、再暗号化鍵rkを生成することが可能である。したがって、再暗号化鍵rkを生成する度に、ユーザがユーザ秘密鍵skSを用いた処理を行う必要はなく、利便性が高い。また、再暗号化鍵rkを生成する度に、マスター秘密鍵mskを用いた処理を行う必要はなく、安全性が高い。
*** Explanation of effects ***
As described above, in the cryptographic system 10 according to Embodiment 1, the universal re-encryption
Therefore, for example, when the
なお、上記説明では、暗号文ポリシーのAB−PRE方式について説明した。しかし、鍵ポリシーのAB−PRE方式についても同様の考え方に基づき実現可能である。
この場合、鍵生成装置100は、属性の有資格集合Sに代えて、アクセス構造Fを入力として、ユーザ秘密鍵を生成する。暗号化装置200は、アクセス構造Fに代えて、属性の有資格集合Sを入力として、オリジナル暗号文を生成する。再暗号化鍵生成装置300は、アクセス構造F’に代えて、属性の有資格集合S’を入力として、再暗号化鍵を生成する。
In the above description, the AB-PRE method of the ciphertext policy has been described. However, the AB-PRE method of the key policy can be realized based on the same concept.
In this case, the
したがって、暗号文ポリシーのAB−PRE方式と、鍵ポリシーのAB−PRE方式との両方式をまとめると、次のようになる。
鍵生成装置100は、互いに対応する属性情報である属性の有資格集合Sとアクセス構造Fとのうちの一方が設定されたユーザ秘密鍵を生成する。暗号化装置200は、属性の有資格集合Sとアクセス構造Fとのうちの他方が設定されたオリジナル暗号文を生成する。
普遍再暗号化鍵生成装置700は、互いに対応する属性情報である属性の有資格集合Sとアクセス構造Fとのうちの一方が設定されたユーザ秘密鍵をパラメータdで変換した変換後ユーザ秘密鍵と、パラメータdを暗号化したパラメータ暗号文とを含む普遍再暗号化鍵を生成する。再暗号化鍵生成装置300は、変換後ユーザ秘密鍵と、互いに対応する属性情報である属性の有資格集合S’とアクセス構造F’とのうちの一方をパラメータ暗号文に設定した変換後暗号文とを含む再暗号化鍵を生成する。
再暗号化装置400は、属性情報である属性の有資格集合Sとアクセス構造Fとのうちの他方が設定されたオリジナル暗号文を、再暗号化鍵に含まれる変換後ユーザ秘密鍵で復号した復号情報と、変換後暗号文とを含む再暗号文を生成する。
復号装置500は、属性情報である属性の有資格集合Sとアクセス構造Fとのうちの他方が設定されたユーザ秘密鍵により、オリジナル暗号文を復号する。再暗号文復号装置600は、属性情報である属性の有資格集合S’とアクセス構造F’とのうちの他方が設定されたユーザ秘密鍵により、再暗号文を復号する。
Therefore, a summary of both the ciphertext policy AB-PRE scheme and the key policy AB-PRE scheme is as follows.
The
The universal re-encryption
The
The
また、上記説明では、対称双線形ペアリング群を用いる場合について説明した。しかし、非対称双線形ペアリング群を用いることも可能であり、上記説明を形式的に非対称双線形ペアリング群を用いた場合の説明に変換することが可能である。 In the above description, the case of using a symmetric bilinear pairing group has been described. However, it is also possible to use an asymmetric bilinear pairing group, and it is possible to convert the above description into a description in the case of using an asymmetric bilinear pairing group formally.
また、上記説明では、鍵生成装置100が普遍再暗号化鍵生成装置700を備えるとした。しかし、普遍再暗号化鍵生成装置700は他の装置と独立していてもよい。この場合にも同様の効果を得ることができる。
また、復号装置500が普遍再暗号化鍵生成装置700を備えていてもよい。この場合には、再暗号化鍵を生成する度に、復号装置500を操作するユーザに手間がかかる恐れがある。
In the above description, it is assumed that the
Further, the
また、上記説明では、暗号化装置200と復号装置500と再暗号文復号装置600とを別の装置とした。しかし、暗号システム10は、暗号化装置200と復号装置500と再暗号文復号装置600とのうちの複数の機能を有する装置を備えてもよい。
In the above description, the
図17は、実施の形態1に示した鍵生成装置100と、暗号化装置200と、再暗号化鍵生成装置300と、再暗号化装置400と、復号装置500と、再暗号文復号装置600と、普遍再暗号化鍵生成装置700とのハードウェア構成の例を示す図である。
鍵生成装置100と、暗号化装置200と、再暗号化鍵生成装置300と、再暗号化装置400と、復号装置500と、再暗号文復号装置600と、普遍再暗号化鍵生成装置700とは、コンピュータである。鍵生成装置100と、暗号化装置200と、再暗号化鍵生成装置300と、再暗号化装置400と、復号装置500と、再暗号文復号装置600と、普遍再暗号化鍵生成装置700との各要素をプログラムで実現することができる。
鍵生成装置100と、暗号化装置200と、再暗号化鍵生成装置300と、再暗号化装置400と、復号装置500と、再暗号文復号装置600と、普遍再暗号化鍵生成装置700とのハードウェア構成としては、バスに、演算装置901、外部記憶装置902、主記憶装置903、通信装置904、入出力装置905が接続されている。
17 shows the
演算装置901は、プログラムを実行するCPU(Central Processing Unit)等である。外部記憶装置902は、例えばROM(Read Only
Memory)やフラッシュメモリ、ハードディスク装置等である。主記憶装置903は、例えばRAM(Random Access Memory)等である。通信装置904は、例えば通信ボード等である。入出力装置905は、例えばマウス、キーボード、ディスプレイ装置等である。
The
Memory), flash memory, hard disk device, and the like. The
プログラムは、通常は外部記憶装置902に記憶されており、主記憶装置903にロードされた状態で、順次演算装置901に読み込まれ、実行される。
プログラムは、情報取得部110と、マスター鍵生成部120と、ユーザ秘密鍵生成部140と、鍵出力部150と、情報取得部210と、暗号文生成部220と、暗号文出力部230と、情報取得部310と、再暗号化鍵生成部320と、再暗号化鍵出力部330と、情報取得部410と、再暗号化判定部420と、再暗号化部430と、再暗号文出力部440と、情報取得部510と、暗号文判定部520と、復号部530と、結果出力部540と、情報取得部610と、暗号文判定部620と、復号部630と、結果出力部640と、情報取得部710と、普遍再暗号化鍵生成部720と、普遍再暗号化鍵出力部730として説明している機能を実現するプログラムである。
更に、外部記憶装置902にはオペレーティングシステム(OS)も記憶されており、OSの少なくとも一部が主記憶装置903にロードされ、演算装置901はOSを実行しながら、上記プログラムを実行する。
また、実施の形態1の説明において、マスター鍵記憶部130が記憶すると説明した情報や、上記機能が取得する、生成する、出力する等と説明した情報等が主記憶装置903にファイルとして記憶されている。
The program is normally stored in the
The program includes an
Furthermore, an operating system (OS) is also stored in the
In the description of the first embodiment, the information that the master
なお、図17の構成は、あくまでも鍵生成装置100と、暗号化装置200と、再暗号化鍵生成装置300と、再暗号化装置400と、復号装置500と、再暗号文復号装置600と、普遍再暗号化鍵生成装置700とのハードウェア構成の一例を示すものであり、鍵生成装置100と、暗号化装置200と、再暗号化鍵生成装置300と、再暗号化装置400と、復号装置500と、再暗号文復号装置600と、普遍再暗号化鍵生成装置700とのハードウェア構成は図17に記載の構成に限らず、他の構成であってもよい。
Note that the configuration of FIG. 17 is merely a
10 暗号システム、100 鍵生成装置、110 情報取得部、111 セキュリティパラメータ取得部、112 属性カテゴリ取得部、113 マスター鍵取得部、114 有資格集合取得部、120 マスター鍵生成部、121 写像生成部、122 パラメータ生成部、123 アクセス構造生成部、124 エンコード関数生成部、125 鍵要素生成部、130 マスター鍵記憶部、140 ユーザ秘密鍵生成部、141 属性集合判定部、142 乱数生成部、143 鍵要素生成部、150 鍵出力部、200 暗号化装置、210 情報取得部、211 公開鍵取得部、212 メッセージ取得部、213 アクセス構造取得部、220 暗号文生成部、221 ランダムベクトル生成部、222 乱数生成部、223 暗号要素生成部、230 暗号文出力部、300 再暗号化鍵生成装置、310 情報取得部、311 公開鍵取得部、312 普遍再暗号化鍵取得部、313 アクセス構造取得部、320 再暗号化鍵生成部、321 ランダムベクトル生成部、322 乱数生成部、323 属性設定部、330 再暗号化鍵出力部、400 再暗号化装置、410 情報取得部、411 公開鍵取得部、412 再暗号化鍵取得部、413 オリジナル暗号文取得部、420 再暗号化判定部、430 再暗号化部、431 定数計算部、432 ペアリング演算部、440 再暗号文出力部、500 復号装置、510 情報取得部、511 公開鍵取得部、512 ユーザ秘密鍵取得部、513 オリジナル暗号文取得部、520 暗号文判定部、530 復号部、531 定数計算部、532 ペアリング演算部、540 結果出力部、600 再暗号文復号装置、610 情報取得部、611 公開鍵取得部、612 ユーザ秘密鍵取得部、613 再暗号文取得部、620 暗号文判定部、630 復号部、631 定数計算部、632 ペアリング演算部、633 デコード部、634 メッセージ計算部、640 結果出力部、700 普遍再暗号化鍵生成装置、710 情報取得部、711 公開鍵取得部、712 ユーザ秘密鍵取得部、720 普遍再暗号化鍵生成部、721 乱数生成部、722 復号鍵変換部、723 ランダムベクトル生成部、724 パラメータ暗号化部、730 普遍再暗号化鍵出力部、U 属性、1λ セキュリティパラメータ、S,S’ 有資格集合、pk 公開鍵、msk マスター秘密鍵、rsk 再暗号化秘密鍵、skS,skS’ ユーザ秘密鍵、m メッセージ、F,F’,F〜 アクセス構造、octF オリジナル暗号文、urkS 普遍再暗号化鍵、skd 変換後ユーザ秘密鍵、ctdF^ パラメータ暗号文、rkS→F’ 再暗号化鍵、ctdF’ 変換後暗号文、rctF’ 再暗号文、d パラメータ、Setup セットアップ工程、KG 鍵生成工程、Enc 暗号化工程、URKG 普遍再暗号化鍵生成工程、RKG 再暗号化鍵生成工程、REnc 再暗号化工程、DecEnc 復号工程、DecReEnc 再暗号文復号工程。 DESCRIPTION OF SYMBOLS 10 Encryption system, 100 Key generation apparatus, 110 Information acquisition part, 111 Security parameter acquisition part, 112 Attribute category acquisition part, 113 Master key acquisition part, 114 Qualified set acquisition part, 120 Master key generation part, 121 Mapping generation part, 122 parameter generation unit, 123 access structure generation unit, 124 encoding function generation unit, 125 key element generation unit, 130 master key storage unit, 140 user secret key generation unit, 141 attribute set determination unit, 142 random number generation unit, 143 key element Generator, 150 key output unit, 200 encryption device, 210 information acquisition unit, 211 public key acquisition unit, 212 message acquisition unit, 213 access structure acquisition unit, 220 ciphertext generation unit, 221 random vector generation unit, 222 random number generation , 223 encryption element generation unit, 230 ciphertext output unit, 00 re-encryption key generation device, 310 information acquisition unit, 311 public key acquisition unit, 312 universal re-encryption key acquisition unit, 313 access structure acquisition unit, 320 re-encryption key generation unit, 321 random vector generation unit, 322 random number Generation unit, 323 Attribute setting unit, 330 Re-encryption key output unit, 400 Re-encryption device, 410 Information acquisition unit, 411 Public key acquisition unit, 412 Re-encryption key acquisition unit, 413 Original ciphertext acquisition unit, 420 Re Encryption determination unit, 430 re-encryption unit, 431 constant calculation unit, 432 pairing operation unit, 440 re-ciphertext output unit, 500 decryption device, 510 information acquisition unit, 511 public key acquisition unit, 512 user secret key acquisition unit 513 Original ciphertext acquisition unit 520 Ciphertext determination unit 530 Decryption unit 531 Constant calculation unit 532 Pairing operation unit 540 Result output , 600 reciphertext decryption device, 610 information acquisition unit, 611 public key acquisition unit, 612 user secret key acquisition unit, 613 reciphertext acquisition unit, 620 ciphertext determination unit, 630 decryption unit, 631 constant calculation unit, 632 Pairing operation unit, 633 decoding unit, 634 message calculation unit, 640 result output unit, 700 universal re-encryption key generation device, 710 information acquisition unit, 711 public key acquisition unit, 712 user secret key acquisition unit, 720 universal re-encryption Encryption key generation unit, 721 Random number generation unit, 722 Decryption key conversion unit, 723 Random vector generation unit, 724 Parameter encryption unit, 730 Universal re-encryption key output unit, U attribute, 1 λ security parameter, S, S ′ Yes qualification set, pk public key, msk master secret key, rsk re-encrypted secret key, sk S, sk S 'user's private key, m message F, F ', F ~ access structure, oct F original ciphertext, urk S universal re-encryption key, sk d conversion after the user's private key, ct dF ^ parameters ciphertext, rk S → F' re-encryption key, ct dF ′ ciphertext after conversion, rct F ′ reciphertext, d parameter, Setup setup process, KG key generation process, Enc encryption process, URKG universal reencryption key generation process, RKG reencryption key generation process, REnc re Encryption step, Dec Enc decryption step, Dec ReEnc re-ciphertext decryption step.
Claims (8)
前記ユーザ秘密鍵で復号可能なオリジナル暗号文についての復号可能な範囲を変更する再暗号化をするための再暗号化鍵であって、前記オリジナル暗号文を復号可能な範囲を示す情報が設定された再暗号化鍵を前記普遍再暗号化鍵生成装置が生成した前記普遍再暗号化鍵から生成する再暗号化鍵生成装置と
を備える暗号システム。 A universal re-encryption key generation device that generates a universal re-encryption key by converting the user secret key so that the original ciphertext that can be decrypted by the user private key cannot be decrypted;
A re-encryption key for re-encrypting to change a decryptable range for an original ciphertext that can be decrypted with the user private key, and information indicating a range in which the original ciphertext can be decrypted is set. And a re-encryption key generation device that generates the re-encryption key from the universal re-encryption key generated by the universal re-encryption key generation device.
前記再暗号化鍵生成装置は、前記変換後ユーザ秘密鍵と、有資格集合S’とアクセス構造F’とのうちの一方を前記パラメータ暗号文に設定した変換後暗号文とを含む再暗号化鍵を生成する
請求項1に記載の暗号システム。 The universal re-encryption key generation apparatus encrypts the user secret key after conversion by converting the user secret key in which one of the qualified set S and the access structure F is set with the parameter d, and the parameter d. Generating the universal re-encryption key including the encrypted parameter ciphertext,
The re-encryption key generation device includes a re-encryption including the converted user secret key and a converted ciphertext in which one of a qualified set S ′ and an access structure F ′ is set as the parameter ciphertext. The cryptographic system according to claim 1, wherein the key is generated.
前記有資格集合Sと前記アクセス構造Fのうちの他方が設定されたオリジナル暗号文を、前記再暗号化鍵に含まれる前記変換後ユーザ秘密鍵で復号した復号情報と、前記変換後暗号文とを含む再暗号文を生成する再暗号化装置
を備える請求項2に記載の暗号システム。 The cryptographic system further includes:
Decryption information obtained by decrypting the original ciphertext in which the other of the qualified set S and the access structure F is set with the converted user private key included in the re-encryption key, the converted ciphertext, The cryptographic system according to claim 2, further comprising a re-encryption device that generates a re-ciphertext including
前記有資格集合S’と前記アクセス構造F’のうちの他方が設定されたユーザ秘密鍵により、前記再暗号文を復号する再暗号文復号装置
を備える請求項3に記載の暗号システム。 The cryptographic system further includes:
The encryption system according to claim 3, further comprising: a re-ciphertext decryption device that decrypts the re-ciphertext using a user secret key in which the other of the qualified set S ′ and the access structure F ′ is set.
前記再暗号化鍵生成装置は、数4に示す暗号要素RC^’0,RC^’1,RC^’2.i,RD^’iを含む変換後暗号文を生成し、
前記再暗号化装置は、数5に示す暗号要素C1,C2.i,Diを含むオリジナル暗号文を、数6に示すように復号した復号情報decdと、数7に示す前記オリジナル暗号文の暗号要素ReC0とを含む再暗号文を生成し、
前記再暗号文復号装置は、数8に示す鍵要素K^’0,K^’1,K^’2.iを含む第2ユーザ秘密鍵により、数9に示すように前記再暗号文を復号する
請求項4に記載の暗号システム。
The re-encryption key generation apparatus includes cryptographic elements RC ^ ′ 0 , RC ^ ′ 1 , RC ^ ′ shown in Equation 4 . i , RD ^ ′ Generate a converted ciphertext containing i ,
The re-encryption device has cryptographic elements C 1 and C 2 shown in Equation 5 . re-ciphertext including decryption information dec d obtained by decrypting the original ciphertext including i and D i as shown in Equation 6 and the cipher element ReC 0 of the original ciphertext as shown in Equation 7;
The re ciphertext decryption apparatus, key shown in Equation 8 elements K ^ '0, K ^' 1, K ^ '2. The encryption system according to claim 4, wherein the re-ciphertext is decrypted with a second user secret key including i as shown in Equation 9.
再暗号化鍵生成装置が、前記ユーザ秘密鍵で復号可能なオリジナル暗号文について、復号可能な範囲を変更する再暗号化をするための再暗号化鍵であって、前記オリジナル暗号文を復号可能な範囲を示す情報が設定された再暗号化鍵を前記普遍再暗号化鍵生成装置が生成した前記普遍再暗号化鍵から生成する再暗号化鍵生成工程と
を備える暗号方法。 A universal re-encryption key generating device for generating a universal re-encryption key by converting the user secret key so that the universal re-encryption key generation device cannot decrypt the original ciphertext that can be decrypted with the user secret key;
The re-encryption key generation device is a re-encryption key for re-encrypting the original ciphertext that can be decrypted with the user secret key, and re-encrypting the original ciphertext, and can decrypt the original ciphertext A re-encryption key generation step of generating a re-encryption key in which information indicating a valid range is set from the universal re-encryption key generated by the universal re-encryption key generation device.
前記パラメータdを暗号化してパラメータ暗号文を生成するパラメータ暗号化部と、
前記復号鍵変換部が生成した変換後ユーザ秘密鍵と、前記パラメータ暗号化部が生成したパラメータ暗号文とを含む普遍再暗号化鍵を出力する普遍再暗号化鍵出力部と
を備える普遍再暗号化鍵生成装置。 A decryption key conversion unit that converts a user secret key with a parameter d and generates a converted user secret key;
A parameter encryption unit that encrypts the parameter d to generate a parameter ciphertext;
Universal re-encryption comprising: a universal re-encryption key output unit that outputs a universal re-encryption key including the converted user secret key generated by the decryption key conversion unit and the parameter ciphertext generated by the parameter encryption unit Key generation device.
前記普遍再暗号化鍵取得部が取得した普遍再暗号化鍵に含まれる前記パラメータ暗号文に、属性情報を設定して変換後暗号文を生成する属性設定部と、
前記普遍再暗号化鍵取得部が取得した普遍再暗号化鍵に含まれる前記変換後ユーザ秘密鍵と、前記属性設定部が生成した変換後暗号文とを含む再暗号化鍵を出力する再暗号化鍵出力部と
を備える再暗号化鍵生成装置。 A universal re-encryption key acquisition unit for acquiring a universal re-encryption key including the converted user secret key obtained by converting the user secret key with the parameter d and the parameter ciphertext obtained by encrypting the parameter d;
An attribute setting unit that sets attribute information in the parameter ciphertext included in the universal re-encryption key acquired by the universal re-encryption key acquisition unit, and generates a converted ciphertext;
Re-encryption that outputs a re-encryption key including the converted user secret key included in the universal re-encryption key acquired by the universal re-encryption key acquisition unit and the converted ciphertext generated by the attribute setting unit A re-encryption key generation device comprising an encryption key output unit.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014204445A JP6270683B2 (en) | 2014-10-03 | 2014-10-03 | Encryption system, encryption method, universal re-encryption key generation device, and re-encryption key generation device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014204445A JP6270683B2 (en) | 2014-10-03 | 2014-10-03 | Encryption system, encryption method, universal re-encryption key generation device, and re-encryption key generation device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016076759A true JP2016076759A (en) | 2016-05-12 |
JP6270683B2 JP6270683B2 (en) | 2018-01-31 |
Family
ID=55951739
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014204445A Active JP6270683B2 (en) | 2014-10-03 | 2014-10-03 | Encryption system, encryption method, universal re-encryption key generation device, and re-encryption key generation device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6270683B2 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018225248A1 (en) * | 2017-06-09 | 2018-12-13 | 三菱電機株式会社 | Re-encrypted key generation device, re-encryption device, re-encrypted cipher text decryption device and cryptosystem |
WO2020240630A1 (en) * | 2019-05-24 | 2020-12-03 | 三菱電機株式会社 | Re-encryption device, re-encryption method, re-encryption program and cryptosystem |
CN112671725A (en) * | 2020-12-10 | 2021-04-16 | 深圳大学 | Unidirectional proxy re-encryption method, device, electronic equipment and system |
CN114584295A (en) * | 2022-03-01 | 2022-06-03 | 南京大学 | Universal black box traceable method and device for attribute-based proxy re-encryption system |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014083784A1 (en) * | 2012-11-30 | 2014-06-05 | 日本電気株式会社 | Cryptosystem, data storage system, and device and method therefor |
WO2014112048A1 (en) * | 2013-01-16 | 2014-07-24 | 三菱電機株式会社 | Encryption system, re-encryption key generation device, re-encryption device, encryption method and encryption program |
-
2014
- 2014-10-03 JP JP2014204445A patent/JP6270683B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014083784A1 (en) * | 2012-11-30 | 2014-06-05 | 日本電気株式会社 | Cryptosystem, data storage system, and device and method therefor |
WO2014112048A1 (en) * | 2013-01-16 | 2014-07-24 | 三菱電機株式会社 | Encryption system, re-encryption key generation device, re-encryption device, encryption method and encryption program |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018225248A1 (en) * | 2017-06-09 | 2018-12-13 | 三菱電機株式会社 | Re-encrypted key generation device, re-encryption device, re-encrypted cipher text decryption device and cryptosystem |
US11349654B2 (en) | 2017-06-09 | 2022-05-31 | Mitsubishi Electric Corporation | Re-encryption key generation device, re-encryption device, re-encrypted ciphertext decryption device, and cryptographic system |
WO2020240630A1 (en) * | 2019-05-24 | 2020-12-03 | 三菱電機株式会社 | Re-encryption device, re-encryption method, re-encryption program and cryptosystem |
JPWO2020240630A1 (en) * | 2019-05-24 | 2021-10-21 | 三菱電機株式会社 | Re-encrypting device, re-encrypting method, re-encrypting program and cryptosystem |
CN113853764A (en) * | 2019-05-24 | 2021-12-28 | 三菱电机株式会社 | Re-encryption device, re-encryption method, re-encryption program, and encryption system |
DE112019007236B4 (en) | 2019-05-24 | 2023-02-16 | Mitsubishi Electric Corporation | RE-ENCRYPTION DEVICE, RE-ENCRYPTION METHOD, RE-ENCRYPTION PROGRAM AND CRYPTOGRAPHIC SYSTEM |
US11824638B2 (en) | 2019-05-24 | 2023-11-21 | Mitsubishi Electric Corporation | Re-encryption device, method and computer readable medium to change the access range for ciphertext |
CN112671725A (en) * | 2020-12-10 | 2021-04-16 | 深圳大学 | Unidirectional proxy re-encryption method, device, electronic equipment and system |
CN112671725B (en) * | 2020-12-10 | 2023-03-24 | 深圳大学 | Unidirectional proxy re-encryption method, device, electronic equipment and system |
CN114584295A (en) * | 2022-03-01 | 2022-06-03 | 南京大学 | Universal black box traceable method and device for attribute-based proxy re-encryption system |
CN114584295B (en) * | 2022-03-01 | 2024-04-09 | 南京大学 | Universal black box traceability method and device for attribute-based proxy re-encryption system |
Also Published As
Publication number | Publication date |
---|---|
JP6270683B2 (en) | 2018-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6058237B1 (en) | Ciphertext conversion apparatus, ciphertext conversion program, and ciphertext conversion method | |
JP5905128B2 (en) | Cryptographic system, re-encrypting device, and cryptographic method | |
CN110417726A (en) | A kind of key management method and relevant device | |
RU2017131640A (en) | CONFIDENTIAL COMMUNICATION MANAGEMENT | |
JP6194886B2 (en) | Encryption statistical processing system, decryption system, key generation device, proxy device, encrypted statistical data generation device, encryption statistical processing method, and encryption statistical processing program | |
KR101606317B1 (en) | Encryption system, encryption method, encryption program and decryption device | |
KR102143525B1 (en) | Method for function encryption supporting set intersection operation and apparatus using the same | |
US20160013933A1 (en) | Order-preserving encryption system, device, method, and program | |
JP6270683B2 (en) | Encryption system, encryption method, universal re-encryption key generation device, and re-encryption key generation device | |
US11431489B2 (en) | Encryption processing system and encryption processing method | |
WO2015083210A1 (en) | Data processing system, encryption apparatus, decryption apparatus, and program | |
JP6302851B2 (en) | Re-encryption method, re-encryption system, and re-encryption device | |
JPWO2015008607A1 (en) | Decoding device, decoding capability providing device, method and program thereof | |
JP6081036B2 (en) | Decryption condition adding apparatus and encryption system | |
JP6266130B2 (en) | Cryptographic system, master key update device, and master key update program | |
JP7325689B2 (en) | Ciphertext conversion system, conversion key generation method, and conversion key generation program | |
KR102284877B1 (en) | Efficient functional encryption for set intersection | |
KR101929355B1 (en) | Encryption and decryption system using unique serial number and symmetric cryptography | |
KR101793528B1 (en) | Certificateless public key encryption system and receiving terminal | |
KR20130022906A (en) | Proxy re-encryption method using two secret key, method for decrypting of proxy re-encryption message | |
KR20200131688A (en) | Apparatus and method for generating secret key, apparatus and method for genrating evaluation key | |
JP6949276B2 (en) | Re-encrypting device, re-encrypting method, re-encrypting program and cryptosystem | |
JP2018025587A (en) | Secret computation technique and method of the same | |
JP7126635B2 (en) | Re-encryption device, encryption system, re-encryption method and re-encryption program | |
Tandon et al. | Universal encryption algorithm using logical operations and bits shuffling for unicode |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170116 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20171026 |
|
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: 20171128 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20171226 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6270683 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |