近年来, 随着无线移动通信技术的普及以及云计算的发展, 越来越多的人选择将个人数据存储在云端。基于身份的加密不仅可以保证数据的机密性, 而且能减少密钥管理系统设施, 具有管理简单的优势, 因此被广泛应用于云数据加密领域[1]。文献[2]提出基于身份的公钥密码体制, 在该密码体制中, 用户可以直接从身份信息中获取公钥, 例如E-mail地址、用户账户名、域名等[3], 简化了密钥和证书的管理。文献[4]将双线性映射用于基于身份的加密方案(Identity-Based Encryption, IBE)中。自基于身份的加密思想被提出以来, 研究人员相继提出许多加密方案[5-6]。基于身份的加密相等性测试(Identity-Based Encryption with Equality Test, IBEET)方案就是其中一种重要的方案, 属于基于身份的密码学范畴, 可用于确保公有云中存储数据的机密性[7-8]。
IBEET[9]是将公钥加密相等性测试PKEET[10-11]与基于身份的方法相结合的加密方案, 可以在不泄露消息明文内容的前提下, 判断2个不同公钥加密密文是否是由相同的明文加密后得到的结果。在此基础上, 文献[12]提出半泛型构造方法, 并给出满足类似安全参数的基于身份的加密相等性测试方案。为提高计算效率, 文献[13]提出一个高效的IBEET方案, 采用双线性配对, 并且尽量避免使用Hash函数。文献[14]提出一个基于双服务器的加密相等性测试协议。但是, 现有的IBEET方案缺少细粒度的授权机制[15]。为实现不同类型的授权, 达到隐私分级保护的目的[16], 本文提出一个支持灵活授权的基于身份的加密相等性测试方案(IBEET-FA)。
1 预备知识 1.1 双线性映射给定安全参数λ, 以素数q作为阶的循环乘法群G1、G2和GT, 随机生成元中g1∈G1、g2∈G2, e:G1×G2→GT为非对称的双线性映射:
1) 双线性:∀a∈G1, ∀b∈G2和∀u、v∈Ζq*, 有e(au, bv)=e(a, b)uv。
2) 非退化性:
3) 可计算性:∀a∈G1, ∀b∈G2, e(a, b)可进行有效计算。
虽然非对称的双线性映射e以及群G1、G2和GT上的操作是可有效计算的, 但群G1、G2之间没有进行同构计算, 因此双线性映射群组G1、G2和GT之间也没有进行有效的同构计算。
1.2 双线性Diffie-Hellman假设定义一个安全参数λ, 以素数q为阶的非对称的双线性映射群集
| $ Adv_A^{{\rm{BDH}}}\left( \lambda \right) = \Pr \left[ {A\left( D \right) = e{{\left( {{g_1},{g_2}} \right)}^{abc}}} \right] $ |
如果概率AdvABDH可忽略不计, 那么认为对任意一个PPT的算法
本节结合文献[8]的IBEET方案定义以及文献[12]中对于灵活授权的定义, 给出IBEET-FA方案的形式化定义。IBEET-FA方案由多个多项式时间算法组成, 其中,
系统建立算法:该算法输入安全参数λ, 输出系统公共参数PP和系统主密钥msk。
密钥生成算法:该算法以系统公共参数PP、用户身份ID和系统密钥msk作为输入, 输出相应用户私钥SK。
加密算法:该算法以系统公共参数PP、消息M∈
解密算法:该算法以系统公共参数PP、密文C∈
假设每个用户索引i, 其身份IDi, 相应的密文为Ci。用户索引j, 其身份IDj, 相应的密文为Cj。定义Type-α(α=1, 2, 3, 4) 4种类型授权和测试算法, 分别为:
1) 任意用户级别授权
Type-1授权:该算法以公共参数PP、用户私钥SK作为输入, 输出用户的陷门td。
Type-1测试:令(Ci, tdi)为用户i的密文-陷门对, (Cj, tdj)为用户j的密文-陷门对。该算法由云服务器运行, 以公共参数PP、密文Ci∈
2) 任意密文级别授权
Type-2授权:该算法以公共参数PP、用户私钥SK和密文C作为输入, 输出用户的陷门td。
Type-2测试:令(Ci, tdi)为用户i的密文-陷门对, (Cj, tdj)为用户j的密文-陷门对。该算法由云服务器运行, 以公共参数PP、密文Ci∈
3) 指定用户级别授权
假设该授权为用户i的特定密文对用户j的特定密文授权。用户j的陷门计算方法与用户i的相同。
Type-3授权:该算法以公共参数PP、用户i的私钥SKi、密文Ci以及用户j的身份ID和密文Cj作为输入, 输出用户的陷门td。
Type-3测试:令(Ci, tdi)为用户i的密文-陷门对, (Cj, tdj)为用户j的密文-陷门对。该算法由云服务器运行, 以公共参数PP、密文Ci∈
4) 密文-用户授权
假设测试对用户i为特定密文, 而用户j为被测试用户。此时的授权陷门分为:
(1) 对i的Type-4授权:该算法以公共参数PP、用户i的私钥SKi、密文Ci以及用户j的身份IDj作为输入, 输出用户i的陷门td(即Type-2型授权)。
(2) 对j的Type-4授权:该算法以公共参数PP、用户j的私钥SKj作为输入, 输出用户j的陷门tdj(即Type-1型授权)。
Type-4测试:令(Ci, tdi)为用户i的密文-陷门对, (Cj, tdj)为用户j的密文-陷门对。该算法由云服务器运行, 以公共参数PP、密文Ci∈
IBEET-FA方案规定了5个算法:系统建立算法、密钥生成算法、加密算法、解密算法、授权和测试算法, 其中授权和测试算法分别包含4个不同粒度的相应算法,
1) 系统建立算法。输入安全参数λ, 生成系统公共参数PP和主密钥msk:
(1) 生成非对称双线性映射群集
(2) 随机选取2个生成元g1∈G1、g2∈G2。
(3) 随机选取主密钥msk=s∈Zq*, 令
(4) 选取密码学上安全的哈希函数:
| $ H:{\{ 0,1\} ^n} \to {G_2} $ |
| $ {H_1}:{\{ 0,1\} ^*} \to {G_1} $ |
| $ {H_2}:{\{ 0,1\} ^*} \to {G_2} $ |
| $ {H_3}:{G_T} \times G_1^2 \times {G_2} \to {\{ 0,1\} ^{n + 2l}} $ |
| $ {H_4}:{G_T} \to G_2^2 $ |
| $ {H_5}:{\{ 0,1\} ^{n + l}} \to Z_q^* $ |
| $ {H_6}:{G_T} \to Z_q^* $ |
| $ {H_7}:{G_T} \to {G_2} $ |
其中, l为Zq*中元素的比特长度。返回系统参数
2) 密钥生成算法:输入公共参数PP、主密钥s和任意身份ID∈{0, 1}*, 返回用户的私钥SK=(S1, S2), 其中, S1=H1(ID)s, S2=H2(ID)s。
3)加密算法:输入公共参数PP、明文消息M∈
(1) 选取随机数α、β、k∈Zq*。
(2) 计算密文:
| $ \left\{ \begin{array}{l} {C_1} = g_1^R\\ {C_2} = g_1^\alpha \\ {C_3} = g_2^\beta \\ {C_4} = \left( {M\left\| k \right\|\beta } \right) \oplus {H_3}\left( {e{{\left( {{{\hat g}_1},{H_2}\left( {ID} \right)} \right)}^\alpha },} \right.\\ \;\;\;\;\;\;\;\left. {{C_1},{C_2},{C_3}} \right)\\ {C_5} = \left( {H{{\left( M \right)}^R}\left\| {H{{\left( M \right)}^{\mathit{R} \cdot \mathit{e}\left( {{H_1}\left( {ID} \right),{{\hat g}_2}} \right)\beta }}} \right.} \right) \oplus \\ \;\;\;\;\;\;\;{H_4}\left( {e{{\left( {{H_1}\left( {ID} \right),{{\hat g}_2}} \right)}^\beta }} \right) \end{array} \right. $ |
其中, R=H5(M, k),
4) 解密算法:输入公共参数PP、密文C=(C1, C2, C3, C4, C5)和私钥SK=(S1, S2), 解密步骤如下:
(1) 计算C4
(2) 若
5) 授权和测试算法:令Ui和Uj分别代表 2个身份为IDi和IDj的用户, 若他们需要测试的密文分别为Ci=(Ci, 1, Ci, 2, Ci, 3, Ci, 4, Ci, 5)和Cj=(Cj, 1, Cj, 2, Cj, 3, Cj, 4, Cj, 5), 则4种授权和测试算法分别如下:
(1) Type-1授权。此类型授权为任意用户级别授权:该算法输出相应陷门td=S1=H1(ID)s。
(2) Type-1测试。当收到用户Ui的陷门tdi和用户Uj的陷门tdj, 首先计算:
| $ {K_i} = \left[ {{C_{i,5}} \oplus {H_4}\left( {e\left( {t{d_i},{C_{i,3}}} \right)} \right)} \right]_{i = 1}^d = H{\left( {{M_i}} \right)^{{R_i}}} $ |
| $ {K_j} = \left[ {{C_{j,5}} \oplus {H_4}\left( {e\left( {t{d_j},{C_{j,3}}} \right)} \right)} \right]_{j = 1}^d = H{\left( {{M_j}} \right)^{{R_j}}} $ |
其中, d为G2中元素的比特长度。然后检查e(Ci, 1, Kj)=e(Cj, 1, Ki)是否成立, 若成立, 则返回1;否则返回0。
(3) Type-2授权。该类型的授权为任意密文级别授权, 该算法输出相应陷门td=H4e(S1, C3)。
(4) Type-2测试。当收到用户Ui的陷门tdi和用户Uj的陷门tdj, 首先计算:
| $ {K_i} = \left[ {{C_{i,5}} \oplus t{d_i}} \right]_1^d = H{\left( {{M_i}} \right)^{{R_i}}} $ |
| $ {K_j} = \left[ {{C_{j,5}} \oplus t{d_j}} \right]_1^d = H{\left( {{M_j}} \right)^{{R_j}}} $ |
然后检查
(5) Type-3授权。该类型的授权为指定用户级别授权, 该算法输出相应陷门:
| $ \begin{array}{l} td = \left( {W,V} \right) = \\ \;\;\;\;\;\;\;\left( {e\left( {{C_1},{H_7}\left( {e\left( {{S_1},{C_1}} \right)} \right)} \right),{H_4}\left( {e\left( {{S_1},{C_3}} \right)} \right)} \right) \end{array} $ |
(6) Type-3测试。当收到Ui的陷门tdi=(Wi, Vi)和Uj的陷门tdj=(Wj, Vj), 首先计算:
| $ {K_i} = \left[ {{C_{i,5}} \oplus {V_i}} \right]_d^{2d} = H{\left( {{M_i}} \right)^{{R_i} \cdot {H_6}\left( {e{{\left( {{H_1}\left( {I{D_i}} \right),{{\hat g}_2}} \right)}^{{\beta _i}}}} \right)}} $ |
| $ {K_j} = \left[ {{C_{j,5}} \oplus {V_j}} \right]_d^{2d} = H{\left( {{M_j}} \right)^{{R_j} \cdot {H_6}\left( {e{{\left( {{H_1}\left( {I{D_i}} \right),{{\hat g}_2}} \right)}^{{\beta _j}}}} \right)}} $ |
然后检查
(7) Type-4授权。此时用户Ui为任意密文级别授权, 用户Uj为任意用户级别的授权, 该算法输出相应陷门
(8) Type-4测试。当收到Ui的陷门tdi和Uj的陷门tdj, 首先计算:
| $ {K_i} = \left[ {{C_{i,5}} \oplus {H_4}\left( {e\left( {t{d_i},{C_{i,3}}} \right)} \right)} \right]_{i = 1}^d = H{\left( {{M_i}} \right)^{{R_i}}} $ |
| $ {K_j} = \left[ {{C_{j,5}} \oplus t{d_j}} \right]_1^d = H{\left( {{M_j}} \right)^{{R_j}}} $ |
然后检查
本文提出的IBEET-FA方案基于BDH假设。因为Type-4授权是Type-1、Type-2的结合, 所以只对前3种类型的授权进行证明。
定理 对于攻击者来说, 本文提出的IBEET-FA方案在随机预言机模型下满足OW-ID-CCA安全性。
证明 假设
给定一个BDH问题实例
1) 初始化:
2) 第一阶段:
(1) Hash查询(M):
(2) Hash1查询(IDi):
(3) Hash2查询(IDi):
(4) Hash3查询(σ, C1, C2, C3):
(5) Hash4查询(ω):
(6) Hash5查询(M, k):
(7) Hash6查询(η):
(8) Hash7查询(μ):
(9) 密钥查询(IDi):
(10) 解密查询(IDi, C):
①若cn=0, 则
② 若cn=1,
(11) 授权查询:
对于授权:
① Type-1授权:输入(IDi),
② Type-2授权:输入(IDi, C),
③ Type-3授权:输入(IDi, Ci, Cj),
3) 挑战:
(1)随机选取ρ∈{0, 1}、k∈Zq*、C4*∈{0, 1}λ+l。
(2) 计算:
| $ C_1^ * = g_1^R $ |
| $ C_2^ * = g_1^c $ |
| $ C_3^ * = g_2^\beta $ |
| $ C_4^ * = {H_3}\left( {e{{\left( {{g_1},{g_2}} \right)}^{abc{u^ * }}},C_1^ * ,C_2^ * ,C_3^ * } \right) \oplus \left( {M_p^ * \left\| k \right.} \right) $ |
| $ \begin{array}{l} C_5^ * = \left( {H{{\left( {{M^ * }} \right)}^R}\left\| {H{{\left( {{M^ * }} \right)}^{R \cdot {{\left( {{H_6}\left( {e\left( {{H_1}\left( {ID} \right),{{\hat g}_2}} \right)} \right)} \right.}^\beta }}}} \right.} \right) \oplus \\ \;\;\;\;\;\;\;{H_4}\left( {e{{\left( {g_1^{{v^ * }},g_2^a} \right)}^\beta }} \right) \end{array} $ |
其中, R=H5(M*, k)。
(3) 发送挑战密文C*=(C1*, C2*, C3*, C4*, C5*)给
4) 第二阶段:
5) 猜测:
设
| $ \begin{array}{l} \Pr \left[ {{M^*} = M'} \right] = \Pr \left[ {{M^*} = M'|\neg E} \right]\Pr [\neg E] + \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\Pr \left[ {{M^*} = M'|E} \right]\Pr [E] \le \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\Pr \left[ {{M^*} = M'|\neg E} \right]\Pr [\neg E] + \Pr [E] = \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\frac{1}{{{2^\lambda }}}\Pr [\neg E] + \Pr [E] = \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\frac{1}{{{2^\lambda }}} + \left( {1 - \frac{1}{{{2^\lambda }}}} \right)\Pr [E] \end{array} $ |
因此,
| $ \begin{array}{*{20}{c}} {Ad{v_A} \le \Pr \left[ {{M^*} = M'} \right] \le \frac{1}{{{2^\lambda }}} + \left( {1 - \frac{1}{{{2^\lambda }}}} \right)\Pr [E] \le }\\ {\frac{1}{{{2^\lambda }}} + \left( {1 - \frac{1}{{{2^\lambda }}}} \right)\frac{{\Pr \left[ {{E_{{q_3}}}} \right] + \Pr \left[ {{E_{{\rm{Dec}}}}} \right]}}{{\Pr \left[ {\neg {E_{{\rm{Abort}}}}} \right]}}} \end{array} $ |
针对IBEET方案缺少授权机制的问题, 本文在基于身份的相等性测试体制中引入灵活授权概念, 利用非对称的双线性配对, 构造支持灵活授权的IBEET方案, 设计4种不同类型的授权机制, 并基于BDH问题给出具有选择身份的单项选择密文安全性证明。但由于本文方案为基础模型, 仅实现了最基本的IBE方案, 因此下一步将根据实际应用需求, 构造安全性更高、适用性更强的加密方案。
| [1] |
曾梦岐, 卿昱, 谭平璋, 等. 基于身份的加密体制研究综述[J]. 计算机应用研究, 2010, 27(1): 27-31. DOI:10.3969/j.issn.1001-3695.2010.01.007 ( 0)
|
| [2] |
SHAMIR A.Identity-based cryptosystems and signature schemes[C]//Proceedings of Workshop on the Theory and Application of Cryptographic Techniques.Berlin, Germany: Springer, 1984: 47-53.
( 0)
|
| [3] |
MCCULLAGH N. Securing E-mail with identity-based encryption[J]. IT Professional, 2005, 7(3): 63-64. ( 0)
|
| [4] |
DAN B, FRANKLIN M.Identity-based encryption from the Weil pairing[C]//Proceedings of Annual International Cryptology Conference.Berlin, Germany: Springer, 2001: 213-229.
( 0)
|
| [5] |
SAHAI A, WATERS B.Fuzzy identity-based encryption[C]//Proceedings of Annual International Conference on the Theory and Applications of Cryptographic Techniques.Berlin, Germany: Springer, 2005: 457-473.
( 0)
|
| [6] |
DAN B, BOYEN X.Efficient selective-ID secure identity-based encryption without random Oracles[C]//Proceedings of International Conference on the Theory and Applications of Cryptographic Techniques.Berlin, Germany: Springer, 2004: 223-238.
( 0)
|
| [7] |
WATERS B.Efficient identity-based encryption without random Oracles[C]//Proceedings of Annual International Conference on the Theory and Applications of Cryptographic Techniques.Berlin, Germany: Springer, 2005: 114-127.
( 0)
|
| [8] |
陈辉焱, 刘乐, 张晨晨. 一种具有CDH问题安全性基于身份的签名方案[J]. 计算机工程, 2018, 44(4): 174-180. DOI:10.3969/j.issn.1000-3428.2018.04.028 ( 0)
|
| [9] |
MA Sha. Identity-based encryption with outsourced equality test in cloud computing[J]. Information Sciences an International Journal, 2016, 328(C): 389-402. ( 0)
|
| [10] |
TANG Qiang.Towards public key encryption scheme supporting equality test with fine-grained authori-zation[C]//Proceedings of Australasian Conference on Information Security and Privacy.Berlin, Germany: Springer, 2011: 289-406.
( 0)
|
| [11] |
YANG Guomin, TAN C H, HUANG Qiong, et al.Probabilistic public key encryption with equality test[C]//Proceedings of Cryptographers' Track at the RSA Conference.Berlin, Germany: Springer, 2010: 119-131.
( 0)
|
| [12] |
LEE H T, LING S, SEO J H, et al. Semi-generic construction of public key encryption and identity-based encryption with equality test[J]. Information Sciences, 2016, 373(C): 419-440. ( 0)
|
| [13] |
WU Libing, ZHANG Yubo, CHOO K K R, et al. Efficient and secure identity-based encryption scheme with equality test in cloud computing[J]. Future Generation Computer Systems, 2017, 73(C): 22-31. ( 0)
|
| [14] |
吴黎兵, 张宇波, 何德彪. 云计算中基于身份的双服务器密文等值判定协议[J]. 计算机研究与发展, 2017, 54(10): 2232-2243. DOI:10.7544/issn1000-1239.2017.20170446 ( 0)
|
| [15] |
TANG Qiang. Public key encryption schemes supporting equality test with authorisation of different granularity[J]. International Journal of Applied Cryptography, 2017, 2(4): 304-321. ( 0)
|
| [16] |
计海萍, 徐磊, 蔚晓玲, 等. 云计算环境下基于身份的分层加密管理系统研究[J]. 信息网络安全, 2016, 16(5): 30-36. DOI:10.3969/j.issn.1671-1122.2016.05.005 ( 0)
|
2019, Vol. 45


0)