一个指定验证者的基于身份可搜索认证加密方案

第40卷第3期2022年5月       贵州师范大学学报(自然科学版)JournalofGuizhouNormalUniversity(NaturalSciences)
Vol.40.No.3
May.2022引用格式:胡震宇,邓伦治,高岩,等.一个指定验证者的基于身份可搜索认证加密方案[J].贵州师范大学学报(自然科学版),2022,40(3):56 63.[HUZY,DENGLZ,GAOY,etal.Adesignatedtesteridentity basedsearchableauthenticatedencryp tionscheme
[J].JournalofGuizhouNormalUniversity(NaturalSciences),2022,40(3):56 63.]一个指定验证者的基于身份可搜索认证加密方案
胡震宇1,邓伦治2
,高 岩2,施虹宇2,武亚颖1
(1.贵州师范大学大数据与计算机科学学院,贵州贵阳 550025;2.贵州师范大学数学科学学院,贵州贵阳 550025)
摘要:可搜索加密是实现密文检索的重要密码学工具。在强安全模型下提出一个新的指定验证者的基于身份可搜索认证加密方案并在标准模型中证明了其安全性。由于新方案不使用双线性对和哈希到点两种常用高成本运算,与现有同类方案相比,新方案的运算成本更低,因此更符合实际需要。关
词:基于身份密码学;可搜索加密;椭圆曲线;标准模型;云存储
中图分类号:TP391  文献标识码:A  文章编号:1004—5570(2022)03-0056-08DOI:10.16614/j.gznuj.zrb.2022.03.010
Adesignatedtesteridentity basedsearchable
authenticatedencryptionscheme
HUZhenyu1,DENGLunzhi2
,GAOYan2,SHIHongyu2,WUYaying
1(1.SchoolofBigDataandComputerScience,Guizho
uNormalUniversity,Guiyang,Guizhou550025,China;
2.SchoolofMathematicalSciences,GuizhouNormalUniversity,Guiyang,Guizhou550025,China)
Abstract:Searchableencryptionisanimportantcryptographictoolforciphertextretrieval.Thispaperproposesanewdesignatedtesteridentity basedsearchableauthenticatedencryptionschemeundertheenhancedsecuritymodelandprovesitssecurityinthestandardmodel.Sincethenewschemedoesnotusethetwoexpensiveoperations(i.e.,bilinearpairingandhashtopointoperations),comparedwiththeexistingsimilarschemes,thenewschemeismoreefficientandmoreinlinewithactualneeds.Keywords:identity basedcryptography;searchableencryption;ellipticcurve;standardmodel;cloudstorag
0 引言
如今,信息技术的发展带来了数据量的迅速膨胀,对于各种机构和网络个人用户,云存储服务的广泛应用成为一种必然趋势。虽然云存储的使用极大方便了数据的管理和分享,但是上传到云服务
器上的数据面临丢失、恶意修改和泄露的风险,因
此上传到云服务器上的数据常为加密数据。大量的加密数据带来了密文检索困难的问题,而对所有密文进行解密并在明文上进行检索不符合现实需求。因此,在密文上进行检索是一项必要的研究内容。
5收稿日期:2022-01-03
基金项目:国家自然科学基金项目(61962011)
通讯作者:
邓伦治(1979-)男,博士,教授,博士生导师,研究方向:密码学,E mail:dengl
unzhi@163.com.
为了解决密文检索问题,Song等[1]在2000年提出了可搜索加密(Searchableencryption,SE)的概念并给出了一个具体方案。在可搜索加密体制中,存在数据发送者、数据接收者和云服务器(即数据验证者)3个实体。数据发送者将作为加密文件索引的关键词密文与该文件一同上传至云服务器。在检索密文时,数据接收者对所需文件关键词生成搜索陷门并提交给云服务器,云服务器使用验证算法验证搜索陷门是否与现存关键词密文匹配,若匹配成功则返回搜索陷门所成功匹配关键词密文对应的文件,否则搜索失败。在检索过程中,关键词明文信息不会被泄露。但文献[1]的方案是一个对称加密方案,由此带来的密钥分配复杂性使其不适合数据分享情景。为此,Boneh等[2]在2004年提出了第一个公钥可搜索加密(Searchablepublickeyencryption,SPE)。之后,Baek等[3]进一步提供了一个无安全信道的SPE框架,数据接收者可以通过公共信道向服务器发送搜索陷门。但是为了认证用户公钥,基于传统公钥设施构建的SPE方案需要一个第三方可信机构来为用户发放证书。由此,Abdalla等[4]扩展了Shamir[5]提出的基于身份公钥密码学概念,提出一个基于身份的可搜索加密(Identity basedSE,IBSE)方案,在该密码体制中,私钥生成中心(Privatekeygenerator,PKG)利用用户的身份信息(如工号、证件号码、姓名等)为用户生成公钥和私钥,省去了证书发放的问题。随后,一系列基于身份的可搜索加密方案被提出。[6-7]
由于日常语言习惯,用来作为加密文件索引的关键词空间较小。当截获一个关键词搜索陷门时,拥有匹配测试权限的敌手可以利用数据接收者的公钥为所有可能的关键词生成关键词密文并尝试与所截获陷门匹配,直到成功为止。这种攻击被称为关键词猜测攻击(Keywordsguessingattacks,KGA)[8-9]。抵御KGA的一种可行方案是指定验证者,即只有被指定的实体才能进行匹配测试算法。但是该方法必须保证指定验证者是可信的,否则其仍可进行如上描述的关键词猜测攻击。为了解决这个问题,Huang等[10]提出了可搜索认证加密(Searchableauthenticatedencryption,SAE)概念。在该类方案[10-11]中,关键词加密算法要用到数据发送者的私钥,因此只有数据发送者才能生成有效密文。2019年,Li等[12]提出了一个指定验证者的基于身份可搜索认证加密(Designatedtesteridenti ty basedSAE,DIBSAE),在该方案中,只有指定验证者才能进行匹配测试算法,但指定验证者无法生成有效密文来进行KGA,即可以抵御内部关键词猜测攻击。
在依赖随机谕言模型的安全性证明中,哈希函数被一个人为构造的列表所替代,此类方案在现实中可能是不安全的[13-14],而标准模型允许通过直接运算哈希函数来获得哈希值,因此在现实中有更高的安全性。本文提出了一个基于强安全模型的DIBSAE方案并在标准模型下证明了其安全性。另外,由于新方案不使用双线性对运算和哈希到点运算,因此该方案与同类方案相比具有更高效率。
1 准备知识
定义1 p,q为2个大素数,E/F
是1个椭圆曲线,G为该椭圆曲线上1个q阶加法循环。P∈G为G的1个生成元,给定1个元组(P,aP,bP,
X),其中a,b∈Z
且未知,则判定性Diffie Hell man(DecisionalDiffie Hellman,DDH)问题是判断X=abP是否成立。
2 方案定义
本节我们将给出本方案的方案模型和安全性模型。
2 1 方案模型
一个DIBSAE方案由如下5个多项式时间算法组成:
1)系统参数生成算法Setup:输入安全参数δ,PKG通过此算法生成并公布系统参数parm。
2)用户密钥生成算法UserKeyGen:输入系统
参数parm、实体地址ID合规管理系统
,PKG利用此算法为用户
ID
生成并发送公钥R
IDi
和私钥d
IDi
3)关键词密文生成算法dIBSAE:输入全局参
数parm、数据发送者地址ID
及其私钥d
IDS
、数据
接收者的地址ID
及其公钥R
IDR
、指定验证者地址
ID
dS
及其公钥R
IDdS
和索引关键词w,数据发送者
ID
通过该算法生成关键词密文C
作为相关加密
文件的索引与该文件一起上传指定服务器ID
dS
4)搜索陷门生成算法Trapdoor:输入全局参数
parm、数据发送者地址ID
及其公钥R
IDS
、数据接
收者地址ID
及其私钥d
IDR
、指定验证者地址ID
dS
 第3期胡震宇,邓伦治,高 岩,等:一个指定验证者的基于身份可搜索认证加密方案
及其公钥RIDdS和搜索关键词w′,数据接收者IDR利用该算法输出搜索陷门Tw′
。5)匹配测试算法MatchTest:输入全局参数parm、数据发送者地址IDS、数据接收者地址IDR、指定验证者地址IDdS及其私钥dIDdS、关键词密文Cw和搜索陷门Tw′,指定服务器IDdS通过该算法输出结果"0"或"1"。其中,"0"代表搜索失败,"1"代表
搜索成功。若搜索成功,IDdS将对应加密文件发送给数据接收者IDR。2 2 安全性模型
本部分我们将给出dIBSAE方案的安全模型。在DIBSAE中存在内部和外部两类敌手,其分别定义为:
1)AO(外部敌手):具体指除指定服务器IDdS
之外的任何人。
2)AI(内部敌手):具体指指定服务器IDdS。一个D
IBSAE方案应该满足在关键词猜测攻击下的关键词密文不可区分性(Ciphertextindistin guishabilityunderthekeywordguessingattacks,CIND KGA)和在关键词猜测攻击下的陷门不可区分性(Trapdoorindistinguishabilityunderthekeywordguessingattacks,TIND KGA)。这两类安全性分别保证多项式敌手无法通过关键词猜测攻击从关键词密文和搜索陷门中获得有用的关键词信息。
CIND KGA和TIND KGA以如下几个对抗游戏定义。
定义2 (CIND KGA)没有多项式时间敌手AO或AI可以以不可忽略的优势赢得以下游戏,则称一个dIBSAE方案满足CIND KGA。
游戏1 (针对AO的CIND KGA)挑战者C与dIBSAE中的敌手AO进行如下游戏:
初始化 挑战者C设置安全参数δ,输出主密钥s和系统参数parm并发送parm给AO。
第一阶段 本阶段敌手AO适应性地向挑战者C做一系列查询,具体描述如下:
UPK Query:当AO提交实体IDi时,C返回IDi
的公钥RIDi
。SK Query:当AO提交IDi时,C返回IDi
的私钥dIDi
。dIBSAE Query:AO提交元组(IDS,IDR,IDdS
,w)时,C返回发送者为IDS,接收者为IDR,指定验证者为IDdS的关于关键词w的关键词密文Cw
。TD Query:当AO提交元组(IDS,IDR,IDdS
,w)时,C返回发送者为IDS,接收者为IDR,指定验证者为IDdS的关于关键词w的搜索陷门Tw
。挑战 AO提交元组(ID S,ID R,ID
dS,w0
,w1(≠w0)),条件是AO没有在第一阶段中对ID
dS
做SK Query。C随机选择ω∈{0,1},返回对应实
体关于关键词wω的关键词密文C wω
。第二阶段 AO继续进行一系列第一阶段的各
项操作,条件是AO不能对ID
dS做S
K Query。猜测 敌手AO提交ω′,若ω′=ω,则称敌手AO在游戏1
中获胜。敌手AO在游戏1
中的优势被定义为:AdvCIND-KGA
AO
兔毛纱线=|Pr[ω′=ω]-1
|。游戏2 (针对AI的CIND KGA)挑战者C与dIBSAE中的敌手AI进行如下游戏:
初始化 挑战者C设置安全参数δ,输出主密钥s和系统参数parm并发送parm给AI
。第一阶段 本阶段敌手AI适应性地向挑战者C做一系列如游戏1中AO可做的查询。
挑战 AI提交元组(ID S,ID R,ID dS,w0
,w1(≠w0
),条件是:1)AI没有对IDi∈{ID S,ID R}
进行SK Que ry。
2)AI没有对(ID S,ID R,ID dS,wi
)(i=0,1)进行TD Query。
C随机选择ω∈{0,1},返回对应实体关于关
键词wω的关键词密文C
wω
。第二阶段 AI继续进行一系列第一阶段的各项操作,条件是:
1)AI不能对IDi∈{ID S,ID
R}
进行SK Que ry。
2)AI不能对(ID S,ID R,ID dS,wi
)(i=0,1)进行TD Query。
猜测 敌手AI提交ω′,若ω′=ω,则称敌手AI在游戏2
中获胜。敌手AI在游戏2
中的优势被定义为:AdvCIND-KGAAI
=|Pr[ω′=ω]-1
|。定义3 (TIND KGA)没有多项式时间敌手AO和AI可以以不可忽略的优势赢得以下游戏,则称一个dIBSAE方案满足TIND KGA。
游戏3 (针对AO的TIND KGA)挑战者C与dIBSAE中的敌手AO进行如下游戏:
初始化 同游戏1。第一阶段 同游戏1。
5                  贵州师范大学学报(自然科学版)               第40卷 
挑战 AO提交元组(ID S,ID R,ID
dS,w0
,w1(≠w0)),条件是AO没有在第一阶段中对ID
dS
做SK Query。C随机选择ω∈{0,1},返回对应实
体关于关键词wω的搜索陷门T
wω
。第二阶段 AO继续进行一系列第一阶段的各项操作,条件是AO不能对I
dS
做SK Query。猜测 敌手AO提交ω′,若ω′=ω,则称敌手AO在游戏3
中获胜。敌手AO在游戏3中的优势被定义为:Adv
TIND-KGA
AO
=|Pr[ω
′=ω]-1
|。游戏4 (针对AI的TIND KGA)挑战者C与dIBSAE中的敌手AI进行如下游戏:
初始化 同游戏2。第一阶段 同游戏2。
挑战 AI提交元组(ID S
,ID R
柴草气化炉
ID dS
,w0,w1
(≠w0
)),条件是:1)AI没有在第一阶段中对IDi∈{ID
,ID R
}做SK Query。
2)AI未对(ID S,ID R,ID dS,wi
)(i=0,1)进行dIBSAE Query或TD Query。
C随机选择ω∈{0,1},返回对应实体关于关
键词wω的搜索陷门T
wω
。第二阶段 AI继续进行一系列第一阶段的各项操作,条件是:
1)AI不能对IDi∈{ID S,ID
R}做SK Query。2)AI不能对(ID S,ID R,ID dS,wi
)(i=0,1)进行dIBSAE Query或TD Query。
猜测 敌手AI提交ω′,若ω′=ω,则称敌手AI在游戏4
中获胜。敌手AI在游戏4
水稻脱粒机中的优势被定义为:AdvTIND-KGA
AI
=|Pr[ω′=ω]-1
|。3 方案描述
3 1 具体方案
(1)Setup(δ):输入安全参数δ,PKG选择Fp
上的一个大素数q阶加性循环G和G的一个生
成元P。KGC随机选择msk=s∈Z q作为主密钥,
计算系统公钥P0=sP,选择4个安全的哈希函数:
h0:Z q×G→Z
q,
h1:Z q×Z q×Z q×G×Z q→Z q,
h2:G×Z q×Z q×Z q×G×Z q→Z
q,h3:G×Z q×Z q×Z q×G→Z q,公布系统参数parm=(δ,q,G,P,P0,h0,h1
,h2,h3
)。(2)UserKeyGen(parm,IDi
):输入元组(parm,IDi),PKG随机选择rIDi∈Z
q,计算IDi的公钥RIDi
=rIDiP和私钥dIDi=rIDi+αIDi·s,其中αIDi=h0(IDi,RIDi)。PKG公布RIDi并通过安全信道发送dIDi
给实体IDi。(3)DIBSAE(parm,IDS,dIDS,IDR,RIDR
,IDdS,RIDdS,w):输入元组(parm,IDS,dIDS,IDR,RIDR,IDdS,RIDdS
,w),数据发送者IDS做如下操作:1)随机选择t∈Z
q。
2)计算C1=t
P,μ=h1(IDS,IDR,IDdS,dIDS(RIDR+αIDRP0),w),ρ=t(RIDdS+αIDdSP0
),C2=h2(C1,IDS,IDR,IDdS,ρ,μ)。3)输出关键词密文Cw=(C1,C2
)。(4)Trapdoor(parm,IDS,RIDS,IDR,dIDR
,IDdS,RIDdS,w′):输入元组(parm,IDS,RIDS,IDR,dIDR,IDdS,RIDdS
,w′),数据接收者IDR做如下操作:1)随机选择l1,l2∈Z
防尘服q。
2)计算T1=l1P,ρ′=l1(RIDdS+αIDdSP0),μ′=h1(IDS,IDR,IDdS,dIDR(RIDS+αIDSP0),w′),T2=l2h3(T1,IDS,IDR,IDdS,ρ′),T3=l2+μ′。3)输出搜索陷门Tw′=(T1,T2,T3
)。(5)MatchTest(parm,IDS,IDR,IDdS,dIDdS
,Cw,Tw′):输入元组(parm,IDS,IDR,IDdS,dIDdS,Cw,Tw′)指定服务器IDdS做如下操作:
1)计算h=h3(T1,IDS,IDR,IDdS,dIDdST1
),θ1=dIDdSC1
,θ2=T3-T2h-1
。2)验证C2=h2(C1,IDS,IDR,IDdS,θ1,θ2
)是否成立。若等式成立,输出结果"1",否则,输出结果"0"。3 2 正确性
θ1=dIDdSC1=(rIDdS+αIDdSs)tP=t(RIDdS
+αIDdSP0)=ρ,dIDdST1=(rIDdS+αIDdSs)l1P=l1(RIDdS+αIDdSP0)=ρ′,dIDR(RIDS+αIDSP0)=dIDRdIDS
P=dIDS(RIDR+αIDR
P0),θ2=T3-T2h-1
=μ′。易知,当w′=w时C2=h2(C1,IDS,IDR,IDdS
,θ1,θ2
)成立,因此本方案是正确的。9
5 第3期胡震宇,邓伦治,高 岩,等:一个指定验证者的基于身份可搜索认证加密方案
4 安全性证明
定理1 在DDH问题下,新方案满足CIND KGA,该定理将分引理1和引理2在标准模型下证明。
引理1 AO是dIBSAE中的外部敌手,假设AO
可以以一个不可忽略的优势ε在游戏1中获胜,则C可以以优势ε′=
ε
QU
解决DDH问题,其中QU为UPK Query的次数。
证明 假设有一个DDH问题的元组(P,aP,bP,X),C将在游戏1中担当挑战者来判断X=abP是否成立。
初始化 输入安全参数δ,C通过Setup算法
生成主密钥s和系统参数parm=(δ,q,G,P,P0,h0,h1,h2,h3)然后发送系统参数parm给AO。
第一阶段 C对AO所做的一系列如下操作进行回应。在A的每一次其他查询前都需要进行UPK Query。C维护几张初始为空的列表来存储查询和回复(该要求在本节均适用)。
UPK Query:C维护元组形式为(IDi,rIDi,RIDi
)的列表LU,当AO输入IDi时,C在列表LU中查(IDi,RIDi)并返回RIDi。如果没有对应条目,C做如下操作:
1)在第j次创建条目时,C添加(IDj
,⊥,aP)到LU。
2)IDi≠IDj时,C随机选择rIDi
∈Z
,计算RIDi=rIDiP,添加(IDi,rIDi,RIDi
)到LU。SK Query:当AO提交IDi时,若IDi=IDj
,游戏中止。否则,C通过调用UserKeyGen算法返回dIDi
给AO。dIBSAE Query:当AO提交(IDS,IDR,IDdS,w),C调用dIBSAE算法得到Cw并将其返回给AO。
TD Query:当AO提交(IDS,IDR,IDdS
,w),C调用Trapdoor算法得到Tw并将其返回给AO。
挑战 AO输出满足游戏1要求的元组(ID
S,ID R,ID dS,w0,w1(≠w0))。如果ID
dS=IDj
,C随机选择ω∈{0,1}并进行如下操作。否则,C失败并停止。
1)在列表LU中出(ID S,rID S,RID S
),(ID
R,RID R
)和(IDj,aP)。2)计算
αID S=h0(ID
,RID S),αID R=h0(ID R
,RID R
),αIDj=h0(IDj,aP),dID S=rID S+αID S
s。3)令C
1=bP,计算ρ=X+αIDj勇猛的圣灵肩垫
sbP,μ=h1(ID S,ID
R,IDj,dID S(RID R+αID RP0),wω),C 2=h2(C 1,ID S,ID
R,IDj,ρ,μ)。4)输出密文C wω
=(C 1,C 2)。第二阶段 AO可以在满足游戏1要求的情况下重新进行第一阶段中的各项查询。
猜测 AO输出ω′,如果ω′=ω,则称AO在游戏1中获胜。
解决DDH问题 如果AO获胜C输出"1",否则输出"0"。如果X=abP,有
ρ=X+αIDjsbP=b(aP+αIDjP0
)=b(RID dS+αID dSP0
)。因此C
wω
是一个有效的密文,而AO赢得游戏1的优势为ε,所以
Pr[C→1|X=abP]=Pr[C→1|ω′=ω]=1
+ε。由于C
wω
的各部分在ω=0或ω=1时的分布相同,所以AO没有除猜测外的额外优势去区分ω,即:
Pr[C→1|X≠abP]=Pr[ω′=ω|X≠abP]=12
。概率分析令QU,QSK分别为UPK Query,SK Query的次数,一些事件定义如下:
E1:AO没有对IDj进行S
K Query。E2:ID dS=IDj
。Pr[E1
]=QU-QSK
QU
,Pr[E2|E1]=1
QU-QSK
Pr[CSuccess]=Pr[E1E2]=Pr[E1]Pr[E2|E1
]=
QU
。因此,AO如果可以在游戏1中以不可忽略的优势ε获胜,则C可以判断等式X=abP是否成立的优势为ε′=
ε
QU
。引理2 AI是dIBSAE中的内部敌手,假设AI
可以以一个不可忽略的优势ε在游戏2中获胜,则C可以以优势ε′=
2ε
QU(QU-
1)解决DDH问题,
其中QU为U
PK Query的次数。证明 假设有一个DDH问题的元组(P,aP,
6                  贵州师范大学学报(自然科学版)               第40卷 

本文发布于:2024-09-23 17:21:41,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/115314.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:搜索   关键词   方案   数据   加密   密文
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议