一种基于区块链的医疗数据共享方法及装置制造方法及图纸

技术编号:19067785 阅读:29 留言:0更新日期:2018-09-29 14:51
本发明专利技术公开了一种基于区块链的医疗数据共享方法及装置,属于区块链技术领域。所述方法包括:构建具有多个医疗节点的P2P网络;根据为患者定义选取的唯一识别号,利用SM2为所述患者生成公钥和私钥,所述患者保留所述私钥,将所述公钥向所述多个医疗节点公开;所述多个医疗节点中的预定医疗节点利用所述公钥对所述患者的医疗数据信息进行加密,通过密文构造区块链的结构化信息;根据达成共识的预设确认校验规则,将所述结构化信息广播至所述多个医疗节点的其他医疗节点;将所述结构化信息写入区块链。本发明专利技术既能提高医院之间数据共享效率,又能从技术上保证信息的隐私性和安全性,适于在医疗领域进行广泛的推广与应用。

【技术实现步骤摘要】
一种基于区块链的医疗数据共享方法及装置
本专利技术涉及区块链
,特别涉及一种基于区块链的医疗数据共享方法及装置。
技术介绍
随着医疗卫生事业的发展,国内医疗信息化建设已经取得显著性成果,绝大部分三级医院和部分先进的二级医院信息化程度已经非常高。主要的医疗业务信息化系统包括:医院信息系统、电子病历系统、医学影像存档与通信系统、检验信息系统、超声信息系统、心电网络系统、体检管理信息系统等。上述信息化系统的建设,完成了医疗信息化的第一个步骤,逐步实现医疗业务数据的采集和存储。医疗信息系统不断深入应用,使得医院对医疗数据信息化的需求,从简单的采集、存储和“一院所有”到医疗数据共享和交换,以提高医疗数据对患者对人类的贡献。然而,如果仅仅将医疗信息简单粗暴的罗列在一起,存放在一个系统或者一台服务器中,医疗数据的共享将面临很大的社会隐私泄露问题。区块链是最近比较时兴的一项技术,它采用分布式的存储,利用块链式数据结构来验证与存储数据,利用分布式节点共识算法来生成和更新数据,利用密码学的方式保证数据传输和访问的安全,利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新分布式基础架构与计算范式。将区块链技术存储和传播加密后的医疗信息,将使得医疗信息既能全网共享,又能充分保证数据安全,从而保证隐私不被泄露。非对称加密算法需要两个密钥:公开密钥(publickey)和私有密钥(privatekey)。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。非对称加密算法实现机密信息交换的基本过程是:甲方生成一对密钥并将其中的一把作为公用密钥向其它方公开;得到该公用密钥的乙方使用该密钥对机密信息进行加密后再发送给甲方;甲方再用自己保存的另一把专用密钥对加密后的信息进行解密。我国国家秘密管理局在2010年发布了SM2椭圆曲线(ECC)公钥秘密算法,SM2主要包括4部分,第1部分为总则,主要介绍了ECC基本的算法描述,包括素数域和二元扩域两种算法描述,第2部分为数字签名算法,第3部分为密钥交换协议,第4部分为公钥加密算法,使用ECC公钥进行加密和ECC私钥进行解密算法。SM2在计算上比国际上公布的ECC算法复杂,相对来说算法速度可能慢,但可能是更安全一点。对等网络(P2P网络),即对等计算机网络,是一种在对等者(Peer)之间分配任务和工作负载的分布式应用架构,是对等计算模型在应用层形成的一种组网或网络形式。网络的参与者共享他们所拥有的一部分硬件资源,这些共享资源通过网络提供服务和内容,能被其它对等节点(Peer)直接访问而无需经过中间实体。在此网络中的参与者既是资源、服务和内容的提供者,又是资源、服务和内容的获取者。P2P网络提供了对等者间合作的桥梁,但并一定不能提供数据传输的可靠性。区块链格式首先用于比特币,作为解决数据库安全和不需要信任的管理员问题的解决方案。第一块区块链由中本聪在2008年概念化,并在次年实施作为数字货币比特币的核心组成部分,通过使用对等网络和分布式时间戳服务器,区块链数据库被自主地管理。比特币区块链的专利技术使它成为第一个解决双重支出问题的数字货币,比特币设计一直是其他区块链应用的灵感。区块链被分为三类:公有链(publicblockchain)、联盟链(consortiumblockchain)、私有链(privateblockchain)。其中,比特币等加密货币属于公有链的范畴,联盟链常常用于企业之间,一方面保证数据的共享,另一方面保证链上数据的准入资格,这样既有助于协作,又有利于降低风险。加上区块链作为一项分布式、不可篡改、可追溯等特性的新技术,对于保存患者病人的就医历史信息具有极好的作用,因此本申请结合非对称加密和区块链技术,提出一种基于区块链的医疗数据共享方案设计,既提高医院之间数据共享效率,又能从技术上保证信息的隐私性和安全性。
技术实现思路
为了解决现有技术的问题,本专利技术实施例提供了一种基于区块链的医疗数据共享方法及装置。所述技术方案如下:第一方面,提供了一种基于区块链的医疗数据共享方法,所述方法包括:构建具有多个医疗节点的P2P网络;根据为患者定义选取的唯一识别号,利用SM2为所述患者生成公钥和私钥,所述患者保留所述私钥,将所述公钥向所述多个医疗节点公开;所述多个医疗节点中的预定医疗节点利用所述公钥对所述患者的医疗数据信息进行加密,通过密文构造区块链的结构化信息;根据达成共识的预设确认校验规则,将所述结构化信息广播至所述多个医疗节点的其他医疗节点;将所述结构化信息写入区块链。结合第一方面,在第一种可能的实现方式中,构建具有多个医疗节点的P2P网络,包括:利用Kademlia协议构建具有多个医疗节点的P2P网络。结合第一方面,在第二种可能的实现方式中,根据为患者定义选取的唯一识别号ID,利用SM2为所述患者生成公钥和私钥,所述患者保留所述私钥,将所述公钥向所述多个医疗节点公开,包括:将患者的身份证号作为患者的唯一识别号,利用国密SM2为所述患者生成公钥和私钥,存储所述私钥,并将所述公钥发送至所述多个医疗点。结合第一方面,在第三种可能的实现方式中,所述多个医疗节点的预定医疗节点利用所述公钥对所述患者的医疗数据信息进行加密,通过密文构造区块链的结构化信息,包括:所述多个医疗节点的预定医疗节点利用所述公钥对所述患者的医疗数据信息进行加密,得到密文,对所述密文进行哈希运算,得到所述密文的摘要信息,所述预定医疗节点通过所述密文和摘要信息构造区块链的结构化信息。结合第一方面,在第四种可能的实现方式中,根据达成共识的预设确认校验规则,将所述结构化信息广播至所述多个医疗节点的其他医疗节点,包括:探测所述多个医疗节点是否在线;若其回复确认在线信息,将带有校验和的结构化信息发送给对方;待对方校验通过校验和后,返回带校验和的确认信息。结合第一方面,在第五种可能的实现方式中,将所述结构化信息写入区块链,包括:在预定时间节点,将所述结构化信息按生成时间递增排序,通过merkletree组织起来,并添加头部写入区块链,使得区块链在各节点一致。结合第一方面,在第六种可能的实现方式中,所述方法还包括:所述其他医疗节点通过所述患者提供的授权查看的私钥获取所述患者的医疗数据信息。结合第一方面,在第七种可能的实现方式中,所述方法还包括:当所述患者丢失所述私钥或公钥,所述区块链内的任一医疗节点根据所述患者的唯一识别号,通过所述区块链内的预设私有算法,获得所述私钥或公钥。第二方面,提供了一种基于区块链的医疗数据共享装置,包括:P2P网络构建模块,用于构建具有多个医疗节点的P2P网络;档案建立模块,用于根据为患者定义选取的唯一识别号,利用SM2为所述患者生成公钥和私钥,所述患者保留所述私钥,将所述公钥向所述多个医疗节点公开;加密模块,用于使所述多个医疗节点中的预定医疗节点利用所述公钥对所述患者的医疗数据信息进行加密,通过密文构造区块链的结构化信息;数据共享模块,用于根据达成共识的预设确认校验规则,将所述结构化信息广播至所述多个医疗节点的其他医疗节点;区块链构本文档来自技高网
...

【技术保护点】
1.一种基于区块链的医疗数据共享方法,其特征在于,所述方法包括:构建具有多个医疗节点的P2P网络;根据为患者定义选取的唯一识别号,利用SM2为所述患者生成公钥和私钥,所述患者保留所述私钥,将所述公钥向所述多个医疗节点公开;所述多个医疗节点中的预定医疗节点利用所述公钥对所述患者的医疗数据信息进行加密,通过密文构造区块链的结构化信息;根据达成共识的预设确认校验规则,将所述结构化信息广播至所述多个医疗节点的其他医疗节点;将所述结构化信息写入区块链。

【技术特征摘要】
1.一种基于区块链的医疗数据共享方法,其特征在于,所述方法包括:构建具有多个医疗节点的P2P网络;根据为患者定义选取的唯一识别号,利用SM2为所述患者生成公钥和私钥,所述患者保留所述私钥,将所述公钥向所述多个医疗节点公开;所述多个医疗节点中的预定医疗节点利用所述公钥对所述患者的医疗数据信息进行加密,通过密文构造区块链的结构化信息;根据达成共识的预设确认校验规则,将所述结构化信息广播至所述多个医疗节点的其他医疗节点;将所述结构化信息写入区块链。2.根据权利要求1所述的方法,其特征在于,构建具有多个医疗节点的P2P网络,包括:利用Kademlia协议构建具有多个医疗节点的P2P网络。3.根据权利要求1所述的方法,其特征在于,根据为患者定义选取的唯一识别号ID,利用SM2为所述患者生成公钥和私钥,所述患者保留所述私钥,将所述公钥向所述多个医疗节点公开,包括:将患者的身份证号作为患者的唯一识别号,利用国密SM2为所述患者生成公钥和私钥,存储所述私钥,并将所述公钥发送至所述多个医疗点。4.根据权利要求1所述的方法,其特征在于,所述多个医疗节点的预定医疗节点利用所述公钥对所述患者的医疗数据信息进行加密,通过密文构造区块链的结构化信息,包括:所述多个医疗节点的预定医疗节点利用所述公钥对所述患者的医疗数据信息进行加密,得到密文,对所述密文进行哈希运算,得到所述密文的摘要信息,所述预定医疗节点通过所述密文和摘要信息构造区块链的结构化信息。5.根据权利要求1所述的方法,其特征在于,根据达成共识的预设确认校验规则,将所述结构化信息广播至所述多个医疗节点的其他医疗节点,包括:探测所述多个医疗节点是否在线;若其回复确认在线信息,将带有校验和的结构化信息发送给对方;待对方校验通过校验和后,返回带校验和的确认信息。6.根据权利要求1所述的方法,其特征在于,将所述结构化信息写入区块链,包括:在预定时间节点,将所述结构化信息按生成时间递增排序,通过merkletree组织起来,并添加头部写入区块链,使得区块链在各节点一致。7.根据权利要求1所述的方法,其特征在于,所述方法还包括:所述其他医疗节点通过所述患者提供的授权查看的私钥获取所述患者的医疗数据信息。8.根据权利要求1所述的方法,其特征在于,所述方法还包括:当所述患者丢失所述私钥或公钥,所述区块链内的任一医疗节点...

【专利技术属性】
技术研发人员:阚海斌张亮张新鹏孙亮唐正超
申请(专利权)人:众安信息技术服务有限公司
类型:发明
国别省市:广东,44

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

1