本申请计算机,尤其涉及数据处理方法、装置及存储介质。
背景技术:
1、隐私信息检索(也叫匿踪查询)是安全多方计算中很实用的一项技术,用来保护用户的查询隐私。其目的是保证用户向服务器(数据源方)提交查询请求时,在用户查询信息不被泄漏的条件下完成查询。即整个查询过程中服务器不知道用户具体查询信息及查询出的数据项。
2、在实际计算过程中,为了更好的保护客户端的真实意图和查询隐私,服务器必须遍历数据库的每一个比特来回答一个客户端的查询,否则就会泄露客户端不感兴趣的数据库记录信息。也就意味着一次查询过程就需要服务器端执行大量不相关的数据处理工作。一些方案提出对数据库进行预处理,使服务器回答查询的时间与数据库记录是次线性相关的。但是上述方案需要特定于客户端的预处理,需要很大的服务器存储空间。并且,由于计算量和通信量都比较大,导致计算、通信成本很高。因此,需要一种能够实现提高匿踪查询数据处理能力的方案。
技术实现思路
1、本申请的多个方面提供数据处理方法、装置及存储介质,用以提高匿踪查询数据处理能力的方案。
2、本申请实施例提供一种数据处理方法,应用于客户端,所述方法包括:
3、在服务器端将数据库中原始数据转换为目标矩阵后,接收所述服务器端提供的提示参数;其中,所述提示参数是基于所述目标矩阵和匿踪查询的公共参数计算得到的;
4、生成包含干扰数据的查询请求;
5、向所述服务器端发送所述包含干扰数据的查询请求;
6、接收所述服务器端反馈的包含干扰数据的查询结果;
7、利用所述提示参数从所述包含干扰数据的查询结果中恢复所述目标数据。
8、可选地,所述生成包含干扰数据的查询请求,包括:
9、基于所述目标矩阵与所述原始数据的对应关系,生成用于表示检索所需目标数据的单位向量;
10、基于所述单位向量生成包含干扰数据的查询请求。
11、可选地,基于所述单位向量生成包含干扰数据的查询请求,包括:
12、随机选取秘密向量和错误向量;
13、基于所述秘密向量与所述匿踪查询的公共参数、所述错误向量、所述单位向量计算得到用于表示查询所需目标数据的所述查询请求。
14、可选地,基于所述秘密向量和所述对应关系,设置用于恢复所述目标数据的状态信息。
15、可选地,所述利用所述提示参数从所述包含干扰数据的查询结果中恢复所述目标数据,包括:
16、基于所述状态信息计算查询结果中目标元素与提示信息中目标元素的差值;
17、基于预设的第一常量和第二常量计算得到整数常量;
18、基于所述差值和所述整数常量,恢复所述目标数据。
19、第二方面,本申请实施例提供一种数据处理方法,应用于服务器端,所述方法包括:
20、将数据库中原始数据转换为目标矩阵;
21、基于所述目标矩阵和匿踪查询的公共参数,计算得到提示参数;
22、将所述提示参数发送给所述客户端;
23、响应于所述客户端提供的包含干扰数据的查询请求,向所述客户端发送包含干扰数据的查询结果,以便所述客户端利用所述提示参数从所述查询结果中恢复所述目标数据。
24、可选地,所述响应于所述客户端提供的包含干扰数据的查询请求,向所述客户端发送包含干扰数据的查询结果,包括:
25、基于接收到的所述包含干扰数据的查询请求和所述目标矩阵计算得到所述包含干扰数据的查询结果;
26、将所述包含干扰数据的查询结果发送给所述客户端。
27、可选地,所述将所述提示参数发送给所述客户端,包括:
28、当任意所述客户端有对所述目标数据的查询需求时,确定对应的客户端;
29、将所述提示参数发送给所述对应的客户端。
30、可选地,从所述匿踪查询的公共参数a是随机选取的。
31、第三方面,本申请实施例提供一种数据处理装置,应用于客户端,所述装置包括:
32、接收模块,用于在服务器端将数据库中原始数据转换为目标矩阵后,接收所述服务器端提供的提示参数;其中,所述提示参数是基于所述目标矩阵和匿踪查询的公共参数计算得到的。
33、生成模块,用于生成包含干扰数据的查询请求。
34、发送模块,用于向所述服务器端发送所述包含干扰数据的查询请求。
35、所述接收模块,还用于接收所述服务器端反馈的包含干扰数据的查询结果。
36、第四方面,所述计算机可读存储介质中存储有计算机程序或指令,当所述计算机程序或指令被运行时,实现如第一方面或第二方面所述的方法。
37、第五方面,一种电子设备,包括:处理器和存储器;
38、所述存储器存储计算机执行指令;
39、所述处理器执行所述存储器存储的计算机执行指令,使得所述处理器执行如第一方面或第二方面所述的方法。
40、在本申请的一些实施例中,在服务器端将数据库中原始数据转换为目标矩阵后,接收所述服务器端提供的提示参数;其中,所述提示参数是基于所述目标矩阵和匿踪查询的公共参数计算得到的;生成包含干扰数据的查询请求;向所述服务器端发送所述包含干扰数据的查询请求;接收所述服务器端反馈的包含干扰数据的查询结果;利用所述提示参数从所述包含干扰数据的查询结果中恢复所述目标数据。基于上述方案,服务器端预先计算得到的提示参数以及匿踪查询的公共参数是可以应用于不同客户端的数据查询需求,服务器端的预处理仅依赖于数据库转换得到的目标矩阵和匿踪查询的公开参数,因此服务器可以在许多相互独立的客户端的多次查询中重复使用此预处理数据。在计算查询结果的时候,服务器端只需要计算大概n个多项式乘法和加法。需要说明的是,客户端必须下载提示参数。
1.一种数据处理方法,其特征在于,应用于客户端,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述生成包含干扰数据的查询请求,包括:
3.根据权利要求2所述的方法,其特征在于,基于所述单位向量生成包含干扰数据的查询请求,包括:
4.根据权利要求3所述的方法,其特征在于,还包括:
5.根据权利要求4所述的方法,其特征在于,所述利用所述提示参数从所述包含干扰数据的查询结果中恢复所述目标数据,包括:
6.一种数据处理方法,其特征在于,应用于服务器端,所述方法包括:
7.根据权利要求6所述的方法,其特征在于,所述响应于所述客户端提供的包含干扰数据的查询请求,向所述客户端发送包含干扰数据的查询结果,包括:
8.根据权利要求6所述的方法,其特征在于,所述将所述提示参数发送给所述客户端,包括:
9.根据权利要求6所述的方法,其特征在于,还包括:
10.一种数据处理装置,其特征在于,所述装置包括:
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序或指令,当所述计算机程序或指令被运行时,实现如权利要求1-9中任一项所述的方法。
12.一种电子设备,其特征在于,包括:处理器和存储器;