医疗云环境下的隐私增强属性访问控制系统
2022-05-30王朋辉柳欣鲁玉莹张汇刘源尚圆圆
王朋辉 柳欣 鲁玉莹 张汇 刘源 尚圆圆
摘要:电子健康记录(EHR, Electronic Health Record)是医疗云环境下的典型应用,在云端共享此类数据有助于为患者提供远程医疗服务。然而,已有的同类系统较少同时考虑用户属性隐藏和用户属性废除这两个关键性问题。借鉴广播属性加密(B-ABE, Broadcast ABE)的思想,对Nishide等的属性加密方案进行扩展,得到支持属性隐藏的B-ABE方案。然后,基于该方案设计了在医疗云环境下共享EHR的属性访问控制系统。新系统能对用户的属性进行隐藏,增强了对患者的隐私保护。同时,患者能自主废除用户的访问权限,且无须对系统公开参数和其他用户的私钥执行更新。
关键词:电子健康记录; 访问控制; 属性加密; 广播加密; 属性废除
中图分类号:TP309.7 文献标识码:A
文章编号:1009-3044(2022)10-0027-02
1 引言
電子健康记录(EHR, Electronic Health Record)是对患者相关信息(如健康指标、会诊报告、检查报告等)的一种收集,它有助于以高效的方式实现对健康信息的共享[1]。随着医疗云设施的建设与应用,越来越多的信息加入EHR中。各大医院逐步开通了云上医院、电子病历和远程诊疗[2]等服务,使患者享受便捷的医疗服务成为可能。此外,在设计EHR系统时,必须充分考虑防止患者敏感信息泄露、允许患者对个人的EHR进行访问控制等安全问题。
属性加密(ABE, Attribute-Based Encryption)是一种高级公钥加密技术,并且逐渐成为为各类云应用系统提供用户隐私保护和细粒度访问控制机制的基础工具[3-4]。在文献[1]中,Narayan等提出基于ABE技术构造的EHR系统框架,该框架的特点是支持用户废除和关键字搜索。在文献[2]中,巫光福等提出基于联盟链的EHR共享框架,旨在利用联盟链技术解决EHR的隐私保护和数据共享问题。在文献[5]中,屠袁飞等提出基于体域网的EHR系统,该系统引入了“先匹配后解密”的机制,提高了解密过程的效率。
本文认为,已有同类系统较少同时关注用户属性隐藏和属性废除这两个关键问题,使系统的实用性得到削弱。本文借鉴广播属性加密(B-ABE, Broadcast ABE)的思想对Nishide等的ABE方案进行扩展,得到支持属性隐藏的B-ABE方案。然后,基于该方案构造了可以在医疗云环境下为患者提供更强隐私保护的EHR访问控制系统。新系统的优点是:①支持属性隐藏,即任何人无法通过访问策略对患者的病情做出准确推断。②支持用户废除,即患者有权收回用户访问其EHR数据的权利。③可证明满足正确性、机密性和数据隐私性质。
2 预备知识
2.1 双线性群环境
我们定义如下的双线性群环境[(G,GT,G,p,e)]。其中,[G]表示素数[p]阶椭圆曲线群,[GT]表示素数[p]阶乘法群,[G]表示在群[G]上随机选取的基点。[e:G×G→] [GT]是一个可计算的函数,它满足双线性和非退化性[6]。
2.2 ABE以及Nishide等人的属性隐藏技术
在ACNS2008会议上,Nishide、Yoneyama和Ohta[7]提出允许对访问控制策略进行隐藏的ABE方案(简称NYO方案)。在该方案中,定义属性全集[{A1,A2,...,An}]。用户拥有属性集[L=[L1,...,Ln]]以及对应的解密私钥[SKL]。假设[DO](Data Owner)希望分享敏感消息[M],他定义访问策略[W=[W1,...,Wn]],并且产生密文[CT=(W,C,] [C0,{Ci,ti,1,Ci,ti,2}1≤ti≤ni1≤i≤n)]。在[CT]中,对于属性[Ai]的每个可能取值[vi,ti],存在对应的密文元素[Ci,ti,1,Ci,ti,2]。用户能成功执行解密的条件是:对于[i=1,...,n],满足[Li∈Wi]。因此,非授权用户无法推断DO的属性值。
2.3 基于广播加密的用户属性废除技术
在文献[8]中,Attrapadung等提出广播属性加密技术。用户拥有属性集L和唯一的下标ID。DO采用底层广播加密方案中的封装密钥K对敏感信息(如EHR)进行隐藏,并且利用底层的ABE方案实施访问控制策略。用户的解密条件是:L|=W(即属性集L满足访问控制策略W),同时,IDÎS。其中,S表示DO维护的未被废除的用户下标集合。
3 访问控制系统的详细设计
3.1 系统模型定义
本文系统中存在以下类型的参与方:医疗中心(HC, Healthcare Center)、DO、用户(U, User)和云服务器(CS, Cloud Server)。其中,HC负责为DO和U颁发属性解密私钥,并且产生系统公开参数。DO是EHR的所有者,有权定义访问控制策略、对EHR执行加密和对U执行废除操作。U是EHR的访问者,对应于医护人员和医学研究者。
3.2 算法定义
本文系统由以下算法构成:①[EHR-] [Setup(1κ).]该算法由HC执行,用于产生公开参数[PK]和主密钥[MSK]。②[EHR-KeyGen] [(L).]该算法由HC执行,用于为U产生属性解密私钥[SKID,L]。③[EHR-Outsource(M,W).]该算法由DO执行,产生关于消息[M](即EHR)的密文[CT]。④[EHR-Access(PK,L,] [SKID,L,CT).]该算法由U执行,用于对[CT]解密。⑤[EHR-Revoke(S,ID).]该算法由DO执行,用于撤销下标为[ID]的U的访问权限。
3.3 支持属性隐藏的B-ABE方案
本文思路是将Boneh-Gentry-Waters广播加密方案(简称BGW方案)[9]和NYO方案结合起来。这样做的优点是,利用NYO方案可以较好地对用户属性进行隐藏。同时,利用BGW方案实现属性废除。DO需要在本地维护存放由合法用户下标构成的列表S。当需要废除某个用户时,DO直接将该用户的下标从S中删除,而无须请求HC更新系统公开参数,也无须为剩余用户更新属性解密私钥。在下面的描述中,假设属性全集的规模为[N],每个属性[Ai]有[Ni]个可能的取值,且系统中的用户数量为[n]。
Setup. HC执行以下步骤:
(1)产生2.1节定义的双线性群环境[(G,GT,G,p,e)]。
(2)选取[α∈Zp],对于[i=1,...,n,] [n+2,...,2n],计算[Gi=αi⋅G]。选取[γ∈Zp],设置[V=γ⋅G]。对于[i=1,...,N],选取[{ai,ti,bi,ti∈ℤ*p}1≤ti≤Ni],选取[{Ai,ti∈G}1≤ti≤Ni]。
(3)设置[PK=((G,GT,G,p,e),G1,...,] [Gn,Gn+2,...,G2n,V,{ai,ti⋅Ai,ti,bi,ti⋅Ai,ti}1≤ti≤Ni1≤i≤N),][MSK=(α,γ,{ai,ti,bi,ti}1≤ti≤Ni1≤i≤N)]。
KeyGen. 假设[L=[L1,...,LN]]为用户的属性列表,假设用户下标为[ID],为了产生对应的解密私钥[SKID,L],HC执行以下步骤:
(1)对于[i=1,...,N],选取[ri∈Zp],设置[r=i=1Nri]。
(2)计算[D(1)=(-r+αIDγ)⋅G]。对于[i=1,...,N],设置[D(2)i,0=ri⋅G+ai,tibi,tiλi⋅Ai,ti,] [D(2)i,1=ai,tiλi⋅G,D(2)i,2=bi,tiλi?G],其中[Li=vi,ti]。
(3)设置[SKID,L=(D(1),{D(2)i,0,D(2)i,1,] [D(2)i,2}1≤i≤N)]。
Encrypt. 假设DO希望利用访问控制策略[W=[W1,...,WN]]对消息[M∈GT]执行加密。为此,他执行以下步骤:
(1)选取[s∈Z*p],设置[C(0)=M⋅] [e(G1,Gn)s,C(1)=s⋅G,C(3)=s⋅(V+j∈SGn+1-j)]。
(2)对于[i=1,...,N],选取[{si,ti∈] [Z*p}1≤ti≤Ni],随机选取[random∈G],计算[C(2)i,ti,1=si,tibi,ti⋅Ai,ti,vi,ti∈Wirandom,vi,ti∉Wi,]
[C(2)i,ti,2=((s-si,ti)ai,ti)⋅Ai,ti,vi,ti∈Wirandom,vi,ti∉Wi]。
(3)设置[CT=(W,C(0),C(1),{{C(2)i,ti,1,] [C(2)i,ti,2}1≤ti≤Ni}1≤i≤N,C(3))]。
Decrypt. 假设[UID]掌握属性列表[L]以及[SKID,L],给定[CT],他执行以下步骤:
(1)检查是否满足[L|=W],若否,则终止。
(2)对于[i=1,...,N],设置[(C′i,1,C′i,2)=] [(Ci,ti,1,Ci,ti,2)]。其中,[Li=vi,ti]。
(3)[计算K=e(GID,C(3))e(j∈S,j≠IDGn+1-j+ID,C(1))⋅i=1Ne(C(2)i,1,D(2)i,1)e(C(2)i,2,D(2)i,2)e(C(1),D(1))i=1Ne(C(1),D(2)i,0)]
[=e(G1,Gn)]。
(4)恢复明文[C(0)/K=M]。
Revoke.假设DO希望废除[UID],他仅需要设置[S←S/{ID}]。
3.4 新的属性访问控制系统
该系统的执行过程如下:①[EHR-Setup] [(1κ).]HC调用3.3节的Setup算法,产生公开参数[PK]和主密钥[MSK]。②[EHR-KeyGen] [(L).] 假设U拥有属性集L,HC为U选取唯一的下标ID,然后调用3.3节的KeyGen算法,输出属性解密私钥[SKID,L]。③[EHR-] [Outsource(M,W).]假设DO希望将EHR数据M外包给CS。为此,定义访问策略W,并且调用3.3节的Encrypt算法,输出密文[CT]。④[EHR-Access(PK,L,SKID,L,CT).]假设U希望访问隐藏在[CT]中的EHR。为此,调用3.3节的Decrypt算法,从而恢复[M]。⑤[EHR-Revoke(S,ID).]假设DO希望废除[UID]的访问权限。为此,调用3.3节的Revoke算法即可。
4 安全性分析
正确性。容易证明以下等式成立,即:
[e(GID,C(3))e(j∈S,j≠IDGn+1-j+ID,C(1))=e(GID,V)se(Gn,G1)s.] (1)
[i=1ne(C(2)i,1,D(2)i,1)e(C(2)i,2,D(2)i,2)e(C(1),D(1))i=1ne(C(1),D(2)i,0)=1e(GID,V)s.] (2)
根据式(1)(2)得出:
[e(GID,C(3))e(j∈S,j≠IDGn+1-j+ID,C(1))⋅i=1ne(C(2)i,1,D(2)i,1)e(C(2)i,2,D(2)i,2)e(C(1),D(1))i=1ne(C(1),D(2)i,0)=K.]
(3)
式(3)表明,只要[CT]是严格按照Encrypt算法的规定产生,且[UID]拥有合法的解密私钥[SKID,L]。在“L|=WÙIDÎS”的情况下,[UID]必然能通过执行Decrypt算法恢复封装密钥[K]。然后,就能通过计算[C(0)K]恢复明文。
机密性。本文系统中DO利用B-ABE方案对敏感信息M执行加密。在不满足访问控制条件“L|=WÙIDÎS”的情况下,CS或攻击者将无法阅读M的具体内容。
数据隐私。3.3节方案继承了底层NYO方案的属性隐藏性质,因此除了文件大小、用户下标和EHR操作序列揭示的信息之外,CS无法对推断患者的属性值和M的内容进行推断。
5 结论
本文针对医疗云环境下的患者EHR共享和隐私保护问题,提出能较好满足现实应用需求的属性访问控制系统。同时,证明该系统满足正确性、机密性和数据隐私性质。在后续研究中,将在理想世界/现实世界模型[10]下为所设计的系统提供严格的安全性证明,开展基于仿真实验的性能分析,设计支持更复杂的访问策略的访问控制系统等。
参考文献:
[1] Narayan S,Gagné M,Safavi-Naini R.Privacy preserving EHR system using attribute-based infrastructure[C].Proceedings of the 2010 ACM,New York:ACM Press,2010:4 7-52.
[2] 巫光福,余攀,陈颖,等.基于聯盟链的电子健康记录隐私保护和共享[J].计算机应用研究,2021,38(1):33-38.
[3] 柳欣,徐秋亮,张斌,等.基于直接匿名证明的k次属性认证方案[J].通信学报,2018,39(12):113-133.
[4] 崔荣涛,柳欣,宁文龙,等.支持部分隐藏访问控制策略的属性认证方案[J].电脑知识与技术,2021,17(13):6-8.
[5] 屠袁飞,张成真.面向云端的安全高效的电子健康记录[J].计算机科学,2020,47(2):294-299.
[6] (美) Jonathan Katz.数字签名[M]. 任伟,译.北京:国防工业出版社,2012.
[7] Nishide T,Yoneyama K,Ohta K.Attribute-based encryption with partially hidden encryptor-specified access structures[C].Proceedings of ACNS 2008, Berlin: Springer, 2008:111-129.
[8] Attrapadung N,Imai H.Conjunctive broadcast and attribute-based encryption[C]. Proceedings of Pairing 2009, Berlin: Springer,2009: 248-265.
[9] Boneh D,Gentry C,Waters B.Collusion resistant broadcast encryption with short ciphertexts and private keys[C].Proceedings of CRYPTO 2005 Berlin: Springer, 2005:258-275.
[10] 柳欣,徐秋亮.基于预付费的隐私保护多重电子优惠券系统[J].山东大学学报(理学版),2021,56(11):1-14.
【通联编辑:代影】
收稿日期:2021-11-08
基金项目:山东省大学生创新创业训练计划项目(S202114277055);山东省高等教育本科教改项目(M2018X245);山东省高等学校科学技术计划项目(J17KA081);山东青年政治学院教学改革研究项目(JG201905);山东青年政治学院应用型课程建设项目——《算法导论》(山青院教通字(2021)96号);山东青年政治学院2021年度课程思政示范课建设项目(KCSZ202116)。
作者简介:王朋辉(2000—),男,河南鹿邑人,本科生,主要研究方向为信息安全;通信作者:柳欣(1978—),男,山东广饶人,教授,博士,主要研究方向为信息安全与密码学;鲁玉莹(2001—),女,山东莒南人,本科生,主要研究方向为信息安全;张汇(2000—),女,山东临沭人,本科生,主要研究方向为信息安全;刘源(2001—),男,山东烟台人,本科生,主要研究方向为信息安全;尚圆圆(2001—),女,山东利津人,本科生,主要研究方向为信息安全。