在线问诊环境下细粒度双边访问控制方案

2022-09-06 11:08李艺昕张应辉胡凌云
计算机工程与应用 2022年17期
关键词:哈希攻击者解密

李艺昕,张应辉,胡凌云,郑 东,3

1.西安邮电大学 网络空间安全学院,西安 710121

2.西安邮电大学 无线网络安全技术国家工程实验室,西安 710121

3.卫士通摩石实验室,北京 100070

云存储[1]凭借其便捷、存储空间大、低成本、自动容错等一系列的优点,被广泛应用在个人健康记录(personal health records,PHR)系统中,越来越多的患者选择将自己的电子病历存储至云服务器上。然而,云存储存在着许多问题。首先,云服务器并非完全可信,云服务器可能会在用户不知情的情况下篡改、删除用户存储在云端的隐私数据,导致数据不完整。其次由于云存储是集中式存储,即由一台或多台计算机组成中心节点负责集中存储数据信息,因此中心节点一旦遭受攻击,将会造成数据信息的泄漏,存在较大的安全隐患。

近年来,星际文件系统(interplanetary file system,IPFS)得到了广泛的研究与应用。IPFS[2]是一个全球的、点对点分布式文件系统。在IPFS系统中,内容会分块存放,并分散存储在IPFS 系统中的节点上。系统会根据文件的内容分块生成不同的哈希值,对所有的哈希值再次进行哈希,从而得到最终的哈希值。当文件的内容发生改变时,生成的哈希值也会随之改变,这样可以确认要访问的文件是否被经过篡改。由于IPFS采用的是分布式存储,文件被存储在不同的网络节点之中,有效避免了分布式拒绝服务攻击。文件可以同时从多个网络节点之间同步进行下载,大大提高了通信的效率。IPFS提高了存储空间的利用率,减少网络带宽,实现了弹性扩展,降低了运营成本从而避免了资源的浪费[3]。

随着互联网技术在各行各业的不断渗透,医疗行业也逐渐地寻求改变,在线医疗健康技术使得病人可以更快捷方便地获取医疗卫生信息资源,也为医护人员提供了知识共享的场所。越来越多的病人选择在线咨询自己的病情,在线问诊这一技术在一定程度上促进了医学的进步。而由于互联网具有开放性、共享性、交换性、受众性,病人的病历信息可能发生泄露的风险,严重威胁到病人的隐私,并且医护人员针对数以亿计的互联网用户,无法做到针对性地解决某些或者某个病人的病情。上述问题在当前在线问诊技术迅猛发展的如今成为了一个具有挑战性的问题。

在现有的解决方案中,病人上传自己的病历后,可以通过控制访问策略有条件地选择将自己的病历信息授权给相关的医护人员读取下载,而医护人员往往需要从众多被授权的病历中筛选出自己需要进行问诊病人的病历,这样使得医护人员的工作效率极大降低,严重影响了病人的治疗。此外,在病历上传或者下载读取的过程中,可能会发生数据篡改、删除、泄漏等威胁到患者隐私的问题。因此,如何在保证患者隐私安全的前提下,使医护人员针对性地选择病人的病历从而减轻工作负担是当前研究中一个具有挑战性的问题。

1 相关研究

数据加密技术近年来得到较多的关注,包括同态加密、可搜索加密、属性基加密、广播加密等[4],其中属性基加 密[5(]attribute-based encryption,ABE)应 用 最 为 广泛。ABE实现了一对多加、解密,在属性加密中,身份被看作是一组属性,当用户所具有的属性集满足加密者所制定的访问控制策略时,用户则可对加密数据进行解密。ABE的概念首先由Sahai和Waters在文献[6]提出,用户的身份信息被看作一组属性。随后,Waters 等人[7]提出了用户具有多个属性这一特性,根据此特性,推广出了基于密文策略的属性加密(ciphertext policy attribute based encryption,CP-ABE)方案,即访问控制策略与密文相互关联,而用户的属性集被嵌入加密密钥之中。Goyal 等人[8]又提出了基于密钥策略的属性加密(key policy attribute based encryption,KP-ABE),在该方案中,密文与用户的属性集相互关联,而访问控制策略被嵌入加密密钥之中。Cheung 等人[9]利用“与门”的访问控制策略,第一次在DBDH假设下证明了CP-ABE的安全性。Bhartiva 等人[10]提出了属性基模糊签名加密,将属性基加密技术用于移动医疗传感网中,对数据进行访问控制,但由于采用了签名技术,导致运行效率较低。Attrapadung 和Imai[11]提出了双重策略ABE,在该方案中,发送方通过选择访问控制策略和一组属性对消息进行加密,接收方可以使用一个描述接收方策略和属性的解密密钥来解密密文,但这样仅仅保护了明文的安全性。Attrapadung 和Yamada 提出了文献[12],该方案中,若解密不成功,则有可能会泄漏发送方的隐私。随后,Ateniese等人[13]提出了匹配加密,将属性基加密与签名算法相互结合,降低了计算效率。Xu 等人[14]基于KP-ABE 与文献[13]提出了云雾计算下的双边访问控制,接收方也可以通过制定访问控制策略来解密符合自己要求的密文,但在加密过程中,由于密文与属性相关联导致计算效率较低。苗田田等人[15]所提出的方案仅仅保护了发送方的隐私安全,无法提高接收方的工作效率。

区块链技术在多个领域得到了广泛的研究与应用。区块链是一个分布式账本,它是以区块为单位构成的链式结构,每一个区块由区块头和区块体两部分所构成。区块链具有去中心化、不可篡改、可追溯等特点[16-17]。区块链技术可以在不依赖第三方可信机构的情况下建立点对点的可信价值传递,可以降低信任成本,提高交互效率。但由于区块链公开透明的特点,存储在区块链中的数据会遭受隐私泄漏的风险,具有一定的威胁性。同时,存储在区块链中的数据缺少灵活的访问控制,例如:在基于区块链的医疗系统中,病人可以选择将自己的病历信息发布在区块链中,但由于病人的病历信息属于隐私信息,只有经过授权的医护人员才可以读取访问,因此需要对此类隐私信息进行安全保护并给予灵活的访问控制[18],保证被授权的医护人员可以安全掌握病人的全部病历信息。Zheng 等人[19]提出了一种基于IPFS的比特币网络存储机制。数据信息被存储在IPFS系统中,并且由IPFS 系统生成的哈希值被存储在区块链的块中以减少存储空间。Xu等人[20]提出了一种基于以太坊和IPFS 的社交网络系统,该系统允许用户上传他们的文件,如图片或音频到IPFS 系统进行存储。Pham 等人[21]提出了一个结合IPFS 系统,属性基加密以及区块链的分布式存储系统。邵奇峰等人[16]将区块链与ABE 进行结合,解决了区块链中保护数据隐私的问题。Wang等人[22]提出IPFS存储系统与ABE结合,并且引入可搜索技术使接收方工作量增加。

在目前现有方案中,主要存在以下问题:

(1)只有发送方可以通过制定访问控制策略对接收方进行选择,接收方需要从大量的密文中逐一识别检索出自己所需要的数据,严重地降低了接收方的工作效率。

(2)大多数发送方将加密后的数据上传至云服务器,云服务器是一个独立的实体,由于其自身价值,经常会遭受黑客攻击,存在数据泄露的风险,严重威胁到了用户的隐私安全。

(3)上传至存储系统的数据,可能会发生被篡改或者删除等一系列恶性操作,从而无法保证数据的完整性,严重影响到了原始数据的正确性。

针对上述问题,本文提出了一个适用于在线问诊环境下的支持细粒度双边访问控制的CP-ABE 方案。本方案利用属性基加密技术,不仅发送方可以制定访问控制策略来筛选满足条件的接收方,并且也允许接收方制定访问控制策略来对密文进行筛选,接收方仅仅只需要解密满足自己访问控制策略的密文,不需要逐一对大量密文进行解密来选取需要的数据,这样极大地减少工作量。并利用IPFS存储系统根据数据内容分块生成哈希值的特点,会将加密后的电子病历生成唯一的哈希字符串,将其视作加密病历的存储“地址”,并将这串“地址”存放在区块链中,利用区块链的不可篡改性保证数据不会被进行篡改、删除,确保了数据的完整性。

本文贡献如下:

(1)细粒度的双边访问控制:病人加密自己的病历并制定相应的访问控制策略,只有属性满足该访问控制策略的医护人员才有权查看病历信息。而医护人员也制定相应的访问控制策略,只有病人的属性满足该访问控制策略,其病历才可以被经过授权的医护人员读取下载。提高了医护人员的工作效率,减少了病患就诊的时间。

(2)隐私安全的保护:病人将加密后的病例上传至IPFS系统,将得到唯一的一串哈希字符串,即加密病历的存储“地址”。本文利用IPFS 存储加密后的病历,将得到的哈希字符串使用ABE 加密后存储至区块链,确保了数据不会被篡改或删除。只有医护人员的属性满足病人所设置的访问控制策略,才可以解密存储在区块链中的IPFS 地址,从而在IPFS 系统中下载病历进行解密,读取数据。保证了病患的隐私信息不会被泄露以及篡改。

(3)数据的完整性保护:加密后的数据上传至IPFS系统,由于IPFS 的性质,一旦数据发生更改,生成的哈希值也会随着发生变化,可以确保数据的原始性。将生成的哈希值存储至区块链之中,由于区块链具有不可篡改性,可以保证数据的完整性。

2 预备知识

2.1 双线性映射

假设G、G0是两个阶为素数p的循环群,g是群G的生成元,定义一个可有效计算的双线性映射e:G×G→G0,该映射必须满足如下性质:

(1)双线性:对于任意的两个数a,b∈Zp,存在e(ga,gb)=e(g,g)ab。

(2)非退化性:对于群G的生成元g,有e(g,g)≠1。

(3)可计算性:对于所有的g1,g2∈G,均存在多项式时间算法计算e(g1,g2)。

2.2 访问结构

假设{S1,S2,…,Sn} 是由n个属性组成的集合,访问结构ℕ 是指由{S1,S2,…,Sn} 的非空子集组成的集合,即为ℕ ⊆2{S1,S2,…,Sn}{∅ } 。若集合D∈ℕ ,则称D为授权集合,若集合D∉ℕ ,则称D为非授权集合。访问结构ℕ 是单调的,对于任意集合B和C,若B∈ℕ ,B⊆C,则有C∈ℕ 。

2.3 线性秘密共享方案

线性秘密共享方案(linear secret sharing scheme)的定义是参与实体集合P上的一个密钥共享方案若满足以下两个条件,则称Π为定义在ZP上的线性秘密共享方案:

(1)一个参与实体所具有的秘密份额都可以构成ZP上的向量。

(2)每个LSSS 的Π都对应一个l行n列的生成矩阵M,映射函数ρ:{1,2,…,l} →P将M中的每一行(i=1,2,…,l)映射到参与实体ρ(i),随机选取v={s,l2,…,ln} ∈Zp,s∈ZP是需要共享的秘密,那么Mv是根据Π得到的关于s的l个共享组成的向量,λi=(Mv)i表示秘密值s的第i个秘密份额,并分配给参与实体ρ(i)。

线性秘密共享方案具有线性重构的性质。假设Π是访问策略A的一个线性秘密共享,设访问授权集合S∈A,均存在一个常数{wi∈Zp}i∈I,使得成立,其中I={i:ρ(i)∈S} 。

2.4 困难问题

判定性双线性Diffie-Hellman(DBDH)问题。假设a,b,c,z∈Zp,g是阶为p的乘法循环群G的生成元。DBDH 问题定义为:区分两个四元组(A=ga,B=gb,C=gc,D=e(g,g)abc)与(A=ga,B=gb,C=gc,Z=e(g,g)z)。如果对于多项式时间内解决DBDH 的概率是可以忽略的,那么就DBDH问题是困难的。

3 模型定义

本章主要对系统模型、安全模型进行详细的介绍。

3.1 常用符号

表1 中显示了在线问诊环境下细粒度双边访问控制方案中的常用符号。

表1 系统常用符号Table 1 Common symbols in system

3.2 系统模型

在系统模型中,主要介绍了在线问诊环境下细粒度双边访问控制方案的各个参与实体,各个参与实体的功能与特点以及各个参与实体之间的交互流程。各参与实体的特点和功能说明具体如下:

本方案系统中具体包括5 个实体,密钥生成中心(key generation center,KGC)、病人、医护人员、IPFS、区块链。系统模型如图1所示。

图1 系统模型图Fig.1 System model diagram

各实体的功能详细说明如下:

(1)KGC:密钥生成中心主要负责为系统生成公开参数以及主密钥,并将密钥秘密的分发给病人与医护人员。

(2)病人(patient):病人将自己加密后的电子病历上传至IPFS系统,获得访问路径L,并对L再次进行加密;病人制定医护人员需满足的访问控制策略,并将自己的属性集合、制定的访问控制策略、发布时间以及加密后的路径L上传至区块链。

(3)医护人员(medical staff):医护人员将自己的属性集合、访问时间,以及病人需要满足的访问控制策略上传至区块链;在满足医护人员的属性集合与病人所制定的访问控制策略匹配的条件下,病人的属性集合同时也需满足医护人员所制定的访问控制策略时,医护人员则可解密获得路径L,并根据L从IPFS 中下载对应的密文,从而解密获得密文。

(4)IPFS:病人上传加密后的病历至IPFS 系统后,通过文件内容获得一串独立的哈希字符串来标识文件,这串哈希字符串可被看作是病历的存储“路径”。

(5)区块链:病人将病历加密后存储至IPFS 系统,将获得的存储“路径”加密后保存在区块链之中。

3.3 安全模型

在安全模型中,将描述随机谕言机模型中的选择明文攻击下的不可区分性,来抵御发送者猜测攻击,合谋攻击。

通过一个攻击游戏来定义支持细粒度双边访问控制的CP-ABE方案的安全模型。

(1)初始化:攻击者A 选择想要挑战的访问结构,并提交给挑战者B。

(2)系统建立:挑战者B 执行本文方案中的Setup算法,将生成的公钥发送给攻击者A 。

(3)询问阶段1:攻击者A 可以询问某个属性集合所对应的密钥,要求该属性集合不满足访问控制策略。挑战者B 运行密钥生成算法后,将生成的密钥发送给攻击者A 。

(4)挑战阶段:攻击者A 向挑战者B 提交相等长度的消息以及挑战属性集合,要求该挑战属性集合在询问阶段1 中不曾被询问过对应的密钥。挑战者B 随机选取b∈{0,1} ,并运行加密算法对其进行加密,将生成的密文Mb发送给攻击者A 。

(5)询问阶段2:重复执行询问阶段1。

(6)猜测阶段:攻击者A 输出一个对于b的猜测b′,若两者相等,则攻击者A 赢得游戏。其中攻击A 的优势定义为

4 方案实现

本章主要介绍加密支持细粒度的双边访问控制的密文策略属性基加密方案的具体实现。

4.1 工作流程

本节主要详细说明病人将加密病历上传至存储系统以及医护人员从存储系统下载加密病历的具体流程。

4.1.1 上传流程

首先,病人将加密后的病历上传至IPFS存储系统,会得到一串来自IPFS 存储系统返回的哈希字符串,可将其视为加密病历的存储路径“L”。之后,病人将得到的路径“L”、自己的属性集合Ss以及所制定的访问控制策略Rr上传至区块链。具体流程如图2所示。

图2 病人上传电子病历具体流程Fig.2 Specific flow of patient uploading electronic medical record

4.1.2 下载流程

首先,医护人员上传自己的属性集合Sr、访问时间以及所制定的访问控制策略Rs至区块链中。若该属性集合满足Rr,则可获得加密病历的存储路径“L”。之后,验证病人的属性集合Ss是否满足Rs,若满足,医护人员即可对存储路径“L”进行解密。最终,获得病人的病历信息。具体流程如图3所示。

图3 医护人员下载电子病历具体流程Fig.3 Specific process of medical staff downloading electronic medical records

4.2 具体算法

本节将构造一个支持细粒度双边访问控制的CP-ABE 方案。基于Waters 所提出ABE 方案[7],设计出一种新的方案,在保证发送方可以制定接收方需满足的访问控制策略同时,使接收方也可以通过制定的访问控制策略对发送方进行验证与筛选。方案具体算法细节如下:

(1)系统初始化算法Setup(λ)

KGC运行该算法,输入安全参数λ。生成两个阶为素数p的群G、G0,构成双线性映射e:G×G→G0,g是群G的生成元。随机选择α,β∈Zp,以及一个稳定抗碰撞的哈希函数:H:{0,1}*→G。该算法输出一个公钥以及一个主密钥:

(2)密钥生成算法

①加密密钥生成算法EKGen(MSK,Ss)。分析发送者属性集合Ss,加密密钥生成算法随机选择t∈Zp,∀x∈Ss,可计算得:

该算法返回加密密钥ek={ek1,ek2}。

②解密密钥生成算法DKGen(MSK,Sr)。分析接收者属性集合Sr,解密密钥生成算法随机选择t*∈Zp,∀y∈Sr,可计算得:

该算法返回解密密钥dk=(dk1,dk2,dk3,y)。

(3)加密算法Enc(ek,M,Ss,Rr)

分析接收者需要满足的访问控制策略Rr,Rr=(M1,P1),其中M1是lM1×nM1矩阵,P1:[lM1] →Sr是一个映射函数。该加密算法随机选取v=(s,y2,…,ynM1)⊥∈Zp,其中s是待分享的秘密,计算λ=(λ1,λ2,…,λlM1)=M1v。对于所有i∈[lM1] ,随机选择ri∈ZP,计算:

(4)解密算法Dec(dk,CT,Rs)

分析发送者需要满足的访问控制策略Rs,其中M2是lM2×nM2矩阵,P2:[lM2] →Ss是一个映射函数。该解密算法随机选择,计 算k=k1,k2,…,klM2。

令I满足I={i|i∈[lM2],P2(i)=Ss} ,可找到{ωi}i∈I满足计算下式:

若上述等式成立,则继续解密,否则结束解密。

令F满足F={f|f∈[lM1],P2(i)=Ss} 。可找到{θ}f∈F满足,计算下式:

其中,i是P1,i在y中的索引,即P1,i=y。该解密算法可通过上式分离得到消息M。

4.3 正确性分析

若4.2节中的解密算法Dec中的式(1)如下计算,即认为发送者属性集合Ss满足接收者所制定的访问控制策略Rs,接收者则可继续对消息进行解密:

若4.2节中的解密算法Dec中的式(2)如下计算,即认为接收者属性集合Sr满足发送者所指定的访问控制策略Rr,接受者则可解密得到原始消息:

5 安全性分析

定理1假设DBDH 问题是困难的,本方案在随机谕言机模型下够满足选择明文攻击下的不可区分性。

证明假设攻击者A 可以在一个概率多项式时间内以不可忽略的优势ε在安全模型IND-CPA 下打破本文所提出的方案,那么就能构建一个挑战者B 能够以不可忽略的优势解决DBDH问题。因此,提供了一个挑战者与攻击者之间的真实方案的正确模拟。

假设挑战者随机翻转一枚二进制的硬币μ∈{0,1} 。当μ=0 时,四元组为{A=gα,B=gb,C=gc,T=e(g,g)abc} ,当μ=1,四元组为{A=gα,B=gb,C=gc,T=e(g,g)t} 。挑战者B 输出μ′作为μ的猜测。

(1)Setup。挑战者B 随机选择β∈Zp以及一个抗碰撞哈希函数:H:{0,1}*→G,生成公钥给攻击者A:

其中,gb是生成元,

(2)查询阶段1。攻击者A 向挑战者B 通过谕言机发起私钥询问。

①令L={att,r,r*} 为哈希列表,攻击者A 向随机谕言机询问att,如果att之前被询问过,则返回Brigri*,如果att∈Ss,挑战者B 选择r=0,r*∈Zq,如果att∉Ss,挑战者B 选择r,r*∈Zq。之后,挑战者B 更新哈希列表L={att,r,r*} 。

②攻击者A 通过加密密钥谕言机询问加密密钥,攻击者A 提供发送者属性集合Ss,挑战者B 随机选取t∈Zp,∀x∈Ss,计算:

挑战者B 将加密密钥发送给挑战者A。

③攻击者A 通过解密密钥谕言机询问解密密钥,攻击者A 提供发送者属性集合Sr,挑战者B 随机选取t*∈Zp,∀x∈Sr,计算:

挑战者B 将解密密钥发送给挑战者A。

(3)挑战。攻击者A 提交m0,m1,S0,S1,挑战者B随机选择b∈{0,1} ,假设Sb=Ss,挑战者B 随机选择t∈Zp,∀x∈Sb,计算:

挑战者B 通过加密算法对消息进行加密,c0=MbT,c1=gc。并将密文发送给挑战者A。

如果μ=0,则T=e(g,g)abc,如果令s=c,则e(A,B)=(e(g,g)ab)s=e(g,g)abs,c1=gs=gc。因此,密文是对Mb的有效加密。

如果μ=1,则T=e(g,g)t,则c0=Mb e(g,g)t,由于t是随机产生的,攻击者A 不能得出任何有关于消息的信息。

(4)查找阶段2。重复查找阶段1的过程。

(5)猜测。攻击者A 输出对于b的猜测b′,如果b′=b,挑战者B 输出μ′=0 表示它是一个DBDH 的四元组,否则,它是一个随机四元组。

当μ=1 时,攻击者A 没有得到任何有用信息,因此可以得到,因为当b′=b时,挑战者B 猜测μ′=1,则

当μ=0 时,攻击者A 可以得到关于Mb的有效信息,在此情况下,攻击者A拥有优势ε。因此可以得到。因为当b′=b,挑战者B 猜测μ′=0,则因此挑战者B 赢得DBDH游戏的整体优势是:

若攻击者在一个概率多项式时间内赢得游戏的优势为ε,则其可以以不可忽略的优势解决DBDH困难问题。

在安全模型IND-CPA中,攻击者存在不可忽略的优势ε才能打破本文的方案,因此,本文的方案是IND-CPA安全的。证毕。

6 功能对比与性能分析

6.1 功能对比分析

将本文方案与文献[7]、文献[14]、文献[15]、文献[23]进行对比,对比结果如表2所示。

表2 不同方案的功能对比Table 2 Function comparison of different schemes

从表2的对比可知,本文方案在保证选择明文攻击下的不可区分性的前提下,不仅使发送方可以通过制定访问控制策略对接收方进行选择,而且使接收方同样可以制定访问控制策略对发送方进行验证,不需要从大量密文中逐一进行检索,提高了接收方的工作效率。并且引入了区块链技术以及IPFS 存储系统,将加密后的数据上传至IPFS 存储系统,避免了分布式拒绝攻击。再将由IPFS 生成的唯一哈希索引上传至区块链,实现了数据的不可篡改性。

6.2 安全性对比分析

将本文方案与文献[15]、文献[23]进行对比分析,对比结果如表3所示。

表3 不同方案的安全性对比Table 3 Safety comparison of different schemes

从表3可知,由于本文方案将加密后的数据上传至IPFS分布式存储系统,即可有效地抵抗分布式拒绝服务攻击。此外,本文方案允许发送方选择随机数来加密密钥,因此除发送方之外的任何一方都无法知道这个随机数的值,可有效地抵抗发送者猜测攻击。最后,本文方案中解密密钥都具有随机性。多个解密密钥的组合不能帮助攻击者获得有效的解密密钥。因此,可有效地抵抗合谋攻击。

6.3 对比仿真结果分析

在本节中,分析密钥生成、加密过程以及解密过程的计算开销,将本文提出的方案与文献[13]、文献[14]中提出的方案进行比较。本文进行仿真的实现设备为Intel®Core™i5-5250U CPU@1.60 GHz,4 GB 内存。操作系统为macOS Catalina 10.15.5,编程语言为Java,使用的密码库为jPBC 2.0.0。

TE表示指数计算时间,TP表示双线性对计算时间,TH→G表示哈希到群G的计算时间,TH→Zq*表示哈希到Zq*的计算时间。由于在本设备中,乘法运算、逆运算与除法运算的计算时间与其他运算的计算时间相比微不足道,所以可忽略不计。

本文方案与文献[13]、文献[14]方案的效率对比如表4所示。

表4 不同方案的效率对比Table 4 Comparison of efficiency of different schemes

本节实验仿真中分别测试了在10~50 个属性集个数下文献[13]、文献[14]与本文的Setup、EKGen、DKGen、Enc、Dec运算环节的运算时间开销,具体对比如图4所示。

根据图4(a)的对比可知,在系统初始化的计算中,本文方案仅采用了一个哈希运算,所以随着属性个数的增加,本文方案的计算时间具有一定的优势。

根据图4(b)的对比可知,在加密密钥生成的计算中,本文方案与文献[14]相比相差不大。

根据图4(c)的对比可知,在解密密钥生成计算中,本文方案与文献[14]相比仅采用两个指数运算,从而随着属性个数的增加,具有显著的优势。

根据图4(d)的对比可知,在加密的计算中,文献[13]、文献[14]采用了较多的哈希以及指数运算,而本文方案仅采用了1个哈希运算,降低了计算时间。并且本文方案与文献[14]相比,本文密文与访问控制策略相关联,而文献[14]密文与用户属性集合相互关联,随着属性集合的增加,文献[14]需要花费更多的计算时间,所以,本文的计算时间与文献[14]相比具有一定的优势。

根据图4(e)的对比可知,在解密的计算中,与文献[13]、文献[14]进行对比,本文方案并未采用哈希计算,极大地降低了计算时间,具有显著的优势。

图4 计算时间Fig.4 Calculation time

综合上述对比进行分析可得,本文所提出的方案具有较高效率。

7 结束语

本文针对当前在线问诊环境中在保护患者隐私的前提下,提高医护人员的工作效率的需求,提出了基于在线问诊环境下的细粒度双边访问控制,该方案通过ABE 对患者的病历进行加密后上传至IPFS 系统,并将生成的唯一哈希字符串加密上传至区块链。在本文方案中,不仅患者可以制定访问控制策略来对医护人员进行查看病历的授权,医护人员也可制定访问控制策略进一步地通过属性匹配来筛选需要解密的病历,既有效地保护了患者的个人隐私问题,也减轻了医护人员的工作负担。最后,在标准模型下基于判定性双线性Diffie-Hellman问题证明了本文方案是IND-CPA安全的,并利用jPBC密码库进行性能分析表明本文方案与其他方案相比具有较低的计算开销。

猜你喜欢
哈希攻击者解密
基于特征选择的局部敏感哈希位选择算法
炫词解密
哈希值处理 功能全面更易用
解密“一包三改”
文件哈希值处理一条龙
炫词解密
炫词解密
正面迎接批判
正面迎接批判
有限次重复博弈下的网络攻击行为研究