使用安全多方计算和概率数据结构来保护对信息的访问制造技术

技术编号:36333694 阅读:41 留言:0更新日期:2023-01-14 17:44
本文档描述了用于在内容选择和分发中保护信息的安全性的系统和技术。在一个方面,一种方法包括由MPC系统中的第一计算系统接收包括分布式点函数的数字组件请求,该分布式点函数表示指示客户端设备的用户是否是第一用户组的成员的相应点函数的秘密份额。识别选择值。每个选择值对应于相应数字组件、场境信号集合、以及用于相应第二用户组的相应第二用户组标识符,相应数字组件有资格被分发到相应第二用户组。针对每个选择值并且在安全MPC过程中使用分布式点函数来确定指示第二用户组标识符是否匹配包括用户作为成员的用户组的候选参数。选参数。选参数。

【技术实现步骤摘要】
【国外来华专利技术】使用安全多方计算和概率数据结构来保护对信息的访问


[0001]本说明书涉及密码学和数据安全。

技术介绍

[0002]安全多方计算(MPC)是通过跨多方分发计算来防止对数据的访问使得没有个体方能够访问另一方的数据的一系列密码协议。MPC计算系统使用数据的秘密份额来执行计算。概率数据结构是使用散列函数来表示元素集合的数据结构并且能够被查询以确定元素是否包括在由数据结构表示的集合中。示例概率数据结构包括布隆过滤器和布谷鸟过滤器。

技术实现思路

[0003]通常,本说明书中描述的主题的一个创新方面能够被体现在方法中,这些方法包括:从客户端设备并且由多个多方计算(MPC)系统中的第一计算系统接收包括分布式点函数的数字组件请求,分布式点函数各自表示指示客户端设备的用户是否是由相应第一用户组标识符所识别的相应第一用户组的成员的相应点函数的秘密份额;识别多个选择值,其中,每个选择值对应于相应数字组件、场境信号集合、以及用于相应第二用户组的相应第二用户组标识符,相应数字组件有资格被分发到相应第二用户组;针对每个选择值并且在与多个MPC系统中的一个或多个第二计算系统协作地执行的安全MPC过程中使用分布式点函数,确定指示与选择值相对应的第二用户组标识符是否与包括用户作为成员的用户组匹配的候选参数;基于选择值和候选参数,生成从多个候选数字组件中识别具有最高选择值的给定数字组件的选择结果的第一秘密份额,其中,每个候选数字组件是与该数字组件相对应的选择值的候选参数指示与选择值相对应的第二用户组标识符与包括用户作为成员的用户组匹配的数字组件;以及向客户端设备传输识别给定数字组件的选择结果的第一秘密份额。此方面的其他实施方式包括对应的装置、系统、以及在计算机存储设备上编码的被配置成执行方法的各方面的计算机程序。
[0004]这些和其他实施方式能够各自可选地包括以下特征中的一个或多个。在一些方面中,确定每个选择值的候选参数包括确定每个选择值的候选参数的第一秘密份额。
[0005]生成选择结果的第一秘密份额可以包括:基于每个选择值的量值来生成选择值的次序;基于选择值的次序和用于每个选择值的候选参数,确定每个选择值的累积值的第一秘密份额,其中,用于每个选择值的累积值指示选择值在多个候选选择值的排名次序中的位置;针对每个选择值,基于(i)选择值的候选参数和(ii)指示用于选择值的累积值是否是指定值的相等测试的结果来确定获胜者参数的第一秘密份额;以及针对每个选择值,确定用于选择值的获胜者参数与用于选择值的数字组件信息元素的乘积的和的第一秘密份额作为选择结果的第一秘密份额。
[0006]确定每个选择值的累积值的第一秘密份额能够包括:针对每个个体选择值,确定在最高选择值与个体选择值之间的具有指示与选择值相对应的第二用户组标识符匹配一个或多个第一用户组标识符中的至少一个的候选参数的选择值的数量。该指定值能够是
一。
[0007]在一些方面,分布式点函数基于包括客户端设备的用户作为成员的多个用户组来生成。在一些方面,数字组件请求包括基于用于数字组件插槽的场境信号集合的用户组请求密钥,并且识别多个选择值包括在数据结构中识别具有匹配用户组请求密钥的查找密钥的每个选择值。
[0008]本说明书中描述的主题能够在特定实施例中实现,以便实现以下优点中的一个或多个。使用通过由不同方操作的两个或更多个MPC服务器执行的安全MPC过程以基于用户信息的秘密份额来选择数字组件确保在MPC服务器之间缺乏未授权的串通的情况下用户信息不能被MPC服务器或另一方以明文访问。用户的客户端设备能够生成表示包括用户作为成员的用户组的概率数据结构,例如布谷鸟过滤器,并且能够基于概率数据结构来生成分布式点函数。分布式点函数是加密地表示用户是否是用户组的成员的秘密份额。以这种方式使用概率数据结构和分布式点函数通过防止对用户的组成员资格的访问来保护用户隐私并且减少提供给MPC集群的信息的大小。数据大小的这种减少减少了传输信息所消耗的带宽的量,减少传输信息时的时延,并且减少在电池上运行的设备(例如,移动设备)传输信息所需要的处理功率和相关联的电池电力的量。
[0009]MPC集群能够传输识别MPC集群使用安全MPC过程选定的选择数字组件的结果的秘密份额。通过仅发送选择数字组件的结果的秘密份额,而不是发送所有数字组件或数字组件的大集合的信息,类似地减少了在传输和接收结果时消耗的带宽、时延、处理功率和电池电力。这还通过限制向客户端设备提供信息的数字组件的数目来减少将数字组件的选择值提交给MPC集群的内容平台的机密信息的潜在泄漏。
[0010]以下结合附图描述上述主题的各种特征和优点。根据本文描述的主题和权利要求书,附加特征和优点是显而易见的。
附图说明
[0011]图1是其中MPC集群执行安全MPC过程以选择用于分发给客户端设备的数字组件的环境的框图。
[0012]图2是用于选择用于在客户端设备处显示的数字组件的示例过程的泳道图。
[0013]图3是用于选择用于分发给客户端设备的数字组件的示例过程的泳道图。
[0014]图4是图示用于选择用于分发给客户端设备的数字组件的示例过程的流程图。
[0015]图5是示例计算机系统的框图。
[0016]在各个附图中相同的附图标记和名称指示相同的元件。
具体实施方式
[0017]通常,本文档描述用于在内容选择和分发中保护信息的安全的系统和技术。服务器计算机的MPC集群能够执行安全MPC过程以基于用户信息来选择数字组件,而无需任一MPC服务器能够在缺乏未授权的串通的情况下以明文访问用户信息。能够使用概率数据结构和/或分布式点函数来将用户信息发送到MPC集群,以减少通过网络传输的信息的数据大小并且在传输期间保持信息安全。
[0018]图1是其中MPC集群执行安全MPC过程以选择用于分发给客户端设备110的数字组
件的环境100的框图。示例环境100包括数据通信网络105,诸如局域网(LAN)、广域网(WAN)、互联网、移动网络或其组合。网络105连接客户端设备110、安全MPC集群130、发布者140、web站点142、内容平台,例如供应侧平台(SSP)170和需求侧平台DSP(150)。示例环境100可以包括许多不同的客户端设备110、安全MPC集群130、发布者140、web站点142、DSP 150和SSP 170。
[0019]客户端设备110是能够通过网络105进行通信的电子设备。示例客户端设备110包括个人计算机、移动通信设备,例如智能电话,以及能够通过网络105发送和接收数据的其他设备。客户端设备还能够包括通过麦克风接受音频输入并且通过扬声器输出音频输出的数字助理设备。当数字助理检测到激活麦克风以接受音频输入的“热词”或“热短语”时,数字助理能够被置于收听模式(例如,准备好接受音频输入)。数字助理设备还能够包括照相机和/或显示器以捕获图像并且视觉地呈现信息。数字助理能够在不同形式的硬件设备中实现,包括可穿戴设备(例如,手表或本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种计算机实现的方法,包括:从客户端设备并且由多个多方计算MPC系统中的第一计算系统接收包括分布式点函数的数字组件请求,所述分布式点函数中的每个表示指示所述客户端设备的用户是否是由相应第一用户组标识符所识别的相应第一用户组的成员的相应点函数的秘密份额;识别多个选择值,其中,每个选择值与相应数字组件、场境信号集合以及相应第二用户组的相应第二用户组标识符相对应,相应数字组件有资格被分发到所述相应第二用户组;针对每个选择值并且在与所述多个MPC系统中的一个或多个第二计算系统协作地执行的安全MPC过程中使用所述分布式点函数,来确定候选参数,所述候选参数指示与所述选择值相对应的所述第二用户组标识符是否与包括所述用户作为成员的用户组匹配;基于所述选择值和所述候选参数,生成从多个候选数字组件中识别具有最高选择值的给定数字组件的选择结果的第一秘密份额,其中,每个候选数字组件是与所述数字组件相对应的所述选择值的所述候选参数指示与所述选择值相对应的所述第二用户组标识符与包括所述用户作为成员的用户组匹配的数字组件;以及向所述客户端设备传输识别所述给定数字组件的选择结果的所述第一秘密份额。2.根据权利要求1所述的计算机实现的方法,其中,针对每个选择值确定所述候选参数包括:针对每个选择值确定所述候选参数的第一秘密份额。3.根据权利要求1或2所述的计算机实现的方法,其中,生成所述选择结果的所述第一秘密份额包括:基于每个选择值的量值来生成所述选择值的次序;基于所述选择值的所述次序和用于每个选择值的所述候选参数,确定用于每个选择值的累积值的第一秘密份额,其中,用于每个选择值的所述累积值指示所述选择值在多个候选选择值的排名次序中的位置;针对每个选择值,基于以下各项来确定获胜者参数的第一秘密份额:(i)用于所述选择值的所述候选参数;和(ii)指示用于所述选择值的所述累积值是否是指定值的相等性测试的结果;以及针对每个选择值,确定用于所述选择值的所述获胜者参数与用于所述选择值的数字组件信息元素的乘积之和的第一秘密份额,作为所述选择结果的所述第一秘密份额。4.根据权利要求3所述的计算机实现的方法,其中,确定用于每个选择值的累积值的所述第一秘密份额包括:针对每个个体选择值,确定在最高选择值与所述个体选择值之间的具有指示与所述选择值相对应的所述第二用户组标识符和所述一个或多个第一用户组标识符中的至少一个相匹配的候选参数的选择值的数量。5.根据权利要求3或4所述的计算机实现的方法,其中,所述指定值是一或逻辑真。6.根据任一项前述权利要求所述的计算机实现的方法,其中,所述分布式点函数是基于包括所述客户端设备的所述用户作为成员的多个用户组来生成。7.根据任一项前述权利要求所述的计算机实现的方法,其中:所述数字组件请求包括基于用于数字组件插槽的场境信号集合的用户组请求密钥;以及识别所述多个选择值包括:在数据结构中识别具有匹配所述用户组请求密钥的查找密
钥的每个选择值。8.一种系统,包括:一个或多个处理器;以及存储指令的一个或多个存储设备,所述指令在由所述一个或多个处理器执行时使所述一个或多个处理器执行根据任一项前述权利要求所述的方法。9.一种承载指令的计算机可读存储介质,所述指令在由一个或多个处理器执行时使所述一个或多个处理器执行根据权利要求1至7中任一项所述的方法。10.一种包括指令的计算机程序产品,所述指令在由计算机执行时使所述计算机执行根据权利要求1至7中任一项所述的方法的步骤。11.一种系统,包括:一个或多个处理器;以及存储指令的一个或多个计算机可读介质,所述指令在由所述一个或多个处理器执行时,使所述一个或多个处理器执行操作,所述操作包括:从客户端设备并且由多个多方计算MPC系统中的第一计算系统接收包括分布式点函数的数字组件请求,所述分布式点函数中的每个表示指示所述客户端设备的用户是否是由相应第一用户组标识符所识别的相应第一用户组的成员的相应点函数的秘密份额;识别多个选择值,其中,每个选择值与相应数字组件、场境信号集合以及相应第二用户组的相应第二用户组标识符相对应,相应数字组件有资格被分发到所述相应第二用户组;针对每个选择值并且在与所述多个MPC系统中的一个或多个第二计算系统协作地执行的安全MPC过程中使用所述分布式点函数,来确定候选参数,所述候选参数指示与所述选择值相对应的所述第二用户组标识符是否与包括所述用户作为成员的用户组匹配;基于所述选择值和所述候选参数,生成从多个候选数字组件中识别具有最高选择值的给定数字组件的选择结果的第一秘密份额,其中,每个候选数字组件是与所述数字组件相对应的所述选择值的所述候选参数指示与所述选择值相对应的所述第二用户组标识符与包括所述用户作为成员的用户组匹配的数字组件;以及向所述客户端设备传输识别所述给定数字组件的选择结果的所述第一秘密份额。12.根据权利要求11所述的系统,其中,针对每...

【专利技术属性】
技术研发人员:凯文
申请(专利权)人:谷歌有限责任公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1