当前位置: 首页 > 专利查询>福州大学专利>正文

基于受限可净化签名的电子病历安全共享方法及系统技术方案

技术编号:37369197 阅读:9 留言:0更新日期:2023-04-27 07:14
本发明专利技术涉及一种基于受限可净化签名的电子病历安全共享方法及系统,该系统包括:可信机构,用于为签名者和净化者生成签名密钥;签名者,用于生成患者的电子病历并签名,还用于定义可修改的内容、可修改的字段数量上限和可修改的截止时间;净化者,用于在一定时间内修改病历中允许修改的部分,并为修改的数据生成新的有效签名,且生成的签名仍可被成功验证;以及验证者,用于验证净化者提交的病历的有效性,验证者可访问医疗数据但不能进行修改。该方法及系统有利于提高电子病历的安全性。方法及系统有利于提高电子病历的安全性。方法及系统有利于提高电子病历的安全性。

【技术实现步骤摘要】
基于受限可净化签名的电子病历安全共享方法及系统


[0001]本专利技术属于医疗数据共享
,具体涉及一种基于受限可净化签名的电子病历安全共享方法及系统。

技术介绍

[0002]电子病历(EHR)作为提高患者医疗保健质量和满意度的有效方案被广泛应用于医疗管理、科学研究和保险理赔等场景。目前常使用数字签名技术来保护医疗信息的真实性和完整性。对经过签名的数据进行任何轻微的修改都将导致签名失效,从而无法验证数据的有效性。但是,对于某些不需要完整的电子病历的场景,如果允许患者从原始数据中删除某些敏感数据将有助于保护个人隐私。例如,当电子病历被提供给其他医疗机构或科学机构用以研究分析时,与病症无关的个人信息(例如住址、医保卡号等)是需要被隐藏的。当电子病历被提供给保险公司进行医疗索赔时,隐藏与索赔无关的其他敏感病症可以避免对患有某种疾病的患者的歧视。可以采用的一种解决方案是要求医生仅签署需要被共享的部分信息。但是,该方案要求每次共享电子病历的新子集时,医生都要重新签名,这将导致高昂的计算成本。因此,如何为患者授予合适的权限以更改签名病历是一个重要的研究问题。在理想情况下,甚至不用和原始签名者进行交互就可以完成对签名消息的修改且保持签名有效性。
[0003]可净化签名(Sanitizable Signature Schemes,SSS)在2005年由Ateniese等人提出,其允许指定的第三方(Sanitizer,净化者)以受控且非交互式的方式更改签名的数据,且生成的签名仍能被成功验证,相比于传统数字签名,更适用于某些不需要完整电子病历的场景,其授予患者对自身病历一定的修改权限,允许患者从原始数据中删除某些敏感数据以保护个人隐私。Ateniese等人介绍了SSS的安全属性,包括不可伪造性、不可篡改性、隐私性、透明性和可审计性。这些属性对于医疗数据安全共享都是必要的。其中,不可伪造性确保用户不能在没有相应密钥的情况下生成有效的签名。不可篡改性确保净化者无法对未经签名者允许的内容进行修改。隐私性确保没有人能恢复已经被净化的部分消息。透明性确保了由签名者和净化者计算的签名是不可区分的。可审计性保证恶意的签名者和净化者都不能否认由自己生成的消息签名对。目前绝大多数满足可审计性的可净化签名方案仅允许由签名者生成关于消息签名对生成者的证明,这导致当签名者因丢失密钥或其他原因不能生成证明时,无法判断消息是否经过净化。Brzuska等人提出非交互式的公开可审计性,其可以在无需签名者或净化者提供任何信息的情况下推断出生成消息签名对的责任方,解决了原始方案需要签名者私钥才能揭示责任方的问题,但这种可审计性过于强大,与透明性是无法同时满足的。因此,如何定义强度合适的可审计性,在不影响透明性的同时又允许签名者和净化者各自独立地生成证明是一个重要问题。
[0004]可净化签名在为医疗数据共享提供灵活高效的操作支持的同时也会导致净化者修改权限的滥用,从而引发欺诈问题。例如,患者有可能伪造病历来骗取高额保险金,而医保商保领域的欺诈行为会严重危害行业秩序,给社会带来负担。因此,对净化者的权限加以
限制是另一个重要问题。
[0005]目前仅有少数的工作将重心放在限制净化者的权限上,它们提出扩展的可净化签名方案(Extened SSS),通过将修改内容固定为某个特定集合、对不同的消息块进行同样的修改、限制修改消息块的数量和签名消息的版本数来降低净化者修改消息的能力。但其中大部分方案由于签名算法需要交互或没有考虑到不可链接性和不可见性等原因,并不适用于医疗场景。在电子病历的安全共享中,不可链接性和不可见性是十分重要的。Brzuska等人在2010年提出不可链接性的概念,并采用群签名实现了额外满足不可链接性的可净化签名方案。不可链接性确保经过净化的签名无法和原始签名相链接。满足不可链接性的签名可以防止电子病历的接收者可以相互串通,重建完整的电子病历。
[0006]不可见性的概念由Camenisch等人正式提出。不可见性确保消息块是否允许修改的信息对于没有签名者密钥和净化者密钥的外部方而言是保密的,即验证者无法确定哪些消息块是可修改的,从而防止验证者推测出患者的敏感信息。SaS方案利用等价类签名(Equivalence Class Signature,EQS)来构造SSS,对消息和签名进行重新随机化(Re

Randomization),以同时满足以上两种属性,并且对可修改的消息块数量进行限制,使其不超过。净化者造假病历通常涉及大量的病历字段的修改,因此限制可修改的病历字段数量,即消息块数量,可以一定程度上防止净化者伪造病历。
[0007]然而,以上工作都没有给出具备时间限制的可净化签名方案。如果患者在出院后仍保有修改电子病历的权限,则将导致病历不一致,或引起医疗纠纷等问题。因此,为了进一步确保医疗数据的安全性和正确性,防止修改权限的滥用,有必要将时间限制引入可净化签名,为修改操作增加到期时间,仅允许在到期时间之前对病历进行修改。

技术实现思路

[0008]本专利技术的目的在于提供一种基于受限可净化签名的电子病历安全共享方法及系统,该方法及系统有利于提高电子病历的安全性。
[0009]为实现上述目的,本专利技术采用的技术方案是:一种基于受限可净化签名的电子病历安全共享方法,包括:
[0010](1)在系统建立阶段,可信机构TA运行Setup算法,生成系统公共参数mpk和主密钥msk;并将mpk作为输入,分别运行KGen
sig
和KGen
san
算法,为签名者和净化者生成密钥对(pk
S
,sk
S
)和(pk
Z
,sk
Z
),并分别将其发送给签名者和净化者;
[0011](2)在签名阶段,签名者生成净化者的电子病历m,并运行Sign算法,在当前时间t为消息m生成签名σ;同时,签名者指定病历中的哪些字段是允许修改的、可修改的字段数量上限γ以及修改操作的时间限制τ;
[0012](3)在净化阶段,净化者对消息m进行净化;净化者指定要修改的消息块MOD,生成新的消息m

,并运行Sanit算法,在当前时间t

为消息m

生成签名σ


[0013](4)在验证阶段,验证者运行Verify算法验证消息签名对(m,σ)的有效性;Verify算法输出一个比特位b,b=1表示(m,σ)是有效的,b=0则表示无效;
[0014](5)若发生关于消息签名对的生成者的争议,签名者和净化者各自生成证明发送给TA;签名者和净化者各自运行Proof
sig
和Proof
san
算法,生成证明π
sig
、π
san
,将其发送给TA,以证明自己是或不是消息签名对(m,σ)的生成者;对于由签名者发送的证明π
sig
,TA运行
Judge
...

【技术保护点】

【技术特征摘要】
1.一种基于受限可净化签名的电子病历安全共享方法,其特征在于,包括:(1)在系统建立阶段,可信机构TA运行Setup算法,生成系统公共参数mpk和主密钥msk;并将mpk作为输入,分别运行KGen
sig
和KGen
san
算法,为签名者和净化者生成密钥对(pk
S
,sk
S
)和(pk
Z
,sk
Z
),并分别将其发送给签名者和净化者;(2)在签名阶段,签名者生成净化者的电子病历m,并运行Sign算法,在当前时间t为消息m生成签名ρ;同时,签名者指定病历中的哪些字段是允许修改的、可修改的字段数量上限γ以及修改操作的时间限制τ;(3)在净化阶段,净化者对消息m进行净化;净化者指定要修改的消息块MOD,生成新的消息m

,并运行Sanit算法,在当前时间t

为消息m

生成签名σ

;(4)在验证阶段,验证者运行Verify算法验证消息签名对(m,σ)的有效性;Verify算法输出一个比特位b,b=1表示(m,σ)是有效的,b=0则表示无效;(5)若发生关于消息签名对的生成者的争议,签名者和净化者各自生成证明发送给TA;签名者和净化者各自运行Proof
sig
和Proof
san
算法,生成证明π
sig
、π
san
,将其发送给TA,以证明自己是或不是消息签名对(m,σ)的生成者;对于由签名者发送的证明π
sig
,TA运行Judge
sig
算法,判断生成者的身份;若证明π
san
来自净化者,则TA运行Judge
san
算法;Judge
sig
和Judge
san
算法输出判断d∈{Signer,Sanitizer,

},d=Signer表示消息签名对(m,ρ)由签名者生成,d=Sanitizer表示消息签名对(m,ρ)由净化者生成,d=

表示证明π
sig
、π
san
是无效的。2.根据权利要求1所述的基于受限可净化签名的电子病历安全共享方法,其特征在于,步骤(1)中,Setup算法表示为:输入安全参数λ、等价类代表大小l和时间长度TA选取双线性对其中和是素数阶p的乘法循环群;随机选择生成元选择哈希函数H,F:H1::然后,TA生成BBS+密钥对,随机选择计算TA发布系统公共参数保密主密钥msk=ψ
TA
;KGen
sig
算法表示为:(pk
S
,sk
S
)

KGen
sig
(mpk);输入系统公共参数mpk,TA为签名者生成密钥对(pk
S
,sk
S
);所述密钥对(pk
S
,sk
S
)包括等价类签名的密钥对、可验证环签名的密钥对和BBS+签名的密钥对;KGen
san
算法表示为:(pk
Z
,sk
Z
)

KGen
san
(mpk);输入系统公共参数mpk,TA为净化者生成密钥对(pk
Z
,sk
Z
);所述密钥对(pk
Z
,sk
Z
)包括公钥加密的密钥对和可验证环签名的密钥对。3.根据权利要求2所述的基于受限可净化签名的电子病历安全共享方法,其特征在于,密钥对(pk
S
,sk
S
)中,等价类签名的密钥对的生成方法为:随机选择定义sk
EQS
=(x
i
)
i∈[1,l]
,可验证环签名的密钥对的生成方法为:随机选择定义sk
VRS
=a,pk
VRS
=g
a
;BBS+签名的密钥对的生成方法为:随机选择作为私钥,计算公钥则输出的密钥对(pk
S
,sk
S
)中,pk
S
=(pk
EQS
,pk
VRS
,vk
Sig
),sk
S
=(sk
EQS
,sk
VRS

Sig
)。4.根据权利要求2所述的基于受限可净化签名的电子病历安全共享方法,其特征在于,
密钥对(pk
Z
,sk
Z
)中,公钥加密的密钥对的生成方法为:随机选择定义ssk
PKE
=β,可验证环签名的密钥对的生成方法为:随机选择定义则输出的密钥对(pk
Z
,sk
Z
)中,pk
Z
=(spk
PKE
,spk
VRS
),sk
Z
=(ssk
PKE
,ssk
VRS
)。5.根据权利要求1所述的基于受限可净化签名的电子病历安全共享方法,其特征在于,步骤(2)中,签名者在当前时间t为消息m生成签名ρ;签名者为消息内容和限制生成承诺C和关于承诺的证明π1和π2,以及当前时间不超过到期时间,即t<τ的证明π3,以上证明采用非交互式的零知识证明;然后,签名者对承诺C进行等价类签名,并加密净化者所需要的一些信息,最后对以上内容进行环签名;Sign算法表示为:(m,ρ)

Sign(mpk,sk
S
,pk
Z
,m,ADM,γ,τ,t);其具体实现方法为:(1)签名者将消息m分为n个块m1||

||m
n
;生成关于消息块m
i
和限制γ的承诺;随机选择计算C1=H(γ)
δ
;对于每一个消息块m
i
,计算C
2,i
=H(i||m
i
)
δ
;如果i∈ADM,计算C
3,i
=F(i)
δ
,否则C
3,i
=F(i||m
i
)
δ
;(2)证明净化的消息块是允许修改的消息块,即对于每个消息块m
i
,C
3,i
=F(i)
δ
或C
3,i
=F(i||m
i
)
δ
;生成证明:随机选择若C
3,i
=F(i)
δ
,随机选择计算否则,随机选择记(3)证明净化的消息块数量不超过γ,即证明使得C1=H(i)
δ
,且n个消息块中存在大小为n

i的消息块集合J,对于满足C
2,j
=H(j||m
j
)
δ
;生成证明:其中,[n]={1,2,...,n};对于i=γ,随机选择计算选择前n

i个满足C
2,j
=H(j||m
j
)
δ
的消息块,随机选择计算对于其余的i个消息块,随机选择计算对于i≠γ,随机选择计算随机选择i个消息块,假设是前i个,对于j∈[1,i],随机选择计算用i+1个点和构造i次的拉格朗日多项式P
i
(x);对于j∈[i+1,n],计算随机选择计算得到计算
对于i=γ,用i+1个点和构造i次的拉格朗日多项式P
i
(x);对于j∈J,计算得到得到(4)设置签名的到期时间为τ,并证明当前时间t不超过到期时间τ;签名者计算τ的BBS+签名,首先计算{τ
j
}
j∈[1,l]
←1‑
ENC(τ),然后计算{(A
j

j

j
)}
j∈[1,l]
,其中令到期时间信息ei=({(A
j

j

j
)}
j∈[1,l]
,τ);签名者向TA请求当前时间t的信息;TA计算并计算t的BBS+签名其中TA令当前时间信息将其发送给签名者;若t<τ,则存在使得τ
k
=t
k
,则有签名者计算关于A
k
,B
k,t
的承诺,随机选择计算签名者令β1=ρ1ξ
k
,β2=ρ2ξ

k,t
,生成证明随机选择计算计算计算计算计算得到(5)对承诺C=(C1,{C
2,i
}
i∈[1,n]
,{C
3,i
}
i∈[1,n]
)进行等价类签名;将C映射为等价类代表随机选择计算得到等价类签名(6)加密签名到期时间信息ei、承诺C、指数δ和等价类签名s
EQS
;记M
PKE
=(ei,C,δ,ρ
EQS
...

【专利技术属性】
技术研发人员:杨文琴宋志刚杨旸伊碧霞
申请(专利权)人:福州大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1