本发明涉及医疗技术领域,特别涉及一种基于区块链的医疗分析系统。
背景技术:
智慧医疗从追求单个系统规模向以电子病历为核心的运营管理一体化方向转变,并充分利用互联网、移动互联网及物联网等技术,有效的实现了患者与医生、医务人员、医院、医疗机构以及医疗设备间的互动,在一定区域内里实现了以患者为中心的业务协同服务。然而,不同医疗机构节点间的数据交换却遇到了很多困难,特别是其中涉及到患者隐私,在这种情况下,无法实现对患者的病例进行共享,利用共享的病例进行医疗分析;且保护患者的隐私。
技术实现要素:
本发明的目的是提供一种基于区块链的医疗分析系统,所要解决的技术问题是:无法实现对患者的病例进行共享,利用共享的病例进行医疗分析;且保护患者的隐私。
本发明解决上述技术问题的技术方案如下:一种基于区块链的医疗分析系统,包括:
注册模块,用于根据医疗健康卡的信息生成非对称密钥对;当接收到用户的注册请求时,控制医疗机构节点利用所述非对称密钥的公钥对所述用户进行注册验证,当所述注册验证通过时,执行:
加密模块,用于接收到所述用户的授权共享触发时,控制所述医疗机构节点对存储的所述用户的电子病历进行加密,将加密的所述电子病历发送至与所述医疗机构节点对应的第一前置数据库;
签名模块,用于接收到所述用户的授权使用触发时,控制医疗分析节点生成智能合约;利用所述非对称密钥的私钥对所述智能合约进行签名,并将签名后的所述智能合约发布到区块链;
验证模块,用于验证节点根据所述智能合约,触发执行:所述医疗机构节点利用所述非对称密钥的公钥对签名后的所述智能合约进行合法性验证;当所述合法性验证通过时,所述医疗机构节点将所述第一前置数据库中存储的加密的所述电子病历交换至与所述医疗分析节点对应的第二前置数据库;
分析模块,用于利用所述医疗分析节点对所述第二前置数据库中的加密的所述电子病历进行解密,并存储解密得到的所述电子病历,利用所述电子病历进行医疗分析。
进一步,加密模块还用于控制所述医疗机构节点生成对称密钥,利用所述非对称密钥的公钥对所述对称密钥进行加密,将加密的所述对称密钥发送至所述第一前置数据库。
进一步,加密模块控制所述医疗机构节点对存储的所述用户的电子病历进行加密具体为:加密模块控制所述医疗机构节点利用所述对称密钥对存储的所述用户的电子病历进行加密。
进一步,所述分析模块对所述电子病历进行解密之前,所述医疗健康卡利用所述非对称密钥的私钥对加密的所述对称密钥进行解密,将解密得到的所述对称密钥发送给所述医疗分析节点;所述医疗分析节点利用所述对称密钥对所述第二前置数据库中的加密的所述电子病历进行解密。
进一步,所述分析模块利用所述电子病历进行医疗分析具体为:所述分析模块提取电子病历中关于用户的年龄、位置、发病时间和发病症状;根据用户的年龄、位置、发病时间和发病症状分析出病情发展状况。
本发明的有益效果是:电子病历会加密存放在前置交换库中,只有患者授权才可以查看,并且电子病历都是加密传输和存放的,有效的保护了患者隐私。该方法通过智能合约自动执行验证过程,无需人工干预,提高了共享效率。相较于传统的集中式管理方式,提供了统一的、去中心化的共享、授权和认证,增强了授权认证的可靠性和不可伪造性。另外,患者的私钥是保存在外部医疗健康卡硬件设备中,便于携带和信息授权收集,便于对地区性传染病之类的病症进行病疫分析。
附图说明
图1为本发明一种基于区块链的医疗分析系统的模块框图;
图2为本发明一种基于区块链的医疗分析方法的流程图。
附图中,各标号所代表的部件列表如下:
1、注册模块,2、加密模块,3、签名模块,4、验证模块,5、分析模块。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
如图1所示,一种基于区块链的医疗分析系统,包括:
注册模块1,用于根据医疗健康卡的信息生成非对称密钥对;当接收到用户的注册请求时,控制医疗机构节点利用所述非对称密钥的公钥对所述用户进行注册验证,当所述注册验证通过时,执行:
加密模块2,用于接收到所述用户的授权共享触发时,控制所述医疗机构节点对存储的所述用户的电子病历进行加密,将加密的所述电子病历发送至与所述医疗机构节点对应的第一前置数据库;
签名模块3,用于接收到所述用户的授权使用触发时,控制医疗分析节点生成智能合约;利用所述非对称密钥的私钥对所述智能合约进行签名,并将签名后的所述智能合约发布到区块链;
验证模块4,用于验证节点根据所述智能合约,触发执行:所述医疗机构节点利用所述非对称密钥的公钥对签名后的所述智能合约进行合法性验证;当所述合法性验证通过时,所述医疗机构节点将所述第一前置数据库中存储的加密的所述电子病历交换至与所述医疗分析节点对应的第二前置数据库;
分析模块5,用于利用所述医疗分析节点对所述第二前置数据库中的加密的所述电子病历进行解密,并存储解密得到的所述电子病历,利用所述电子病历进行医疗分析。
上述实施例中,加密模块2还用于控制所述医疗机构节点生成对称密钥,利用所述非对称密钥的公钥对所述对称密钥进行加密,将加密的所述对称密钥发送至所述第一前置数据库。
上述实施例中,加密模块2控制所述医疗机构节点对存储的所述用户的电子病历进行加密具体为:加密模块2控制所述医疗机构节点利用所述对称密钥对存储的所述用户的电子病历进行加密。
上述实施例中,所述分析模块5对所述电子病历进行解密之前,所述医疗健康卡利用所述非对称密钥的私钥对加密的所述对称密钥进行解密,将解密得到的所述对称密钥发送给所述医疗分析节点;所述医疗分析节点利用所述对称密钥对所述第二前置数据库中的加密的所述电子病历进行解密。
上述实施例中,所述分析模块5利用所述电子病历进行医疗分析具体为:所述分析模块5提取电子病历中关于用户的年龄、位置、发病时间和发病症状;根据用户的年龄、位置、发病时间和发病症状分析出病情发展状况。
电子病历会加密存放在前置交换库中,只有患者授权才可以查看,并且电子病历都是加密传输和存放的,有效的保护了患者隐私。该方法通过智能合约自动执行验证过程,无需人工干预,提高了共享效率。相较于传统的集中式管理方式,提供了统一的、去中心化的共享、授权和认证,增强了授权认证的可靠性和不可伪造性。另外,患者的私钥是保存在外部医疗健康卡硬件设备中,便于携带和信息授权收集,便于对地区性传染病之类的病症进行病疫分析。
如图2所示,一种基于区块链的医疗分析方法,包括以下步骤:
注册模块1根据医疗健康卡的信息生成非对称密钥对;当接收到用户的注册请求时,控制医疗机构节点利用所述非对称密钥的公钥对所述用户进行注册验证,当所述注册验证通过时,执行:
加密模块2接收到所述用户的授权共享触发时,控制所述医疗机构节点对存储的所述用户的电子病历进行加密,将加密的所述电子病历发送至与所述医疗机构节点对应的第一前置数据库;
签名模块3接收到所述用户的授权使用触发时,控制医疗分析节点生成智能合约;利用所述非对称密钥的私钥对所述智能合约进行签名,并将签名后的所述智能合约发布到区块链;
验证模块4验证节点根据所述智能合约,触发执行:所述医疗机构节点利用所述非对称密钥的公钥对签名后的所述智能合约进行合法性验证;当所述合法性验证通过时,所述医疗机构节点将所述第一前置数据库中存储的加密的所述电子病历交换至与所述医疗分析节点对应的第二前置数据库;
分析模块5利用所述医疗分析节点对所述第二前置数据库中的加密的所述电子病历进行解密,并存储解密得到的所述电子病历,利用所述电子病历进行医疗分析。
电子病历会加密存放在前置交换库中,只有患者授权才可以查看,并且电子病历都是加密传输和存放的,有效的保护了患者隐私。该方法通过智能合约自动执行验证过程,无需人工干预,提高了共享效率。相较于传统的集中式管理方式,提供了统一的、去中心化的共享、授权和认证,增强了授权认证的可靠性和不可伪造性。另外,患者的私钥是保存在外部医疗健康卡硬件设备中,便于携带和信息授权收集,便于对地区性传染病之类的病症进行病疫分析。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。