CN114519191A - 医疗数据管理方法及装置 - Google Patents

医疗数据管理方法及装置 Download PDF

Info

Publication number
CN114519191A
CN114519191A CN202011291700.2A CN202011291700A CN114519191A CN 114519191 A CN114519191 A CN 114519191A CN 202011291700 A CN202011291700 A CN 202011291700A CN 114519191 A CN114519191 A CN 114519191A
Authority
CN
China
Prior art keywords
block
prefix
data
integer
hash value
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.)
Pending
Application number
CN202011291700.2A
Other languages
English (en)
Inventor
王岳彪
尚渭萍
李挺
袁敏
员萌
吴向军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shaanxi Shangpin Information Technology Co ltd
Original Assignee
Shaanxi Shangpin Information Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shaanxi Shangpin Information Technology Co ltd filed Critical Shaanxi Shangpin Information Technology Co ltd
Priority to CN202011291700.2A priority Critical patent/CN114519191A/zh
Publication of CN114519191A publication Critical patent/CN114519191A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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/6227Protecting 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 where protection concerns the structure of data, e.g. records, types, queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Medical Treatment And Welfare Office Work (AREA)

Abstract

本申请公开了一种医疗数据管理方法及装置;属于区块链技术领域,该方法包括:接收区块链中的第一区块的创建指令;根据第一区块的创建指令创建第一区块,第一区块包括第一前缀、第一数据和第二前缀;接收针对第一区块的修改指令,修改指令包括验证信息和用于替换第一数据的第二数据;当修改指令中验证信息与预设信息相同时,修改第一区块的第二前缀,并采用第二数据替换第一数据。本申请使授权节点对区块链网络中存储的医疗数据进行修改,提高了管理医疗数据的灵活性。

Description

医疗数据管理方法及装置
技术领域
本申请属于区块链技术领域,具体涉及医疗数据管理方法及装置。
背景技术
在数据管理技术领域中,数据安全性是衡量数据管理优劣的一个十分重要的方面。对于医疗数据来说,由于涉及商业机密以及个人隐私等多方面的敏感信息,因此,医疗数据相较于其他类型的数据,对数据安全性的要求更高。
相关技术中,为了提高医疗数据管理的安全性,利用区块链网络数据不可篡改的特点,常常将医疗数据存储至区块链网络。区块链网络中的任一授权节点都无法修改存储于区块链网络中的医疗数据,管理医疗数据的灵活性较差。
发明内容
为了使授权节点对区块链网络中存储的医疗数据进行修改,提高管理医疗数据的灵活性,本申请提供了一种医疗数据管理方法及装置。本申请要解决的技术问题通过以下技术方案实现:
第一方面,本申请提供了一种医疗数据管理方法,所述方法包括:
接收区块链中的第一区块的创建指令,所述第一区块为所述区块链中除首个区块之外的区块;
根据所述第一区块的创建指令创建所述第一区块,所述第一区块包括第一前缀、第一数据和第二前缀,所述第一前缀为所述第一区块的前一个区块的哈希值,所述第一数据包括医疗数据,所述第二前缀为可重写后缀;
接收针对所述第一区块的修改指令,所述修改指令包括验证信息和第二数据,所述第二数据用于替换所述第一数据;
判断所述修改指令中所述验证信息与预设信息是否相同;
当所述修改指令中所述验证信息与所述预设信息相同时,修改所述第一区块的第二前缀,并采用所述第二数据替换所述第一数据。
可选地,所述当所述修改指令中所述验证信息与所述预设信息相同时,修改所述第一区块的第二前缀,包括:
当所述修改指令中所述验证信息与所述预设信息相同时,对所述第一前缀Pi和所述第二数据C′i进行哈希运算,得到第一哈希值h′i,所述第一哈希值h′i=H(Pi,C′i),所述C′i为用于替换所述第一数据Ci的第二数据,H()表示哈希函数;
根据所述第一哈希值h′i计算用于替换所述第一区块的第二前缀Xi的第三前缀X′i,所述第二前缀Xi为1到(n-1)之间的随机整数,且
Figure BDA0002784777600000021
modn表示对n取模,所述n=p×q,p和q的表达形式均为(2r+1),所述r为质数;
采用第三前缀X′i替换第二前缀Xi
可选地,所述根据所述第一哈希值h′i计算用于替换所述第一区块的第二前缀Xi的第三前缀X′i,包括:
采用所述第一哈希值h′i对所述n取模得到第一整数d′i
判断第二整数M与
Figure BDA0002784777600000022
是否互质,所述
Figure BDA0002784777600000023
所述
Figure BDA0002784777600000024
为所述n的欧拉函数值;
当所述第二整数M与所述
Figure BDA0002784777600000025
互质时,采用前缀计算公式计算用于替换所述第一区块的第二前缀Xi的第三前缀X′i,所述前缀计算公式为:
Figure BDA0002784777600000031
所述e′i为所述M对所述
Figure BDA0002784777600000032
取模的倒数,所述Pi+1为所述第一区块的后一个区块的第一前缀,且
Figure BDA0002784777600000033
所述Xi为所述第一区块的第二前缀,所述di为采用第二哈希值hi对所述n取模后得到的整数,所述第二哈希值hi=H(Pi,Ci),所述Pi为所述第一区块的第一前缀,所述Ci为所述第一数据;
当所述第二整数M与所述
Figure BDA0002784777600000034
不互质时,对所述第一整数d′i进行替换,以使替换后的结果与所述
Figure BDA0002784777600000035
互质,并计算第三前缀X′i
可选地,对所述第一前缀Pi和所述第二数据C′i进行哈希运算,包括:
采用SHA-256算法对所述第一前缀Pi和所述第二数据C′i进行哈希运算。
第二方面,提供一种医疗数据管理装置,所述装置包括:
第一接收模块,用于接收区块链中的第一区块的创建指令,所述第一区块为所述区块链中除首个区块之外的区块;
创建模块,用于根据所述第一区块的创建指令创建所述第一区块,所述第一区块包括第一前缀、第一数据和第二前缀,所述第一前缀为所述第一区块的前一个区块的哈希值,所述第一数据包括医疗数据,所述第二前缀为可重写后缀;
第二接收模块,用于接收针对所述第一区块的修改指令,所述修改指令包括验证信息和第二数据,所述第二数据用于替换所述第一数据;
判断模块,用于判断所述修改指令中所述验证信息与预设信息是否相同;
修改模块,用于在所述修改指令中所述验证信息与所述预设信息相同时,修改所述第一区块的第二前缀,并采用所述第二数据替换所述第一数据。
可选地,所述修改模块,包括:
第一计算子模块,用于在所述修改指令中所述验证信息与所述预设信息相同时,对所述第一区块的第一前缀Pi和所述第二数据C′i进行哈希运算,得到第一哈希值h′i,所述第一哈希值h′i=H(Pi,C′i),所述C′i为用于替换所述第一数据Ci的第二数据,H()表示哈希函数;
第二计算子模块,用于根据所述第一哈希值h′i计算用于替换所述第一区块的第二前缀Xi的第三前缀X′i,所述第二前缀Xi为1到(n-1)之间的随机整数,且
Figure BDA0002784777600000041
modn表示对n取模,所述n=p×q,p和q的表达形式均为(2r+1),所述r为质数;
第三计算子模块,用于采用第三前缀X′i替换第二前缀Xi
可选地,所述第二计算子模块,具体用于:
采用所述第一哈希值h′i对所述n取模得到第一整数d′i
判断第二整数M与
Figure BDA0002784777600000042
是否互质,所述
Figure BDA0002784777600000043
所述
Figure BDA0002784777600000044
为所述n的欧拉函数值;
当所述第二整数M与所述
Figure BDA0002784777600000045
互质时,采用前缀计算公式计算用于替换所述第一区块的第二前缀Xi的第三前缀X′i,所述前缀计算公式为:
Figure BDA0002784777600000046
所述e′i为所述M对所述
Figure BDA0002784777600000047
取模的倒数,所述Pi+1为所述第一区块的后一个区块的第一前缀,且
Figure BDA0002784777600000048
所述Xi为所述第一区块的第二前缀,所述di为采用第二哈希值hi对所述n取模后得到的整数,所述第二哈希值hi=H(Pi,Ci),所述Pi为所述第一区块的第一前缀,所述Ci为所述第一数据;
当所述第二整数M与所述
Figure BDA0002784777600000049
不互质时,对所述第一整数d′i进行替换,以使替换后的结果与所述
Figure BDA0002784777600000051
互质,并计算第三前缀X′i
可选地,所述第一计算子模块,具体用于:
采用SHA-256算法对所述第一区块的第一前缀Pi和所述第二数据C′i进行哈希运算。
第三方面,提供一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口和所述存储器通过通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行存储器上所存放的程序时,实现第一方面所述的方法步骤。
第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所述的方法步骤。
第五方面,提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面所述的医疗数据管理方法步骤。
本申请实施例提供的医疗数据管理方法及装置,区块链网络节点先接收区块链中的第一区块的创建指令;再根据第一区块的创建指令创建第一区块,第一区块包括第一前缀、第一数据和第二前缀,其中,第一前缀为第一区块的前一个区块的哈希值,第一数据包括医疗数据,第二前缀为可重写后缀;之后,接收针对第一区块的修改指令,修改指令包括验证信息和第二数据;最后在修改指令中验证信息与预设信息相同时,修改第一区块的第二前缀,并采用第二数据替换第一数据,使授权节点对区块链网络中存储的医疗数据进行修改,具有管理权限的用户能对相关医疗数据进行修改,提高了管理医疗数据的灵活性。
以下将结合附图及实施例对本申请做进一步详细说明。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种医疗数据管理方法的流程示意图;
图2是本申请实施例提供的另一种医疗数据管理方法的流程示意图;
图3是本申请实施例提供的一种计算第三前缀的流程示意图;
图4是本申请实施例提供的一种医疗数据管理装置的结构示意图;
图5是本申请实施例提供的一种修改模块的结构示意图;
图6是本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面结合具体实施例对本申请做进一步详细的描述,但本申请的实施方式不限于此。
为了便于读者更清楚地理解本申请,现对区块链做一简要说明。区块链是一种去中心化的分布式账本数据库,记载方式不只是将账本数据存储在每个节点,而且每个节点会同步共享复制整个账本的数据。区块链技术本质上是一种数据库技术,每个区块就像一个硬盘,把信息全部保存下来,再通过密码学技术进行加密,这些被保存的信息就无法被篡改。区块链这个分布式的数字账本记录了所有曾经发生并经过系统一致认可的交易,每一个区块就是一个账本。总之,狭义来讲,区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本;广义来讲,区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算方式。
一般说来,区块链系统由数据层、网络层、共识层、激励层、合约层和应用层组成。其中,数据层封装了底层数据区块以及相关的数据加密和时间戳等技术;网络层包括分布式组网机制、数据传播机制和数据验证机制等;共识层主要封装网络节点的各类共识算法;激励层将经济因素集成到区块链技术体系中来,主要包括经济激励的发行机制和分配机制等;合约层主要封装各类脚本、算法和智能合约,是区块链可编程特性的基础;应用层封装了区块链的各种应用场景和案例。
区块链是由多个区块组成,每个区块包括神奇数、区块大小、头信息、交易列表和交易计数。其中,神奇数被作为区块之间的分隔符;区块大小记录了当前区块的大小;头信息记录了当前区块的头部信息,其HASH值是下一个新区块的参数。头信息主要包括区块的版本号,前一个区块的HASH值,当前区块中所有交易Merkle树的根节点的HASH值,当前区块生成的时间,当前区块生成所达成目标值的特征,以及当前区块工作量证明的参数;交易列表记录了当前区块保存的所有交易细节;交易计数表示当前区块记录的交易数。
相关技术中,医疗数据相较于其他类型的数据,对数据安全性的要求更高。为了提高医疗数据管理的安全性,利用区块链网络数据不可篡改的特点,常常将医疗数据存储至区块链网络。区块链网络中的任一节点都无法修改存储于区块链网络中的医疗数据。然而这样最终会导致具有管理权限的用户也无法对存储的医疗数据进行修改,为了解决该问题,本申请提供了一种医疗数据管理方法及装置,用于区块链网络中的节点,如计算机或智能终端。本申请中所涉及的医疗数据可以包括患者健康状况数据,示例地,患者健康状况数据可以包括患者的医疗影像数据、患者的视频数据、患者的图像数据等。本申请中所涉及的医疗数据还可以包括药品研究员发布的数据,比如药品作用机制,此外,医疗数据还可以包括药品研究员发布的数据医生发布的数据,比如临床病症、诊断结果等。本申请对医疗数据的内容不做限定。
图1是本发明实施例提供的一种医疗数据管理方法,用于区块链网络中的节点,请参见图1,该医疗数据管理方法包括:
步骤110、接收区块链中的第一区块的创建指令。
第一区块为区块链中除首个区块之外的区块。
步骤120、根据第一区块的创建指令创建第一区块。
第一区块包括第一前缀、第一数据和第二前缀。第一前缀为第一区块的前一个区块的哈希值,第一数据包括医疗数据,第二前缀为可重写后缀。
步骤130、接收针对第一区块的修改指令。
修改指令包括验证信息和第二数据,第二数据用于替换第一数据。
步骤140、判断修改指令中验证信息与预设信息是否相同。
步骤150、当修改指令中验证信息与预设验证信息相同时,修改第一区块的第二前缀,并采用第二数据替换第一数据。
综上所述,本申请实施例提供的医疗数据管理方法,能够接收区块链中的第一区块的创建指令,再根据第一区块的创建指令创建第一区块,之后,接收针对第一区块的修改指令,最后在修改指令中验证信息与预设信息相同时,修改第一区块的第二前缀,并采用第二数据替换第一数据,使授权节点对区块链网络中存储的医疗数据进行修改,具有管理权限的用户能对相关医疗数据进行修改,提高了管理医疗数据的灵活性。
图2是本发明实施例提供的另一种医疗数据管理方法,用于区块链网络中的节点,该医疗数据管理方法包括:
步骤210、接收区块链中的第一区块的创建指令。
第一区块为区块链中除首个区块之外的区块。
步骤220、根据第一区块的创建指令创建第一区块。
第一区块包括第一前缀、第一数据和第二前缀。第一前缀为第一区块的前一个区块的哈希值,第一数据包括医疗数据,第二前缀为可重写后缀。
步骤230、接收针对第一区块的修改指令。
修改指令包括验证信息和第二数据,第二数据用于替换第一数据。
步骤240、判断修改指令中验证信息与预设信息是否相同。
步骤250、当修改指令中验证信息与预设信息相同时,对第一前缀Pi和第二数据C′i进行哈希运算,得到第一哈希值h′i
第一哈希值h′i=H(Pi,C′i),C′i为用于替换第一数据Ci的第二数据,H()表示哈希函数。
示例地,哈希函数H()可以是SHA-256,即可以采用SHA-256算法对第一前缀Pi和第二数据C′i进行哈希运算。
步骤260、根据第一哈希值h′i计算用于替换第一区块的第二前缀Xi的第三前缀X′i
第二前缀Xi为1到(n-1)之间的随机整数,且
Figure BDA0002784777600000101
modn表示对n取模,n=p×q,p和q的表达形式均为(2r+1),r为质数。
其中,参见图3,步骤260可以包括:
步骤261、采用第一哈希值h′i对n取模得到第一整数d′i
步骤262、判断第二整数M与
Figure BDA0002784777600000102
是否互质。当第二整数M与
Figure BDA0002784777600000103
互质时,执行步骤263;当第二整数M与
Figure BDA0002784777600000104
不互质时,执行步骤264。
Figure BDA0002784777600000105
Figure BDA0002784777600000106
为n的欧拉函数值。
步骤263、采用前缀计算公式计算用于替换第一区块的第二前缀Xi的第三前缀X′i
前缀计算公式为:
Figure BDA0002784777600000107
e′i为M对
Figure BDA0002784777600000108
取模的倒数,Pi+1为第一区块的后一个区块的第一前缀,且
Figure BDA0002784777600000109
Xi为第一区块的第二前缀,di为采用第二哈希值hi对n取模后得到的整数,第二哈希值hi=H(Pi,Ci),Pi为第一区块的第一前缀,Ci为第一数据。
步骤264、对第一整数d′i进行替换,以使替换后的结果与
Figure BDA00027847776000001010
互质,并计算第三前缀X′i
当第二整数M与
Figure BDA00027847776000001011
不互质时,对第一整数d′i进行替换,替换后得到新的第二整数,新的第二整数与
Figure BDA00027847776000001012
互质,并按照步骤273计算第三前缀X′i
其中,步骤264中当第二整数M与
Figure BDA00027847776000001013
不互质时,对第一整数d′i进行替换,包括如下几个子步骤:
子步骤2641、判断第二整数M是否为偶数。当第二整数M为偶数时,执行子步骤2642至子步骤2644;当第二整数M不为偶数时,执行子步骤2645至子步骤2647。
子步骤2642、当第二整数M为偶数时,判断第二整数M是否能被
Figure BDA0002784777600000111
Figure BDA0002784777600000112
中的任一整除。
子步骤2643、当第二整数M不能被
Figure BDA0002784777600000113
Figure BDA0002784777600000114
中的任一整除时,采用第三整数c1替换d′i,c1=d′i+1。
子步骤2644、当第二整数M能被
Figure BDA0002784777600000115
Figure BDA0002784777600000116
中的任一整除时,采用第四整数c2替换d′i,c2=d′i-1。
子步骤2645、当第二整数M不为偶数时,判断第二整数M是否能被
Figure BDA0002784777600000117
Figure BDA0002784777600000118
中的任一整除。
子步骤2646、当第二整数M不能被
Figure BDA0002784777600000119
Figure BDA00027847776000001110
中的任一整除时,采用第五整数c3替换d′i,c3=d′i+2。
子步骤2647、当第二整数M能被
Figure BDA00027847776000001111
Figure BDA00027847776000001112
中的任一整除时,采用第六整数c4替换d′i,c6=d′i-2。
步骤270、采用第三前缀X′i替换第二前缀Xi
步骤280、采用第二数据替换第一数据。
为了对数据进行验证,保证修改后的数据为有效数据,进一步的,还可以按照验证公式执行数据验证操作,其中,验证公式为:
Figure BDA00027847776000001113
X′i第三前缀,d′i第一整数,Pi+1为第一区块的后一个区块的第一前缀,e′i为M对
Figure BDA00027847776000001114
取模的倒数,n=p×q,p和q的表达形式均为(2r+1),r为质数,modn表示对n取模。
综上所述,本申请实施例提供的医疗数据管理方法,能够接收区块链中的第一区块的创建指令,再根据第一区块的创建指令创建第一区块,之后,接收针对第一区块的修改指令,最后在修改指令中验证信息与预设信息相同时,修改第一区块的第二前缀,并采用第二数据替换第一数据,使授权节点对区块链网络中存储的医疗数据进行修改,具有管理权限的用户能对相关医疗数据进行修改,提高了管理医疗数据的灵活性。
基于同一发明构思,本申请实施例还提供了一种医疗数据管理装置,所述装置应用电子设备中。在具体应用中,该电子设备可以为加入区块链网络的节点设备,该节点设备可以是计算机或智能终端等。如图4所示,所述装置400包括:
第一接收模块410,用于接收区块链中的第一区块的创建指令,第一区块为区块链中除首个区块之外的区块。
创建模块420,用于根据第一区块的创建指令创建第一区块,第一区块包括第一前缀、第一数据和第二前缀,第一前缀为第一区块的前一个区块的哈希值,第一数据包括医疗数据,第二前缀为可重写后缀。
第二接收模块430,用于接收针对第一区块的修改指令,修改指令包括验证信息和第二数据,第二数据用于替换第一数据。
判断模块440,用于判断修改指令中验证信息与预设信息是否相同。
修改模块450,用于在修改指令中验证信息与预设信息相同时,修改第一区块的第二前缀,并采用第二数据替换第一数据。
如图5所示,修改模块450,包括:
第一计算子模块451,用于在修改指令中验证信息与预设信息相同时,对第一区块的第一前缀Pi和第二数据C′i进行哈希运算,得到第一哈希值h′i,第一哈希值h′i=H(Pi,C′i),C′i为用于替换第一数据Ci的第二数据,H()表示哈希函数。
第二计算子模块452,用于根据第一哈希值h′i计算用于替换第一区块的第二前缀Xi的第三前缀X′i,第二前缀Xi为1到(n-1)之间的随机整数,且
Figure BDA00027847776000001310
modn表示对n取模,n=p×q,p和q的表达形式均为(2r+1),r为质数。
第三计算子模块453,用于采用第三前缀X′i替换第二前缀Xi
可选地,第二计算子模块452,具体用于:
采用第一哈希值h′i对n取模得到第一整数d′i
判断第二整数M与
Figure BDA0002784777600000131
是否互质,
Figure BDA0002784777600000132
Figure BDA0002784777600000133
为n的欧拉函数值;
当第二整数M与
Figure BDA0002784777600000134
互质时,采用前缀计算公式计算用于替换第一区块的第二前缀Xi的第三前缀X′i,前缀计算公式为:
Figure BDA0002784777600000135
e′i为M对
Figure BDA0002784777600000136
取模的倒数,Pi+1为第一区块的后一个区块的第一前缀,且
Figure BDA0002784777600000137
Xi为第一区块的第二前缀,di为采用第二哈希值hi对n取模后得到的整数,第二哈希值hi=H(Pi,Ci),Pi为第一区块的第一前缀,Ci为第一数据;
当第二整数M与
Figure BDA0002784777600000138
不互质时,对第一整数d′i进行替换,以使替换后的结果与
Figure BDA0002784777600000139
互质,并计算第三前缀X′i
可选地,第一计算子模块451,具体用于:
采用SHA-256算法对第一区块的第一前缀Pi和第二数据C′i进行哈希运算。
综上所述,本申请实施例提供的医疗数据管理装置,先接收区块链中的第一区块的创建指令;再根据第一区块的创建指令创建第一区块;之后,接收针对第一区块的修改指令,修改指令包括验证信息和用于替换第一区块的第一数据的第二数据;最后在修改指令中所述验证信息与预设信息相同时,修改第一区块的第二前缀,并采用第二数据替换第一数据,使授权节点对区块链网络中存储的医疗数据进行修改,具有管理权限的用户能对相关医疗数据进行修改,提高了管理医疗数据的灵活性。
本申请实施例还提供了一种电子设备,如图6所示,包括处理器1801、通信接口1802、存储器1803和通信总线1804,其中,处理器1801,通信接口1802,存储器1803通过通信总线1804完成相互间的通信。
存储器1803,用于存放计算机程序。
处理器1801,用于执行存储器1803上所存放的程序时,实现本申请提供的医疗数据管理方法步骤:
接收区块链中的第一区块的创建指令,第一区块为区块链中除首个区块之外的区块;
根据第一区块的创建指令创建第一区块,第一区块包括第一前缀、第一数据和第二前缀,第一前缀为第一区块的前一个区块的哈希值,第一数据包括医疗数据,第二前缀为可重写后缀;
接收针对第一区块的修改指令,修改指令包括验证信息和第二数据,第二数据用于替换第一数据;
判断修改指令中验证信息与预设信息是否相同;
当修改指令中验证信息与预设验证信息相同时,修改第一区块的第二前缀,并采用第二数据替换第一数据。
当修改指令中验证信息与预设信息相同时,修改第一区块的第二前缀,包括:
当修改指令中验证信息与预设信息相同时,对第一前缀Pi和第二数据C′i进行哈希运算,得到第一哈希值h′i,第一哈希值h′i=H(Pi,C′i),C′i为用于替换第一数据Ci的第二数据,H()表示哈希函数;
根据第一哈希值h′i计算用于替换第一区块的第二前缀Xi的第三前缀X′i,第二前缀Xi为1到(n-1)之间的随机整数,且
Figure BDA0002784777600000151
modn表示对n取模,n=p×q,p和q的表达形式均为(2r+1),r为质数;
采用第三前缀X′i替换第二前缀Xi
根据第一哈希值h′i计算用于替换第一区块的第二前缀Xi的第三前缀X′i,包括:
采用第一哈希值h′i对n取模得到第一整数d′i
判断第二整数M与
Figure BDA0002784777600000152
是否互质,
Figure BDA0002784777600000153
Figure BDA0002784777600000154
为n的欧拉函数值;
当第二整数M与
Figure BDA0002784777600000155
互质时,采用前缀计算公式计算用于替换第一区块的第二前缀Xi的第三前缀X′i,前缀计算公式为:
Figure BDA0002784777600000156
e′i为M对
Figure BDA0002784777600000157
取模的倒数,Pi+1为第一区块的后一个区块的第一前缀,且
Figure BDA0002784777600000158
Xi为第一区块的第二前缀,di为采用第二哈希值hi对n取模后得到的整数,第二哈希值hi=H(Pi,Ci),Pi为第一区块的第一前缀,Ci为第一数据;
当第二整数M与
Figure BDA0002784777600000159
不互质时,对第一整数d′i进行替换,以使替换后的结果与
Figure BDA00027847776000001510
互质,并计算第三前缀X′i
对第一前缀Pi和第二数据C′i进行哈希运算,包括:
采用SHA-256算法对第一前缀Pi和第二数据C′i进行哈希运算。
该装置中,存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本申请还提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现本申请提供的医疗数据管理方法步骤。
本发明中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种医疗数据管理方法,其特征在于,所述方法包括:
接收区块链中的第一区块的创建指令,所述第一区块为所述区块链中除首个区块之外的区块;
根据所述第一区块的创建指令创建所述第一区块,所述第一区块包括第一前缀、第一数据和第二前缀,所述第一前缀为所述第一区块的前一个区块的哈希值,所述第一数据包括医疗数据,所述第二前缀为可重写后缀;
接收针对所述第一区块的修改指令,所述修改指令包括验证信息和第二数据,所述第二数据用于替换所述第一数据;
判断所述修改指令中所述验证信息与预设信息是否相同;
当所述修改指令中所述验证信息与所述预设验证信息相同时,修改所述第一区块的第二前缀,并采用所述第二数据替换所述第一数据。
2.根据权利要求1所述的方法,其特征在于,所述当所述修改指令中所述验证信息与所述预设信息相同时,修改所述第一区块的第二前缀,包括:
当所述修改指令中所述验证信息与所述预设信息相同时,对所述第一前缀Pi和所述第二数据C′i进行哈希运算,得到第一哈希值h′i,所述第一哈希值h′i=H(Pi,C′i),所述C′i为用于替换所述第一数据Ci的第二数据,H()表示哈希函数;
根据所述第一哈希值h′i计算用于替换所述第一区块的第二前缀Xi的第三前缀X′i,所述第二前缀Xi为1到(n-1)之间的随机整数,且
Figure FDA0002784777590000011
modn表示对n取模,所述n=p×q,p和q的表达形式均为(2r+1),所述r为质数;
采用所述第三前缀X′i替换所述第二前缀Xi
3.根据权利要求2所述的方法,其特征在于,所述根据所述第一哈希值h′i计算用于替换所述第一区块的第二前缀Xi的第三前缀X′i,包括:
采用所述第一哈希值h′i对所述n取模得到第一整数d′i
判断第二整数M与
Figure FDA0002784777590000021
是否互质,所述
Figure FDA0002784777590000022
所述
Figure FDA0002784777590000023
为所述n的欧拉函数值;
当所述第二整数M与所述
Figure FDA0002784777590000024
互质时,采用前缀计算公式计算用于替换所述第一区块的第二前缀Xi的第三前缀X′i,所述前缀计算公式为:
Figure FDA0002784777590000025
所述e′i为所述M对所述
Figure FDA0002784777590000026
取模的倒数,所述Pi+1为所述第一区块的后一个区块的第一前缀,且
Figure FDA0002784777590000027
所述Xi为所述第一区块的第二前缀,所述di为采用第二哈希值hi对所述n取模后得到的整数,所述第二哈希值hi=H(Pi,Ci),所述Pi为所述第一区块的第一前缀,所述Ci为所述第一数据;
当所述第二整数M与所述
Figure FDA0002784777590000028
不互质时,对所述第一整数d′i进行替换,以使替换后的结果与所述
Figure FDA0002784777590000029
互质,并计算第三前缀X′i
4.根据权利要求2或3所述的方法,其特征在于,对所述第一前缀Pi和所述第二数据C′i进行哈希运算,包括:
采用SHA-256算法对所述第一前缀Pi和所述第二数据C′i进行哈希运算。
5.一种医疗数据管理装置,其特征在于,所述装置包括:
第一接收模块,用于接收区块链中的第一区块的创建指令,所述第一区块为所述区块链中除首个区块之外的区块;
创建模块,用于根据所述第一区块的创建指令创建所述第一区块,所述第一区块包括第一前缀、第一数据和第二前缀,所述第一前缀为所述第一区块的前一个区块的哈希值,所述第一数据包括医疗数据,所述第二前缀为可重写后缀;
第二接收模块,用于接收针对所述第一区块的修改指令,所述修改指令包括验证信息和第二数据,所述第二数据用于替换所述第一数据;
判断模块,用于判断所述修改指令中所述验证信息与预设信息是否相同;
修改模块,用于在所述修改指令中所述验证信息与所述预设信息相同时,修改所述第一区块的第二前缀,并采用所述第二数据替换所述第一数据。
6.根据权利要求5所述的装置,其特征在于,所述修改模块,包括:
第一计算子模块,用于在所述修改指令中所述验证信息与所述预设信息相同时,对所述第一区块的第一前缀Pi和所述第二数据C′i进行哈希运算,得到第一哈希值h′i,所述第一哈希值h′i=H(Pi,C′i),所述C′i为用于替换所述第一数据Ci的第二数据,H()表示哈希函数;
第二计算子模块,用于根据所述第一哈希值h′i计算用于替换所述第一区块的第二前缀Xi的第三前缀X′i,所述第二前缀Xi为1到(n-1)之间的随机整数,且
Figure FDA0002784777590000031
modn表示对n取模,所述n=p×q,p和q的表达形式均为(2r+1),所述r为质数;
第三计算子模块,用于采用第三前缀X′i替换第二前缀Xi
7.根据权利要求6所述的装置,其特征在于,所述第二计算子模块,具体用于:
采用所述第一哈希值h′i对所述n取模得到第一整数d′i
判断第二整数M与
Figure FDA0002784777590000032
是否互质,所述
Figure FDA0002784777590000033
所述
Figure FDA0002784777590000034
为所述n的欧拉函数值;
当所述第二整数M与所述
Figure FDA0002784777590000041
互质时,采用前缀计算公式计算用于替换所述第一区块的第二前缀Xi的第三前缀X′i,所述前缀计算公式为:
Figure FDA0002784777590000042
所述e′i为所述M对所述
Figure FDA0002784777590000043
取模的倒数,所述Pi+1为所述第一区块的后一个区块的第一前缀,且
Figure FDA0002784777590000044
所述Xi为所述第一区块的第二前缀,所述di为采用第二哈希值hi对所述n取模后得到的整数,所述第二哈希值hi=H(Pi,Ci),所述Pi为所述第一区块的第一前缀,所述Ci为所述第一数据;
当所述第二整数M与所述
Figure FDA0002784777590000045
不互质时,对所述第一整数d′i进行替换,以使替换后的结果与所述
Figure FDA0002784777590000046
互质,并计算第三前缀X′i
8.根据权利要求6或7所述的装置,其特征在于,所述第一计算子模块,具体用于:
采用SHA-256算法对所述第一区块的第一前缀Pi和所述第二数据C′i进行哈希运算。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口和所述存储器通过通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行存储器上所存放的程序时,实现权利要求1-4任一所述的方法步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-4任一所述的方法步骤。
CN202011291700.2A 2020-11-18 2020-11-18 医疗数据管理方法及装置 Pending CN114519191A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011291700.2A CN114519191A (zh) 2020-11-18 2020-11-18 医疗数据管理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011291700.2A CN114519191A (zh) 2020-11-18 2020-11-18 医疗数据管理方法及装置

Publications (1)

Publication Number Publication Date
CN114519191A true CN114519191A (zh) 2022-05-20

Family

ID=81594148

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011291700.2A Pending CN114519191A (zh) 2020-11-18 2020-11-18 医疗数据管理方法及装置

Country Status (1)

Country Link
CN (1) CN114519191A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115982414A (zh) * 2022-12-16 2023-04-18 清华大学 一种图数据处理与增量存储方法、装置及计算机设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115982414A (zh) * 2022-12-16 2023-04-18 清华大学 一种图数据处理与增量存储方法、装置及计算机设备
CN115982414B (zh) * 2022-12-16 2023-07-25 清华大学 一种图数据处理与增量存储方法、装置及计算机设备

Similar Documents

Publication Publication Date Title
WO2021204040A1 (zh) 联邦学习数据处理方法、装置、设备及存储介质
EP3520047B1 (en) Immutable cryptographically secured ledger-backed databases
CN110419053B (zh) 用于信息保护的系统和方法
JP7544733B2 (ja) 分散データベース内に状態証明及び台帳識別子を実装するための方法及び機器
JP7161273B2 (ja) ブロックチェーン上のスマート・コントラクト・グループに対する自動データ投影
JP2022549581A (ja) Dag構造のブロックチェーンにおいてブロックの連続的順序を決定するためのコンピューティング・システム、方法、非一時的コンピュータ可読媒体及びコンピュータ・プログラム
US11018853B2 (en) Workflow management via distributed ledgers and smart contracts
WO2021109718A1 (zh) 一种基于区块链系统的验证方法及装置
WO2021139467A1 (zh) 联邦学习方法、系统、计算机设备和存储介质
CN110083604A (zh) 一种数据确权方法及装置
US20200021602A1 (en) Trace-based transaction validation and commitment
US11917057B2 (en) Method, device, and apparatus for processing distributed data, and medium
WO2023124219A1 (zh) 一种联合学习模型迭代更新方法、装置、系统及存储介质
CN112307458A (zh) 轻节点的上链方法、装置、物联网中控终端及区块链网络
WO2022068356A1 (zh) 基于区块链的信息加密方法、装置、设备及介质
WO2022048359A1 (zh) 一种数据归档方法、装置、电子设备和存储介质
WO2024140258A1 (zh) 基于区块链的交易监管方法、系统、装置和电子设备
CN117043772A (zh) 区块链数据分离
WO2023134070A1 (zh) 去中心的联邦聚类方法、装置、电子设备及存储介质
CN112133386A (zh) 一种基于区块链的信息处理方法、装置、设备及介质
CN112148350A (zh) 作品远程版本管理方法、电子设备以及计算机存储介质
EP4258163A1 (en) Tree model training method, apparatus and system
CN115396113A (zh) 基于区块链的医疗数据处理方法、装置、计算机设备
CN114519191A (zh) 医疗数据管理方法及装置
CN112202555B (zh) 基于信息的属性生成随机数的信息处理方法、装置及设备

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