CN108563788B - 基于区块链的数据查询方法、装置、服务器及存储介质 - Google Patents
基于区块链的数据查询方法、装置、服务器及存储介质 Download PDFInfo
- Publication number
- CN108563788B CN108563788B CN201810393489.1A CN201810393489A CN108563788B CN 108563788 B CN108563788 B CN 108563788B CN 201810393489 A CN201810393489 A CN 201810393489A CN 108563788 B CN108563788 B CN 108563788B
- Authority
- CN
- China
- Prior art keywords
- data
- target
- index
- identifier
- dimension
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- 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/6227—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 where protection concerns the structure of data, e.g. records, types, queries
-
- 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/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2264—Multidimensional index structures
-
- 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/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2471—Distributed queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- 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/602—Providing cryptographic facilities or services
-
- 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
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Data Mining & Analysis (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种基于区块链的数据查询方法、装置、服务器及存储介质,属于网络技术领域,本方法将数据查询与区块链技术相结合,当获取到用户查询数据的请求时,根据用户标识及数据标识,基于数据权限信息确定用户查询该数据的权限,当确定该用户不具备查询该数据的权限时,根据数据权限信息中的目标策略,获取多个终端的查询许可,当获取到的查询许可符合目标策略时,从存储***中获取数据。该方法通过设置数据权限信息提高了数据的安全性和隐私性,同时通过不同数据的不同目标策略,提升了数据查询权限设定的灵活性,更加的安全与智能。
Description
技术领域
本发明涉及网络技术领域,特别涉及一种基于区块链的数据查询方法、装置、服务器及存储介质。
背景技术
随着网络技术的发展,互联网可提供的业务越来越多,各种业务所产生的数据量也急剧膨胀,而在业务处理过程中,会涉及到对业务数据进行存储以及基于存储的查询。但在数据的查询过程中,数据会在设备之间进行传输,因此,可能会造成数据被篡改、泄露或窃取等情况,危害数据安全,所以如何安全高效的进行数据查询成为人们十分关心的问题。
目前的数据查询方法,是基于用户账号的权限来进行的。当接收到任一用户的数据查询请求时,会根据该用户账号对应的权限,来判断该用户是否能够查询某项业务数据,从而,在确定该用户具有查询权限时,会返回所请求的业务数据业务。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
目前的数据查询方法,仅根据用户账号的权限来进行数据查询,无法对不同数据设置不同级别的查询权限,导致数据查询时的安全性低,灵活性差。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种基于区块链的数据查询方法、装置、服务器及存储介质。所述技术方案如下:
一方面,提供了一种基于区块链的数据查询方法,所述方法包括:
根据查询请求,获取待查询的第一数据的数据标识,所述查询请求携带发起查询请求的用户标识;
根据所述数据标识,获取区块链***中的目标区块链中目标区块内的数据权限信息;
当所述数据权限信息不包括所述用户标识时,向所述区块链***中的至少一个目标节点发送查询许可请求,所述查询许可请求携带所述用户标识和所述数据标识;
当接收到的查询许可响应符合所述数据权限信息中的目标策略时,根据所述数据标识,从数据存储***中获取所述第一数据。
一方面,提供了一种基于区块链的数据查询装置,所述装置包括:
数据标识获取模块,用于根据查询请求,获取待查询的第一数据的数据标识,所述查询请求携带发起查询请求的用户标识;
数据权限信息获取模块,用于根据所述数据标识,获取目标区块链中目标区块内的数据权限信息;
发送模块,用于当所述数据权限信息不包括所述用户标识时,向所述区块链***中的至少一个目标节点发送查询许可请求,所述查询许可请求携带所述用户标识和所述数据标识;
数据获取模块,用于当接收到的查询许可响应符合所述数据权限信息中的目标策略时,根据所述数据标识,从数据存储***中获取所述第一数据。
一方面,提供了一种服务器,所述服务器包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如上述基于区块链的数据查询方法所执行的操作。
一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如上述基于区块链的数据查询方法所执行的操作。
本发明实施例提供的技术方案带来的有益效果是:
通过当获取到用户查询数据的请求时,基于数据权限信息确定用户查询该数据的权限,当确定该用户是数据所有者时,根据数据权限信息中的共识策略,获取多个节点的查询许可,当获取到的查询许可符合目标策略时,从数据存储***中获取数据。该方法通过设置数据权限信息提高了数据的安全性和隐私性,同时可以为不同数据的不同目标策略,提升了数据查询权限设定的灵活性,使之更加的安全与智能。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种数据存储***的结构示意图;
图2是本发明实施例提供的一种基于区块链的数据查询方法的流程图;
图3是本发明实施例提供的一种数据存储过程的示意图;
图4是本发明实施例提供的一种数据查询过程的示意图;
图5是本发明实施例提供的一种基于区块链的数据查询装置的结构示意图;
图6是本发明实施例提供的一种服务器的示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
下面,对下述具体说明过程中出现的一些名词进行介绍:
智能合约:根据特定条件自动执行的合约程序,是用户与区块链进行交互,利用区块链实现业务逻辑的重要途径。例如,各家机构可以通过服务器中部署的区块链上的智能合约接入该数据存储***,来使用该数据存储***提供的数据存储以及数据查询等功能。
目标策略:该目标策略可以是共识策略的一种,例如背书策略,可以用于指示数据存储***中背书过程需满足的必要条件。例如,该背书策略可以指示需要背书的多个背书节点,形成一个背书节点集合,背书过程则需要该背书节点集合的联合签名。
图1是本发明实施例提供的一种数据存储***的结构示意图。该***包括多个服务器101、多个存储设备102;
其中,多个服务器101可以配置有同一条区块链,也即是,该多个服务器101可以组成区块链***,各个服务器101分别为该区块链***中的节点。该多个服务器101可以是同一机构的多个服务器,还可以是属于不同机构的多个服务器,例如,该区块链***内可以包括医院的各个科室的服务器;当然,该区块链***内还可以包括保险机构的服务器、银行的服务器等等。各个机构的用户可以通过终端设备来访问机构的服务器,该多个终端设备可以为能够访问该多个服务器101的电子设备,该电子设备可以为电脑、智能手机、平板电脑或者其他电子设备。
当然,为了进行安全验证、权限管理等服务,区块链***中配置有CA中心(Certificate Authority,证书授权中心)103,用于存储各个机构的密钥,区块链***中的各个服务器可以从CA中心中获取各个机构的密钥,以进行数据的加密和解密等过程。多个存储设备102用于为该多个服务器101提供存储服务,需要说明的是,该多个存储设备102可以组成分布式存储***,用于采用分布式的形式来对提供存储数据。
基于上述图1中所提供的实施环境,在终端有数据存储需求时,可以通过区块链***所提供的存储机制,将数据存储至分布式***中的存储设备中,以方便后续查询,下面对存储过程和查询过程进行介绍,图2是本发明实施例提供的一种基于区块链的数据查询方法的流程图,该方法的执行主体可以为区块链***内的服务器,参见图2,该方法可以包括:
201、当服务器接收到数据存储请求时,基于该数据存储请求所对应的初始数据,生成第一数据,该第一数据的数据长度为预设数据长度,且该第一数据的维度与数据索引信息表内的数据维度相对应。
当服务器需要存储数据时,为了便于后续的存储和查询,可以对数据存储请求对应的初始数据进行规范化,该规范化包括两部分,一是对初始数据的各个维度进行规范化,二是对数据长度进行规范化。具体地,该步骤201可以包括下述步骤一至步骤三:
步骤一、将该初始数据在各个维度上的数据信息转换为对应的索引值,得到该初始数据的不同维度的索引值。
对于初始数据来说,其可以具有多个不同维度上的信息,因此,为了使得数据的表达方式统一,可以将该初始数据在各个维度上的数据信息转换为标准数值,以表达不同维度上的数据信息。例如,对于一条患者档案来说,其维度可以包括性别维度和科室维度,其中,性别维度包括男性、女性,科室维度包括内科、外科以及眼科等等。
需要说明的是,在进行转换时,初始数据具体转换为哪些维度的索引值,可以基于该初始数据对应的数据索引信息表确定,不同类型的初始数据可以对应于不同数据索引信息表,例如,医院的患者档案可以对应于该医院的数据索引信息表,相应的,在对该医院的患者档案进行转换时,则可以根据该医院的数据索引信息表所定义的多个维度来进行转换。在确定待转换的未读时,可以根据初始数据的数据基本信息等来确定数据索引信息表。其中,不同数据基本信息可以用于表示初始数据的归属机构,不同基本信息可以对应于不同机构的数据索引信息表。
以数据索引信息表为例,数据索引信息表包括已存储数据的数据标识以及不同维度上的索引值,其中不同维度用于指示数据的不同类别,维度上的索引值用于指示维度所包含的范围。该数据索引信息表可以采用BitMap(位图文件)的格式存储于数据存储***中。当第一数据属于数据索引信息表中的某一维度上的索引值时,可以在该第一数据标识所对应的维度的索引值的单元格内记录1,当第一数据不属于数据索引信息表中的某一维度上的索引值时,可以在该第一数据标识所对应的维度的索引值的单元格内记录0,本发明实施例对此不进行具体限定。
例如,当第一数据的索引信息表为医院中患者档案数据的索引信息表时,该维度可以为性别维度或科室维度等,其中,性别维度的索引值可以男和女,科室维度中的索引值可以为内科、外科及眼科等,本发明实施例对此不进行具体限定。该患者档案的数据标识可以为X1、X2、X3、X4、X5、X6…Xn等,存储***中的索引信可以如下表1所示:
表1
一般地,上述索引表中所定义的维度的索引值取值,可以通过枚举提供,也即是,提供一个维度上所有可能的索引值,当然,如果不在枚举范围内的数据,可以提示管理用户进行修改。
步骤二、当该初始数据的数据长度小于该预设数据长度时,在该初始数据之后填充预设数据。
将各个数据均转换为数据长度相同的数据,可以使得数据在存储时具有一定规律,数据存储时的偏移位置可以根据数据长度和间隔数据的个数来确定,大大提高了查询的效率。
由于初始数据的大小可能短于预设数据长度,则不足的部分可以由预设数据填充,从而使得数据的大小均保持一致,在进行修改、删除以及替换等更新时,可以直接对一段连续地址空间进行修改来实现。该预设数据可以为一段预设取值等,例如连续多个数字0。
步骤三、基于该初始数据的不同维度的索引值和填充后的数据,生成该第一数据。
202、服务器获取待存储的第一数据的数据权限信息,并根据数据权限信息中的目标策略,获取该第一数据的数据权限信息的目标策略中各个目标节点的公钥,对该第一数据进行加密,得到加密数据。
本发明实施例中,在存储第一数据时还可以设置该第一数据的数据权限信息,该设置过程可以是服务器获取该服务器对应的数据权限信息,还可以是由进行存储的客户端用户根据自身需求设置,该数据权限信息可以为用户为该第一数据设定的可以查询该第一数据的用户的权限。当然,还可以是根据数据自身属性自动获取数据权限信息。例如,以医院的患者档案为例,当需要对患者档案进行存储时,可以将数据权限信息设置为仅用户以及各个科室能够查看。而以用户的付款记录为例,可以将数据权限信息设置为仅用户、各个科室以及付款账户所属机构能够查看。
进一步的,该第一数据的数据权限信息中可以包括该第一数据的数据标识、对应的具有直接查看该第一数据的权限的用户标识以及该第一数据的目标策略等,该目标策略至少包括为该第一数据进行共识的多个目标节点以及共识成功条件等。如,当医院中的服务器存储的第一数据为患者档案时,可以设定该患者及该患者的主治医生具有查询该患者档案的权限,将该患者档案的档案标号作为该第一数据的数据标识,该患者档案的权限中可以包括该档案标号、患者的用户标识以及该患者主治医生的用户标识。可选的,还可以在该患者档案的数据权限信息中存储目标策略,如,当查看该患者档案的用户标识不属于该患者标识及该患者主治医生的用户标识时,可以在获取到多个目标节点的许可时,查看该患者档案。
基于上述内容,在步骤202中,在获取到数据权限信息后,服务器可以获取数据权限信息中的目标策略中的各个目标节点的节点标识,并基于各个目标节点的节点标识,从CA中心中,获取各个目标节点的公钥,对该第一数据进行加密,得到加密数据。
该基于多个公钥进行加密的过程可以基于一定顺序进行,也即是,顺序采用该多个公钥,对该第一数据进行多重加密,以得到待存储的数据。当然,该加密顺序可以存储于数据权限信息中,以便于后续在进行解密时,按照该加密顺序进行倒序解密。
203、服务器提取该第一数据的数据标识以及不同维度上的索引值。
204、服务器将该第一数据的数据标识以及不同维度上的索引值添加至该数据索引信息表中,更新该数据存储***中的数据索引信息表,并将该加密数据存储至该数据存储***中,该数据索引信息表包括已存储数据的数据标识以及不同维度上的索引值。
在进行加密之前,为了便于后续的查询,还需要进行索引值的提取以及数据索引信息表的更新,以使得数据存储***能够实时根据实际存储的数据来进行查询。
205、服务器基于该第一数据的数据标识、数据权限信息以及该加密数据的数据特征值,生成目标区块,将该目标区块加入该目标区块链。
具体地,在生成目标区块并将目标区块加入目标区块链时,可以通过区块链***内的共识机制进行,可以涉及到***中多个服务器之间的互相交互,本发明实施例对此不做赘述。
该步骤201至205的过程实际上可以总结为如图3的流程,也即是,在存储数据时,可以首先设定背书策略以及对数据进行规范化,然后可以并行进行索引抽取以及数据多重加密的过程,在加密过程中,涉及到与CA中心之间的交互,最终,将抽取到的索引和加密后的数据对应存储至数据存储***,在此过程中,还涉及到对数据索引信息表的更新。
206、服务器根据接收到的查询请求,获取待查询的第一数据的数据标识,该查询请求携带发起查询请求的用户标识。
用户可以通过登录服务器来触发查询请求,例如用自己的档案标号作为登录账号来进行查询自己的患者档案等等。当该查询请求中携带有数据标识时,将该数据标识确定为待查询的第一数据的数据标识,如,医院区块链***中的服务器获取查询某一患者档案的查询请求,当该查询请求中携带有该患者档案的档案标号时,将该档案标号作为该待查询的第一数据的数据标识。
进一步的,当服务器获取到的查询请求为查询某一类数据的请求时,可以根据数据存储***中第一数据的索引信息表,获取该待查询的第一数据的数据标识,具体的获取该数据标识的方法如下述步骤206A-206B。
206A、服务器获取该查询请求中的查询条件信息,该查询条件信息包括至少一个目标维度的目标索引值;
当服务器获取到的查询请求为查询条件信息时,确定该查询条件信息中的维度为目标维度,确定该查询条件信息中维度的索引值为目标索引值。如,该目标维度可以为男性维度,该目标索引值可以为男性维度的索引值为1,当目标维度为内科维度时,该目标索引值可以为内科维度的索引值为1等,本发明实施例对此不进行具体限定。当然,在查询条件信息中可以包括两个或两个以上的维度的目标索引值,例如,目标维度可以为男性维度和内科维度,则目标索引值可以为男性维度的索引值为1以及内科维度的索引值为1。
206B、根据该至少一个目标维度的目标索引值,查询该数据存储***中的数据索引信息表,得到该第一数据的数据标识。
当该至少一个目标维度的目标索引值的数目为1时,根据一个目标维度的目标索引值,从该数据索引信息表中,获取至少一个第一数据标识,每个第一数据标识的目标维度的索引值等于该目标索引值。例如,当医院服务器获取到的查询条件信息中的目标维度索引值为女性时,在数据索引信息表中查找维度为性别维度,索引值为女性的列表,并提取该表中记录为1的单元格所对应的数据标识。如下表2所示,当查询条件信息中的目标索引值为女性时,得到的第一数据的数据标识为X2、X3、X5、X6和Xn。
表2
X1 | X2 | X3 | X4 | X5 | X6 | X7 | … | Xn | ||
性别维度 | 女性 | 0 | 1 | 1 | 0 | 1 | 1 | 0 | … | 1 |
进一步的,当该至少一个目标维度的目标索引值的数目为至少两个时,根据该至少两个目标维度的目标索引值,从该数据索引信息表中,获取至少一个第二数据标识,每个第二数据标识的该至少两个目标维度的索引值的与操作等于该至少两个目标索引值的乘积。例如,当医院服务器获取到的查询条件信息中的目标维度索引值为女性和眼科时,在数据索引信息表中查找维度为性别维度的索引值为女性,科室维度的索引值为眼科的列表,当两个列表同一列的单元格中记录的数字乘积为1时,提取该列对应的数据标识。如下表3所示,当查询条件信息中的目标索引值为女性和眼科时,得到的第一数据的数据标识为X3。
表3
X1 | X2 | X3 | X4 | X5 | X6 | X7 | … | Xn | ||
性别维度 | 女性 | 0 | 1 | 1 | 0 | 1 | 1 | 0 | … | 1 |
科室维度 | 眼科 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | … | 0 |
207、服务器根据该数据标识,获取目标区块链中目标区块内的数据权限信息,判断该数据权限信息是否包括该用户标识,如果是,执行步骤210,如果否,执行步骤208。
该目标区块是指目标区块链中存储有该数据标识的区块。在本发明实施例中,当服务器获取到用户输入的查询请求,并根据该查询请求确定该第一数据的数据标识时,服务器在其配置的目标区块链的目标区块中,根据该数据标识,确定该第一数据的数据权限信息,当该第一数据的数据权限信息中包括该查询请求携带的用户标识时,服务器执行步骤210,根据该用户标识从数据存储***中获取该第一数据。如,当医院的服务器获取到用户对女性眼科患者档案的查询请求,根据该查询请求确定该女性眼科患者档案的数据标识为X3时,服务器可以在其配置的目标区块链的目标区块中,根据该数据标识X3,确定该患者档案的数据权限信息,该数据权限信息中可以包括眼科主任的用户标识、该患者主治医生的用户标识或该患者的用户标识等,本发明实施例对此不进行具体限定,当服务器获取到的查询请求中携带的用户标识为眼科主任的用户标识时,服务器可以根据该眼科主任的用户标识及该患者档案的数据权限信息,确定该眼科主任具有查询该患者档案的权限。当然,上述举例时采用了个人用户的用户标识来限定数据权限信息,在实际场景中,该数据权限信息所包括的还可以为节点标识或是机构标识等,以将该数据的查询权限开放给相应节点或者相应机构,本发明实施例对此不做具体限定。
进一步地,当该第一数据的数据权限信息中不包括该查询请求携带的用户标识时,服务器执行步骤208。
208、服务器向区块链***的至少一个目标服务器发送查询许可请求,该查询许可请求携带该用户标识和该数据标识。
当服务器确定该第一数据的数据权限信息中不包括该查询请求携带的用户标识时,服务器向至少一个目标服务器发送查询请求,该至少一个目标服务器可以为区块链***中的至少一个目标节点。进一步地,该至少一个目标节点可以为目标策略所限定的目标节点,以将共识限制在几个节点内,减少区块链***内的信令交互数量。
209、服务器当接收到查询许可响应时,判断该查询许可是否符合该数据权限信息中的目标策略,如果是,继续执行步骤210,如果否,停止获取该第一数据。
在本发明实施例中,当服务器接收到该至少一个服务器发回的查询许可请求时,根据该查询许可请求中携带的该至少一个服务器的服务器标识,查看许可查询的服务器是否满足该数据的数据权限信息中的目标策略的要求。例如,当目标策略要求所有目标服务器均需要返回查询许可响应,才能够提供第一数据的查询,则服务器需要在接收到所有目标服务器的查询许可响应时,为当前的查询过程提供第一数据。又例如,当目标策略要求只要有某几个目标服务器返回查询许可响应,则可以提供第一数据的查询,则服务器只要接收到该几个目标服务器返回的查询许可响应时,提供第一数据的查询。
以一个示例来说明,当医院的区块链***中包含m个组织时,这m个组织的服务器的服务器标识可以为:U1、U2、U3、U4…Um,该目标策略中的背书成功条件的格式可以为AND(U1、U2、U3、),此时该目标策略用于指示当服务器获取到服务器标识为U1和U2和U3的三个服务器发送的查询许可时,可以查询该第一数据。可选的,该目标策略中的背书成功条件还可以为AND(U1、OR(U2、U3、)),此时该目标策略用于指示,当服务器获取到服务器标识为U1的服务器以及服务器标识为U2或U3中的任意一个或两个服务器发送的查询许可时,可以为本次查询返回第一数据,本发明实施例对此不进行具体限定。
当服务器接收到的查询许可响应不符合该数据权限信息中的目标策略时,则不执行获取该第一数据的步骤。当服务器接收到的查询许可响应符合该数据权限信息中的目标策略时,继续执行下述查询该第一数据的过程。
进一步的,当服务器确定不可以获取该第一数据时,该服务器还可以显示无查询权限的提示信息,以提醒用户不具备查询该数据的权限。
210、服务器根据数据标识,从数据存储***中获取第一数据。
在本发明实施例中,当服务器接收到的查询许可响应符合该数据权限信息中的目标策略时,获取该第一数据,具体获取该第一数据的过程包括下述步骤210A-210C。
210A、服务器确定该第一数据标识与该数据索引信息表中第一个数据标识之间的相对位置。
当服务器可以查询该第一数据时,根据该第一数据的数据标识,在数据存储***中查询该第一数据的数据标识所在的数据索引信息表,并获取该数据索引信息表中该数据标识所在的位置,以及该数据索引信息表中第一个数据标识所在的位置,从而根据两个数据标识所在位置,确定两个数据标识间的相对位置,也即是,该两个数据标识之间间隔了几个数据标识。如下表4所示,当第一数据的数据标识为X3时,获取表3中X1的位置,从而确定X1与X3之间的相对位置。
表4
X1 | X2 | X3 | X4 | X5 | X6 | X7 | … | Xn | ||
性别维度 | 女性 | 0 | 1 | 1 | 0 | 1 | 1 | 0 | … | 1 |
科室维度 | 眼科 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | … | 0 |
210B、服务器根据该相对位置和预设数据长度,确定该第一数据在第一文件中的偏移位置,该第一文件为该数据索引信息表对应的文件。
210C、服务器根据该第一文件在该数据存储***中的存储位置和该偏移位置,从该数据存储***中获取该第一数据。
该数据索引信息表中第一个数据标识所在的位置即是该第一文件的存储起始位置,而在确定了相对位置后,可以根据相对位置和预设数据长度,确定该第一数据与第一个数据标识对应的数据之间的存储地址之差,该存储地址之差即为第一数据在第一文件中的偏移位置,而由于第一文件的存储起始位置已知,则可以获知该第一数据的实际存储位置,并基于该实际存储位置进行数据的获取。
这种基于相对位置的查询,可以大大提高数据获取的速度,降低了查询过程的复杂性,提高了查询速率。
211、服务器根据目标区块中存储的数据特征值,对第一数据进行校验。
在本发明实施例中,当服务器从数据存储***中获取到第一数据时,首先,根据获取到的第一数据,生成该第一数据的特征值,并根据该第一数据的数据标识,在目标区块链的目标区块中,提取该目标区块中存储的数据特征值,当该生成特征值与该提取的特征值相同时,则对第一数据的校验成功,如果不相同,则校验失败。根据特征值对获取到的第一数据进行校验,可以保证获取到的第一数据在存储及查询过程中没有被篡改。当服务器对该第一数据校验成功时,执行后续对数据的解密步骤,当服务器对该第一数据校验失败时,说明该第一数据被篡改,不再继续执行后续对数据的解密步骤。
212、服务器基于各个服务器的私钥对第一数据进行解密,获取解密后的业务数据。
在本发明实施例中,由于数据存储***所存储的数据为加密数据,因此,当服务器获取到第一数据后,还需要对该第一数据进行解密,具体的解密过程如下述步骤212A-212B。
212A、获取目标策略中各个服务器的私钥。
当服务器确定该第一数据没有被篡改时,根据该数据权限中的目标策略,确定对该数据进行共识的多个服务器的服务器标识,并根据该多个服务器的服务器标识,从CA中心获取各个服务器的私钥。
212B、基于各个服务器的私钥对该第一数据进行解密,向服务器返回解密后的业务数据。
当获取到各个服务器的私钥时,根据目标策略确定各个服务器对该第一数据的加密顺序,然后根据获取到的各个服务器的私钥,按照加密顺序的反向顺序对该第一数据进行解密,当解密成功时,并返回解密后的业务数据。
需要说明的是,上述过程中第一数据是指当前被查询的数据,当然,上述数据也可以被称为第二数据或其他,本发明实施例对此不做限定。
上述查询的具体过程可以总结为如图4的流程,当基于数据权限信息确定了背书策略后,可以基于背书策略判断是否进行本次查询,在确定进行本次查询时,基于查询的索引,通过查询引擎,来查询数据存储***中的第一数据,进而通过CA中心提供的私钥,对数据进行解密后返回解密后的业务数据,以在实现查询权限控制的同时的迅速查询。
本发明实施例提供的方法,通过当获取到用户查询数据的请求时,基于数据权限信息确定用户查询该数据的权限,当确定该用户是数据所有者时,根据数据权限信息中的共识策略,获取多个节点的查询许可,当获取到的查询许可符合目标策略时,从数据存储***中获取数据。该方法通过设置数据权限信息提高了数据的安全性和隐私性,同时可以为不同数据的不同目标策略,提升了数据查询权限设定的灵活性,使之更加的安全与智能。
图5是本发明实施例提供的一种基于区块链的数据查询装置的结构示意图。参见图5,该装置包括:
数据标识获取模块501,用于根据查询请求,获取待查询的第一数据的数据标识,该查询请求携带发起查询请求的用户标识;
数据权限信息获取模块502,用于根据该数据标识,获取目标区块链中目标区块内的数据权限信息;
发送模块503,用于当该数据权限信息不包括该用户标识时,向该区块链***中的至少一个目标节点发送查询许可请求,该查询许可请求携带该用户标识和该数据标识;
数据获取模块504,用于当接收到的查询许可响应符合该数据权限信息中的目标策略时,根据该数据标识,从数据存储***中获取该第一数据。
在一种可能实现方式中,该数据获取模块504还用于当该数据权限信息包括该用户标识时,根据该数据标识,从该数据存储***中获取该第一数据。
在一种可能实现方式中,该数据标识获取模块501用于:
获取该查询请求中的查询条件信息,该查询条件信息包括至少一个目标维度的目标索引值;
根据该至少一个目标维度的目标索引值,查询该数据存储***中的数据索引信息表,得到该第一数据的数据标识,该数据索引信息表包括已存储数据的数据标识以及不同维度上的索引值。
在一种可能实现方式中,该数据标识获取模块501用于:
当该至少一个目标维度的目标索引值的数目为一时,根据一个目标维度的目标索引值,从该数据索引信息表中,获取至少一个第一数据标识,每个第一数据标识的目标维度的索引值等于该目标索引值;或,
当该至少一个目标维度的目标索引值的数目为至少两个时,根据至少两个目标维度的目标索引值,从该数据索引信息表中,获取至少一个第二数据标识,每个第二数据标识的该至少两个目标维度的索引值的乘积等于该至少两个目标索引值的乘积。
在一种可能实现方式中,该数据获取模块504,用于确定该数据标识与该数据索引信息表中第一个数据标识之间的相对位置;
根据该相对位置和预设数据长度,确定该第一数据在第一文件中的偏移位置,该第一文件为该数据索引信息表对应的文件;
根据该第一文件在该数据存储***中的存储位置和该偏移位置,从该数据存储***中获取该第一数据。
在一种可能实现方式中,该装置还包括:
校验模块,用于根据该目标区块中存储的数据特征值,对该第一数据进行校验;
当校验成功时,执行后续对数据的解密步骤;当校验失败时,不执行后续对数据的解密步骤。
在一种可能实现方式中,该装置还包括解密模块,用于获取该目标策略中各个目标节点的私钥;基于该各个目标节点的私钥对该第一数据进行解密,返回解密后的业务数据。
在一种可能实现方式中,该解密模块用于按照该目标策略中各个目标节点的加密顺序,逐个采用该各个目标节点的私钥对该第一数据进行解密,返回解密后的业务数据。
在一种可能实现方式中,该装置还包括:
获取模块,用于接收数据存储请求,获取待存储的第一数据的数据权限信息;
加密模块,用于获取该第一数据的数据权限信息的目标策略中各个目标节点的公钥,对该第一数据进行加密,得到加密数据;
更新模块,用于根据该第一数据更新该数据存储***中的数据索引信息表,并将该加密数据存储至该数据存储***中,该数据索引信息表包括已存储数据的数据标识以及不同维度上的索引值;
处理模块,用于基于该第一数据的数据标识、数据权限信息以及该加密数据的数据特征值,生成目标区块,将该目标区块加入该目标区块链。
在一种可能实现方式中,该更新模块,用于提取该第一数据的数据标识以及不同维度上的索引值;将该第一数据的数据标识以及不同维度上的索引值添加至该数据索引信息表中。
在一种可能实现方式中,该装置还包括:数据规范化模块,用于基于该数据存储请求所对应的初始数据,生成该第一数据,该第一数据的数据长度为预设数据长度,且该第一数据的维度与该数据索引信息表内的数据维度相对应。
在一种可能实现方式中,该数据规范化模块,用于将该初始数据在各个维度上的数据信息转换为对应的索引值,得到该初始数据的不同维度的索引值;当该初始数据的数据长度小于该预设数据长度时,在该初始数据之后填充预设数据;基于该初始数据的不同维度的索引值和填充后的数据,生成该第一数据。
本发明实施例提供的装置,通过当获取到用户查询数据的请求时,基于数据权限信息确定用户查询该数据的权限,当确定该用户是数据所有者时,根据数据权限信息中的共识策略,获取多个节点的查询许可,当获取到的查询许可符合目标策略时,从数据存储***中获取数据。该方法通过设置数据权限信息提高了数据的安全性和隐私性,同时可以为不同数据的不同目标策略,提升了数据查询权限设定的灵活性,使之更加的安全与智能。
上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
图6是本发明实施例提供的一种服务器的示意图,该服务器600可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)601和一个或一个以上的存储器602,其中,所述存储器602中存储有至少一条指令,所述至少一条指令由所述处理器601加载并执行以实现上述各个方法实施例提供的基于区块链的数据查询方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括指令的存储器,上述指令可由终端中的处理器执行以完成上述实施例中的基于区块链的数据查询方法。例如,所述计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (20)
1.一种基于区块链的数据查询方法,其特征在于,所述方法包括:
获取查询请求中的查询条件信息,所述查询条件信息包括至少一个目标维度的目标索引值;根据所述至少一个目标维度的目标索引值,查询数据索引信息表,得到待查询的第一数据的数据标识,所述数据索引信息表包括已存储数据的数据标识以及不同维度上的索引值,所述查询请求携带发起所述查询请求的用户标识;
根据所述数据标识,获取区块链***中的目标区块链中目标区块内的数据权限信息,所述目标区块还包括所述数据标识和加密数据的数据特征值,所述加密数据是对所述第一数据进行加密得到的;
当所述数据权限信息不包括所述用户标识时,向所述区块链***中的至少一个目标节点发送查询许可请求,所述查询许可请求携带所述用户标识和所述数据标识;
当接收到的查询许可响应符合所述数据权限信息中的目标策略时,根据所述数据标识,从数据存储***中获取所述第一数据;
根据所述目标区块中存储的数据特征值,对所述第一数据进行校验;当校验成功时,获取所述目标策略中各个目标节点的私钥,基于所述各个目标节点的私钥对所述第一数据进行解密,返回解密后的业务数据;当校验失败时,不执行后续对数据的解密步骤。
2.根据权利要求1所述的方法,其特征在于,所述根据所述数据标识,获取区块链***中的目标区块链中目标区块内的数据权限信息之后,所述方法还包括:
当所述数据权限信息包括所述用户标识时,根据所述数据标识,从所述数据存储***中获取所述第一数据。
3.根据权利要求1所述的方法,其特征在于,所述根据所述至少一个目标维度的目标索引值,查询数据索引信息表,得到待查询的第一数据的数据标识包括:
当所述至少一个目标维度的目标索引值的数目为一时,根据一个目标维度的目标索引值,从所述数据索引信息表中,获取至少一个第一数据标识,每个第一数据标识的目标维度的索引值等于所述目标索引值;或,
当所述至少一个目标维度的目标索引值的数目为至少两个时,根据至少两个目标维度的目标索引值,从所述数据索引信息表中,获取至少一个第二数据标识,每个第二数据标识的所述至少两个目标维度的索引值的乘积等于所述至少两个目标索引值的乘积。
4.根据权利要求1所述的方法,其特征在于,所述根据所述数据标识,从数据存储***中获取所述第一数据包括:
确定所述数据标识与所述数据索引信息表中第一个数据标识之间的相对位置;
根据所述相对位置和预设数据长度,确定所述第一数据在第一文件中的偏移位置,所述第一文件为所述数据索引信息表对应的文件;
根据所述第一文件在所述数据存储***中的存储位置和所述偏移位置,从所述数据存储***中获取所述第一数据。
5.根据权利要求1所述的方法,其特征在于,所述基于所述各个目标节点的私钥对所述第一数据进行解密,返回解密后的业务数据包括:
按照所述目标策略中各个目标节点的加密顺序,逐个采用所述各个目标节点的私钥对所述第一数据进行解密,返回解密后的业务数据。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收数据存储请求,获取待存储的第一数据的数据权限信息;
获取所述第一数据的数据权限信息的目标策略中各个目标节点的公钥,对所述第一数据进行加密,得到加密数据;
根据所述第一数据更新所述数据存储***中的数据索引信息表,并将所述加密数据存储至所述数据存储***中,所述数据索引信息表包括已存储数据的数据标识以及不同维度上的索引值;
基于所述第一数据的数据标识、数据权限信息以及所述加密数据的数据特征值,生成所述目标区块,将所述目标区块加入所述目标区块链。
7.根据权利要求6所述的方法,其特征在于,所述根据所述第一数据更新所述数据存储***中的数据索引信息表包括:
提取所述第一数据的数据标识以及不同维度上的索引值;
将所述第一数据的数据标识以及不同维度上的索引值添加至所述数据索引信息表中。
8.根据权利要求6所述的方法,其特征在于,所述接收数据存储请求之后,所述方法还包括:
基于所述数据存储请求所对应的初始数据,生成所述第一数据,所述第一数据的数据长度为预设数据长度,且所述第一数据的维度与所述数据索引信息表内的数据维度相对应。
9.根据权利要求8所述的方法,其特征在于,所述基于所述数据存储请求所对应的初始数据,生成所述第一数据包括:
将所述初始数据在各个维度上的数据信息转换为对应的索引值,得到所述初始数据的不同维度的索引值;
当所述初始数据的数据长度小于所述预设数据长度时,在所述初始数据之后填充预设数据;
基于所述初始数据的不同维度的索引值和填充后的数据,生成所述第一数据。
10.一种基于区块链的数据查询装置,其特征在于,所述装置包括:
数据标识获取模块,用于获取查询请求中的查询条件信息,所述查询条件信息包括至少一个目标维度的目标索引值;根据所述至少一个目标维度的目标索引值,查询数据索引信息表,得到待查询的第一数据的数据标识,所述数据索引信息表包括已存储数据的数据标识以及不同维度上的索引值,所述查询请求携带发起所述查询请求的用户标识;
数据权限信息获取模块,用于根据所述数据标识,获取区块链***中的目标区块链中目标区块内的数据权限信息,所述目标区块还包括所述数据标识和加密数据的数据特征值,所述加密数据是对所述第一数据进行加密得到的;
发送模块,用于当所述数据权限信息不包括所述用户标识时,向所述区块链***中的至少一个目标节点发送查询许可请求,所述查询许可请求携带所述用户标识和所述数据标识;
数据获取模块,用于当接收到的查询许可响应符合所述数据权限信息中的目标策略时,根据所述数据标识,从数据存储***中获取所述第一数据;
校验模块,用于根据所述目标区块中存储的数据特征值,对所述第一数据进行校验;
解密模块,用于当校验成功时,获取所述目标策略中各个目标节点的私钥,基于所述各个目标节点的私钥对所述第一数据进行解密,返回解密后的业务数据;当校验失败时,不执行后续对数据的解密步骤。
11.根据权利要求10所述的装置,其特征在于,所述数据获取模块,还用于当所述数据权限信息包括所述用户标识时,根据所述数据标识,从所述数据存储***中获取所述第一数据。
12.根据权利要求10所述的装置,其特征在于,所述数据标识获取模块,用于:
当所述至少一个目标维度的目标索引值的数目为一时,根据一个目标维度的目标索引值,从所述数据索引信息表中,获取至少一个第一数据标识,每个第一数据标识的目标维度的索引值等于所述目标索引值;或,
当所述至少一个目标维度的目标索引值的数目为至少两个时,根据至少两个目标维度的目标索引值,从所述数据索引信息表中,获取至少一个第二数据标识,每个第二数据标识的所述至少两个目标维度的索引值的乘积等于所述至少两个目标索引值的乘积。
13.根据权利要求10所述的装置,其特征在于,所述数据获取模块,用于:
确定所述数据标识与所述数据索引信息表中第一个数据标识之间的相对位置;
根据所述相对位置和预设数据长度,确定所述第一数据在第一文件中的偏移位置,所述第一文件为所述数据索引信息表对应的文件;
根据所述第一文件在所述数据存储***中的存储位置和所述偏移位置,从所述数据存储***中获取所述第一数据。
14.根据权利要求10所述的装置,其特征在于,所述解密模块,用于按照所述目标策略中各个目标节点的加密顺序,逐个采用所述各个目标节点的私钥对所述第一数据进行解密,返回解密后的业务数据。
15.根据权利要求10所述的装置,其特征在于,所述装置还包括:
获取模块,用于接收数据存储请求,获取待存储的第一数据的数据权限信息;
加密模块,用于获取所述第一数据的数据权限信息的目标策略中各个目标节点的公钥,对所述第一数据进行加密,得到加密数据;
更新模块,用于根据所述第一数据更新所述数据存储***中的数据索引信息表,并将所述加密数据存储至所述数据存储***中,所述数据索引信息表包括已存储数据的数据标识以及不同维度上的索引值;
处理模块,用于基于所述第一数据的数据标识、数据权限信息以及所述加密数据的数据特征值,生成所述目标区块,将所述目标区块加入所述目标区块链。
16.根据权利要求15所述的装置,其特征在于,所述更新模块,用于:
提取所述第一数据的数据标识以及不同维度上的索引值;
将所述第一数据的数据标识以及不同维度上的索引值添加至所述数据索引信息表中。
17.根据权利要求15所述的装置,其特征在于,所述装置还包括:
数据规范化模块,用于基于所述数据存储请求所对应的初始数据,生成所述第一数据,所述第一数据的数据长度为预设数据长度,且所述第一数据的维度与所述数据索引信息表内的数据维度相对应。
18.根据权利要求17所述的装置,其特征在于,所述数据规范化模块,用于:
将所述初始数据在各个维度上的数据信息转换为对应的索引值,得到所述初始数据的不同维度的索引值;
当所述初始数据的数据长度小于所述预设数据长度时,在所述初始数据之后填充预设数据;
基于所述初始数据的不同维度的索引值和填充后的数据,生成所述第一数据。
19.一种服务器,其特征在于,所述服务器包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如权利要求1至权利要求9任一项所述的基于区块链的数据查询方法所执行的操作。
20.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如权利要求1至权利要求9任一项所述的基于区块链的数据查询方法所执行的操作。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911206702.4A CN110990407B (zh) | 2018-04-27 | 2018-04-27 | 基于区块链的数据存储方法、装置、服务器及存储介质 |
CN201810393489.1A CN108563788B (zh) | 2018-04-27 | 2018-04-27 | 基于区块链的数据查询方法、装置、服务器及存储介质 |
PCT/CN2019/079636 WO2019205860A1 (zh) | 2018-04-27 | 2019-03-26 | 基于区块链的数据查询方法、服务器及存储介质 |
US16/907,580 US11366924B2 (en) | 2018-04-27 | 2020-06-22 | Block chain-based data query method, server and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810393489.1A CN108563788B (zh) | 2018-04-27 | 2018-04-27 | 基于区块链的数据查询方法、装置、服务器及存储介质 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911206702.4A Division CN110990407B (zh) | 2018-04-27 | 2018-04-27 | 基于区块链的数据存储方法、装置、服务器及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108563788A CN108563788A (zh) | 2018-09-21 |
CN108563788B true CN108563788B (zh) | 2023-05-23 |
Family
ID=63537130
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810393489.1A Active CN108563788B (zh) | 2018-04-27 | 2018-04-27 | 基于区块链的数据查询方法、装置、服务器及存储介质 |
CN201911206702.4A Active CN110990407B (zh) | 2018-04-27 | 2018-04-27 | 基于区块链的数据存储方法、装置、服务器及存储介质 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911206702.4A Active CN110990407B (zh) | 2018-04-27 | 2018-04-27 | 基于区块链的数据存储方法、装置、服务器及存储介质 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11366924B2 (zh) |
CN (2) | CN108563788B (zh) |
WO (1) | WO2019205860A1 (zh) |
Families Citing this family (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117610062A (zh) * | 2018-03-06 | 2024-02-27 | 阿梅里科普投资有限责任公司 | 用于生成区块链存储数据的定制视图的***、方法和介质 |
US11700265B2 (en) | 2018-03-06 | 2023-07-11 | Americorp Investments Llc | Customized view of restricted information recorded into a blockchain |
US10951626B2 (en) | 2018-03-06 | 2021-03-16 | Americorp Investments Llc | Blockchain-based commercial inventory systems and methods |
CN108563788B (zh) | 2018-04-27 | 2023-05-23 | 腾讯科技(深圳)有限公司 | 基于区块链的数据查询方法、装置、服务器及存储介质 |
CN109361738A (zh) * | 2018-09-25 | 2019-02-19 | 安徽灵图壹智能科技有限公司 | 一种基于区块链网络的身份认证***及方法 |
CN109493093A (zh) * | 2018-09-26 | 2019-03-19 | 百度在线网络技术(北京)有限公司 | 基于区块链的用户行为信息处理方法和装置 |
CN109213797A (zh) * | 2018-09-30 | 2019-01-15 | 中国联合网络通信集团有限公司 | 一种区块链的查询方法及装置 |
CN109325870B (zh) * | 2018-10-10 | 2022-11-22 | 上海保险交易所股份有限公司 | 共享隐私数据的方法和*** |
CN109597835B (zh) * | 2018-10-26 | 2024-02-23 | 平安科技(深圳)有限公司 | 基于区块链的体育资源互动方法和装置 |
CN109558422A (zh) * | 2018-10-29 | 2019-04-02 | 平安科技(深圳)有限公司 | 基于区块链的驾驶证档案管理方法、装置、计算机设备 |
CN109558750B (zh) * | 2018-11-30 | 2021-11-02 | 北京八分量信息科技有限公司 | 一种基于安全多方计算的数据处理***及方法 |
CN109600366A (zh) * | 2018-12-06 | 2019-04-09 | 中链科技有限公司 | 基于区块链的保护用户数据隐私的方法及装置 |
CN109559231B (zh) * | 2018-12-29 | 2020-08-04 | 华东师范大学 | 一种面向区块链的追溯查询方法 |
CN110032876B (zh) * | 2019-02-19 | 2020-03-06 | 阿里巴巴集团控股有限公司 | 区块链中实现隐私保护的方法、节点和存储介质 |
KR102243754B1 (ko) | 2019-03-21 | 2021-04-26 | 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. | 블록체인 네트워크에서의 데이터 격리 |
CN110232569B (zh) * | 2019-05-07 | 2021-04-16 | 北京奇艺世纪科技有限公司 | 一种交易记录的读取方法、装置及存储介质 |
CN110222086A (zh) * | 2019-05-07 | 2019-09-10 | 深圳壹账通智能科技有限公司 | 基于区块链的数据管理方法、装置、设备和存储介质 |
CN110474886B (zh) * | 2019-07-24 | 2022-04-05 | 深圳壹账通智能科技有限公司 | 基于区块链的数据加密方法、装置、电子设备和存储介质 |
CN110516474B (zh) * | 2019-08-27 | 2024-06-28 | 腾讯科技(深圳)有限公司 | 区块链网络中的用户信息处理方法、装置、电子设备及存储介质 |
CN110888938A (zh) * | 2019-09-02 | 2020-03-17 | 腾讯科技(深圳)有限公司 | 基于区块链网络的学生身份信息处理方法及装置 |
CN110569658B (zh) * | 2019-09-12 | 2024-06-14 | 腾讯科技(深圳)有限公司 | 基于区块链网络的用户信息处理方法、装置、电子设备及存储介质 |
CN110597832A (zh) * | 2019-09-12 | 2019-12-20 | 腾讯云计算(北京)有限责任公司 | 基于区块链网络的政务信息处理方法、装置、电子设备及存储介质 |
CN110598434B (zh) * | 2019-09-12 | 2023-08-15 | 腾讯科技(深圳)有限公司 | 基于区块链网络的房屋信息处理方法、装置、电子设备及存储介质 |
CN110716965B (zh) * | 2019-09-25 | 2022-02-25 | 蚂蚁区块链科技(上海)有限公司 | 一种块链式账本中的查询方法、装置及设备 |
CN110769274B (zh) * | 2019-10-18 | 2021-07-27 | 腾讯科技(深圳)有限公司 | 基于区块链网络的直播信息处理方法、装置、电子设备及存储介质 |
CN110995757B (zh) * | 2019-12-19 | 2022-03-11 | 肖光昱 | 加密装置、加密***和数据的加密方法 |
CN111400728A (zh) * | 2020-03-05 | 2020-07-10 | 北京金山云网络技术有限公司 | 应用于区块链的数据加密解密方法及装置 |
CN111478887B (zh) * | 2020-03-19 | 2022-04-01 | 深圳市芯链科技有限公司 | 区块链物联网***和运行方法 |
CN111523862B (zh) * | 2020-04-27 | 2024-02-23 | 广东电网有限责任公司培训与评价中心 | 一种获取人才数据的方法和相关设备 |
CN111782889A (zh) * | 2020-07-07 | 2020-10-16 | 北京钢研新材科技有限公司 | 基于区块链的合金材料数据共享方法、***及设备 |
CN112115199A (zh) * | 2020-09-16 | 2020-12-22 | 安徽长泰信息安全服务有限公司 | 一种基于区块链技术的数据管理*** |
CN111966731A (zh) * | 2020-10-23 | 2020-11-20 | 支付宝(杭州)信息技术有限公司 | 一种在区块链***中查询数据的方法和装置 |
CN112506987B (zh) * | 2020-11-19 | 2022-05-20 | 杭州趣链科技有限公司 | 基于区块链的查询方法、装置、设备及存储介质 |
CN112328663A (zh) * | 2020-11-24 | 2021-02-05 | 深圳市鹰硕技术有限公司 | 一种应用于大数据的数据发现方法及*** |
CN112286997B (zh) * | 2020-11-25 | 2024-04-16 | 深圳平安智汇企业信息管理有限公司 | 基于分布式部署的薪酬数据查询方法及相关设备 |
CN112953930A (zh) * | 2021-02-09 | 2021-06-11 | 苏宁易购集团股份有限公司 | 一种云存储数据的处理方法、装置及计算机*** |
CN112685389B (zh) * | 2021-03-19 | 2021-06-29 | 北京瑞莱智慧科技有限公司 | 数据管理方法、数据管理装置、电子设备及存储介质 |
CN112995205B (zh) * | 2021-04-13 | 2021-08-20 | 北京百度网讯科技有限公司 | 基于区块链的查询方法、装置、设备和存储介质 |
CN113515772B (zh) * | 2021-04-20 | 2024-05-28 | 昆明理工大学 | 一种基于rpca共识机制的数据库查询日志信息上链的方法 |
CN114528565B (zh) * | 2022-01-21 | 2024-07-05 | 广东海洋大学 | 一种基于区块链的敏感数据高效上链算法 |
CN114844695B (zh) * | 2022-04-28 | 2024-06-25 | 华能招标有限公司 | 基于区块链的业务数据流转方法、***及相关设备 |
CN114900535B (zh) * | 2022-05-09 | 2023-07-04 | 深圳嘉业产业发展有限公司 | 一种基于区块链的数据传输方法及*** |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106796688A (zh) * | 2016-12-26 | 2017-05-31 | 深圳前海达闼云端智能科技有限公司 | 区块链的权限控制方法、装置、***及节点设备 |
CN107766542A (zh) * | 2017-10-30 | 2018-03-06 | 上海分布信息科技有限公司 | 一种分区的区块链网络及其实现分区查询的方法 |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8965901B2 (en) * | 2011-03-01 | 2015-02-24 | Mongodb, Inc. | System and method for determining exact location results using hash encoding of multi-dimensioned data |
CN103838760B (zh) * | 2012-11-23 | 2016-12-21 | 北京神州泰岳软件股份有限公司 | 一种查询好友信息的方法和*** |
US9948682B2 (en) * | 2015-08-11 | 2018-04-17 | Vescel, Llc | Data resource control through a control policy defining an authorized context for utilization of a protected data resource |
CN105760399A (zh) * | 2014-12-19 | 2016-07-13 | 华为软件技术有限公司 | 一种数据检索方法及设备 |
US10785033B2 (en) * | 2015-09-04 | 2020-09-22 | Nec Corporation | Method for storing an object on a plurality of storage nodes |
CN105488431B (zh) * | 2015-11-30 | 2019-12-13 | 布比(北京)网络技术有限公司 | 区块链***权限管理方法和装置 |
CN105516110B (zh) * | 2015-12-01 | 2019-12-20 | 趣增信息科技(上海)有限公司 | 移动设备安全数据传送方法 |
US10013573B2 (en) * | 2015-12-16 | 2018-07-03 | International Business Machines Corporation | Personal ledger blockchain |
CN107679369A (zh) * | 2016-08-02 | 2018-02-09 | 华为技术有限公司 | 一种共享数字内容的许可证的方法、装置及*** |
US20180046656A1 (en) * | 2016-08-12 | 2018-02-15 | Microsoft Technology Licensing, Llc | Constructing filterable hierarchy based on multidimensional key |
CN106354994B (zh) * | 2016-08-22 | 2019-01-18 | 布比(北京)网络技术有限公司 | 处理医疗数据的方法及*** |
CN206479988U (zh) * | 2016-11-30 | 2017-09-08 | 谭小刚 | 医院信息监管平台 |
CN106612285B (zh) * | 2016-12-30 | 2020-05-19 | Tcl集团股份有限公司 | 基于对等网络的分布式云数据管理方法及*** |
CN107480555B (zh) * | 2017-08-01 | 2020-03-13 | 中国联合网络通信集团有限公司 | 基于区块链的数据库访问权限控制方法及设备 |
CN107451275B (zh) * | 2017-08-04 | 2019-08-16 | 北京明朝万达科技股份有限公司 | 基于区块链的业务数据处理方法、装置、***和存储设备 |
CN107508806A (zh) * | 2017-08-11 | 2017-12-22 | 北京理工大学 | 基于区块链的互联网金融电子数据保全***及方法 |
US20190087830A1 (en) * | 2017-09-15 | 2019-03-21 | Pearson Education, Inc. | Generating digital credentials with associated sensor data in a sensor-monitored environment |
CN107592318A (zh) * | 2017-09-22 | 2018-01-16 | 深圳中迈数字医疗技术有限公司 | 一种通过区块链实现临床数据共享的方法及*** |
CN107862215B (zh) * | 2017-09-29 | 2020-10-16 | 创新先进技术有限公司 | 一种数据存储方法、数据查询方法及装置 |
CN107767926A (zh) * | 2017-11-15 | 2018-03-06 | 中国联合网络通信集团有限公司 | 基于区块链的医疗数据管理***及访问方法 |
CN108563788B (zh) * | 2018-04-27 | 2023-05-23 | 腾讯科技(深圳)有限公司 | 基于区块链的数据查询方法、装置、服务器及存储介质 |
US10805803B1 (en) * | 2019-04-03 | 2020-10-13 | Genfintech, Inc. | Systems and methods for mobile peer-to-peer content sharing |
US11797698B2 (en) * | 2020-06-15 | 2023-10-24 | Concord Technologies Inc. | Decentralized consent network for decoupling the storage of personally identifiable user data from user profiling data |
-
2018
- 2018-04-27 CN CN201810393489.1A patent/CN108563788B/zh active Active
- 2018-04-27 CN CN201911206702.4A patent/CN110990407B/zh active Active
-
2019
- 2019-03-26 WO PCT/CN2019/079636 patent/WO2019205860A1/zh active Application Filing
-
2020
- 2020-06-22 US US16/907,580 patent/US11366924B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106796688A (zh) * | 2016-12-26 | 2017-05-31 | 深圳前海达闼云端智能科技有限公司 | 区块链的权限控制方法、装置、***及节点设备 |
CN107766542A (zh) * | 2017-10-30 | 2018-03-06 | 上海分布信息科技有限公司 | 一种分区的区块链网络及其实现分区查询的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110990407A (zh) | 2020-04-10 |
WO2019205860A1 (zh) | 2019-10-31 |
US11366924B2 (en) | 2022-06-21 |
US20200320217A1 (en) | 2020-10-08 |
CN110990407B (zh) | 2020-11-10 |
CN108563788A (zh) | 2018-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108563788B (zh) | 基于区块链的数据查询方法、装置、服务器及存储介质 | |
US11509462B2 (en) | Secure data distribution protocol using blockchains | |
US8447983B1 (en) | Token exchange | |
EP3241146B1 (en) | System and method for obfuscating an identifier to protect the identifier from impermissible appropriation | |
US20140136840A1 (en) | Computer system for storing and retrieval of encrypted data items using a tablet computer and computer-implemented method | |
US20240211627A1 (en) | Contact discovery service with privacy aspect | |
Kumar et al. | Enhancing security mechanisms for healthcare informatics using ubiquitous cloud | |
WO2020186823A1 (zh) | 区块链的数据查询方法、装置、***、设备及存储介质 | |
WO2020168772A1 (zh) | 一种电子病历存储方法、***、装置、设备及介质 | |
CN112017761B (zh) | 一种电子医学影像中嵌入医疗信息的***及方法 | |
CN111104691A (zh) | 敏感信息的处理方法、装置、存储介质及设备 | |
WO2018233051A1 (zh) | 数据发布方法、装置、服务器和存储介质 | |
CN108694333B (zh) | 用户信息处理方法及装置 | |
CN113609221A (zh) | 数据存储方法、数据访问方法、装置和存储介质 | |
WO2002006948A1 (en) | Method for protecting the privacy, security, and integrity of sensitive data | |
CN111935208A (zh) | 区块链隐私数据共享方法、装置、计算机设备和存储介质 | |
CN116090028B (zh) | 可配置保密等级的电子合同管理方法、装置、设备及介质 | |
CN111917711B (zh) | 数据访问方法、装置、计算机设备和存储介质 | |
CN114428784A (zh) | 数据存取方法、装置、计算机设备及存储介质 | |
CN113094334A (zh) | 基于分布式存储的数字服务方法、装置、设备及储存介质 | |
Satar et al. | Cloud-based secure healthcare framework by using enhanced ciphertext policy attribute-based encryption scheme | |
WO2019095552A1 (zh) | 区域医疗电子病历安全协同整合***及方法 | |
US9953188B2 (en) | System, method, and program for storing and controlling access to data representing personal behavior | |
EP3410630B1 (en) | General data protection method for multicentric sensitive data storage and sharing | |
WO2023107211A1 (en) | A method of storing data |
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 |