支持多密文等值测试的无线体域网聚合签密方案
2023-03-02杨小东任宁宁王彩芬
杨小东 周 航 任宁宁 袁 森 王彩芬
1(西北师范大学计算机科学与工程学院 兰州 730070)
2(深圳技术大学大数据与互联网学院 广东深圳 518118)
无线体域网[1](wireless body area network,WBAN)指由佩戴或嵌入在人体的各种无线传感器(wireless sensor,WS)组成的无线通信网络.WBAN 技术在医疗数据监测方面的应用极为广泛,不同类型的无线医疗传感器负责监测患者各个方面的医疗数据并将数据发送给各种远端服务器,方便对患者的医疗数据做出专业的分析与整合.然而,开放的WBAN 在传输患者敏感的医疗数据时,面临着患者的隐私被泄露或医疗数据被恶意篡改等风险[2].
许多国内外学者提出将密码体制应用到WBAN中,以确保WBAN 的医疗数据在传输与共享时的机密性.Mykletun 等人[3]基于传统公钥密码(public key cryptography,PKC)体制,设计了一种保证无线传感网络数据机密性的加密方案.Nadir 等人[4]基于PKC 体制与椭圆曲线密码体制为用户生成对称密钥来加密数据,确保医疗数据在无线传感网络中传输与共享时的机密性.然而,基于PKC 体制的方案[3-4]需要可信中心对用户证书进行管理,为消除证书管理的开销,一些基于身份加密体制的WBAN 方案[5-7]相继被提出.上述文献[3−7]利用对数据进行加密的方式确保了医疗数据传输时的机密性,但这种方式没有实现对医疗数据来源的认证.如果无法实现医疗数据的可认证性,不仅会导致医院浪费宝贵的医疗资源进行无效的诊断,还可能基于被篡改的医疗数据而对患者的病情做出错误诊断.
为了实现WBAN 中医疗数据的可认证性,Ahn等人[8]构造了一种基于高级加密标准(advanced encryption standard,AES)对称密码体制的认证方案.黄一才等人[9]基于身份密码体制设计了一种签名方案,该方案实现了抗重放攻击.Cagalaban 等人[10]将数字签密技术引入医疗保健系统,在确保医疗数据机密性的同时实现了数据的可认证性.Ullah 等人[11]利用超椭圆曲线的概念,设计了一种基于证书的签密方案.尽管文献[8−11]实现了医疗数据的可认证性,但都没有考虑在多用户环境下的应用场景.为解决密码方案在多用户环境下的WBAN 中计算效率较低的问题,基于聚合签名与聚合加密等技术,一些支持聚合模式的方案[12-15]相继被提出.然而,文献[8−15]没有考虑如何对WBAN 云端密文进行有效的搜索,导致数据用户在对医疗数据进行检索时开销较大.
基于可搜索加密技术[16]与密文等值测试技术[17],国内外学者提出了一些适用于WBAN 的密文检索方案[18-21].但这些WBAN 密文检索方案均存在一些缺陷,例如张嘉懿[18]与Andrew 等人[19]提出的可搜索加密方案仅支持对用相同公钥加密的医疗数据进行搜索;Ramadan 等人[20]设计的等值测试加密方案无法实现对医疗数据来源的认证;Elhabob 等人[21]设计的基于证书的密文等值测试方案存在证书管理问题等.此外,医生或医疗机构有时需要判断多个患者某些特定方面的医疗数据是否相同,或对有相同病症的患者的医疗数据进行整合与存档,但密文检索文献[18− 21]均没有考虑到多用户检索以及对多密文同时进行检索的情况,在用户节点众多的WBAN 实际应用环境中存在一定局限性.
WBAN 通常会面临需要对2 个以上的密文进行匹配的情况,而传统的密文等值测试技术只能将多个密文两两分为一组,再对所有的分组逐个进行测试,在多用户环境下的密文检索效率较低.为提高密文等值测试技术在多密文测试时的计算效率,Susilo等人[22]提出了一种支持多密文等值测试的公钥加密(public-key encryption with multi-ciphertext equality test,PKE-MET)方案,实现了对2 个以上的密文同时进行匹配的功能.在PKE-MET 方案中,每个参与多密文等值测试的数据拥有者都可以指定1 个数字n,并将自己的密文与其他n−1 个数据拥有者的密文进行匹配.PKE-MET 在支持同时对多密文进行等值测试的同时,还支持对多个用户同时进行密文检索,当测试者接收到n个希望进行密文检索的数据用户分别上传的n个测试陷门时,才可以对数据拥有者的密文进行测试,实现了多数据用户同时进行密文匹配的功能.然而,PKE-MET 方案中存在证书管理开销较大、无法对数据的来源进行认证等问题.
针对以上问题,本文提出了一种支持多密文等值测试的WBAN 聚合签密方案.该方案的创新点主要包括3 个方面:
1)基于身份签密体制.本文方案采用基于身份的签密体制,消除了传统公钥加密方案中存在的证书管理开销,确保了WBAN 中医疗数据的机密性、完整性、可认证性与数据拥有者签名的不可伪造性.
2)支持多用户密文聚合签密.引入聚合签密技术,验证者可以实现对多个数据拥有者医疗数据密文的批量验证,提高了签密方案在多用户环境下的验证效率.
3)支持多密文等值测试.引入多密文等值测试技术,测试者可以利用数据用户上传的测试陷门同时对多个密文进行匹配,实现了多用户检索与多密文等值测试,降低了多用户环境下等值测试过程的计算开销.
1 预备知识
1.1 困难问题
计算性Diffie-Hellman(computation Diffie-Hellman,CDH)问题:给定(P,aP,bP),其中a,b∈计算abP.
1.2 克拉默法则
由含有n个未知数x1,x2,…,xn的n个线性方程所组成的非齐次线性方程组
所对应的系数矩阵为
矩阵A对应的行列式为
若det(A)≠0,则该方程组有唯一解.
1.3 范德蒙矩阵与范德蒙行列式
形如
的矩阵称为范德蒙矩阵,其对应的范德蒙行列式det(V)具有如下计算性质:
2 本文方案
2.1 系统模型
本文提出的支持多密文等值测试的WBAN 聚合签密方案的系统模型如图1 所示,它包括6 个实体:私钥生成器(private key generator,PKG)、云存储提供商、数据拥有者(即患者佩戴的无线传感器)、密文等值测试者、聚合者与数据用户(data user,DU).
各个实体具体介绍为:
1)私钥生成器.负责为WBAN 中的数据拥有者和数据用户生成密钥.
Fig.1 The proposed system model图1 本文系统模型
2)云存储提供商.负责在云服务器中存储用户上传的医疗密文CT1,CT2,…,CTn.
3)数据拥有者.即患者佩戴的无线传感器,负责对医疗数据进行签密并将医疗密文上传到云端存储.
4)测试者.对从云服务器下载的多个医疗密文执行等值测试操作,将测试结果返回给云服务器.
5)聚合者.负责对多个数据拥有者的医疗数据进行聚合签密,将聚合医疗密文上传到云端存储.
6)数据用户.即医生、医疗机构与数据处理中心等希望获取医疗密文的用户,负责将等值测试的陷门上传给测试者,并对从云服务器下载的医疗密文进行解密与认证.
2.2 安全目标
本文提出的支持多密文等值测试的聚合签密方案需要考虑2 种类型的敌手,第1 类敌手无法访问数据用户的测试陷门,第2 类敌手可以获取数据用户的测试陷门.针对这2 类敌手,本文提出的方案旨在达到的安全目标为:
1)医疗数据的机密性和完整性.WBAN 中传输的大多是敏感的医疗数据,若患者的医疗数据在传输时中被恶意窃取或篡改,会造成严重后果.本文利用基于身份的加密体制,保证了所提方案在面对第1类攻击者时医疗数据的机密性与完整性.机密性指即使攻击者截取了传输的医疗密文也无法获取与明文相关的信息;完整性则指医疗数据在传输时中无法被敌手伪造或篡改.
2)数据拥有者签名的不可伪造性.本文新方案在对数据拥有者的签名的合法性进行验证的过程中,采用基于身份的签密体制,保证了在面对第1 类攻击者时数据拥有者签名的不可伪造性,即攻击者不能伪造出合法的数据拥有者签名.
3)测试陷门的单向性.测试者通过数据用户上传的测试陷门对医疗密文进行等值测试操作,在测试过程中,需要保证面对第2 类敌手时测试陷门满足单向性,即敌手无法通过测试陷门获取与参与测试的医疗数据明文相关的信息.
2.3 方案构造
2.3.1 系统初始化
2.3.2 用户密钥提取
1)用户将IDi上传给PKG,PKG 计算Qi=H1(IDi),ski,1=sQi;
2)PKG 随机选择xi∈计算PKi,1=xiP,PKi,2=H1(IDi||PKi,1),s?ki,2=xi+sPKi,2,ski,3=H1(IDi||s) ,PKi,3=ski,3P;
3)PKG输出公共参 数PKi=(PKi,1,PKi,2,PKi,3)与私钥ski=(ski,1,ski,2,ski,3).
2.3.3 医疗数据签密及上传
给定参与密文等值测试与聚合签密的数据拥有者数量为n,数据拥有者的身份标识为IDi,数据用户的身份标识为IDj,其中i,j∈{1,2,···,n}.数据拥有者执行1)~5)操作对mi进行签密:
1)随机选择ai,bi,Ni∈计算Ci,1=aiP,Ci,2=biP,Ri=aiQjPpub;
2)计算Ui=H2(mi,IDi,IDj,Ri,PKi,1,PKj,1),Vi=H3(mi,IDi,IDj,Ri,PKi,1,PKj,1),vi=aiUi+ski,2Vi,Ci,3=viP,Ci,4=H4(Ri)⊕(mi||vi);
3)计算fi,0=H5(mi||n) ,fi,1=H5(mi||n||fi,0),··· ,fi,n−1=H5(mi||n||fi,0||···||fi,n−2);
4)计算Ci,5=H4(biPKj,3) ⊕(Ni||f(Ni)),Ci,6=H6(n||Ci,1||···||Ci,5||biPKj,3||fi,0||···||fi,n−1),其中
5)将密文CTi=(ti,Ci,1,Ci,2,Ci,3,Ci,4,Ci,5,Ci,6)上传到云端存储,其中ti=n.
2.3.4 多密文等值测试
n个数据用户分别将等值测试陷门tkj=skj,3发送给测试者,其中j∈{1,2,···,n}.测试者从云服务器分别下载n个数据拥有者想要测试的密文CT1,CT2,···,CTn,执行1)~3)多密文等值测试操作:
1)检查t1=t2=···=tn=n是否成立,若成立测试者则继续执行以下操作,否则终止操作并输出“ ⊥”;
2)对于i∈{1,2,···,n} ,j∈{1,2,···,n},测试者分别计算Ni||f(Ni)=Ci,5⊕H4(Ci,2tkj),由签密算法有f(Ni)=测试者将n个等式合并得到方程组
并隐式设置fi,k=fj,k,其中k∈{0,1,···,n−1},测试者通过对该方程组对应的范德蒙矩阵求逆,获得方程组的唯一一组解f1,0,f1,1,···,f1,n−1;
3)检查等式Ci,6=H6(n||Ci,1||Ci,2||Ci,3||Ci,4||Ci,5||Ci,2tkj||fi,0||fi,1||···||fi,n−1)是否成立,若成立测试者则向云服务器输出测试结果为“1”,否则向云服务器输出测试结果为“0”.
互联网经济的迅猛发展,促使高等教育分化,高等院校培养学生的出口拓宽。应用型本科院校教学的重点除了给学生奠定科学基础,更重要的功能是培养学生的应用能力。数据库原理是计算机类专业的必修专业基础课,为学生进行信息化管理应用奠定基础。如何使学生将理论学习转化为应用技能提升是应用型本科教学的关注点,平顶山学院信息工程学院物联网工程专业以数据库原理课程教学为载体,探索了基于“学习成效”评价模式教学过程管理应用研究,以期通过全过程的学习评价、注重学习效果的评价方式提升学生自主学习的自觉性和提高创新思维的主动性。
2.3.5 医疗数据聚合签密及上传
若云服务器接收到的密文等值测试结果为“1”,代表n个数据拥有者的医疗密文全部相同,云服务器将所有数据拥有者的医疗密文CT1,CT2,···,CTn发送给聚合者,聚合者执行1)~2)操作对医疗密文进行聚合签密:
2)将聚合医疗密文σagg=({CTi}i=1,2,···,n,Xagg)上传到云服务器存储.
2.3.6 医疗数据下载及解密
给定数据用户的身份标识为IDj,其中j∈{1,2,···,n}.数据用户从云端下载聚合医疗密文σagg,对密文进行解密并验证数据来源.数据用户的具体操作如为:
3 正确性分析与安全性证明
3.1 正确性分析
1)解密等式的正确性
因此,本文方案满足密文解密等式的正确性.
3)等值测试结果的正确性
由医疗数据签密及上传算法可知,数据拥有者在签密过程中设置
由此可以得到方程组
结合fi,k=fj,k,因此可将f1,0,f1,1,···,f1,n−1作为方程组的解,将随机数Ni作为方程组的系数,则该方程组对应的矩阵为
由范德蒙矩阵的性质可知其对应的行列式为det(V)=
从数据拥有者签密过程可知,Ni是由n个不同的数据拥有者在对医疗密文进行签密时分别选择的随机数,因此det(V)=0的概率仅为[p(p−1)···(p−n+1)]−1,其中p为群的阶.由克拉默法则可知当det(V)≠0时,方程组有且仅有唯一解f1,0,f1,1,···,f1,n−1,于是有对于所有的i,j∈{1,2,···,n},k∈{0,1,···,n−1},等式fi,k=fj,k均成立,与所有参与密文等值测试的医疗密文全部相同的假设相符.因此,本文新方案满足多密文等值测试结果的正确性.
3.2 安全性证明
本文提出的方案引入了基于身份的聚合签密体制,确保了本文方案在面对第1 类敌手时医疗数据的机密性与签名的存在不可伪造性,对于机密性与不可伪造性的证明过程可以参考文献[23]方案.同时,本文方案满足面对第2 类敌手适应性选择密文攻击下的单向性(one-way against adaptive chosen ciphertext attack,OW-CCA2),以下通过定理1 证明本文方案满足OW-CCA2安全.
定理1.假设CDH 问题是难解的,则本文方案在随机预言模型下对第2 类敌手是OW-CCA2 安全的.
证明.假设 C是能够解决CDH 困难问题的人,A2代表第2 类敌手.C 以 A2为子程序充当以下游戏中的挑战者,若A2能以不可忽略的优势在概率多项式时间内的游戏中获胜,则 C能够在概率多项式时间内解决CDH 困难问题.
初始化阶段.CDH 问题的输入为(P,aP,bP),其中a,b∈C的目标是给出CDH 困难问题的解abP.C选取阶为素数p的循环群G,计算P为G的生成元,随机选择a∈并计算=aP.最后,输出系统参数params={p,P,Ppub,G,H1,H2,H3,H4,H5,H6},将a秘密保存并发送params给 A2.
询问阶段1.为了响应 A2的询问,C维持列表L1,L2,L3,L4,L5,L6,Ltd分别用于跟踪 A2的H1Hash 询问、H2Hash 询 问、H3Hash 询问、H4Hash 询 问、H5Hash询问、H6Hash 询问、测试陷门询问.L1同时用于跟踪密钥提取询问,开始时每个列表都为空.
1)H1Hash 询问.当 C收到 A2对H1(IDi,Qi)的查询,若则计算PKi,1=xiP,其中xi是未知的,C保存(⊥,Qi,IDi) 到L1;若i≠1,C随机选择xi,PKi,2∈并设置PKi,1=xiP,将PKi,2=H1(IDi||PKi,1)返回给 A2并保存(xi,PKi,1,PKi,2,IDi) 到L1.
2)H2Hash 询 问.当 C收 到A2对(mi,IDi,IDj,Ri,PKi,1,PKj,1,Ui)的查询后,C首先在L2查找是否已有(mi,IDi,IDj,Ri,PKi,1,PKj,1,Ui,ti,tiP),若L2已 有(mi,IDi,IDj,Ri,PKi,1,PKj,1,Ui,ti,tiP),则发送Ui给 A2;否则,C选取Ui∈将(Ui,ti,tiP)加入到L2中并输出tiP.
3)H3Hash 询 问.当 C收 到A2对(mi,IDi,IDj,Ri,PKi,1,PKj,1,Vi)的查询后,C首先在L3查找是否已有(mi,IDi,IDj,Ri,PKi,1,PKj,1,Vi,wi,wiP),若L3已 有(mi,IDi,IDj,Ri,PKi,1,PKj,1,Vi,wi,wiP),则返回Vi给A2;否则,C选取Vi∈将(Vi,wi,wiP)加入到L3中并输出wiP.
4)H4Hash 询问.当 C收到 A2对(Ri,H4(Ri))的查询后,若在L4中已有(Ri,H4(Ri))则返回H4(Ri)给 A2;否则,C选取并将(Ri,H4(Ri))加入到L4中且输出H4(Ri).
5)H5Hash 询问.当 C收到 A2对fi,d的查询,其中d∈{1,2,···n},若L5存在(mi,n,fi,0,···,fi,d−2,fi,d)则返回fi,d给 A2;否则,C选取fi,∗∈将(mi,n,fi,0,···,fi,d−2,fi,d)加入到L5中并输出fi,d.
6)H6Hash 询问.当 C收到 A2对Ci,6的查询后,若在L6中已有Ci,6则返回Ci,6给A2;否则,C选取Ci,6∈{0,1}k,将相应元组加入到L6中并输出Ci,6.
7)密钥提取询问.当 C收到 A2对IDi的私钥的查询后,C首先查询L1中是否存在(xi,PKi,1,PKi,2,IDi),若不存在则输出“ ⊥”;否则返回(xi,PKi,1,∗,∗).如果IDi∉C 将IDi作为H1Hash 询问的输入,得到Qi=H0(IDi),并计算ski,1=aQi,ski,2=xi+aPKi,2,返回(PKi,1,ski,1,PKi,2,IDi) 给 A2.
8)公钥替换询问.当 C收到 A2对(IDi,PKi,1,PKi,2)的查询后,若(xi,PKi,1,PKi,2,IDi)已存在于L1中,则C用列表L1中的(PKi,1,PKi,2)替换IDi原有的公钥(PKi,1,PKi,2);否则,C将(xi,PKi,1,PKi,2,IDi)加入到列表L1中.
9)签密询问.当 C收到 A2对(mi,IDi,IDj)的询问后,C 执行①~②操作:
①若IDi≠IDl且 A2没有对IDi的公钥执行过替换询问,C通过H1Hash 询问与密钥提取询问分别获取xi和ski,2,并对mi进行签密;若IDi对应的公钥被替换过,C首先通过H1询问分别获取(PKi,1,PKi,2)和(PKj,1,PKj,2),然后 C利用随机数ai∈计算Ci,1=aiP,Ri=并通过H2,H3,H4Hash 询问分别获取Ui=H2(mi,IDi,IDj,Ri,PKi,1,PKj,1),Vi=H3(mi,IDi,IDj,Ri,PKi,1,PKj,1) .H4(Ri),通过密钥提取询问获取私钥ski,2,计算vi=aiUi+ski,2Vi,Ci,3=viP,Ci,4=H4(Ri)⊕(mi||vi),最后输出密文σi=(Ci,1,Ci,2,Ci,3,PKi,1)给 A2.
② 若IDi=IDl,C首先通过H1询问分别获取(PKi,1,PKi,2)和(PKj,1,PKj,2),随机选择y,z∈并计算Ci,1=zaP.然后 C通过H1Hash 询问和H4Hash 询问分别获取(IDj,aj)和H4(Rj),并计算Rj=Uj=H2(ml,IDl,IDj,Rj,PKl,1,PKj,1),将(ml,IDl,IDj,Rj,PKl,1,PKj,1,Uj)加入到L2中,通过H3Hash 询问获取(ml,IDl,IDj,Rl,PKl,1,PKj,1,Vl,wl,wlP),并计算vl=yUl,Cl,3=Ci,4=H4(Rl)⊕(ml||vl),最后输出σl=(Cl,1,Cl,2,Cl,3,PKl,1) 给 A2.
10)解签密询问.当 C收到 A2对(CT1,CT2,···,CTn,的查询后,C执行①~②操作:
①对(ID1,ID2,···,IDn,IDj)分别执行H1Hash 询问以获取(Q1,Q2,···,Qn,Qj),(PK1,1,PK2,1,···,PKn,1,PKj,1),然后 C执行聚合签名验证算法,若验证未通过,则输出“ ⊥”后终止模拟;否则继续执行后续操作.
② 若IDj≠IDl,C则通过H1Hash 询问获取(IDj,aj)并计算Rj=ajCj,1,检查L2中是否存在元组(∗,IDj,Ri,PKi,1,PKj,1,Ui),若存在,则 C利用Hash 值Ui对 密文进行解密;否则 C随机选取Ui∈并用Ui对密文进行解密.若IDj=IDl,C则在L2中查询是否存在元组(∗,IDj,∗,PKi,1,PKj,1,Ui),若存在则利用Hash 值Ui对密文进行解密;否则将随机选取Ui∈并用Ui对 密文进行解密.
11)测试陷门询问.当 C收到 A2对tkj的询问后,若L1中存在元组(xi,PKi,1,PKi,2,IDi),C通过H1询问获取ski,3=H1(IDi||s)并返回tkj=ski,3给 A2;否则,C选取tkj∈发送给 A2,并将(xi,PKi,1,PKi,2,IDi)加入到Ltd中.
询问阶段2.A2执行与询问阶段1 类似的多项式有界次适应性查询,但不允许对对应的密文进行解签密查询.
猜测阶段.A2输出1 个对 µ的猜测µ′∈{0,1},如果µ′=µ,则 A2在以上游戏中获胜.C在列表L4中选取(Ri,H4(Ri))并以Ri=abP作为CDH 困难问题的解,这与目前公认的CDH 问题的难解性相矛盾.因此本文方案在面对A2敌手时满足选择OW-CCA2 安全.
证毕.
4 对比分析
4.1 功能特性分析
将本文提出的方案与文献[22−26]方案在功能特性方面进行比较,对比结果如表1 所示.与文献[23−24]方案相比,本文方案引入等值测试功能,实现了对存储在云端的医疗密文的安全检索.与文献[22,25−26]方案相比,本文方案引入了聚合签密技术,确保了WBAN中医疗数据的机密性、完整性与可认证性,提高了多用户环境下对医疗数据进行签密与验证的效率.文献[25−26]方案采用的等值测试方法只能对2 个密文进行比较,本文方案实现了同时对多个密文进行匹配,降低了测试者执行密文等值测试时的开销.此外,与文献[22−23,25−26]方案相比,本文方案达到了适应性选择密文攻击下的单向性,安全性有所提升.
Table 1 Comparison of Functional Characteristics表1 功能特性比较
4.2 范德蒙矩阵求逆算法复杂度分析
本文所提新方案在执行多密文等值测试算法时,测试者通过对范德蒙矩阵求逆以提取出与数据拥有者明文相关的系数.其中,n阶范德蒙矩阵求逆算法的时间复杂度取决于所使用的求逆方法,已有许多学者提出了求解范德蒙矩阵逆矩阵的串行[27-28]与并行[29-30]方法,其时间复杂度如表2 所示:
Table 2 Complexity of Inversion for Vandermonde Matrix表2 范德蒙矩阵求逆算法复杂度
4.3 计算开销分析
将本文提出的方案在计算时间开销方面与文献[25−26]方案进行对比,假设参与密文等值测试的用户数量为n,使用i7-8750h,2.20 GHz 处理器,8 GB 内存和Win10 操作系统在VC6.0 环境下用PBC 库分别对本文方案与对比方案进行了仿真模拟,对比结果如表3 所示.其中标量乘法运算时间Tsm=0.0004 ms,群元素乘法运算时间Tmul=0.0314 ms,Hash 函数运算时间Th=0.0001 ms,指数运算时间Te=6.9866 ms,双线性配对时间Tbp=9.6231 ms,范德蒙矩阵求逆时间Tinv取决于矩阵求逆方法.从表3 可以看出,由于本文方案中不存在计算开销较大的双线性配对运算,因此在密文生成阶段的计算时间开销相比于文献[25−26]的方案有显著降低.在数据解密及验证阶段,非聚合模式下的文献[25−26]方案需要所有数据用户逐一对数据进行验证并解密,而本文方案中的数据用户能够对聚合密文进行批量验证,验证效率相比于文献[25−26]的方案有所提高.
Table 3 Computation Amount Comparison表3 计算量比较ms
此外,文献[25−26]方案仅支持将多个用户的密文两两一组进行匹配,其密文等值测试算法中双线性配对运算数量与参与测试的用户数量呈线性关系;而本文方案中,测试者可以同时对n个用户的密文进行匹配,且测试过程中不存在双线性配对运算.本文方案的等值测试时间主要取决于测试者对范德蒙行列式求逆时所选取的算法,而在对范德蒙矩阵求逆的过程中仅进行标量加法与乘法等计算效率较高的运算[28],因此本文方案的密文等值测试效率同样高于文献[25−26]方案的效率.
5 结束语
针对现有的WBAN 密码方案在多用户环境下计算效率较低等问题,本文提出了支持多密文等值测试的WBAN 聚合签密方案.该方案采用基于身份的密码体制,消除了传统公钥方案中证书管理的开销;引入多密文等值测试技术,实现了多数据用户对多医疗密文的同时检索;减少了多用户环境下密文等值测试的计算开销;利用聚合签密技术,提高了对多个用户的医疗数据进行签密的效率.本文方案满足医疗数据在传输过程中的机密性、完整性和可认证性,同时保证了数据拥有者签名的不可伪造性与测试陷门的单向性.与同类方案的对比分析结果表明,本文方案支持更多安全属性且计算开销更低.在未来的工作中,将尝试设计抗量子计算攻击的支持多密文等值测试的WBAN 签密方案.
作者贡献声明:杨小东负责论文整体思路与实验方案的设计;周航负责设计方案与撰写论文;任宁宁负责方案仿真与效率分析;袁森负责搜集应用场景相关资料;王彩芬提出指导意见并修改论文.