CN113836569A - 数据查询方法及相关设备 - Google Patents
数据查询方法及相关设备 Download PDFInfo
- Publication number
- CN113836569A CN113836569A CN202010512708.0A CN202010512708A CN113836569A CN 113836569 A CN113836569 A CN 113836569A CN 202010512708 A CN202010512708 A CN 202010512708A CN 113836569 A CN113836569 A CN 113836569A
- Authority
- CN
- China
- Prior art keywords
- query
- data
- database server
- grouping
- condition
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 85
- 230000005540 biological transmission Effects 0.000 claims abstract description 68
- 238000004590 computer program Methods 0.000 claims description 14
- 238000012795 verification Methods 0.000 claims description 10
- 238000013479 data entry Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 abstract description 18
- 238000010586 diagram Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000000977 initiatory effect Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Classifications
-
- 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
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
-
- 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/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9538—Presentation of query results
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供数据查询方法及相关设备,涉及数据安全领域领域,所述方法,包括:对数据库服务器中的数据字段执行分组操作,得到多个分组字段;发布多个分组字段;接收数据查询端的查询请求;其中,查询请求包括分组查询条件,分组查询条件由数据查询端根据目标查询条件与发布的分组字段之间的对应关系确定;在数据库服务器中的数据字段中确定分组查询条件对应的初始查询结果;通过不经意传输协议向数据查询端发送第一信息;其中,第一信息用于使数据查询端从初始查询结果中获取目标查询结果;其中,目标查询结果与目标查询条件相对应。通过本发明提供的数据查询方法及相关设备,能够提高数据查询过程的安全性能,降低用户查询数据泄露风险。
Description
技术领域
本发明涉及数据安全领域,尤其涉及数据查询方法及相关设备。
背景技术
目前,随着信息技术应用的不断普及和深入,各种信息系统存储并积累了丰富的数据,例如医疗机构建立的患者诊断数据集,电子商务企业收集的客户在线交易数据集等。对这些数据集进行分析可以使人们获得更多关于真实世界的知识,对于数据研究、信息咨询以及政府决策等机构来说,数据是非常重要的基础资源,这极大地促进了数据查询的需求。然而,数据查询过程可能暴露用户的查询隐私,可见,目前的数据查询过程的安全性能比较差。
发明内容
本发明实施例提供数据查询方法及相关设备,以解决现有数据查询过程的安全性能比较差的问题。
为解决上述技术问题,第一方面,本发明实施例提供了一种数据查询方法,应用于数据库服务器,所述方法包括:
对所述数据库服务器中的数据字段执行分组操作,得到多个分组字段;
发布所述多个分组字段;
接收数据查询端的查询请求;其中,所述查询请求包括分组查询条件,所述分组查询条件由所述数据查询端根据目标查询条件与发布的所述分组字段之间的对应关系确定;
在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果;
通过不经意传输协议向所述数据查询端发送第一信息;其中,所述第一信息用于使所述数据查询端从所述初始查询结果中获取目标查询结果;其中,所述目标查询结果与所述目标查询条件相对应。
可选的,所述对所述数据库服务器中的数据字段执行分组操作,包括:
对数据字段执行泛化分组操作,其中,每组分组字段包括的数据条目大于等于2。
可选的,所述查询请求,还包括所述数据查询端以其私钥对身份信息和时间戳签名得到的数字签名;
所述接收数据查询端的查询请求步骤之后,在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果步骤之前,所述方法,还包括:
从鉴权存证系统获取数据查询端的证书;其中所述证书由所述数据查询端上传至鉴权存证系统,由所述鉴权存证系统挂载于区块链;
利用所述证书验证所述数字签名正确性;
所述在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果,包括:
若所述证书验证所述数字签名正确,则在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果。
可选的,所述初始查询结果包括n条数据;
所述在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果步骤之后,通过不经意传输协议向所述数据查询端发送第一信息步骤之前,所述方法,还包括:
利用n个随机数分别对所述n条数据进行加密,得到n条加密数据;
将所述n条加密数据发送至所述数据查询端;
所述通过不经意传输协议向所述数据查询端发送第一信息,包括:
通过不经意传输协议将所述n个随机数发送至所述数据查询端。
可选的,所述初始查询结果包括n条数据;
所述方法还包括:
从所述鉴权存证系统获取查询预算m,其中,所述查询预算m为所述鉴权存证系统为数据查询端分配的数据条数预算,由所述鉴权存证系统挂载于区块链;
所述通过不经意传输协议向所述数据查询端发送第一信息,包括:
若n小于等于查询预算m,则通过不经意传输协议向所述数据查询端发送第一信息。
第二方面,本发明实施例还提供一种数据查询方法,应用于数据查询端,所述方法包括:
接收目标查询条件;
读取数据库服务器发布的分组字段,所述分组字段由所述数据库服务器对所述数据库服务器中的数据字段执行分组操作得到并发布;
根据所述目标查询条件与分组字段之间的对应关系,确定分组查询条件;
向数据库服务器发送查询请求;其中,所述查询请求包括分组查询条件;
接收所述数据库服务器通过不经意传输协议发送的第一信息;其中,所述第一信息用于使所述数据查询端从初始查询结果中获取目标查询结果;其中,所述初始查询结果为所述数据库服务器在所述数据库服务器中的数据字段中确定所述分组查询条件对应的查询结果;所述目标查询结果与所述目标查询条件相对应。
可选的,所述向数据库服务器发送查询请求之前,所述方法,还包括:
生成数据查询端的证书;
利用私钥对身份信息和时间戳签名,得到数字签名;
将所述数据查询端的证书上传至鉴权存证系统,由所述鉴权存证系统将所述证书挂载于区块链;
所述查询请求,还包括所述数字签名。
可选的,所述初始查询结果包括n条数据,所述目标查询结果为n条数据中的s条数据;
所述方法,还包括:
接收数据库服务器发送的n条加密数据,其中所述n条加密数据由所述数据库服务器利用n个随机数分别对所述n条数据进行加密得到;
所述接收所述数据库服务器通过不经意传输协议发送的第一信息,包括:
从所述数据库服务器通过不经意传输协议发送的n个随机数中,获取s个随机数,其中所述s个随机数与所述s条数据的加密随机数相对应。
可选的,所述向数据库服务器发送查询请求之前,所述方法,还包括:
向所述鉴权存证系统申请数据查询权限;
接收所述鉴权存证系统分配数据查询预算m;
所述查询请求,还包括所述数据查询预算m。
第三方面,本发明实施例提供一种数据库服务器,包括:
分组模块,用于对所述数据库服务器中的数据字段执行分组操作,得到多个分组字段;
发布模块,用于发布所述多个分组字段;
查询请求接收模块,用于接收数据查询端的查询请求;其中,所述查询请求包括分组查询条件,所述分组查询条件由所述数据查询端根据目标查询条件与发布的所述分组字段之间的对应关系确定;
查询模块,用于在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果;
发送模块,用于通过不经意传输协议向所述数据查询端发送第一信息;其中,所述第一信息用于使所述数据查询端从所述初始查询结果中获取目标查询结果;其中,所述目标查询结果与所述目标查询条件相对应。
第四方面,本发明实施例提供一种数据库服务器,包括处理器,所述处理器,用于:
对所述数据库服务器中的数据字段执行分组操作,得到多个分组字段;
发布所述多个分组字段;
接收数据查询端的查询请求;其中,所述查询请求包括分组查询条件,所述分组查询条件由所述数据查询端根据目标查询条件与发布的所述分组字段之间的对应关系确定;
在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果;
通过不经意传输协议向所述数据查询端发送第一信息;其中,所述第一信息用于使所述数据查询端从所述初始查询结果中获取目标查询结果;其中,所述目标查询结果与所述目标查询条件相对应。
第五方面,本发明实施例提供一种电子设备,包括:处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序,所述程序被所述处理器执行时实现第一方面所述的数据查询方法的步骤。
第六方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所述的数据查询方法的步骤。
第七方面,本发明实施例提供一种数据查询端,包括:
第一接收模块,用于接收目标查询条件;
读取模块,用于读取数据库服务器发布的分组字段,所述分组字段由所述数据库服务器对所述数据库服务器中的数据字段执行分组操作得到并发布;
查询条件确定模块,用于根据所述目标查询条件与分组字段之间的对应关系,确定分组查询条件;
请求模块,用于向数据库服务器发送查询请求;其中,所述查询请求包括分组查询条件;
第二接收模块,用于接收所述数据库服务器通过不经意传输协议发送的第一信息;其中,所述第一信息用于使所述数据查询端从初始查询结果中获取目标查询结果;其中,所述初始查询结果为所述数据库服务器在所述数据库服务器中的数据字段中确定所述分组查询条件对应的查询结果;所述目标查询结果与所述目标查询条件相对应。
第八方面,本发明实施例提供一种电子设备,包括收发机和处理器,
所述处理器,用于:
接收目标查询条件;
读取数据库服务器发布的分组字段,所述分组字段由所述数据库服务器对所述数据库服务器中的数据字段执行分组操作得到并发布;
根据所述目标查询条件与分组字段之间的对应关系,确定分组查询条件;
向数据库服务器发送查询请求;其中,所述查询请求包括分组查询条件;
接收所述数据库服务器通过不经意传输协议发送的第一信息;其中,所述第一信息用于使所述数据查询端从初始查询结果中获取目标查询结果;其中,所述初始查询结果为所述数据库服务器在所述数据库服务器中的数据字段中确定所述分组查询条件对应的查询结果;所述目标查询结果与所述目标查询条件相对应。
第九方面,本发明实施例提供一种电子设备,其特征在于,包括:处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序,所述程序被所述处理器执行时实现上述第二方面所述的数据查询方法的步骤。
第十方面,本发明实施例提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述第二方面所述的数据查询方法的步骤
本发明实施例的上述技术方案,对所述数据库服务器中的数据字段执行分组操作,得到多个分组字段;发布所述多个分组字段;接收数据查询端的查询请求;其中,所述查询请求包括分组查询条件,所述分组查询条件由所述数据查询端根据目标查询条件与发布的所述分组字段之间的对应关系确定;在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果;通过不经意传输协议向所述数据查询端发送第一信息;其中,所述第一信息用于使所述数据查询端从所述初始查询结果中获取目标查询结果;其中,所述目标查询结果与所述目标查询条件相对应;能够提高数据查询过程的安全性能,降低用户查询数据泄露风险。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种数据查询方法的流程图;
图2是本发明实施例提供的一种数据查询模块交互的示意图;
图3是本发明实施例提供的另一种数据查询方法的流程图。
图4是本发明实施例提供的数据库服务器的示意图;
图5是本发明又一实施例提供的数据查询端的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例中,提出了一种数据查询方法,应用于数据库服务器,以解决现有数据查询过程的安全性能比较差的问题。
参见图1,图1是本发明实施例提供的一种数据查询方法的流程图,应用于数据库服务器,如图1所示,所述方法包括以下步骤:
步骤101、对所述数据库服务器中的数据字段执行分组操作,得到多个分组字段。
本发明实施例中,上述数据库服务器为数据提供者,负责响应用户的数据查询请求。数据库服务器中的数据包括数据字段,所述字段可以理解为包含某一专题的信息,以表1为例,该数据包括姓名、手机号码、年龄、收入四个字段。
姓名 | 手机号码 | 年龄 | 收入 |
张明 | 138****9019 | 32 | 25w |
庄翰 | 158****0706 | 41 | 40w |
王森 | 138****5601 | 28 | 30w |
李淼 | 138****2890 | 33 | 35w |
张杰 | 139****7652 | 37 | 50w |
宋云 | 186****2762 | 25 | 28w |
表1
对数据字段执行分组操作,可以理解为数据库服务器初始化的过程。
对数据字段执行分组操作时,可以采用泛化分组的方式,也可以采用其他分组方式,在此不做具体限定。可选择的,每组分组字段包括的数据条目大于等于2。可选择的,所述分组操作采用采用k泛化分组,分组后的每个字段包括的数据条数大于等于k,k为大于等于2的正整数。仍以表1数据为例,采用k泛化分组,k=2,对该数据字段做k-泛化之后的结果是:
姓名字段:{(张*)、([庄|王]*)、([李|宋]*)};
手机号码字段:{(138********)、([139|158|186]********)};
年龄字段:{(25-30)、(31-35)、(36-45)};
收入字段:{(25w-29w)、(30w-35w)、(36w-50w)}。
其中,姓名字段分成3组,分别是(张*)、([庄|王]*)和([李|宋]*),其中(张*)分组字段包括张明、张杰2条数据,([庄|王]*)分组字段包括庄翰、王森2条数据。
其中,所述数据库服务器内部维护一张映射表,用于记录泛化后的分组字段与原数据的对应关系。
可选的,设置分组后的每个字段包括的数据条数小于等于2k,从而提高数据传输效率。
步骤102、发布所述多个分组字段。
所述数据库服务器对分组后的多个分组字段进行发布,可选的,所述数据库服务器可以将分组后的多个分组字段,发布至鉴权存证系统的区块链上或者当前数据库服务器,也可以发布至另一数据库,所发布位置能够供数据查询端读取所述分组字段即可。
步骤103、接收数据查询端的查询请求;其中,所述查询请求包括分组查询条件,所述分组查询条件由所述数据查询端根据目标查询条件与发布的所述分组字段之间的对应关系确定。
数据查询端,读取数据库服务器发布的分组后的分组字段信息,根据目标查询条件选择一个或多个分组字段,其中,上述目标查询条件可以理解为查询者的实际查询意图。可选的,上述选择的一个或多个分组字段为泛化分组字段。
举例而言,数据查询端接收查询者的目标查询条件,例如,目标查询条件为32岁,根据读取到的分组字段信息年龄字段:{(25-30)、(31-35)、(36-45)},确定分组查询条件为(31-35),并将该分组查询条件发送给数据库服务器,执行查询请求。
可选的,上述目标查询条件可能涉及多个字段,分组查询条件可以对应为多个分组字段。上述目标查询条件可能涉及单个字段时,分组查询条件也可以选择一个或多个分组字段,例如,目标查询条件为大于32岁,分组查询条件可以确定为(31-35)、(36-45)两个分组字段。由此可见,本实施例中的数据查询方式支持多条件查询和范围化的查询。
由数据库服务器按字段执行分组,查询者从中选择自己需要的某一组并发给数据库服务器,由于每组对应了至少k个数据,所以服务端难以确定查询者查的是哪条数据,即难以确定用户的真实查询意图,从而保护查询隐私。
步骤104、在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果。
由于数据查询端提供给数据服务器的查询条件是将目标查询条件对应到分组字段后的得到的分组查询条件,数据库服务器根据所述分组查询条件确定初始查询结果,所述初始查询结果包括与目标查询条件对应的查询结果,也可能包括与目标查询条件无关的查询结果。
步骤105、通过不经意传输协议向所述数据查询端发送第一信息;其中,所述第一信息用于使所述数据查询端从所述初始查询结果中获取目标查询结果;其中,所述目标查询结果与所述目标查询条件相对应。
由于所述初始查询结果包括与目标查询条件对应的查询结果,也包括与目标查询条件无关的查询结果,上述数据查询端需要从初始查询结果中选择出与目标查询条件相对应的目标查询结果。例如,目标查询条件为32岁,根据分组查询条件(31-35)返回的初始查询结果包括(张明,138****9019,32,25w)和(李淼,138****2890,33,35w)两条数据,此时需要根据目标查询条件,确定目标查询结果为(张明,138****9019,32,25w),即选择(张明,138****9019,32,25w)作为目标查询结果,但是这个选择过程需要对数据库服务器不可见,此时采用数据传输方式是不经意传输协议。
以初始查询结果为n条数据,目标查询结果为s条数据为例,介绍不经意传输协议:
(1)数据库服务器选取大素数p、模p循环子群的生成元g,并计算α=gamodp,其中,a为随机数,mod为取余算符,将p、g、α发送给数据查询端;
(2)A计算h=αb、y=grhw并发送给数据库服务器,其中b、r为随机数,w为数据查询端要选取的消息编号;
(4)数据查询端计算Mw=v/ur,从而得到Mw的值。
因为所以v/ur=Mw,即数据库服务器的第w个数据,所以通过该协议数据查询端可以正确的获取第w个数据。而且除了他选取的第w条数据外,其他数据都是Mihx(x为数据查询端无法知晓的随机数)的形式,基于计算离散对数的困难性,数据查询端也只能得到第w条消息。对于数据查询端来说,他的选择隐藏在y中,数据库服务器也无法获知数据查询端的选择。所以上述协议实现了n取1不经意传输。重复s次,数据查询端就可以从数据库服务器那里获得其想要的s个数据,从而得到对应的s条数据。
可选的,所述步骤105、通过不经意传输协议向所述数据查询端发送第一信息,具体包括:将所述初始查询结果n条数据通过不经意传输协议向所述数据查询端发送,数据查询端通过不经意传输协议获取其中s条数据。
可选的,所述在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果步骤之后,通过不经意传输协议向所述数据查询端发送第一信息步骤之前,所述方法,还包括:
利用n个随机数分别对所述n条数据进行加密,得到n条加密数据;
将所述n条加密数据发送至所述数据查询端。
其中,可选的,上述加密可以是n条数据分别与n个随机数相加,也可以是利用n个随机数相加以其他加密形式对n条数据进行加密。其中,上述加密的数据包括公开的索引,使得数据查询端知晓其所需的目标查询结果。例如,以年龄作为公开索引,当数据查询端以32岁对应的数据条作为目标数据条时,从n条加密数据中获取32岁对应的s条加密数据作为待解密对象,32岁对应的s个随机数作为解密随机数。
所述步骤105、所述通过不经意传输协议向所述数据查询端发送第一信息,具体包括:
通过不经意传输协议将所述n个随机数发送至所述数据查询端。
该实施方式中,利用不经意传输协议发送加密随机数,数据库服务器通过不经意传输协议发送n个随机数,上述数据查询端通过该协议数据查询端可以正确的获取第w个随机数,重复s次,数据查询端就可以从数据库服务器那里获得其想要的s个随机数,上述s个随机数为数据查询端希望获取的s个初始查询结果的加密随机数,上述s个随机数通过上述n条数据的公开的索引确定;利用上述s个随机数对s个初始查询结果进行解密。可选的,当加密是n条数据分别与n个随机数相加时,解密时将s个初始查询结果分别与s个随机数对应相减即可得到目标查询结果。而对于剩下的n-s条数据,由于不经意传输协议的特性,数据查询端无法得到其对应的随机数,也就无法正确“解密”。保证了数据查询端只可以得到想要的s条目标数据,但数据库服务器不知道数据查询端取的是哪些数据。
该实施方式中,在执行不经意传输协议时,用随机数对原数据做混淆处理,把对原始数据执行协议运算转换为对随机数的运算,即用不经意传输协议传输随机数而非原始数据,降低运算的复杂度,提高执行效率。
可选的,所述查询请求,还包括所述数据查询端以其私钥对身份信息和时间戳签名得到的数字签名;所述步骤103之后,步骤104之前,如图2所示,所述方法,还包括:
从鉴权存证系统获取数据查询端的证书;其中所述证书由所述数据查询端上传至鉴权存证系统,由所述鉴权存证系统挂载于区块链;
利用所述证书验证所述数字签名正确性。
其中,上述鉴权存证系统负责管控数据查询和响应操作,通过区块链技术完成功能。数据查询端在第一次发起数据查询操作之前需要执行初始化操作,向鉴权存证系统申请数据查询权限,数据查询端生成一张证书Cert,将证书Cert传给鉴权存证系统,也可以同时将身份信息A、时间戳T、证书Cert和签名A||T||Cert||Sig(A||T)传给鉴权存证系统。
鉴权存证系统收到数据查询端的消息后,首先验证签名的有效性,然后将A||T||Cert||Sig(A||T)挂载到区块链。
数据查询端在发起数据查询请求前,用自己的私钥对身份信息和时间戳的签名A||T||Sig(A||T)发给数据库服务器。
数据库服务器查询数据查询端信息,可以从鉴权存证系统获取数据查询端的证书,用所述证书验证所述数字签名正确性。
所述步骤104,包括:
若所述证书验证所述数字签名正确,则在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果。
上述数据库服务器在数字签名验证正确的情况下,确定所述分组查询条件对应的初始查询结果,并执行不经意传输协议,返回数据。可选的,在返回数据后,上述数据库服务器还将数据查询请求操作上传上述鉴权存证系统进行存证。
该实施例利用区块链技术配合本方案的执行协议实现数据查询过程中的鉴权和存证,进一步保证数据查询的安全性。
可选的,所述方法,还包括:
从所述鉴权存证系统获取查询预算m,其中,所述查询预算m为所述鉴权存证系统为数据查询端分配的数据条数预算,由所述鉴权存证系统挂载于区块链;
所述通过不经意传输协议向所述数据查询端发送第一信息,包括:
若n小于等于查询预算m,则通过不经意传输协议向所述数据查询端发送第一信息。
其中,数据查询端在第一次发起数据查询操作之前需要执行初始化操作时,向鉴权存证系统申请数据查询权限,鉴权存证系统会给数据查询端分配一个数据查询预算m,表示该请求者总共可以查询m条数据。数据查询端私钥对查询预算m和时间戳做数字签名Sig(m||T),将查询预算m传给鉴权存证系统,也可以同时将身份信息A、查询预算m、时间戳T、证书Cert和签名A||m||T||Cert||Sig(A||m||T)传给鉴权存证系统。
数据库服务器在收到查询请求后从鉴权存证系统拿到数据查询端的查询预算m,然后计算分组查询条件对应的数据条目数n,如果n不大于查询预算m,则认为数据查询端的查询请求合法,开始执行不经意传输协议。
可选的,数据查询端查询得到s条数据之后,其查询预算应该减掉s。数据查询端需要用自己的私钥对(m-s)||T做签名Sig((m-s)||T),并将签名信息发给发给鉴权存证系统,更新数据查询端的查询预算。
本发明实施例中,对所述数据库服务器中的数据字段执行分组操作,得到多个分组字段;发布所述多个分组字段;接收数据查询端的查询请求;其中,所述查询请求包括分组查询条件,所述分组查询条件由所述数据查询端根据目标查询条件与发布的所述分组字段之间的对应关系确定;在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果;通过不经意传输协议向所述数据查询端发送第一信息;其中,所述第一信息用于使所述数据查询端从所述初始查询结果中获取目标查询结果;其中,所述目标查询结果与所述目标查询条件相对应;通过数据字段执行分组操作和不经意传输协议执行数据查询,能够提高数据查询过程的安全性能,降低用户查询数据泄露风险。
参见图3,图3是本发明实施例提供的另一种数据查询方法的流程图,用于数据查询端,如图3所示,所述方法包括以下步骤:
步骤301、接收目标查询条件。
上述数据查询端接收查询者的目标查询条件,上述目标查询条件可以理解为查询者的实际查询意图。
步骤302、读取数据库服务器发布的分组字段,所述分组字段由所述数据库服务器对所述数据库服务器中的数据字段执行分组操作得到并发布。
步骤303、根据所述目标查询条件与分组字段之间的对应关系,确定分组查询条件。
步骤304、向数据库服务器发送查询请求;其中,所述查询请求包括分组查询条件。
步骤305、接收所述数据库服务器通过不经意传输协议发送的第一信息;其中,所述第一信息用于使所述数据查询端从初始查询结果中获取目标查询结果;其中,所述初始查询结果为所述数据库服务器在所述数据库服务器中的数据字段中确定所述分组查询条件对应的查询结果;所述目标查询结果与所述目标查询条件相对应。
需要说明的是,本实施例作为与图1所示的实施例中对应的数据查询端的实施方式,其具体的实施方式可以参见图1所示的实施例中的相关说明,为避免重复说明,本实施例不再赘述。
可选的,所述步骤304之前,所述方法,还包括:
生成数据查询端的证书;
利用私钥对身份信息和时间戳签名,得到数字签名;
将所述数据查询端的证书上传至鉴权存证系统,由所述鉴权存证系统将所述证书挂载于区块链;
所述查询请求,还包括所述数字签名。
可选的,所述初始查询结果包括n条数据,所述目标查询结果为n条数据中的s条数据;
所述方法,还包括:
接收数据库服务器发送的n条加密数据,其中所述n条加密数据由所述数据库服务器利用n个随机数分别对所述n条数据进行加密得到;
所述步骤305,包括:
从所述数据库服务器通过不经意传输协议发送的n个随机数中,获取s个随机数,其中所述s个随机数与所述s条数据的加密随机数相对应。
可选的,所述步骤304之前,所述方法,还包括:
向所述鉴权存证系统申请数据查询权限;
接收所述鉴权存证系统分配数据查询预算m;
所述查询请求,还包括所述数据查询预算m。
上述可选的实施方式可以参见图1所示的实施例中的相关说明,为避免重复说明,本实施例不再赘述。
本实施例中的数据查询方法,接收目标查询条件;读取数据库服务器发布的分组字段,所述分组字段由所述数据库服务器对所述数据库服务器中的数据字段执行分组操作得到并发布;根据所述目标查询条件与分组字段之间的对应关系,确定分组查询条件;向数据库服务器发送查询请求;其中,所述查询请求包括分组查询条件;接收所述数据库服务器通过不经意传输协议发送的第一信息;其中,所述第一信息用于使所述数据查询端从初始查询结果中获取目标查询结果;其中,所述初始查询结果为所述数据库服务器在所述数据库服务器中的数据字段中确定所述分组查询条件对应的查询结果;所述目标查询结果与所述目标查询条件相对应。通过数据字段执行分组操作和不经意传输协议执行数据查询,能够提高数据查询过程的安全性能,降低用户查询数据泄露风险。
参见图4,图4是本发明实施例提供的一种数据库服务器的结构示意图,如图4所示,数据库服务器400包括:
分组模块401,用于对所述数据库服务器中的数据字段执行分组操作,得到多个分组字段;
发布模块402,用于发布所述多个分组字段;
查询请求接收模块403,用于接收数据查询端的查询请求;其中,所述查询请求包括分组查询条件,所述分组查询条件由所述数据查询端根据目标查询条件与发布的所述分组字段之间的对应关系确定;
查询模块404,用于在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果;
发送模块405,用于通过不经意传输协议向所述数据查询端发送第一信息;其中,所述第一信息用于使所述数据查询端从所述初始查询结果中获取目标查询结果;其中,所述目标查询结果与所述目标查询条件相对应。
可选的,所述分组模块,具体用于对数据字段执行泛化分组操作,其中,每组分组字段包括的数据条目大于等于2。
可选的,所述查询请求,还包括所述数据查询端以其私钥对身份信息和时间戳签名得到的数字签名。
所述数据库服务器,还包括:
证书获取模块,用于从鉴权存证系统获取数据查询端的证书;其中所述证书由所述数据查询端上传至鉴权存证系统,由所述鉴权存证系统挂载于区块链;
签名验证模块,用于利用所述证书验证所述数字签名正确性。
所述查询模块,具体用于若所述证书验证所述数字签名正确,则在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果。
所述初始查询结果包括n条数据。可选的,所述数据库服务器,还包括:
加密模块,用于利用n个随机数分别对所述n条数据进行加密,得到n条加密数据;
加密数据发送模块,用于将所述n条加密数据发送至所述数据查询端;
所述发送模块,具体用于通过不经意传输协议将所述n个随机数发送至所述数据查询端。
可选的,所述数据库服务器,还包括:
预算获取模块,用于从所述鉴权存证系统获取查询预算m,其中,所述查询预算m为所述鉴权存证系统为数据查询端分配的数据条数预算,由所述鉴权存证系统挂载于区块链。
所述发送模块,具体用于若n小于等于查询预算m,则通过不经意传输协议向所述数据查询端发送第一信息。
需要说明的是,本实施例作为与图1所示的实施例中对应的数据库服务器的实施方式,其具体的实施方式可以参见图1所示的实施例中的相关说明,为避免重复说明,本实施例不再赘述。
本发明实施例提供的数据库服务器是能够执行上述数据查询方法方法的装置,则上述数据查询方法方法实施例中的所有实现方式均适用于该装置,且均能达到相同或相似的有益效果。
本发明实施例还提供的一种数据库服务器,上述数据库服务器包括:包括处理器,所述处理器,用于:
对所述数据库服务器中的数据字段执行分组操作,得到多个分组字段;
发布所述多个分组字段;
接收数据查询端的查询请求;其中,所述查询请求包括分组查询条件,所述分组查询条件由所述数据查询端根据目标查询条件与发布的所述分组字段之间的对应关系确定;
在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果;
通过不经意传输协议向所述数据查询端发送第一信息;其中,所述第一信息用于使所述数据查询端从所述初始查询结果中获取目标查询结果;其中,所述目标查询结果与所述目标查询条件相对应。
可选的,所述对所述数据库服务器中的数据字段执行分组操作,包括:
对数据字段执行泛化分组操作,其中,每组分组字段包括的数据条目大于等于2。
可选的,所述查询请求,还包括所述数据查询端以其私钥对身份信息和时间戳签名得到的数字签名;
所述接收数据查询端的查询请求步骤之后,在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果步骤之前,所述处理器,还用于:
从鉴权存证系统获取数据查询端的证书;其中所述证书由所述数据查询端上传至鉴权存证系统,由所述鉴权存证系统挂载于区块链;
利用所述证书验证所述数字签名正确性;
所述在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果,包括:
若所述证书验证所述数字签名正确,则在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果
可选的,所述初始查询结果包括n条数据;
所述在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果步骤之后,通过不经意传输协议向所述数据查询端发送第一信息步骤之前,所述处理器,还用于:
利用n个随机数分别对所述n条数据进行加密,得到n条加密数据;
将所述n条加密数据发送至所述数据查询端;
所述通过不经意传输协议向所述数据查询端发送第一信息,包括:
通过不经意传输协议将所述n个随机数发送至所述数据查询端
可选的,所述处理器,还用于:
从所述鉴权存证系统获取查询预算m,其中,所述查询预算m为所述鉴权存证系统为数据查询端分配的数据条数预算,由所述鉴权存证系统挂载于区块链;
所述通过不经意传输协议向所述数据查询端发送第一信息,包括:
若n小于等于查询预算m,则通过不经意传输协议向所述数据查询端发送第一信息。
需要说明的是,本实施例作为与图1所示的实施例中对应的数据库服务器的实施方式,其具体的实施方式可以参见图1所示的实施例中的相关说明,为避免重复说明,本实施例不再赘述。
本发明实施例还提供了一种电子设备,包括:处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序,所述程序被所述处理器执行时实现上述数据查询方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述数据查询方法实施例中的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。
参见图5,图5是本发明实施例提供的一种数据查询端的结构示意图,如图5所示,数据查询端500包括:
第一接收模块501,用于接收目标查询条件;
读取模块502,用于读取数据库服务器发布的分组字段,所述分组字段由所述数据库服务器对所述数据库服务器中的数据字段执行分组操作得到并发布;
查询条件确定模块503,用于根据所述目标查询条件与分组字段之间的对应关系,确定分组查询条件;
请求模块504,用于向数据库服务器发送查询请求;其中,所述查询请求包括分组查询条件;
第二接收模块505,用于接收所述数据库服务器通过不经意传输协议发送的第一信息;其中,所述第一信息用于使所述数据查询端从初始查询结果中获取目标查询结果;其中,所述初始查询结果为所述数据库服务器在所述数据库服务器中的数据字段中确定所述分组查询条件对应的查询结果;所述目标查询结果与所述目标查询条件相对应。
可选的,所述数据查询端,还包括:
证书生成模块,用于生成数据查询端的证书;
数字签名模块,用于利用私钥对身份信息和时间戳签名,得到数字签名;
证书上传模块,用于将所述数据查询端的证书上传至鉴权存证系统,由所述鉴权存证系统将所述证书挂载于区块链;
所述查询请求,还包括所述数字签名。
可选的,所述初始查询结果包括n条数据,所述目标查询结果为n条数据中的s条数据,所述数据查询端,还包括:
加密数据接收模块,用于接收数据库服务器发送的n条加密数据,其中所述n条加密数据由所述数据库服务器利用n个随机数分别对所述n条数据进行加密得到;
第二接收模块,具体用于:从所述数据库服务器通过不经意传输协议发送的n个随机数中,获取s个随机数,其中所述s个随机数与所述s条数据的加密随机数相对应。
可选的,所述数据查询端,还包括:
权限申请模块,用于向所述鉴权存证系统申请数据查询权限;
预算接收模块,用于接收所述鉴权存证系统分配数据查询预算m;
所述查询请求,还包括所述数据查询预算m。
需要说明的是,本实施例作为与图1所示的实施例中对应的数据查询端的实施方式,其具体的实施方式可以参见图1所示的实施例中的相关说明,为避免重复说明,本实施例不再赘述。
本发明实施例提供的数据查询端是能够执行上述数据查询方法方法的装置,则上述数据查询方法方法实施例中的所有实现方式均适用于该装置,且均能达到相同或相似的有益效果。
本发明实施例还提供的一种电子设备,包括收发机和处理器,所述处理器,用于:
接收目标查询条件;
读取数据库服务器发布的分组字段,所述分组字段由所述数据库服务器对所述数据库服务器中的数据字段执行分组操作得到并发布;
根据所述目标查询条件与分组字段之间的对应关系,确定分组查询条件;
向数据库服务器发送查询请求;其中,所述查询请求包括分组查询条件;
接收所述数据库服务器通过不经意传输协议发送的第一信息;其中,所述第一信息用于使所述数据查询端从初始查询结果中获取目标查询结果;其中,所述初始查询结果为所述数据库服务器在所述数据库服务器中的数据字段中确定所述分组查询条件对应的查询结果;所述目标查询结果与所述目标查询条件相对应。
可选的,所述向数据库服务器发送查询请求之前,所述处理器,还用于:
生成数据查询端的证书;
利用私钥对身份信息和时间戳签名,得到数字签名;
将所述数据查询端的证书上传至鉴权存证系统,由所述鉴权存证系统将所述证书挂载于区块链;
所述查询请求,还包括所述数字签名。
可选的,所述初始查询结果包括n条数据,所述目标查询结果为n条数据中的s条数据,所述处理器,还用于:
接收数据库服务器发送的n条加密数据,其中所述n条加密数据由所述数据库服务器利用n个随机数分别对所述n条数据进行加密得到;
所述接收所述数据库服务器通过不经意传输协议发送的第一信息,包括:
从所述数据库服务器通过不经意传输协议发送的n个随机数中,获取s个随机数,其中所述s个随机数与所述s条数据的加密随机数相对应。
可选的,所述向数据库服务器发送查询请求之前,所述处理器,还用于:
向所述鉴权存证系统申请数据查询权限;
接收所述鉴权存证系统分配数据查询预算m;
所述查询请求,还包括所述数据查询预算m。
本发明实施例还提供了一种电子设备,包括:处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序,所述程序被所述处理器执行时实现上述数据查询方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述数据查询方法实施例中的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。
Claims (17)
1.一种数据查询方法,应用于数据库服务器,其特征在于,所述方法包括:
对所述数据库服务器中的数据字段执行分组操作,得到多个分组字段;
发布所述多个分组字段;
接收数据查询端的查询请求;其中,所述查询请求包括分组查询条件,所述分组查询条件由所述数据查询端根据目标查询条件与发布的所述分组字段之间的对应关系确定;
在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果;
通过不经意传输协议向所述数据查询端发送第一信息;其中,所述第一信息用于使所述数据查询端从所述初始查询结果中获取目标查询结果;其中,所述目标查询结果与所述目标查询条件相对应。
2.根据权利要求1所述的方法,其特征在于,所述对所述数据库服务器中的数据字段执行分组操作,包括:
对数据字段执行泛化分组操作,其中,每组分组字段包括的数据条目大于等于2。
3.根据权利要求1所述的方法,其特征在于,所述查询请求,还包括所述数据查询端以其私钥对身份信息和时间戳签名得到的数字签名;
所述接收数据查询端的查询请求步骤之后,在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果步骤之前,所述方法,还包括:
从鉴权存证系统获取数据查询端的证书;其中所述证书由所述数据查询端上传至鉴权存证系统,由所述鉴权存证系统挂载于区块链;
利用所述证书验证所述数字签名正确性;
所述在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果,包括:
若所述证书验证所述数字签名正确,则在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果。
4.根据权利要求1所述的方法,其特征在于,所述初始查询结果包括n条数据;
所述在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果步骤之后,通过不经意传输协议向所述数据查询端发送第一信息步骤之前,所述方法,还包括:
利用n个随机数分别对所述n条数据进行加密,得到n条加密数据;
将所述n条加密数据发送至所述数据查询端;
所述通过不经意传输协议向所述数据查询端发送第一信息,包括:
通过不经意传输协议将所述n个随机数发送至所述数据查询端。
5.根据权利要求3或4所述的方法,其特征在于,所述初始查询结果包括n条数据;
所述方法还包括:
从所述鉴权存证系统获取查询预算m,其中,所述查询预算m为所述鉴权存证系统为数据查询端分配的数据条数预算,由所述鉴权存证系统挂载于区块链;
所述通过不经意传输协议向所述数据查询端发送第一信息,包括:
若n小于等于查询预算m,则通过不经意传输协议向所述数据查询端发送第一信息。
6.一种数据查询方法,应用于数据查询端,其特征在于,所述方法包括:
接收目标查询条件;
读取数据库服务器发布的分组字段,所述分组字段由所述数据库服务器对所述数据库服务器中的数据字段执行分组操作得到并发布;
根据所述目标查询条件与分组字段之间的对应关系,确定分组查询条件;
向数据库服务器发送查询请求;其中,所述查询请求包括分组查询条件;
接收所述数据库服务器通过不经意传输协议发送的第一信息;其中,所述第一信息用于使所述数据查询端从初始查询结果中获取目标查询结果;其中,所述初始查询结果为所述数据库服务器在所述数据库服务器中的数据字段中确定所述分组查询条件对应的查询结果;所述目标查询结果与所述目标查询条件相对应。
7.根据权利要求6所述的方法,其特征在于,所述向数据库服务器发送查询请求之前,所述方法,还包括:
生成数据查询端的证书;
利用私钥对身份信息和时间戳签名,得到数字签名;
将所述数据查询端的证书上传至鉴权存证系统,由所述鉴权存证系统将所述证书挂载于区块链;
所述查询请求,还包括所述数字签名。
8.根据权利要求6所述的方法,其特征在于,所述初始查询结果包括n条数据,所述目标查询结果为n条数据中的s条数据;
所述方法,还包括:
接收数据库服务器发送的n条加密数据,其中所述n条加密数据由所述数据库服务器利用n个随机数分别对所述n条数据进行加密得到;
所述接收所述数据库服务器通过不经意传输协议发送的第一信息,包括:
从所述数据库服务器通过不经意传输协议发送的n个随机数中,获取s个随机数,其中所述s个随机数与所述s条数据的加密随机数相对应。
9.根据权利要求7或8所述的方法,其特征在于,所述向数据库服务器发送查询请求之前,所述方法,还包括:
向所述鉴权存证系统申请数据查询权限;
接收所述鉴权存证系统分配数据查询预算m;
所述查询请求,还包括所述数据查询预算m。
10.一种数据库服务器,其特征在于,包括:
分组模块,用于对所述数据库服务器中的数据字段执行分组操作,得到多个分组字段;
发布模块,用于发布所述多个分组字段;
查询请求接收模块,用于接收数据查询端的查询请求;其中,所述查询请求包括分组查询条件,所述分组查询条件由所述数据查询端根据目标查询条件与发布的所述分组字段之间的对应关系确定;
查询模块,用于在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果;
发送模块,用于通过不经意传输协议向所述数据查询端发送第一信息;其中,所述第一信息用于使所述数据查询端从所述初始查询结果中获取目标查询结果;其中,所述目标查询结果与所述目标查询条件相对应。
11.一种数据库服务器,其特征在于,包括处理器,所述处理器,用于:
对所述数据库服务器中的数据字段执行分组操作,得到多个分组字段;
发布所述多个分组字段;
接收数据查询端的查询请求;其中,所述查询请求包括分组查询条件,所述分组查询条件由所述数据查询端根据目标查询条件与发布的所述分组字段之间的对应关系确定;
在所述数据库服务器中的数据字段中确定所述分组查询条件对应的初始查询结果;
通过不经意传输协议向所述数据查询端发送第一信息;其中,所述第一信息用于使所述数据查询端从所述初始查询结果中获取目标查询结果;其中,所述目标查询结果与所述目标查询条件相对应。
12.一种电子设备,其特征在于,包括:处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序,所述程序被所述处理器执行时实现如权利要求1至5中任一项所述的数据查询方法的步骤。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5中任一项所述的数据查询方法的步骤。
14.一种数据查询端,其特征在于,包括:
第一接收模块,用于接收目标查询条件;
读取模块,用于读取数据库服务器发布的分组字段,所述分组字段由所述数据库服务器对所述数据库服务器中的数据字段执行分组操作得到并发布;
查询条件确定模块,用于根据所述目标查询条件与分组字段之间的对应关系,确定分组查询条件;
请求模块,用于向数据库服务器发送查询请求;其中,所述查询请求包括分组查询条件;
第二接收模块,用于接收所述数据库服务器通过不经意传输协议发送的第一信息;其中,所述第一信息用于使所述数据查询端从初始查询结果中获取目标查询结果;其中,所述初始查询结果为所述数据库服务器在所述数据库服务器中的数据字段中确定所述分组查询条件对应的查询结果;所述目标查询结果与所述目标查询条件相对应。
15.一种电子设备,其特征在于,包括收发机和处理器,
所述处理器,用于:
接收目标查询条件;
读取数据库服务器发布的分组字段,所述分组字段由所述数据库服务器对所述数据库服务器中的数据字段执行分组操作得到并发布;
根据所述目标查询条件与分组字段之间的对应关系,确定分组查询条件;
向数据库服务器发送查询请求;其中,所述查询请求包括分组查询条件;
接收所述数据库服务器通过不经意传输协议发送的第一信息;其中,所述第一信息用于使所述数据查询端从初始查询结果中获取目标查询结果;其中,所述初始查询结果为所述数据库服务器在所述数据库服务器中的数据字段中确定所述分组查询条件对应的查询结果;所述目标查询结果与所述目标查询条件相对应。
16.一种电子设备,其特征在于,包括:处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序,所述程序被所述处理器执行时实现如权利要求6至9中任一项所述的数据查询方法的步骤。
17.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求6至9中任一项所述的数据查询方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010512708.0A CN113836569B (zh) | 2020-06-08 | 2020-06-08 | 数据查询方法及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010512708.0A CN113836569B (zh) | 2020-06-08 | 2020-06-08 | 数据查询方法及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113836569A true CN113836569A (zh) | 2021-12-24 |
CN113836569B CN113836569B (zh) | 2024-08-02 |
Family
ID=78963555
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010512708.0A Active CN113836569B (zh) | 2020-06-08 | 2020-06-08 | 数据查询方法及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113836569B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114357522A (zh) * | 2022-01-13 | 2022-04-15 | 厦门荷月信息科技有限公司 | 一种隐私计算分组查询方法及系统 |
CN114676169A (zh) * | 2022-05-27 | 2022-06-28 | 富算科技(上海)有限公司 | 一种数据查询方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105721140A (zh) * | 2016-01-27 | 2016-06-29 | 北京航空航天大学 | n取k的不经意传输方法和系统 |
WO2017178114A1 (de) * | 2016-04-12 | 2017-10-19 | Giesecke+Devrient Mobile Security Gmbh | Identifizieren eines identitätsträgers |
US9917820B1 (en) * | 2015-06-29 | 2018-03-13 | EMC IP Holding Company LLC | Secure information sharing |
CN108848081A (zh) * | 2018-06-01 | 2018-11-20 | 深圳崀途科技有限公司 | 基于联盟链存储校验和积分激励机制的数据共享方法 |
CN110096899A (zh) * | 2019-04-29 | 2019-08-06 | 腾讯科技(深圳)有限公司 | 一种数据查询方法及装置 |
CN111062052A (zh) * | 2019-12-09 | 2020-04-24 | 支付宝(杭州)信息技术有限公司 | 一种数据查询的方法和系统 |
CN111092871A (zh) * | 2019-12-11 | 2020-05-01 | 支付宝(杭州)信息技术有限公司 | 一种个人信息保护的数据共享方法、装置及电子设备 |
-
2020
- 2020-06-08 CN CN202010512708.0A patent/CN113836569B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9917820B1 (en) * | 2015-06-29 | 2018-03-13 | EMC IP Holding Company LLC | Secure information sharing |
CN105721140A (zh) * | 2016-01-27 | 2016-06-29 | 北京航空航天大学 | n取k的不经意传输方法和系统 |
WO2017178114A1 (de) * | 2016-04-12 | 2017-10-19 | Giesecke+Devrient Mobile Security Gmbh | Identifizieren eines identitätsträgers |
CN108848081A (zh) * | 2018-06-01 | 2018-11-20 | 深圳崀途科技有限公司 | 基于联盟链存储校验和积分激励机制的数据共享方法 |
CN110096899A (zh) * | 2019-04-29 | 2019-08-06 | 腾讯科技(深圳)有限公司 | 一种数据查询方法及装置 |
CN111062052A (zh) * | 2019-12-09 | 2020-04-24 | 支付宝(杭州)信息技术有限公司 | 一种数据查询的方法和系统 |
CN111092871A (zh) * | 2019-12-11 | 2020-05-01 | 支付宝(杭州)信息技术有限公司 | 一种个人信息保护的数据共享方法、装置及电子设备 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114357522A (zh) * | 2022-01-13 | 2022-04-15 | 厦门荷月信息科技有限公司 | 一种隐私计算分组查询方法及系统 |
CN114676169A (zh) * | 2022-05-27 | 2022-06-28 | 富算科技(上海)有限公司 | 一种数据查询方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113836569B (zh) | 2024-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Li et al. | Privacy preserving cloud data auditing with efficient key update | |
CN113364600B (zh) | 基于无证书的云存储数据完整性公共审计方法 | |
US8214637B2 (en) | Public key certificate issuing system, public key certificate issuing method, digital certification apparatus, and program storage medium | |
US20100229241A1 (en) | Method of accessing service, device and system thereof | |
CN112235260B (zh) | 一种匿名数据存证方法、装置、设备和存储介质 | |
Yu et al. | Provably secure identity based provable data possession | |
CN113836569A (zh) | 数据查询方法及相关设备 | |
CN115834067A (zh) | 一种边云协同场景中密文数据共享方法 | |
Yu et al. | Public cloud data auditing with practical key update and zero knowledge privacy | |
CN109902508A (zh) | 一种凭证签发者匿名的实体鉴别方法及系统 | |
CN115208656A (zh) | 一种基于区块链和权限管理的供应链数据共享方法及系统 | |
CN116975936B (zh) | 金融资质证明方法、金融资质验证方法 | |
CN118133311A (zh) | 一种基于改进群签名的联邦学习隐私保护方法 | |
Kumar et al. | Direct anonymous attestation with efficient verifier-local revocation for subscription system | |
WO2023134576A1 (zh) | 数据加密方法、属性授权中心及存储介质 | |
CN114362958B (zh) | 一种基于区块链的智能家居数据安全存储审计方法及系统 | |
Dai et al. | A resource-aware approach for authenticating privacy preserving GNN queries | |
CN114866255A (zh) | 以用户为中心面向多idp聚合的多因素认证方法 | |
CN107347008A (zh) | 电子文书验证方法、设备及系统 | |
CN113992389A (zh) | 一种基于动态频率表的sgx数据完整性审计方法 | |
CN111259449A (zh) | 隐私数据的处理方法、清理器以及云端存储系统 | |
Hajny et al. | Multidevice authentication with strong privacy protection | |
CN118413321B (zh) | 资源公钥基础设施的资源签发方法、资源验证方法及系统 | |
CN117978546B (zh) | 一种基于可信执行环境的无证书动态共享数据审计方法 | |
Li et al. | A Practical Forward-Secure DualRing |
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 |