本发明专利技术涉及区块链技术,揭露了一种基于区块链的医疗数据保存方法,包括:触发医疗机构系统发送数据保存广播指令至其他的医疗机构系统,若数据保存广播指令均被其他的医疗机构系统响应,接收医疗用户端发送的数据保存请求,若请求标识为请求公开,将医疗数据存入分布式数据库,若请求标识为请求保护,对医疗数据进行重加密,得到加密医疗数据和加密医疗数其对应的重加密密钥,将重加密密钥存储至数据块,当数据块中重加密密钥的数据量达到预设个数,将数据块的默克尔根并存入医疗区块链,将加密医疗数据存入分布式数据库。本发明专利技术还提出一种基于区块链的医疗数据保存装置、电子设备以及计算机可读存储介质。本发明专利技术可以提高医疗数据保存的安全性。数据保存的安全性。数据保存的安全性。
【技术实现步骤摘要】
基于区块链的医疗数据保存方法、装置、电子设备及介质
[0001]本专利技术涉及区块链
,尤其涉及一种基于区块链的医疗数据保存方法、装置、电子设备及计算机可读存储介质。
技术介绍
[0002]根据现在的医疗行业现状可以知道各个医疗机构之间共享数据存在困难,因为医疗数据的校验、保存和同步一直是一个难以解决的难点,病人、医生和第三方在访问和共享医疗数据时会存在严格的限制,因此可以从医疗数据的保存入手,通过将医疗数据保存至区块链中来实现数据的共享。
[0003]现有的将医疗数据保存至区块链中通常是先对医疗数据进行加密,然后将加密密钥和加密后的医疗数据一起上传至区块链的节点中,这种方法将加密密钥和加密后的医疗数据存储在一起,一旦加密密钥泄漏后很容易就可以对放置在一起的加密医疗数据进行解密,容易造成数据泄漏,医疗数据保存的安全性不高。
技术实现思路
[0004]本专利技术提供一种基于区块链的医疗数据保存方法、装置及计算机可读存储介质,其主要目的在于解决医疗数据保存的安全性不高。
[0005]为实现上述目的,本专利技术提供的一种基于区块链的医疗数据保存方法,包括:
[0006]接收医疗用户端发送的医疗数据保存指令,根据所述医疗数据保存指令查询所述医疗用户端所属的医疗机构系统;
[0007]向所述医疗机构系统发送广播指令,以使所述医疗机构系统发送数据保存广播指令至其他的医疗机构系统;
[0008]当所述数据保存广播指令均被其他的所述医疗机构系统响应时,接收所述医疗用户端发送的数据保存请求,所述数据保存请求包括指示保存的医疗数据;
[0009]若所述数据保存请求的请求标识为请求公开,则将所述医疗数据存入预设的分布式数据库中;
[0010]若所述数据保存请求的请求标识为请求保护,则对所述医疗数据进行重加密,得到加密医疗数据和所述加密医疗数据对应的重加密密钥;
[0011]将所述重加密密钥存储至预设的数据块中,直至所述数据块中所述重加密密钥的数据量达到预设个数时,计算所述数据块的默克尔根;
[0012]将所述默克尔根存入至预构建的医疗区块链中,并将所述加密医疗数据存入所述分布式数据库。
[0013]可选地,所述对所述医疗数据进行重加密,得到加密医疗数据和所述加密医疗数据对应的重加密密钥,包括:
[0014]基于预设的加密算法生成临时公钥和临时私钥;
[0015]利用所述临时公钥对预获取的本地公钥进行加密,得到加密公钥,利用所述临时
私钥对预获取的本地私钥进行加密,得到加密私钥;
[0016]将所述加密公钥和所述加密私钥进行相乘,得到加密密钥,利用临时私钥对所述加密密钥进行解密,得到重加密密钥;
[0017]利用所述重加密密钥对所述医疗数据进行加密处理,得到加密医疗数据,并将所述重加密密钥作为所述加密医疗数据对应的重加密密钥。
[0018]可选地,所述基于预设的加密算法生成临时公钥和临时私钥,包括:
[0019]对随机获取的两个不同的质数p和q,计算乘积N=pq,对随机获取的两个不同的质数p和q,计算乘积N=pq,
[0020]选取一个满足的整数e,确定所述(N,e)为临时公钥;
[0021]选取一个满足的整数d,确定所述(N,d)为临时私钥。
[0022]可选地,所述计算所述数据块的默克尔根,包括:
[0023]提取所述数据块中的第一重加密密钥、第二重加密密钥、第三重加密密钥和第四重加密密钥;
[0024]分别计算所述第一重加密密钥、所述第二重加密密钥、所述第三重加密密钥和所述第四重加密密钥的哈希值,得到第一哈希值、第二哈希值、第三哈希值和第四哈希值;
[0025]计算所述第一哈希值与所述第二哈希值求和后的哈希值,得到第一求和哈希值;
[0026]计算所述第三哈希值与所述第四哈希值求和后的哈希值,得到第二求和哈希值;
[0027]对所述第一求和哈希值和所述第二求和哈希值进行求和并对求和后的数据进行哈希计算,得到默克尔根。
[0028]可选地,所述根据所述医疗数据保存指令查询所述医疗用户端所属的医疗机构系统,包括:
[0029]获取所述医疗数据保存指令包含的所述医疗用户端的标识信息;
[0030]根据预设的用户系统映射表查找所述标识信息对应的医疗机构系统为所述医疗用户端所属的医疗机构系统。
[0031]可选地,所述接收所述医疗用户端发送的数据保存请求之后,所述方法还包括:
[0032]判断所述医疗用户端提交的数据保存请求是否符合预设的提交格式;
[0033]若所述数据保存请求符合所述提交格式,则根据所述医疗数据保存指令查询所述医疗用户端所属的医疗机构系统;
[0034]若所述数据保存请求不符合所述提交格式,则向所述医疗用户端返回重新发送的提醒消息。
[0035]可选地,所述将所述医疗数据存入预设的分布式数据库中之前,所述方法还包括:
[0036]识别所述医疗数据中的乱码信息,并对所述乱码信息执行删除操作。
[0037]为了解决上述问题,本专利技术还提供一种基于区块链的医疗数据保存装置,所述装置包括:
[0038]机构查询模块,用于接收医疗用户端发送的医疗数据保存指令,根据所述医疗数据保存指令查询所述医疗用户端所属的医疗机构系统;
[0039]指令发送模块,用于向所述医疗机构系统发送广播指令,以使所述医疗机构系统发送数据保存广播指令至其他的医疗机构系统;
[0040]请求接收模块,用于当所述数据保存广播指令均被其他的所述医疗机构系统响应
时,接收所述医疗用户端发送的数据保存请求,所述数据保存请求包括指示保存的医疗数据;
[0041]数据存储模块,用于若所述数据保存请求的请求标识为请求公开,则将所述医疗数据存入预设的分布式数据库中;
[0042]数据加密模块,用于若所述数据保存请求的请求标识为请求保护,则对所述医疗数据进行重加密,得到加密医疗数据和所述加密医疗数据对应的重加密密钥;
[0043]加密数据存入模块,用于将所述重加密密钥存储至预设的数据块中,直至所述数据块中所述重加密密钥的数据量达到预设个数时,计算所述数据块的默克尔根,将所述默克尔根存入至预构建的医疗区块链中,并将所述加密医疗数据存入所述分布式数据库。
[0044]为了解决上述问题,本专利技术还提供一种电子设备,所述电子设备包括:
[0045]存储器,存储至少一个指令;及
[0046]处理器,执行所述存储器中存储的指令以实现上述所述的基于区块链的医疗数据保存方法。
[0047]为了解决上述问题,本专利技术还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一个指令,所述至少一个指令被电子设备中的处理器执行以实现上述所述的基于区块链的医疗数据保存方法。
[0048]本专利技术实施例中,通过接收医疗用户端发送的医疗数据保存指令,根据医疗数据保本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种基于区块链的医疗数据保存方法,其特征在于,所述方法包括:接收医疗用户端发送的医疗数据保存指令,根据所述医疗数据保存指令查询所述医疗用户端所属的医疗机构系统;向所述医疗机构系统发送广播指令,以使所述医疗机构系统发送数据保存广播指令至其他的医疗机构系统;当所述数据保存广播指令均被其他的所述医疗机构系统响应时,接收所述医疗用户端发送的数据保存请求,所述数据保存请求包括指示保存的医疗数据;若所述数据保存请求的请求标识为请求公开,则将所述医疗数据存入预设的分布式数据库中;若所述数据保存请求的请求标识为请求保护,则对所述医疗数据进行重加密,得到加密医疗数据和所述加密医疗数据对应的重加密密钥;将所述重加密密钥存储至预设的数据块中,直至所述数据块中所述重加密密钥的数据量达到预设个数时,计算所述数据块的默克尔根;将所述默克尔根存入至预构建的医疗区块链中,并将所述加密医疗数据存入所述分布式数据库。2.如权利要求1所述的基于区块链的医疗数据保存方法,其特征在于,所述对所述医疗数据进行重加密,得到加密医疗数据和所述加密医疗数据对应的重加密密钥,包括:基于预设的加密算法生成临时公钥和临时私钥;利用所述临时公钥对预获取的本地公钥进行加密,得到加密公钥,利用所述临时私钥对预获取的本地私钥进行加密,得到加密私钥;将所述加密公钥和所述加密私钥进行相乘,得到加密密钥,利用临时私钥对所述加密密钥进行解密,得到重加密密钥;利用所述重加密密钥对所述医疗数据进行加密处理,得到加密医疗数据,并将所述重加密密钥作为所述加密医疗数据对应的重加密密钥。3.如权利要求2所述的基于区块链的医疗数据保存方法,其特征在于,所述基于预设的加密算法生成临时公钥和临时私钥,包括:对随机获取的两个不同的质数p和q,计算乘积N=pq,对随机获取的两个不同的质数p和q,计算乘积N=pq,选取一个满足的整数e,确定所述(N,e)为临时公钥;选取一个满足的整数d,确定所述(N,d)为临时私钥。4.如权利要求1所述的基于区块链的医疗数据保存方法,其特征在于,所述计算所述数据块的默克尔根,包括:提取所述数据块中的第一重加密密钥、第二重加密密钥、第三重加密密钥和第四重加密密钥;分别计算所述第一重加密密钥、所述第二重加密密钥、所述第三重加密密钥和所述第四重加密密钥的哈希值,得到第一哈希值、第二哈希值、第三哈希值和第四哈希值;计算所述第一哈希值与所述第二哈希值求和后的哈希值,得到第一求和哈希值;计算所述第三哈希值与所述第四哈希值求和后的哈希值,得到第二求和哈希值;对所述第一求和哈希值和所述第二求和哈希值进行求和并对求和后的数据进行哈希
计算,得...
【专利技术属性】
技术研发人员:周湘京,
申请(专利权)人:广州堃盛医疗用品有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。