CN114389811A - 一种基于医疗联盟链的跨域认证方法 - Google Patents
一种基于医疗联盟链的跨域认证方法 Download PDFInfo
- Publication number
- CN114389811A CN114389811A CN202210188663.5A CN202210188663A CN114389811A CN 114389811 A CN114389811 A CN 114389811A CN 202210188663 A CN202210188663 A CN 202210188663A CN 114389811 A CN114389811 A CN 114389811A
- Authority
- CN
- China
- Prior art keywords
- domain
- patient
- local
- authentication
- key
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0407—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
- H04L63/0421—Anonymous communication, i.e. the party's identifiers are hidden from the other party or parties, e.g. using an anonymizer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
- H04L9/3073—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3297—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
Abstract
本发明提出了一种基于医疗联盟链的跨域认证方法,利用区块链技术,设计了医疗联盟链的系统框架,该框架无需依赖第三方,通过链上数据存储和信息交互实现跨域认证与密钥协商,有助于异域间的资源共享,对跨医疗机构服务具有巨大的益处。本发明有效结合实用拜占庭算法和股份授权证明算法以提高系统共识效率,提升吞吐量。
Description
技术领域
本发明属于跨域身份认证技术领域,涉及一种基于医疗联盟链的跨域认证方法。
背景技术
物联网技术带给世界的变化是巨大的,而区块链技术的出现更是在物联网浪潮的发展中具有重要地位。达沃斯世界经济论坛评价区块链是最值得称赞的发展之一,它被人认为是继蒸汽机、电气、互联网之后的第四大改变世界格局的技术,为众多行业带来新的机遇与发展,其对医疗行业领域的影响尤甚。医疗健康服务的普及与发展不仅关系到民生国计,更是与每一位公民的健康状况息息相关,也是有效应对老龄化问题的重要举措。国家重视“互联网+医疗健康”体系的建设,鼓励通过“互联网+医疗健康”的平台使就医诊疗服务更便民,充分发挥网络技术对医疗健康发展的作用。区块链技术根据其自身去中心化、去信任化、安全性高、隐私性强、透明度高等特性,为完善智慧医疗领域中的医疗数据信息安全领域的建设提出可行性建议,重塑医疗机构、患者等众多医疗相关机构关系,搭建涵盖多医疗主体、可实现医疗数据互联互通且安全可靠的区块链医疗联盟监管服务平台。
在医疗健康数据系统中,医疗健康数据精确记录着每个人的用药情况、过敏药物、化验结果以及各项生命体征,这些都是十分宝贵的数据资产。目前,大多数医疗机构都建立了自己独立的认证系统,只有本域内合法的用户才可以登录系统获取医疗数据。由于医疗水平的差异和疾病的不同,病患往往会选择不同的医疗机构进行诊治,各医疗机构之间在访问和共享病患医疗数据时存在严格的限制,使得病人不得不接受重复诊治,造成资源和时间的浪费。如何实现不同医疗机构的认证系统整合,完成跨域认证,保证数据在安全存储的情况下被各医疗机构高效共享成为构建智慧医疗系统的难点问题。
区块链技术自2008年出现以来,一直在金融领域受到持续关注并快速发展。医疗健康领域是仅次于金融领域的区块链第二大应用场景,其中医疗健康数据的安全存储和共享成为了研究的重点。有许多公司和初创企业试图使用区块链来改变医疗行业的运作方式。然而,现阶段的电子医疗数据面临诸多问题,主要概括为以下三点:医疗数据集中存储在患者就诊医疗机构的数据库中,而不能在医疗机构间及时共享,导致信息孤岛问题。医疗数据涉及患者的个人隐私,但就目前的存储方式而言安全性较低,容易被非法用户窃取和篡改。不同身份的人员在访问和共享医疗健康数据时都受到比较严格的限制,且验证身份和数据的真实性需要大量的资源和时间。
发明内容
为解决以上提及问题,本发明提出了一种基于医疗联盟链的跨域认证方法,基于联盟链设计合理高效的跨域认证协议,采用哈希函数、数字签名等密码学技术实现对处于不同域的用户进行安全可靠的身份验证,并优化共识机制,保证在没有中心节点的情况下联盟中医疗机构可以快速达成一致,共享医疗健康数据。本发明所述的一种基于医疗联盟链的跨域认证方法,其步骤为:
S1、系统初始化,生成系统参数;本域内参与实体有密钥生成中心KGC、病患用户、医疗机构;
S2、用户注册:本域KGC根据病患用户提供的身份标识生成部分密钥,并通过安全信道发送给病患用户,病患用户自身选取秘密值,与部分密钥组成完整密钥;
S3、域内认证与密钥协商:本域的病患用户向本域医疗机构发起认证请求,本域医疗机构收到请求后,首先验证消息的有效性和病患用户的合法性,验证通过后,返回签名给病患用户,病患用户收到后进行签名验证操作;若双方均验证通过,则说明通信双方是合法的,双方协商出共同的会话密钥以保证后续的加密通信;
S4混合共识上链:当病患用户与医疗机构完成相互认证后,医疗机构服务器将为该病患用户生成区块凭证,并写入交易,该交易将由区块链网络中的所有共识节点进行验证,最后,由选举出的记账节点将一定时间内合法交易打包成区块,经过共识后上链存储;
S5跨域认证:病患用户要获取异域医疗机构服务资源,首先发起认证请求,异域医疗机构首先检索本地数据库,若该病人未在本域认证过,则调用链码查询该用户的认证凭证,接着与病患交互达成相互认证并协商会话密钥,异域医疗机构将跨域认证结果相关参数发布上链;若该病患已在本域认证过,则无需再次认证,根据已查询到的认证凭据生成新的会话密钥。
进一步的,S1的具体步骤为:
S1-1、本域参与实体生成身份标识字符串ID∈{0,1}*,不失一般性,本域病患用户、本域医疗机构、异域医疗机构的身份标识符分别为:
S1-2、本域密钥生成中心KGC选取安全参数k,椭圆曲线E上的域Fp,循环加群G1及循环乘群G2,其中两个循环群的阶数皆为q且q与p均为两个大素数,G1的生成元为P,定义双线性映射e:G1×G1→G2;选取安全哈希函数: 选取数字签名算法Sig(*);
S1-3、KGC随机选取计算Ppub=sP,其中,s为系统主密钥,需要秘密存储,Ppub为系统公钥;系统初始化的所有公共参数param={G1,G2,P,p,q,Ppub,Hi(i=0,1,2,3,4,5)}将被写入区块链,对不同域的用户都是公开可见的。
进一步的,S2的具体步骤为:
S2-1、本域病患用户发送其身份标识字符串IDi A给密钥生成中心KGC,密钥生成中心KGC收到后计算:其中,T为当前该用户注册时的时间戳,作为用户的匿名身份标识符,作为病患用户的部分私钥,且与身份标识IDi A唯一对应,密钥生成中心KGC将部分密钥通过安全信道发送给病患用户;
进一步的,S3的具体步骤为:
S3-1、本域病患用户IDi A选取随机数并计算U=rP,gr=[r]e(P,Ppub), 其中,gr为本次消息生成的过程变量,U、N、h、I为本次认证过程的数字签名,T1为当前时间戳,然后生成消息M1=<N,h,T1,U,I>并发送给本域医疗机构IDj A;
S3-2、当本域医疗机构IDj A收到M1后,首先解析该消息并选取当前时间戳T2,若|T1-T2|<ΔT,成立,则说明M1是新鲜的,否则,中止会话或不应答;其中ΔT为消息附带的时间戳和收到消息时的当前时间戳之间的差值;然后计算:t=[h′]e(P,Ppub),其中,为本域医疗机构推导出的病患用户的匿名身份标识符,u、t、h′都为验签过程的生成变量。若h′=h成立,则说明该病患用户是合法的,否则,中止会话;
S3-3、本域医疗机构IDj A选取随机数并计算Y=yP,gy=[y]e(P,Ppub), 其中,T3为当前时间戳,gy为本次消息生成的过程变量,W、v、K、Y为本次认证过程的数字签名;然后,生成会话密钥 最后,生成消息M2=<w,v,K,Y,T3>发送给病患用户IDi A;
S3-4、当本域病患用户IDi A收到M2,选取当前时间T3′,验证|T3-T3′|<ΔT,若成立,则说明M2新鲜性;计算: β=[v]e(P,Ppub),其中,为病患用户推导出的本域医疗机构的匿名身份标识符,α、β、v′都为验签过程的生成变量。若v′=v成立,则医疗机构IDj A的身份合法,则该用户可推导出会话密钥否则中止当前会话。
进一步的,S4的具体步骤为:
S4-1、当上述病患用户IDi A与本域医疗机构IDj A完成相互认证并协商好会话密钥后,本域医疗机构IDj A服务器根据认证结果生成区块凭证 其中,字符串Authenticated代表已经通过认证的标识,exp为认证有效期;然后,将该凭证写入交易 其中,Hash(BCertA)为区块凭证BCertA的哈希值,TS为该交易的时间戳,为本域医疗机构IDj A对该交易的数字签名;
S4-2、本域医疗机构IDj A将该交易广播至区块链网络,共识节点对该交易进行简单验证并返回验证结果,根据DPOS算法,共识节点投票选出排名前n个委托人节点轮流作为记账节点SN=SNi,i=1,2,…,n,每个节点的投票权重由该医疗机构的等级信誉度(指平台上公众点评量化后的值),以及其他节点的赞成和反对票数决定,即满足函数该记账节点SNi负责将ΔT时间所有合法交易打包成区块Block;
S4-3、基于PBFT算法,记账节点SNi发起提议其中,CurrentHash(Block)为新生成的区块的哈希值,为记账节点对当前区块的数字签名,其他记账节点作为从节点验证签名,若2/3的记账节点赞成提议,则该区块认为是有效的,否则进入下一轮共识;
S4-4、每n个区块生成作为一个选举周期,每个区块产生的时间间隔为tt秒,若存在某个记账节点发生错误行为,如被攻击、宕机等,则会影响该节点在下一轮的选举投票。
进一步的,S5的具体步骤为:
S5-2当异域医疗机构收到请求后,解析BCertA查看有效期,计算Hash(BCertA),以该哈希值作为索引查询区块链,若该交易存在,则说明病患用户合法;然后计算:Ak=akP′, 其中,是随机数,为医疗机构的私钥,T4是当前时间戳,Ak,γk,σk为本次认证过程的数字签名,sk3为协商出的会话密钥;最后生成消息M3=<Ak,γk,σk,T4>并发送给病患IDi A;
其中,为病患用户推导出的异域医疗机构的匿名身份标识符,σ′k为验签过程的生成变量,sk4为协商出的会话密钥。若σ′k=σk成立,则确认医疗机构身份合法,二者可以协商出共同的会话密钥sk=sk3=sk4。
本发明的有益效果为:本发明引入区块链技术,不依赖第三方信用背书来实现跨域认证,利用联盟链的分布式存储功能和防篡改、数据互通、可追溯等的特性,有效保护病患的隐私数据;
2.无证书公钥技术实现身份认证,无证书管理问题,克服了密钥托管,解决了联盟不同域用户跨域认证时的可信度问题,基于区块链及其智能合约将不同认证机制和安全级别的身份管理系统整合为一个标准跨域认证协议;
3.实现双向认证、准匿名性,通信双方利用协商好的会话密钥加密传输信息以保证数据在传输的过程中不会被篡改,更不会被盗用;
4.融合股份授权证明机制和实用拜占庭机制,保证在没有中心节点的情况下联盟中医疗机构可以快速达成一致,避免记账人权利滥用,最终能够提高联盟系统的吞吐量。
附图说明
图1是本发明所述方法的流程图;
图2是跨域认证数据传输流程;
图3是多域的跨域认证系统模型图。
具体实施方式
为了使本发明的内容更容易被清楚地理解,下面根据具体实施例并结合附图,对本发明作进一步详细的说明。
本发明提出了一种基于医疗联盟链的跨域认证方法,基于联盟链设计合理高效的跨域认证协议,采用哈希函数、数字签名等密码学技术实现对处于不同域的用户进行安全可靠的身份验证,并使用股份授权证明机制(Delegated Proof of Stake,DPOS)和实用拜占庭机制(Practical Byzantine Fault Tolerance,PBFT)结合的混合共识机制,保证在没有中心节点的情况下联盟中医疗机构可以快速达成一致,共享医疗健康数据,多个医疗域的跨域认证系统模型图如图3所示。
本发明的重要术语和约束如下:
联盟链:联盟链是由多个机构共同参与管理的区块链,每个组织或机构管理一个或多个节点,其数据只允许系统内的机构进行读写,只有通过授权后的实体机构才能加入或退出网络。其主要的特点是弱中心化、可控性强、交易速度快。
哈希函数:又称散列函数,是将任意长度的消息或数据压缩成摘要,使得数据量变小,格式固定。哈希函数具有单向性、抗碰撞性的特点,可以应用于消息认证,确保消息的完整性。
数字签名:可以被视为传统手写签名的数字化形式,存在于数据信息中或作为附件或逻辑上有联系的数据,具有不可伪造性,用于鉴别数据签署人的身份、验证被签名的消息的内容,主要包含签名算法和签名验证算法。
股份授权证明机制:Delegated Proof of Stake,简称DPOS,形式类似董事会投票,每个持币人经过投票后产生101个超级节点或矿池以代理验证和记账过程,相互之间具有同等权利。这种机制能够加快共识过程,但实际应用领域主要是虚拟货币,具有一定的局限性。
实用拜占庭机制:Practical Byzantine Fault Tolerance,简称PBFT,有效解决拜占庭将军问题,即对于一个n=3f+1个节点组成的区块链网络,该机制可以提供f的容错能力,容错能力近似为1/3,主要应用在联盟链中。
如图1所示,本发明所述的方法步骤如下:
S1、系统初始化,生成系统参数。本域内参与实体有密钥生成中心KGC(KeyGeneration Center),病患张三,位于A域的某中医院,以及位于B域的某专科医院(在下文中统一用A域指代本域,用B域指代有别于本域的其它域)。
S1的具体实现步骤如下:
S1-1、A域参与实体生成身份标识字符串ID∈{0,1}*,具体地,病患张三、A域某中医院、B域某专科医院的身份标识符分别为:
S1-2、A域密钥生成中心KGC选取安全参数κ,椭圆曲线E上的域Fp,循环加群G1及循环乘群G2,其中两个循环群的阶数皆为q且q与p均为两个大素数,G1的生成元为P,定义双线性映射e:G1×G1→G2;选取安全哈希函数:
S1-3、KGC随机选取计算Ppub=sP,其中,s为系统主密钥,需要秘密存储,Ppub为系统公钥。系统初始化的所有公共参数param={G1,G2,P,p,q,Ppub,Hi(i=0,1,2,3,4,5)}将被写入区块链,对不同域的用户都是公开可见的。
S2、用户注册:KGC根据用户提供的身份标识生成部分密钥,并通过安全信道发送给用户,用户自身选取秘密值,与部分密钥组成完整密钥。
S2的具体实现步骤如下:
S2-1、如图1中的步骤1.~3.所示,病患张三发送其身份标识字符串IDi A给KGC,KGC收到后计算:其中,T为当前张三注册时的时间戳,作为张三的匿名身份标识符,作为张三的部分私钥,且与身份标识IDi A唯一对应。KGC将部分密钥通过安全信道发送给张三;
S2-3、如图1中步骤4.~6.所示,同样地,A域省中医院和B域专科医院将其身份标识IDj A、发送给密钥生成中心KGC分别可以获得和并计算和作为各自的公钥,则A域省中医院和B域专科医院都可以得到完整的公私钥对,分别为和
S3、域内认证与密钥协商:病患张三首先向A域省中医院发起认证请求,该医院服务器收到请求后,首先验证消息的有效性和病患用户的合法性,验证通过后,返回签名给用户,用户收到后进行类似的验证操作,验证消息的有效性和医疗机构的合法性;若双方均验证通过,则说明通信双方是合法的,进一步地,双方协商出共同的会话密钥以保证后续的加密通信。
S3的具体实现步骤如下:
S3-1、如图1中步骤7.和步骤8.所示,病患张三选取随机数并计算U=rP,gr=[r]e(P,Ppub), 其中,gr为本次消息生成的过程变量,N、U、h、I为本次认证过程的数字签名,Y1为当前时间戳,然后生成消息M1=<N,h,T1,U,I>并发送给医院IDj A;
S3-2、如图1中步骤9.所示,当A域省中医院收到M1后,首先解析该消息并选取当前时间戳T2,若|T1-T2|<ΔT(ΔT为消息附带的时间戳和收到消息时的当前时间戳之间的差值)成立,则说明M1是新鲜的,否则,中止会话或不应答。然后计算:t=[h′]e(P,Ppub),其中,为A域省中医院推导出的病患张三的匿名身份标识符,u、t、h′都为验签过程的生成变量。若h′=h成立,则说明该病患用户是合法的,否则,中止会话。
S3-3、如图1中步骤10.和步骤11.所示,A域省中医院选取随机数并计算Y=yP,gy=[y]e(P,Ppub), 其中,gy为本次消息生成的过程变量,W、v、K、Y为本次认证过程的数字签名,T3为当前时间戳。然后,生成会话密钥最后,生成消息M2=<w,v,K,Y,T3>发送给病患用户IDi A;
S3-4、如图1中步骤12.~14.所示,当病患张三IDi收到M2,同样地,选取当前时间T3′,验证|T3-T3′|<ΔT,成立,说明M2的新鲜性,若验证通过,计算:β=[v]e(P,Ppub),其中,为病患张三推导出的A域省中医院的匿名身份标识符,α、β、v′都为验签过程的生成变量。若v′=v成立,则A域省中医院IDj A的身份合法,则该用户可推导出会话密钥 否则中止当前会话。
S4混合共识上链:当病患张三与A域省中医院完成相互认证后,该医院服务器将为张三生成区块凭证,并写入交易,该交易将由区块链网络中的所有共识节点进行验证,最后,根据混合共识机制选出记账节点,由选举出的记账节点将一定时间内合法交易打包成区块,经过共识后上链存储。
S4的具体实现步骤如下:
S4-1、如图1中步骤15.所示,当病患张三IDi A与A域省中医院IDj A完成相互认证并协商好会话密钥后,该医院IDj A服务器根据认证结果生成区块凭证其中,字符串Authenticated代表已经通过认证的标识,exp为认证有效期。然后,将该凭证写入交易其中,Hash(BCertA)为区块凭证BCertA的哈希值,TS为该交易的时间戳,为医院IDj A对该交易的数字签名;
S4-2、如图1中步骤16.所示,省中医院IDj A将该交易广播至区块链网络,共识节点对该交易进行简单验证并返回验证结果,经过共识节点投票选出排名前n个委托人节点轮流作为记账节点SN={SNi,i=1,2,…,n},每个节点的投票权重由该医疗机构的等级信誉度(指平台上公众点评量化后的值),以及其他节点的赞成和反对票数决定,即满足函数关系其中,w1,w2,w3为变量的权重值,且w1+w2+w3=1,不失一般性,根据DPOS算法,这里n取101,即101个共识节点担任委托人,该委托人将作为记账节点SNi负责将ΔT时间所有合法交易打包成区块Block;
S4-3、记账节点SNi发起提议其中,CurrentHash(Block)为新生成的区块的哈希值,为记账节点对当前区块的数字签名;其他记账节点作为从节点验证签名,若2/3的记账节点赞成提议,则该区块认为是有效的,否则进入下一轮共识;
S4-4、每101个区块生成作为一个选举周期,每一个区块产生的间隔为10秒,若存在某个记账节点发生错误行为,如被攻击、宕机等,则会影响该节点在下一轮的选举投票。
S5跨域认证:病患张三IDi A要获取B域某专科医院服务资源,首先发起认证请求,该医院首先检索本地数据库,若数据库中不存在张三的认证信息,则调用链码查询张三的认证凭证,接着与张三交互达成相互认证并协商会话密钥,该医院将跨域认证结果相关参数发布上链。
S5的具体实现步骤如下:
S5-2、如图1中步骤18.-22.所示,当B域专科医院收到请求后,解析BCertA查看有效期,计算Hash(BCertA),以该哈希值作为索引查询区块链,若该交易存在,则说明张三是合法用户;B域医院初始化匿名身份标识符其中T′为初始化匿名身份标识符时的时间戳。然后计算:Ak=akP′, 其中,是随机数,为该医院的私钥,T4是当前时间戳,Ak,γk,σk为本次认证过程的数字签名,sk3为协商出的会话密钥。最后生成消息M3=<Ak,γk,σk,T4>并发送给张三;
S5-3、如图1中步骤23.和步骤24.所示,病患张三IDi A收到M3后,首先解析出消息附带的时间戳T4,选取当前时间戳T5,若|T5-T4|<ΔT成立,则说明M3的新鲜性,然后验证: 其中,为病患张三户推导出的B域专科医院的匿名身份标识符,σ′k为验签过程的生成变量,sk4为协商出的会话密钥。若σ′k=σk成立,则确认该医院身份合法,二者可以协商出共同的会话密钥sk=sk3=sk4。
以上所述仅为本发明的优选方案,并非作为对本发明的进一步限定,凡是利用本发明说明书及附图内容所作的各种等效变化均在本发明的保护范围之内。
Claims (6)
1.一种基于医疗联盟链的跨域认证方法,其特征在于,所述方法的步骤为:
S1、系统初始化,生成系统参数;本域内参与实体有密钥生成中心KGC、病患用户、医疗机构;
S2、用户注册:本域KGC根据病患用户提供的身份标识生成部分密钥,并通过安全信道发送给病患用户,病患用户自身选取秘密值,与部分密钥组成完整密钥;
S3、域内认证与密钥协商:本域的病患用户向本域医疗机构发起认证请求,本域医疗机构收到请求后,首先验证消息的有效性和病患用户的合法性,验证通过后,返回签名给病患用户,病患用户收到后进行签名验证操作;若双方均验证通过,则说明通信双方是合法的,双方协商出共同的会话密钥以保证后续的加密通信;
S4混合共识上链:当病患用户与医疗机构完成相互认证后,医疗机构服务器将为该病患用户生成区块凭证,并写入交易,该交易将由区块链网络中的所有共识节点进行验证,最后,由选举出的记账节点将一定时间内合法交易打包成区块,经过共识后上链存储;
S5跨域认证:病患用户要获取异域医疗机构服务资源,首先发起认证请求,异域医疗机构首先检索本地数据库,若该病患用户未在本域认证过,则调用链码查询该病患用户的认证凭证,接着与病患用户交互达成相互认证并协商会话密钥,异域医疗机构将跨域认证结果相关参数发布上链;若该病患已在本域认证过,则无需再次认证,根据已查询到的认证凭据生成新的会话密钥。
2.根据权利要求1所述的一种基于医疗联盟链的跨域认证方法,其特征在于,S1的具体步骤为:
S1-1、本域参与实体生成身份标识字符串ID∈{0,1}*,不失一般性,本域病患用户、本域医疗机构、异域医疗机构的身份标识符分别为:
S1-2、本域密钥生成中心KGC选取安全参数k,椭圆曲线E上的域Fp,循环加群G1及循环乘群G2,其中两个循环群的阶数皆为q且q与p均为两个大素数,G1的生成元为P,定义双线性映射e:G1×G1→G2;选取安全哈希函数:H0: H1:H2:H3:H4: H5:选取数字签名算法Sig(*);
3.根据权利要求2所述的一种基于医疗联盟链的跨域认证方法,其特征在于,S2的具体步骤为:
S2-1、本域病患用户发送其身份标识字符串IDi A给密钥生成中心KGC,密钥生成中心KGC收到后计算:其中,T为当前该用户注册时的时间戳,作为用户的匿名身份标识符,作为病患用户的部分私钥,且与身份标识IDi A唯一对应,密钥生成中心KGC将部分密钥通过安全信道发送给病患用户;
4.根据权利要求2所述的一种基于医疗联盟链的跨域认证方法,其特征在于,S3的具体步骤为:
S3-1、本域病患用户IDi A选取随机数并计算U=rP,gr=[r]e(P,Ppub), 其中,gr为本次消息生成的过程变量,U、N、h、I为本次认证过程的数字签名,T1为当前时间戳,然后生成消息M1=<N,h,T1,U,I>并发送给本域医疗机构
S3-2、当本域医疗机构收到M1后,首先解析该消息并选取当前时间戳T2,若|T1-T2|<ΔT,成立,则说明M1是新鲜的,否则,中止会话或不应答;其中ΔT为消息附带的时间戳和收到消息时的当前时间戳之间的差值;然后计算:t=[h′]e(P,Ppub),其中,为本域医疗机构推导出的病患用户的匿名身份标识符,u、t、h′都为验签过程的生成变量。若h′=h成立,则说明该病患用户是合法的,否则,中止会话;
S3-3、本域医疗机构选取随机数并计算Y=yP,gy=[y]e(P,Ppub), 其中,T3为当前时间戳,gy为本次消息生成的过程变量,W、v、K、Y为本次认证过程的数字签名;然后,生成会话密钥 最后,生成消息M2=<w,v,K,Y,T3>发送给病患用户IDi A;
5.根据权利要求3所述的一种基于医疗联盟链的跨域认证方法,其特征在于,S4的具体步骤为:
S4-1、当所述病患用户IDi A与本域医疗机构完成相互认证并协商好会话密钥后,本域医疗机构服务器根据认证结果生成区块凭证 其中,字符串Authenticated代表已经通过认证的标识,exp为认证有效期;然后,将该凭证写入交易 其中,Hash(BCertA)为区块凭证BCertA的哈希值,TS为该交易的时间戳,为本域医疗机构对该交易的数字签名;
S4-2、本域医疗机构将该交易广播至区块链网络,共识节点对该交易进行简单验证并返回验证结果,根据DPOS算法,共识节点投票选出排名前n个委托人节点轮流作为记账节点SN=SNi,i=1,2,…,n,每个节点的投票权重由该医疗机构的等级信誉度以及其他节点的赞成和反对票数决定,即满足函数 该记账节点SNi负责将ΔT时间所有合法交易打包成区块Block;
S4-3、基于PBFT算法,记账节点SNi发起提议其中,CurrentHash(Block)为新生成的区块的哈希值,为记账节点对当前区块的数字签名,其他记账节点作为从节点验证签名,若2/3的记账节点赞成提议,则该区块认为是有效的,否则进入下一轮共识;
S4-4、每n个区块生成作为一个选举周期,每个区块产生的时间间隔为tt秒,若存在某个记账节点发生错误行为,如被攻击、宕机等,则会影响该节点在下一轮的选举投票。
6.根据权利要求2所述的一种基于医疗联盟链的跨域认证方法,其特征在于,S5的具体步骤为:
S5-2当异域医疗机构收到请求后,解析BCertA查看有效期,计算Hash(BCertA),以该哈希值作为索引查询区块链,若该交易存在,则说明病患用户合法;然后计算:Ak=akP′, 其中,是随机数,为医疗机构的私钥,T4是当前时间戳,Ak,γk,σk为本次认证过程的数字签名,sk3为协商出的会话密钥;最后生成消息M3=<Ak,γk,σk,T4>并发送给病患IDi A;
S5-3病患用户IDi A收到M3后,首先解析出消息附带的时间戳T4,选取当前时间戳T5,若|T5-T4|<ΔT成立,则说明M3的新鲜性,然后验证: 其中,为病患用户推导出的异域医疗机构的匿名身份标识符,σk′为验签过程的生成变量,sk4为协商出的会话密钥。若σk′=σk成立,则确认医疗机构身份合法,二者可以协商出共同的会话密钥sk=sk3=sk4。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210188663.5A CN114389811B (zh) | 2022-02-28 | 2022-02-28 | 一种基于医疗联盟链的跨域认证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210188663.5A CN114389811B (zh) | 2022-02-28 | 2022-02-28 | 一种基于医疗联盟链的跨域认证方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114389811A true CN114389811A (zh) | 2022-04-22 |
CN114389811B CN114389811B (zh) | 2023-07-25 |
Family
ID=81206039
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210188663.5A Active CN114389811B (zh) | 2022-02-28 | 2022-02-28 | 一种基于医疗联盟链的跨域认证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114389811B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115001764A (zh) * | 2022-05-23 | 2022-09-02 | 中国科学技术大学 | 分层系统下基于共识数据库的跨域密钥协商方法及系统 |
CN115065679A (zh) * | 2022-06-02 | 2022-09-16 | 湖南天河国云科技有限公司 | 基于区块链的电子健康档案共享模型、方法、系统和介质 |
CN116776389A (zh) * | 2023-08-15 | 2023-09-19 | 中电科大数据研究院有限公司 | 一种基于区块链的医疗行业数据安全监管系统 |
CN116866908A (zh) * | 2023-07-28 | 2023-10-10 | 北京航空航天大学 | 一种基于分片区块链的5g认证与密钥协商方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020087805A1 (zh) * | 2018-11-02 | 2020-05-07 | 中国科学院沈阳自动化研究所 | 基于双密值和混沌加密的可信测控网络认证方法 |
CN112883406A (zh) * | 2021-03-24 | 2021-06-01 | 南京邮电大学 | 一种基于联盟链的远程医疗跨域认证方法 |
CN113194469A (zh) * | 2021-04-28 | 2021-07-30 | 四川师范大学 | 基于区块链的5g无人机跨域身份认证方法、系统及终端 |
CN113259381A (zh) * | 2021-06-15 | 2021-08-13 | 南京邮电大学 | 一种基于区块链与ibc相结合的智慧医疗跨域认证方法 |
-
2022
- 2022-02-28 CN CN202210188663.5A patent/CN114389811B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020087805A1 (zh) * | 2018-11-02 | 2020-05-07 | 中国科学院沈阳自动化研究所 | 基于双密值和混沌加密的可信测控网络认证方法 |
CN112883406A (zh) * | 2021-03-24 | 2021-06-01 | 南京邮电大学 | 一种基于联盟链的远程医疗跨域认证方法 |
CN113194469A (zh) * | 2021-04-28 | 2021-07-30 | 四川师范大学 | 基于区块链的5g无人机跨域身份认证方法、系统及终端 |
CN113259381A (zh) * | 2021-06-15 | 2021-08-13 | 南京邮电大学 | 一种基于区块链与ibc相结合的智慧医疗跨域认证方法 |
Non-Patent Citations (1)
Title |
---|
冯涛;焦滢;方君丽;田野;: "基于联盟区块链的医疗健康数据安全模型", 计算机科学, no. 04 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115001764A (zh) * | 2022-05-23 | 2022-09-02 | 中国科学技术大学 | 分层系统下基于共识数据库的跨域密钥协商方法及系统 |
CN115001764B (zh) * | 2022-05-23 | 2023-07-11 | 中国科学技术大学 | 分层系统下基于共识数据库的跨域密钥协商方法及系统 |
CN115065679A (zh) * | 2022-06-02 | 2022-09-16 | 湖南天河国云科技有限公司 | 基于区块链的电子健康档案共享模型、方法、系统和介质 |
CN116866908A (zh) * | 2023-07-28 | 2023-10-10 | 北京航空航天大学 | 一种基于分片区块链的5g认证与密钥协商方法 |
CN116866908B (zh) * | 2023-07-28 | 2024-03-12 | 北京航空航天大学 | 一种基于分片区块链的5g认证与密钥协商方法 |
CN116776389A (zh) * | 2023-08-15 | 2023-09-19 | 中电科大数据研究院有限公司 | 一种基于区块链的医疗行业数据安全监管系统 |
CN116776389B (zh) * | 2023-08-15 | 2023-11-24 | 中电科大数据研究院有限公司 | 一种基于区块链的医疗行业数据安全监管系统 |
Also Published As
Publication number | Publication date |
---|---|
CN114389811B (zh) | 2023-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | Identity-based data outsourcing with comprehensive auditing in clouds | |
CN109785494B (zh) | 基于区块链的可追踪的匿名电子投票方法 | |
CN111046352B (zh) | 一种基于区块链的身份信息安全授权系统与方法 | |
CN114389811A (zh) | 一种基于医疗联盟链的跨域认证方法 | |
Anderson et al. | A new family of authentication protocols | |
CN112311772B (zh) | 基于Hyperledger的跨域证书管理系统及方法 | |
Li et al. | BCSE: Blockchain-based trusted service evaluation model over big data | |
Li et al. | An unlinkable authenticated key agreement with collusion resistant for VANETs | |
CN108462696B (zh) | 一种去中心化的区块链智能身份认证系统 | |
CN110069918A (zh) | 一种基于区块链技术的高效双因子跨域认证方法 | |
CN108768652A (zh) | 一种可抗量子攻击的联盟区块链底层加密方法 | |
Roh et al. | A study on electronic voting system using private blockchain | |
CN112688786A (zh) | 一种基于区块链的证据构建及实名身份认证方法 | |
CN112291062B (zh) | 一种基于区块链的投票方法及装置 | |
Li et al. | Privacy‐aware PKI model with strong forward security | |
CN113761582A (zh) | 基于群签名的可监管区块链交易隐私保护方法及系统 | |
CN113468570A (zh) | 基于智能合约的隐私数据共享方法 | |
CN112839046A (zh) | 基于区块链的可追踪的匿名众包方法及系统 | |
Wu et al. | Blockchain-based anonymous data sharing with accountability for Internet of Things | |
Liu et al. | A blockchain-based cross-domain authentication management system for IoT devices | |
Takaragi et al. | Secure revocation features in ekyc-privacy protection in central bank digital currency | |
Stubblebine et al. | Authentic attributes with fine-grained anonymity protection | |
Kohias et al. | Reasoning about public-key certification: on bindings between entities and public keys | |
Li et al. | Groupchain: a blockchain model with privacy-preservation and supervision | |
Haghighat et al. | An efficient and provably-secure coercion-resistant e-voting protocol |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |