掌桥专利:专业的专利平台
掌桥专利
首页

基于不经意传输协议的数据处理方法、装置、系统及介质

文献发布时间:2023-06-19 19:30:30


基于不经意传输协议的数据处理方法、装置、系统及介质

技术领域

本申请属于数据处理技术领域,尤其涉及一种基于不经意传输协议的数据处理方法、装置、系统及介质。

背景技术

隐私保护集合求交(Private Set Intersection,PSI)允许持有各自数据的多方来共同计算集合的交集,而各参与方只能得到正确的交集,而不会得到交集以外另一方集合中的任何信息。随着技术的不断发展,出现基于各种组件以及安全协议的PSI协议,如基于DH(Diffie-Hellman)的PSI协议、基于不经意传输(Oblivious Transfer , OT)的PSI协议、基于 不经意线性评估(Oblivious Linear Function Evaluation,OLE)的PSI协议等。

传统的PSI协议仅能解决一些最简单的现实问题,例如计算广告的实际效果、查找联系人等。在一些特殊场景下,需要使用条件检索隐私保护集合求交(ConditionalPrivate Set Intersection, CPSI)协议。例如,百货商场A没有充足的数据支撑哪些人群能够作为广告的宣传对象,希望超市B能够提供帮助。此时,百货商场A希望知晓哪些用户是常住于百货商场A附近5km内且且满足月消费大于一千。百货商场A不希望超市B知晓具体的检索条件以及交集,超市B也不希望百货商场A拿到不属于交集的额外信息。但是相关技术中的条件检索隐私保护集合求交协议是基于DH密钥交换构造的,这类PSI协议的性能往往难以用于大规模的数据求交,求交效率低。

发明内容

本申请实施例提供了一种基于不经意传输协议的数据处理方法、装置、系统及介质,能够实现条件检索隐私保护集合求交,提高求交效率和数据的安全性。

第一方面,本申请实施例提供一种基于不经意传输协议的数据处理方法,方法包括 :

第一终端基于自持的查询条件、第二终端基于自持的多个特征数据执行预设两方计算协议,第二终端得到与自持的多个第二标识一一对应的第二策略参数,第一终端得到与多个第二策略参数一一对应的多个第一策略参数;

第一终端基于自持的多个第一标识、第二终端基于自持的多个第二标识执行预设OPRF协议,第一终端得到与各第一标识对应的第一掩码,第二终端得到与第二标识对应的多个第二掩码;

第二终端将对应同一第二标识的第二掩码和第二策略参数输入第一函数,分别计算得到多个第三掩码,将多个第三掩码发送至第一终端;

第一终端将第一策略参数和接收的第三掩码输入第二函数,计算得到查询掩码,其中,在第一策略参数和第二策略参数相等的情况下,第一函数为第二函数的反函数;

在第四掩码与查询掩码相同的情况下,确认与第四掩码对应的第一标识为与查询条件适配的查询结果,多个第一掩码包括第四掩码。

在一实施例中,第一终端基于自持的多个第一标识、第二终端基于自持的多个第二标识执行预设OPRF协议,第一终端得到与各第一标识对应的第一掩码,第二终端得到与第二标识对应的多个第二掩码,包括:

第一终端根据预设加密规则对自持的多个第一标识加密处理,得到多个第一加密标识;

第一终端根据第一加密标识、预设OPRF协议中的伪随机函数和随机秘钥,计算得到与第一加密标识一一对应的第一掩码;

第一终端将预设OPRF协议中的随机秘钥发送至第二终端;

第二终端根据随机秘钥和预设加密规则对自持的多个第二标识加密处理,得到多个第二加密标识;

第二终端根据第二加密标识、预设OPRF协议中的伪随机函数和随机秘钥,计算得到与第二加密标识一一对应的第二掩码。

在一实施例中,第一终端根据预设加密规则对自持的多个第一标识加密处理,得到多个第一加密标识包括:

第一终端将n个第一标识分别通过多个预设哈希函数中的一个分配至布谷鸟哈希表的存储桶中,存储第一标识和第一标识分配至存储桶所使用的预设哈希函数的标识值的映射关系为使用映射关系,布谷鸟哈希表包括j个存储桶,n和j均正整数,j>n,多个预设哈希函数与多个标识值一一对应;

第一终端根据预设加密规则、存储桶的存储状态对分配至存储桶内的第一标识加密处理,计算得到j个第一加密标识。

在一实施例中,第一终端根据预设加密规则、存储桶的存储状态对分配至存储桶内的第一标识加密处理,计算得到j个第一加密标识包括:

在第一存储桶的存储状态为空闲状态的情况下,第一终端在预设常数集合中随机选择一个常数作为与第一存储桶对应的第一加密标识;

在第一存储桶的存储状态为非空闲状态的情况下,第一终端根据使用映射关系,选定与第一存储桶对应的第三标识、以及与第三标识对应的标识值,根据预设加密规则处理第三标识和与其对应的标识值,得到与第一存储桶对应的第一加密标识;

其中,布谷鸟哈希表包括第一存储桶,多个第一标识包括第三标识。

在一实施例中,预设加密规则包括:

拼接区别标识和标识值;

其中,区别标识为第一标识的情况下,标识值为该第一标识分配至存储桶所使用的预设哈希函数的标识值;

区别标识为第二标识的情况下,标识值为多个预设哈希函数的标识值中的任一个。

在一实施例中,第二终端根据随机秘钥和预设加密规则对自持的多个第二标识加密处理,得到多个第二加密标识包括:

第二终端将自持的多个第二标识分别与多个预设哈希函数的标识值拼接得到多个第二加密标识;

第二终端根据第二加密标识、预设OPRF协议中的伪随机函数和随机秘钥,计算得到与第二加密标识一一对应的第二掩码,包括:

第二终端根据计算各第二加密标识的第二标识和标识值,确定与各第二加密标识的对应的随机秘钥;

根据预设OPRF协议中的伪随机函数、以及第二加密标识和与第二加密标识对应的随机秘钥计算得到第二掩码。

在一实施例中,第二终端将对应同一第二标识的第二掩码和第二策略参数输入第一函数,分别计算得到多个第三掩码包括:

第二终端计算对应同一第二标识的第二掩码和第二策略参数的和,得到与各第二策略参数对应的第三掩码;

第一终端将第一策略参数和接收的第三掩码输入第二函数,计算得到查询掩码包括:

第一终端计算对应同一第二策略参数的第三掩码和第一策略参数的差,得到查询掩码。

第二方面,本申请实施例提供一种数据处理装置,包括通信连接的第一终端和第二终端;

第一终端用于基于自持的查询条件、第二终端基于自持的多个特征数据执行预设两方计算协议,第二终端得到与自持的多个第二标识一一对应的第二策略参数,第一终端得到与多个第二策略参数一一对应的多个第一策略参数;

第一终端用于基于自持的多个第一标识、第二终端基于自持的多个第二标识执行预设OPRF协议,第一终端得到与各第一标识对应的第一掩码,第二终端得到与第二标识对应的多个第二掩码;

第二终端用于将对应同一第二标识的第二掩码和第二策略参数输入第一函数,分别计算得到多个第三掩码,将多个第三掩码发送至第一终端;

第一终端用于将第一策略参数和接收的第三掩码输入第二函数,计算得到查询掩码,其中,在第一策略参数和第二策略参数相等的情况下,第一函数为第二函数的反函数;

在第四掩码与查询掩码相同的情况下,确认与第四掩码对应的第一标识为与查询条件适配的查询结果,多个第一掩码包括第四掩码。

第三方面,本申请实施例提供一种数据处理系统,数据处理系统包括:处理器以及存储有计算机程序指令的存储器;处理器执行计算机程序指令时实现如上述的基于不经意传输协议的数据处理方法。

第四方面,本申请实施例提供一种计算机存储介质,计算机存储介质上存储有计算机程序指令,计算机程序指令被处理器执行时实现如上述的基于不经意传输协议的数据处理方法。

本申请实施例提供的基于不经意传输协议的数据处理方法、装置、系统及介质,通过执行预设两方计算协议,使得第一终端和第二终端分别得到与查询条件相关的第一策略参数和第二策略参数,通过执行预设OPRF协议,使得第一终端和第二终端分别得到与第一标识相关的第一掩码和第二标识相关的第二掩码,第二终端通过第一函数、第二策略参数和第二掩码计算第三掩码,从而对于第一终端隐藏第二策略参数和第二掩码,在第一策略参数和第二策略参数相等的情况下,第一终端可以通过第二函数还原出与第三掩码相等的查询掩码,从而可以通过确定与查询掩码相同的第四掩码,确定与第四掩码对应的第一标识为与查询条件适配的查询结果,实现条件检索的隐私保护集合求交。与相关技术中基于DH密钥交换的条件检索隐私保护集合求交,本申请提供的数据处理方法基于预设两方计算协议和预设OPRF协议实现条件检索隐私保护集合求交,求交效率更高,且对第一终端隐藏符合查询条件的特征数据的大小,对第二终端隐藏符合查询条件的查询结果的大小,对于数据的安全性更高。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请一实施例提供的基于不经意传输协议的数据处理方法的流程示意图之一;

图2是本申请一实施例提供的基于不经意传输协议的数据处理方法的流程示意图之二;

图3是本申请一实施例提供的基于不经意传输协议的数据处理方法的流程示意图之三;

图4是本申请一实施例提供的基于不经意传输协议的数据处理方法的流程示意图之四;

图5是本申请一实施例提供的基于不经意传输协议的数据处理方法的流程示意图之五;

图6是本申请一实施例提供的基于不经意传输协议的数据处理方法的流程示意图之六;

图7是本申请一实施例提供的数据处理装置的结构示意图;

图8是本申请一实施例提供的数据处理系统的硬件结构示意图。

具体实施方式

下面将详细描述本申请的各个方面的特征和示例性实施例,为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及具体实施例,对本申请进行进一步详细描述。应理解,此处所描述的具体实施例仅意在解释本申请,而不是限定本申请。对于本领域技术人员来说,本申请可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本申请的示例来提供对本申请的更好的理解。

需要说明的是,在本文中,诸如第二和第三等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将结合附图对实施例进行详细描述。

为了解决现有技术问题,本申请实施例提供了一种基于不经意传输协议的数据处理方法、装置、系统及介质。下面首先对本申请实施例所提供的基于不经意传输协议的数据处理方法进行介绍。

图1示出了本申请一个实施例提供的基于不经意传输协议的数据处理方法的流程示意图。该方法应用于第一终端和第二终端,该方法包括以下步骤:

S110,第一终端基于自持的查询条件、第二终端基于自持的多个特征数据执行预设两方计算协议,第二终端得到与自持的多个第二标识一一对应的第二策略参数,第一终端得到与多个第二策略参数一一对应的多个第一策略参数;

具有查询需求的用户可以使用第一终端,并通过第一终端执行本申请提供的数据处理方法与第二终端交互,实现条件检索隐私保护集合求交(Conditional Private SetIntersection, CPSI),得到第二终端持有的符合用户查询条件的查询结果。第一终端为查询端,第二终端为服务端。在第一终端和第二终端交互过程中,第一终端不知晓第二终端所持有的第二标识和特征数据,同样第二终端也不知晓第一终端所持有的第一标识、查询条件和查询结果。

查询条件中可以包括一项或多项条件,例如:查询条件可以仅包括年龄大于30岁这一条件,以查询年龄大于30岁的目标客户;查询条件还可以包括年龄大于30岁、性别为男性两个条件,以查询年龄大于30岁的男性目标客户。查询条件可以为用户输入第一终端,也可以为第一终端获取、生成得到的。

第一终端持有第一标识集合{C

第二终端持有第二标识集合{S

预设两方计算协议可以为任一通用的两方计算协议,第一终端和第二终端预先协商选定哪一两方计算协议为预设两方计算协议。第一终端和第二终端基于预设两方计算协议,使得第二终端可以得到与各第二标识对应的第二策略参数,第一终端得到与各第二策略参数对应的第一策略参数。可以理解的是,在第二标识对应的特征数据符合查询条件的情况下,生成的第二策略参数和第一策略参数相等;在第二标识对应的特征数据不符合查询条件的情况下,生成的第二策略参数和第一策略参数对于第一终端而言为均匀随机的随机值。

S120,第一终端基于自持的多个第一标识、第二终端基于自持的多个第二标识执行预设OPRF协议,第一终端得到与各第一标识对应的第一掩码,第二终端得到与第二标识对应的多个第二掩码;

预设OPRF协议为预先设置的两方不经意伪随机函数(Oblivious PseudorandomFunction)协议。第一终端和第二终端一同执行预设OPRF协议,从而可以对第一终端自持的第一标识和第二终端自持的第二标识进行隐私保护集合求交。本领域技术人员可以理解的是,在第一标识和第二标识相同的情况下,第一掩码和第二掩码相同,在第一标识和第二标识不相同的情况下,第一掩码和第二掩码为不相同的随机数。

第一终端自持的n个第一标识可以比m个第二标识多或少。为提高执行预设OPRF协议过程中的隐私性,可以先对第一标识进行加密处理,除了计算得到与第一标识对应的加密数据,还可以通过赋值产生的加密数据。再将加密数据与第二终端求交,使得得到的第一掩码的数量大于n。

S130,第二终端将对应同一第二标识的第二掩码和第二策略参数输入第一函数,分别计算得到多个第三掩码,将多个第三掩码发送至第一终端;

第一函数可以是关于第二掩码和第二策略参数的一次函数,也可以是关于第二掩码和第二策略参数的多次函数,本申请对第一函数的具体方程式不做限定。

S140,第一终端将第一策略参数和接收的第三掩码输入第二函数,计算得到查询掩码,其中,在第一策略参数和第二策略参数相等的情况下,第一函数为第二函数的反函数;

S150,在第四掩码与查询掩码相同的情况下,确认与第四掩码对应的第一标识为与查询条件适配的查询结果,多个第一掩码包括第四掩码。

由于第三掩码Ms'为第一函数f(Ms,μ2)关于第二掩码Ms和第二策略参数μ2的值,而查询掩码Mq为第二函数g(Ms',μ1)关于第三掩码Ms'和第一策略参数μ1的值,那么在第一策略参数μ1等于第二策略参数μ2的情况下,第二掩码Ms和查询掩码Mq相同,即Ms=Mq,进一步可以推导到在任一第一掩码Mc和查询掩码Mq相同的情况下,Ms=Mq=Mc。

例如:

第一函数f(Ms,μ2)=Ms'=Ms*μ2,

第二函数为g(Ms',μ1)=Mq=Ms'/μ1。

那么当Ms为3,μ2为2,μ1为2的情况下,Ms'=3*2=6,Mq=Ms'/μ1=6/2=3。Ms与Mq相同。

示例性地,在第一终端需要查询自持的客户中哪些符合查询条件ρ的场景下,第一终端自持的客户的标识为第一标识A',第二终端自持的客户的标识为第二标识A,第二终端还自持有与第二标识A对应的特征数据B。第一终端和第二终端执行预设两方计算协议,第一终端得到第一策略参数μ1,第二终端得到第二策略参数μ2;第一终端和第二终端执行预设OPRF协议,第一终端得到第一掩码Ms,第二终端得到第二掩码Mc。

请参阅表1,在特征数据B符合查询条件ρ时,第一策略参数μ1和第二策略参数μ2相同,F(Ms)为g(F(Ms))的反函数,F(Ms)=Ms',g(Ms')=Mq=Ms,那么Mq=Ms=Mc,则表示第一标识A'和第二标识A相同,第一标识A'对应的特征数据B符合查询条件ρ,第一终端中与第一标识A'对应的客户符合查询条件ρ。

在特征数据B符合查询条件ρ时,第一策略参数μ1和第二策略参数μ2相同,F(Ms)为g(F(Ms))的反函数,F(Ms)=Ms',g(Ms')=Mq=Ms,那么Mq=Ms≠Mc,则表示第一标识A'和第二标识A不相同,第二标识A对应的特征数据B虽然符合查询条件ρ,但是该第二标识A对应的客户不是第一终端自持的客户。

在特征数据B不符合查询条件ρ时,第一策略参数μ1和第二策略参数μ2不相同,F(Ms)和g(F(Ms))为随机函数,F(Ms)=Ms',g(Ms')=Mq≠Ms,那么Mq≠Ms=Mc,则表示第一标识A'和第二标识A相同,第二标识A对应的特征数据B不符合查询条件ρ。

在特征数据B不符合查询条件ρ时,第一策略参数μ1和第二策略参数μ2不相同,F(Ms)和g(F(Ms))为随机函数,F(Ms)=Ms',g(Ms')=Mq≠Ms,那么Mq≠Ms≠Mc,则表示第二标识A对应的客户不是第一终端自持的客户,第二标识A对应的特征数据B不符合查询条件ρ。

表1

为了方便说明,在表1中列出Mq、Ms、Mc之间的关系,以及μ1和μ2之间的关系。在本申请提供的数据处理方法中,对于第一终端,仅知晓第一策略参数μ1、查询掩码Mq、第一掩码Mc,对于第二终端,仅知晓第二策略参数μ2、第三掩码Ms'、第二掩码Ms,也就是说,对于第一终端和第二终端,均不能确定存在哪些第一策略参数μ1与第二策略参数μ2相等,也不确定存在哪些第一掩码Mc与第二掩码Ms相等,即对于第一终端和第二终端均不知晓第二终端中有多少特征数据符合查询条件、哪些特征数据符合查询条件、第一终端和第二终端哪些第一标识和第二标识相同。所以提供本申请提供的数据处理方法,在保护彼此数据隐私的情况下实现查询到第一终端中符合查询条件的查询结果。

在本申请提供的基于不经意传输协议的数据处理方法中,通过执行预设两方计算协议,使得第一终端和第二终端分别得到与查询条件相关的第一策略参数和第二策略参数,通过执行预设OPRF协议,使得第一终端和第二终端分别得到与第一标识相关的第一掩码和第二标识相关的第二掩码,第二终端通过第一函数、第二策略参数和第二掩码计算第三掩码,从而对于第一终端隐藏第二策略参数和第二掩码,在第一策略参数和第二策略参数相等的情况下,第一终端可以通过第二函数还原出与第三掩码相等的查询掩码,从而可以通过确定与查询掩码相同的第四掩码,确定与第四掩码对应的第一标识为与查询条件适配的查询结果,实现条件检索的隐私保护集合求交。与相关技术中基于DH密钥交换的条件检索隐私保护集合求交,本申请提供的数据处理方法基于预设两方计算协议和预设OPRF协议实现条件检索隐私保护集合求交,求交效率更高,且对第一终端隐藏符合查询条件的特征数据的大小,对第二终端隐藏符合查询条件的查询结果的大小,对于数据的安全性更高。

请参阅图2,在一可选的实施例中,S110包括:

S210,第一终端根据预设加密规则对自持的多个第一标识加密处理,得到多个第一加密标识;

S220,第一终端根据第一加密标识、预设OPRF协议中的伪随机函数和随机秘钥,计算得到与第一加密标识一一对应的第一掩码;

S230,第一终端将预设OPRF协议中的随机秘钥发送至第二终端;

S240,第二终端根据随机秘钥和预设加密规则对自持的多个第二标识加密处理,得到多个第二加密标识;

S250,第二终端根据第二加密标识、预设OPRF协议中的伪随机函数和随机秘钥,计算得到与第二加密标识一一对应的第二掩码。

通过预设加密规则将第一终端自持的第一标识转化为第一加密标识,通过第一加密标识参与后续的预设OPRF协议,有利于提高第一标识的安全性。同样地,通过预设加密规则将第二终端自持的第二标识转化为第二加密标识,通过第二加密标识参与后续的预设OPRF协议,有利于提高第二标识的安全性。

第一终端和第二终端通过同样的预设加密规则对数据进行加密,从而保证同样的第一标识和第二标识,可以得到同样的第一加密标识和第二加密标识。

伪随机函数是使用一个确定性的算法,计算出来的看似随机的数序。第一终端根据第一加密标识rj和随机秘钥kj计算得到第一掩码F(kj,rj),第二终端根据第二加密标识S'

请参阅图3,在一些实施例中,S210包括:

S310,第一终端将n个第一标识分别通过多个预设哈希函数中的一个分配至布谷鸟哈希表的存储桶中,存储第一标识和第一标识分配至存储桶所使用的预设哈希函数的标识值的映射关系为使用映射关系,布谷鸟哈希表包括j个存储桶,n和j均正整数,j>n,多个预设哈希函数与多个标识值一一对应;

S320,第一终端根据预设加密规则、存储桶的存储状态对分配至存储桶内的第一标识加密处理,计算得到j个第一加密标识。

布谷鸟哈希算法可解决哈希冲突,利用较少计算换取了较大空间。第一标识随机选择多个预设哈希函数h中的任意一个计算哈希值,即实现对第一标识分配存储桶。为了方便计算,对每个预设哈希函数设置一标识值,通过该标识值即可区分不同预设哈希函数,例如3个不同的预设哈希函数h

存储桶的存储状态可以为空闲状态和非空闲状态。空闲状态即为存储桶内未存储任意数值,那么对于该空闲状态的存储桶可以根据预设加密规则计算与该空闲状态的存储桶对应的第一加密标识。非空闲状态即为存储桶内存储有第一标识通过预设哈希函数计算的值,那么对于该非空闲状态的存储桶可以根据预设加密规则计算与该存储桶内的第一标识对应的第一加密标识。从而实现将多个第一标识转化为j个第一加密标识,隐藏第一标识并隐藏第一标识的数量。可选地,j=1.27n。

在一些实施例中,S320包括:

在第一存储桶的存储状态为空闲状态的情况下,第一终端在预设常数集合中随机选择一个常数作为与第一存储桶对应的第一加密标识;

在第一存储桶的存储状态为非空闲状态的情况下,第一终端根据使用映射关系,选定与第一存储桶对应的第三标识、以及与第三标识对应的标识值,根据预设加密规则处理第三标识和与其对应的标识值,得到与第一存储桶对应的第一加密标识;

其中,布谷鸟哈希表包括第一存储桶,多个第一标识包括第三标识。

布谷鸟哈希表中设置有j个存储桶,由于j大于n,那么部分存储桶可能为空闲状态,对于该类空闲状态的存储桶,可在预设常数集合中随机选择一个常数对存储桶的第一加密标识进行赋值,从而得到分别与j个存储桶一一对应的j个第一加密标识。

示例性的,第一标识C

在一些实施例中,预设加密规则包括:

拼接区别标识和标识值;

其中,区别标识为第一标识的情况下,标识值为该第一标识分配至存储桶所使用的预设哈希函数的标识值;

区别标识为第二标识的情况下,标识值为多个预设哈希函数的标识值中的任一个。

第一终端和第二终端基于同样的预设加密规则计算得到第一加密标识和第二加密标识,以保证在第一标识和第二标识相同的情况下,与第二标识对应的多个第二加密标识中,有一个与第一标识对应的第一加密标识相同。

示例性的,设置3个不同的预设哈希函数h

在一实施例中,第一终端拥有预设OPRF协议中的j个随机秘钥。第一终端将第一加密标识和随机秘钥代入预设OPRF协议中的伪随机函数中,即可计算得到与第一加密标识一一对应的第一掩码。

第一掩码的计算公式可以表示为:

其中,Mc为所有第一加密标识对应的第一掩码集合,mc

为第h

C

请参阅图4,在一些实施例中,S240包括:

第二终端将自持的多个第二标识分别与多个预设哈希函数的标识值拼接得到第二加密标识;

S250包括:

第二终端根据计算各第二加密标识的第二标识和标识值,确定与各第二加密标识对应的随机秘钥;

根据预设OPRF协议中的伪随机函数、以及第二加密标识和与第二加密标识对应的随机秘钥计算得到第二掩码。

第二加密标识由第二标识和标识值通过预设加密规则加密得到,那么每个第二加密标识均有对应的第二标识和标识值。标识值与预设哈希函数对应,那么根据第二加密标识对应的标识值,可以确定第二加密标识对应的预设哈希函数,通过该预设哈希函数,即可得到与第二加密标识对应的随机秘钥。根据确定的随机秘钥和伪随机函数,即可计算得到与第二加密标识对应的第二掩码。

第二掩码的计算公式可以表示为:

其中,Ms为与所有第二加密标识对应的第二掩码集合,ms

h

示例性的,设置3个不同的预设哈希函数h

第一标识C

第二标识S

请参阅图5,在一些实施例中,S130包括:

S510,第二终端计算对应同一第二标识的第二掩码和第二策略参数的和,得到与各第二策略参数对应的第三掩码;

S140包括:

S520,第一终端计算对应同一第二策略参数的第三掩码和第一策略参数的差,得到查询掩码。

第一函数可以表示为:

ms'

第二函数可以表示为:

mq

第一函数和第二函数仅包括简单的加减法,减小第一函数和第二函数的相关计算量。在第一策略参数和第二策略参数一致的情况下,第一函数和第二函数互为反函数。

基于上述实施例提供的基于不经意传输协议的数据处理方法,相应地,本申请还提供了数据处理装置的具体实现方式。请参见以下实施例。

首先参见图6和图7,本申请实施例提供的数据处理装置包括通信连接的第一终端601和第二终端602,

第一终端601用于基于自持的查询条件、第二终端602用于基于自持的多个特征数据执行预设两方计算协议,第二终端602得到与自持的多个第二标识一一对应的第二策略参数,第一终端601得到与多个第二策略参数一一对应的多个第一策略参数;

第一终端601用于基于自持的多个第一标识、第二终端602用于基于自持的多个第二标识执行预设OPRF协议,第一终端601得到与多个第一标识一一对应的多个第一掩码,第二终端602得到与第二标识对应的多个第二掩码;

第二终端602用于将对应同一第二标识的第二掩码和第二策略参数输入第一函数,分别计算得到多个第三掩码,将多个第三掩码发送至第一终端601;

第一终端601用于将第一策略参数和接收的第三掩码输入第二函数,计算得到查询掩码,其中,在第一策略参数和第二策略参数相等的情况下,第一函数为第二函数的反函数;

在第四掩码与查询掩码相同的情况下,确认与第四掩码对应的第一标识为与查询条件适配的查询结果,多个第一掩码包括第四掩码。

作为本申请的一种实现方式,

第一终端601用于根据预设加密规则和自持的多个第一标识,计算得到第一加密标识;

第一终端601用于根据第一加密标识、预设OPRF协议中的伪随机函数和随机秘钥,计算得到与第一加密标识一一对应的第一掩码;

第一终端601用于将预设OPRF协议中的随机秘钥发送至第二终端602用于;

第二终端602用于根据随机秘钥、自持的多个第二标识和预设加密规则计算得到第二加密标识;

第二终端602用于根据第二加密标识、预设OPRF协议中的伪随机函数和随机秘钥,计算得到与第二加密标识一一对应的第二掩码。

作为本申请的一种实现方式,

第一终端601用于将多个第一标识分别通过多个预设哈希函数中的一个分配至布谷鸟哈希表的存储桶中,存储第一标识和第一标识分配至存储桶所使用的预设哈希函数的标识值的映射关系为使用映射关系,布谷鸟哈希表包括j个存储桶,n和j均正整数,j>n,多个预设哈希函数与多个标识值一一对应;

第一终端601用于根据预设加密规则、存储桶的存储状态对分配至存储桶内的第一标识加密处理,计算得到j个第一加密标识。

作为本申请的一种实现方式,

在第一存储桶的存储状态为空闲状态的情况下,第一终端601用于在预设常数集合中随机选择一个常数作为与第一存储桶对应的第一加密标识;

在第一存储桶的存储状态为非空闲状态的情况下,第一终端601用于根据使用映射关系,选定与第一存储桶对应的第三标识、以及与第三标识对应的标识值,根据预设加密规则处理第三标识和与其对应的标识值,得到与第一存储桶对应的第一加密标识;

其中,布谷鸟哈希表包括第一存储桶,多个第一标识包括第三标识。

作为本申请的一种实现方式,预设加密规则包括:

拼接区别标识和标识值;

其中,区别标识为第一标识的情况下,标识值为该第一标识分配至存储桶所使用的预设哈希函数的标识值;

区别标识为第二标识的情况下,标识值为多个预设哈希函数的标识值中的任一个。

作为本申请的一种实现方式,

第二终端602用于将自持的多个第二标识分别与多个预设哈希函数的标识值拼接得到第二加密标识;

第二终端602用于根据第二加密标识、预设OPRF协议中的伪随机函数和随机秘钥,计算得到与第二加密标识一一对应的第二掩码,包括:

第二终端602用于根据计算各第二加密标识的第二标识和标识值,确定与各第二加密标识的对应的随机秘钥;

根据预设OPRF协议中的伪随机函数、以及第二加密标识和与第二加密标识对应的随机秘钥计算得到第二掩码。

作为本申请的一种实现方式,

第二终端602用于计算对应同一第二标识的第二掩码和第二策略参数的和,得到第三掩码。

第一终端601用于将第一策略参数和接收的第三掩码输入第二函数,计算得到查询掩码包括:

第一终端601用于计算接收的第三掩码和第一策略参数的差,得到查询掩码。

本发明实施例提供的数据处理装置能够实现上述方法实施例中的各个步骤,为避免重复,这里不再赘述。

图8示出了本申请实施例提供的数据处理系统的硬件结构示意图。

在数据处理系统可以包括处理器1001以及存储有计算机程序指令的存储器1002。

具体地,上述处理器1001可以包括中央处理器(CPU),或者特定集成电路(Application Specific Integrated Circuit ,ASIC),或者可以被配置成实施本申请实施例的一个或多个集成电路。

存储器1002可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器1002可包括硬盘驱动器(Hard Disk Drive,HDD)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(Universal Serial Bus,USB)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器1002可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器1002可在综合网关容灾设备的内部或外部。在特定实施例中,存储器1002是非易失性固态存储器。

存储器可包括只读存储器(ROM),随机存取存储器(RAM),磁盘存储介质设备,光存储介质设备,闪存设备,电气、光学或其他物理/有形的存储器存储设备。因此,通常,存储器包括一个或多个编码有包括计算机可执行指令的软件的有形(非暂态)计算机可读存储介质(例如,存储器设备),并且当该软件被执行(例如,由一个或多个处理器)时,其可操作来执行参考根据本公开的一方面的方法所描述的操作。

处理器1001通过读取并执行存储器1002中存储的计算机程序指令,以实现上述实施例中的任意一种基于不经意传输协议的数据处理方法。

在一个示例中,数据处理系统还可包括通信接口1003和总线1010。处理器1001、存储器1002、通信接口1003通过总线1010连接并完成相互间的通信。

通信接口1003,主要用于实现本申请实施例中各模块、装置、单元和/或设备之间的通信。

总线1010包括硬件、软件或两者,将数据处理系统的部件彼此耦接在一起。举例来说而非限制,总线可包括加速图形端口(AGP)或其他图形总线、增强工业标准架构(EISA)总线、前端总线(FSB)、超传输(HT)互连、工业标准架构(ISA)总线、无限带宽互连、低引脚数(LPC)总线、存储器总线、微信道架构(MCA)总线、外围组件互连(PCI)总线、PCI-Express(PCI-X)总线、串行高级技术附件(SATA)总线、视频电子标准协会局部(VLB)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线1010可包括一个或多个总线。尽管本申请实施例描述和示出了特定的总线,但本申请考虑任何合适的总线或互连。

该数据处理系统可以基于上述实施例,从而实现上述的基于不经意传输协议的数据处理方法和装置。

另外,结合上述实施例中的基于不经意传输协议的数据处理方法,本申请实施例可提供一种计算机存储介质来实现。该计算机存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种基于不经意传输协议的数据处理方法,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,上述计算机可读存储介质可包括非暂态计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等,在此并不限定。

另外,本申请实施例还提供了一种计算机程序产品,包括计算机程序指令,计算机程序指令被处理器执行时可实现前述方法实施例的步骤及相应内容。

需要明确的是,本申请并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本申请的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本申请的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。

以上的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本申请的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、ROM、闪存、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。

还需要说明的是,本申请中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本申请不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。

上面参考根据本公开的实施例的方法、装置和计算机程序产品的流程图和/或框图描述了本公开的各方面。应当理解,流程图和/或框图中的每个方框以及流程图和/或框图中各方框的组合可以由计算机程序指令实现。这些计算机程序指令可被提供给通用计算机、专用计算机、或其它可编程数据处理装置的处理器,以产生一种机器,使得经由计算机或其它可编程数据处理装置的处理器执行的这些指令使能对流程图和/或框图的一个或多个方框中指定的功能/动作的实现。这种处理器可以是但不限于是通用处理器、专用处理器、特殊应用处理器或者现场可编程逻辑电路。还可理解,框图和/或流程图中的每个方框以及框图和/或流程图中的方框的组合,也可以由执行指定的功能或动作的专用硬件来实现,或可由专用硬件和计算机指令的组合来实现。

以上,仅为本申请的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。

相关技术
  • 基于多级缓存的数据处理方法及系统、装置和存储介质
  • 基于大数据平台的数据处理方法、装置、设备及介质
  • 存储系统的数据处理方法、装置、系统及可读存储介质
  • 一种虚拟现实数据处理方法、装置、系统及存储介质
  • 基于不经意传输协议的数据传输系统、方法及装置
  • 基于地面测控系统数据传输协议的数据处理方法和装置
技术分类

06120115929465