[发明专利]基于可审计的策略基可净化签名的电子医疗数据共享系统在审
申请号: | 202310056897.9 | 申请日: | 2023-01-19 |
公开(公告)号: | CN115954076A | 公开(公告)日: | 2023-04-11 |
发明(设计)人: | 杨旸;魏增涛;詹永华;黄敏明 | 申请(专利权)人: | 福州大学 |
主分类号: | G16H10/60 | 分类号: | G16H10/60;G06F17/11 |
代理公司: | 福州元创专利商标代理有限公司 35100 | 代理人: | 蔡学俊;薛金才 |
地址: | 350108 福建省福州市*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 审计 策略 净化 签名 电子 医疗 数据 共享 系统 | ||
1.基于可审计的策略基可净化签名的电子医疗数据共享系统,其特征在于包括:
可信中心;可信中心是完全可信的实体,负责系统的初始化以及为医疗数据净化者生成属性密钥;在发生争议时收集证明标签,找出签名的实际生成者;
医疗数据提供者;医疗数据提供者提供医疗数据并对医疗数据签名,以保证医疗数据的可认证性,并指定医疗数据净化的访问策略;在发生争议时,生成证明标签以证明自己是或者不是签名的实际生成者;
医疗数据净化者;满足医疗数据提供者指定的访问策略的医疗数据净化者修改医疗数据,并且能在没有医疗数据提供者的帮助下生成有效的签名;在发生争议时,同样生成证明标签;
医疗数据使用者;医疗数据使用者访问云服务器中医疗数据和签名,并能够验证签名的有效性,从而确认数据的有效性,将数据用于诊断和研究;
云服务器;云服务器是半诚实的,提供存储电子医疗数据和签名的服务,但是不可以修改数据;通过将数据存储到云中,减少用户本地存储的负担,用户以非交互的方式与他人共享数据。
2.根据权利要求1所述的基于可审计的策略基可净化签名的电子医疗数据共享系统,其特征在于包括以下算法:系统初始化算Setup,主密钥对生成算法ParGen,医疗数据提供者密钥对算法KGensig,医疗数据净化者密钥对生成算法KGensan,属性密钥生成算法AttKGen,签名算法Sign,净化算法Sanit,签名验证算法Verify,医疗数据提供者证明标签生成算法Proofsig,医疗数据净化者证明标签生成算法Proofsan,判断算法Judge;
Setup(1κ):由可信中心执行,输入安全参数1κ,输出公共参数pp;
ParGen(pp):由可信中心执行,输入公共参数pp,输出主密钥msk和公钥mpk;
KGensig(pp):由医疗数据提供者执行,输入公共参数pp,输出医疗数据净化者的密钥对(sksig,pksig);
KGensan(pp,i):由医疗数据净化者执行,输入公共参数pp和身份i,输出医疗数据净化者的密钥对(sksan,i,pksan,i);
AttKGen(mpk,msk,pksan,i,S):由可信中心执行,输入公钥mpk、主密钥msk、净化者公钥pksan,i和属性集S,为医疗数据净化者生成属性密钥skS;
由医疗数据提供者执行,输入公钥mpk、净化者公钥集合医疗数据提供者私钥sksig、医疗数据m、可修改块描述集合ADM和访问策略A,输出医疗数据签名σ;
由医疗数据净化者执行,输入公钥mpk、医疗数据提供者公钥pksig、净化者公钥集合医疗数据净化者私钥sksan,j、属性密钥skS、医疗数据m、签名σ和修改操作集MOD,输出医疗数据签名σ′和修改后的医疗数据m′;
由医疗数据使用者执行,输入公钥mpk、医疗数据提供者公钥pksig、净化者公钥集合医疗数据m和签名σ,若签名σ有效则输出1,否则输出0;
Proofsig(mpk,sksig,pksig,m,σ):在发生争议时由医疗数据提供者执行,输入公钥mpk、医疗数据提供者私钥sksig、医疗数据提供者公钥pksig、医疗数据m和签名σ,输出证明标签π;
Proofsan(mpk,sksan,j,pksan,j,m,σ):在发生争议时由医疗数据净化者执行,输入公钥mpk、医疗数据净化者私钥sksan,j、医疗数据净化者公钥pksan,j、医疗数据m和签名σ,输出证明标签π;
由可信中心执行,可信中心需要负责收集到足够的证明标签;算法输入医疗数据提供者公钥pksig、净化者公钥集合医疗数据m、签名σ和证明标签π,输出签名的实际生成者身份。
3.根据权利要求2所述的基于可审计的策略基可净化签名的电子医疗数据共享系统,其特征在于:
在系统初始化阶段,可信中心运行Setup算法来生成系统的公共参数;令EQS表示等价类签名方案,FAME表示属性加密方案,设G1,G2,GT是q阶乘法循环群,g1,g2分别为群G1,G2的生成元,e:G1×G2→GT为非对称双线性映射;首先执行BG=(G1,G2,GT,g1,g2,e,q)←G(1κ),选择哈希函数H1:{0,1}*→G1,H2:{0,1}*→G2,H:{0,1}*→Zq和对称密钥加密方案
SE={KGen,Enc,Dec},令pp=(BG,SE,H1,H2,H),输出pp;
主密钥对生成阶段,执行(mskFAME,mpkFAME)←FAME.Setup(1κ),令mpk=(pp,mpkFAME),msk=mskFAME,输出(mpk,msk);
在密钥对和属性密钥生成阶段,随机选择xS∈Zq,计算执行(pkEQS,skEQS)←EQS.KGen(BG,1κ),令sksig=(skEQS,xS),pksig=(pkEQS,yS),输出(sksig,pksig);随机选择xi∈Zq,计算返回(sksan,i,pksan,i)←(xi,yi);如果则返回⊥;执行skS←FAME.KGen(mskFAME,S),返回skS;
在签名阶段,由医疗数据提供者执行,如果ADM(m)≠1,返回⊥;将医疗数据m分成l个块,即m=m1||m2||...||ml;对于0<i≤l,选择计算令
计算μ←EQS.Sign(skEQS,(U1,...,Ul)),η←EQS.Sign(skEQS,(C1,...,Cl));随机选择τ∈{0,1}κ,执行k←SE.KGen(1κ),c←SE.Enc(k,(ADM,{ζi}i∈[l])),令K←encode(k,τ),执行cK←FAME.Enc(mpkFAME,K,A);接着,令计算h=H1(m,σs)和为了证明随机选择v,计算和ρ1=v-ρ2·xS,令返回签名σ←(σs,T1,T2);
在净化阶段,由医疗数据净化者执行,如果Verify(mpk,pksig,σ,m)≠1则返回⊥;计算K←FAME.Dec(skS,cK),令(k,τ)←encode-1(K),计算(ADM,{ζi}i∈[l])←SE.Dec(k,c),如果ADM(MOD)≠1则返回⊥;令m′=MOD(m)=m′1P...Pm′l,随机选择r,对于0<i≤l,令计算ζ′i=s·ζi以及
公式解释:
如果i∈ADM,即i是可修改块描述集合ADM中的元素,则计算
该计算式表示哈希值H2(i||m′i)的ζi′幂次方;
如果是其他情况即i不是可修改块描述集合ADM中的元素,则计算该计算式表示签名值σi的s幂次方;
随机选择τ′∈{0,1}κ,计算c′←SE.Enc(k,(ADM,{ζ′i}i∈[l])),令K′←encode(k,τ′),执行c′K←FAME.Enc(K′,A);计算μ′←EQS.ChgRep(pkEQS,(U1,...,Ul),μ,r),η′←EQS.ChgRep(pkEQS,(C1,...,Cl),η,r·s);接着,令计算h=H1(m′,σ′s),为了证明随机选择v′,ρ′1,ρ′2,计算和ρ′3,j=v′-ρ′4,j·xj,令令σ′=(σ′s,T′1,T′2),返回(m′,σ′);
在签名验证阶段,由医疗数据使用者执行,计算h=H1(m,σs),验证下列式子:
EQS.Vf(pkEQS,(U1,...,Ul),μ)=1
EQS.Vf(pkEQS,(C1,...,Cl),η)=1
如果以上等式成立则返回1,否则返回0;
公式解释:
只有与哈希值
相等并且对于所有的i∈[l],即i是集合[l]中的元素,Ci与g1不相等且EQS.Vf(pkEQS,(U1,...,Ul),μ)=1并且EQS.Vf(pkEQS,(C1,...,Cl),η)=1并且对于所有的i∈[l],即i是集合[l]中的元素,e(Ui,σi)与e(Ci,H(i||mi))相等时算法返回1,否则返回0;
在证明标签生成阶段,Proofsig(mpk,sksig,pksig,m,σ)→π,由医疗数据提供者执行,计算h=H1(m,σs),分以下两种情况:
(1)如果则证明“xS=loggyS=loggT1”;随机选择ω∈Zq,计算π1=H(gω,hω)和π2=ω-π1·xS,令π={π1,π2};
(2)如果则证明“xS=loggyS≠loggT1”;随机选择ω1,ω2,ω3∈Zq,计算π3=ω3+ω1π2和π4=ω2+ω1π2xS,令π={π1,π2,π3,π4};返回证明标签π;
Proofsan(mpk,sksan,j,pksan,j,m,σ)→π,由医疗数据净化者执行,计算h=H1(m,σs),分以下两种情况:
1)如果则证明“xj=loggyj=loggT1”;随机选择ω∈Zq,计算π1=H(g1ω,hω)和π2=ω-π1·xj,令π={π1,π2};
2)如果则证明“xj=loggyj≠loggT1”;随机选择ω1,ω2,ω3∈Zq,计算π3=ω3+ω1π2和π4=ω2+ω1π2xj,令π={π1,π2,π3,π4};
返回证明标签π;
在审计阶段,由可信中心执行,计算h=H1(m,σs),分以下两种情况:
(Ⅰ)当π={π1,π2}说明存在用户生成了自己是签名的实际生成者,如果则返回Signer;如果则输出Santizer-i;
(Ⅱ)当π={π1,π2,π3,π4},则需要收集足够的证明标签;当收集到足够的证明标签,如果π1≠1且说明所有净化者生成了自己不是签名的实际生成者,则返回Signer;如果且说明医疗数据提供者和除sanitizer-i的其余净化者生成了自己不是签名的实际生成者,则输出Santizer-i。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福州大学,未经福州大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310056897.9/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种富马酸伏诺拉生组合物及其制备方法
- 下一篇:一种光伏板支架平台