CN113886499B - 基于区块链的病理数据分享方法、分享系统及计算设备 - Google Patents
基于区块链的病理数据分享方法、分享系统及计算设备 Download PDFInfo
- Publication number
- CN113886499B CN113886499B CN202111217875.3A CN202111217875A CN113886499B CN 113886499 B CN113886499 B CN 113886499B CN 202111217875 A CN202111217875 A CN 202111217875A CN 113886499 B CN113886499 B CN 113886499B
- Authority
- CN
- China
- Prior art keywords
- data
- pathological
- hash value
- value
- pathological data
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H10/00—ICT specially adapted for the handling or processing of patient-related medical or healthcare data
- G16H10/60—ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Bioethics (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Epidemiology (AREA)
- Primary Health Care (AREA)
- Public Health (AREA)
- Medical Treatment And Welfare Office Work (AREA)
Abstract
本公开描述了一种基于区块链的病理数据分享方法,包括接收第一对象输入的包括病理数据的访问路径的分享数据请求,将包括病理数据特征、数据来源和访问路径的病理数据信息和病理数据的估值上链,其中,病理数据特征包括病理数据标识和第一哈希值;从区块链调用入账合约以基于病理数据的估值增加第一对象的资产值并将增加后的资产值上链;接收第二对象输入的包括病理数据标识的使用数据请求,若哈希值校验通过,则返回响应数据,并调用入账合约以更新第一对象和第二对象的资产值,将更新后的资产值上链;当病理数据被使用时,通过调用区块链上的记录合约将病理数据的使用记录上链。由此,能够有效地促进病理数据的分享且具有可追溯性。
Description
技术领域
本公开大体涉及一种基于区块链的病理数据分享方法、分享系统及计算设备。
背景技术
目前病理数据例如数字病理图像的分析使用日益趋近场景化和专业化。例如,基于超清晰度的数字病理图像和深度学习技术能够辅助临床进行病理分析。因此,基于病理数据进行各类疾病的深入研究已经成为病理学领域的热门研究方向。在这种情况下,如何可靠、安全且有效地分享病理数据显得至关重要。
在实际情况下,不同的医疗机构都有属于自己的院内信息系统对内部的病理数据进行管理,且病理数据一般比较大,常常使得病理数据的分享变得困难。近年来,随着区块链技术的发展,一些研究者开始基于区块链技术进行病理数据的分享。例如,数据提供方将病理数据的索引数据保存至区块链上,数据使用方在通过授权情况下,能够从区块链上读取索引数据以基于索引数据获取病理数据。然而,上述的技术方案往往容易忽略如何促进病理数据的分享以及分享的可追溯性。在这种情况下,病理数据的流向的清晰性还有待于提高,且缺乏激励机制,无法有效地对病理数据进行分享。
发明内容
本公开是有鉴于上述的状况而提出的,其目的在于提供一种能够有效地促进病理数据的分享且具有可追溯性的基于区块链的病理数据分享方法、分享系统及计算设备。
为此,本公开第一方面提供了一种基于区块链的病理数据分享方法,包括:接收第一对象输入的包括所述病理数据的访问路径的分享数据请求,基于所述访问路径获取病理数据并进行哈希值计算以生成针对所述病理数据的文件的哈希值作为第一哈希值,通过调用部署在所述区块链上的数据合约将包括病理数据特征、数据来源和所述访问路径的病理数据信息上链,其中,所述病理数据特征包括病理数据标识和所述第一哈希值;对所述病理数据进行价值评估以获取所述病理数据的估值,通过调用所述区块链上的价值合约将包括所述病理数据标识和所述估值的估值信息上链;调用部署在所述区块链上的入账合约以基于所述估值增加第一对象的资产值并将增加后的第一对象的资产值上链;接收第二对象输入的包括所述病理数据标识的使用数据请求,通过调用所述数据合约查询与所述病理数据标识对应的病理数据信息,基于所述病理数据信息中的第一哈希值进行哈希值校验,若校验通过,则返回所述使用数据请求对应的响应数据,并通过调用所述区块链上的记录合约将所述病理数据的使用记录上链,其中,在哈希值校验中,基于所述病理数据标识对应的访问路径对该访问路径对应的病理数据进行所述哈希值计算以生成相应的哈希值作为第二哈希值,然后基于所述第一哈希值和所述第二哈希值进行校验,所述响应数据为基于所述病理数据和所述使用数据请求获得的数据;并且调用所述入账合约以基于所述估值更新第一对象的资产值和第二对象的资产值以令第一对象的资产值增加和第二对象的资产值减少,然后将更新后的第一对象的资产值和第二对象的资产值上链。在这种情况下,利用区块链的去中心化、分布式存储和不可篡改等特性,将病理数据分享和使用过程的病理数据信息、估值信息、第一对象和第二对象的资产值和资产值变化、以及使用记录记录至区块链上,能够使病理数据的分享具有可追溯性,且通过哈希值校验降低病理数据被篡改的风险。另外,获取病理数据的估值信息并基于估值信息增加第一对象的资产值。由此,能够促进病理数据的分享。
另外,在本公开第一方面所涉及的病理数据分享方法,可选地,在第一对象和/或第二对象的资产值发生变化时,通过调用所述区块链上的对账合约将第一对象和/或第二对象的资产值的增减记录上链,其中,所述增减记录包括引起资产值发生变化的事件信息。由此,能够清晰地确定资产值变化的原因。
另外,在本公开第一方面所涉及的病理数据分享方法,可选地,所述第一哈希值包括整体哈希值和分块哈希值中的至少一种,其中,所述整体哈希值为整个病理数据对应的哈希值,所述分块哈希值为对所述病理数据进行分块存储时获得的子分块对应的哈希值,在哈希值计算中,根据所述病理数据的存储方式生成相应的第一哈希值。由此,能够适应病理数据的不同存储方式和使用方式的哈希值校验。
另外,在本公开第一方面所涉及的病理数据分享方法,可选地,在所述基于所述病理数据标识对应的访问路径对该访问路径对应的病理数据进行所述哈希值计算以生成相应的哈希值作为第二哈希值中:若基于包括整个病理数据的数据获得所述响应数据,则所述第二哈希值包括所述整体哈希值;若基于包括所述病理数据的子分块的数据获得所述响应数据,则所述第二哈希值包括所述分块哈希值。在这种情况下,能够将哈希值校验的粒度细化到子分块。由此,能够识别子文件例如子分块是否被篡改。
另外,在本公开第一方面所涉及的病理数据分享方法,可选地,所述使用数据请求包括浏览数据请求、经由数据授权下载协议确认的下载数据请求和计算数据请求;所述使用记录包括使用对象、使用方式、使用数据信息和使用结果;若所述使用数据请求为所述计算数据请求,则利用机器学习模型对所述病理数据进行计算分析以获得分析结果,其中,对于所述计算数据请求,所述使用数据信息包括所述机器学习模型,所述使用结果为所述分析结果。由此,能够支持浏览病理数据、下载病理数据和对病理数据进行计算分析等多种应用场景。
另外,在本公开第一方面所涉及的病理数据分享方法,可选地,在接收所述分享数据请求之前和/或在接收所述使用数据请求之前,还包括:接收由第一对象和/或第二对象的输入的包括身份信息的注册请求,通过调用部署在所述区块链上的账号合约对所述身份信息进行认证,若认证通过,则将所述身份信息上链并返回包括所述身份信息对应的公钥和私钥的身份标识。由此,能够提高加入区块链的各个业务方的可靠性。
另外,在本公开第一方面所涉及的病理数据分享方法,可选地,通过调用所述区块链上的溯源合约查询所述病理数据的数据来源和所述病理数据的使用记录;通过调用所述区块链上的资产合约查询第一对象的病理数据、病理数据的使用记录、以及病理数据的估值。在这情况下,能够追溯病理数据的分享和使用。另外,能够获得第一对象当前拥有的病理数据和对应的估值,以及病理数据被使用的情况。
另外,在本公开第一方面所涉及的病理数据分享方法,可选地,根据所述病理数据的数据指标对所述病理数据进行价值评估以获取所述病理数据的估值,其中,所述数据指标包括数据格式、数据版本、数据来源、数据大小、数据类型和被使用次数;所述病理数据特征还包括数据组成、数据版本和数据格式。
本公开第二方面提供了一种基于区块链的病理数据分享系统,包括分享单元和使用单元;所述分享单元配置为接收第一对象输入的包括病理数据的访问路径的分享数据请求,基于所述访问路径获取所述病理数据并进行哈希值计算以生成针对所述病理数据的文件的哈希值作为第一哈希值,通过调用部署在所述区块链上的数据合约将包括病理数据特征、数据来源和所述访问路径的病理数据信息上链,其中,所述病理数据特征包括病理数据标识和所述第一哈希值;所述分享单元还配置为对所述病理数据进行价值评估以获取所述病理数据的估值,通过调用所述区块链上的价值合约将包括所述病理数据标识和所述估值的估值信息上链;所述分享单元还配置为调用部署在所述区块链上的入账合约以基于所述估值增加第一对象的资产值并将增加后的第一对象的资产值上链;以及所述使用单元配置为接收第二对象输入的包括所述病理数据标识的使用数据请求,通过调用所述数据合约查询与所述病理数据标识对应的病理数据信息,基于所述病理数据信息中的第一哈希值进行哈希值校验,若校验通过,则返回所述使用数据请求对应的响应数据,并通过调用所述区块链上的记录合约将所述病理数据的使用记录上链,其中,在哈希值校验中,基于所述病理数据标识对应的访问路径对该访问路径对应的病理数据进行所述哈希值计算以生成相应的哈希值作为第二哈希值,然后基于所述第一哈希值和所述第二哈希值进行校验,所述响应数据为基于所述病理数据和所述使用数据请求获得的数据;所述使用单元还配置为调用所述入账合约以基于所述估值更新第一对象的资产值和第二对象的资产值以令第一对象的资产值增加和第二对象的资产值减少,然后将更新后的第一对象的资产值和第二对象的资产值上链。在这种情况下,利用区块链的去中心化、分布式存储和不可篡改等特性,将病理数据分享和使用过程的病理数据信息、估值信息、第一对象和第二对象的资产值和资产值变化、以及使用记录记录至区块链上,能够使病理数据的分享具有可追溯性,且通过哈希值校验降低病理数据被篡改的风险。另外,获取病理数据的估值信息并基于估值信息增加第一对象的资产值。由此,能够促进病理数据的分享。
本公开第三方面提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述的病理数据分享方法。
根据本公开,提供一种能够有效地促进病理数据的分享且具有可追溯性的基于区块链的病理数据分享方法、分享系统及计算设备。
附图说明
现在将仅通过参考附图的例子进一步详细地解释本公开,其中:
图1是示出了本公开示例所涉及的基于区块链的病理数据分享方法的应用场景示意图。
图2示出了本公开示例所涉及的联盟链节点架构的示意图。
图3示出了本公开示例所涉及的系统架构的示意图。
图4是示出了本公开示例所涉及的基于区块链的病理数据分享方法的流程图。
图5是示出了本公开示例所涉及的哈希值计算的流程图。
图6是示出了本公开示例所涉及的基于区块链的病理数据分享方法的另一种流程图。
图7是示出了本公开示例所涉及的基于区块链的病理数据分享系统的框图。
具体实施方式
以下,参考附图,详细地说明本公开的优选实施方式。在下面的说明中,对于相同的部件赋予相同的符号,省略重复的说明。另外,附图只是示意性的图,部件相互之间的尺寸的比例或者部件的形状等可以与实际的不同。
需要说明的是,本公开中的术语“包括”和“具有”以及它们的任何变形,例如所包括或所具有的一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可以包括或具有没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。本公开所描述的所有方法可以以任何合适的顺序执行,除非在此另有指示或者与上下文明显矛盾。在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本公开涉及的基于区块链的病理数据分享方法、分享系统及计算设备能够有效地促进病理数据的分享且可对病理数据的分享和使用进行追溯。另外,基于区块链的病理数据分享方法、分享系统及计算设备能够基于分布式的方式存储信息且能够验证区块中的内容的真实性,还具有不可篡改性。本公开涉及的基于区块链的病理数据分享方法有时也可以称为病理数据分享方法、病理数据共享方法、分享方法或共享方法等。以下对本公开示例所涉及的部分概念进行介绍。
对象可以指参与分享和使用病理数据的各个业务方,其中,第一对象可以是数据提供方,例如第一对象可以是医疗机构,第二对象可以是数据使用方,例如第二对象可以是医疗机构、服务机构或科研机构。在一些示例中,数据提供方可以同时是数据使用方,数据使用方也可以同时是数据提供方。也即,在参与病理数据分享的同时,也可以使用自己或他人分享的病理数据。在一些示例中,对象还可以是监管机构。由此,能够对病理数据的分享和使用进行监管。
联盟链可以是允许授权的节点加入网络(也即,只是针对特定的群体或第三方)的区块链。联盟链也可以称为联盟链网络或联盟区块链。在一些示例中,联盟链可以是基于超级帐本(Hyperledger Fabric)的区块链。在一些示例中,各个业务方可以共同建立一个联盟链。例如医疗机构、监管机构、服务机构和科研机构等各业务方可以共同建立一个联盟链,其中,各个业务方可以作为联盟链的节点。在这种情况下,联盟链的节点之间能够互相通信以对病理数据进行分享和使用。
在一些示例中,终端设备与联盟链的节点之间和联盟链的节点与节点之间可以实行传输层安全(Transport Layer Security,TLS)双向认证并通信。由此,能够提高通信连接的安全性。另外,联盟链的节点可以对每一个上链请求都进行共识处理,若共识通过,则可以分别存储上链请求中的上链信息(上链信息例如可以为病理数据信息、使用记录、估值信息、资产值或增减记录等)。由此,能够有利于后续对病理数据进行追溯。
在一些示例中,联盟链中的各个节点的标识可以由椭圆曲线密码学(EllipticCurve Cryptography,ECC)算法的公钥生成,每个节点具有唯一的ECC密钥对(也即公钥和私钥),节点的标识可以在联盟链中唯一标识一个区块链节点。在一些示例中,节点中的发送方可以对需要发送的消息内容(例如上述的上链信息)进行哈希运算以形成第一数字摘要,并用私钥对第一数字摘要进行加密以形成第一数字签名。对应地,节点中的接收方可以对接收的消息内容进行哈希运算以形成第二数字摘要,并利用相应的公钥对接收的第一数字签名进行解密后获取第一数字摘要,然后对第一数字摘要和第二数字摘要进行对比。如果两个值一致,则可以表示上述的消息内容是发送方发出的且没有被篡改过。
在一些示例中,数据合约、价值合约、入账合约、记录合约、对账合约、账号合约、溯源合约和资产合约均可以属于智能合约。智能合约可以是“执行合约条款的计算机交易协议”。区块链上的所有用户例如各个业务方都可以看到基于区块链的智能合约。智能合约可以由加入联盟链的各个节点共同制定。
在一些示例中,病理数据可以是能够用于分析病理的数据。病理数据的数据类型可以包括文本、影像和图像中的至少一种。病理数据一般非常大。例如,数字病理图像中的全片切片图像(Whole Slide Image,WSI),WSI图像的大小可以为600Mb至10Gb,因此传统的分享方法一般不适用于病理数据。另外,需与病理数据的来源者例如患者签署了知情同意书且进行了脱敏处理的病理数据才允许存储至区块链中进行分享。
以下结合附图进行详细描述本公开。此外,为了更加清楚的说明本公开的技术方案,本公开所涉及的示例主要是以区块链为联盟链为例进行详细介绍,当区块链为其他区块链时也同样适用,并不构成对于本公开提供的技术方案的限定。图1是示出了本公开示例所涉及的基于区块链的病理数据分享方法的应用场景示意图。
在如图1所示的示例性的应用场景中,第一对象A可以将病理数据的相关信息存储至联盟链110中以对病理数据进行分享,第二对象B可以从联盟链110中获取病理数据的相关信息,进而能够获取病理数据并使用。在一些示例中,第一对象A和第二对象B可以通过终端设备提交数据请求。例如,可以通过终端设备访问分享和使用病理数据的相关可视化界面以提交数据请求。在一些示例中,数据请求可以包括但不限于分享数据请求、使用数据请求和注册请求等。在一些示例中,终端设备可以包括但不限于笔记本电脑、平板电脑、手机或台式机等。
图2示出了本公开示例所涉及的联盟链110节点架构的示意图。
如上所述,在一些示例中,各个业务方可以共同建立一个联盟链110(也即,各个业务方可以为联盟链110中的节点)。例如,如图2所示,医疗机构C1、监管机构C2、服务机构C3和科研机构C4等业务方可以共同建立一个联盟链110。在一些示例中,联盟链110中的节点可以是服务器。例如,各个业务方的服务器。在一些示例中,服务器可以包括但不限于是独立的物理服务器、多个物理服务器构成的服务器集群或分布式系统、或云服务器等。
图3示出了本公开示例所涉及的系统架构的示意图。
在一些示例中,如图3所示,可以通过代理接口120接收数据请求。也即,可以通过代理接口120进行前置处理后返回相应的响应信息至第一对象A或第二对象B,进而第一对象A或第二对象B可以对响应信息进行进一步处理或直接存储至联盟链110上,其中,响应信息可以包括请求使用数据请求获得的响应数据(稍后描述)。在这种情况下,通过代理接口120能够统一对数据请求进行监控。另外,能够降低对本地算力(例如第一对象A或第二对象B用于发送数据请求的终端设备的算力)的要求。在一些示例中,代理接口120可以以支持负载均衡的方式部署。由此,能够接收大量的数据请求。但本公开的示例不限于此,在另一些示例中,代理接口120也可以不是必须的。
在一些示例中,数据请求中至少可以包括请求方的信息和事务类型。在一些示例中,请求方的信息可以是第一对象A或第二对象B的身份信息认证通过后获得的身份标识。在一些示例中,事务类型可以包括但不限于注册、分享(也即,对病理数据进行分享)、浏览(也即,浏览病理数据)、下载(也即,下载病理数据)和计算分析(也即,对病理数据进行计算分析以获取分析结果)等。在一些示例中,可以对数据请求进行记录以生成数据请求记录(也可以称为记账记录)。在一些示例中,可以通过代理接口120对数据请求进行记录以生成数据请求记录。在一些示例中,数据请求记录可以包括请求信息和与请求信息对应的响应信息。在一些示例中,可以将数据请求记录关联请求方的信息和事务类型。由此,能够方便且直观地获得各个请求方已进行的事务。在一些示例中,数据请求记录可以用于计算有效的使用记录(也可以称为有效的消费记录)。
在一些示例中,若数据请求包括分享数据请求或使用数据请求(也即,数据请求涉及病理数据的读取),则数据请求至少还可以包括用于读取病理数据的信息。例如,用于读取病理数据的信息可以包括但不限于是访问路径或病理数据标识。具体地,若事务类型为分享,则可以通过数据请求中包含的访问路径读取病理数据并生成病理数据标识,若在病理数据上传之后,则可以通过数据请求中包含的病理数据标识获取访问路径,进而能够读取病理数据。
在一些示例中,可以将数据请求的处理过程记录在业务系统例如医疗数据分享平台中。例如,可以将记录到区块链中的上链信息同时记录在业务系统中并与区块链地址(也可以称为上链地址)进行关联。在一些示例中,可以记录在业务系统的数据信息数据库150中。在这种情况下,能够方便后续对病理数据的分享和使用过程进行监控、统计和分析。
在一些示例中,病理数据可以存储在各个参与分享数据的业务方内部的文件服务器130中。例如若第一对象A为医疗机构,则病理数据可以存储在医疗机构内部的文件服务器130中。在一些示例中,可以通过约定的文件访问方式授权代理接口120或其他有权限访问的联盟链110的节点对文件服务器130中的病理数据进行读取。在这种情况下,病理数据分散在各个业务方的文件服务器130中,能够降低存储压力。
在一些示例中,代理接口120接收数据请求后,可以对数据请求进行处理并输出响应信息。在一些示例中,代理接口120可以通过处理服务140对数据请求进行处理。在一些示例中,处理服务140的功能可以包括身份注册、获取病理数据信息、哈希值计算、哈希值校验、价值评估、获取响应数据、使用记录上链中的至少一种,稍后描述处理服务140涉及的功能。在一些示例中,一个功能的输出可以作为另一个功能的输入。
图4是示出了本公开示例所涉及的基于区块链的病理数据分享方法的流程图。由于本公开所涉及的示例主要是以区块链为联盟链110为例进行详细介绍的,因此该病理数据分享方法可以应用于联盟链110中的节点。
如图4所示,在一些示例中,病理数据分享方法可以包括接收第一对象A输入的包括病理数据的访问路径的分享数据请求(步骤S110)。
在一些示例中,在步骤S110中,可以接收第一对象A输入的分享数据请求。如上所述,第一对象A可以是数据提供方。例如,第一对象A可以是医疗机构,医疗机构可以通过终端设备上的可视化界面提交分享数据请求。在一些示例中,分享数据请求可以包括病理数据的访问路径。在一些示例中,分享数据请求还可以包括病理数据的数据类型、数据等级、采集部位(也即,病理数据来源的身体部位)。作为示例,例如采集部位可以为甲状腺、宫颈或肺等,本公开不做特别地限定。另外,数据等级可以用于表示病理数据的重要性。如上所述,在一些示例中,可以通过代理接口120接收分享数据请求。
如图4所示,在一些示例中,病理数据分享方法可以包括对分享数据请求进行处理以获取病理数据信息并上链(步骤S120)。在一些示例中,病理数据信息可以包括病理数据特征和来源上述的分享数据请求的访问路径。在一些示例中,病理数据特征可以包括病理数据标识、数据来源和第一哈希值。在这种情况下,基于病理数据特征能够对病理数据进行哈希值校验且能够确定病理数据的来源。由此,能够使病理数据不可篡改且可靠。在一些示例中,病理数据特征还可以包括数据组成、数据版本和数据格式。在这种情况下,能够利用较多的特征描述病理数据。另外,数据组成可以用于描述组成病理数据的内容。例如,数据组成可以用于描述由某医院在某段时间利用某种扫描仪对某特定人群的病理玻片进行扫描获得的某种数据格式的数字病理图像组成的病理数据。另外,数据版本可以用于标识不同时间更新的病理数据。另外,数据格式可以是病理数据的文件格式。
在一些示例中,在步骤S120中,可以基于访问路径获取病理数据。也即,可以基于访问路径对病理数据进行读取。由此,能够获取病理数据以及病理数据的原始信息(也可以称为元数据)。如上所述,在一些示例中,病理数据可以存储在各个参与分享数据的业务方内部的文件服务器130中。在这种情况下,访问路径可以是业务方内部的文件服务器130上病理数据的存储路径或能够读取病理数据的任意路径。在一些示例中,可以分块获取病理数据。也即,可以根据需要获取部分病理数据进行处理。
在一些示例中,在步骤S120中,可以生成用于唯一标识一个病理数据的病理数据标识。例如,病理数据标识可以是全局唯一标识符(Globally Unique Identifier,GUID)。又例如,病理数据标识可以基于时间(例如病理数据的生成时间或接收分享数据请求的接收时间)和病理数据的文件的大小生成。在这种情况下,后续可以基于病理数据标识获取病理数据以及病理数据的相关信息。
在一些示例中,在步骤S120中,可以对病理数据进行哈希值计算以生成针对该病理数据的文件的哈希值。也即,可以基于该病理数据的文件内容例如字节流生成哈希值。在一些示例中,在步骤S120中,针对病理数据的文件的哈希值可以作为第一哈希值。
在一些示例中,第一哈希值可以包括整体哈希值和分块哈希值中的至少一种。也即,第一哈希值可以包括整体哈希值、第一哈希值可以包括整体哈希值和分块哈希值、或第一哈希值可以包括分块哈希值。由此,能够适应病理数据的不同存储方式和使用方式的哈希值校验。
在一些示例中,在哈希值计算中,可以根据病理数据的存储方式生成相应的第一哈希值。具体地,若病理数据的存储方式包括对整个病理数据进行存储(也可以简称为整体存储),则第一哈希值可以包括整体哈希值,若病理数据的存储方式包括对病理数据进行分块存储(也可以简称为分块存储),则第一哈希值可以包括分块哈希值。在这种情况下,根据存储方式计算第一哈希值能够识别子文件例如子分块是否被篡改。
另外,整体哈希值可以为整个病理数据对应的哈希值。另外,分块哈希值可以为对病理数据进行分块存储时获得的子分块对应的哈希值。在一些示例中,子分块的数量可以大于1。在一些示例中,访问路径可以包括子分块的子访问路径。在一些示例中,可以根据分块存储的规则和访问路径计算子分块的子访问路径。由此,能够基于子访问路径读取子分块以计算子分块对应的哈希值。
在一些示例中,可以根据病理数据的文件的大小计算整个病理数据的哈希值(也可以称为整体哈希值)。具体地,若病理数据为小文件(小文件可以为文件的大小小于预设文件大小的文件),则可以直接基于整个病理数据的文件计算整个病理数据的哈希值,若病理数据为大文件(大文件可以为文件的大小不小于预设文件大小的文件),则可以从病理数据中获取多段预设文件长度的字节流作为分块字节流,并基于该分块字节流的哈希值计算整个病理数据的哈希值。另外,预设文件大小可以根据需要进行设置。例如可以根据哈希值计算所在服务器的性能例如内存大小进行设置。
图5是示出了本公开示例所涉及的哈希值计算的流程图。为了更清楚地描述哈希值计算的过程,图5示出了一种哈希值计算的流程。
如图5所示,在一些示例中,哈希值计算可以包括获取病理数据的存储方式(步骤S210)。存储方式可以包括整体存储和分块存储。在一些示例中,存储方式可以通过预先约定、在发送分享数据请求时附加存储方式、或通过发送其他请求同步存储方式等方式确定,本公开不做特别的限定。
在一些示例中,在步骤S210中确定存储方式后,可以根据存储方式确定目标哈希值(例如第一哈希值或第二哈希值)的计算方式。例如,若满足步骤S220、步骤S240或步骤S250中的条件则可以进入相应的步骤进行对哈希值进行计算以获取哈希结果,然后将不同的哈希结果进行汇总以获取目标哈希值。
如图5所示,在一些示例中,哈希值计算可以包括步骤S220。在步骤S220中,可以判断存储方式是否包括分块存储,若是,则可以进入步骤S230对子分块的哈希值进行计算,若否,则可以进入步骤S240进一步判断存储方式是否包括整体存储。
如图5所示,在一些示例中,哈希值计算可以包括步骤S230。在步骤S230中,可以分别计算各个子分块(也可以称为子文件)的分块哈希值。具体地,如上所述,可以基于子访问路径读取子分块以计算子分块对应的哈希值。一般而言,病理数据比较大,常常需要分块存储,或者病理数据常常包括独立的小文件。在这种情况下,获取子分块的哈希值并用于后续的哈希值校验,能够将哈希值校验的粒度细化到子分块。由此,能够识别子文件例如子分块是否被篡改。
如图5所示,在一些示例中,哈希值计算可以包括步骤S240。在步骤S240中,可以判断存储方式是否包括整体存储,若是,则可以进入步骤S250进行进一步判断病理数据是否是大文件,若否,则可以进入步骤S280进行汇总。
如图5所示,在一些示例中,哈希值计算可以包括步骤S250。在步骤S250中,可以判断病理数据是否是大文件,若是,则可以进入步骤S260计算大文件的哈希值,若否,则可以进入步骤S270计算小文件的哈希值。
如图5所示,在一些示例中,哈希值计算可以包括步骤S260。在步骤S260中,可以计算大文件的哈希值。一般而言,直接对大文件进行哈希值计算,对服务器的性能要求较高。在一些示例中,可以基于分段的方式一次加载部分病理数据,然后基于部分病理数据的哈希值计算大文件的哈希值。
具体地,可以从病理数据中获取多段预设文件长度的字节流作为分块字节流,并基于该分块字节流的哈希值计算整个病理数据的哈希值。另外,预设文件长度可以根据需要进行设置。例如可以根据哈希值计算所在服务器的性能例如内存大小进行设置。
在一些示例中,在计算完一个分块字节流的哈希值后,可以释放该分块字节流的占用资源例如内存,然后再计算下一个分块字节流的哈希值,以这种方式直至计算完最后一个分块字节流的哈希值。本公开的示例不限于此,在另一些示例中,也可以分批计算分块字节流的哈希值,在计算完一批分块字节流的哈希值后,释放该批次的占用资源,然后再计算下一个批次的分块字节流的哈希值。另外,批次中的分块字节流的数量不做特别的限定,例如批次中的分块字节流的数量可以为2、3或4等。
在一些示例中,可以基于分块字节流的哈希值计算整个病理数据的哈希值。例如可以将全部分块字节流的哈希值进行合并后再计算合并后的哈希值的哈希值并作为整个病理数据的哈希值。又例如,可以以分块字节流的读取顺序,基于当前分块字节流和上一个分块字节流的哈希值计算该当前分块字节流的哈希值,然后将最后一个分块字节流的哈希值作为整个病理数据的哈希值。但本公开的示例不限于此,在另一些示例中,可以同时从病理数据的字节流的两端(例如字节流的首端和末端)开始计算分块字节流的哈希值,然后在中间进行汇总以计算整个病理数据的哈希值。
如图5所示,在一些示例中,哈希值计算可以包括步骤S270。在步骤S270中,可以直接基于整个病理数据的文件计算整个病理数据的哈希值。也即,对于小文件,可以基于病理数据的全部字节流计算整个病理数据的哈希值。
如图5所示,在一些示例中,哈希值计算可以包括步骤S280。在步骤S280中,可以根据存储方式进行汇总以获取目标哈希值。具体地,若存储方式包括整体存储,则目标哈希值可以包括整体哈希值,若存储方式包括分块存储,则目标哈希值可以包括分块哈希值。如上所述,在一些示例中,在哈希值计算中,可以根据病理数据的存储方式生成相应的第一哈希值。因此,目标哈希值可以作为第一哈希值。
如上所述,在步骤S120中,可以对分享数据请求进行处理以获取病理数据信息并上链。在一些示例中,可以通过调用部署在区块链上的数据合约将病理数据信息上链。由此,能够将病理数据信息上链。
例如,医疗机构可以通过终端设备上的可视化界面提交分享数据请求以获取病理数据信息,并将病理数据信息发送给联盟链110中的节点,联盟链110中的任意一个节点接收到病理数据信息后,从联盟链110中调用数据合约对病理数据信息进行验证例如可以验证数据来源是否合法,若验证通过,则可以将病理数据信息记录到联盟链110上。
图6是示出了本公开示例所涉及的基于区块链的病理数据分享方法的另一种流程图。
在一些示例中,在接收到分享数据请求后,也可以对病理数据进行价值评估以获取病理数据的估值,进而基于病理数据的估值对第一对象或第二对象的资产值进行更新。由此,能够促进病理数据的分享。
如图6所示,在一些示例中,病理数据分享方法可以包括对病理数据进行价值评估以获取病理数据的估值并上链(步骤S121)。
在一些示例中,在步骤S121中,可以根据病理数据的数据指标对病理数据进行价值评估以获取病理数据的估值。例如,可以对各个数据指标设置相应的估值规则以基于估值规则获得各个数据指标的子估值,并对子估值进行汇总(例如可以对子估值按权值进行求和)以获取目标估值并作为病理数据的估值。在这种情况下,基于数据指标的病理数据的估值具有差异性,能够调动分享病理数据的积极性。由此,能够促进病理数据的分享。在一些示例中,病理数据的估值可以是动态的。例如,可以根据被使用次数重新进行价值评估以获取新的病理数据的估值并重新上链。在一些示例中,数据指标可以包括数据格式、数据版本、数据来源、数据大小、数据类型和被使用次数。
在一些示例中,在步骤S121中,在完成对病理数据的价值评估后,可以通过调用区块链上的价值合约将估值信息上链。在一些示例中,估值信息可以包括病理数据标识和病理数据的估值。
例如,医疗机构通过终端设备上的可视化界面提交分享数据请求以获取病理数据信息时,可以同时返回估值信息,并将估值信息发送给联盟链110中的节点,联盟链110中的节点通过从联盟链110中调用价值合约将估值信息记录到联盟链110上。具体内容可以参见病理数据信息的上链过程。
如图6所示,在一些示例中,病理数据分享方法可以包括增加第一对象A的资产值并将增加后的第一对象A的资产值上链(步骤S122)。
在一些示例中,在步骤S122中,可以调用部署在区块链上的入账合约以基于病理数据的估值增加第一对象A的资产值并将增加后的第一对象A的资产值上链。在一些示例中,病理数据信息上链后可以自动触发入账合约。也即,第一对象A对病理数据进行分享后第一对象A的资产值可以自动增加并记录到联盟链110上。具体内容可以参见病理数据信息的上链过程。在一些示例中,第一对象A的初始的资产值可以在注册时设置。例如,第一对象A的初始的资产值可以设置为0。但本公开的示例不限于此,在另一些示例中,可以根据第一对象A的注册时的身份信息设置初始的资产值。
如图4所示,在一些示例中,病理数据分享方法可以包括接收第二对象B输入的包括病理数据标识的使用数据请求(步骤S130)。
在一些示例中,可以接收第二对象B输入使用数据请求。在一些示例中,使用数据请求可以包括病理数据标识。如上所述,第二对象B可以是数据使用方。例如,第二对象B可以是医疗机构、服务机构或科研机构等,医疗机构、服务机构或科研机构可以通过终端设备上的可视化界面提交使用数据请求。如上所述,在一些示例中,可以通过代理接口120接收使用数据请求。
如图4所示,在一些示例中,病理数据分享方法可以包括对使用数据请求进行处理以返回使用数据请求对应的响应数据(也即获取响应数据)(步骤S140)。
在一些示例中,在步骤S140,可以对来源使用数据请求的病理数据标识对应的病理数据进行哈希值校验以判断病理数据是否被篡改。具体地,可以通过调用数据合约查询与病理数据标识对应的病理数据信息,基于病理数据信息中的第一哈希值进行哈希值校验,若校验通过,则可以返回使用数据请求对应的响应数据。
在一些示例中,响应数据可以为基于病理数据和使用数据请求获得的数据。也即,可以根据使用数据请求返回基于病理数据获得的相应数据。
在一些示例中,使用数据请求可以包括浏览数据请求、下载数据请求和计算数据请求。由此,能够支持浏览病理数据、下载病理数据和对病理数据进行计算分析等多种应用场景。在一些示例中,下载数据请求需经由数据授权下载协议确认。例如,下载数据请求需通过病理数据来源的患者通过数据授权下载协议进行授权后才能返回基于病理数据获得的相应数据。
在一些示例中,若使用数据请求为浏览数据请求,则可以根据病理数据的数据类型显示病理数据。也即,响应数据可以为用于显示的全部病理数据或部分病理数据。具体地,若病理数据的数据类型为文本,则可以直接显示病理数据,若病理数据的数据类型为图像,则可以根据病理数据的元数据获取视野范围内的病理数据并显示,若病理数据的数据类型为影像,则可以播放病理数据。由此,能够浏览病理数据。在一些示例中,可以通过病理数据例如数字病理图像的成像设备的厂商提供的工具包对病理数据的文件的文件头进行解析以获取元数据。
在一些示例中,若使用数据请求为下载数据请求,则可以返回整个病理数据的文件。也即,响应数据可以为整个病理数据的文件。由此,能够下载病理数据。在一些示例中,返回的病理数据的文件可以具有数字化水印。
在一些示例中,若使用数据请求为计算数据请求,则可以利用机器学习模型例如人工神经网络对病理数据进行计算分析以获得分析结果。也即,响应数据可以为用于计算分析的病理数据和分析结果。在这种情况下,在分享病理数据的同时,支持对病理数据进行计算分析,能够促进病理数据的分享。另外,能够共享计算分析的技术和算力。在一些示例中,可以显示分析结果。例如若分析结果包括经由机器学习模型分析获得的片级分类结果或病变区域,则可以对片级分类结果或病变区域进行可视化显示。
在一些示例中,在哈希值校验中,可以基于病理数据标识对应的访问路径对该访问路径对应的病理数据进行哈希值计算以生成相应的哈希值作为第二哈希值,然后基于第一哈希值和第二哈希值进行校验(也即,对照第一哈希值和第二哈希值)。具体地,基于病理数据标识对应的访问路径可以获取病理数据以及病理数据的原始信息(也可以称为元数据),然后对该病理数据重新进行哈希值计算以生成相应的哈希值(也即目标哈希值)作为第二哈希值。哈希值计算的具体内容可以参见步骤S120中的相关描述。
在一些示例中,基于第一哈希值和第二哈希值进行校验的过程中,可以比较第一哈希值和第二哈希值是否一致,若一致,则可以表示校验通过,否则为校验不通过。但本公开的示例不限于此,在另一些示例中,可以根据使用数据请求所要请求的数据(也即,在获得响应数据过程中所涉及的病理数据)生成第二哈希值,然后判断第一哈希值是否包含第二哈希值,若包含则可以表示校验通过,否则为校验不通过。
在一些示例中,若基于包括整个病理数据的数据获得响应数据,则第二哈希值可以包括整体哈希值。例如,对于下载数据请求可以生成包括整体哈希值的第二哈希值。在一些示例中,若基于包括病理数据的子分块的数据获得响应数据,则第二哈希值可以包括分块哈希值。例如,浏览数据请求或计算数据请求中,若请求的数据为子分块,则可以生成包括分块哈希值的第二哈希值。在一些示例中,若同时基于包括整个病理数据和子分块的数据获取响应数据,则第二哈希值可以同时包括整体哈希值和分块哈希值。在这种情况下,能够将哈希值校验的粒度细化到子分块。由此,能够识别子文件例如子分块是否被篡改。
在一些示例中,在使用病理数据后,可以对病理数据进行反馈以生成反馈数据。在一些示例中,反馈数据可以作为数据指标对病理数据进行价值评估。由此,能够进一步提高病理数据的可靠性。
如图6所示,在一些示例中,病理数据分享方法可以包括将病理数据的使用记录上链(步骤S150)。
在一些示例中,哈希值校验通过,返回响应数据时,可以将病理数据的使用记录上链。如上所述,在一些示例中,数据请求记录可以用于计算有效的使用记录。具体地,可以从数据请求记录中筛选出哈希值校验通过的记录作为有效的使用记录并上链。由此,能够降低使用记录漏记或者误记的风险。
一般而言,病理数据的来源和去向(也可以称为病理数据的可追溯性)往往影响到病理数据的可靠性以及病理数据分享的安全性。在一些示例中,在步骤S150中,可以通过调用区块链上的记录合约将病理数据的使用记录上链。
在一些示例中,使用记录可以包括使用对象、使用方式、使用数据信息和使用结果。在这种情况下,能够追溯病理数据被使用的详情。在一些示例中,使用记录还可以包括使用时间。
另外,使用对象可以为使用病理数据的对象(也即数据使用方)的身份标识。例如使用对象可以为第一对象A或第二对象B的身份标识。如上所述,在一些示例中,使用数据请求可以包括浏览数据请求、下载数据请求和计算数据请求。相应地,使用方式可以包括浏览、下载和计算分析。另外,使用数据信息可以用于表示使用的病理数据中的数据。另外,使用结果可以用于表示使用了病理数据得到的结果。在一些示例中,使用结果可以为空。
在一些示例中,对于浏览数据请求,使用数据信息可以包括浏览的病理数据的病理数据标识或浏览的子分块的编号,使用结果可以为空。在一些示例中,对于下载数据请求,使用数据信息可以包括下载的病理数据的病理数据标识,使用结果可以为空。在一些示例中,对于计算数据请求,使用数据信息可以包括机器学习模型,使用结果可以为分析结果。由此,能够记录用于对病理数据进行计算分析的机器学习模型以及对应的分析结果。在一些示例中,可以基于各个子分块分别进行计算分析并汇总以获取分析结果。在一些示例中,使用数据信息还可以包括用于计算分析的子分块的编号和子分块所属的病理数据的病理数据标识。在这种情况下,能够记录计算分析过程中使用的子分块。
如图6所示,在一些示例中,病理数据分享方法可以包括更新第一对象A的资产值和第二对象B的资产值(步骤S160)。
在一些示例中,可以更新第一对象A的资产值和第二对象B的资产值。在一些示例中,更新后的第一对象A的资产值和第二对象B的资产值可以上链。
具体地,可以调用入账合约以基于估值更新第一对象A的资产值和第二对象B的资产值以令第一对象A的资产值增加和第二对象B的资产值减少,然后将更新后的第一对象A的资产值和第二对象B的资产值上链。在这种情况下,数据提供方能够获得相应的资产值,数据使用方需要消耗相应的资产值。由此,能够促进病理数据的分享。在一些示例中,资产值可以转换成相应的权益。由此,能够进一步地促进病理数据的分享。
在一些示例中,返回使用数据请求对应的响应数据时可以触发入账合约。也即,在使用病理数据后第一对象A的资产值和第二对象B的资产值可以自动更新并将更新后的第一对象A的资产值和第二对象B的资产值记录到联盟链110上。具体内容可以参见病理数据信息的上链过程。在一些示例中,第二对象B的初始的资产值可以在注册时设置,具体内容参见第一对象A的初始的资产值的描述。在另一些示例中,在获得有效的使用记录时,可以基于该有效的使用记录调用入账合约。
在一些示例中,在第一对象A和/或第二对象B的资产值发生变化时,可以通过调用区块链上的对账合约将第一对象A和/或第二对象B的资产值的增减记录上链。增减记录可以包括资产值增加或减少的明细。由此,能够追溯资产值变化的原因且具有不可篡改性。在一些示例中,增减记录可以包括引起资产值发生变化的事件信息。由此,能够清晰地确定资产值变化的原因。在一些示例中,在调用入账合约时会触发对账合约以将增减记录上链。
在一些示例中,增减记录可以关联使用记录。由此,能够清晰地确定资产值变化的原因。
在一些示例中,病理数据分享方法可以包括身份注册(未图示)。在一些示例中,第一对象A和/或第二对象B在发送数据请求之前,可以先进行身份注册。例如,在接收第一对象A输入的分享数据请求之前和/或在接收第二对象B输入的使用数据请求之前,可以先进行身份注册。在一些示例中,经过身份注册的对象可以参与病理数据的分享和使用。
在一些示例中,在进行身份注册过程中,可以接收由第一对象A和/或第二对象B的输入的包括身份信息的注册请求,通过调用部署在区块链上的账号合约对身份信息进行认证,若认证通过,则可以将该身份信息上链并返回包括身份信息对应的公钥和私钥的身份标识。由此,能够提高加入区块链的各个业务方的可靠性。
例如,参与病理数据分享的医疗机构,可以提交注册请求,注册请求中可以包括医疗机构名称、营业执照或经营许可证等身份信息。各个联盟链110的节点收到注册请求后,从联盟链110中调用账号合约对身份信息进行认证,若认证通过,则可以将该身份信息记录到联盟链110上并返回包括身份信息对应的公钥和私钥的身份标识。
在一些示例中,病理数据分享方法可以包括对病理数据的数据来源和使用记录进行查询(未图示)。在一些示例中,可以通过调用区块链上的溯源合约查询病理数据的数据来源和病理数据的使用记录。由此,能够追溯病理数据的分享和使用。
在一些示例中,病理数据分享方法可以包括资产查询(未图示)。在一些示例中,可以通过调用区块链上的资产合约查询第一对象A的病理数据、病理数据的使用记录、以及病理数据的估值。在这种情况下,能够获得第一对象A当前拥有的病理数据和对应的估值,以及病理数据被使用的情况。
以下,结合图7详细描述本公开的基于区块链的病理数据分享系统1。本公开涉及的基于区块链的病理数据分享系统1有时可以简称为病理数据分享系统1、病理数据共享系统、分享系统或共享系统。病理数据分享系统1用于实施上述的病理数据分享方法。除非特别说明,病理数据分享方法的相关描述同样适用于病理数据分享系统1。图7是示出了本公开示例所涉及的基于区块链的病理数据分享系统1的框图。
如图7所示,病理数据分享系统1可以包括分享单元100和使用单元200。分享单元100可以配置为对病理数据进行分享,使用单元200可以配置为使用已分享的病理数据。
在一些示例中,分享单元100可以配置为接收第一对象A输入的包括病理数据的访问路径的分享数据请求。在一些示例中,分享单元100可以基于访问路径获取病理数据并进行哈希值计算以生成针对病理数据的文件的哈希值作为第一哈希值。在一些示例中,分享单元100可以通过调用部署在区块链上的数据合约将病理数据信息上链。在一些示例中,病理数据信息可以包括病理数据特征、数据来源和访问路径。在一些示例中,病理数据特征包括病理数据标识和第一哈希值。具体内容参见步骤S110和步骤S120的相关描述。
在一些示例中,分享单元100可以具有价值单元(未图示)。价值单元可以配置为基于病理数据的估值设置第一对象A或第二对象B的资产值。在一些示例中,价值单元可以对病理数据进行价值评估以获取病理数据的估值。在一些示例中,价值单元可以通过调用区块链上的价值合约将包括病理数据标识和估值的估值信息上链。在一些示例中,价值单元可以调用部署在区块链上的入账合约以基于估值增加第一对象A的资产值并将增加后的第一对象A的资产值上链。具体内容参见步骤S121和步骤S122的相关描述。
在一些示例中,使用单元200可以配置为接收第二对象B输入的包括病理数据标识的使用数据请求。在一些示例中,使用单元200可以通过调用数据合约查询与病理数据标识对应的病理数据信息,基于病理数据信息中的第一哈希值进行哈希值校验,若校验通过,则返回使用数据请求对应的响应数据。在一些示例中,在哈希值校验中,可以基于病理数据标识对应的访问路径对该访问路径对应的病理数据进行哈希值计算以生成相应的哈希值作为第二哈希值,然后基于第一哈希值和第二哈希值进行校验。在一些示例中,响应数据可以为基于病理数据和使用数据请求获得的数据。具体内容参见步骤S130和步骤S140的相关描述。
在一些示例中,使用单元200可以通过调用区块链上的记录合约将病理数据的使用记录上链。具体内容参见步骤S150相关描述。
在一些示例中,使用单元200可以具有上述的价值单元。在一些示例中,价值单元可以调用入账合约以基于估值更新第一对象A的资产值和第二对象B的资产值以令第一对象A的资产值增加和第二对象B的资产值减少,然后将更新后的第一对象A的资产值和第二对象B的资产值上链。具体内容参见步骤S160相关描述。
在一些示例中,病理数据分享系统1还可以包括注册单元(未图示)。在一些示例中,注册单元可以配置为接收由第一对象A和/或第二对象B的输入的包括身份信息的注册请求,通过调用部署在区块链上的账号合约对身份信息进行认证,若认证通过,则可以将该身份信息上链并返回包括身份信息对应的公钥和私钥的身份标识。具体内容参见步骤身份注册相关描述。
在一些示例中,病理数据分享系统1还可以包括溯源单元(未图示)。在一些示例中,溯源单元可以配置为对病理数据的数据来源和使用记录进行查询。在一些示例中,溯源单元可以通过调用区块链上的溯源合约查询病理数据的数据来源和病理数据的使用记录。
在一些示例中,病理数据分享系统1还可以包括资产单元(未图示)。在一些示例中,资产单元可以配置为通过调用区块链上的资产合约查询第一对象A的病理数据、病理数据的使用记录、以及病理数据的估值。
本公开还提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述的病理数据分享方法。
本公开的病理数据分享方法、病理数据分享系统1及计算设备,基于区块链的技术,通过第一对象A提供的访问路径获取病理数据的病理数据信息和病理数据的估值信息并将具有第一哈希值的病理数据信息以及病理数据的估值信息上链,基于病理数据的估值增加第一对象A的资产值并将增加后的资产值上链,在第二对象B获取病理数据或基于病理数据获取响应数据之前,通过对照区块链中的病理数据信息的第一哈希值和通过访问路径获得病理数据的第二哈希值以在校验通过情况下返回响应数据,对于分享病理数据的第一对象A能够获得相应的资产值,对于使用病理数据的第二对象B需要消耗相应的资产值,并且将病理数据的使用记录上链。在这种情况下,利用区块链的去中心化、分布式存储和不可篡改等特性,将病理数据分享和使用过程的病理数据信息、估值信息、第一对象A和第二对象B的资产值和资产值变化、以及使用记录记录至区块链上,能够使病理数据的分享具有可追溯性,且通过哈希值校验降低病理数据被篡改的风险。另外,获取病理数据的估值信息并基于估值信息增加第一对象A的资产值。由此,能够促进病理数据的分享。
虽然以上结合附图和示例对本公开进行了具体说明,但是可以理解,上述说明不以任何形式限制本公开。本领域技术人员在不偏离本公开的实质精神和范围的情况下可以根据需要对本公开进行变形和变化,这些变形和变化均落入本公开的范围内。
Claims (10)
1.一种基于区块链的病理数据分享方法,其特征在于,包括:
接收第一对象输入的包括病理数据的访问路径的分享数据请求,基于所述访问路径获取所述病理数据并进行哈希值计算以生成针对所述病理数据的文件的哈希值作为第一哈希值,通过调用部署在所述区块链上的数据合约将包括病理数据特征、数据来源和所述访问路径的病理数据信息上链,其中,所述病理数据特征包括病理数据标识和所述第一哈希值;
根据所述病理数据的数据指标对所述病理数据进行价值评估以获取所述病理数据的估值,通过调用所述区块链上的价值合约将包括所述病理数据标识和所述估值的估值信息上链;调用部署在所述区块链上的入账合约以基于所述估值增加第一对象的资产值并将增加后的第一对象的资产值上链,其中,对所述病理数据中的各个数据指标设置相应的估值规则以基于估值规则获得各个数据指标的子估值,并对子估值进行汇总以获取目标估值并作为所述病理数据的估值;
接收第二对象输入的包括所述病理数据标识的使用数据请求,通过调用所述数据合约查询与所述病理数据标识对应的病理数据信息,基于所述病理数据信息中的第一哈希值进行哈希值校验,若校验通过,则返回所述使用数据请求对应的响应数据,并通过调用所述区块链上的记录合约将所述病理数据的使用记录上链,其中,在哈希值校验中,基于所述病理数据标识对应的访问路径对该访问路径对应的病理数据进行所述哈希值计算以生成相应的哈希值作为第二哈希值,然后基于所述第一哈希值和所述第二哈希值进行校验,所述响应数据为基于所述病理数据和所述使用数据请求获得的数据;并且
调用所述入账合约以基于所述估值更新第一对象的资产值和第二对象的资产值以令第一对象的资产值增加和第二对象的资产值减少,然后将更新后的第一对象的资产值和第二对象的资产值上链。
2.根据权利要求1所述的病理数据分享方法,其特征在于:
在第一对象和/或第二对象的资产值发生变化时,通过调用所述区块链上的对账合约将第一对象和/或第二对象的资产值的增减记录上链,其中,所述增减记录包括引起资产值发生变化的事件信息。
3.根据权利要求1所述的病理数据分享方法,其特征在于:
所述第一哈希值包括整体哈希值和分块哈希值中的至少一种,其中,所述整体哈希值为整个病理数据对应的哈希值,所述分块哈希值为对所述病理数据进行分块存储时获得的子分块对应的哈希值,在哈希值计算中,根据所述病理数据的存储方式生成相应的第一哈希值。
4.根据权利要求3所述的病理数据分享方法,其特征在于:
在所述基于所述病理数据标识对应的访问路径对该访问路径对应的病理数据进行所述哈希值计算以生成相应的哈希值作为第二哈希值中:
若基于包括整个病理数据的数据获得所述响应数据,则所述第二哈希值包括所述整体哈希值;若基于包括所述病理数据的子分块的数据获得所述响应数据,则所述第二哈希值包括所述分块哈希值。
5.根据权利要求1所述的病理数据分享方法,其特征在于:
所述使用数据请求包括浏览数据请求、经由数据授权下载协议确认的下载数据请求和计算数据请求;所述使用记录包括使用对象、使用方式、使用数据信息和使用结果;若所述使用数据请求为所述计算数据请求,则利用机器学习模型对所述病理数据进行计算分析以获得分析结果,其中,对于所述计算数据请求,所述使用数据信息包括所述机器学习模型,所述使用结果为所述分析结果。
6.根据权利要求1所述的病理数据分享方法,其特征在于:
在接收所述分享数据请求之前和/或在接收所述使用数据请求之前,还包括:
接收由第一对象和/或第二对象的输入的包括身份信息的注册请求,通过调用部署在所述区块链上的账号合约对所述身份信息进行认证,若认证通过,则将所述身份信息上链并返回包括所述身份信息对应的公钥和私钥的身份标识。
7.根据权利要求1所述的病理数据分享方法,其特征在于:
通过调用所述区块链上的溯源合约查询所述病理数据的数据来源和所述病理数据的使用记录;通过调用所述区块链上的资产合约查询第一对象的病理数据、病理数据的使用记录、以及病理数据的估值。
8.根据权利要求1所述的病理数据分享方法,其特征在于:
所述数据指标包括数据格式、数据版本、数据来源、数据大小、数据类型和被使用次数;所述病理数据特征还包括数据组成、数据版本和数据格式。
9.一种基于区块链的病理数据分享系统,其特征在于,包括分享单元和使用单元;
所述分享单元配置为接收第一对象输入的包括病理数据的访问路径的分享数据请求,基于所述访问路径获取所述病理数据并进行哈希值计算以生成针对所述病理数据的文件的哈希值作为第一哈希值,通过调用部署在所述区块链上的数据合约将包括病理数据特征、数据来源和所述访问路径的病理数据信息上链,其中,所述病理数据特征包括病理数据标识和所述第一哈希值;所述分享单元还配置为根据所述病理数据的数据指标对所述病理数据进行价值评估以获取所述病理数据的估值,通过调用所述区块链上的价值合约将包括所述病理数据标识和所述估值的估值信息上链;所述分享单元还配置为调用部署在所述区块链上的入账合约以基于所述估值增加第一对象的资产值并将增加后的第一对象的资产值上链,其中,对所述病理数据中的各个数据指标设置相应的估值规则以基于估值规则获得各个数据指标的子估值,并对子估值进行汇总以获取目标估值并作为所述病理数据的估值;以及
所述使用单元配置为接收第二对象输入的包括所述病理数据标识的使用数据请求,通过调用所述数据合约查询与所述病理数据标识对应的病理数据信息,基于所述病理数据信息中的第一哈希值进行哈希值校验,若校验通过,则返回所述使用数据请求对应的响应数据,并通过调用所述区块链上的记录合约将所述病理数据的使用记录上链,其中,在哈希值校验中,基于所述病理数据标识对应的访问路径对该访问路径对应的病理数据进行所述哈希值计算以生成相应的哈希值作为第二哈希值,然后基于所述第一哈希值和所述第二哈希值进行校验,所述响应数据为基于所述病理数据和所述使用数据请求获得的数据;所述使用单元还配置为调用所述入账合约以基于所述估值更新第一对象的资产值和第二对象的资产值以令第一对象的资产值增加和第二对象的资产值减少,然后将更新后的第一对象的资产值和第二对象的资产值上链。
10.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至8任一项所述的病理数据分享方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111217875.3A CN113886499B (zh) | 2021-10-19 | 2021-10-19 | 基于区块链的病理数据分享方法、分享系统及计算设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111217875.3A CN113886499B (zh) | 2021-10-19 | 2021-10-19 | 基于区块链的病理数据分享方法、分享系统及计算设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113886499A CN113886499A (zh) | 2022-01-04 |
CN113886499B true CN113886499B (zh) | 2022-09-30 |
Family
ID=79003703
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111217875.3A Active CN113886499B (zh) | 2021-10-19 | 2021-10-19 | 基于区块链的病理数据分享方法、分享系统及计算设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113886499B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117671922B (zh) * | 2023-12-01 | 2024-07-12 | 湖北三峡云计算中心有限责任公司 | 一种基于酒厂环境参数的监测预警系统 |
CN117675870B (zh) * | 2024-01-31 | 2024-04-19 | 中国医学科学院北京协和医院 | 一种基于区块链的电子病历分布式共享方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109684287A (zh) * | 2018-12-29 | 2019-04-26 | 厦门链平方科技有限公司 | 基于区块链的网关信息共享查询方法及系统 |
CN112153039A (zh) * | 2020-09-21 | 2020-12-29 | 中国电子科技网络信息安全有限公司 | 一种基于区块链的数据存证共享方法 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107819777B (zh) * | 2017-11-17 | 2020-07-24 | 利姆斯(北京)区块链技术有限公司 | 一种基于区块链技术的数据存证方法及系统 |
CN109741162A (zh) * | 2018-09-03 | 2019-05-10 | 上海奥若拉信息科技集团有限公司 | 基于区块链的个人征信数据存储、处理、分享方法及系统 |
US20200090795A1 (en) * | 2018-09-14 | 2020-03-19 | Htc Corporation | Method and system for sharing privacy data based on smart contracts |
KR20200129881A (ko) * | 2019-05-10 | 2020-11-18 | 정선태 | 블록체인을 이용한 지역화폐 교환결제 시스템 및 그 방법 |
CN110289056A (zh) * | 2019-05-15 | 2019-09-27 | 杭州趣链科技有限公司 | 一种基于区块链的医疗数据共享系统和方法 |
CN110211649A (zh) * | 2019-05-30 | 2019-09-06 | 爱多特(广东)网络技术有限公司 | 基于区块链技术的病例分享激励方法及系统 |
CN110222063A (zh) * | 2019-06-18 | 2019-09-10 | 北京艾摩瑞策科技有限公司 | 涉及区块链的知识分享数据查询方法及其设备 |
CN111259448A (zh) * | 2020-01-17 | 2020-06-09 | 中国建设银行股份有限公司 | 一种数据共享方法和装置 |
CN111611215B (zh) * | 2020-04-07 | 2023-07-11 | 布比(北京)网络技术有限公司 | 一种基于区块链的网贷风险数据共享方法及系统 |
CN111783127B (zh) * | 2020-07-22 | 2021-02-26 | 欧冶云商股份有限公司 | 一种基于区块链的钢材质保书隐私保护和分享方法及系统 |
CN111916172B (zh) * | 2020-08-07 | 2023-08-29 | 安徽师范大学 | 一种基于区块链智能合约的医疗数据共享系统 |
CN112447291B (zh) * | 2020-11-23 | 2023-03-28 | 四川大学华西医院 | 基于区块链的医联体数据之间的共享方法 |
CN113055450B (zh) * | 2021-03-02 | 2024-06-25 | 南京智骋致想电子科技有限公司 | 一种基于区块链的智慧运输及数据共享存储方法 |
CN112991128A (zh) * | 2021-03-02 | 2021-06-18 | 北京航空航天大学 | 一种区块链技术的数据共享社区治理方法 |
-
2021
- 2021-10-19 CN CN202111217875.3A patent/CN113886499B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109684287A (zh) * | 2018-12-29 | 2019-04-26 | 厦门链平方科技有限公司 | 基于区块链的网关信息共享查询方法及系统 |
CN112153039A (zh) * | 2020-09-21 | 2020-12-29 | 中国电子科技网络信息安全有限公司 | 一种基于区块链的数据存证共享方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113886499A (zh) | 2022-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11709819B2 (en) | Validating test results using a blockchain network | |
CN108665372B (zh) | 基于区块链的信息处理、查询、储存方法和装置 | |
CN113972986B (zh) | 基于区块链的工业互联网标识信息解析方法以及相关装置 | |
WO2020001105A1 (zh) | 基于区块链的数据验证方法及装置、电子设备 | |
US8589372B2 (en) | Method and system for automated document registration with cloud computing | |
US20200159847A1 (en) | Contribution of multiparty data aggregation using distributed ledger technology | |
CN113886499B (zh) | 基于区块链的病理数据分享方法、分享系统及计算设备 | |
CN112235420B (zh) | 基于区块链的数据同步方法、系统及相关设备 | |
CN109472678B (zh) | 一种基于区块链的会计账本管理方法、电子装置及可读存储介质 | |
US11057188B2 (en) | Database service token | |
US11669532B2 (en) | Blockchain implementing reliability database | |
US11133936B1 (en) | Methods and systems for introducing self-contained intent functionality into decentralized computer networks | |
WO2018126344A1 (zh) | 一种数据处理方法及相关设备 | |
US20200169125A1 (en) | Wireless energy transfer | |
CN112612856B (zh) | 基于区块链的数据处理方法和装置 | |
CN112307458A (zh) | 轻节点的上链方法、装置、物联网中控终端及区块链网络 | |
US12086272B2 (en) | Systems and methods for conducting blockchain actions based on network mappings of self-executing program characteristics | |
CN111506589A (zh) | 基于联盟链的区块链数据服务系统、访问方法及存储介质 | |
US11997216B2 (en) | Systems and methods for maintaining secure, encrypted communications across distributed computer networks by linking cryptography-based digital repositories in order to perform blockchain operations in decentralized applications | |
CN110602215B (zh) | 基于联盟区块链的资源处理方法及联盟区块链系统 | |
US20230306128A1 (en) | Systems and methods for using secure, encrypted communications across distributed computer networks to provide variable resiliency when indexing blockchain states for performing blockchain operations in decentralized applications using cryptography-based digital repositories | |
CN116414875A (zh) | 数据处理装置和数据处理方法 | |
CN115408590B (zh) | 一种文档追踪溯源方法、装置及系统 | |
US20230269086A1 (en) | Systems and methods for using secure, encrypted communications across distributed computer networks to efficiently index blockchain states for performing blockchain operations in decentralized applications using cryptography-based digital repositories | |
US20220399988A1 (en) | Linking blockchain operations |
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 |