从用户设备向接收方设备匿名发送数据的系统和方法与流程

文档序号:26442974发布日期:2021-08-27 13:42阅读:124来源:国知局
从用户设备向接收方设备匿名发送数据的系统和方法与流程

本发明涉及匿名化领域,以及涉及用于保护用户数据的机密性并确保隐私的系统。



背景技术:

向消费者传达信息的个体方法一直是传达信息的最佳方法。长期以来,这种方法一直是最成功的营销活动的决定性因素。随着个体方法出现越来越多的机会到达客户端,直接营销在20世纪末广受欢迎。数字技术的发展为此提供了更新的工具。目前,近几个月市场营销专家的许多调查表明,改善个性化是不久的将来的主要目标。

行为个性化使用通过各种数据收集点接收的信息来识别人的行为,所述信息例如该人正在访问网站、通过电子邮件进行通信、搜索和消费特定内容、或访问商店的特定部门时所接收的信息。所有信息都可以合并到预测模型中,该预测模型可以实时地做出决策。但是在开发这些机制时,广告网络不断地遇到机密性问题。公司收集的关于消费者的信息量非常庞大,并且在保存所收集的个人信息和保证匿名性方面会出现许多问题。

各种分析工具和跟踪器可以用于收集用户数据,其中用户数据是嵌入在网络资源的页面上的html和js代码。每个跟踪器具有其自己的域,使得一个跟踪器中的用户的标识符是保留在客户端的cookie中的任意标识符。可以根据跟踪器的功能来收集完整性不同的数据。例如,对于通过电子邮件注册的用户,可以将标识符链接至邮寄地址,以及在搜索查询的情况下,可以收集用户的一组兴趣。为了提高用户配置文件的完整性,将来自不同跟踪器的数据收集在公共数据库中,或者收集在用于存储和管理数据的系统中,例如数据管理平台(datamanagementplatform,dmp)。为了从同一用户的cookie链接具有不同标识符的数据,使用用于同步cookie文件的机制。在通常情况下,cookie的同步是双向进行的,并且可能涉及一组数据管理系统。数据管理系统产生到其它系统的重定向,从而将其cookie文件的内容作为网络地址的参数进行传输。这使得可以匹配两个标识符,其中一个在cookie文件中发送,另一个在进行重定向的系统中的网络地址的参数中发送。作为同步过程的结果,dmp将具有从多个源组装的用户配置文件,并且因此包含来自不同系统中的cookie的用户的标识符。参与同步的系统还可以从dmp获得用户的标识符。特别紧急的问题是供应方平台(supplysideplatform,ssp)类型和dmp类型的数据管理系统之间的同步。由于ssp在市场上发布其标识符,因此参与拍卖的需求方平台(demandsideplatform,dsp)中的数据被链接至dmp的标识符。

鉴于个人数据领域的新法律的出现(例如通用数据保护条例(generaldataprotectionregulation,gdpr)),变得需要确保机密性并保护上述广告机制。从分析看出,可以隐藏实际标识符的某些机制是已知的。然而,这些机制要求在用户的设备上安装附加代理;反过来,附加代理的安装使用户与远程服务器的操作复杂化,并使交互变得不透明。

因此,需要一种更优化的方式来从源设备(即用户设备)向接收方设备匿名发送数据。



技术实现要素:

本发明的各方面涉及数据的匿名化,更具体地,涉及用于从源设备(用户设备)向接收方设备匿名发送数据的系统和方法。

在一个示例性方面,提供了一种用于从源设备向接收方设备匿名发送数据的方法,该方法包括:由源设备接收向接收方设备发送数据的请求;处理数据使得用户的标识符和标识数据不链接至待发送给接收方设备的数据;以及确定源设备中是否缺少用户的标识符;当缺少用户的标识符时,生成用户的标识符;将用户的标识符发送至令牌生成器,其中,所发送的标识符包括所生成的标识符或在确定源设备中是否缺少用户的标识符期间找到的现有标识符;以及向接收方设备发送从令牌生成器所接收的随机令牌和数据的组合。

在一个方面,当在源设备上执行脚本时,发起用于向接收方设备发送数据的请求。

在一个方面,确定在源设备中是否缺少用户的标识符包括确定是否已经在源设备上安装cookie。

在一个方面,处理数据使得用户的标识符和标识数据不链接至待发送给接收方设备的数据包括:将用户的标识符和标识数据与待发送的数据分离,使得用户的标识符和标识数据从待发送的数据解链接(unlink)。

在一个方面,通过数据修改器执行所述解链接。

在一个方面,用户的标识符由所述源设备或第三方生成,其中,当用户的标识符由第三方生成时,该方法还包括:从第三方向源设备发送所生成的用户的标识符。

在一个方面,该方法还包括由令牌生成器执行以下操作:确定现有匿名标识符是否链接至所接收的用户的标识符;当未找到与现有匿名标识符的链接时,创建所接收的用户的标识符和匿名标识符的对;为所创建的对或现有的对生成随机令牌,其中,随机令牌将所接收的用户的标识符链接至一匿名标识符;当从接收方设备接收到随机令牌时,使用为其生成令牌的所述对将随机令牌映射至匿名标识符上;以及将匿名标识符返回给从其接收随机令牌的所述接收方设备。

在一个方面,用户的标识符被唯一地链接至匿名标识符。

在另一方面,用户的标识符经由一对多链接(onetomanylink)被链接至匿名标识符,其中以下项之一为正确的:用户的多个标识符被链接至一个匿名标识符、至少两个用户的标识符被链接至同一匿名标识符、以及多个匿名标识符被链接至用户的同一标识符。

在一个方面,该方法还包括由接收方设备执行以下操作:将从源设备接收的随机令牌发送至令牌生成器,从令牌生成器接收匿名标识符,以及将从源设备接收的数据与从令牌生成器接收的匿名标识符进行组合。

在一个方面,当返回的匿名标识符对于接收方设备是已知的时,接收方设备将从源设备中获得的数据保存在先前为该已知匿名标识符创建的结构中,以及当返回的匿名标识符对于接收方设备是未知的时,接收方设备创建新的结构用于保存从源设备获得的与当前匿名标识符有关的数据。

根据本发明的一个方面,提供了一种用于从源设备(用户设备)向接收方设备匿名发送数据的系统,该系统包括硬件处理器,该硬件处理器被配置成:接收向接收方设备发送数据的请求;处理数据,使得用户的标识符和标识数据不链接至待发送给接收方设备的数据,以及确定源设备中是否缺少用户的标识符;当缺少用户的标识符时,生成用户的标识符;将用户的标识符发送至令牌生成器,其中,所发送的标识符包括所生成的标识符或在确定源设备中是否缺少用户的标识符期间找到的现有标识符;以及向接收方设备发送从令牌生成器所接收的随机令牌和数据的组合。

在一个示例性方面,提供了一种非暂时性计算机可读介质,在该非暂时性计算机可读介质上存储用于从用户设备向接收方设备匿名发送数据的一组指令,其中,该组指令包括用于以下操作的指令:接收向接收方设备发送数据的请求;处理数据,使得用户的标识符和标识数据不链接至待发送给接收方设备的数据,以及确定源设备中是否缺少用户的标识符;当缺少用户的标识符时,生成用户的标识符;将用户的标识符发送至令牌生成器,其中,所发送的标识符包括所生成的标识符或在确定源设备中是否缺少用户的标识符期间找到的现有标识符;以及向接收方设备发送从令牌生成器所接收的随机令牌和数据的组合。

本发明的方法和系统被设计成为从用户设备发送至接收方的信息提供数据安全性。

附图说明

并入本说明书中并构成本说明书的一部分的附图示出了本发明的一个或多个示例性方面,以及连同详细的描述一起用来阐述这些示例性方面的原理和实现方式。

图1示出了用于匿名交换数据的系统。

图2示出了根据本发明的各方面的由接收方从源获得数据的示例性方法。

图3示出了根据本发明的各方面的用于由接收方从源设备获得数据的方法的示例性实现方式。

图4示出了根据本发明的各方面的用于同步匿名标识符的系统。

图5示出了根据本发明的各方面的用于同步匿名标识符的方法。

图6示出了根据本发明的各方面的用于同步匿名标识符的方法的示例性实现方式。

图7示出了根据本发明的各方面的用于发送匿名数据的系统。

图8示出了根据本发明的各方面的用于发送匿名数据的方法。

图9示出了根据本发明的各方面的用于从源设备向接收方设备发送数据的示例性方法。

图10示出了可以在其上实现本发明的各方面的通用计算机系统的示例。

具体实施方式

本文中在用于在源设备和接收方设备之间匿名交换数据的系统、方法和计算机程序的上下文中描述了示例性各方面。本领域普通技术人员将意识到,以下的描述仅仅是示例性的,而不旨在以任何方式进行限制。其它方面将很容易将其自身暗示给了解本发明的优点的本领域技术人员。现在将详细地参考如附图中所示的示例性方面的实现方式。贯穿附图和以下描述将尽可能地使用相同的附图标记来指代相同或相似的项。

在一个方面,本发明描述了一种用于以匿名的方式从源设备向接收方设备发送数据的系统。(如下所述的)系统100、400和700在计算系统(例如计算机)上实现,该计算系统包括现实世界的设备、系统、部件以及部件组,这些现实世界的设备、系统、部件以及部件组使用诸如集成微电路(专用集成电路,asic)或现场可编程门阵列(fpga)的硬件实现、或者例如以软件和硬件组合的形式(例如微处理器系统和程序指令集)实现、以及还在神经突触芯片上实现。所述系统的这种模块的功能可以仅通过硬件来实现,并且也可以以组合的形式来实现,其中系统模块的一些功能通过软件来实现,并且一些功能通过硬件来实现。在某些方面,部件、系统等中的一些或全部可以在通用计算机(例如图10中所示的计算机)的处理器上运行。此外,系统部件可以在单个计算设备内实现,或者也可以散布在多个互连的计算设备之间。

本发明的方法使得能够对正在收集的数据进行管理,并且能够使用户与数据管理系统之间的链接断开。该方法无需安装cookie文件即可执行,并且无需每次安装都获得用户的同意。法律赋予用户撤回对数据处理的许可的权利。本发明提供了一种技术解决方案,用于针对无限数量的跟踪器通过“一次单击”实现该权利。此外,本发明的方法可以被并入到rtb(realtimebidding,实时竞价)的现有机制中。

图1示出了用于匿名交换数据的系统100。该系统包括数据源110、数据接收方120和从数据生成令牌(token)的令牌生成器130。数据存储在数据源110中,并按需提供给数据接收方120。从数据生成令牌的令牌生成器130被设计成创建链接关系(linkage):

·

·

因此,令牌生成器130为这些链接关系生成随机令牌。令牌生成器可以在两个方向上变换用户的标识符数据和关键数据,变换的结果是匿名标识符或匿名数据。在特定实例中,数据的变换方法包括以下中的至少一项:

·量化;

·排序;

·合并(粘贴);

·分组;

·数据集配置;

·值的表替换;

·计算值;

·数据编码;

·加密;

·标准化(缩放);以及

·卷积。

在一方面,除了节点的匿名化手段之外,变换完成后不可以通过任何手段恢复到以前的形式。恢复(即,逆变换)是指允许将对象(数据、结构等)恢复成对象的原始形式的变换。对象的原始形式是指对象在变换之前的形式。变换是指集合到其自身的映射(函数),换句话说,将特定集合转换为另一集合的映射被称为变换。

在特定实例中,令牌生成器130位于与接收方和/或源的网络不同的网络的节点上。在特定实例中,具有令牌生成器的节点位于不同于接收方所在的区域网络的区域网络中。此外,令牌生成器不位于与接收方或源相同的内联网中。值得注意的是,区域网络是指地理上分散的网络,其将在不同点处的计算机汇集在一起,从而形成能够通信的单个单元。反过来,区域网络的总和形成了全球网。因此,系统的各种元件可以位于不同的管辖区中。在本发明的上下文中,不同的区域网络不仅在地理上是不同的,而且位于不同的管辖区中。不同的区域网络可以包括将国家的节点(国家网络)汇集在一起的网络。例如,在gdpr(通用数据保护条例)的术语中,服务器所在的俄罗斯联邦的区域网络将被视为第三方国家的区域网络。在特定实例中,具有令牌生成器的节点的区域网络因此也与客户端的区域网络不同。

在一个方面,数据源110可以是客户端、不同的用户设备、物联网(iot)设备或数据管理系统(例如用户数据库,该数据库聚集并存储关于用户的所有数据并且用户通过界面管理该数据库)。在一个方面,接收方可以是服务器、数据管理系统,包括客户数据平台(customerdataplatform,cdp)、数据管理平台(datamanagementplatform,dmp)、供应方平台(supplysideplatform,ssp)、需求方平台(demandsideplatform,dsp)等。在特定实例中,相反的情况是可能的,其中源成为接收方,而接收方成为源。例如,在rtb技术中,当用户设备从ssp获得广告块时,ssp是源,用户设备是接收方。

图1示出了用于数据源110(源设备)和数据接收方120(接收方设备)之间交互的系统的示例。交互是根据结合图2描述的方法进行的。例如,交互包括以下场景,其中:

·接收方从源请求数据(例如,参见步骤210);

·源向令牌生成器发送标识符(例如,参见步骤220);

·令牌生成器将随机令牌返回给源(例如,参见步骤230);

·源将请求的数据与令牌一起发送给接收方(例如,参见步骤240);

·接收方将随机令牌发送给令牌生成器(例如,参见步骤250);以及

·令牌生成器将匿名标识符返回给接收方(例如,参见步骤260)。

图2示出了根据本发明的各方面的用于从源向接收方发送数据的示例性方法200。

在步骤210中,源110接收向接收方120发送数据的请求。在一个方面,发送数据的请求不是由接收方120发起的,而是在源110本身内发起的。例如,当在用户的设备上执行脚本时,可以发起向web服务器或dmp的数据发送。

在步骤211中,源110处理数据,使得用户的标识符和任何其它标识数据不链接至待发送给接收方的数据,并且确定是否缺少用户的标识符。当缺少用户的标识符时,该方法行进至步骤212。否则,该方法行进至步骤220。

在一个方面,确定是否缺少用户的标识符包括确定是否已经安装cookie或是否缺少cookie。

在一个方面,处理数据使得用户的标识符和任何其它标识数据不链接至正在发送的数据包括:将标识数据(包括用户的标识符)与正在发送的数据分离(即解链接)。在一个方面,响应于源110的请求,由数据修改器140执行解链接。

在步骤212中,该方法生成用户的标识符。在一个方面,用户的标识符由源110生成。在另一方面,用户的标识符由第三方(例如:dmp、ssp、网络服务器、数据库等)生成。如果用户的标识符是由第三方生成的,则该方法行进至步骤212b,以将生成的用户的标识符发送至源110。

在步骤220中,源110将用户的标识符(在步骤212中生成的标识符或在步骤211中找到的现有标识符)发送给令牌生成器130。

在步骤221中,令牌生成器130确定是否将现有的匿名标识符链接至所接收的标识数据。如果未找到与现有匿名标识符的链接,则该方法行进至步骤222。否则,该方法行进至步骤223。

在步骤222中,该方法创建用户标识符/匿名标识符对,并且行进至步骤223。

在一个方面,用户标识数据被唯一地链接至匿名标识符(一对一链接或注入)。在另一方面,该链接不是唯一的(即,该链接是一对多的):

·同一用户的多个标识符链接至一个匿名标识符(例如,当同一用户在多个系统中具有多个标识符时);

·多个用户的标识符链接至同一匿名标识符(例如,当匿名标识符表征特定人群(一个家庭或同事)或标识符表征消费者群时);以及

·多个匿名标识符链接至同一用户标识符(例如,当需要提供标识符的受控冲突以用于非个性化并保证逆变换不可行时)。

在步骤223中,令牌生成器130为用户标识符/匿名标识符对生成随机令牌,其中该随机令牌将用户标识符链接至匿名标识符。

在步骤230中,令牌生成器130将所生成的随机令牌返回给源110。

在步骤231中,源110将随机令牌与旨在用于接收方的数据进行组合。

在步骤240中,将其中组合有随机令牌的数据发送至接收方120。

在步骤250中,接收方120将从源110所接收的随机令牌发送至令牌生成器130。

在步骤255中,令牌生成器130使用为其生成随机令牌的用户标识符/匿名标识符对,将从接收方120所接收的随机令牌映射到匿名标识符上。

在步骤260中,令牌生成器130将匿名标识符返回至接收方120。

在步骤265中,接收方将数据与匿名标识符组合。在一个方面,当返回的匿名标识符对于接收方120是已知的时,将从源110获得的数据保存在先前为该匿名标识符创建的结构中;否则,创建新结构以保存从源110获得的与当前匿名标识符有关的数据。当需要保证用户的匿名性时,为同一用户标识符创建多个匿名标识符。在这种情况下,将同一用户标识符映射至多个匿名标识符上,从而不允许在同一标识符下组合数据。换句话说,将同一用户标识符映射至多个匿名标识符上防止了用户在接收方侧被去匿名化。

图3示出了根据本发明的各方面的用于由接收方从源获得数据的方法的示例性实现方式。图3示出了上述用于发送数据的方法的变型,该数据是dmp数据的集合。

在步骤210a中,浏览器从网络服务器310接收带有脚本的html页面。脚本中的至少一者被设计成从安装有浏览器110a的用户设备150收集数据,并且将数据发送至dmp120a。为了发送数据,需要生成唯一的用户标识符。在步骤212a中,浏览器110a生成请求,并将该请求发送至dmp中间件(dmpmiddleware)320a。在步骤212中,dmp中间件320a生成用户标识符dmpuserid。在步骤212b,dmp中间件320a将所生成的用户标识符返回给浏览器110a。在步骤220中,将标识符dmpuserid发送至令牌生成器130。令牌生成器130确定是否有现有的匿名标识符链接至所接收的标识符。如果没有链接关系,则令牌生成器130生成匿名标识符anonymoususerid;否则,令牌生成器130将使用现有的标识符。然后为dmpuserid-anonymoususerid对生成随机令牌dmpuseridtoken。在步骤230中,将生成的令牌dmpuseridtoken返回给用户设备150。将随机令牌dmpuseridtoken与旨在用于dmp的数据data组合。在步骤240中,将与令牌dmpuseridtoken组合的数据data发送至dmp。在步骤250中,将来自dmp的令牌dmpuseridtoken发送至令牌生成器130,在令牌生成器130处将令牌映射至来自为其生成令牌的dmpuserid-anonymoususerid对中的匿名标识符anonymoususerid上。然后,在步骤260中,将标识符anonymoususerid返回给dmp。数据data在dmp120a处与返回的匿名标识符anonymoususerid组合。在一个方面,如果返回的匿名标识符对于dmp是已知的,则将从网络服务器获得的数据保存在先前为该匿名标识符创建的结构中。在另一方面,返回的匿名标识符对于dmp是未知的,则为链接至该匿名标识符的数据创建新的存储结构。

图4示出了根据本发明的各方面的用于同步匿名标识符的系统400。系统400类似于系统100。另外,系统400包含数据管理系统320。存在至少两个此类数据管理系统用于同步。图4示出了数据源和数据接收方之间的交互的示例,其中:

·源110向数据管理系统320发送获取标识符(userid)的请求(例如,参见步骤212a);

·系统320将标识符返回至源110(例如,参见步骤212b);

·源110将标识符发送到令牌生成器130(例如,参见步骤220);

·令牌生成器130将随机令牌(useridtoken)返回至源110(例如,参见步骤230);

·源110将令牌发送至接收方120(例如,参见步骤242);

·接收方120将令牌发送至令牌生成器130(例如,参见步骤250);以及

·令牌生成器将匿名标识符(anonymuserid)返回至接收方120(例如,参见步骤260)。

图5示出了根据本发明的各方面的用于同步匿名标识符的方法。如果源110没有用于同步的标识符,则源110向管理系统320发送接收标识符的请求212a;系统320在步骤212中生成标识符,并将所生成的标识符返回给源110(212b)。在步骤220中,源110将从系统320接收的标识符发送给令牌生成器130。

在步骤221中,令牌生成器确定是否存在与所接收的标识数据链接的现有匿名标识符。如果不存在链接,则在步骤222中,如在上述的方法200中的,生成匿名标识符并将其链接至标识数据。在步骤223中,为每个用户标识符/匿名标识符对生成随机令牌。在步骤230中,该随机令牌被返回给源110。在步骤231a中,源110的所有令牌被组合。然后,在步骤242中,将组合的令牌发送给接收方。在步骤250中,将令牌从接收方发送至令牌生成器130。在步骤255中,将令牌从为其生成令牌的用户标识符/匿名标识符对映射(解析)至匿名标识符上。在步骤260中,将匿名标识符返回给接收方120。在步骤266中,链接与从同一源接收的令牌相对应的匿名标识符。

图6示出了根据本发明的各方面的用于同步匿名标识符的方法的示例性实现方式。图6示出了一示例性方面,其示出了来自ssp和来自dmp的标识符的同步。在步骤212a中,浏览器110a向ssp中间件320b和dmp中间件320a发送获取标识符的请求。系统320a生成标识符dmpuserid,并且系统320b生成标识符sspuserid。在步骤212b中,所生成的标识符被返回至用户设备150(用户设备150的浏览器110a发出了该请求)。在步骤220中,将标识符发送至令牌生成器130。令牌生成器130生成匿名标识符。对于dmpuserid,令牌生成器130生成anonymdmpuserid,对于sspuserid,令牌生成器130生成anonymsspuserid。对于每个对,随机令牌如下地生成:

·dmpuserid-anonymdmpuserid→dmpuseridtoken;

·sspuserid-anonymsspuserid→sspuseridtoken。

在步骤230中,将令牌sspuseridtoken和dmpuseridtoken返回至设备150。在步骤242中,将所接收的令牌在设备处组合并发送至dmp120a。在步骤250中,将令牌从dmp发送至令牌生成器130,在令牌生成器130处将令牌映射至匿名标识符上。

在步骤260中,将匿名标识符anonymdmpuserid和anonymsspuserid返回至dmp,并且在dmp中将标识符链接(同步)以在不同系统320中标识同一源。

图7示出了根据本发明的各方面的用于发送匿名数据的系统700。系统700用于发送匿名数据(anonymdata),并且类似于系统100。系统700包含数据修改器140,数据修改器140被设计为划分数据结构(形成该数据结构以从源110向接收方120分派)。将数据结构划分为子结构存在各种标准,其中一种标准是在发送的数据中个人数据(个人标识信息)或其特殊类别(在gdpr术语中)的存在,借此数据结构被划分使得一个子结构包含个人数据(下文称为pd,英文:pii)或其特殊类别,另一子结构包含为非个人数据的数据。

将数据分配为个人数据是例如由国家的法律规定的,其中,设备的用户位于该国家的法律的管辖内。设备的用户是所描述系统中的客户端。换句话说,数据源的位置用于确定管辖权。另一更常见的标准是关键数据(criticaldata)的存在。关键数据是法律或授权实体对其施加限制的数据。例如,授权实体可以限制关键数据的收集、存储、访问、散布和处理。该关键数据通常对透露、散布和泄漏很敏感,并且这些事件的发生可能会导致侵犯人权和合法保护权益。针对违背规则来采集、存储、访问和处理这类数据的那些人可以追究责任。在本发明的上下文中,术语“机密数据”和“机密信息”是同义词。关键数据的特定实例是机密数据(敏感数据)。机密数据是指按照国家法律受保护的数据,其中,设备的用户(所描述的系统中的客户端)位于该国家法律的管辖内。在一个方面,机密数据包括个人数据(pd)和包含以下中的至少一项的数据:

·商业秘密;

·税务秘密;

·银行秘密;

·医疗秘密;

·公证秘密;

·律师秘密;

·审计秘密;

·通信秘密;

·保险秘密;

·最后遗嘱秘密;

·收养秘密;

·忏悔秘密;

·调查秘密;

·法庭审理秘密;

·关于受保护人的信息;以及

·国家秘密。

图7示出了用于发送匿名数据的系统的示例,其中:

·接收方120从源110请求数据(例如,参见步骤210);

·源110向管理系统320发送获取标识符的请求(例如,参见步骤212a);

·管理系统320将所请求的标识符返回给源110(例如,参见步骤212b);

·源110将标识符发送给令牌生成器130(例如,参见步骤220);

·源110发送关键数据(例如,参见步骤220a);

·令牌生成器130将用于标识符的随机令牌(useridtoken)返回给源110(例如,参见步骤230);

·令牌生成器130将用于数据的随机令牌(criticaldatatoken)返回给源110(例如,参见步骤230a);

·源110将令牌和不是关键数据的数据发送至接收方120(例如,参见步骤242);

·接收方120将令牌发送到令牌生成器130(例如,参见步骤250);

·令牌生成器130将匿名标识符返回给接收方120(例如,参见步骤260);以及

·令牌生成器130将匿名数据返回给接收方110(例如,参见步骤261)。

图8示出了根据本发明的各方面的用于发送匿名数据的方法200。

在步骤210中,源110从接收方120接收发送数据的请求。

在一个方面,在步骤211中,方法200确定是否缺少用户的标识符。例如,当尚未安装cookie文件时,可以确定缺少标识符。当确定缺少标识符时,该方法行进至步骤212。否则,该方法行进至步骤220。

在步骤212中,方法200生成用户的标识符并将其发送至源110。在一个方面,用户的标识符由源110生成。在另一方面,用户的标识符由第三方(例如:dmp、ssp、网络服务器、数据库等)生成。

在步骤213中,方法200确定在旨在从源110发送至接收方120的数据中是否存在关键数据。如果发现关键数据,则方法200行进至步骤220a。否则,方法200行进至步骤220。

在步骤220a中,方法200将关键数据发送至令牌生成器130。

在步骤220中,方法200将用户的标识符(在步骤212中生成的标识符或在步骤211中找到的现有标识符)从源发送至令牌生成器130。步骤220和220a可以同步执行或异步执行。然后,该方法行进至步骤221。

在步骤221中,令牌生成器130确定是否将现有匿名标识符链接至所获得的用户的标识符。如果不存在此类链接,则该方法行进至步骤222。否则,该方法行进至步骤223。

在步骤222中,方法200生成匿名标识符,并且由用户的标识符和所生成的匿名标识符创建第一对(firstpair)。例如,第一对可以被创建为“用户标识符/匿名标识符”。

在步骤222a中,方法200通过令牌生成器将获得的关键数据匿名化,并由关键数据和匿名数据创建第二对(secondpair)。例如,第二对可以被生成为关键数据/匿名数据。

在步骤223中,方法200为第一对和第二对生成随机令牌,例如,为用户标识符/匿名标识符对和关键数据/匿名数据对生成随机令牌。

在步骤230中,用于用户标识符/匿名标识符对的随机令牌被返回至源110。

在步骤230a中,返回用于关键数据/匿名数据对的随机令牌。

在步骤242中,将源110的所有令牌以及在特定实例中将非关键数据发送至接收方。

在步骤250中,将令牌从接收方发送至令牌生成器130。

在步骤255中,令牌生成器130将令牌从用户标识符/匿名标识符对映射至匿名标识符上。

在步骤256中,令牌生成器130将令牌从关键数据/匿名数据对映射至匿名数据上。

在步骤260中,将匿名标识符返回给接收方120。在步骤261中,将匿名数据返回给接收方120。步骤260和261可以同步执行或异步执行。

在步骤267中,接收方120将匿名标识符、匿名数据和非关键数据(如果发送的话)进行组合。在一个方面,如果返回的匿名标识符对于接收方是已知的,则将从源110接收的数据和从令牌生成器接收的通过令牌的匿名数据保存在先前为该匿名标识符创建的结构中;否则,创建新结构来存储链接至匿名标识符的数据。

图9示出了根据本发明的各方面的用于从源设备向接收方设备发送数据的示例性方法900。方法900由旨在向接收方设备发送一些数据的设备实现。数据的发送可以通过安装在发送设备中的脚本发起,或者可以由于从接收方设备接收数据的请求而发起。因此,在源设备和接收方设备之间存在交互。源设备和接收方设备也都与令牌生成器进行交互,以使数据能够以匿名方式发送给接收方。方法900在步骤905中开始,并且行进至步骤910。

在步骤910中,方法900接收将数据发送至接收方设备的请求。在一个方面,当在源设备上执行脚本时,发起向接收方设备发送数据的请求。

在步骤920中,方法900处理数据,使得用户的标识符和标识数据不链接至待发送至接收方的数据,并确定源设备中是否缺少用户的标识符。在一个方面,确定在源设备中是否缺少用户的标识符包括确定在源设备上是否已经安装cookie。在一个方面,处理数据使得用户的标识符和标识数据不链接至待发送至接收方设备的数据包括:将用户的标识符和标识数据与待发送的数据分离,使得用户的标识符和标识数据与待发送的数据解链接。在一个方面,解链接由数据修改器执行。

在步骤930中,当缺少用户的标识符时,方法900生成用户的标识符。在一个方面,用户的标识符由源设备或第三方生成,其中,当用户的标识符由第三方生成时,该方法还包括:将生成的用户的标识符从第三方发送至源设备。

在步骤940中,方法900将用户的标识符(在步骤930中生成的标识符或在步骤920中找到的现有标识符)发送至令牌生成器。因此,所发送的标识符包括所生成的标识符(步骤930的结果)或者在确定在源设备中是否缺少标识符期间找到的现有标识符(步骤920)。

在步骤950中,方法900向接收方设备发送从令牌生成器所接收的随机令牌与数据的组合。方法900在步骤960中结束。

继而,在一个方面,令牌生成器执行以下操作:当未找到与现有匿名标识符的链接时确定是否将现有匿名标识符链接至从源设备接收的用户的标识符,创建所接收的用户的标识符和一匿名标识符的对(例如,用户标识符/匿名标识符对),为所创建的对(即,为用户标识符/匿名标识符对)或现有的对生成随机令牌,其中随机令牌将所接收的用户的标识符链接至匿名标识符。当从接收方设备接收到随机令牌时,使用为其生成令牌的所述对将随机令牌映射至匿名标识符上,并将匿名标识符返回给从其接收随机令牌的接收方设备。在一个方面,用户的标识符唯一地链接至匿名标识符。在另一方面,通过一对多链接将用户的标识符链接至匿名标识符,其中以下项之一是正确的:用户的多个标识符链接至一个匿名标识符、至少两个用户的标识符链接至同一个匿名标识符、以及多个匿名标识符链接至用户的同一标识符。

在一个方面,该方法还包括由接收方设备执行以下操作:将从源设备接收的随机令牌发送至令牌生成器,从令牌生成器接收匿名标识符,以及将从源设备接收的数据与从令牌生成器接收的匿名标识符进行组合。在一个方面,当返回的匿名标识符对于接收方设备是已知的时,接收方设备将从源设备中获得的数据保存在先前为该已知匿名标识符创建的结构中。当返回的匿名标识符对于接收方设备是未知的时,接收方设备创建新的结构用于保存从源设备获得的与当前匿名标识符有关的数据。

本发明的方法的技术结果包括使得接收方能够匿名地从源获得数据。通过由令牌生成器生成随机令牌来实现本发明的优点。令牌是基于来自源的数据生成的。在一个方面,标识数据用于生成令牌。在一个方面,标识数据包括诸如以下的数据:用户标识符,用于创建唯一指纹的数据、唯一指纹、数据管理平台中的标识符、来自同步设备的标识符。基于来自源的数据,附加地生成匿名标识符,其中在特定情况下,可以将生成的随机令牌唯一地映射至匿名标识符上。生成的随机令牌在源处与数据组合,并被发送至接收方。根据接收方的要求,令牌生成器将随机令牌映射至匿名标识符上,并将其返回给接收方,其中,在接收方处,由令牌生成器返回的匿名标识符与从源获得的数据进行组合。

接收方和/或源可以是数据管理平台,其中,源是数据的发送者,接收方是数据的获取者。因此,客户端/服务器架构中的源是客户端,接收方是服务器。令牌生成器位于与接收方和/或源的网络不同的网络节点上。在特定实例中,由源发起令牌的生成。

图10是示出了可以在其上实现用于从源设备向接收方设备匿名发送数据的系统和方法的各方面的计算机系统20的框图。计算机系统20可以是以多个计算设备的形式或者以单个计算设备的形式,例如,台式电脑、笔记本电脑、手提电脑、移动计算设备、智能手机、平板电脑、服务器、大型机、嵌入式设备和其它形式的计算设备。

如图所示,计算机系统20包括中央处理单元(centralprocessingunit,cpu)21、系统存储器22和连接各种系统部件的系统总线23,各种系统部件包括与中央处理单元21相关联的存储器。系统总线23可以包括总线存储器或总线存储器控制器、外围总线、以及能够与任何其它的总线架构交互的本地总线。总线的示例可以包括pci、isa、串行总线(pci-express)、超传输tm(hypertransporttm)、无限带宽tm(infinibandtm)、串行ata、i2c、和其它合适的互连。中央处理单元21(也称为处理器)可以包括单组或多组具有单核或多核的处理器。处理器21可以执行实现本发明的技术的一种或多种计算机可执行代码。系统存储器22可以为用于存储本文中所使用的数据和/或由处理器21可执行的计算机程序的任何存储器。系统存储器22可以包括易失性存储器(诸如随机存取存储器(randomaccessmemory,ram)25)和非易失性存储器(诸如只读存储器(read-onlymemory,rom)24、闪存等)或其任意组合。基本输入/输出系统(basicinput/outputsystem,bios)26可以存储用于在计算机系统20的元件之间传输信息的基本程序,例如在使用rom24加载操作系统时的那些基本程序。

计算机系统20可以包括一个或多个存储设备,诸如一个或多个可移除存储设备27、一个或多个不可移除存储设备28、或其组合。所述一个或多个可移除存储设备27和一个或多个不可移除存储设备28借助存储器接口32连接到系统总线23。在一个方面中,存储设备和相应的计算机可读存储介质为用于存储计算机系统20的计算机指令、数据结构、程序模块、和其它数据的电源独立的模块。系统存储器22、可移除存储设备27和不可移除存储设备28可以使用各种各样的计算机可读存储介质。计算机可读存储介质的示例包括:机器存储器,诸如缓存、sram、dram、零电容ram、双晶体管ram、edram、edoram、ddrram、eeprom、nram、rram、sonos、pram;闪存或其它存储技术,诸如在固态驱动器(solidstatedrive,ssd)或闪存驱动器中;磁带盒、磁带、和磁盘存储器,诸如在硬盘驱动器或软盘中;光学存储器,诸如在光盘(cd-rom)或数字通用光盘(digitalversatiledisk,dvd)中;以及可用于存储期望数据且可被计算机系统20访问的任何其它介质。

计算机系统20的系统存储器22、可移除存储设备27和不可移除存储设备28可以用于存储操作系统35、附加应用程序37、其它程序模块38和程序数据39。计算机系统20可以包括用于传送来自输入设备40的数据的外围接口46,所述输入设备40诸如键盘、鼠标、触针、游戏控制器、语音输入设备、触点输入设备、或其它外围设备,诸如借助一个或多个i/o端口的打印机或扫描仪,该一个或多个i/o端口诸如串行端口、并行端口、通用串行总线(universalserialbus,usb)、或其它外围接口。显示设备47(诸如一个或多个监控器、投影仪或集成显示器)也可以通过输出接口48(诸如视频适配器)连接到系统总线23。除了显示设备47之外,计算机系统20还可以装配有其它外围输出设备(未示出),诸如扬声器和其它视听设备。

计算机系统20可以使用与一个或多个远程计算机49的网络连接而在网络环境中工作。所述一个或多个远程计算机49可以为本地计算机工作站或服务器,其包括前面在描述计算机系统20的性质时所述的元件中的大多数元件或全部元件。其它设备也可以存在于计算机网络中,所述其它设备诸如但不限于路由器、网站、对等设备或其它的网络节点。计算机系统20可以包括用于借助一个或多个网络而与远程计算机49通信的一个或多个网络接口51或网络适配器,该一个或多个网络诸如局域计算机网络(local-areacomputernetwork,lan)50、广域计算机网络(wide-areacomputernetwork,wan)、内联网、和因特网。网络接口51的示例可以包括以太网接口、帧中继接口、sonet接口、和无线接口。

本发明的各个方面可以为系统、方法和/或计算机程序产品。计算机程序产品可以包括一种或多种计算机可读存储介质,该计算机可读存储介质上具有用于使处理器执行本发明的各方面的计算机可读程序指令。

计算机可读存储介质可以为有形设备,该有形设备可以保持且存储指令或数据结构的形式的程序代码,该程序代码可以被计算设备(诸如计算系统20)的处理器访问。计算机可读存储介质可以为电子存储设备、磁性存储设备、光学存储设备、电磁存储设备、半导体存储设备、或其任何合适组合。作为示例,这类计算机可读存储介质可以包括随机存取存储器(ram)、只读存储器(rom)、电可擦可编程只读存储器(eeprom)、便携式光盘只读存储器(cd-rom)、数字通用光盘(dvd)、闪存、硬盘、便携式电脑磁盘、记忆棒、软盘、或甚至机械编码设备,诸如在其上记录有指令的凹槽中的打孔卡或凸起结构。如在本文中所使用的,计算机可读存储介质不应被视为暂时性信号本身,暂时性信号诸如无线电波或其它自由传播的电磁波、通过波导或传输介质传播的电磁波、或通过电线传输的电信号。

可以将本文中所描述的计算机可读程序指令从计算机可读存储介质下载到相应的计算设备、或借助网络(例如,因特网、局域网、广域网和/或无线网络)下载到外部计算机或外部存储设备。该网络可以包括铜传输电缆、光学传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。在每个计算设备中的网络接口从网络接收计算机可读程序指令并转发该计算机可读程序指令,用以存储在相应的计算设备内的计算机可读存储介质中。

用于执行本发明的操作的计算机可读程序指令可以为汇编指令、指令集架构(instruction-set-architecture,isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或以一种或多种编程语言(包括面向对象的编程语言和传统程序化编程语言)的任意组合编写的源代码或目标代码。计算机可读程序指令(作为独立的软件包)可以完全地在用户的计算机上、部分地在用户的计算机上、部分地在用户的计算机上且部分地在远程计算机上、或完全地在远程计算机或服务器上执行。在后一种场景中,远程计算机可以通过任何类型的网络(包括lan或wan)连接到用户的计算机,或可以进行与外部计算机的连接(例如通过因特网)。在一些方面中,电子电路(包括例如可编程逻辑电路、现场可编程门阵列(fpga)、或可编程逻辑阵列(programmablelogicarray,pla))可以通过利用计算机可读程序指令的状态信息而执行计算机可读程序指令,以使该电子电路个性化,从而执行本发明的各方面。

在各方面,可以按照模块来处理本发明中描述的系统和方法。本文中所使用的术语“模块”指的是例如现实世界的设备、部件、或使用硬件(例如通过专用集成电路(applicationspecificintegratedcircuit,asic)或fpga)实现的部件的布置,或者指的是硬件和软件的组合,例如通过微处理器系统和实现模块功能的指令集(该指令集在被执行时将微处理器系统转换成专用设备)来实现这样的组合。一个模块还可以被实现为两个模块的组合,其中单独地通过硬件促进某些功能,并且通过硬件和软件的组合促进其它功能。在某些实现方式中,模块的至少一部分(以及在一些情况下,模块的全部)可以在计算机系统(例如,上面在图10中更详细描述的计算机系统)的处理器上运行。因此,每个模块可以以各种合适的配置来实现,而不应受限于本文中所例示的任何特定的实现方式。

为了清楚起见,本文中没有公开各个方面的所有例行特征。应当领会的是,在本发明的任何实际的实现方式的开发中,必须做出许多特定实现方式的决定,以便实现开发者的特定目标,并且这些特定目标将对于不同的实现方式和不同的开发者变化。应当理解的是,这种开发努力会是复杂的且费时的,但对于了解本发明的优点的本领域的普通技术人员来说仍然是工程的例行任务。

此外,应当理解的是,本文中所使用的措辞或术语出于描述而非限制的目的,从而本说明书的术语或措辞应当由本领域技术人员根据本文中所提出的教导和指导结合(一个或多个)相关领域技术人员的知识来解释。此外,不旨在将本说明书或权利要求中的任何术语归于不常见的或特定的含义,除非明确如此阐述。

本文中所公开的各个方面包括本文中以说明性方式所引用的已知模块的现在和未来已知的等同物。此外,尽管已经示出并描述了各个方面和应用,但是对于了解本发明的优点的本领域技术人员将显而易见的是,在不脱离本文中所公开的发明构思的前提下,相比于上文所提及的内容而言的更多修改是可行的。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1