用于保护隐私的广告选择的系统和方法

文档序号:7884604阅读:255来源:国知局
专利名称:用于保护隐私的广告选择的系统和方法
用于保护隐私的广告选择的系统和方法
背景技术
广告有时打算提供给特定群组或特定人口的潜在消费者。在收费电视(例如,有线或卫星)的情况下,通常由用户的机顶盒(STB)将针对性的广告以实况运动图像专家组(MPEG)传输流形式插入到的广告时段中。通常头端(head end)可以控制哪个机顶盒播放特定广告。因为机顶盒做出选择决定,并且用于做出所述决定的私有信息被包含于STB中,而不是在有线/广播头端处,所以通常要求协议是“保护隐私的”。然而,在这种布置下,可以根据在以下过程期间在STB和头端之间的通信推断出私有信息:(I)选择家庭播放广告,和(2)对由这些STB呈现广告的次数进行计数。由头端选择家庭来播放广告的用于针对性投放广告的一个协议如下。从某一外部源头(例如媒体购买者或广告主)向有线/广播头端提供广告宣传。所述广告宣传具有一组相关的标准,该标准描述期望的观看者(例如,净收入大于$100,000的家庭,或者有学龄前儿童的家庭)和待达到的家庭的总数目。每个STB包含关于其家庭的信息(例如,净收入)。当展示广告的时机接近时,头端发送“广告时机”消息到所有的STB,其中所述消息包含用于广告的标识符(广告的内容可以被单独地推送到STB)并且还包含用于展示所述广告的标准。STB利用家庭的私有信息来评价标准是否匹配。如果匹配,则STB发送“符合标准”消息到头端,识别该STB。头端从那些响应的家庭中选择子集(该子集对应于需要达到的家庭数目),并且发送“展示广告”消息到每个所选择的STB,请求展示所述广告。广告可以提前在本地存储于STB硬盘(HD)上,并从HD在本地展示。为了最小化开销,广告的分发器可以在当最少利用带宽时的低流量期间(例如,午夜)将广告文件推送到STB上。在广告被展示之后,从STB向头端发送“广告已展示”消息,允许对广告的单次展示进行计数。这对于为了验证广告已经展示给所需数目的家庭而言是必要的。虽然上述协议没有要求用户的特定私有信息留在STB,但是“符合标准”信息确实通知头端(能访问该消息的任何其它方)特定的STB符合特定的标准。虽然并未通过发送“符合标准”消息而将明确的私有信息(例如,确切的家庭净收入)从STB发送到头端,但是STB向头端提供了关于其具体家庭的私有消息(例如,通过声明家庭符合标准,STB向头端表明该家庭的净收入例如大于$100,000)。因此,传统的协议仍泄露了敏感信息。


图1为示出了可以实现实施例的系统的拓扑的框图。图2为示出了可以实现实施例的系统的可替换拓扑的框图。图3A和图3B示出了描述根据实施例的匿名化协议的流程图。图4为示出了根据实施例的在示例性拓扑中使用匿名化协议的的框图。图5为示出了实施例的全部过程的流程图。图6为示出了根据实施例的由头端初始处理播放广告请求的流程图。图7为示出了根据实施例的由头端处理的STB响应的流程图。
图8为示出了根据实施例的由STB处理以确定是否展示广告的流程图。图9示意性地示出了根据实施例的匿名化协议的使用。图10为示出了在头端处执行的逻辑的软件或固件实施例的框图。图11为示出了在匿名化节点处执行的逻辑的软件或固件实施例的框图。图12为示出了在STB处执行的逻辑的软件或固件实施例的框图。在附图中,附图标记的最左侧数字表示该附图标记第一次出现的图。
具体实施例方式现在将结合附图描述优选实施例,在附图中相似的附图标记表示相同的或功能上类似的元件。而且在附图中,每个附图标记最左侧的数字对应于第一次使用该附图标记的附图。虽然讨论了具体的配置和布置,但是应该理解的是,这只是出于说明的目的。在相关领域中的技术人员将认识到在不偏离说明书的精神和范围的情况下,可以使用其它的配置和布置。对于相关领域的技术人员而言显而易见的是,本发明也可以应用于不同于本文所描述的多种其它系统和应用中。本文公开在例如收费电视(有线或卫星)或互联网内容输送(例如,hulu.com或youtube, com)的多媒体设定中提供针对性投放广告的方法和系统。接收针对性广告的家庭可以保持匿名并且防止暴露私有信息。这可以通过使用匿名化协议和具有用于STB选择和报告的机制的基本结构来实现。通过确保当STB符合定义的标准且向头端发送“符合标准”消息(在选择过程期间)或者“广告已展示”消息(在验证或计数过程期间)时,STB或家庭标识符不被泄露,因而使得家庭消息对头端或其它方是匿名的,这可以使得被选择以播放广告的家庭组匿名。另外,通过仅对符合具体标准的那些家庭投放广告,并且对显示广告的实际实例的数目进行计数,这可以同时允许头端控制广告宣传过程。头端还能够对广告显示的次数进行计数,而不知道哪个单独的家庭观看了该广告。匿名化服务可以利用匿名化协议来允许头端在选择过程期间从STB收集匿名数据。选择协议可以允许头端控制哪个STB可以播放具体广告。匿名化服务可以帮助确定以下两个问题的答案:(I)有多少家庭符合播放广告的标准?和(2)有多少STB播放了具体的广告?图1是示出了可以在实施例中使用的部件的框图。示出的头端110与STB120进行通信。该连接可以允许头端110通知STB120存在显示广告的时机。头端110还可以识别广告和指定在STB120能够展示广告之前必须符合的标准。该信道还可以允许头端请求STB120展示广告。如果STB120确定其家庭符合声明的标准,则STB120可以经由匿名化服务130将该确定传达给头端110。匿名化服务130可以以保护STB120的家庭的匿名性的方式允许STB120告知头端110 =STB120的家庭符合标准。以下将对保护匿名的过程进行更详细地描述。在STB120展示了广告之后,广告被展示的事实可以由STB120通过匿名服务130传达给头端110。因为该传达可能以其他方式泄露STB120的家庭符合声明的标准,所以服务130的使用可以隐藏这个事实,这将在以下进行更详细的描述。虽然在图1中示出了单个STB120,但是在本发明的实施例中,可以在单个家庭中呈现一个或多个STB。所有的这种STB将以与STB120相同的方式与头端110和匿名化服务130进行通信。此外,通常多于一个的家庭具有STB ;再者,这些STB的每一个在其各自的家庭中可以以与STB120相同的方式与头端110和匿名化服务130进行通信。如本领域的普通技术人员可以理解的,头端110和STB120的结构在各种实施例中可以不同。匿名化服务130可以具体化为网络节点,该网络节点包括服务器,或者具有一个或多个可编程处理器的其它装置,或者具有需要连接头端110和STB120的电路的其它装置。这种网络节点可以被视为匿名化节点。如将在下文中更加详细描述的,匿名化服务130还可以包括以硬件、软件、固件或其一些组合来实现匿名化协议的功能。在本发明的实施例中,头端和STB之间的通信可以通过内容分发网络。这在图2的实施例中示出。这里,图示出头端210经由内容分发网络215与STB220进行通信。在这种实施例中,匿名化服务230可以与头端210进行通信。此外,匿名化服务230可以经由头端210及其内容分发网络215与STB220进行通信。如将在以下描述的,匿名化协议可以用于对头端210隐藏家庭的私有信息。图3A和图3B示出了根据实施例的匿名化协议。需要注意的是,在以下描述和附图中,Ε(Κ”Χ,...)表示利用密钥Ki对数据字段(X,...)进行加密。类似地,D(Kj, y,...)表示利用密钥&对数据字段y进行解密。如图3A和图3B中示出的协议可以用于在针对性投放广告过程中保护家庭的隐私。图示的协议的步骤被示出用于将通用数据从STB传输到头端。如将在以下描述的,例如,该数据可以是关于家庭是否符合某些市场标准的指示,或者可以是在家庭展示了广告的指示。

在305处,STB可以执行公钥加密过程以对数据进行加密。为了执行该加密,STB可以使用公开密钥对的公开部分,其中对应的私有部分由头端持有。与头端相关的该公开加密密钥在本文称为Kpuh,而头端处所持有的相关私有部分在本文称为KM。因此在305处示出的数据加密为E (Kpuh, data)S卩,利用密钥1(_对数据加密。应注意,以下描述的所有利用公钥对数据加密都可以实施为利用公钥的对称密钥加密,其中对称密钥接着被用于加密数据。在310处,在实施例中STB可以结合该加密结果和用于STB的标识符(示为“10^”)、时间戳(“^!116”)和认证信息(“31^_丨1^0”)。时间戳可以是时间和日期的指示,或者可以是周期递增计数器的值。认证信息可以是系统范围密码或者局部密码、特定于STB的密码、或者利用STB已知的私钥签名的数据字段的散列(其中匿名化服务已知该密钥的公开部分)。时间戳和认证信息可以用在接收者(匿名化服务)处以验证通信的合法性,这将在下文中进行描述。在实施例中,E(K_ data)、IDSTB、时间戳和认证信息的结合可以表现为这些值的二进制表示的拼接。在315处,STB可以利用另一公开密钥对的公开部分Kbja对该结合加密。该密钥对的私有部分Km可由匿名化服务持有。在315处,STB因而执行E (Kpua, E (Kpuh, data), IDstb, time, auth_info)在320处,STB可以将结果发送给匿名化服务。应注意,自头端接收到“广告时机”消息的每个STB可以执行序列305-320。
在325处,匿名化服务可以利用其私钥Kpri对每个接收到的消息E (Kpua, E (Kpuh, data), IDstb, time, auth_info)进行解密。应该存在接收自从头端接收到“广告时机”消息的每个STB的一个这样的消息。因此,匿名化服务可以对每个接收到的消息执行以下操作D (KPrA, E (Kpua, E (KPuH, data), IDstb, time, auth_info))这可以为每个STB 产生值 E(KPuH,data)、IDstb, time、auth_info。现在参考图 3B,在360处,对于从STB接收到的每个消息,匿名化服务随后可以校验时间戳以验证其是足够近期的且与先前接收到的任何其它消息的时间戳不匹配。如果时间戳太老或者与先前接收到的消息的时间戳匹配,则新接收到的消息可能是副本或者是延迟消息,可能由黑客或想要危害协议的其它第三方发送的。匿名化服务还校验认证数据以验证发送方(即,STB)的合法性。在362处,匿名化服务可以对从各自STB处接收到的所有消息E (KPuH, data)计算校验和。该校验和可以是循环冗余码(CRC)或其它校验值。在可替换实施例中,校验和可以是密码函数的输出。在365处,匿名化服务可以利用Kaffl对新的时间戳和校验和进行加密:E (Kpuh, time, checksum)在370处,匿名化服务可以将E(KPuH, time, checksum)和每个E(KPuH, data)作为消息的集合组发送给头端。通过发送来自每个STB的消息E(KPuH, data)的全部集合,可以保护各个个体STB的匿名。在375处,头端可以对这些值进行解密。因此,头端可以执行解密D (KPrH, E (Kpuh, time, cheksum))并恢复时间和校验值。头端还可以为每个E(K_,data)执行D (KPrH, E (Kpuh, data))并恢复数据。作为该协议的结果,头端可能永远都不会知道数据源头(S卩,STB及其家庭)的身份。可以在匿名化服务处识别源头,但是不会泄露给头端。此外,因为源头的身份可以在STB和匿名化服务之间进行加密,所以外部观察者也同样不能识别数据源头。另外,因为数据在被头端接收之前维持为加密的,所以匿名化服务不能确定从STB向头端发送什么信息。根据实施例,图4示出了信息流。若干STB中的每个,STB1,…3 (也分别标记为421,422,…,423),可以执行公钥加密过程以对数据进行加密。为了执行该加密,STB可以利用公开密钥对的公开部分Km,其中对应的私有部分Krih可以由头端410持有。对数据加密的结果可以示出为E (Kpuh, data)在实施例中,每个STB可以结合该加密结果和用于STB的标识符(示为“IDSTBi”)、时间戳和认证信息。时间戳和认证信息可以用在接收者(匿名化服务430)处以验证通信的合法性。每个STB可以利用公开部分Km对该结合进行加密。该密钥对的私有部分Km可由匿名化服务430持有。每个STBi因而可以执行 E (Kpua, E (Kpuh, (Iatai), IDstm, time, auth_info)。然后每个STB可以将其结果发送给匿名化服务430。匿名化服务430可以利用其私钥Km对接收到的消息进行解密。这产生值E(Kpuh, (Iatai)、IDSTB1、time和auth_info。匿名化服务430随后可以校验时间戳以验证其与先前接收到的任何其它消息的时间戳不匹配。匿名化服务430还可以校验认证数据以验证每个发送方(即,STBi)的合法性。匿名化服务430可以接收来自许多节点的结果E (Kpuh, (Iatai),每个结果来自每个STBi0在超时后,匿名化服务可以收集所有这些结果,并以随机次序组合它们。匿名化服务430还可以利用Krih对结果列表的新的时间戳和校验和进行加密:E (Kpuh, time, checksum)匿名化服务430可以向头端410发送E (Kpuh, time, checksum)和包含每个E(Krih, data,)的随机排序列表。头端410随后可以对这些值进行解密。因此,头端410可以执行解密D (KPrH, E (Kpuh, time, cheksum))并恢复时间和校验值。头端410可以校验所述校验和与接收到的数据是一致的,以及所述时间戳与先前接收到的消息的时间戳不匹配。头端还可以执行D (KPrH, E (Kpuh, (Iatai))并恢复每段Clatait5在一个实施例中,每个STB可以为其各自的家庭提供娱乐和广告内容。这些家庭在图4中示为家庭471,…,473。通常,STB可以访问或存储要求隐私的信息,例如:家庭收入、家庭成员的人口统计资料、家庭的地理位置等。就是该家庭信息可以用来匹配用于广告的标准。例如,广告可以针对具有某一收入水平的家庭,或者具有某个年龄组居民的家庭。如果符合标准,则STBi可以在Clatai中声明其家庭符合标准并且适合观看广告。在实施例中,头端410可以是内容分发器460的基本结构的一部分。例如,内容分发器460可以是有线电视公司、卫星电视公司或者互联网内容输送提供者。匿名化服务430可以由第三方480管理,而不依赖内容分配器460。根据实施例,以上讨论的匿名化协议可以如图5所示使用。在510处,由头端接收并处理分发广告的请求。该请求可以伴随有用于显示的标准,从而使广告针对符合这些标准的家庭,以及应该达到的家庭数目。头端可以用“广告时机”消息将标准和用于广告的标识符发送给STB。在实施例中,实际的广告(例如,以及音频/可视文件)可能已经预先被分发给所有的STB并存储在其中。因此,头端能够向STB发送广告的ID而无需发送实际的广告。在520处,所有的STB可以检查“广告时机”消息中的标准,将该标准与存储在STB上的关于STB的家庭的信息进行比较,并确定是否符合标准。然后通过发送“符合标准”消息经由匿名化服务应答头端。为此,可以使用参考图3A、图3B和图4在以上讨论的匿名化协议。在这种情况下,由每个STB传输给头端的数据可以包括关于STB的家庭是否符合标准的指示。

在530处,头端可以处理匿名化的“符合标准”响应,并确定已经以肯定方式响应(即,表明其各自的家庭符合标准)的STB的数目。然后头端可以向所有的STB广播展示广告的请求。在实施例中,该消息可以由头端进行加密。在这种实施例中,可以利用头端持有的私钥执行加密,其中在每个STB处解密所需要的对应的公钥是公开可获得的。这种布置将防止未认证方出于传输的目的冒充头端。
在540处,每个STB可以确定是否将展示广告。如将在下文中更详细描述的,该确定可以包括但不限于关于是否符合标准的确定。如果STB确定将展出广告,则可以展出广
生口 ο在550处,再次使用以上描述的匿名化服务和协议,每个STB可以用“广告已展示”消息向头端发送广告的标识符和是否播放广告的指示。对于STB发送的每条消息,数据字段包含关于是否展示广告的指示,而不是关于是否符合标准的指示。在560处,头端可以对展示广告的家庭的数目进行计数。根据实施例,图6更详细地示出了分发广告(图5的510)的请求的处理。在610处,在头端处接收来自外部源头的请求,要求播放广告。在实施例中,该请求可以包括用于广告的标识符(“ad ID”)、用于待播放广告的家庭的标准(例如,特定家庭人口统计资料或收入水平)、以及请求播放广告的家庭的数目(“N”)。在有些环境下,可能期望在尽可能多的家庭中播放广告。在这种情况下,N将具有无限值。在620处,确定N是否具有无限值。如果N不是无限的且具有有限值,则在640处在头端缓存标准、N和广告标识符,并且在650处将消息发送给所有的STB,其中所述消息包括广告标识符和标准。该消息可以声明具 有时机为符合所声明的标准的家庭展示识别出的广告。如果N具有无限值,则在630处头端可以发送消息到所有的STB,告知所有的STB如果其符合标准则展示广告,指定标准,并定义值Pstow=I。值Pshtw的使用将在后文中进行更详细描述。关于这点,将该值设置为I有效地告知每个STB如果其符合标准则其适合展示广告。根据实施例,图7更详细地示出了由头端处理的STB响应(图5的530)。在710处,头端可以从各个STB处接收表明其对应的家庭符合标准的一条或多条消息。需要注意的是,虽然头端接收这些消息,但是头端不会知道已响应的具体家庭或者STB的身份。在720处,如上所述,头端可以利用其公开密钥对的私有部分对这些消息进行解密。在730处,头端可以对肯定性响应的数目进行计数,以获悉符合标准的家庭的总数目M。否定性响应将被忽略。在740处,确定是否M〈N。如果不是,则在750处头端可以定义Psh =N/M,其中N是广告主要求或期望观看广告的家庭的数目。该值表示为达到目标N,被要求观看广告的适合的家庭(即,符合标准的家庭)的比率。如果740处的条件为真,则被要求观看广告的家庭的数目符合或者超过满足标准的家庭的数目。在这种情况下,可以为所有适合的家庭展示广告。如将在下文进行描述的,这通过设置Pshw=I成为可能。在770处,可以将消息发送给所有的STB,告知所有的STB如果其对应的家庭满足标准,则它们适合展示广告,暂停涉及Pstow的STB处的进一步处理,这将在以下进行描述。在实施例中,该消息可以包括用于广告的标识符、标准和PshOTt。此外,在实施例中,可以以加密形式发送这些值(利用头端的密钥对的私有部件Km进行加密)。根据实施例,图8更详细地示出了确定是否展示广告(图5的540)。在805处,STB可以从头端接收包括广告ID、标准和Pstow的“展示广告”消息。在810处,在STB处做出关于家庭是否符合标准的确定。如果不符合,则在820处STB可以准备经由匿名化协议待发送给头端的否定的“广告已展示”消息;该消息可以在550处经由匿名化协议发送给头端。否则,在830处,可以生成随机数P,其中0〈P〈1。在实施例中,可以利用噪声源产生随机数P ;可替换地,可以利用确定性的伪随机数据源生成P。在840处,可以做出关于是否P〈PshOT的确定。如果是,则在850处可以展示广告。如果不是,则在820处STB可以准备经由匿名化协议到头端的否定的“广告已展示”消息。在860处,可以准备表示广告已经展示的消息。该消息可以在550处经由匿名化协议发送给头端。回顾如果N为无限的(意味着对所有符合标准的家庭展示广告),则头端定义PshMt=l。如果头端定义Pshtw等于1,则对于符合标准的每个家庭(在810处),STB生成随机数P (在830处),其中P〈PslTOW,并且在850处在每个这种家庭中展示广告。当N不是无限的时,则如头端处定义的,Psh(W=N/M。通过使得每个STB选择随机数P (在830处)并且确定如果P〈PshOTt (在840处),则期望的展示广告(在850处)的家庭的数目将等于N。应注意的是,在某些实施例中,在头端处获得的Pstow的值可能与在750处示出的计算获得的值稍微不同。例如,如果头端希望将显示广告的机会减小到小于N个家庭,则头端可以少量增加Pstow的值。这将导致展示广告的STB的较大的组。类似地,如果头端希望将显示广告的机会减小到多于N个家庭,则头端可以少量减小Pshw的值。根据实施例,图9示意性地示出了以上应用的匿名化协议。在910处,头端可以发布消息给所有的STB,宣布展示广告的时机。该消息可以包括用于广告的ID以及用于展示广告的标准。在920处,每个STB可以用声明标准是否由特定家庭满足的消息进行响应。可以将这些消息发送给匿名化服务。每个消息可以包括是否符合标准的加密指示,其中所述加密是利用非对称密钥对的公开部执行的。该密钥对的私有部分可以仅由头端持有。该加密指不不出为E(KPuH, criteria_met_y/n),其中criteria_met_y/n占据图3A和图3B中示出的数据字段。可以利用另一非对称密钥对的公开部分KM,对该加密的指示连同STB(示为STBi)的ID、时间戳以及认证信息进一步加密。后一公开密钥对的私有部分可以由匿名化服务持有。因此,所述消息示出为E(KPuA,E(KPuH,criteria_met_y/n), IDstm, time, auth_info),其中这样的消息可以由每个STBi生成用以传输至匿名化服务。虽然附图示出用于不同STB的三个这种消息,但是可以理解的是STB (以及相关消息)的总数目可以更多或更少。匿名化服务可以利用其私钥对每个这种消息进行解密,以恢复STBi的ID、时间戳以及认证信息。后两个值可以由匿名化服务按如上所述进行校验。该解密还可以恢复关于STBi是否符合标准的加密指示E (KPuH, criteria_met_y/n)。然后在930处,可以将该加密的指示与从每个STBi处接收的指示结合并作为一组被匿名化服务转发到头端。在实施例中,在发送给头端之前加密指示组的次序可以是随机的。匿名化服务还可以发送广告的ID、时间戳和作为加密指示的函数的校验和。可以利用Krih对这后三个值进行加密。然后头端利用其私钥对接收到的消息进行解密,以识别广告并对符合标准的STB的数目进行计数。头端永远不知道符合标准的具体STB的身份。校验和也可以校验接收到的时间戳和校验和值。部分基于表明符合标准的家庭的数目,头端可以如上所述计算Pstow值。在940处,头端然后可以发送消息给每个STB,指示STB如果符合标准并且如果值P(如上所述在STB处生成的)允许则展示广告。如上所述,可以由头端利用Km对该消息进行加密。在这种情况下,每个STB将利用Kpuh对该消息进行解密。
然后有些STB将展示广告,而另一些STB不展示。在每个STB处可以生成加密指示,识别广告并且声明广告是否被展示。可以利用Kaffl对该指示进行加密,并示出为E (Kpuh, ad ID, ad_shown_y/n)。这里,字段 ad ID 和 ad_shown_y/n 共同表不图 3A 和图 3B 中示出的数据字段。在该指示中未识别出特定STB。然后,利用Kbja,对该指示连同STB的标识符、时间戳和认证信息进一步进行加密。因此该消息示出为E(Kpua, E(KPuH,ad ID, ad_shown_y/n),IDstm, time, auth_info)。在950处,每个STB发送这种消息到匿名化服务,并入STB是否展示广告的适当指示。然后匿名化服务可以对消息解密以恢复STBi的ID、时间戳和认证信息。可按如上所述对后两个值进行校验。该解密还可以产生关于广告是否被展示的加密指示E(K_,ad_shown_y/η)。然后结合该加密指示和来自每个STBi的指示,并在960处共同地被匿名化服务转发到头端。匿名化服务还可以发送广告的ID、时间戳以及作为加密指示的函数的校验和。可以利用Kpuh对这后三个值进行加密。然后头端可以利用其私钥对接收到的消息解密,以识别广告并处理校验和与时间戳。然后头端能够对展示广告的STB的数目进行计数。本文中公开的一个或多个特征可以以硬件、软件、固件及其组合实现,包括分立的和集成的电路逻辑、专用集成电路(ASIC)逻辑、可编程门阵列和/或微控制器,或者可以实现为特定域集成电路封装的一部分,或者集成电路封装的组合。如本文中所使用的术语“软件”指的是包括计算机可读介质的计算机程序产品,所述计算机可读介质内存储有计算机程序逻辑以使得计算机系统执行本文公开的一个或多个特征和/或特征组合。在图10-图12中示出的计算系统的环境下说明了软件或固件实施例。在图10中,系统1000可以位于头端处,并可以包括处理器1020和包括存储计算机程序逻辑1040的一个或多个计算机可读介质的存储器1010的主体。例如,存储器1010可以实施为硬盘及驱动器、诸如光盘及驱动器的可移动介质,只读存储器(ROM)或随机存取存储器(RAM)设备。处理器1020和存储器1010可以利用本领域普通技术人员已知的任意多种技术(例如,总线)进行通信。包含于存储器1010内的计算机程序逻辑1040可以由处理器1020读取和执行。共同示为1/01030的一个或多个I/O端口和/或I/O设备也可以连接到处理器1020和存储器1010。计算机程序逻辑1040可以包括初始请求处理逻辑1050。该逻辑负责处理在头端从广告主或内容提供者处接收到的播放广告的初始请求。如上所述,这种初始请求还可以包括用于具体广告的标识符、用于可以播放广告的家庭的标准,以及表示待观看广告的家庭的数目的值N。初始请求处理逻辑1050可以负责在N为无限的时指示STB展示广告,否则告知STB存在展示该广告的时机。计算机程序逻辑1040还可以包括STB响应处理逻辑1060。该逻辑主体可以负责从STB接收表示已经符合标准的消息、对这些消息解密、对肯定性响应的数目进行计数、在必要时计算Pshmt,以及指示STB展示广告。应注意的是,在替换实施例中,可以由逻辑1060控制解密过程,其中实际的解密可以由一个或多个硬件组件执行。计算机程序逻辑1040还可以包括统计数据收集逻辑1070。逻辑1070可以负责从STB接收指示广告是否已经被展示的消息,并对已经展示了广告的家庭的总数目进行计数。在替换实施例中,可以不同地组织计算机程序逻辑1040以便实施本文描述的处理。可以使用不同的逻辑模块代替图10中所示出的模块。此外,在替换实施例中,如本领域中普通技术人员可以理解的,可以使用更多或更少的逻辑模块。参照图11,系统1100可以位于匿名化服务中,并可以包括处理器1120和包括存储计算机程序逻辑1140的一个或多个计算机可读介质的存储器1110的主体。例如,存储器1110可以实施为硬盘及驱动器、诸如光盘及驱动器的可移动介质,只读存储器(ROM)或随机存取存储器(RAM)设备。处理器1120和存储器1110可以利用本领域普通技术人员已知的任意多种技术(例如,总线)进行通信。包含于存储器1110内的计算机程序逻辑1140可以由处理器1120读取和执行。共同示为1/01130的一个或多个I/O端口和/或I/O设备也可以连接到处理器1120和存储器1110。计算机程序逻辑1140可以包括解密逻辑1150。该逻辑可以负责如上所述对来自STB的加密消息进行解密。计算机程序逻辑1140还可以包括验证逻辑1160,该逻辑可以负责验证包含于那些消息中的数据(例如认证数据),并如上所述校验时间戳。计算机程序逻辑1140还可以包括加密逻辑1170。逻辑1170可以负责如上所述对待发送给头端的消息进行加密。在替换实施例中,可以不同地组织计算机程序逻辑1140以便实施本文描述的处理。可以使用不同的逻辑模块代替图11中所示出的模块。此外,在替换实施例中,如本领域中普通技术人员可以理解的,可以使用更多或更少的逻辑模块。此外,虽然图11的实施例提出加密和解密可以由软件或固件执行,但是在替换实施例中,加密和解密可以由硬件执行。在这种实施例中,对加密和解密操作的控制可按计算机程序逻辑1140的指示由处理器1120执行。参照图12,系统1200可以位于STB处,并可以包括处理器1220和包括存储计算机程序逻辑1240的一个或多个计算机可读介质的存储器1210的主体。例如,存储器1210可以实施为硬盘及驱动器、诸如光盘及驱动器的可移动介质,只读存储器(ROM)或随机存取存储器(RAM)设备。处理器1220和存储器1210可以利用本领域普通技术人员已知的任意多种技术(例如,总线)进行通信。包含于存储器1210内的计算机程序逻辑1240可以由处理器1220读取和执行。共同示为1/01230的一个或多个I/O端口和/或I/O设备也可以连接到处理器1220和存储器1210。计算机程序逻辑1240可以包括家庭评价逻辑1250。该逻辑可以负责比较关于家庭的信息和用于展示广告的标准,以便确定是否符合标准。计算机程序逻辑1240还可以包括加密逻辑1260,例如如上所述,该逻辑可以负责对指示是否符合标准的消息以及指示是否已展示广告的消息进行加密。计算机程序逻辑1240还可以包括解密逻辑1270。逻辑1270可以负责对消息(例如来自头端告知STB展示广告的消息)进行解密。计算机程序逻辑1240还可以包括随机化逻辑1280,该逻辑可以负责确定如上所述的O到I之间的随机值。可替换地,在实施例中,随机化过程可以利用用于生成随机值的硬件,在这种情况下,逻辑1280可以负责控制随机化硬件或对其采样。计算机程序逻辑1240还可以包括显示决定逻辑1290,如上所述,给定随机值P和接收到的值Pshmt,该逻辑可以负责确定是否展示广告。在替换实施例中,可以不同地组织计算机程序逻辑1240以便实施本文描述的处理。可以使用不同的逻辑模块代替图12中所示出的模块。此外,在替换实施例中,如本领域中普通技术人员可以理解的,可以使用更多或更少的逻辑模块。此外,虽然图12的实施例提出加密和解密可以由软件或固件执行,但是在替换实施例中,加密和解密可以由硬件执行。在这种实施例中,对加密和解密操作的控制可按计算机程序逻辑1240的指示由处理器1220执行。借助于示出功能、特征以及其关系的功能构件,本文公开了方法和系统。为了便于描述,本文中随意定义了这些功能部件的至少部分界限。可以定义替换界限,只要适当实现了其特定功能和关系。虽然本文公开了各种实施例,但是应该理解的是这些实施例仅是通过示例而非限制的方式呈现。对相关领域的技术人员显而易见的是,在不偏离本文公开的方法和系统的精神和范围的情况下,可以对所述方法和系统的形式和细节做出多种改变。因此,权利要求的广度和范围不应受到本文公开的任何示例性实施例的限制。
权利要求
1.一种方法,包括: 在匿名化服务节点处接收来自多个机顶盒(STB)的信息,所述信息由每个STB利用第一公开密钥对的公开部分进行加密,来自每个STB的所述信息包括: STB的标识符, 广告的标识符,以及 关于是否符合用于显示所述广告的一个或多个标准的指示,其中, 以第二公开密钥对的公开部分对所述指示加密; 对来自每个STB的加密信息进行解密,以恢复每个STB的所述标识符; 利用所述第二公开密钥对的所述公开部分对所述广告的所述标识符进行加密;以及将所有加密的指示和所述广告的所述加密的标识符一起转发给头端,使得所述头端对符合所述标准的STB的数目M进行计数, 其中,所述第一公开密钥对的私有部分在所述匿名化服务节点处持有并且对于所述头端是不可得的,所述第二公开密钥对的私有部分在所述头端处持有并且对于所述匿名化服务是不可得的。
2.根据权利要求1所述的方法,其中,来自每个STB的所述信息还包括第一时间戳和认证数据,从而也利用所述第一公开密钥对的所述公开部分对所述第一时间戳和所述认证数据进行加密;以及 其中,根据权利要求1所述的方法还包括: 在对来自每个STB的所述加密信息进行解密之后,验证所述认证数据并且确定所述第一时间戳是否与先前接收到的任意时间戳匹配。
3.根据权利要求1所述的方法,还包括: 在所述匿名化服务节点处接收来自每个STB的、利用所述第一公开密钥对的所述公开部分进行加密的进一步信息,,所述进一步信息包括: 所述STB的标识符,以及 在所述STB处是否显示了所述广告的指示,所述指示被利用所述第二密钥对的所述公开部分加密, 对来自每个STB的加密的进一步信息进行解密,以恢复每个STB的标识符,所述解密利用所述第一公开密钥对的私有部分来执行; 利用所述第二公开密钥对的公开部分对所述广告的标识符进行加密;以及将是否显示所述广告的所有加密的指示和所述广告的加密的标识符一起转发给所述头端,使得所述头端对显示所述广告的STB的数目进行计数。
4.根据权利要求3所述的方法,其中,所述进一步信息包括认证数据和第二时间戳,从而也利用所述第一公开密钥对的所述公开部分对所述认证数据和所述第二时间戳进行加密;以及 其中,根据权利要求3所述的方法还包括: 在对所述加密的进一步信息进行解密之后,验证所述认证数据并且确定所述第一时间戳是否与先前接收到的任意时间戳匹配。
5.根据权利要求4所述的方法,还包括: 基于所述STB的对应的是否显示所述广告的指示来计算校验和;利用所述第二公开密钥对的所述公开部分,对所述校验和与所述第二时间戳进行加密;以及 将所述加密的校验和与第二时间戳连同每个STB的对应的是否显示所述广告的指示一起转发给所述头端。
6.根据权利要求3所述的方法,其中,是否显示所述广告的所述指示是在每个STB处生成的, 其中,响应于从所述头端发布到每个STB的命令,在每个STB处做出关于是否显示所述广告的决定,其中,所述命令包括参数Psh =N/M, 其中,N为期望观看所述广告的家庭的数目,并且M是由所述头端计数的指示符合所述标准的家庭的数目; 其中,在接收到所述命令之后,每个STB创建O到I之间的随机数,并且仅在所述随机数小于或等于Pstow时显示所述广告。
7.根据权利要求1所述的方法,其中,响应于来自所述头端的识别显示所述广告的时机并且指定用于显示所述广告的所述标准的广播,所述STB创建符合所述标准的指示。
8.一种系统,包括: 处理器;以及 与所述处理器进行通信的存储器,所述存储器用于存储多个处理指令以指示所述处理器进行以下操作: 接收来自多个机顶盒( STB)的信息,所述信息由每个STB利用第一公开密钥对的公开部分进行加密,来自每个STB的所述信息包括: STB的标识符, 广告的标识符,以及 关于是否符合用于显示所述广告的一个或多个标准的指示, 其中,以第二公开密钥对的公开部分对所述指示进行加密; 对来自每个STB的所述加密信息进行解密,以恢复每个STB的所述标识符; 利用所述第二公开密钥对的所述公开部分对所述广告的所述标识符进行加密;以及将所有加密的指示和所述广告的所述加密的标识符一起转发给头端,使得所述头端对符合所述标准的STB的数目M进行计数, 其中,所述第一公开密钥对的私有部分在匿名化服务节点处持有并且对于所述头端是不可得的,所述第二公开密钥对的私有部分在所述头端处持有并且对于所述匿名化服务是不可得的。
9.根据权利要求8所述的系统,其中,来自每个STB的信息还包括第一时间戳和认证数据,从而也利用所述第一公开密钥对的公开部分对所述第一时间戳和所述认证数据进行加密;以及 其中,所述存储器还存储处理指令以指示所述处理器进行以下操作: 在对来自每个STB的加密的信息进行解密之后,验证所述认证数据并且确定所述第一时间戳是否与先前接收到的任意时间戳匹配。
10.根据权利要求8所述的系统,其中,所述存储器还存储处理指令以指示所述处理器进行以下操作:在所述匿名化服务节点处接收来自每个STB的进一步信息,利用所述第一公开密钥对的公开部分对所进一步述信息进行加密,所述进一步信息包括: 所述STB的标识符,以及 在所述STB处是否显示了所述广告的指示,所述指示被利用所述 第二密钥对的所述公开部分进行加密; 对来自每个STB的加密的进一步信息进行解密,以恢复每个STB的标识符,所述解密利用所述第一公开密钥对的私有部分来执行; 利用所述第二公开密钥对的公开部分对所述广告的标识符进行加密;以及将是否显示所述广告的所有加密的指示和所述广告的加密的标识符一起转发,使得所述头端对显示所述广告的STB的数目进行计数。
11.根据权利要求10所述的系统,其中,所述指示进一步信息包括认证数据和第二时间戳,从而也利用所述第一公开密钥对的公开部分对所述认证数据和所述第二时间戳进行加密;以及 其中,所述存储器进一步存储处理指令以指示所述处理器进行以下操作: 在对所述加密的进一步信息进行解密之后,验证所述认证数据并且确定所述第二时间戳是否与先前接收到的任意时间戳匹配。
12.根据权利要求11所述的系统,其中,所述存储器还存储处理指令以指示所述处理器进行以下操作: 基于所述STB的对 应的是否显示所述广告的指示来计算校验和; 利用所述第二公开密钥对的公开部分,对所述校验和与所述第二时间戳进行加密;以及 将所述加密的校验和与所述第二时间戳连同每个STB的对应的是否显示所述广告的指示一起转发。
13.根据权利要求10所述的系统,其中,是否显示所述广告的所述指示是在每个STB处生成的, 其中,响应于从所述头端发布到每个STB的命令,在每个STB处做出关于是否显示所述广告的决定,其中,所述命令包括参数Psh =N/M, 其中,N为期望观看所述广告的家庭的数目,并且M是由所述头 端计数的指示符合所述标准的家庭的数目;并且 其中,在接收到所述命令之后,每个STB创建O和I之间的随机数,并且仅在所述随机数小于或等于Pstow时显示所述广告。
14.根据权利要求8所述的系统,其中,响应于来自所述头端的广播,所述STB创建符合所述标准的指示,所述广播识别显示所述广告的时机并且指定用于显示所述广告的所述标准。
15.一种包括存储有计算机程序逻辑的计算机可用介质的计算机程序产品,计算机控制逻辑包括: 配置为使得处理器接收来自多个机顶盒(STB)的信息的逻辑,所述信息由每个STB利用第一公开密钥对的公开部分进行加密,所述来自每个STB的信息包括: STB的标识符,广告的标识符,以及 关于是否符合用于显示所述广告的一个或多个标准的指示,其中,以第二公开密钥对的公开部分对所述指示进行加密; 配置为使得处理器对来自每个STB的所述加密信息进行解密以恢复每个STB的所述标识符的逻辑; 配置为使得处理器利用所述第二公开密钥对的所述公开部分对所述广告的所述标识符进行加密的逻辑;以及 配置为使得处理器将所有加密的指示和所述广告的所述加密的标识符一起转发给头端,使得所述头端对符合所述标准的STB的数目M进行计数的逻辑, 其中,所述第一公开密钥对的私有部分在匿名化服务节点处持有并且对于所述头端是不可得的,所述第二公开密钥对的私有部分在所述头端处持有并且对于所述匿名化服务是不可得的。
16.根据权利要求15所述的计算机程序产品,其中,来自每个STB的所述信息还包括第一时间戳和认证数据,从而也利用所述第一公开密钥对的公开部分对所述第一时间戳和所述认证数据进行加密;以及 其中,所述计算机控制逻辑还包括: 配置为使得处理器在对来自每个STB的加密的信息进行解密之后,验证所述认证数据并且确定所述第一时间戳是否与先前接收到的任意时间戳匹配的逻辑。
17.根据权利要求15所述的计算机程序产品,其中所述计算机控制逻辑还包括: 配置为使得处理器在所述匿名化服务节点处接收来自每个STB的进一步信息的逻辑,所述进一步信息被利用所述第一公开密钥对的公开部分进行加密,所述进一步信息包括:所述STB的标识符,以及 在所述STB处是否显示了所述广告的指示,所述指示被利用所述第二密钥对的公开部分进行加密, 其中,利用所述第一公开密钥对的公开部分对是否显示所述广告的指示进行加密; 配置为使得处理器对来自每个STB的加密的进一步信息进行解密以恢复每个STB的标识符的逻辑,所述解密被利用所述第一公开密钥对的私有部分来执行;以及 配置为使得处理器将是否显示所述广告的所有加密的指示和所述广告的加密的标识符一起转发给所述头端,使得所述头端对显示所述广告的STB的数目进行计数的逻辑。
18.根据权利要求17所述的计算机程序产品,其中,所述进一步信息包括认证数据和第二时间戳,从而也利用所述第一公开密钥对的公开部分对所述认证数据和所述第二时间戳进行加密;以及 其中,所述计算机控制逻辑还包括: 配置为使得处理器在对所述加密的进一步信息进行解密之后,验证所述认证数据并且确定所述第二时间戳是否与先前接收到的任意时间戳匹配的逻辑。
19.根据权利要求18所述的计算机程序产品,其中,所述计算机控制逻辑还包括: 配置为使得处理器基于所述ST B的对应的是否显示所述广告的指示来计算校验和的逻辑; 配置为使得处理器利用所述第二公开密钥对的公开部分对所述校验和与所述第二时间戳进行加密的逻辑;以及 配置为使得处理器将所述加密的校验和与所述第二时间戳连同每个STB的对应的是否显示所述广告的指示一起转发给所述头端的逻辑。
20.根据权利要求17所述的计算机程序产品,其中,是否显示所述广告的所述指示是在每个STB处生成的, 其中,响应于从所述头端发布到每个STB的命令,在每个STB处做出关于是否显示所述广告的决定,其中所述命令包括参数Psh =N/M, 其中,N为期望观看所述广告的家庭的数目,并且M是由所述头端计数的指示符合所述标准的家庭的数目;并且 其中,在接收到所述命令之后,每个STB创建O和I之间的随机数,并且仅在所述随机数小于或等于Pstow时显 示所述广告。
全文摘要
在收费电视设置中提供针对性投放广告的方法和系统,其中接收针对性广告的家庭可以保持匿名。这可以通过结合匿名化协议和具有用于STB选择和报告的机制的基本结构来实现。通过确保在STB符合定义的标准并发送“符合标准”消息(在选择过程期间)或者“广告已展示”消息(在有效或计数过程期间)到头端时不泄露STB或家庭标识符,从而使得家庭信息对于头端是匿名的,这使得被选择以播放广告的家庭组匿名化。另外,这允许头端通过仅向符合具体标准的那些家庭投放广告来控制广告宣传过程,且允许头端对显示广告的实际实例的数目进行计数。头端能够对广告显示的数目进行计数,而不知道哪个特定的家庭观看了广告。
文档编号H04N21/266GK103081493SQ201180039025
公开日2013年5月1日 申请日期2011年7月1日 优先权日2010年7月9日
发明者M·D·亚维斯, S·加尔 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1