一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

使用多个聚合服务器防止数据操作的制作方法

2021-10-20 02:57:00 来源:中国专利 TAG:
使用多个聚合服务器防止数据操作
背景技术
::1.客户端设备通过公共网络(诸如互联网)传输数据。这些通信可能被预期接收方之外的实体截获和/或更改。此外,所述实体可以伪造网络身份,并发送看上去是源自这些伪造的网络身份的数据。这种伪造的示例是sybil攻击,其中实体创建网络身份来破坏对等网络的信誉系统。技术实现要素:2.本说明书描述了涉及以防止欺诈和保护用户隐私的方式确定网络测量的技术。3.一般而言,本说明书中描述的主题的一个创新方面可以实施在方法中,该方法包括:由第一聚合服务器从多个客户端设备中的每一个接收展示数据,对于由所述客户端设备记录的数字组件的每个展示,所述展示数据包括第一密钥值对,所述第一密钥值对包括(i)基于所述展示的唯一标识符的第一连接密钥和(ii)包括加密的展示数据的第一值,所述加密的展示数据已经被使用所述第一聚合服务器的第一公钥和使用不同于所述第一聚合服务器的第二聚合服务器的第二公钥加密;由所述第二聚合服务器从所述多个客户端设备的至少一部分中的每一个接收转换数据,对于由所述客户端设备记录的每个转换,所述转换数据包括第二密钥值对,所述第二密钥值对包括(i)基于所述转换的唯一标识符的第二连接密钥和(ii)包括加密的转换数据的第二值,所述加密的转换数据已经被使用所述第一公钥和所述第二公钥加密;由所述第一聚合服务器和所述第二聚合服务器执行多方计算过程以解密加密的展示数据和加密的转换数据,包括:基于所述第一连接密钥和所述第二连接密钥,识别加密的转换数据和对应的加密的展示数据对;以及使用对应于所述第一公钥的第一私钥和对应于所述第二公钥的第二私钥,在多个阶段中解密每个加密的展示数据和转换数据对的展示数据和转换数据,其中每个阶段包括:所述第一聚合服务器或所述第二聚合服务器之一解密每个加密的转换数据和对应的加密的展示数据对的加密的展示数据或加密的转换数据之一,并且将所得数据发送到所述第一聚合服务器或所述第二聚合服务器中的另一个;以及将解密的展示数据和解密的转换数据发送到一个或多个报告系统。该方面的其他实施方式包括被配置为执行在计算机存储设备上编码的方法的方面的相应的装置、系统和计算机程序。有利的是,这提供了将转换数据归因于展示数据的方法,同时保持了用户隐私,并因此提供了更安全的系统/方法。如本文所述,转换数据对应于用户与数字组件的交互,而展示数据对应于向用户提供数字组件。因此,通过将转换归因于相应的展示来协调展示和转换数据对于监控用户与提供给用户的数字组件的交互是有益的。当监控这样的交互时,提供保持用户隐私的安全系统、使得不能基于转换或展示数据来识别或跟踪用户通常是很重要的。所公开的技术提供了在协调展示和转换数据时实现保持用户隐私的技术效果,并且还提供了在协调展示和转换数据时防止欺诈活动的技术效果。具体而言,上述加密技术防止第三方截取敏感的展示或转换数据,这些数据可能会将该方引导回用户。附加地,这些加密技术还防止上述方法中涉及的所有实体学习关于用户的信息(例如,通过匹配特定用户的展示和转换数据),并因此防止基于展示或转换数据跟踪用户。例如,如上所述,展示数据和转换数据已经各自使用第一聚合服务器的第一公钥和第二聚合服务器的第二公钥进行了双重加密。这个特殊的特征用于提高安全性和保护用户隐私,因为加密的展示数据和转换数据需要两个聚合服务器来解密(即,使用它们各自的私钥)。这样,单独一个服务器(或截取方)无法获得明文展示或转换数据,因此提高了安全性。因此,所公开的技术解决了提供能够保持用户隐私的用于监控用户与数字组件的交互的安全系统的技术问题。4.在监控用户与数字组件的交互时以及协调展示和转换数据时,防止欺诈(例如,模拟虚假的用户与数字组件的交互)通常也很重要。使用多个聚合服务器来形成多方计算(multi‑partycomputation,mpc)使每个服务器能够检查另一个服务器的欺诈活动迹象(例如,如果服务器之一被破解或与其他实体共谋),并防止测量中的欺诈。因此,通过所公开的技术能够实现进一步的技术效果,即在协调展示和转换数据时防止欺诈活动,同时保持用户隐私。5.此外,所公开的技术使得用户与数字组件的交互能够更加灵活。具体而言,第一和第二连接密钥(joinkey)基于展示和转换的唯一标识符,并且可以对所使用的特定应用或客户端设备是不可知的。如下所述,转换和展示的标识符可以是用户自身的标识符。这使得跨设备转换能够被监控(即,展示和转换经由不同的设备发生),从而提供使得能够更灵活地监控用户与数字组件的交互的进一步的技术效果。6.这些和其他实施方式可以各自可选地包括以下特征中的一个或多个。在一些方面,展示的唯一标识符包括(i)发生展示的客户端设备的标识符、(ii)发生展示的应用的标识符或者(iii)客户端设备的用户的标识符中的至少一个,并且转换的唯一标识符包括(i)发生转换的客户端设备的标识符、(ii)发生转换的应用的标识符或者(iii)客户端设备的用户的标识符中的至少一个。7.在一些方面,每个展示的第一密钥包括(i)展示的唯一标识符、展示的数字组件的目的地域和相应报告系统的报告域的盲签名组合、以及(ii)该组合的盲签名。8.在一些方面,每个转换的第二密钥包括(i)转换的唯一标识符和数字组件的转换域的盲签名组合、以及(ii)该组合的盲签名。使用如上所述的盲签名技术能够实现验证和检查这种数据是否存在欺诈,同时保护已经被盲化的数据。这有助于进一步提高保持用户隐私和防止欺诈的技术优势。9.在一些方面,每个展示的加密的展示数据包括三次加密展示数据,该三次加密展示数据是通过如下生成的:使用解密的展示数据被发送到的相应报告系统的公钥加密至少展示数据来生成第一加密展示结果,通过使用第一公钥加密第一加密展示结果来生成第二加密展示结果,以及通过使用第二公钥加密第二加密展示结果来生成三次加密展示数据。每个转换的加密的转换数据可以包括三次加密转换数据,该三次加密转换数据是通过如下生成的:通过使用解密的转换数据被发送到的相应报告系统的公钥加密至少转换数据来生成第一加密转换结果,通过使用第二公钥加密第一加密转换结果来生成第二加密转换结果,以及通过使用第一公钥加密第二加密转换结果来生成三次加密转换数据。使用报告系统的公钥加密展示数据和/或转换数据提供了防止聚合服务器访问展示和/或转换数据的明文的进一步技术效果。由于展示和/或转换数据由报告系统的公钥加密,因此只有报告系统能够访问此类数据的明文文本(通过使用报告系统的私钥解密)。因此,系统的安全性可以通过这种方式进一步提高以保护用户隐私。10.在一些方面,由第一聚合服务器和第二聚合服务器执行多方计算过程以解密加密的展示数据和加密的转换数据包括:对于每个第一密钥值对,由所述第一聚合服务器通过使用所述第一聚合服务器的第一加密密钥和交换加密来加密所述第一密钥值对的连接密钥,来生成第一加密连接密钥;对于每个第一密钥值对,从所述第一聚合服务器向所述第二聚合服务器发送包括所述第一密钥值对的加密的连接密钥和所述第一密钥值对的三次加密展示数据的第三密钥值对;对于每个第二密钥值对,由所述第二聚合服务器通过使用所述第二聚合服务器的第二加密密钥和交换加密来加密所述第二密钥值对的连接密钥,生成第二加密连接密钥;以及对于每个第二密钥值对,从所述第二聚合服务器向所述第一聚合服务器发送包括所述第二密钥值对的加密的连接密钥和第一密钥值对的三次加密转换数据的第四密钥值对。11.在一些方面,基于所述第一连接密钥和所述第二连接密钥来识别加密的转换数据和对应的加密的展示数据对包括:由所述第一聚合服务器和所述第二聚合服务器将与第二加密连接密钥匹配的每个第一加密连接密钥识别为加密的转换数据和对应的加密的展示数据对。12.在一些方面,由所述第一聚合服务器和所述第二聚合服务器执行多方计算过程以解密加密的展示数据和加密的转换数据包括:所述第一聚合服务器和所述第二聚合服务器中的每一个:对于三次加密展示数据的每次出现,确定三次加密展示数据的出现是否具有至少阈值数量的不同的加密的连接密钥;以及响应于确定三次加密展示数据的给定出现不具有至少阈值数量的不同的加密的连接密钥,从所述密钥值对中过滤三次加密展示数据的所述出现。这些技术提供了增强数据安全性的技术效果,因为三次加密的展示数据需要阈值数量的不同加密的连接密钥,否则数据将被过滤掉。这有助于改善对用户隐私的保护,因为这使得难以基于展示数据追踪回特定用户(因为剩余的未过滤的展示数据与至少阈值数量的加密的连接密钥相关联),从而改善了与展示数据相关联的匿名性。13.在一些方面,由所述第一聚合服务器和所述第二聚合服务器执行多方计算过程以解密加密的展示数据和加密的转换数据包括:所述第一聚合服务器和所述第二聚合服务器中的每一个:对于三次加密转换数据的每次出现,确定三次加密转换数据的出现是否具有至少阈值数量的不同的加密的连接密钥;以及响应于确定三次加密转换数据的给定出现不具有至少阈值数量的不同的加密的连接密钥,从所述密钥值对中过滤三次加密转换数据的所述出现。这些技术提供了增强数据安全性的技术效果,因为三次加密的转换数据需要阈值数量的不同加密的连接密钥,否则数据将被过滤掉。这有助于改善对用户隐私的保护,因为这使得难以基于转换数据追踪回特定用户(因为剩余的未过滤的转换数据至少与阈值数量的加密的连接密钥相关联),从而改善了与转换数据相关联的匿名性。14.在一些方面,由所述第一聚合服务器和所述第二聚合服务器执行多方计算过程以解密加密的展示数据和加密的转换数据包括:所述第一聚合服务器和所述第二聚合服务器中的每一个:对于每个加密的转换数据和对应的加密的展示数据对,确定所述加密的转换数据和对应的加密的展示数据对是否具有至少阈值数量的不同的加密的连接密钥;以及响应于确定给定的加密的转换数据和对应的加密的展示数据对不具有至少阈值数量的不同的加密的连接密钥,从所述密钥值对中过滤三次加密转换数据的出现。这些技术提供了增强数据安全性的技术效果,因为加密的转换数据和对应的加密的展示数据对需要阈值数量的不同的加密的连接密钥,否则数据将被过滤掉。这有助于改善对用户隐私的保护,因为这使得难以基于加密的数据对追踪回特定用户(因为剩余的未过滤的数据对至少与阈值数量的加密的连接密钥相关联),从而改善了与加密数据对相关联的匿名性。15.本说明书中描述的主题可以在特定实施例中实现,以便实现以下优点中的一个或多个。本文档中描述的密码技术能够实现计算各种类型的数据的测量,同时保护用户隐私并防止对数据的欺诈性操作。例如,该技术能够实现展示、各种类型的转换以及转换的聚合值的测量的计算,同时保护用户隐私并防止转换报告和展示报告中的欺诈。例如,这些技术可以用于计算点进转换、浏览转换、应用下载转换、其中转换发生的设备不同于展示发生的设备的跨设备转换、以及展示发生在应用中而转换发生在浏览器中(反之亦然)的应用到网页转换,同时保护用户隐私并防止欺诈。这些技术还支持各种归因模型,如最后点击归因、数据驱动和多点触摸归因,并具有相同的保护。16.使用多个聚合服务器来形成多方计算(mpc)使每个服务器能够检查另一个服务器的欺诈活动迹象,并确保没有一个服务器可以在任何时候访问明文形式的任何用户数据。如本文所述,使用mpc结合k匿名技术、差分隐私技术、公钥加密和/或加态/交换同态加密技术,即使其中一个服务器被破解或与其他实体共谋,也能保护用户隐私,并防止测量中的欺诈。使用盲签名技术对网络数据进行盲签名,使得可以检查此类数据是否存在欺诈,同时通过不向其他实体传递未盲化的数据来保护用户隐私。包括网络数据的数据元素部分可以由多个实体盲签名和/或加密,以防止来自多个实体的欺诈或共谋。如本文所述,盲数据(例如,展示数据或转换数据)是使用密码技术盲化的数据。盲数据是伪装的,因此实体不能从盲数据中确定明文数据。实体可以对数据进行盲签名(例如,确定展示有效的欺诈检测系统可以对盲展示数据进行签名),以验证该数据的合法性,但是签名实体可以在没有实际看到明文数据的情况下对数据进行签名。因此,欺诈检测服务器可用于检查欺诈,同时用户隐私不受损害,因为欺诈检测服务器或任何其他拦截方不能看到明文展示数据。17.下面相对于附图描述前述主题的各种特征和优点。从本文描述的主题和权利要求中,附加的特征和优点是明显的。附图说明18.图1是其中聚合服务器确定聚合的网络测量的示例环境的框图。19.图2是示出用于确定聚合的网络测量的示例过程流程的框图。20.图3是示出用于确定聚合的数据的示例过程的流程图。21.图4是示出用于确定聚合的数据的另一示例过程的流程图。22.图5是示出用于验证数据的完整性的示例过程的流程图。23.图6是示出用于在保护用户隐私的同时生成时间顺序的事件的示例过程的流程图。24.图7是示出使用数据驱动归因将转换归因于展示的示例过程的流程图。25.图8是示出用于确定聚合转换值的示例过程的流程图。26.图9是示出用于确定聚合的转换数据的示例过程的流程图。27.图10是示例计算机系统的框图。28.不同附图中相同的附图标记和名称表示相同的元件。具体实施方式29.总的来说,本文档描述了用于在确定事件级和聚合的网络测量时防止欺诈的密码技术。例如,本文档中描述的技术可以防止在针对各种类型的转换确定数字组件的事件级和聚合的展示和转换测量时的欺诈。本文档中描述的密码技术还可以保护用户隐私,例如,通过防止所有实体都能够跟踪或聚合从用户的客户端设备接收的用户数据。30.系统概述31.图1是示例环境100的框图,其中聚合服务器180确定聚合的网络测量。示例环境100包括数据通信网络105,诸如局域网(localareanetwork,lan)、广域网(wideareanetwork,wan)、互联网、移动网络或其组合。网络105连接客户端设备110、发布者(publisher)130、网站140、数字组件分发系统150、欺诈检测系统170、转换系统172、聚合服务器180、报告系统190和时间服务器192。示例环境100可以包括许多不同的客户端设备110、发布者130和网站140。在一些实施方式中,环境100还可以包括多个数字组件分发系统150、欺诈检测系统170、转换系统172和报告系统190。虽然在该示例中有两个聚合服务器180‑a和180‑b,但是如下所述,也可以使用两个以上的聚合服务器180‑a和180‑b。32.网站140是与域名相关联并由一个或多个服务器托管的一个或多个资源145。示例网站是以html格式的网页集合,网页可以包含文本、图像、多媒体内容和编程元素,诸如脚本。每个网站140由发布者130维护,发布者130是控制、管理和/或拥有网站140的实体。33.资源145是可以通过网络105提供的任何数据。资源145由与资源145相关联的资源地址(例如,统一资源定位符(universalresourcelocator,url))来标识。资源包括html页面、文字处理文档和可移植文档格式(portabledocumentformat,pdf)文档、图像、视频和提要源(feedsources),仅举几例。资源可以包括内容,诸如单词、短语、图像和声音,内容可以包括嵌入的信息(诸如超链接中的元信息)和/或嵌入的指令(诸如脚本)。34.客户端设备110是能够通过网络105通信的电子设备。示例客户端设备110包括个人计算机、移动通信设备(例如,智能电话)以及能够通过网络105发送和接收数据的其他设备。35.客户端设备110通常包括应用112,诸如网页浏览器和/或本地应用,以便于通过网络105发送和接收数据。本地应用是为特定平台或特定设备开发的应用。发布者130可以开发并向客户端设备110提供例如可用于下载的本地应用。在一些实施方式中,客户端设备110是数字媒体设备,例如,插入电视或其他显示器以向电视流式传输视频的流式传输设备。数字媒体设备还可以包括网页浏览器和/或流式传输视频和/或呈现资源的其他应用。36.网页浏览器可以例如响应于客户端设备110的用户在网页浏览器的地址栏中输入资源145的资源地址或者选择引用该资源地址的链接,向托管发布者130的网站140的网络服务器请求资源145。类似地,本地应用可以从发布者130的远程服务器请求应用内容。37.一些资源145、应用页面或其他应用内容可以包括用于与资源145或应用页面一起呈现的数字组件的数字组件槽。如本文通篇所用,短语“数字组件”是指数字内容或数字信息的离散单元(例如,视频剪辑、音频剪辑、多媒体剪辑、图像、文本或另一内容单元)。数字组件可以作为单个文件或文件集合以电子方式存储在物理存储器设备中,并且数字组件可以采取视频文件、音频文件、多媒体文件、图像文件或文本文件的形式,并且包括广告信息,使得广告是一种类型的数字组件。例如,数字组件可以是旨在补充由应用112呈现的网页或其他资源的内容的内容。更具体地,数字组件可以包括与资源内容相关的数字内容(例如,数字组件可以涉及与网页内容相同的主题,或者涉及相关主题)。因此,由数字组件分发系统150提供的数字组件可以补充并且通常增强网页或应用内容。38.当应用112加载包括一个或多个数字组件槽的资源145(或应用内容)时,应用112可以向数字组件分发系统150请求每个槽的数字组件。数字组件分发系统150又可以向数字组件提供者商160请求数字组件。数字组件提供者160是提供数字组件以便与资源145一起呈现的实体。39.在一些情况下,数字组件分发系统150还可以向一个或多个数字组件伙伴157请求数字组件。数字组件伙伴157是代表数字组件提供者160响应数字组件请求来选择数字组件的实体。40.数字组件分发系统150可以基于各种标准为每个数字组件槽选择数字组件。例如,数字组件分发系统150可以基于与资源145(或应用内容)的相关性、数字组件的性能(例如,用户与数字组件交互的速率)等,从接收自数字组件提供者160和/或数字组件伙伴157的数字组件中选择数字组件。数字组件分发系统150然后可以将所选择的(多个)数字组件提供给客户端设备110,以便与资源145或其他应用内容一起呈现。41.当应用112呈现数字组件时,应用112(其可以是浏览器)可以存储用于呈现数字组件的展示数据(impressiondata)114。用于数字组件的特定呈现的展示数据114可以包括数字组件的着陆页(例如,由数字组件链接到的页面,并且当用户点击数字组件或与数字组件交互时,应用/浏览器向用户呈现该页面)的url或域、数字组件的一个或多个标识符、与展示相关联的事件级数据,指定何时从客户端设备110删除展示数据的截止时间、和/或数字组件的转换报告将被发送到的报告url或域。该数据可以由数字组件提供,例如作为数字组件的元数据或数字组件的锚标签。如下文更详细描述的,应用112可以存储由欺诈检测系统170盲签名的展示数据,而不是存储数字组件的每个展示的原始展示数据;或者,除了存储数字组件的每个展示的原始展示数据之外,应用112还可以存储由欺诈检测系统170盲签名的展示数据。42.应用112还可以响应于检测到的转换来存储转换数据116。数字组件的转换是在数字组件被呈现给用户和/或被用户交互之后特定用户动作的完成。用于转换的转换数据116可以包括指示转换类型的数据,因为对于各种转换测量需求存在多种类型的转换。转换的类型可以指定转换完成后的后续动作。例如,转换可以是向在线购物车添加项目。在该示例中,第一种类型的转换可以是添加项目而不结账(例如,没有完成购买),并且第二种类型的转换可以是添加项目并且结账。如下文更详细描述的,转换的转换数据可以是指示转换类型的一个或多个位的集合,并且应用可以存储由数字组件分发系统150(或者在其中转换实际发生的转换系统)盲签名的转换数据。43.可以实现为一个或多个服务器的欺诈检测系统170可以评估从客户端设备110和/或应用112接收的欺诈信号,以确定展示是有效的还是欺诈的。如下所述,欺诈检测系统170还可以基于从转换系统172接收的欺诈信号来确定转换是有效的还是欺诈的。欺诈信号可以取决于应用,并且可以在不同的实现中有所不同。44.在展示时间,应用112(或客户端设备110上的操作系统)可以收集欺诈检测信号,并将欺诈检测信号提供给欺诈检测系统170。除了欺诈检测信号之外,应用112可以向欺诈检测系统170发送该展示的盲展示数据。盲展示数据是已经使用密码技术盲化(例如,伪装)的展示数据。如果欺诈检测系统170确定该展示是有效的,则欺诈检测系统170可以对盲展示数据进行签名,并将签名的盲展示数据提供给应用112。下面描述用于生成盲展示数据和对盲展示数据进行签名的示例技术。45.欺诈检测系统170可以由数字组件分发系统150操作。在一些实施方式中,欺诈检测系统170由一个或多个第三方操作。例如,应用提供者,例如开发和提供网页浏览器或本地应用的实体,和/或操作数字组件分发系统150的数字组件分发者,可以认证一个或多个第三方来操作欺诈检测系统170,以检测欺诈并对从多个不同开发者的应用(例如,网页浏览器和/或本地应用)接收的盲数据进行盲签名。46.可以实现为一个或多个服务器的转换系统172可以确定转换是否发生。例如,每个数字组件提供者160可以操作转换系统172,转换系统172确定其数字组件是否发生转换。在特定的示例中,转换可以是在网站获取产品。在该示例中,转换系统172和网站可以由产品的分发者(distributor)维护。转换系统172可以从托管网站的网页服务器接收指定产品被获取的数据,并基于该数据确定发生了转换。47.在另一个示例中,转换可以是应用的下载。在该示例中,当应用被下载到客户端设备110时,应用商店可以向应用开发者的转换系统172提供指定应用被下载到客户端设备110的数据。在一些实施方式中,应用商店还操作转换系统172。48.转换系统172还可以与欺诈检测系统170交互,以确定转换是有效的还是欺诈的。例如,转换系统172可以向欺诈检测系统170提供盲转换数据和欺诈检测信号。盲转换数据是已经使用密码技术盲化(例如,伪装)的转换数据。如果欺诈检测系统170确定转换有效和/或用户交互是真实的,则欺诈检测系统172可以对盲转换数据进行签名,并将签名的盲转换数据提供给应用112。下面描述生成盲转换数据和对盲转换数据进行签名的示例技术。49.聚合服务器180可以基于从客户端设备110接收的数据生成聚合的网络测量。聚合服务器180可以基于从客户端设备110接收的数据为各种类型的转换生成展示和/或转换计数。例如,聚合服务器180可以为数字组件确定点进(click‑through)转换、浏览(view‑through)转换、应用下载转换、跨设备转换、应用到网页(applicationtoweb)转换以及网页到应用转换的计数,同时保护用户隐私并防止欺诈。如下所述,聚合服务器180实施mpc协议并使用交换加密技术来在确定和报告网络测量时保护用户隐私并防止欺诈。50.点进转换是用户与数字组件交互并且用户随后完成特定动作的转换。浏览转换是将数字组件呈现给用户并且用户随后完成特定动作的转换。应用下载转换是其中数字组件被呈现给用户并且用户随后下载所呈现的数字组件所引用的(例如,由其推广)的应用的转换。在该示例中,应用的下载是特定动作。跨设备转换是指特定动作发生在与数字组件被呈现的设备不同的设备上的转换。应用到网页转换是其中展示发生(例如,数字组件被呈现)在应用中并且特定事件发生在浏览器中的转换。51.聚合服务器180可以向报告系统190报告展示数据(例如,展示计数)、转换数据(例如,转换计数)。报告系统190可以被实现为实现报告url的报告域,该报告url接收携带展示数据、转换数据和/或相关网络测量的传入请求。报告系统190可以由数字组件分发者或向数字组件分发系统150或数字组件分发者报告数据的另一实体来维护。52.环境100还可以包括时间服务器192。时间服务器192可以用于下面描述的技术的一些中。如下所述,时间服务器192可用于解密使用时间服务器192的公钥加密的一些数据。时间服务器192可以秘密地维护对应于公钥的私钥,并使用私钥来解密数据。53.用于确定网络测量的示例过程流程54.图2是用于确定聚合的网络测量的示例过程流程200的框图。过程流程200被示为由图1的组件中的一些执行,这些组件包括一个或多个客户端设备110、欺诈检测系统170、转换检测系统172、聚合服务器180‑a和180‑b以及报告系统190。55.可以是网页浏览器或本地应用的应用112的每个实例可以具有用于转换测量目的的唯一标识符。换句话说,一个客户端设备上的特定网页浏览器的实例不同于在不同客户端设备上执行的特定网页浏览器的另一个实例,并且具有不同的唯一标识符。应用112的唯一标识符可以随机或伪随机生成,并且应用112可以被配置为从不将唯一标识符泄漏到应用112之外。如下所述,唯一标识符的特征和使用可以根据正测量的转换的类型而变化。在支持跨设备测量的一些实施方式中,由相同用户拥有的所有客户端设备110上的所有(多个)应用112可以具有用于转换测量目的的相同唯一标识符。56.当数字组件由客户端设备110处的应用112呈现时,应用112可以记录展示数据(mi)、目的地(dc_destination)、转换测量截止日期和将接收数字组件的转换报告的报告域(report_domain)。展示数据可以是不透明字节数组(opaquebytearray)的形式,并且可以包括例如数字组件的一个或多个标识符和/或与应用112处的数字组件的展示相关联的事件级数据。57.目的地可以包括统一资源标识符(uri)、数字组件的着陆页(例如,由数字组件链接到的页面,并且当用户点击数字组件或与数字组件交互时应用/浏览器向用户呈现该页面)的url或域。uri的示例包括用于下载应用的到应用商店的链接和用于应用内购买的到应用内位置的深层链接。因此,目的地也可以称为目的地域。转换测量截止日期可以是从客户端设备110删除展示数据的时间(或时间段)。报告域可以是数字组件的转换报告将被发送到的报告url或域,例如,数字组件提供者160希望转换报告被发送到的报告系统190的url或域。58.在一些实施方式中,应用112还可以记录点击数据(clicked),该点击数据指定当应用112呈现数字组件时,用户是否与数字组件交互,例如,选择或点击数字组件。点击数据可以是布尔变量,例如,如果与之交互则值为1,并且如果未交互则值为0。在一些其他实施方式中,(多个)应用112还可以记录指示用户如何与数字组件交互(例如,用户填写了调查或使数字组件静音)的其他类型的元数据。例如,用户可以使数字组件静音,以指示用户不想在将来看到相同(或相似)的数字组件。59.如上所述,应用112还可以与欺诈检测系统170交互,以确定数字组件的展示是有效的还是欺诈的。如果展示有效,应用112还可以请求欺诈检测系统170盲签名与展示相关的信息。60.在一些实施方式中,数字组件可以调用收集欺诈检测信号202并将欺诈检测信号202发送到欺诈检测系统170用于评估的计算机可读代码(例如,脚本)。应用112可以借助对欺诈检测系统170的该调用,例如,向其添加数据,来请求欺诈检测系统170在展示有效的情况下盲签名与该展示相关的信息。61.在一些实施方式中,应用112可以向欺诈检测系统170发送盲展示数据201。盲展示数据201可以包括将由欺诈检测系统170盲签名的两个盲展示数据元素。绑定和/或加密这些数据元素通过防止欺诈检测系统170接收未加密的用户数据和跟踪用户来保护用户隐私。62.第一加密的数据元素是应用的唯一标识符(id)、目的地(dc_destination)和报告域(report_domain)的组合(例如,串联(concatenation)或一些其他组合)的加密的密码哈希(encryptedcrypto‑hashed)版本。第一加密的数据元素可以被定义为cryptohash(id,dc_destination,report_domain)。此示例中的密码哈希(cryptographichash)可以是单向密码哈希函数,用于将元组(id、dc_destination、report_domain)映射到哈希值。63.在一个示例中,密码哈希函数是基于哈希的消息认证码(hash‑basedmessageauthenticationcode,hmac),例如hmacsha256消息码。例如,第一加密的数据元素可以是:hmacsha256(hmacsha256(id,dc_destination),report_domain),使用id作为密钥并嵌套hmac。在另一个示例中,第一加密的数据元素可以是:sha256(id||dc_destination||report_domain)。出于本文档的目的,符号||表示从简单消息合成复杂消息的方法,其中合成是可逆的,即,可以从复杂消息中提取回简单消息。一个示例方法是带有序列化/反序列化(serialization/deserialization)的协议缓冲区。其他示例包括javatm序列化、javascript对象符号(javascriptobjectnotation,json)等。64.第二加密的数据元素是展示数据(mi)和指定数字组件是否被点击(clicked)或以其他方式交互的数据的组合的加密的版本。例如,应用112可以生成复杂消息(mi||clicked),并且使用从例如报告系统190获得(例如,取来(fetch))的公钥来加密该复杂消息。这个复杂消息表示展示数据以及数字组件是否被点击或以其他方式交互。应用112可以使用报告系统190的公钥来加密复杂消息,使得只有报告系统190可以使用对应于公钥(例如,数学链接到公钥)的私钥来解密展示数据和点击数据。报告系统190可以保密地维护私钥,使得其他实体不能访问该信息。该第二加密的数据元素可以被定义为:pubkeyencrypt(mi||clicked,report_domain)。在该表示中,在逗号之后包括“report_domain”指示用于加密复杂消息的公钥是报告系统190的公钥。65.欺诈检测系统170可以接收盲展示数据201和欺诈检测信号202,并评估欺诈检测信号以确定数字组件的展示是有效的还是欺诈的。如果欺诈检测系统170确定展示有效,则欺诈检测系统170可以使用盲签名技术对盲展示数据201进行盲签名。例如,欺诈检测系统170可以为盲展示数据201的第一数据元素生成第一盲签名,并为盲展示数据201的第二加密的数据元素生成第二盲签名。在一些实施方式中,盲签名技术可以是由cloudflaretm支持的隐私传递(privacypass)协议,或者来自chrome的信任令牌,这两者基于互联网工程任务组(internetengineeringtaskforce,ietf)可验证、不经意伪随机函数(obliviouspseudorandomfunction,voprf)草案标准。66.这种voprf盲签名协议是特别有利的,因为暴露给欺诈检测系统170的信息量应该是有限的,并且应用112需要确保签名是有效的,并且除了签名之外不包含任何更多的信息,其中附加的信息可被用于跟踪用户。出于本文档所述技术的目的,voprf协议被认为是确定性的,因为它应用了函数,并且不增加该函数的参量。应用112可以知道签名方案,以允许签名验证和对展示数据的去盲化67.欺诈检测系统170可以向应用112发送盲签名的展示数据203。盲签名的展示数据203包括第一和第二加密的数据元素及其各自的盲签名。68.应用112可以使用第一加密的数据元素和第一加密的数据元素的盲签名来生成密钥。该密钥可以被称为盲签名的连接密钥(joinkey),并且可以被定义为blindlysignedkey(id,dc_destination,report_domain),其反过来表示与从欺诈检测系统170接收的第一加密的数据元素的盲签名组合的cryptohash(id,dc_destination,report_domain)。69.应用112还可以使用从欺诈检测系统170接收的第二加密的数据元素及其盲签名来生成多次加密的展示数据。例如,应用112可以通过加密包括第二加密的数据元素(pubkeyencrypt(mi||clicked,report_domain)和第二加密的数据元素的盲签名的复杂消息来生成二次加密的展示数据(impressiondata2)。让impressiondata1代表一次加密的数据(第二加密的数据元素)。该二次加密的展示数据可以被定义为impressiondata2=(pubkeyencrypt(impressiondata1||blind_signature,si),其中blind_signature表示第二加密的数据元素的盲签名,并且si表示收集展示数据的聚合服务器180‑a的公钥。也就是说,应用112可以通过从一次加密的数据(impressiondata1)和一次加密的展示数据(impressiondata1)的盲签名生成复杂消息,来生成二次加密的展示数据(impressiondata2),并使用聚合服务器180‑a的公钥加密该复杂消息。70.应用112然后可以使用二次加密的展示数据(impressiondata2)和收集转换数据的聚合服务器180‑b的公钥来生成三次加密的展示数据(impressiondata3)。在一些实施方式中,使用概率公钥加密来生成三次加密的展示数据(impressiondata3)。在该示例中,三次加密的展示数据可以被定义为:71.impressiondata3p=(pubkeyencryptprobabilistic(impressiondata2,sc)。72.此时,依次使用来自报告系统190、聚合服务器180‑a和聚合服务器180‑b的公共密钥,展示数据被三次加密。以这种方式,应用112可以以足够隐私保护安全地将三次加密的展示数据(impressiondata3p)发送到聚合服务器180‑a,因为最里面的一次加密的展示数据(pubkeyencrypt(mi||clicked,report_domain))在从应用112到报告系统190的传输期间保护了展示数据mi。使用聚合服务器180‑b的公钥的最外层概率公钥加密防止了报告系统190、聚合服务器180‑a和数字组件分发系统150之间的共谋,其中共谋方可以使用稳定的盲签名的展示连接密钥(blindlysignedkey(id,dc_destination,report_domain))和可重建的一次加密展示数据(pubkeyencrypt(mi||clicked,report_domain))来跨发布者域跟踪用户。如下所述,只有当两个聚合服务器180‑a和180‑b确信(pubkeyencrypt(mi||clicked,report_domain))满足所有适用的阈值时,聚合服务器180‑a和180‑b才协作地解密三次加密的展示数据,以揭露将由每个聚合服务器180‑a和180‑b独立地发送到报告系统190的(pubkeyencrypt(mi||clicked,report_domain))。73.在一些实施方式中,欺诈检测系统170使用两个不同的密钥来对第一加密的数据元素进行盲签名,以生成盲签名的展示连接密钥(blindlysignedkey(id,dc_destination,report_domain))并对第二加密的数据元素(impressiondata1)进行盲签名。这可以防止恶意应用(例如,恶意浏览器)请求展示数据的盲签名,并随后将其声明为盲签名的展示连接密钥的签名,反之亦然。74.对于已经记录了展示数据的每个展示,应用112可以向聚合服务器180‑a上传展示数据,例如,三次加密的展示数据。例如,应用112可以周期性地批量上传多次加密的展示数据(例如,三次加密的展示数据)。在一些实施方式中,应用112针对每个展示上传密钥值对mi205,该密钥值对mi205包括作为密钥的该展示的盲签名的展示连接密钥(blindlysignedkey(id,dc_destination,report_domain))和作为值的三次加密的展示数据(impressiondata3p)。75.这种批量上传相对于在展示发生时针对每个展示上传密钥值对mi有几个优点。例如,批量上传可以对聚合服务器180‑a隐藏实际展示时间,以避免基于时间的攻击。这还可以降低负载,例如聚合服务器180‑a上的每秒查询(queries‑per‑second,qps)负载。这还可以降低客户端设备110的带宽和电池消耗,例如,如果批量上传发生在移动设备连接到wi‑fi并充电时。这还允许针对每个批处理协议实例选择密钥,以进行管理密码密钥,例如,如果客户端设备110和聚合服务器180‑a之间的通信是通过超文本传输协议安全(hypertexttransferprotocolsecure,https)进行的,则相同的加密密钥可以用于整个批次。76.当转换系统172确定对于客户端设备110已经发生了真实转换时,转换系统172可以与欺诈检测系统170交互,以确定转换是有效的还是欺诈的。例如,转换系统172可以从客户端设备110获得欺诈检测信号211,并将欺诈检测信号211发送到欺诈检测系统170。欺诈检测系统170可以评估欺诈检测信号211,以确定转换是有效的还是欺诈的,客户端设备110是否可信(相对于根(rooted)、数据中心中的仿真器或其他方式的破解(compromised)),和/或用户的交互是否真实。77.利用欺诈检测信号,如果转换有效,转换系统172还可以发送第三加密数据元素,以由欺诈检测系统170盲签名。该第三加密数据元素可以包括应用112的唯一标识符(id)和发生转换的转换域(conversion_domain)的组合的加密版本。转换域可以是转换发生的网站。对于该转换,可以使用报告系统190的公钥对数据进行加密,类似于对展示数据的第一加密数据元素进行加密的方式。例如,第三加密数据元素可以被定义为cryptohash(id,conversion_domain,report_domain),并且可以使用与生成第一加密数据元素相同的密码哈希函数进行加密。78.欺诈检测系统170可以使用用于对展示的第一加密数据元素进行签名的相同协议对第三加密数据元素进行盲签名。欺诈检测系统170然后可以向转换系统172发送盲签名的转换数据212。该盲签名的转换数据212可以包括盲签名的第三加密数据元素和第三加密数据元素的盲签名。转换系统172可以使用盲签名的转换数据212生成盲签名的转换密钥。盲签名的转换密钥(blindlysignedkey(id,conversion_domain,report_domain))是第三加密数据元素和从欺诈检测系统170接收的第三加密数据元素的盲签名的组合。这样,如果转换确实是由展示触发的,那么展示时间的dc_destination和转换时间的conversion_domain将是相同的。因此,盲签名的展示密钥将与盲签名的转换密钥相匹配。79.转换系统172还可以使用转换的转换元数据mc和转换系统172的私钥来生成签名的转换数据。转换元数据mc可以包括与转换相关的数据,例如转换类型、标签和量化的转换值等。签名的转换数据可以被定义为privatekeysign(mc,conversion_domain)。生成签名的转换数据可以包括使用基于私钥和公钥的数字签名算法将数字签名附加到转换元数据。转换系统172可以向应用112提供盲签名的转换密钥和签名的转换数据213。80.应用112可以使用签名的转换数据(privatekeysign(mc,conversion_domain))生成多次加密的转换数据。应用112可以通过使用转换的报告系统190的公钥加密签名的转换数据(privatekeysign(mc,conversion_domain))来生成一次加密的转换数据。这个一次加密的转换数据(conversiondata1)可以被定义为pubkeyencrypt(privatekeysign(mc,conversion_domain),report_domain)。在一些实施方式中,转换系统172可以生成多次加密的转换数据,或者至少一次加密的转换数据,而不是应用112。81.结合数字签名对加密的使用保护转换数据mc在从转换系统172通过多个中介(例如,聚合服务器180‑a和180‑b)传输到报告系统190的过程中不被篡改和窃听。为了便于聚合并在稍后阶段实施k匿名,conversiondata1中的加密和数字签名应该在时间窗口/批处理时间内是确定性的,因此相同的明文被映射到相同的密文。82.在一些情况下,转换元数据mc可能没有太多的熵。因此,一次加密的转换数据(conversiondata1)可能具有有限的基数,并且很容易被猜到。在这种情况下,可以通过由转换元数据mc和转换域(conversion_domain)与报告域(report_domain)的密码哈希构成复杂消息并加密该复杂消息,来将伪熵(例如,基于密码密钥的随机性)添加到转换元数据mc。在该示例中,一次加密的转换数据(conversiondata1)可以被定义为:pubkeyencrypt(privatekeysign(mc||hmacsha256(conversion_domain,report_domain),conversion_domain),report_domain),其中hmacsha256(conversion_domain,report_domain)是转换域和报告域的密码哈希,并添加了伪熵。在该示例中,转换域的私钥用于对复杂消息进行签名,并且报告域的公钥用于对签名的复杂消息进行加密。83.应用112可以通过使用收集转换数据的聚合服务器180‑b的公钥加密一次加密的转换数据(conversiondata1),来生成二次加密的转换数据(conversiondata2)。二次加密的转换数据(conversiondata2)可以被定义为pubkeyencrypt(conversiondata1,sc),其中sc表示聚合服务器180‑b的公钥。应用112然后可以通过使用收集展示数据的聚合服务器180‑a的公钥加密二次加密的转换数据(conversiondata2),来生成三次加密的转换数据(conversiondata3)。在一些实施方式中,使用概率公钥加密来生成三次加密的转换数据(conversiondata3)。在该示例中,三次加密的转换数据可以被定义为:pubkeyencryptprobabilistic(conversiondata2,si),其中si表示聚合服务器180‑a的公钥。84.对于已经记录了转换数据的每个转换,应用112可以将转换数据上传到聚合服务器180‑b。例如,应用112可以周期性地批量上传多次加密的转换数据(例如,三次加密的转换数据)。在一些实施方式中,应用112针对每个转换上传密钥值对mc215,该密钥值对mc215包括作为密钥的转换的盲签名的转换密钥(blindlysignedkey(id,conversion_domain,report_domain))和作为值的三次加密的转换数据(conversiondata3或conversiondata3p)。该第三、最外层加密可以防止聚合服务器180‑b使用稳定的盲签名的转换密钥和二次加密的转换数据(conversiondata2)来跨多个域的报告转换跟踪用户。85.用于解密展示和转换数据的示例mpc过程86.聚合服务器180‑a和180‑b可以使用多步mpc过程来聚合然后解密满足阈值和/或其他隐私保护标准的所接收数据的子集,并且向报告系统190发送报告。该过程在图3中示出,图3是示出用于确定聚合的转换数据的示例过程300的流程图。过程300可以例如由多个聚合服务器(例如图1和2的聚合服务器180‑a和180‑b)实现。87.聚合服务器a和b可以使用具有交换性质的交换加密技术“h”。换句话说,给定任意消息m和两个不同的加密密钥k1和k2,交换加密技术具有以下性质:h(h(m,k1),k2)=h(h(m,k2),k1)。换句话说,交换加密涉及使用不同加密密钥的双重加密,其中加密的顺序(哪个密钥首先用于加密数据)无关紧要,因为无论哪种方式都可以获得相同的结果。88.每个聚合服务器180‑a和180‑b可以分别选择一对秘密加密密钥keyi(其代表一对密钥)和keyc(其代表一对密钥)。如下所述,密钥keyii之一可用于加密连接密钥(joinkey),并且密钥keyi2之一可用于加密/解密展示数据。类似地,密钥keyc1之一可用于加密连接密钥,并且密钥keyc2之一可用于加密/解密转换数据。聚合服务器180‑a和180‑b可以基于指定的时间段、每批次展示或转换数据,或者基于其他适当的标准来周期性地选择新的密钥对。89.聚合服务器180‑a接收展示数据(302)。例如,聚合服务器180‑a可以从多个客户端设备接收一批展示数据。如上所述,每个客户端设备可以周期性地向聚合服务器180‑a发送批量的展示数据。90.展示数据可以以每个展示的密钥值对的形式发送。每个密钥值对可以包括作为密钥的展示的盲签名的展示密钥(blindlysignedkey(id,dc_destination,report_domain))和作为值的三次加密的展示数据(impressiondata3p)。91.聚合服务器180‑b接收转换数据(304)。例如,聚合服务器180‑b可以从多个客户端设备接收一批转换数据。如上所述,每个客户端设备可以周期性地向聚合服务器180‑b发送批量的转换数据。92.转换数据可以以每个转换的密钥值对的形式发送。每个密钥值对可以包括作为密钥的转换的盲签名的转换密钥(blindlysignedkey(id,conversion_domain,report_domain))和作为值的三次加密的转换数据(conversiondata3p)。93.对于每个展示,聚合服务器180‑a使用交换加密以及其选择的加密密钥keyi1来加密的连接密钥(306)。在该示例中,展示的连接密钥是展示的盲签名的连接展示密钥(blindlysignedkey(id,dc_destination,report_domain))。聚合服务器180‑a然后可以针对每个展示向聚合服务器180‑b提供加密的连接密钥和三次加密的展示数据。换句话说,聚合服务器180‑a可以针对每个展示发送一对:{h(blindlysignedkey,keyi1),impressiondata3p}。这些对可以以随机或伪随机顺序发送。94.对于每个转换,聚合服务器180‑b使用交换加密以及其选择的加密密钥keyc1来加密连接密钥(308)。在该示例中,转换的连接密钥是转换的盲签名的转换密钥(blindlysignedkey(id、conversion_domain、report_domain))。聚合服务器180‑b然后可以针对每个转换向聚合服务器180‑a提供加密的连接密钥和三次加密的转换数据。换句话说,聚合服务器180‑b可以针对每个展示发送一对:{h(blindlysignedkey,keyc),conversiondata3p}。这些对可以以随机或伪随机顺序发送。95.对于每个接收的加密的连接密钥和三次加密的转换数据对{h(blindlysignedkey,keyc1),conversiondata3p},聚合服务器180‑a重新加密连接密钥和转换数据(310)。在一些实施方式中,聚合服务器180‑a可以使用其私钥(对应于公钥si的私钥)解密三次加密的转换数据(conversiondata3p),以恢复二次加密的转换数据(conversiondata2)。聚合服务器180‑a然后可以使用其选择的加密密钥keyi2来重新加密二次加密的转换数据(conversiondata2)。对于这个加密,可以使用确定性对称加密技术。该加密的转换数据可以被称为conversiondata3’,因为转换数据已经被依次使用来自三个域(报告系统190、聚合服务器180‑b和聚合服务器180‑a)的密钥被确定性地加密了三次。96.聚合服务器180‑a还可以使用其选择的加密密钥keyi2在已经交换加密的盲签名的展示密钥(h(blindlysignedkey,keyc))之上应用交换加密。这一步的结果是(blindlysignedkey)和conversiondata3’。聚合服务器180‑a针对每个接收的加密的连接密钥和加密的三次加密的转换数据对,向聚合服务器180‑b发送这两个结果。97.对于每一个接收的加密的连接密钥和加密的三次加密的展示数据对{h(blindlysignedkey,keyi1),impressiondata3p},聚合服务器180‑b重新加密连接密钥和展示数据(312)。在一些实施方式中,聚合服务器180‑b可以使用其私钥(对应于公钥sc的私钥)解密三次加密的展示数据(impressiondata3p),以恢复二次加密的展示数据(impressiondata2)。聚合服务器180‑b然后可以使用其选择的加密密钥keyc2来重新加密二次加密的展示数据(impressiondata2)。对于这个加密,可以使用确定性对称加密技术。该加密的转换数据可以被称为impressiondata3’,因为展示数据已经依次使用来自三个域(报告系统190、聚合服务器180‑a和聚合服务器180‑b)的密钥被确定性地加密了三次。98.聚合服务器180‑b还可以使用其选择的加密密钥keyc2在已经交换加密的盲签名的展示密钥(h(blindlysignedkey,keyi1))之上应用交换加密。这一步的结果是(blindlysignedkey)和impressiondata3’。聚合服务器180‑b针对每个接收的加密的连接密钥和三次加密的展示数据对,向聚合服务器180‑a发送这两个结果。99.聚合服务器180‑a连接并过滤加密的展示和转换数据(314)。在从聚合服务器180‑b接收结果之后,对于每个展示,聚合服务器180‑a具有结果对{(blindlysignedkey)和conversiondata3’}。聚合服务器180‑a对于每个转换也具有结果对{(blindlysignedkey)和conversiondata3’}。100.由于盲签名密钥已经被聚合服务器180‑a和180‑b每个使用交换加密加密了一次,所以与加密的盲签名的密钥((blindlysignedkey)相匹配的展示的加密的盲签名的密钥((blindlysignedkey))指示作为这些密钥的从数字组件的展示产生的转换是基于应用112的唯一标识符、报告系统190的域和数字组件的着陆页的域的。因此,聚合服务器180‑a可以使用加密的盲签名的密钥((blindlysignedkey))连接这些对。将相应的展示数据与相应的转换数据连接(join)可以包括将展示数据链接到转换数据。例如,聚合服务器180‑a可以生成使用加密的盲签名的密钥((blindlysignedkey)作为行密钥的表或其他数据结构。每行可以包括行密钥和连接的展示数据和转换数据。以下表1显示了示例表。在其他示例中,连接展示数据和转换数据可以包括为每个连接的展示数据和转换数据生成元组,该元组包括行密钥和连接的展示数据和转换数据。101.102.表1103.聚合服务器180‑a然后可以过滤数据以满足k匿名标准。聚合服务器180‑a可以确定与每个三次加密的展示数据相关联的唯一加密的盲签名的密钥((blindlysignedkey))的数量。每条三次加密的展示数据也可以称为展示数据的出现(occurrence)。因为展示数据不是特定于应用的,而是基于所呈现的数字组件的,所以多个展示可以具有相同的三次加密的展示数据,但是具有不同的加密的盲签名的密钥((blindlysignedkey))。104.聚合服务器180‑a可以将与每个唯一展示数据相关联的不同的加密的盲签名的密钥((blindlysignedkey))的数量与k匿名阈值进行比较。如果该数量低于阈值,聚合服务器180‑a可以从表或其他数据结构中过滤展示数据的出现。105.聚合服务器180‑a还可以确定与每个三次加密的转换数据相关联的唯一的加密的盲签名的密钥((blindlysignedkey))的数量。每条三次加密的转换数据也可以称为转换数据的出现。由于转换数据不是特定于应用的,而是基于与转换事件相关的数据的,因此多个转换可以具有相同的三次加密的转换数据,但是具有不同的加密的盲签名的密钥((blindlysignedkey))。106.聚合服务器180‑a可以将与每个唯一转换数据相关联的不同的加密的盲签名的密钥((blindlysignedkey))的数量与k匿名阈值进行比较。如果该数量低于阈值,则聚合服务器180‑a可以从表或其他数据结构中过滤转换数据的出现。107.聚合服务器180‑a还可以确定与三次加密的展示数据和转换数据的每个组合相关联的唯一的加密的盲签名的密钥((blindlysignedkey))的数量。换句话说,这是具有相同的三次加密的展示数据和相同的三次加密的转换数据的唯一盲签名密钥的数量的计数。三次加密的展示数据和相同的三次加密的转换数据的每个组合也可以被称为展示交叉转换数据的出现。108.聚合服务器180‑a可以将展示交叉转换数据的每次出现的次数与k匿名阈值进行比较。如果该数量低于阈值,则聚合服务器180‑a可以从表或其他数据结构中过滤展示交叉转换数据的出现。109.聚合服务器180‑a然后可以使用过滤后的剩余数据来生成新的表或数据结构,如下表2所示。表2的每一行对应于impressiondata3’的出现和相应的conversiondata3’的出现的组合。该表记录了每个组合的出现次数,例如,与每个组合相关联的唯一的加密的盲签名的密钥((blindlysignedkey)的数量。该计数等于由数字组件的展示产生的具有相同展示数据的数字组件的转换的数量。110.展示交叉转换数据的出现三次加密的展示数据三次加密的转换数据…impressiondata3’conversiondata3’………111.表2112.聚合服务器180‑b连接并过滤加密的展示和转换数据(316)。在从聚合服务器180‑a接收结果之后,对于每个展示,聚合服务器180‑b具有结果对{(blindlysignedkey)和impressiondata3’}。对于每个转换,聚合服务器180‑a还具有结果对{(blindlysignedkey)和conversiondata3’}。因此,聚合服务器180‑b具有与聚合服务器180‑a相同的数据。113.聚合服务器180‑b可以使用相同的数据执行与聚合服务器180‑a相同的计算和过滤,以达到相同的结果。也就是说,聚合服务器180‑b可以生成与聚合服务器180‑a生成的表2相匹配的表。114.在一些实施方式中,聚合服务器180‑a和180‑b两者都可以执行一些可选操作来确保差分隐私,例如使用子采样。差分隐私是一种通过描述数据集中的组的模式而不提供数据集中的单个数据来共享关于数据集的数据的技术。为此,每个聚合服务器可以首先以一定的概率β对数据(例如,表1中的行)进行采样。然后,聚合服务器仅对采样的数据应用上述k匿名一般化。也就是说,聚合服务器可以确定每种类型的出现的唯一加密的盲签名的密钥((blindlysignedkey))的数量,并从采样的数据中过滤不满足k匿名阈值的数据。115.对于子采样,为了确保两个聚合服务器复制完全相同的采样并执行相同的差分隐私技术,聚合服务器可以使用基于伪随机性的采样。采样的随机化可以从由两个服务器协作确定(例如,使用diffie‑hellman密钥交换)的公共种子确定。交换的结果是相同伪随机发生器(例如,基于高级加密标准(advancedencryptionstandard,aes)算法的发生器)的种子。这确保了在两个聚合服务器中对相同的子集进行采样,并且将计算得到相同的结果,因为一旦伪随机性相同,则该过程的其余部分是确定的。116.在连接和过滤之后,聚合服务器180‑a和180‑b两者具有相同的数据,例如,每个包括{count,impressiondata3’,conversiondata3’}的元组的表或列表。计数是具有由impressiondata3’表示的相同展示数据的展示的转换的数量。117.对于每个元组,聚合服务器180‑a解密三次加密的转换数据(conversiondata3’)(318)。聚合服务器180‑a可以使用其选择的加密密钥keyi2解密三次加密的转换数据(conversiondata3’),以获得{count,impressiondata3’,conversiondata2’}。聚合服务器180‑a可以将这些所得元组发送到聚合服务器180‑b。118.类似地,对于每个元组,聚合服务器180‑b解密三次加密的展示数据(impressiondata3’)(320)。聚合服务器180‑b可以使用其选择的加密密钥keyc2解密三次加密的展示数据(impressiondata3’),以获得{count、impressiondata2、conversiondata3’}。聚合服务器180‑b可以将这些所得元组发送到聚合服务器180‑a。119.聚合服务器180‑a解密每个接收的所得元组{count,impressiondata2,conversiondata3’}的二次加密的展示数据(impressiondata2)和三次加密的转换数据(conversiondata3’)(322)。聚合服务器180‑a可以使用对应于聚合服务器180‑a的公钥si的私钥来解密二次加密的展示数据(impressiondata2)和三次加密的转换数据(conversiondata3’)。对于每个接收的元组,该解密得到元组{count、impressiondata1、conversiondata2}。聚合服务器180‑a可以将这些元组{count、impressiondata1、conversiondata2}中的每一个发送到聚合服务器180‑b。120.聚合服务器180‑b解密每个接收的所得元组{count,impressiondata3’,conversiondata2}的三次加密的展示数据(impressiondata3’)和二次加密的转换数据(conversiondata2)(324)。聚合服务器180‑b可以使用对应于聚合服务器180‑b的公钥sc的私钥来解密三次加密的展示数据(impressiondata3’)和二次加密的转换数据(conversiondata2)。对于每个接收的元组,该解密得到元组{count、impressiondata2、conversiondata1}。聚合服务器180‑b可以将这些元组{count、impressiondata2、conversiondata1}中的每一个发送到聚合服务器180‑a。121.聚合服务器180‑a解密每个接收的元组{count、impressiondata2、conversiondata1}的展示数据(326)。聚合服务器180‑a使用对应于聚合服务器180‑a的公钥si的私钥来解密每个接收的元组{count,impressiondata2,conversiondata1}的展示数据。对于每个接收的元组,该解密得到元组{count、impressiondata1、conversiondata1}。122.在该元组中,展示数据(impressiondata1)是pubkeyencrypt(mi||clicked,report_domain)||blind_signature),因此包括使用报告系统190的公钥和在展示时间生成的第二数据元素的盲签名加密的展示数据。转换数据(conversiondata1)是pubkeyencrypt(privatekeysign(mc,conversion_domain),report_domain),因此包括使用报告系统190的公钥加密的转换数据。123.聚合服务器180‑b解密每个接收的元组{count,impressiondata1,conversiondata2}的转换数据(328)。聚合服务器180‑b使用对应于聚合服务器180‑b的公钥sc的私钥解密每个接收的元组{count,impressiondata1,conversiondata2}的转换数据。对于每个接收的元组,该解密得到元组{count、impressiondata1,conversiondata1}。124.像由聚合服务器180‑a解密的元组一样,在该元组中,展示数据(impressiondata1)是pubkeyencrypt(mi||clicked,report_domain)||blind_signature),因此包括使用报告系统190的公钥和在展示时间生成的第二数据元素的盲签名加密的展示数据。转换数据(conversiondata1)是pubkeyencrypt(privatekeysign(mc,conversion_domain),report_domain),因此包括使用报告系统190的公钥加密的转换数据。125.对于每个解密的元组,聚合服务器180‑a向元组的报告系统190发送转换报告(330)。类似地,对于每个解密的元组,聚合服务器180‑b向元组的报告系统190发送转换报告(332)。转换报告可以包括解密的元组或解密的元组中包括的数据。126.聚合服务器180‑a和180‑b可以以各种方式获得每个元组以及每个转换的报告系统的url。在一个示例中,发生展示的应用112可以以明文形式(例如,在展示时间并且作为密钥值对mi的一部分)将report_domain(例如,报告系统190的url)发送到聚合服务器180‑a。类似地,发生转换的应用112可以将report_domain以明文形式(例如,在转换时间作为密钥值对mc的一部分)发送到聚合服务器180‑b。127.在另一个示例中,浏览器开发者(或应用开发者)可以公布允许的报告系统190及其report_domain的白名单。浏览器(或应用)可以周期性地下载白名单并应用白名单来发送转换报告。128.在另一个示例中,浏览器或应用可以使用(t,n)阈值加密技术来加密report_domain,并将加密的report_domain发送到聚合服务器180‑a和180‑b。在该示例中,当至少t个浏览器或应用已经报告了相同的report_domain时,聚合服务器180‑a和180‑b只能恢复明文report_domain。在另一个示例中,例如,如果report_domain不具有足够的熵,则report_domain的派生(derivation)可以用于(t,n)阈值加密技术。例如,派生可以是report_domain和数字组件的着陆页的密码哈希的组合。129.回到图2,对于每个一次加密的转换数据(impressiondata1)和pubkeyencrypt(privatekeysign(mc,conversion_domain),report_domain)对,报告系统190从聚合服务器180‑a和180‑b接收两个转换报告127和128。对于展示和转换的每个组合,每个转换报告127和128可以包括过滤后的数据中的组合的数量,例如从上述表格中导出。对于相同批次的展示和转换数据,从聚合服务器180‑a接收的转换报告127中的数据应该与从聚合服务器180‑b接收的转换报告128中的数据相匹配。报告系统190可以比较这两个数,以识别作为恶意行为的潜在迹象的差异。130.报告系统190还可以调用欺诈检测系统170来验证展示数据上的盲签名。报告系统190然后可以使用其自己的私钥解密加密的转换数据。报告系统190然后可以使用转换系统的公钥来验证转换数据上的数字签名。如果两个验证都成功,报告系统190可以确信转换测量数据是有效的。131.转换报告的接收者应该能够信任转换报告中的数据。上述比较从两个聚合服务器180‑a和180‑b接收的转换报告并验证盲签名的技术可以防止转换报告管道中的大多数欺诈。但是,这两个聚合服务器可能会共谋来修改转换计数。为了防止这种共谋,转换服务器172可以在将转换数据提供给客户端设备110之前对转换数据进行加密和数字签名。例如,转换系统172可以使用保留签名的非对称加同态加密(asymmetricadditivehomomorphicencryption)或另一种结构保留签名技术来加密转换数据和对其进行数字签名。这样,如上所述,数字签名在被三次加密(或其他多次加密)后被保留。这种加密防止了聚合服务器180‑a和180‑b访问转换数据,并且使得接收者能够验证数字签名从而验证转换数据没有被修改。当转换值被包括在转换数据中时,如下所述,每个转换值可以以类似的方式被加密和签名。132.上述转换报告技术可以支持各种类型的转换事件。为了支持相同的浏览器(或相同的应用)点进转换和浏览转换,浏览器或应用可以选择浏览器级(或应用级)随机生成的专用于转换测量目的的唯一标识符(id)。浏览器(或应用)可以在展示和转换时间两者计算blindlysignedkey(id,conversion_domain,report_domain)。为了区分点进转换和浏览转换,在展示时间,浏览器或应用可以与展示数据mi一起使用布尔变量clicked来对用户是否与数字组件交互进行编码。在其他实施方式中,浏览器或应用可以对用户与数字组件的交互类型(例如,静音数字组件、填写调查问卷等)进行编码。133.为了支持应用和网页浏览器之间的同设备转换,浏览器和应用两者可以使用设备级随机生成的(例如,由设备的操作系统)唯一标识符(id)来报告展示和转换。此外,如果转换发生在应用中而不是网页浏览器中,则conversion_domain可以是应用的名称或标识应用的应用开发者的证书。134.为了支持跨设备转换(例如,展示发生在用户的一个设备上,并且转换发生在用户的不同设备上),唯一标识符(id)可以是关于用户的信息或基于这样的信息。例如,唯一标识符(id)可以是用户登录凭证、用户提供的电话号码或电子邮件地址、或用户提供的其他个人可识别信息的密码哈希。例如,用户可以登录移动应用。相同用户可以使用移动应用的登录凭证登录发布者的网站。相同的登录凭证可以用作网站和移动应用之间发生的跨设备转换的用户标识符(id)。135.图4是示出用于确定聚合的转换数据的另一示例过程400的流程图。过程400可以例如由多个聚合服务器(例如,图1和2的聚合服务器180‑a和180‑b)实现。136.第一聚合服务器180‑a从多个客户端设备接收展示数据(402)。对于由客户端设备记录的数字组件的每个展示,展示数据可以包括第一密钥值对。展示的第一密钥值对可以包括第一密钥,该第一密钥基于展示发生的客户端设备或客户端设备上的应用的唯一标识符。例如,展示的第一密钥可以是盲签名的展示密钥,并且可以被定义为从客户端设备接收的blindlysignedkey(id,dc_destination,report_domain),如上所述。137.展示的第一密钥值对还可以包括第一值,该第一值包括已经使用第一聚合服务器的第一公钥和使用不同于第一聚合服务器的第二聚合服务器的第二公钥加密的加密展示数据。例如,第一值可以是从客户端设备接收的三次加密的展示数据(impressiondata3)。138.第二聚合服务器从多个客户端设备的至少一部分接收转换数据(404)。对于由客户端设备记录的每个转换,转换数据可以包括第二密钥值对,该第二密钥值对包括第二密钥,该第二密钥基于发生转换的客户端设备或客户端设备上的应用的第二唯一标识符。例如,转换的第二密钥可以是从客户端设备接收的盲签名的转换密钥(blindlysignedkey(id,conversion_domain,report_domain))。139.转换的第二密钥值对可以包括第二值,该第二值包括已经使用第一加密密钥和第二加密密钥加密的加密的转换数据。例如,第二值可以是从客户端设备接收的三次加密的转换数据(conversiondata3)。140.聚合服务器180‑a和180‑b执行mpc过程以连接加密的展示和转换数据,过滤连接结果,然后解密满足隐私保护标准的加密的展示数据和加密的转换数据的子集(406)。该mpc过程可以包括基于第一密钥和第二密钥来识别加密的转换数据和相应的加密的展示数据对。然后,可以使用对应于第一公钥的第一私钥和对应于第二公钥的第二私钥,在多个阶段解密每个加密的展示数据和转换数据对的展示数据和转换数据。每个阶段可以包括第一聚合服务器或第二聚合服务器之一解密每个加密的转换数据和相应的加密的展示数据对的加密的展示数据或加密的转换数据之一,并将所得数据发送到第一聚合服务器或第二聚合服务器中的另一个。该mpc过程可以与图3所示和上述的过程300相同或相似。141.解密的展示数据的每个部分和解密的转换数据的每个部分被发送到相应的报告系统(408)。例如,如上所述,每个聚合服务器180‑a和180‑b可以向相应的报告系统发送转换报告。142.验证每个聚合服务器的数据的完整性143.如上所述,在过程300的开始,聚合服务器180‑a接收每个展示的以密钥值对形式的展示数据(mi)。每个密钥值对可以包括展示的盲签名的展示密钥(blindlysignedkey(id,dc_destination,report_domain))和三次加密的展示数据(impressiondata3p)。三次加密的展示数据(impressiondata3p)的最后加密是使用聚合服务器180‑b的公钥的概率性加密。因此,除了聚合服务器180‑b之外,没有其他方可以解密三次加密的展示数据(impressiondata3p),该展示数据可以是对于除了聚合服务器180‑b之外的所有服务器的密码随机数。144.此外,除了应用112之外,没有其他方知道用户标识符(id)的明文值。共谋方能恢复的唯一信息是在盲签名的展示密钥(blindlysignedkey(id,dc_destination,report_domain))后面的匿名用户具有未知特性的多个展示。共谋方不能推断应用112/客户端设备110/用户已经看到的展示的总数,因为整个数字组件呈现被目的地(dc_destination)和报告域(report_domain)分割。145.如果知道向用户显示的与盲签名的展示密钥(blindlysignedkey(id,dc_destination,report_domain))相关联的展示的数量是令人担忧的,则应用112可以重复发送展示的展示数据(mi)随机或伪随机次数。给定在生成三次加密的展示数据(impressiondata3p)时应用的概率加密,聚合服务器180‑a和任何共谋方不能对接收的展示数据进行去重复。然而,聚合服务器180‑b可以在解密三次加密的展示数据(impressiondata3p)以恢复二次加密的展示数据(impressiondata2)之后对展示进行去重复。146.如上参考过程300所述,在过程300的步骤310的开始,聚合服务器180‑a从聚合服务器180‑b接收对{h(blindlysignedkey,keyc),conversiondata3p},其不能连接到聚合服务器180‑a在步骤302具有的内容,即,密钥值对{(blindlysignedkey(id,dc_destination,report_domain)),impressiondata3p}。此外,盲签名密钥h(blindlysignedkey,keyc)可能仅对mpc过程的每次执行有效,并且聚合服务器180‑b可以在每次执行之后丢弃所选择的密钥keyc1和keyc2。聚合服务器180‑a可以使用其公钥解密三次加密的转换数据(conversiondata3p),以恢复二次加密的转换数据(conversiondata2)。此时,聚合服务器180‑a具有h(blindlysignedkey,keyc)和二次加密的转换数据(conversiondata2),这两者被加密,并且只有聚合服务器180‑b具有解密密钥。由于聚合服务器180‑b是诚实的,聚合服务器180‑a不会做任何危及用户隐私的事情。147.在过程300的步骤314的开始,对于每个展示,聚合服务器180‑a从聚合服务器180‑b接收二次加密的盲签名的连接密钥((blindlysignedkey))和三次加密的展示数据(impressiondata3’)。该三次加密的展示数据(impressiondata3’)最后使用聚合服务器180‑b拥有的密钥被加密,该密钥仅对mpc过程的当前执行有效。在不与聚合服务器180‑b共谋的情况下,聚合服务器180‑a所能做的最坏的事情是发送假的数据元组{count’,impressiondata3”,conversiondata2”},而不是实际的数据元组{count,impressiondata3’,conversiondata2’}。148.图5是示出用于验证数据的完整性的示例过程500的流程图。具体地,过程500可以由聚合服务器180‑a或180‑b中的一个来执行,以在本文档中描述的mpc过程(例如,图3和4的mpc过程或下面描述的mpc过程)期间,验证从另一个聚合服务器180‑a或180‑b接收的数据的完整性。为了便于描述,从聚合服务器180‑b验证从聚合服务器180‑a接收的数据的完整性的角度来描述过程500。然而,聚合服务器180‑a可以执行类似的过程来验证从聚合服务器180‑b接收的数据的完整性。149.该过程500可用于防止各种类型的欺诈,包括聚合服务器180‑a或180‑b之一与欺诈检测系统172、转换系统172和报告系统190共谋的情况。150.聚合服务器180‑b验证从聚合服务器180‑a接收的数据(502)。聚合服务器180‑b可以执行步骤502,作为过程300的步骤324的一部分。如上参考图3的步骤318所述,聚合服务器180‑a可以向聚合服务器180‑b发送{count,impressiondata3’,conversiondata2’}形式的元组。聚合服务器180‑b可以加密每个元组中的二次加密的转换数据conversiondata2’,以生成每个元组的三次加密的转换数据conversiondata3。这是可能的,因为三次加密的转换数据conversiondata3的定义,conversiondata3是使用聚合服务器180‑a的公钥的三次加密的转换数据conversiondata3的确定性公钥加密结果。151.聚合服务器180‑b可以将每个接收的元组{count,impressiondata3’,conversiondata2’}转换为{count,impressiondata3’,conversiondata3’},并在应用阈值化和子采样之后比较聚合服务器180‑b在图3的步骤316中生成的所得数据集以实现k匿名和差分隐私。例如,聚合服务器180‑b可以将元组{count,impressiondata3’,conversiondata3’}与表2的行进行比较。如果两个数据集匹配,则聚合服务器180‑b可以确信聚合服务器180‑a一直诚实地执行密码协议,直到图3的步骤322。否则,聚合服务器180‑b可提早结束mpc过程和/或报告聚合服务器180‑a的可能故障。152.如上文参考过程300所述,在步骤322的开始,聚合服务器180‑a从聚合服务器180‑b接收{count,impressiondata2,conversiondata3’}形式的元组。聚合服务器180‑a可以在应用阈值化和子采样之后获得在过程300的步骤314中生成的其自己的数据集。此数据集包括{count,impressiondata3’,conversiondata3’}形式的行(例如,表2中的)或元组。聚合服务器180‑a可以使用这些数据来推断两个数据集的三次加密的展示数据(impressiondata3’)和二次加密的展示数据(impressiondata2)之间的映射。153.类似于聚合服务器180‑b,聚合服务器180‑a可以验证三次加密的展示数据(impressiondata3’)确实是使用聚合服务器180‑b的公钥的二次加密的展示数据(impressiondata2)的确定性公钥加密结果。然而,由于公钥加密算法的设计,给定三次加密的展示数据(impressiondata3’)和二次加密的展示数据(impressiondata2)之间的映射,聚合服务器180‑a不能恢复聚合服务器180‑b的私钥。聚合服务器180‑a能做的最糟糕的事情是向聚合服务器180‑b发送假的数据元组{count’,impressiondata1’,conversiondata2’},而不是实际的数据元组{count,impressiondata1,conversiondata2}。154.聚合服务器180‑b验证从聚合服务器180‑a接收的数据的完整性(504)。聚合服务器180‑b可以使用确定性公钥算法和聚合服务器180‑a的公钥将加密的展示数据(impressiondata1)重新加密为二次加密的展示数据(impressiondata2)。聚合服务器180‑b可以使用确定性公钥算法和聚合服务器180‑a的公钥将二次加密的转换数据(conversiondata2)重新加密为二次加密的展示数据(conversiondata3)。聚合服务器180‑b可以然后使用加密结果将过程300的步骤322中从聚合服务器180‑a接收的每个元组{count、impressiondata1、conversiondata2}变换成元组{count、impressiondata1、conversiondata2}形式的元组。155.聚合服务器180‑b然后可以将该所得元组数据集与在过程300的步骤320中聚合服务器180‑b生成并发送到聚合服务器180‑a的数据集进行比较。如果两个数据集匹配,则聚合服务器180‑b可以确信聚合服务器180‑a迄今为止在过程300的mpc过程中一直诚实地执行密码协议。否则,聚合服务器180‑b可提早结束mpc过程和/或报告聚合服务器180‑a的可能故障。156.如上参考过程300所述,在过程300的步骤326的开始,聚合服务器180‑a从聚合服务器180‑b接收元组{count、impressiondata2、conversiondata1}。如果在过程300的步骤326中聚合服务器180‑a没有诚实地将二次加密的展示数据(impressiondata2)解密为一次加密的展示数据(impressiondata1),并且向报告系统190发送正确的元组{count、impressiondata1,conversiondata1},则报告系统190将发现从聚合服务器180‑a和180‑b接收的两个转换报告之间的差异。报告系统190可以向聚合服务器180‑a和180‑b中的至少一个报告该差异。在聚合服务器180‑a没有与报告系统190共谋的情况下,聚合服务器180‑a可以向可以理解泄漏的信息的报告系统190泄漏的最重要的信息包括每个元组的计数和转换数据的直方图。然而,该数据的用户隐私由在过程300的步骤314和316中应用的阈值化要求和差分隐私子采样来保护。157.生成展示和转换的序列158.图6是示出用于在保护用户隐私的同时生成事件的时间序列的示例过程600的流程图。过程600可用于生成展示和/或转换的时间序列,可用于支持不同的转换归因模型,诸如最后点击归因或基于规则的归因。过程600可以由聚合服务器180‑a和180‑b执行。159.类似于过程300,每个聚合服务器180‑a和180‑b可以分别选择一对秘密加密密钥keyi(其代表一对密钥)和keyc(其代表一对密钥)。聚合服务器180‑a还可以选择秘密密钥keyi,skew。类似地,聚合服务器180‑b可以选择秘密密钥keyc,skew。聚合服务器180‑a和180‑b可以基于指定的时间段、每批次的展示或转换数据、或者基于其他适当的标准来周期性地选择新的密钥。160.聚合服务器180‑a接收展示数据(602)。在该示例中,每个展示的展示数据可以包括盲签名的展示密钥(blindlysignedkey(id,dc_destination,report_domain))、三次加密的展示数据(impressiondata3p)和展示时间数据(impressiontime2)。盲签名的展示密钥和三次加密的展示数据可以与过程300的盲签名的展示密钥和三次加密的展示数据相同或相似。展示时间数据表示展示发生的时间,并且可以被加密。161.可以使用聚合服务器180‑a的公钥si和聚合服务器180‑b的公钥对展示时间数据(impressiontime2)进行二次加密。例如,展示时间数据(impressiontime2)可以被定义为pubkeyencrypt(t(tm tdevice),si),sc)。在该示例中,tm是展示或点击时间(例如,呈现数字组件或与之交互的时间),并且tdevice是其上安装了呈现数字组件的应用112的客户端设备110的时钟偏移(clockskew)。在该示例中,使用加密技术t和聚合服务器180‑a的公钥si对两个时间的和进行加密。加密技术t可以是同态、加态、概率公钥加密技术(例如,派利尔密码系统(pailliercryptosystem))。然后,使用聚合服务器180‑b的公钥sc对该加密值进行加密。该第二加密可以是确定性或概率性加密技术。162.聚合服务器180‑b接收转换数据(604)。在该示例中,转换数据可以包括盲签名的转换密钥(blindlysignedkey(id,conversion_domain,report_domain))、三次加密的转换数据(conversiondata3p)和转换时间数据(conversiontime2)。盲签名的转换密钥和三次加密的转换数据可以与过程300的盲签名的转换密钥和三次加密的转换数据相同或相似。转换时间数据表示转换发生的时间,并且可以被加密。163.转换时间数据(conversiontime2)可以使用聚合服务器180‑a的公钥si和聚合服务器180‑b的公钥sc进行二次加密。例如,转换时间数据(conversiontime2)可以被表示为pubkeyencrypt(t(zn tdevice),sc),si)。在该示例中,zn是转换时间(例如,转换完成的时间),并且tdevice是其上安装了呈现数字组件的应用112的客户端设备110的时钟偏移。在该示例中,使用加密技术t和聚合服务器180‑b的公钥sc对两个时间的和进行加密。加密技术t可以是同态、加态、概率公钥加密技术(例如,派利尔密码系统)。然后,使用聚合服务器180‑a的公钥si加密该加密值。该第二加密可以是确定性或概率性加密技术。164.对于每个展示,聚合服务器180‑a使用交换加密和其选择的加密密钥keyi1来加密连接密钥(606)。类似于过程300,展示的连接密钥可以是展示的盲签名的连接展示密钥(blindlysignedkey(id,dc_destination,report_domain))。然后,聚合服务器180‑a可以针对每个展示向聚合服务器180‑b提供加密的连接密钥、三次加密的展示数据(impressiondata3p)和二次加密的展示时间数据(impressiontime2)。换句话说,聚合服务器180‑a可以针对每个展示发送元组:{h(blindlysignedkey,keyi1),impressiondata3p,impressiontime2}。所述元组可以以随机或伪随机顺序发送。165.对于每个转换,聚合服务器180‑b使用交换加密和其选择的加密密钥keyc1来加密连接密钥(608)。类似于过程300,转换的连接密钥是转换的盲签名的转换密钥(blindlysignedkey(id,conversion_domain,report_domain))。聚合服务器180‑b然后可以针对每个转换向聚合服务器180‑a提供加密的连接密钥、三次加密的转换数据(conversiondata3p)和二次加密的转换时间数据(conversiontime2)。换句话说,聚合服务器180‑b可以针对每个展示发送元组:{h(blindlysignedkey,keyc),conversiondata3p,conversiontime2}。所述元组可以以随机或伪随机顺序发送。166.对于每个接收的元组,聚合服务器180‑a解密转换时间数据(610)。聚合服务器180‑a可以使用对应于聚合服务器180‑a的公钥si的私钥解密转换时间数据(conversiontime2)。该解密恢复(t(zn tdevice),sc)。167.聚合服务器180‑a还可以使用其选择的加密密钥keyi2在已经交换加密的盲签名的展示密钥(h(blindlysignedkey,keyc))之上应用交换加密。其结果是加密的盲签名的密钥(blindlysignedkey)。168.聚合服务器180‑a可以计算时间偏移值(time_skewi)。例如,聚合服务器180‑a可以计算秘密密钥keyi,skew和加密的盲签名的转换密钥的hmac(例如,hmacsha256(keyi,skew,(blindlysignedkey))作为时间偏移值(time_skewi)。169.聚合服务器180‑a然后可以为每个接收的元组生成一次加密的转换时间数据(conversiontime1)。在一些实施方式中,使用同态、加态、概率公钥加密技术t生成一次加密的转换时间数据(conversiontime1),例如,t(zn tdevice time_skewi,sc)。在该示例中,使用聚合服务器180‑b的公钥sc对转换时间(zn)、客户端设备的时钟偏移(tdevice)和时间偏移值(time_skewi)的和进行加密。170.如上参考过程300的步骤310所述,聚合服务器180‑a还可以解密和重新加密三次加密的转换数据(conversiondata3p)。也就是说,聚合服务器180‑a可以使用其私钥(对应于公钥si的私钥)解密三次加密的转换数据(conversiondata3p),以恢复二次加密的转换数据(conversiondata2)。聚合服务器180‑a然后可以使用其选择的加密密钥keyc2来重新加密二次加密的转换数据(conversiondata2),以获得三次加密的转换数据(conversiondata3p)。171.聚合服务器180‑a可以为每个唯一的三次加密的转换数据(conversiondata3p)确定与三次加密的转换数据(conversiondata3p)相关联的唯一的加密的盲签名的转换密钥(blindlysignedkey)的数量。如果与转换的三次加密的转换数据(conversiondata3p)相关联的唯一加密的盲签名的转换密钥(blindlysignedkey)的数量满足阈值(例如,基于阈值化要求),则聚合服务器180‑a向聚合服务器180‑b发送元组{(blindlysignedkey),conversiondata3p,conversiontime1}。172.对于每个接收的元组,聚合服务器180‑b解密展示时间数据(612)。聚合服务器180‑b可以使用对应于聚合服务器180‑b的公钥sc的私钥解密展示时间数据(impressiontime2)。该解密恢复(t(tm tdevice),si)173.聚合服务器180‑b还可以使用其选择的加密密钥keyc2在已经交换加密的盲签名的转换密钥h(blindlysignedkey,keyi)之上应用交换加密。其结果是加密的盲签名的密钥(blindlysignedkey)。174.聚合服务器180‑b可以计算时间偏移值(time_skewc)。例如,聚合服务器180‑b可以计算秘密密钥keyc,skew和加密的盲签名的转换密钥的hmac,例如hmacsha256(keyc,skew,(blindlysignedkey),作为时间偏移值(time_skewc)。175.聚合服务器180‑b然后可以为每个接收的元组生成一次加密的展示时间数据(impressiondata1)。在一些实施方式中,使用同态、加态、概率公钥加密技术t生成一次加密的转换时间数据(impressiondata1),例如,t(tm tdevice time_skewc,si)。在该示例中,使用聚合服务器180‑a的公钥si对展示时间(tm)、客户端设备的时钟偏移(tdevice)和时间偏移值(time_skewc)的和进行加密。176.如上参考过程300的步骤312所述,聚合服务器180‑b还可以解密和重新加密三次加密的展示数据(impressiondata3p)。也就是说,聚合服务器180‑b可以使用其私钥(对应于公钥sc的私钥)解密三次加密的转换数据(impressiondata3p),以恢复二次加密的展示数据(impressiondata2)。聚合服务器180‑a然后可以使用其选择的加密密钥keyc2重新加密二次加密的展示数据(impressiondata2),以获得三次加密的展示数据(impressiondata3p)。177.聚合服务器180‑b可以为每个唯一的三次加密的展示数据(impressiondata3p)确定与三次加密的展示数据(impressiondata3p)相关联的唯一的加密的盲签名的转换密钥(blindlysignedkey)的数量。如果与展示的三次加密的展示数据(impressiondata3p)相关联的唯一加密的盲签名的转换密钥((blindlysignedkey)的数量满足阈值(例如,基于差分隐私阈值化要求),则聚合服务器180‑b向聚合服务器180‑a发送元组{(blindlysignedkey、keyi),impressiondata3,impressiontime1}。178.聚合服务器180‑a连接并过滤从聚合服务器180‑b接收的加密的展示和转换数据(614)。聚合服务器180‑a可以将从聚合服务器180‑a接收的元组{(blindlysignedkey、keyi),impressiondata3、impressiontime1}与聚合服务器180‑a在步骤610中使用加密的盲签名的密钥((blindlysignedkey))生成的元组{(blindlysignedkey),conversiondata3p,conversiontime1}连接。对于每个加密的盲签名的密钥((blindlysignedkey)),聚合服务器180‑a形成包括{(blindlysignedkey),impressiondata3p,impressiontime1,conversiondata3p、conversiontime1}的元组或表中的行。179.由于应用112可以报告相同数字组件的多个展示,所以对于每个加密的盲签名的密钥(blindlysignedkey),可存在展示数据(impressiondata3)的多个出现。对于具有相同的加密的盲签名的密钥(blindlysignedkey)和相同的三次加密的转换数据(conversiondata3p)的每个三次加密的展示数据(impressiondata3p),聚合服务器180‑a可以使用其公钥si对一次加密的展示时间数据(impressiontime1)进行解密,以获得未加密的时间数据(impressiontime0),未加密的时间数据包括t’m=tm tdevice time_skewc。聚合服务器180‑a不知道time_skewc的值。如果使用相同设备归因,则设备的时钟偏移(tdevice)是固定的,但是对聚合服务器180‑a是未知的。如果使用跨设备归因,则由于数据可来自多个设备,与相同的加密的盲签名的密钥(blindlysignedkey)相关联的不同展示的设备的时钟偏移(tdevice)可以不同,并且对聚合服务器180‑a是未知的。在任一情况下,聚合服务器180‑a都不能从t’m推断出展示/点击时间(tm),因此不能容易地启动基于时间的攻击来跟踪用户。180.聚合服务器180‑a可以将展示时间(impressiontime0)确定为tm tdevice time_skewc time_skewi。对于连接的展示数据(impressiondata3p)和转换数据(conversiondata3p)的每个组合,聚合服务器180‑a可以确定唯一的加密的盲签名的密钥((blindlysignedkey))的数量是否满足或超过阈值(例如,k匿名隐私阈值)。如果是,则聚合服务器180‑a可以针对该组合向聚合服务器180‑b发送元组{((blindlysignedkey)),impressiondata3p,impressiontime0)。在一些实施方式中,聚合服务器180‑a还可以使用用于差分隐私的子采样技术,如上文参考过程300所述。181.聚合服务器180‑b还连接并过滤从聚合服务器180‑a接收的加密的展示和转换数据(616)。聚合服务器180‑b可以将从聚合服务器180‑a接收的元组{(blindlysignedkey),conversiondata3、conversiontime1}与聚合服务器180‑b在步骤612中使用加密的盲签名的密钥((blindlysignedkey))生成的元组{(blindlysignedkey,keyi),impressiondata3,impressiontime1}连接。对于每个加密的盲签名的密钥((blindlysignedkey)),聚合服务器180‑a形成包括{(blindlysignedkey),impressiondata3p,impressiontime1,conversiondata3p、conversiontime1}的元组或表中的行。182.对于具有相同的加密的盲签名的密钥(blindlysignedkey)和相同的三次加密的转换数据(conversiondata3p)的每个三次加密的展示数据(impressiondata3p),聚合服务器180‑b还可以使用其公钥sc解密一次加密的转换时间数据(conversiontime1),以获得未加密的时间数据(conversiontime0),未加密的时间数据包括t’m=tm tdevice time_skewi。183.聚合服务器180‑b可以将转换时间(conversiontime0)确定为zn tdevice time_skewi time_skewc。对于连接的展示数据(impressiondata3p)和转换数据(conversiondata3p)的每个组合,聚合服务器180‑b可以确定唯一的加密的盲签名的密钥((blindlysignedkey))的数量是否满足或超过阈值(例如,k匿名隐私阈值)。如果是,则聚合服务器180‑b可以针对该组合向聚合服务器180‑a发送元组{((blindlysignedkey)),conversiondata3p,conversiontime0}。在一些实施方式中,聚合服务器180‑b还可以使用用于差分隐私的子采样技术,如上面参考过程300所述。184.此时,聚合服务器180‑a和180‑b两者可以使用加密的盲签名的密钥(blindlysignedkey)来连接展示和转换数据以及时间两者,以对于每个唯一的加密的盲签名的密钥(blindlysignedkey),形成以下形式的记录:{((blindlysignedkey)),impressiondata3p,impressiontime0、conversiondata3p、conversiontime0}。185.聚合服务器180‑a生成时间顺序的展示和转换(618)。对于每个唯一的加密的盲签名的密钥((blindlysignedkey)),聚合服务器180‑a可以比较每条展示数据(impressiondata3p)的展示时间(impressiontime0)和每条转换数据(conversiondata3p)的转换时间(conversiontime0),以使用时间生成加密的盲签名的密钥((blindlysignedkey))的展示和转换的时间序列。186.聚合服务器180‑b生成时间顺序的展示和转换(620)。对于每个唯一的加密的盲签名的密钥((blindlysignedkey)),聚合服务器180‑a可以比较每条展示数据(impressiondata3p)的展示时间(impressiontime0)和每条转换数据(conversiondata3p)的转换时间(conversiontime0),以使用时间生成加密的盲签名的密钥((blindlysignedkey))的展示和转换的时间序列。187.由于每个唯一的加密的盲签名的密钥((blindlysignedkey))对应于特定的数字组件和特定的唯一标识符(id),所以加密的盲签名的密钥((blindlysignedkey))的时间序列包括对于该唯一标识符(例如,在对应于该唯一标识符的用户的一个或多个设备处)数字组件的一个或多个展示以及由特定数字组件的呈现所得的一个或多个转换。例如,如果特定数字组件被多次呈现给相同用户,则该序列可以包括多个展示,并且该序列可以包括不同类型的多个转换(例如,一个用于将物品添加到虚拟购物车,一个用于完成物品的获取)。188.时间顺序使得聚合服务器180‑a和180‑b能够独立地执行归因过程以将转换归因于展示。例如,在最后点击归因模型中,聚合服务器180‑a和180‑b可以识别序列中转换之前包括点击的最后展示,并将该转换归因于最后展示。聚合服务器180‑a和180‑b还可以例如通过将其结果与另一个聚合服务器的结果进行比较来验证彼此的结果。尽管在图6中未示出,聚合服务器180‑a和180‑b可以一起工作来解密展示和转换数据,如上面参考图3的步骤318‑332所述。聚合服务器180‑a和180‑b可以在转换报告中连同其他数据一起报告归因。189.可以采取一些附加的步骤来防止或检测基于时间间隔的攻击。对于与相同的加密的盲签名的密钥((blindlysignedkey))相关联的多次展示/点击,聚合服务器180‑a将具有t’m,其中m是整数。假设t’m按时间顺序从最久远到最新近的排序,聚合服务器180‑a可以计算两个相邻展示之间的时间间隔λ’,例如,λ’m=t’m 1–t’m。假设tdevice足够小,λ’m≈λm=t’m 1–t’m。如果数字组件分发系统向用户提供一系列展示,则数字组件分发系统可以记录两个相邻展示之间的时间间隔,即λm。基于以上所述,如果数字组件分发系统与聚合服务器180‑a共谋,则数字组件分发系统可能能够基于时间间隔来识别单个用户。如果数字组件分发系统与聚合服务器180‑b共谋,则数字组件分发系统也可以启动类似的基于时间间隔的攻击。190.阻止基于时间间隔的攻击的一种选择是使用具有以下性质的单调递增函数。给定两个任意数字a和b,两个值a‑b和,(a)‑,(b)不相关。也就是说,知道a‑b无助于预测(a)‑,(b),反之亦然。191.利用该函数,可以将展示时间数据(impressiontime2)定义为pubkeyencrypt(t(,(tm tdevice),si),sc)。在该示例中,λ’m=,(tm 1 tdevice skew)‑,(tm tdevice skew)。这样,λ’m≠λm,并且基于时间间隔的攻击就被破坏了。192.阻止基于时间间隔的攻击的另一选项是修改过程600以包括专用时间服务器192。在过程600的开始,聚合服务器180‑a接收形式为{blindlysignedkey(id,dc_destination,report_domain),impressiondata3p,t(tm tdevice,stime)}的展示数据。在该示例中,使用时间服务器192的公钥stime对展示/点击时间tm和设备的时钟偏移tdevice之和进行加密。例如,应用112或客户端设备110可以使用公钥stime加密时间数据。类似地,聚合服务器180‑b接收以{blindlysignedkey(id,conversion_domain,report_domain),conversiondata3p,t(zn tdevice,stime)}的形式的转换数据。在该示例中,使用时间服务器192的公钥stime对转换时间zn和设备的时钟偏移tdevice之和进行加密。例如,应用112或客户端设备110可以使用公钥stime加密时间数据。193.在修改的步骤606中,聚合服务器180‑a可以改为向聚合服务器180‑b发送形式为{h(blindlysignedkey,si),impressiondata3p、t(tm tdevice,stime)}的元组。也就是说,聚合服务器180‑a可以用秘密密钥si加密盲签名的密钥,并且原样传递展示和时间数据。194.类似地,在修改的步骤608中,聚合服务器180‑b可以改为向聚合服务器180‑a发送形式为{h(blindlysignedkey,sc),impressiondata3p,t(zn tdevice,stime)}的元组。也就是说,聚合服务器180‑b可以用秘密密钥sc加密盲签名的密钥,并且原样传递展示和时间数据。195.在修改的步骤610中,聚合服务器180‑a可以生成并向聚合服务器180‑b发送形式为{h(blindlysignedkey),conversiondata3,t(zn tdevice time_skewi,stime)}的元组。在该示例中,应用于转换数据(conversiondata3p)的概率加密被确定性加密替换,以创建(conversiondata3)。此外,聚合服务器180‑a可以向加密的展示时间添加随机噪声,其中噪声是从h(blindlysignedkey)和秘密密钥si以密码方式导出的。类似地,在步骤612中,聚合服务器180‑b可以生成并向聚合服务器180‑a发送形式为{h(blindlysignedkey),impressiondata3,t(tm tdevice time_skewc、stime)}的元组。196.在修改的步骤614中,聚合服务器180‑a可以连接并过滤数据集,如上文参考过程600的原始步骤614所述。聚合服务器180‑a可以确定加密的展示时间值(impressiontime3_skew),而不是确定作为tm tdevice time_skewc time_skewi的展示时间(impressiontime0)。例如,加密的展示时间值(impressiontime3_skew)可以被定义为t(tm tdevice time_skewc time_skewi,stime)。也就是说,加密的展示时间值(impressiontime3_skew)是使用同态、加态、概率公钥加密技术t和时间服务器192的公钥stime加密的时间值的和。197.对于连接的展示数据(impressiondata3)和转换数据(conversiondata3)的每个组合,聚合服务器180‑a可以确定唯一的加密的盲签名的密钥((blindlysignedkey))的数量是否满足或超过阈值(例如,差分隐私阈值)。如果是,则聚合服务器180‑a可以针对该组合向聚合服务器180‑b发送元组{((blindlysignedkey)),impressiondata3,impressiontime3_skew}。198.在修改的步骤616中,聚合服务器180‑b可以连接并过滤数据集,如上文参考原始过程600的原始步骤616所述。聚合服务器180‑b可以确定加密的转换时间值(conversiontime3_skew),而不是确定作为zn tdevice time_skewc time_skewi的转换时间(conversiontime0)。例如,加密的转换时间值(conversiontime3_skew)可以被定义为t(zn tdevice time_skewc time_skewi,stime)。也就是说,加密的转换时间值(conversiontime3_skew)是使用同态、加态、概率公钥加密技术t和时间服务器192的公钥stime加密的时间值的和。199.对于连接的展示数据(impressiondata3p)和转换数据(conversiondata3)的每个组合,聚合服务器180‑b可以确定唯一的加密的盲签名的密钥((blindlysignedkey)的数量是否满足或超过阈值(例如,差分隐私阈值)。如果是,则聚合服务器180‑b可以针对该组合向聚合服务器180‑a发送元组{((blindlysignedkey)),conversiondata3,conversiontime3_skew}。200.此时,聚合服务器180‑a和180‑b两者可以使用加密的盲签名的密钥(blindlysignedkey)来连接展示和转换数据以及时间两者,以对于每个唯一的加密的盲签名的密钥(blindlysignedkey)形成以下形式的记录:{(blindlysignedkey),impressiondata3,impressiontime3_skew,conversiondata3,conversiontime3_skew}。201.在与相同或多个加密的盲签名的密钥(blindlysignedkey)相关联的、由多条展示数据(impressiondata3)和多条转换数据(conversiondata3)组成的每个记录中,聚合服务器180‑a可以将随机或伪随机索引分配给加密的时间值(impressiontime3_skew和conversiontime3_skew)。聚合服务器180‑a可以将这些索引与加密的时间值(但不是盲签名的密钥或展示或转换数据)一起发送到时间服务器192。时间服务器192可以使用对应于公钥stime的私钥解密加密的时间值,对这些解密的但三重偏移的时间值进行排序,并按时间顺序将索引发送回聚合服务器180‑a。202.这样,时间服务器192不具有对任何用户数据的访问权。时间服务器192甚至不具有对三重偏移的时间值的目的、或者三重偏移的时间值的集合是否与相同的加密的盲签名的密钥(blindlysignedkey)相关联的访问权。在不与聚合服务器180‑a共谋的情况下,时间服务器192不能启动基于时间或时间间隔的攻击。203.聚合服务器180‑a可以使用对应于数据的加密的时间值的索引对每个记录的展示数据(impressiondata3)和转换数据(conversiondata3)进行排序。如上所述,利用该顺序,聚合服务器180‑a可以执行归因过程以将转换归因于展示。聚合服务器180‑b可以执行相同的过程,将索引分配给加密的时间值,并与时间服务器192交互,以便对数据进行排序以用于归因。当聚合服务器180‑a和180‑b两者已经完成该过程时,聚合服务器180‑a和180‑b可以比较结果。204.数据驱动归因205.本文档中描述的mpc过程(例如,图3的过程300)可以适于支持数据驱动归因(datadrivenattribution,dda)。数据驱动归因基于用户的动作,对数字组件、活动和/或搜索关键词对于转换给与积分(credit)。例如,dda可以使用转换数据来计算每个关键词在导致转换的转换路径上的实际贡献。这通过向报告系统190报告满足聚合阈值的完整路径来工作,以供后续处理来应用积分。206.图7是示出使用数据驱动归因将转换归因于展示的示例过程700的流程图。过程700可以由图1和2的聚合服务器180‑a和180‑b来执行。207.为了跟踪dda,数字组件和/或转换系统190可以通知客户端设备110的应用112启用dda(702)。当dda被启用时,应用112可以修改盲签名的连接密钥的定义,以将数字组件是否被点击或被以其他方式交互考虑在内。对于数字组件的点击展示,应用112可以将每个展示的盲签名的展示密钥(blindlysignedkey(id,dc_destination,report_domain))的定义修改为blindlysignedkey(id||clicked,dc_destination,report_domain)。在这个定义中,盲签名的展示密钥是复杂消息,其包括单向密码哈希函数,该函数将复杂消息(id||clicked,dc_destination,report_domain)映射到哈希值和盲签名的展示密钥的盲签名(blind_signature)。在dda只考虑点击(或交互)展示的情况下,参数clicked将始终为真或值为1。208.接收展示和转换数据(704)。例如,如上所述,聚合服务器180‑a可以接收展示数据,并且聚合服务器180‑b可以接收转换数据,例如批量接收。当应用112如上所述报告展示时,应用112可以向聚合服务器180‑a发送包括盲签名的连接密钥(blindlysignedkey)和三次加密的展示数据(impressiondata3p)的展示数据mi。类似地,当应用112如上所述报告转换时,应用112可以向聚合服务器180‑b发送包括盲签名的连接密钥(blindlysignedkey)和三次加密的转换数据(conversiondata3p)的转换数据mc。在该示例中,盲签名的密钥是考虑到参数clicked的修改版本。209.生成展示和转换的序列(706)。在生成序列之前,每个聚合服务器180‑a和180‑b可以连接并过滤数据,如上文参考过程300的步骤306‑316所述。连接和过滤完成后,每个聚合服务器对于与给定用户相关联的每个唯一的盲签名的连接密钥(blindlysignedkey)具有以下形式的记录:{impressiondata3,1,impressiondata3,2,impressiondata3,i……,conversiondata3}。以这种形式,展示和转换可以按时间顺序排列。盲签名的连接密钥(blindlysignedkey)的这种按时间顺序排序的序列可以被称为sequence(序列)。210.对于每个唯一的sequence,聚合服务器180‑a和180‑b两者确定具有唯一的sequence的盲签名的连接密钥(blindlysignedkey)的数量(708)。例如,在转换事件之前,多个用户可能已经以相同的顺序点击了相同的数字组件。在这种情况下,展示和转换的sequence将对于每个用户具有唯一的盲签名的连接密钥(blindlysignedkey)。211.sequence被过滤(710)。例如,聚合服务器180‑a和180‑b每个可以基于隐私或其他阈值化要求来过滤sequence。在特定的示例中,聚合服务器180‑a和180‑b可以从sequence中过滤出没有至少阈值数量的唯一的盲签名的连接密钥(blindlysignedkey)的每个sequence。其结果是{ocurrencem,sequencem}对的列表,其中m=1,2,……m。212.展示和转换数据被解密(712)。展示和转换数据可以使用过程300的步骤318‑328的mpc过程来解密。解密得到形式为{ocurrence1,impressiondata1,1,…impressiondata1,?,conversiondata1,1},{ocurrence2,impressiontime1,2,…impressiondata1,?,conversiondata1,2}的元组。每个元组包括其使用报告域190的公钥一次加密的展示和转换数据的序列。213.展示和转换数据被发送到它们相应的报告系统(714)。然后,报告系统190可以将它们的dda技术(例如,沙普利值(shapleyvalue))应用于最终的序列集合以分配积分。214.由于dda是多个域之间的跨站点报告,因此能够满足阈值要求的不同序列的数量可能很少,尤其是如果大量信息被编码在展示和/或转换数据中,导致每个展示数据(impressiondata3p)的许多不同出现和转换数据(conversiondata3p)的许多不同出现。在这种情况下,可以在最终测量报告中向每个sequence的出现次数添加不同的隐私噪声以保护用户隐私,这对于数字组件提供者来说可能是低效用的。215.通过降低展示数据(impressiondata3p)和/或转换数据(conversiondata3p)的熵,或者通过扩大报告窗口,可以在仍然保护用户隐私的同时改进该效用。如果展示数据的顺序不那么重要,或者重复的展示数据可以被忽略,则数字组件提供者可以在转换站点处通知聚合服务器180‑a和180‑b。在这种情况下,聚合服务器180‑a和180‑b将对与每个set(sequence)相关联的唯一的盲签名的连接密钥(blindlysignedkey)的数量进行计数,并相应地应用阈值化和子采样。216.确定聚合转换值217.除了转换和展示的数量之外,本文档中描述的mpc过程(例如,图3的过程300)还可以适于支持报告转换值。对于每个转换,广告商可以附加数字转换值,例如,在数字组件提供者的网站上花费的量。假设对于特定的展示和转换对,有n个转换以及附加的相应数字转换值{v1,v2,……vn}。转换的数量为总转换值为转换值的平方和为转换值的平均值为并且方差为为了比较两个活动的有效性,可以假设转换值的分布(如果发生转换)遵循正态分布,然后比较两个正态分布之间是否存在显著差异。为此,需要二阶矩方差(ai,2)。218.为了使聚合服务器180‑a和180‑b能够安全地计算转换值(a1),可以使用支持数字加法运算的交换加密技术h。也就是说,对于两个任意的整数值x和y,h(x y)=homomorphicaddition(h(x),h(y))。假设报告系统190计算转换的数量a0,这是一种安全的方式来获得总转换值a1并计算未加密的(intheclear)平均值。219.图8是示出用于确定聚合转换值的示例过程800的流程图。过程800可以由图1和2的聚合服务器180‑a和180‑b来执行。220.接收展示和转换数据(802)。例如,如上所述,聚合服务器180‑a可以从客户端设备接收展示数据,并且聚合服务器180‑b可以从客户端设备接收转换数据,例如批量接收。当应用112如上所述报告展示时,应用112可以向聚合服务器180‑a发送包括盲签名的连接密钥(blindlysignedkey)和三次加密的展示数据(impressiondata3p)的展示数据mi。221.类似地,当应用112如上所述报告转换时,应用112可以向聚合服务器180‑b发送包括盲签名的连接密钥(blindlysignedkey)和三次加密的转换数据(conversiondata3p)的转换数据mc。在该示例中,盲签名的密钥是将参数clicked考虑在内的修改版本。然而,在该示例中,对于转换,转换数据mc还可以包括转换值(v)和/或转换值平方(v2)。概括地说,转换数据mc可以包括由vi指定的任意数量的转换值v1、v2、……vn。这些vi之一可以是另一个vj的平方。222.应用112可以发送值vi的加密版本,而不是发送实际值vi。在一些实施方式中,转换系统172可以用概率同态加态公钥加密h(例如,派勒密码系统)来加密值vi,并将h(vi,report_domain)发送到应用112。在该示例中,这些值被与将接收数字组件的转换报告的报告域(report_domain)相组合,并被使用加密技术h进行加密。223.应用112可以接收h(vi,report_domain),并生成一个或多个三次加密的转换值和三次加密的转换值的平方。例如,应用112可以生成publickeyencrypt(h(vi,report_domain),sc,si)作为三次加密的转换值。在该示例中,从转换系统172接收的加密的转换值使用聚合服务器180‑b的公钥sc加密,并且该结果使用聚合服务器180‑a的公钥si加密。该三次加密的转换值也可以被称为conversionvalue3p,因为第三加密可以是概率性的。224.盲签名的连接密钥被加密(804)。例如,聚合服务器180‑a可以使用交换加密及其选择的加密密钥keyi1来加密接收的展示数据中的盲签名的连接密钥(blindlysignedkey),如以上相对于过程300的步骤306所述。然后,聚合服务器180‑a可以针对每个展示向聚合服务器180‑b发送对:{h(blindlysignedkey,keyi1),impressiondata3p}。225.类似地,聚合服务器180‑b可以使用交换加密及其选择的加密密钥keyc1来加密接收的转换数据中的盲签名的连接密钥(blindlysignedkey),如以上相对于过程300的步骤308所述。聚合服务器180‑a然后可以针对每个转换向聚合服务器180‑a发送元组:{h(blindlysignedkey,keyc1),conversiondata3p、conversionvalue3p}。226.转换值(conversionvalue3p)被解密(806)。例如,聚合服务器180‑a可以使用对应于公钥si的私钥来解密转换值(conversionvalue3p)。这导致恢复由pubkeyencrypt(h(vi,report_domain),sc)定义的二次加密的转换值(conversiondata2)。聚合服务器180‑b可以在本地保存该二次加密的转换值(conversiondata2)。227.加密的展示和转换数据被连接和过滤(808)。例如,每个聚合服务器180‑b可以连接并过滤数据。在该示例中,聚合服务器180‑a可以使用盲签名的密钥(blindlysignedkey)连接转换值(conversionvalue2)、转换数据(conversionvalue3)和展示数据(impressiondata3),类似于过程300的步骤314,但是具有附加的转换值(conversionvalue2)。聚合服务器180‑a然后可以基于阈值过滤连接的记录,类似于过程300的步骤314。例如,聚合服务器180‑a可以从数据集中过滤连接的记录{conversionvalue2,conversiondata3,impressiondata3},这些记录的唯一的盲签名的密钥(blindlysignedkey)的数量未能满足或超过阈值。228.对于每个剩余的连接的记录,聚合服务器180‑a可以生成密钥/值对。在该示例中,密钥可以是盲签名的密钥((blindlysignedkey))、三次加密的展示数据(impressiondata3)和三次加密的转换数据(conversiondata3)的密码哈希。值可以是二次加密的转换值(conversionvalue2)。这个密钥/值对可以被定义为{crytpohash(h(key),impressiondata3,conversiondata3),conversionvalue2}。聚合服务器180‑a可以向聚合服务器180‑b发送密钥/值对。229.聚合服务器180‑b可以对其数据执行相同的过滤,以生成包括过滤后剩余的元组{h(key),impressiondata3,conversiondata3}的相同集合的数据集。聚合服务器180‑b可以对元组执行相同的密码哈希,例如,cryptohash(h(key),impressiondata3,conversiondata3),以获得每个元组的密钥。聚合服务器180‑b可以通过将生成的密钥与密钥/值对中的密钥相匹配,将该数据与从聚合服务器180‑a接收的密钥/值对连接。230.解密二次加密的转换值(conversionvalue2)(810)。聚合服务器180‑b可以使用其对应于公钥sc的私钥解密二次加密的转换值(conversionvalue2),以恢复如上所述使用报告系统190的公钥加密一次的一次加密的转换值(conversionvalue1)。聚合服务器180‑b可以向聚合服务器180‑a发送每个一次加密的转换值(conversionvalue1)及其密钥(crytpohash(h(key),impressiondata3,conversiondata3))。231.确定总转换值(812)。每个聚合服务器180‑a和180‑b可以确定具有相同展示数据(impressiondata3)和转换数据(conversiondata3)的每个记录的总转换值。也就是说,对于每个impressiondata3和conversiondata3的连接的组合,聚合服务器180‑a和180‑b可以独立地确定转换值(conversionvalue1)的和。由于转换值是加密的,和可由公式h(∑v,report_domain)确定。232.包括总转换值的展示和转换数据被发送到报告系统(814)。例如,聚合服务器180‑a和180‑b可以使用步骤318‑328中描述的mpc过程来解密展示和转换数据。然后,每个聚合服务器180‑a可以针对每个展示和转换对生成并向报告系统190发送包括展示数据(impressiondata1)、转换数据(conversiondata1)、转换的数量的计数(count)和转换值(h(∑v,report_domain))……(h(∑vn,report_domain))的报告。例如,可以有多个求和值,一个用于转换值的和,并且一个用于转换值的平方的和,例如sum(v1)和sum(v2),其中v2=v12。233.报告系统190可以比较来自两个聚合服务器180‑a和180‑b的两个报告,以确保它们匹配。如果它们匹配,报告系统190可以验证来自欺诈检测系统170的盲签名和转换数据mc上的转换服务器的签名。如果两个签名都被验证,则报告系统190可以使用其对应于用于加密数据的公钥的私钥来解密转换报告中的数据,以恢复每个展示和转换对的{mi||clicked,mc,count,∑v……∑vn}。也就是说,报告系统190可以恢复展示数据(mi)、数字组件是否被点击、转换数据(mc)、转换的数量的计数(count)以及每个展示和转换对的总转换值。234.差分隐私235.类似于过程300,在过程800中子采样可以用于差分隐私。在过程800的步骤808中,聚合服务器180‑a和180‑b可以使用与过程300的步骤314和316中类似的子采样技术来将噪声引入总转换值∑vi。此外,聚合服务器180‑a和180‑b可以在发送转换报告之前向每个转换值(h(∑v,report_domain))添加随机噪声。对于每个转换值(h(∑v,report_domain)),每个聚合服务器180‑a和180‑b可以替代地生成(h(noisek ∑v,report_domain))。聚合服务器180‑a和180‑b两者可以通过使用聚合服务器180‑a和180‑b联合导出(例如,使用diffie‑hellman协议)的公共种子初始化随机数发生器来生成一致的噪声(noisek)。236.跨设备测量的附加用户隐私保护237.如上所述,当确定跨多个设备的展示和转换计数以及转换值时,唯一标识符(id)可以是关于用户的信息或者基于这样的信息,例如用户的电子邮件地址的密码哈希。使用上述对展示数据(impressiondata3p)和转换数据(conversiondata3p)的概率加密,聚合服务器180‑a和180‑b可以确定用户的转换的某个数量,但不涉及展示或转换本身。但是,聚合服务器180‑a和180‑b可以检测到用户具有一些在线活动。238.图9是示出用于确定聚合的转换数据的示例过程900的流程图。过程900可以由聚合服务器180‑a和180‑b执行。239.接收展示和转换数据(902)。例如,如上所述,聚合服务器180‑a可以接收展示数据,并且聚合服务器180‑b可以接收转换数据,例如从客户端设备批量接收。240.在该示例中,对于数字组件的每个展示,展示数据可以是{h(cryptohash(id,dc_destination,report_domain),stime),impressiondata3p}的形式。在该示例中,使用加同态公钥加密技术h和时间服务器192的公钥stime来加密唯一标识符(id)、目的地(dc_destination)和报告域的密码哈希。这个加密的密码哈希用作展示连接密钥。展示数据还包括可以如上面参考图2所述被加密的三次加密的展示数据(impressiondata3p)。241.对于数字组件的每个转换,转换数据可以是{h(cryptohash(id,dc_destination,report_domain),stime),conversiondata3p}的形式。在该示例中,使用加同态公钥加密技术h和时间服务器192的公钥stime来加密唯一标识符(id)、目的地(dc_destination)和报告域的密码哈希。该加密的密码哈希用作转换连接密钥。转换数据还包括可以如上面参考图2所述被加密的三次加密的转换数据(conversiondata3p)。在不与时间服务器192共谋的情况下,由于加密技术h的概率性本质,聚合服务器180‑a或180‑b都不能恢复cryptohash(id,dc_destination,report_domain)或使h(cryptohash(……)有意义。242.选择随机数(904)。在执行mpc过程以解密展示和转换数据之前,聚合服务器180‑a和180‑b可以各自选择随机数。聚合服务器180‑a可以选择随机数noncei,并且聚合服务器180‑b可以选择随机数noncec。聚合服务器180‑a和180‑b两者可以保密地保存其各自的随机数。243.连接密钥被加密(906)。例如,聚合服务器180‑a可以使用交换加密及其选择的加密密钥keyi1来加密接收的展示数据中的连接密钥h(cryptohash(…)),如以上相对于过程300的步骤306所述。聚合服务器180‑a然后可以针对每个展示向聚合服务器180‑b发送对:{h(cryptohash(id,dc_destination,report_domain) noncei,stime),impressiondata3p}。244.类似地,聚合服务器180‑b可以使用交换加密及其选择的加密密钥keyc1来加密接收的展示数据中的连接密钥h(cryptohash(…)),如以上相对于过程300的步骤308所述。聚合服务器180‑b然后可以针对每个展示向聚合服务器180‑a发送对:{h(cryptohash(id,dc_destination,report_domain) noncec,stime),conversiondata3p}。245.生成更新的连接密钥(908)。对于每个接收的加密的连接密钥和三次加密的转换数据对{h(cryptohash(id,dc_destination,report_domain) noncei,stime),impressiondata3p},聚合服务器180‑a重新加密连接密钥和转换数据。如上参考过程300的步骤310所述,聚合服务器180‑a可以使用其私钥(对应于公钥si的私钥)解密三次加密的转换数据(conversiondata3p),以恢复二次加密的转换数据(conversiondata2)。聚合服务器180‑a然后可以使用其选择的加密密钥keyi2来重新加密二次加密的转换数据(conversiondata2)。246.聚合服务器180‑a还可以针对每个接收的加密的连接密钥和三次加密的转换数据对h(cryptohash(id,dc_destination,report_domain) noncec,stime)生成更新的连接密钥。例如,聚合服务器180‑a可以生成更新的连接密钥h(cryptohash(id,dc_destination,report_domain) noncec noncei,stime)。聚合服务器180‑a然后可以向聚合服务器180‑b发送对{h(cryptohash(id,dc_destination,report_domain) noncec noncei,stime),conversiondata3p}。247.类似地,如上参考过程300的步骤312所述,聚合服务器180‑b可以使用其私钥(对应于公钥sc的私钥)解密三次加密的展示数据(impressiondata3),以恢复二次加密的展示数据(impressiondata2)。聚合服务器180‑b然后可以使用其选择的加密密钥keyc2来重新加密二次加密的展示数据(impressiondata2)。248.聚合服务器180‑b还可以为每个接收的加密的连接密钥和三次加密的展示数据对生成更新的连接密钥h(cryptohash(id,dc_destination,report_domain) noncei,stime)。例如,聚合服务器180‑b可以生成更新的连接密钥h(cryptohash(id,dc_destination,report_domain) noncei noncec,stime)。聚合服务器180‑b然后可以向聚合服务器180‑a发送对{h(cryptohash(id,dc_destination,report_domain) noncei noncec,stime),impressiondata3p}。249.获得连接密钥(910)。例如,每个聚合服务器180‑a和180‑b可以与时间服务器192交互,以获得每条展示数据和每条转换数据的连接密钥。聚合服务器180‑a可以向时间服务器192发送每条展示数据和每条转换数据的h(cryptohash(id,dc_destination,report_domain) noncei noncec,stime)。时间服务器192可以使用确定性对称密钥加密技术和为当前批处理(batchprocess)选择的加密密钥来解密和重新加密h(cryptohash(id,dc_destination,report_domain) noncei noncec,stime)。重新加密的结果是将展示数据(impressiondata3p)与相应的转换数据(conversiondata3p)连接起来的连接密钥。聚合服务器180‑b可以以类似的方式与时间服务器192交互,以获得相同的连接密钥。250.展示和转换数据被解密(912)。利用获得的连接密钥,聚合服务器180‑a和180‑b可以执行mpc过程的剩余部分来解密展示和转换数据,如以上过程300的步骤314‑328中所述。251.解密的展示和转换数据被发送到报告系统(914)。例如,每个聚合服务器180‑a和180‑b可以向相应的报告系统发送转换报告,如以上参考过程300的步骤330和332所述。252.为了提供更多的隐私保护,在一些实施方式中,可以在唯一标识符(id)处使用随机或伪随机数。该随机或伪随机数可以基于唯一标识符(id)。例如,随机数可以基于hmacsha256(e‑mailaddress,email_provider_private_key)。在该示例中,用于上述密钥中的唯一标识符(id)的随机数可以是使用电子邮件提供者(或其他用户授权实体)的私钥的用户的电子邮件地址(或其他用户信息)的hmac。然后,电子邮件提供者(或用户授权实体)可以将唯一标识符(id)的随机数同步到用户的所有设备和应用。然后,当向聚合服务器180‑a和180‑b报告展示和转换数据时,可以使用该随机数来代替唯一标识符(id)。253.图10是可以用于执行上述操作的示例计算机系统1000的框图。系统1000包括处理器1010、存储器1020、存储设备1030和输入/输出设备1040。组件1010、1020、1030和1040中的每一个可以例如使用系统总线1050互连。处理器1010能够处理在系统1000内执行的指令。在一些实施方式中,处理器1010是单线程处理器。在另一实施方式中,处理器1010是多线程处理器。处理器1010能够处理存储在存储器1020或存储设备1030上的指令。254.存储器1020在系统1000内存储信息。在一个实施方式中,存储器1020是计算机可读介质。在一些实施方式中,存储器1020是易失性存储器单元。在另一实施方式中,存储器1020是非易失性存储器单元。255.存储设备1030能够为系统1000提供大容量存储。在一些实施方式中,存储设备1030是计算机可读介质。在各种不同的实施方式中,存储设备1030可以包括例如硬盘设备、光盘设备、由多个计算设备通过网络共享的存储设备(例如,云存储设备)、或者一些其他大容量存储设备。256.输入/输出设备1040为系统1000提供输入/输出操作。在一些实施方式中,输入/输出设备1040可以包括一个或多个网络接口设备(例如,以太网卡、串行通信设备(例如,rs‑232端口)),和/或无线接口设备,例如,802.11卡。在另一实施方式中,输入/输出设备可以包括被配置为接收输入数据并将输出数据发送到外部设备1060的驱动器设备,例如,键盘、打印机和显示设备。然而,也可以使用其他实施方式,诸如移动计算设备、移动通信设备、机顶盒电视客户端设备等。257.尽管在图10中已经描述了示例处理系统,但是在本说明书中描述的主题和功能操作的实施方式可以在其他类型的数字电子电路中实现,或者在计算机软件、固件或硬件,包括在本说明书中公开的结构和它们的结构等价物中实现,或者在它们中的一个或多个的组合中实现。258.本说明书中描述的主题和操作的实施例可以在数字电子电路中实现,或者在计算机软件、固件或硬件,包括本说明书中公开的结构及其结构等价物中实现,或者在它们中的一个或多个的组合中实现。本说明书中描述的主题的实施例可以被实现为一个或多个计算机程序,即编码在计算机存储介质(或介质)上的计算机程序指令的一个或多个模块,用于由数据处理装置执行或控制数据处理装置的操作。替换地或附加地,程序指令可以被编码在人工生成的传播信号上,例如,机器生成的电、光或电磁信号,传播信号被生成以编码信息,用于发送到合适的接收器装置,以由数据处理装置执行。计算机存储介质可以是计算机可读存储设备、计算机可读存储基底、随机或串行存取存储器阵列或设备、或它们中的一个或多个的组合或包括在其中。此外,虽然计算机存储介质不是传播信号,但是计算机存储介质可以是编码在人工生成的传播信号中的计算机程序指令的源或目的地。计算机存储介质也可以是一个或多个单独的物理组件或介质(例如,多个cd、盘或其他存储设备)或包括在其中。259.本说明书中描述的操作可以被实现为由数据处理装置对存储在一个或多个计算机可读存储设备上或从其他源接收的数据执行的操作。260.术语“数据处理装置”包括用于处理数据的所有种类的装置、设备和机器,包括例如可编程处理器、计算机、片上系统、或前述的多个或组合。装置可以包括专用逻辑电路,例如,现场可编程门阵列(fieldprogrammablegatearray,fpga)或专用集成电路(application‑specificintegratedcircuit,asic)。除了硬件之外,装置还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统、跨平台运行时环境、虚拟机或它们中的一个或多个的组合的代码。装置和执行环境可以实现各种不同的计算模型基础设施,诸如网页服务、分布式计算和网格计算基础设施。261.计算机程序(也称为程序、软件、软件应用、脚本或代码)可以用任何形式的编程语言(包括编译或解释语言、声明性或过程性语言)编写,并且它可以以任何形式(包括作为独立程序或作为模块、组件、子例程、对象或适合在计算环境中使用的其他单元)部署。计算机程序可以,但不是必须,对应于文件系统中的文件。程序可以存储在保存其他程序或数据的文件的一部分中(例如,存储在标记语言文档中的一个或多个脚本),存储在专用于所讨论的程序的单个文件中,或者存储在多个协同文件中(例如,存储一个或多个模块、子程序或代码的部分的文件)。计算机程序可以被部署为在一台计算机上或位于一个站点或分布在多个站点并通过通信网络互连的多台计算机上执行。262.本说明书中描述的过程和逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程处理器来执行,以通过对输入数据进行操作并生成输出来执行动作。过程和逻辑流也可以由专用逻辑电路(例如,fpga(现场可编程门阵列)或asic(专用集成电路))来执行,并且装置也可以被实现为专用逻辑电路。263.举例来说,适于执行计算机程序的处理器包括通用和专用微处理器两者。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是根据指令执行动作的处理器和存储指令和数据的一个或多个存储器设备。通常,计算机还将包括用于存储数据的一个或多个大容量存储设备(例如磁盘、磁光盘或光盘),或可操作地耦合来从其接收数据或向其传送数据,或两者兼有。然而,计算机不需要这样的设备。此外,计算机可以嵌入另一个设备,例如移动电话、个人数字助理(personaldigitalassistant,pda)、移动音频或视频播放器、游戏控制台、全球定位系统(globalpositioningsystem,gps)接收器或便携式存储设备(例如通用串行总线(universalserialbus,usb)闪存驱动器),仅举几个示例。适用于存储计算机程序指令和数据的设备包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如eprom、eeprom和闪存设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及cd‑rom和dvd‑rom盘。处理器和存储器可以由专用逻辑电路来补充或并入专用逻辑电路。264.为了提供与用户的交互,本说明书中描述的主题的实施例可以在计算机上实现,该计算机具有用于向用户显示信息的显示设备,例如crt(阴极射线管)或lcd(液晶显示器)监视器,以及键盘和定点设备,例如鼠标或轨迹球,用户可以通过该键盘和定点设备向计算机提供输入。也可以使用其他种类的设备来提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感官反馈,例如视觉反馈、听觉反馈或触觉反馈;并且可以以任何形式从用户接收输入,包括声音、语音或触觉输入。此外,计算机可以通过向用户使用的设备发送文档和从用户使用的设备接收文档来与用户交互;例如,通过响应于从网页浏览器接收的请求,将网页发送到用户的客户端设备上的网页浏览器。265.本说明书中描述的主题的实施例可以在计算系统中实现,该计算系统包括后端组件,例如数据服务器,或者包括中间件组件,例如应用服务器,或者包括前端组件,例如具有图形用户界面或网页浏览器的客户端计算机,用户可以通过该图形用户界面或网页浏览器与本说明书中描述的主题的实施方式进行交互,或者一个或多个这样的后端、中间件或前端组件的任意组合。系统的组件可以通过任何形式或介质的数字数据通信(例如通信网络)来互连。通信网络的示例包括局域网(“lan”)和广域网(“wan”)、内部网络(例如因特网)和对等网络(例如自组织对等网络)。266.计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离,并且通常通过通信网络进行交互。客户端和服务器的关系是通过运行在各自的计算机上并且彼此具有客户端‑服务器关系的计算机程序产生的。在一些实施例中,服务器将数据(例如,html页面)发送到客户端设备(例如,为了向与客户端设备交互的用户显示数据和从其接收用户输入)。可以在服务器处从客户端设备接收在客户端设备处生成的数据(例如,用户交互的结果)。267.虽然本说明书包含许多具体的实施细节,但是这些不应被解释为对任何发明或所要求保护的范围的限制,而是对特定发明的特定实施例的特定特征的描述。本说明书中在单独实施例的上下文中描述的某些特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以在多个实施例中单独实现或者在任何合适的子组合中实现。此外,尽管特征可以在上文中被描述为在某些组合中起作用,并且甚至最初被如此要求保护,但是在一些情况下,来自所要求保护的组合的一个或多个特征可以从该组合中删除,并且所要求保护的组合可以针对子组合或子组合的变型。268.类似地,虽然在附图中以特定顺序描述了操作,但是这不应该理解为要求以所示的特定顺序或依次的顺序执行这些操作,或者要求执行所有示出的操作,以获得期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统组件的分离不应该被理解为在所有实施例中都需要这种分离,并且应该理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中或者封装到多个软件产品中。269.因此,已经描述了主题的特定实施例。其他实施例在以下权利要求的范围内。在一些情况下,权利要求中列举的动作可以以不同的顺序执行,并且仍然获得期望的结果。此外,附图中描述的过程不一定需要所示的特定顺序或依次的顺序来实现期望的结果。在某些实施方式中,多任务和并行处理可能是有利的。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜