用于隐私保护计数的方法和系统的制作方法_3

文档序号:9872703阅读:来源:国知局
密表 并将其按照由电路结构定义的次序传送给评估器。
[0046] P5.通过在源、评估器和CSP 342之间的代理不经意传输,评估器获知用户输入的 加密值,而其自身或CSP无需获知真实值。技术人员将理解,不经意传输是一种传输类型,其 中发送器将可能是许多条信息中的一条传输给接收器,它对于哪条(如果有的话)已经被传 输是保持不经意的。代理不经意传输是其中有=方或更多方参与的不经意传输。特别地,在 运个代理不经意传输中,源提供记录/令牌,评估器接收记录/令牌的加密值,CSP充当代理, 而评估器和CSP都不获知记录。
[0047] P6.评估器评估加密电路并输出所请求的值(370)。
[0048] 在技术上,运个协议除C240外也泄漏由每个用户提供的令牌数。运可W通过一个 简单的协议修改进行纠正,例如,通过用适当的"空"条目"填充"提交的记录,直到达到预先 设定的最大数目为止(312)。为简化起见,在对协议的说明中未设及此"填充"操作。
[0049] 本发明提出的电路的实现方式使用了排序网络。简言之,所述电路将所有的输入 与用于每个令牌的计数器一起放于阵列中。然后,它对阵列进行排序W确保计数器W某种 方式进行置换,使得它们立即紧邻必须要被计数的令牌。通过进行线性经过阵列,电路然后 就能计数令牌出现了多少次,并将运一信息存储在适当的计数器中。
[0050] 在本原理的计数电路的示例性详细描述中,假定为标准的"协作过滤"设置,其中n 个用户对m个可能项目(例如电影)的子集进行评级。对于用户组[n]: = { 1,...,n}和项目组
[m]: = {1,. . .,m},由M C [,小[";]表示已为其生成了评级的用户/项目对,由M=[M]表示总 的评级数。最后,对于(i,j) EM,由ri, j E R表示由用户i对项目j生成的评级。
[0051] 在实际的设定中,n和m都是大的数字,通常介于IO4和IO6之间。另外,所提供的评级 稀疏,即M=0(n+m),运比可能评级总数nXm小得多。运与典型的用户行为是一致的,因为每 个用户可能只评级有限数目的项目(不依赖于"目录"大小m)。
[0化2] 本原理还假定(3^=|{1:(1,^£1}|是所接收的项目_1£[111]评级数,并且电路取集 合M作为输入,并输出计数山}材。]。技术人员将理解,在RAM模型中,运种任务的复杂性是0 = (m+M),因为所有的C端可W通过单次通过M同时计算,W高并行度为代价。与此相反,使 用指示器Si, j = l(i, j)EM,如果i对j进行了评级;则Si, j = 1否则Si, j = 〇的单纯电路(naive circuit)实现方式生成了复杂性非常高、为0(n Xm)的电路。
[0053] 所述单纯实现的低效率起因于在电路设计时无法标识哪些用户评级了项目W及 用户评级了哪些项目,从而降低了利用数据中的固有稀疏的能力。取而代之的是,本原理提 出了一种电路,其在电路内高效率地执行用户和项目之间的匹配,并且能够使用排序网络 在O((m+M)polylog(m+M))个步骤内返刚cj}材m],其中polylog是指多重对数函数。
[0054] 满足图4中的流程图400的、根据本原理的优选实施例的计数器可通过W下步骤来 描述:
[0055] Cl.给定M作为输入,构造(m+M)个元组的阵列S(410)。首先,对于每个je[m],创建 (j,丄,0)形式的元组,其中"空"符号丄是占位符412。其
[0化6] 次,对于每个(i,j) EM,创建(j,1,1)414形式的元组,从而产生了 : 2 W /,夫 /村、
[0057]及=丄丄...丄 1 1 ... 1 (1) ;0 0 Oll 1 ,
[005引在直观上,最初的m个元组将作为"计数器",存储每个令牌的计数数目。其余的M个 元组包含要被计数的"输入"。每个元组中的第=个元素为二进制标志,从而将计数器与输 入分离。
[0059] C2.相应于项目标识符(即在每个元组中的第一元素)W递增次序对元组排序 (420)。如果两个标识符相等,通过比较元组的标志(即每个元组中的第=个元素)来打破平 局。因此,在排序后,每个"计数器"元组后面是具有相同标识符的"输入"元组: '11 1 谢 m '.m、
[0060] 护二丄 1 .., 1 …丄 1 ..,! 口) \0 I 1 Q ;1 1/
[0061] C3.从最右侧的元组开始,从右向左移动,将在每个元组中第二条目的值相加 (430);如果达到了计数器元组(即零标志),就将所计算的值存储在丄条目中,并重新计数。 更正式地,由ai,k表示第k个元组的第1个元素。运种"从右至左"通过相当于W下赋值:
[0062] S2,k^S3,k+S3,k+l X S2,k+1 (3)
[0063] k的范围是从(m+M-1)下至1。
[0064] C4.再次W递增次序排序阵列,运次是相对于标志Si,k(440)。所得到的阵列的前m 个元组包含计数器,它被作为输出释放。
[0065] 本领域的技术人员会认识到,上述计数器可W容易地作为对每一个项目je[m]取 M作为输入和输出(j,cj)的电路实现。步骤1可作为一个输入是元组(i,j)EM、输出是初始 阵列S和使用0(m+M)个口的电路实现。排序操作可W使用例如Batcher排序网络来执行,它 取初始阵列作为输入并输出排序后的阵列,需要〇((m+M)log/(m+M))个口。最后,从右到左 通过可W作为在每个元组上执行(3)的电路实现,也具有0(m+M)个口。至关重要的是,该通 过是数据无关的:(3)通过标志S3,k和S3, W区分"计数器"和"输入",但在阵列的所有元素上 执行相同的操作。特别地,该电路可W作为布尔电路(例如,作为或(OR)、与(AND)、非(NOT) 和异或(XOR) n的图)实现,如前所述,它允许实现方式被加密。例如,加密电路构造可基于 FastGC,运是一个基于化va的开源框架,能使用基本的异或、或和与口实现电路定义。一旦 电路构造后,该框架就处理加密电路的加密、不经意传输和完整评估。
[0066] 根据本原理,上面的计数器连同先前描述的协议的实现提供了一种新颖的、用于 W隐私保护的方式安全计数的方法。此外,运种解决方案通过使用排序网络在明文状态下 产生了具有在所执行的计数器的多重对数因子之内的复杂性的电路。
[0067] 本发明的第二个实施例还描述在图3的流程图300(包括流程图中的添加 A、B和C) 中,用户将其输入的加密值提交给估算器(380),CSP准备首先解密输入354、然后操作数据 的电路(350)。加密电路被发送给估算器(360),它通过(普通,非代理)不经意传输344获得 加密数据的加密值,然后使用它们来评价电路。运一实现具有用户可W提交其输入然后"离 开"协议(即,不要求停留在线)的优势。
[0068] 本发明的第=个实施例还描述在图3的流程图300(包括流程图中的添加 A、B、D和 E)中,用户通过部分同态加密382提交其输入的加密值(380)。技术人员将了解,同态加密是 一种加密形式,其允许对密文执行特定类型的计算并获得解密匹配在明文上执行的操作结 果的加密结果。例如,一个人可能会将两个加密数字相加、然后另一个人可W解密结果,而 他们中的任何一个人都不能发现各个数的值。部分同态加密是对应于在明文上进行一个运 算(加法或乘法)的同态。部分同态加密可W是对应于标量的加法和乘法的同态。
[0069] 在接收到加密值之后,评估器向用户输入添加掩码(385)。本领域的技术人员将理 解,掩码是数据混淆的一种形式,并且可W是如随机数发生器或重排(Shuff ling)-样简 单。评估器随后将掩码的用户输入发送给CSP(390 ),该CSP对它们进行解密(395)。CSP然后 准备加密电路(350),其接收来自评估器的掩码、解掩码输入356,在执行计数之前,对其进 行加密,并将其发送到评估器(360)。通过(普通,非代理)不经意传输344,评估器获得掩码 数据的加密值,然后用它们来评估电路。运一实现具有用户可W提交其输入然后"离开"协 议(即,不要求停留在线)W及不需要在CSP内解密的优势。
[0070] 本发明的第四个实施例也满足图3的流程图300,用户提交(token_id(令牌标识 附),权重)形式的输入,其中权重可W对应于例如关键字在语料库中出现的频率W及其对 用户的重要性。在记录是观看的电影和/或评级的情况下,权重对应于评级。然后,每部电影 的平均评级可W通过适当地修改电路而使用我们的方法来计算。一边计数一部电影对应有 多少个评级,"从右到左"通过(步骤C3)也将一边将所有的评级相加。评级总和与计数的比 会产生平均评级;也可W通过类似的修改来计算其它统计数据(如方差)。
[0071] 应当理解,本原理可W W各种形式的硬件、软件、固件、专用处理器、或其组合来实 现。优选地,本原理被作为硬件和软件的组合实现。此外,软件优选地作为有形地包含在程 序存储设备上的应用程序来实现。该应用程序可W上载到包括任何合适架构的机器并由其 执行。优选地,该机器在具有诸如一个或多个中央处理单元(CPU)、随机存取存储器(RAM)和 输入/输出(I/O)接口等硬件的计算机平台上实现。计算机平台还包括操作系统和微指令代 码。本文描述的各种处理和功能可W是通过操作系统执行的微指令代码的一部分或应用程 序的一部分(或其组合)。此外,各种其它外围设备可W被连接到诸如附加的数据存储设备 和打印设备等计算机平台。
[0072] 图5示出了用来实现本原理的最小计算环境500的框图。计
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1