一种基于区块链的健康数据校验方法、设备及服务器与流程

文档序号:17117340发布日期:2019-03-15 23:27阅读:159来源:国知局
一种基于区块链的健康数据校验方法、设备及服务器与流程

本发明涉及计算机技术领域,尤其涉及一种基于区块链的健康数据校验方法、设备及服务器。



背景技术:

目前,随着互联网的快速发展,各种数据信息均可以通过网络的方式进行存储,以便用户可以更方便地获取所需数据。例如医学领域中的健康数据,诊疗终端通过实时采集各患者的健康数据信息,并上传至服务器,以方便医护人员、患者等第三方用户查询各患者的健康数据信息。然而,这种方式每时每刻都在进行着与数据有关的操作,包括数据采集、数据传输和数据存储等环节,数据在每一个环节都容易受到恶意攻击和非法篡改操作。因此,如何提高数据的安全性非常重要。



技术实现要素:

本发明实施例提供一种基于区块链的健康数据校验方法、设备及服务器,可确保健康数据区块链的完整性,提高健康数据的安全性。

第一方面,本发明实施例提供了一种基于区块链的健康数据校验方法,该方法包括:

获取诊疗终端发送的至少一个患者的健康数据区块,其中,所述健康数据区块是根据各患者的健康数据类型生成的,所述健康数据区块中包括患者标识和所述患者标识对应的健康数据,所述健康数据包括疾病数据、体检数据、运动数据、生活习惯数据中的任意一种或多种;

根据每一个患者标识对应的各健康数据区块的健康数据类型,对所述各患者的健康数据区块进行分类;

按照预设的健康数据类型的先后顺序,对分类后的各患者标识对应的健康数据区块进行排序,并根据排序后的健康数据区块生成健康数据区块链;

对所述健康数据区块链进行完整性校验;

如果校验成功,则确定所述健康数据区块链中的健康数据区块完整;

如果校验失败,则确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块。

进一步地,所述健康数据区块包括区块哈希码,所述对所述健康数据区块链进行完整性校验,包括:

获取所述健康数据区块链中各健康数据区块的区块哈希码;

根据预设的检测周期,检测所述各健康数据区块中相邻健康数据区块间的区块哈希码是否相关联;

如果检测结果为是,则确定所述健康数据区块链的完整性校验成功;

如果检测结果为否,则确定所述健康数据区块链的完整性校验失败。

进一步地,所述确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块之后,还包括:

获取所述各健康数据区块中相邻健康数据区块间的区块哈希码不关联的多个目标健康数据区块;

检测各目标健康数据区块是否与相邻的其他健康数据区块间的区块哈希码相关联,所述相邻的其他健康数据区块是在所述健康数据区块链中与所述目标健康数据区块相邻的健康数据区块;

如果检测结果为否,则确定所述各目标健康数据区块中与相邻的其他健康数据区块间的区块哈希码不关联的目标健康数据区块为被非法篡改的健康数据区块。

进一步地,所述健康数据区块包括区块哈希码;所述对所述健康数据区块链进行完整性校验,包括:

根据所述健康数据区块链中各健康数据区块的加密信息,对所述各健康数据区块进行加密处理,生成所述各健康数据区块对应的校验哈希码;

检测所述各健康数据区块对应的校验哈希码是否与所述健康数据区块的区块哈希码匹配;

如果检测结果为是,则确定所述健康数据区块链的完整性校验成功;

如果检测结果为否,则确定所述健康数据区块链的完整性校验失败。

进一步地,所述确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块之后,还包括:

获取所述各健康数据区块中区块哈希码与所述各健康数据区块的校验哈希码不匹配的至少一个目标健康数据区块;

确定所述至少一个目标健康数据区块为所述被非法篡改的健康数据区块。

进一步地,所述健康数据区块包括患者标识,所述确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块之后,还包括:

确定所述被非法篡改的健康数据区块对应的至少一个患者标识;

根据所述至少一个患者标识,生成所述健康数据区块被非法篡改的患者标识列表;

向所述患者标识列表中的各患者标识对应的终端发送通知消息,以通知所述各患者标识对应的终端健康数据区块被篡改。

进一步地,所述健康数据区块包括区块标识,所述方法还包括:

确定所述被非法篡改的健康数据区块对应的至少一个区块标识;

根据所述至少一个患者标识和所述至少一个区块标识,生成所述健康数据区块被非法篡改的区块标识列表;

向所述患者标识列表中的各患者标识对应的终端发送健康数据区块的获取请求,以使所述各患者标识对应的终端重新上传健康数据区块;

将所述各患者标识对应的终端重新上传的所述健康数据区块放入所述健康数据区块链中所述各患者标识对应的区块标识对应的位置。

第二方面,本发明实施例提供了一种数据校验设备,该数据校验设备包括用于执行上述第一方面的方法的单元。

第三方面,本发明实施例提供了一种服务器,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储支持数据校验设备执行上述方法的计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行上述第一方面的方法。

第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述第一方面的方法。

本发明实施例,服务器可以获取诊疗终端发送的至少一个患者的健康数据区块;根据每一个患者标识对应的各健康数据区块的健康数据类型,对所述各患者的健康数据区块进行分类;按照预设的健康数据类型的先后顺序,对分类后的各患者标识对应的健康数据区块进行排序,并根据排序后的健康数据区块生成健康数据区块链;对所述健康数据区块链进行完整性校验;如果校验成功,则确定所述健康数据区块链中的健康数据区块完整;如果校验失败,则确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块。通过这种方式,确保了健康数据区块链的数据完整性,提高了健康数据的安全性。

附图说明

为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的一种基于区块链的健康数据校验方法的示意流程图;

图2是本发明实施例提供的另一种基于区块链的健康数据校验方法的示意流程图;

图3是本发明实施例提供的又一种基于区块链的健康数据校验方法的示意流程图;

图4是本发明实施例提供的一种数据校验设备的示意框图;

图5是本发明实施例提供的一种服务器的示意框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。

还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。

本发明实施例提供的基于区块链的健康数据校验方法可以由一种数据校验系统执行,所述数据校验系统包括数据校验设备和诊疗终端,在某些实施例中,所述数据校验设备可以设置在服务器上,所述服务器可以包括手机、电脑、平板、智能手表等智能终端。在某些实施例中,所述数据校验设备和所述诊疗终端之间可以建立通信连接,以进行双向通信。在某些实施例中,所述数据校验设备可以安装在服务器上,在某些实施例中,所述数据校验设备可以在空间上独立于所述服务器。在某些实施例中,所述诊疗终端可以包括:手机、电脑、平板、智能手表等可智能终端。

该数据校验系统中所述诊疗终端可以将采集到的各患者的健康数据区块发送给服务器,所述服务器在获取到所述诊疗终端发送的各患者的健康数据区块之后,可以根据每一个患者标识对应的各健康数据区块的健康数据类型,对所述各患者的健康数据区块进行分类,按照预设的健康数据类型的先后顺序,对分类后的各患者标识对应的健康数据区块进行排序,并根据排序后的健康数据区块生成健康数据区块链,对所述健康数据区块链进行完整性校验,如果校验成功,则确定所述健康数据区块链中的健康数据区块完整,如果校验失败,则确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块。通过这种方式可以避免将被非法篡改的健康数据发送给第三方,提高了数据的安全性。下面结合附图对本发明实施例的基于区块链的健康数据校验方法进行示意性说明。

请参见图1,图1是本发明实施例提供的一种基于区块链的健康数据校验方法的示意流程图,如图1所示,该方法可以由数据校验设备执行,所述数据校验设备设置于服务器上,所述数据校验设备的具体解释如前所述,此处不再赘述。具体地,本发明实施例的所述方法包括如下步骤。

s101:获取诊疗终端发送的至少一个患者的健康数据区块。

本发明实施例中,服务器可以获取诊疗终端发送的至少一个患者的健康数据区块,在某些实施例中,所述健康数据区块是根据各患者的健康数据类型生成的,所述健康数据区块中包括患者标识和所述患者标识对应的健康数据,所述健康数据包括疾病数据、体检数据、运动数据、生活习惯数据中的任意一种或多种。

s102:根据每一个患者标识对应的各健康数据区块的健康数据类型,对所述各患者的健康数据区块进行分类。

本发明实施例中,服务器可以根据每一个患者标识对应的各健康数据区块的健康数据类型,对所述各患者的健康数据区块进行分类。在某些实施例中,所述健康数据类型可以包括疾病数据类型、体检数据类型、运动数据类型、生活习惯数据类型中的任意一种或多种。

s103:按照预设的健康数据类型的先后顺序,对分类后的各患者标识对应的健康数据区块进行排序,并根据排序后的健康数据区块生成健康数据区块链。

本发明实施例中,服务器可以按照预设的健康数据类型的先后顺序,对分类后的各患者标识对应的健康数据区块进行排序,并根据排序后的健康数据区块生成健康数据区块链。在某些实施例中,所述预设的健康数据类型的先后顺序可以是人为预设的顺序。例如,假设健康数据类型包括疾病数据类型、体检数据类型、运动数据类型、生活习惯数据类型,如果所述预设的健康数据类型的先后顺序依次为疾病数据类型、体检数据类型、生活习惯数据类型、运动数据类型,则根据所述预设的健康数据类型的先后顺序,对各类别的健康数据区块进行排序,并根据排序后的健康数据区块生成健康数据区块链。通过这种方式,有利于服务器可以根据各患者不同健康数据类型对应的健康数据区块的类型,查找健康数据,提高了健康数据的查找效率。

在一个实施例中,所述服务器可以获取各患者的健康数据区块的数量,根据所述健康数据区块的数量,对所述各患者进行排序,按照排序后的健康数据区块生成所述健康数据区块链。例如,假设所述服务器获取到诊疗终端发送的n个患者的健康数据区块,则所述服务器可以根据各健康数据区块的数量的大小顺序,依次对所述n个患者进行排序,并按照排序后的n各患者的各健康数据区块生成所述健康数据区块链。通过这种方式,有利于服务器可以根据各患者的患者标识对应的各健康数据区块的数量,查找健康数据,提高了健康数据的查找效率。

s104:对所述健康数据区块链进行完整性校验。

本发明实施例中,所述服务器可以对所述健康数据区块链进行完整性校验。在一个实施例中,所述健康数据区块包括区块哈希码,所述服务器可以根据所述健康数据区块的区块哈希码以及预设的检测周期对所述健康数据区块链进行完整性校验。

在一个实施例中,所述健康数据获取请求中携带加密信息,所述健康数据区块包括区块哈希码,所述服务器可以根据所述健康数据获取请求中携带的加密信息以及所述健康数据区块的区块哈希码,对所述健康数据区块链进行完整性校验。

s105:如果校验成功,则确定所述健康数据区块链中的健康数据区块完整。

本发明实施例中,所述服务器如果检测到对所述健康数据区块链进行完整性校验成功,则可以确定所述健康数据区块链中的健康数据区块完整。

s106:如果校验失败,则确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块。

本发明实施例中,所述服务器如果检测到对所述健康数据区块链进行完整性校验失败,则可以确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块。

本发明实施例中,服务器可以获取诊疗终端发送的至少一个患者的健康数据区块,根据每一个患者标识对应的各健康数据区块的健康数据类型,对所述各患者的健康数据区块进行分类,按照预设的健康数据类型的先后顺序,对分类后的各患者标识对应的健康数据区块进行排序,并根据排序后的健康数据区块生成健康数据区块链,对所述健康数据区块链进行完整性校验,如果校验成功,则确定所述健康数据区块链中的健康数据区块完整,如果校验失败,则确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块。通过这种方式,确保了所述健康数据区块的完整性,提高了健康数据的安全性。

请参见图2,图2是本发明实施例提供的另一种基于区块链的健康数据校验方法的示意流程图,如图2所示,该方法可以由数据校验设备执行,该数据校验设备的具体解释如前所述,此处不再赘述。本发明实施例与上述图1所述实施例的区别在于,本发明实施例是对所述健康数据区块链进行完整性校验的一种实施过程进行详细的说明。具体地,本发明实施例的所述方法包括如下步骤。

s201:获取诊疗终端发送的至少一个患者的健康数据区块。

本发明实施例中,服务器可以获取诊疗终端发送的至少一个患者的健康数据区块。其中,所述健康数据区块的解释如前所述,以及所述健康数据的解释如前所述,此处不再赘述。

s202:根据每一个患者标识对应的各健康数据区块的健康数据类型,对所述各患者的健康数据区块进行分类。

本发明实施例中,服务器可以根据每一个患者标识对应的各健康数据区块的健康数据类型,对所述各患者的健康数据区块进行分类。具体实施过程及举例说明如前所述,此处不再赘述。

s203:按照预设的健康数据类型的先后顺序,对分类后的各患者标识对应的健康数据区块进行排序,并根据排序后的健康数据区块生成健康数据区块链。

本发明实施例中,服务器可以按照预设的健康数据类型的先后顺序,对分类后的各患者标识对应的健康数据区块进行排序,并根据排序后的健康数据区块生成健康数据区块链。具体实施过程及示意性说明如前所述,此处不再赘述。

s204:获取所述健康数据区块链中各健康数据区块的区块哈希码。

本发明实施例中,服务器可以获取所述健康数据区块链中各健康数据区块的区块哈希码。在一个实施例中,所述健康数据区块中包括区块哈希码,所述服务器在根据排序后的健康数据区块生成健康数据区块链之后,可以获取所述健康区块链中各健康数据区块的哈希码。

s205:根据预设的检测周期,检测所述各健康数据区块中相邻健康数据区块间的区块哈希码是否相关联,如果检测结果为是,则执行步骤s206,如果检测结果为否,则执行步骤s207。

本发明实施例中,服务器可以根据预设的检测周期,检测所述各健康数据区块中相邻健康数据区块间的区块哈希码是否相关联,如果检测结果为是,则执行步骤s206,如果检测结果为否,则执行步骤s207。例如,假设所述预设的检测周期为1h,则所述服务器可以根据该预设的检测周期1h,循环检测所述各健康数据区块中相邻健康数据区块间的区块哈希码是否相关联。

在一个实施例中,所述服务器在检测各健康数据区块中相邻健康数据区块间的区块哈希码是否相关联时,可以检测各健康数据区块中相邻健康数据区块间的区块哈希码是否连续,如果连续,则可以确定所述各健康数据区块中相邻健康数据区块间的区块哈希码相关联,如果不连续,则可以确定所述各健康数据区块中相邻健康数据区块间的区块哈希码不相关联。

具体可举例说明,假设所述服务器获取到n个连续的健康数据区块,区块标识分别为1、2、3、、、n,所述服务器可以检测所述1、2、3、、、n,n个连续的健康数据区块之间的区块哈希码是否相关联,即所述服务器可以检测所述健康数据区块1与健康数据区块2的区块哈希码是否连续,同理,可以检测所述健康数据区块2与健康数据区块3的区块哈希码是否连续,以此类推,直到检测所述健康数据区块n-1与健康数据区块n的区块哈希码是否连续。

s206:确定所述健康数据区块链的校验成功。

本发明实施例中,服务器如果检测到所述各健康数据区块中相邻健康数据区块间的区块哈希码相关联,则可以确定所述健康数据区块链的校验成功。

s207:确定所述健康数据区块链的完整性校验失败,并确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块。

本发明实施例中,服务器如果检测到所述各健康数据区块中相邻健康数据区块间的区块哈希码不相关联,则可以确定所述健康数据区块链的校验失败,并在校验失败之后,并确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块。

在一个实施例中,所述服务器在确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块之后,可以获取所述各健康数据区块中相邻健康数据区块间的区块哈希码不关联的多个目标健康数据区块,并检测各目标健康数据区块是否与相邻的其他健康数据区块间的区块哈希码相关联,如果检测结果为否,则确定所述各目标健康数据区块中与相邻的其他健康数据区块间的区块哈希码不关联的目标健康数据区块为被非法篡改的健康数据区块。

例如,假设所述服务器获取到n个连续的健康数据区块,区块标识分别为1、2、3、、、n,如果所述服务器检测所述1、2、3、、、n,n个连续的健康数据区块中健康数据区块2和健康数据区块3之间的区块哈希码不相关联,而健康数据区块1和健康数据区块2之间的区块哈希码相关联,且健康数据区块3与健康数据区块4之间的区块哈希码不相关联,健康数据区块4和健康数据区块5相关联,以此类推,健康数据区块n-1与健康数据区块n之间的区块哈希码相关联,则所述服务器可以确定所述健康数据区块3为被非法篡改的目标健康数据区块。

在一个实施例中,所述健康数据区块包括患者标识,所述服务器在确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块之后,可以确定所述被非法篡改的健康数据区块对应的至少一个患者标识,根据所述至少一个患者标识,生成所述健康数据区块被非法篡改的患者标识列表,向所述患者标识列表中的各患者标识对应的终端发送通知消息,以通知所述各患者标识对应的终端健康数据区块被篡改。

例如,假设服务器确定出被非法篡改的健康数据区块为健康数据区块2和健康数据区块3,则所述服务器可以获取所述健康数据区块2的患者标识a和健康数据区块3的患者标识b,根据所述患者标识a和患者标识b,生成所述健康数据区块被非法篡改的患者标识列表,向所述患者标识列表中的各患者标识对应的终端发送通知消息,以通知所述患者标识a和患者标识b对应的终端健康数据区块被篡改。

在一个实施例中,所述健康数据区块包括区块标识,所述服务器可以确定所述被非法篡改的健康数据区块对应的至少一个区块标识,根据所述至少一个患者标识和所述至少一个区块标识,生成所述健康数据区块被非法篡改的区块标识列表,并向所述患者标识列表中的各患者标识对应的终端发送健康数据区块的获取请求,以使所述各患者标识对应的终端重新上传健康数据区块,将所述各患者标识对应的终端重新上传的所述健康数据区块放入所述健康数据区块链中所述各患者标识对应的区块标识对应的位置。

例如,假设服务器确定出被非法篡改的健康数据区块为健康数据区块2和健康数据区块3,则所述服务器可以获取所述健康数据区块2的患者标识a和区块标识2,以及健康数据区块3的患者标识b和区块标识3,根据所述患者标识a和区块标识2、患者标识b和区块标识3,生成所述健康数据区块被非法篡改的区块标识列表。

在一个实施例中,所述健康数据区块中携带了患者标识,服务器在对所述健康数据区块链的完整性校验失败之后,可以确定所述被非法篡改的目标健康数据区块,并向所述诊疗终端发送提示信息,其中,所述提示信息中携带了患者标识,所述提示信息用于提示所述患者标识对应的目标健康数据区块的健康数据被非法篡改,以使所述诊疗终端可以重新上传所述患者标识对应的目标健康数据区块。通过这种方式可以使诊疗终端重新上传被非法篡改的健康数据区块,补全所述健康数据区块链的健康数据区块,确保所述健康数据区块链中数据的完整性。

例如,假设所述服务器获取到1、2、3、、、n,n个连续的健康数据区块,且所述n个健康数据区块的区块标识对应为1、2、3、、、n,如果所述服务器确定出所述各健康数据区块中被非法篡改的目标健康数据区块为健康数据区块2和健康数据区块3,且所述服务器获取到所述健康数据区块2的患者标识为a,以及获取到所述健康数据区块3的患者标识为b,则所述服务器可以向所述诊疗终端发送提示信息,以提示所述诊疗终端所述患者标识a对应的健康数据区块2和所述患者标识b对应的健康数据区块3被非法篡改,以使所述诊疗终端可以重新上传所述患者标识a对应的健康数据区块2和所述患者标识b对应的健康数据区块3。

本发明实施例中,服务器可以获取诊疗终端发送的至少一个患者的健康数据区块,根据每一个患者标识对应的各健康数据区块的健康数据类型,对所述各患者的健康数据区块进行分类,按照预设的健康数据类型的先后顺序,对分类后的各患者标识对应的健康数据区块进行排序,并根据排序后的健康数据区块生成健康数据区块链,以便提高用户对健康数据区块的查询效率。所述服务器可以获取所述健康数据区块链中各健康数据区块的区块哈希码,并根据预设的检测周期,检测所述各健康数据区块中相邻健康数据区块间的区块哈希码是否相关联,如果不相关联,则可以确定所述健康数据区块链的完整性校验失败,并确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块。通过这种方式,可以提高数据的安全性,确保所述健康数据区块链中数据的完整性。

请参见图3,图3是本发明实施例提供的又一种基于区块链的健康数据校验方法的示意流程图,如图3所示,该方法可以由数据校验设备执行,该数据校验设备的具体解释如前所述,此处不再赘述。本发明实施例与上述图2所述实施例的区别在于,本发明实施例是对所述健康数据区块链中的各健康数据区块进行校验的另一种实施过程进行详细的说明。具体地,本发明实施例的所述方法包括如下步骤。

s301:获取诊疗终端发送的至少一个患者的健康数据区块。

本发明实施例中,服务器可以获取诊疗终端发送的至少一个患者的健康数据区块。其中,所述健康数据区块的解释如前所述,以及所述健康数据的解释如前所述,此处不再赘述。

s302:根据每一个患者标识对应的各健康数据区块的健康数据类型,对所述各患者的健康数据区块进行分类。

本发明实施例中,服务器可以根据每一个患者标识对应的各健康数据区块的健康数据类型,对所述各患者的健康数据区块进行分类。具体实施过程及举例说明如前所述,此处不再赘述。

s303:按照预设的健康数据类型的先后顺序,对分类后的各患者标识对应的健康数据区块进行排序,并根据排序后的健康数据区块生成健康数据区块链。

本发明实施例中,服务器可以按照预设的健康数据类型的先后顺序,对分类后的各患者标识对应的健康数据区块进行排序,并根据排序后的健康数据区块生成健康数据区块链。具体实施过程及示意性说明如前所述,此处不再赘述。

在一个实施例中,服务器在当获取到第三方发送的健康数据获取请求时,可以获取所述健康数据获取请求携带的加密信息,其中,所述加密信息可以包括加密算法和密钥。

在某些实施例中,所述健康数据获取请求可以是针对所述健康数据区块链中所有的健康数据区块的获取请求。在某些实施例中,所述健康数据获取请求中可以携带目标患者标识,以获取所述目标患者标识对应的健康数据区块。在某些实施例中,所述健康数据获取请求中可以携带目标区块标识,以获取所述目标区块标识对应的健康数据区块。在某些实施例中,所述健康数据获取请求中可以携带目标患者标识和目标区块标识,以获取与所述目标患者标识和目标区块标识对应的健康数据区块。

在一个实施例中,所述服务器在接收到第三方发送的健康数据获取请求时,可以获取所述健康数据区块链中各健康数据区块的区块哈希码。在某些实施例中,所述区块哈希码是所述服务器在根据各健康数据区块生成健康数据区块链之前,根据预设的加密算法对所述健康数据区块进行加密得到的。在某些实施例中,所述预设的加密算法可以是预设的哈希算法如sha256,本发明实施例对所述预设的加密算法不做具体的限定。

在一个实施例中,所述健康数据获取请求包括身份验证信息,所述服务器在接收到第三方发送的健康数据获取请求之后,对所述健康数据区块链进行完整性校验之前,可以根据所述健康数据获取请求,获取所述身份验证信息,在某些实施例中,所述身份验证信息包括密码、指纹、语音中的任意一种或多种信息。所述服务器可以将所述身份验证信息与预设的身份验证信息进行匹配,如果匹配成功,则触发执行所述对所述健康数据区块链进行完整性校验的步骤。通过这种方式对发送健康数据获取请求的第三方进行身份验证,可以确保第三方的安全性,避免将所述健康数据发送给没有授权的非法用户,进一步确保了所述健康数据的安全性。

s304:根据所述健康数据区块链中各健康数据区块的加密信息,对所述各健康数据区块进行加密处理,生成所述各健康数据区块对应的校验哈希码。

本发明实施例中,服务器可以根据所述健康数据区块链中各健康数据区块的加密信息,对所述各健康数据区块进行加密处理,生成所述各健康数据区块对应的校验哈希码。

在一个实施例中,所述服务器在获取到第三方发送的健康数据获取请求之后,可以根据所述加密信息中的加密算法和密钥,对所述各健康数据区块进行加密处理,生成所述各健康数据区块的校验哈希码。

例如,假设所述服务器获取到的加密算法为哈希算法sha256,密钥为xyz,如果所述健康数据区块链包括1、2、3、、、n,n个连续的健康数据区块,则所述服务器可以根据所述哈希算法sha256和密钥xyz对所述各健康数据区块进行加密处理,生成所述各健康数据区块的校验哈希码。

在一个实施例中,所述健康数据获取请求中携带了目标患者标识和/或目标区块标识,所述服务器可以根据与所述目标患者标识和/或目标区块标识对应的加密信息中的加密算法和密钥,对与所述目标患者标识和/或目标区块标识对应的健康数据区块进行加密处理,生成与所述目标患者标识和/或目标区块标识对应的健康数据区块的校验哈希码。

例如,假设所述健康数据请求中携带的区块标识为2,所述服务器获取到的与所述健康数据区块2对应的加密算法为哈希算法sha256,密钥为xyz,则所述服务器可以根据所述加密算法sha256和密钥xyz,对所述健康数据区块2进行加密处理,生成所述健康数据区块2的校验哈希码。

s305:检测所述各健康数据区块对应的校验哈希码是否与所述健康数据区块的区块哈希码匹配,如果匹配,则执行步骤s306,如果不匹配,则执行步骤s307。

本发明实施例中,服务器在获取到各健康数据区块对应的校验哈希码之后,可以检测所述各健康数据区块对应的校验哈希码是否与所述健康数据区块的区块哈希码匹配,如果匹配,则执行步骤s306,如果不匹配,则执行步骤s307。

s306:确定所述健康数据区块链的完整性校验成功。

本发明实施例中,服务器如果检测到所述各健康数据区块对应的校验哈希码与所述健康数据区块的区块哈希码匹配,则可以确定所述健康数据区块链的完整性校验成功。

在一个实施例中,所述服务器在对所述健康数据区块链进行完整性校验之前,如果获取到第三方发送的健康数据获取请求,则所述服务器可以在确定所述健康数据区块链的校验成功之后,将与所述健康数据获取请求对应的各健康数据区块发送给所述第三方。

s307:确定所述健康数据区块链的完整性校验失败,并确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块。

本发明实施例中,服务器如果检测到所述各健康数据区块对应的校验哈希码与所述健康数据区块的区块哈希码不匹配,则可以确定所述健康数据区块链的完整性校验失败,并确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块。

在一个实施例中,所述服务器在确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块之后,可以获取所述各健康数据区块中区块哈希码与所述各健康数据区块的校验哈希码不匹配的至少一个目标健康数据区块,确定所述至少一个目标健康数据区块为所述被非法篡改的健康数据区块。

在一个实施例中,如果所述服务器在确定所述健康数据区块链中存在健康数据被非法篡改的健康数据区块之前,获取到了第三方发送的健康数据获取请求,如果服务器确定出所述健康数据区块链中与所述健康数据获取请求对应的健康数据区块被非法篡改,则可以拒绝所述第三方发送的健康数据获取请求,并确定出与所述健康数据获取请求对应的被非法篡改的目标健康数据区块,以向所述第三方发送提示信息,其中,所述提示信息用于提示所述目标健康数据区块的健康数据被非法篡改。通过这种方式,避免将被非法篡改后的健康数据区块发送给第三方。

在一个实施例中,所述服务器在确定出被非法篡改的目标健康数据区块之后,可以向诊疗终端发送提示信息,所述提示信息中携带了所述目标健康数据区块的患者标识和区块标识,以提示所述诊疗终端所述目标健康数据区块被非法篡改,以使所述诊疗终端可以重新上传所述目标健康数据区块。通过这种方式可以使诊疗终端重新上传被非法篡改的目标健康数据区块,确保了所述健康数据区块链中数据的完整性。具体实施例的举例说明如前所述,此处不再赘述。

本发明实施例中,服务器可以获取诊疗终端发送的至少一个患者的健康数据区块,并根据每一个患者标识对应的各健康数据区块的健康数据类型,对所述各患者的健康数据区块进行分类。所述服务器可以按照预设的健康数据类型的先后顺序,对分类后的各患者标识对应的健康数据区块进行排序,并根据排序后的健康数据区块生成健康数据区块链。所述服务器可以根据所述健康数据区块链中各健康数据区块的加密信息,对所述各健康数据区块进行加密处理,生成所述各健康数据区块对应的校验哈希码。如果检测到所述校验哈希码与所述区块哈希码不匹配,则可以确定所述健康数据区块链的完整性校验失败,从而确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块。通过这种方式,可以确保所述健康数据区块链中数据的完整性,避免将被非法篡改后的健康数据区块发送给第三方,提高了数据安全性。

本发明实施例还提供了一种数据校验设备,该数据校验设备用于执行前述任一项所述的方法的单元。具体地,参见图4,图4是本发明实施例提供的一种数据校验设备的示意框图。本实施例的数据校验设备包括:获取单元401、分类单元402、生成单元403、校验单元404、第一确定单元405和第二确定单元406。

获取单元401,用于获取诊疗终端发送的至少一个患者的健康数据区块,其中,所述健康数据区块是根据各患者的健康数据类型生成的,所述健康数据区块中包括患者标识和所述患者标识对应的健康数据,所述健康数据包括疾病数据、体检数据、运动数据、生活习惯数据中的任意一种或多种;

分类单元402,用于根据每一个患者标识对应的各健康数据区块的健康数据类型,对所述各患者的健康数据区块进行分类;

生成单元403,用于按照预设的健康数据类型的先后顺序,对分类后的各患者标识对应的健康数据区块进行排序,并根据排序后的健康数据区块生成健康数据区块链;

校验单元404,用于对所述健康数据区块链进行完整性校验;

第一确定单元405,用于如果校验成功,则确定所述健康数据区块链中的健康数据区块完整;

第二确定单元406,用于如果校验失败,则确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块。

进一步地,所述健康数据区块包括区块哈希码;所述校验单元404对所述健康数据区块链进行完整性校验时,具体用于:

获取所述健康数据区块链中各健康数据区块的区块哈希码;

根据预设的检测周期,检测所述各健康数据区块中相邻健康数据区块间的区块哈希码是否相关联;

如果检测结果为是,则确定所述健康数据区块链的完整性校验成功;

如果检测结果为否,则确定所述健康数据区块链的完整性校验失败。

进一步地,所述第一确定单元405在确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块之后,还用于:

获取所述各健康数据区块中相邻健康数据区块间的区块哈希码不关联的多个目标健康数据区块;

检测各目标健康数据区块是否与相邻的其他健康数据区块间的区块哈希码相关联,所述相邻的其他健康数据区块是在所述健康数据区块链中与所述目标健康数据区块相邻的健康数据区块;

如果检测结果为否,则确定所述各目标健康数据区块中与相邻的其他健康数据区块间的区块哈希码不关联的目标健康数据区块为被非法篡改的健康数据区块。

进一步地,所述健康数据区块包括区块哈希码;所述校验单元404对所述健康数据区块链进行完整性校验时,具体用于:

根据所述健康数据区块链中各健康数据区块的加密信息,对所述各健康数据区块进行加密处理,生成所述各健康数据区块对应的校验哈希码;

检测所述各健康数据区块对应的校验哈希码是否与所述健康数据区块的区块哈希码匹配;

如果检测结果为是,则确定所述健康数据区块链的完整性校验成功;

如果检测结果为否,则确定所述健康数据区块链的完整性校验失败。

进一步地,所述第一确定单元405确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块之后,还用于:

获取所述各健康数据区块中区块哈希码与所述各健康数据区块的校验哈希码不匹配的至少一个目标健康数据区块;

确定所述至少一个目标健康数据区块为所述被非法篡改的健康数据区块。

进一步地,所述健康数据区块包括患者标识;所述第一确定单元405在确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块之后,还用于:

确定所述被非法篡改的健康数据区块对应的至少一个患者标识;

根据所述至少一个患者标识,生成所述健康数据区块被非法篡改的患者标识列表;

向所述患者标识列表中的各患者标识对应的终端发送通知消息,以通知所述各患者标识对应的终端健康数据区块被篡改。

进一步地,所述健康数据区块包括区块标识,所述第一确定单元405,还用于:

确定所述被非法篡改的健康数据区块对应的至少一个区块标识;

根据所述至少一个患者标识和所述至少一个区块标识,生成所述健康数据区块被非法篡改的区块标识列表;

向所述患者标识列表中的各患者标识对应的终端发送健康数据区块的获取请求,以使所述各患者标识对应的终端重新上传健康数据区块;

将所述各患者标识对应的终端重新上传的所述健康数据区块放入所述健康数据区块链中所述各患者标识对应的区块标识对应的位置。

本发明实施例中,服务器可以获取诊疗终端发送的至少一个患者的健康数据区块,根据每一个患者标识对应的各健康数据区块的健康数据类型,对所述各患者的健康数据区块进行分类,按照预设的健康数据类型的先后顺序,对分类后的各患者标识对应的健康数据区块进行排序,并根据排序后的健康数据区块生成健康数据区块链,对所述健康数据区块链进行完整性校验,如果校验成功,则确定所述健康数据区块链中的健康数据区块完整,如果校验失败,则确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块。通过这种方式,确保了所述健康数据区块的完整性,提高了健康数据的安全性。

请参见图5,图5是本发明实施例提供的一种服务器的示意框图。如图所示的本实施例中的服务器可以包括:一个或多个处理器501;一个或多个输入设备502,一个或多个输出设备503和存储器504。上述处理器501、输入设备502、输出设备503和存储器504通过总线505连接。存储器504用于存储计算机程序,所述计算机程序包括程序指令,处理器501用于执行存储器504存储的程序指令。其中,处理器501被配置用于调用所述程序指令执行:

获取诊疗终端发送的至少一个患者的健康数据区块,其中,所述健康数据区块是根据各患者的健康数据类型生成的,所述健康数据区块中包括患者标识和所述患者标识对应的健康数据,所述健康数据包括疾病数据、体检数据、运动数据、生活习惯数据中的任意一种或多种;

根据每一个患者标识对应的各健康数据区块的健康数据类型,对所述各患者的健康数据区块进行分类;

按照预设的健康数据类型的先后顺序,对分类后的各患者标识对应的健康数据区块进行排序,并根据排序后的健康数据区块生成健康数据区块链;

对所述健康数据区块链进行完整性校验;

如果校验成功,则确定所述健康数据区块链中的健康数据区块完整;

如果校验失败,则确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块。

进一步地,所述健康数据区块包括区块哈希码,所述处理器501对所述健康数据区块链进行完整性校验时,具体用于:

获取所述健康数据区块链中各健康数据区块的区块哈希码;

根据预设的检测周期,检测所述各健康数据区块中相邻健康数据区块间的区块哈希码是否相关联;

如果检测结果为是,则确定所述健康数据区块链的完整性校验成功;

如果检测结果为否,则确定所述健康数据区块链的完整性校验失败。

进一步地,所述处理器501确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块之后,还用于:

获取所述各健康数据区块中相邻健康数据区块间的区块哈希码不关联的多个目标健康数据区块;

检测各目标健康数据区块是否与相邻的其他健康数据区块间的区块哈希码相关联,所述相邻的其他健康数据区块是在所述健康数据区块链中与所述目标健康数据区块相邻的健康数据区块;

如果检测结果为否,则确定所述各目标健康数据区块中与相邻的其他健康数据区块间的区块哈希码不关联的目标健康数据区块为被非法篡改的健康数据区块。

进一步地,所述健康数据区块包括区块哈希码;所述处理器501对所述健康数据区块链进行完整性校验时,具体用于:

根据所述健康数据区块链中各健康数据区块的加密信息,对所述各健康数据区块进行加密处理,生成所述各健康数据区块对应的校验哈希码;

检测所述各健康数据区块对应的校验哈希码是否与所述健康数据区块的区块哈希码匹配;

如果检测结果为是,则确定所述健康数据区块链的完整性校验成功;

如果检测结果为否,则确定所述健康数据区块链的完整性校验失败。

进一步地,所述处理器501确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块之后,还用于:

获取所述各健康数据区块中区块哈希码与所述各健康数据区块的校验哈希码不匹配的至少一个目标健康数据区块;

确定所述至少一个目标健康数据区块为所述被非法篡改的健康数据区块。

进一步地,所述健康数据区块包括患者标识,所述处理器501确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块之后,还用于:

确定所述被非法篡改的健康数据区块对应的至少一个患者标识;

根据所述至少一个患者标识,生成所述健康数据区块被非法篡改的患者标识列表;

向所述患者标识列表中的各患者标识对应的终端发送通知消息,以通知所述各患者标识对应的终端健康数据区块被篡改。

进一步地,所述健康数据区块包括区块标识;所述处理器501还用于:

确定所述被非法篡改的健康数据区块对应的至少一个区块标识;

根据所述至少一个患者标识和所述至少一个区块标识,生成所述健康数据区块被非法篡改的区块标识列表;

向所述患者标识列表中的各患者标识对应的终端发送健康数据区块的获取请求,以使所述各患者标识对应的终端重新上传健康数据区块;

将所述各患者标识对应的终端重新上传的所述健康数据区块放入所述健康数据区块链中所述各患者标识对应的区块标识对应的位置。

本发明实施例中,服务器可以获取诊疗终端发送的至少一个患者的健康数据区块,根据每一个患者标识对应的各健康数据区块的健康数据类型,对所述各患者的健康数据区块进行分类,按照预设的健康数据类型的先后顺序,对分类后的各患者标识对应的健康数据区块进行排序,并根据排序后的健康数据区块生成健康数据区块链,对所述健康数据区块链进行完整性校验,如果校验成功,则确定所述健康数据区块链中的健康数据区块完整,如果校验失败,则确定所述健康数据区块链中存在健康数据信息被非法篡改的健康数据区块。通过这种方式,确保了所述健康数据区块的完整性,提高了健康数据的安全性。

应当理解,在本发明实施例中,所称处理器501可以是中央处理单元(centralprocessingunit,cpu),该处理器还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

输入设备502可以包括触控板、麦克风等,输出设备503可以包括显示器(lcd等)、扬声器等。

该存储器504可以包括只读存储器和随机存取存储器,并向处理器501提供指令和数据。存储器504的一部分还可以包括非易失性随机存取存储器。例如,存储器504还可以存储设备类型的信息。

具体实现中,本发明实施例中所描述的处理器501、输入设备502、输出设备503可执行本发明实施例提供的基于区块链的健康数据校验方法的图1、图2或图3所述的方法实施例中所描述的实现方式,也可执行本发明实施例图4所描述的数据校验设备的实现方式或图5所描述的服务器的实现方式,在此不再赘述。

本发明实施例中还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现图1、图2或图3所对应实施例中描述的基于区块链的健康数据校验方法,也可实现本发明图4所对应实施例的数据校验设备或图5所描述的服务器,在此不再赘述。

所述计算机可读存储介质可以是前述任一实施例所述的数据校验设备的内部存储单元,例如数据校验设备的硬盘或内存。所述计算机可读存储介质也可以是所述数据校验设备的外部存储设备,例如所述数据校验设备上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,所述计算机可读存储介质还可以既包括所述数据校验设备的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述数据校验设备所需的其他程序和数据。所述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,诊疗终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的部分实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1