用于向授权用户分发内容项目的方法、内容拥有者设备、计算机程序和计算机程序产品的制作方法

文档序号:9732395阅读:330来源:国知局
用于向授权用户分发内容项目的方法、内容拥有者设备、计算机程序和计算机程序产品的制作方法
【技术领域】
[0001]本公开涉及用于向授权用户分发内容项目的方法、内容拥有者设备和计算机程序
τ?: 口广PR ο
【背景技术】
[0002]万维网(“网络”)日益增大。许多网络用户在日常生活的每一天中都使用通信设备(例如个人电脑(PC)、电话、平板、相机和互联网协议电视(IPTV)设备)多次访问网络。移动技术的进步使用户更容易地获取内容(例如音频内容、视频内容、图像内容),并且不同的社交网络和视频分享网站使用户能够在网络上分享这些内容。内容数量正在快速增长,研究人员也在研究更加智能的方式来搜索、获取和分享这些内容。
[0003]已有许多商业服务使搜索、推荐和分享内容成为可能,例如YouTube和Facebook。
[0004]YouTube使向YouTube上传内容项目(在这种情况下为视频文件)的内容拥有者能够指定内容项目的隐私设置。例如,内容拥有者可以指定是否应当将视频的隐私设置设置为“公开”、“私密”或“未发布”。“公开”的隐私设置允许任何人观看该视频。“私密”视频只能被内容拥有者和最多五十个受邀用户观看。“未发布”视频意味着仅具有该视频的链接的人才能观看,并且该视频不在YouTube上发布。因此,“公开”视频完全没有任何访问控制,私密视频依赖于100%信任的服务器,并且未发布视频依赖于“隐晦即安全”(security byobscurity)且不满足“诚实但好奇” (honest but cur1us)模型。类似地,Facebook允许其用户对用户上传至Facebook的信息设置访问权,但是用户必须依赖于Facebook正确执行用户指定的访问权。参见例如,Hart,Μ.等,Less Control: Access Control In the Web 2.0,In Proceedings of the Web 2.0 Security&Privacy Workshop(W2SP,07)(2014年2月25日可获取于 www.cs.sunysb.edu/?rob/papers/cbac_w2sp07.pdf)
[0005]需要例如用于向授权用户分发内容项目的改进方法。

【发明内容】

[0006]内容拥有者确保内容拥有者的内容项目(例如,照片和/或视频)只能被授权用户访问的直观方法是,内容拥有者在将内容项目上传至内容服务器(例如,Facebook或YouTube服务器)前对内容项目进行加密。这存在两个可能的缺点:第一,内容项目将无法被搜索;第二,想访问内容项目之一的每个用户都必须获得密钥来对内容项目进行解密。除了这种可用性和复杂性上的限制,还具有如下缺点:其提供了 “全部或全无(all-or-nothing)”访问模型, S 卩 ,一旦用户获得密钥,该用户就可以访问用该密钥加密的所有内容。当然,内容拥有者可以对其上传至内容服务器的每个内容项目使用不同的加密密钥,但这样做可能需要大量密钥。内容拥有者还可以尝试以某种方式将内容项目分组,并且每个组使用一个密钥。但是,如何定义这些组依然不清楚,这是因为,一方面,内容拥有者希望有细粒度的访问控制(意味着很小的内容组),另一方面,又要使用尽可能少的密钥(意味着很大的内容组)。
[0007]另一种选择是将访问控制委托给内容服务器,这是YouTube和Facebook所使用的模型。如果内容服务器是100%信任的,这么做效果很好。然而,更为自然的是假设服务器是“诚实但好奇(honest-but-cur1us)”。这意味着假设服务器向所有授权用户传送内容。但是,并没有假设服务器不会去尝试访问内容以“满足其自身的好奇心”,例如,进行数据挖掘或合法/非法监听等。另一种做法则是由内容拥有者运营他/她自己的内容服务器的全分发方案。这允许内容拥有者的极强访问控制,但是由于内容拥有者需要在线来回答搜索查询,并且更糟的是流传输内容,所以很明显无法进行管理。
[0008]因此,本文描述了以不对内容拥有者造成过度负担的安全方式,向授权用户分发内容项目的各种实施例。例如,在一个方面中,描述了一种由内容拥有者设备(C0D)执行的方法。在一些实施例中,所述方法包括C0D获得第一内容项目和与第一内容项目相关联的第一标签。C0D还获得第一内容项目的第一内容密钥CK1 X0D使用CK1对第一内容项目进行加密,从而产生第一加密内容项目。C0D使用至少第一标签和密钥导出函数KDF来导出第一导出密钥DKUC0D使用DK1对CK1进行加密,从而产生第一加密内容密钥ECK1。以及,C0D向内容服务器发送信息,所述信息包括第一加密内容项目和第一标签。
[0009]在一些实施例中,C0D使用至少第一标签、密钥导出函数以及主密钥来导出第一导出密钥,其中所述第一标签包括与第一内容项目相关联的关键字。
[0010]在一些实施例中,C0D还从用户的通信设备接收对第一内容项目加以标识的第一内容项目标识符和关键字,并且响应于接收到第一内容项目标识符,确定用户是否被授权获得由第一内容项目标识符标识的第一内容项目。响应于确定用户被授权获得第一内容项目,C0D向用户的通信设备发送DK1。
[0011]在一些实施例中,响应于确定用户被授权获得第一内容项目,CODi)使用至少主密钥、KDF和关键字导出DK1,以及ii)在导出DK1后向用户的通信设备发送DK1。
[0012]在一些实施例中,C0D还从用户的通信设备接收对第一内容项目加以标识的第一内容项目标识符和关键字,并且响应于接收到第一内容项目标识符,确定用户是否被授权获得由第一内容项目标识符标识的第一内容项目。响应于确定用户被授权获得第一内容项目,C0D i)获取ECKl,ii)使用DK1对ECK1进行解密,从而产生CK1,以及iii)向用户的通信设备发送CK1。在一些实施例中,在获取ECK1后,但在使用DK1对ECK1进行解密前,C0D使用至少主密钥、KDF和关键字来导出DK1。
[0013]在一些实施例中,所述方法还包括通信设备向内容服务器发送内容查询。响应于查询,内容服务器向通信设备发送满足该查询的搜索结果,其中所述搜索结果包括对第一内容项目加以标识的标识符。通信设备通过下载或流传输从内容服务器获得第一加密内容项目。通信设备获得ECK1。通信设备向C0D发送包括第一标签的消息。通信设备从C0D接收DK1。通信设备使用DK1对ECK1进行解密,从而产生CK1,以及通信设备使用产生的CK1对第一加密内容项目进行解密。
[0014]在一些实施例中,通信设备向内容服务器发送内容查询。响应于查询,内容服务器向通信设备发送满足该查询的搜索结果,其中所述搜索结果包括对第一内容项目加以标识的标识符。通信设备通过下载或流传输从内容服务器获得第一加密内容项目。通信设备向C0D发送包括第一标签的消息。通信设备从C0D接收由C0D响应于所述消息而发送的响应消息,所述响应包括CK1。以及,通信设备使用在响应消息中接收到的CK1对第一加密内容项目进行解密。
[0015]在一些实施例中,C0D获得与第一内容项目相关联的第二标签。C0D使用至少第一内容项目标识符、主密钥、第二标签和密钥导出函数导出第二导出密钥(DK2)。以及,C0D使用DK2对CK1进行加密,从而产生第二加密内容密钥ECK2,其中向内容服务器发送的信息还包括第二标签。在这些实施例中,C0D可以从第二通信设备接收第一内容项目标识符和第二标签,并且可以响应于接收到第一内容项目标识符和第二标签,确定第二通信设备的用户是否被授权获得与第一内容项目标识符相关联的第一内容项目。响应于确定用户被授权获得第一内容项目,C0D向用户的通信设备发送DK2和CK1中的至少一个。
[0016]在另一方面中,提供一种用于向授权用户分发内容项目的C0D。所述C0D包括数据处理系统和数据存储系统。数据存储系统包含被数据处理系统可执行的指令。C0D操作为获得第一内容项目并获得与第一内容项目相关联的第一标签。C0D还操作为获得第一内容项目的第一内容密钥CKUC0D还操作为使用CK1对第一内容项目进行加密,从而产生第一加密内容项目。C0D还操作为使用至少第一标签和密钥导出函数来导出第一导出密钥DKUC0D还操作为使用DK1对CK1进行加密,从而产生第一加密内容密钥ECK1。以及,C0D还操作为向内容服务器发送信息,所述信息包括第一加密内容项目和第一标签。
[0017]在另一方面中,提供一种用于向授权用户分发内容项目的计算机程序。在一些实施例中,所述计算机程序包括计算机可读指令。所述计算机可读指令被配置为使得当运行在C0D上时,使所述C0D:获得第一内容项目;获得与第一内容项目相关联的第一标签;获得所述第一内容项目的第一内容密钥CK1;使用CK1对第一内容项目进行加密,从而产生第一加密内容项目;使用至少第一标签和密钥导出函数来导出第一导出密钥DK1;使用DK1对CK1进行加密,从而产生第一加密内容密钥ECK1;以及向内容服务器发送信息,所述信息包括第一加密内容项目和第一标签。
[0018]在另一方面中,提供一种用于向授权用户分发内容项目的C0D。所述C0D包括用于获得与第一内容项目相关联的第一标签的装置。所述C0D还包括用于获得第一内容项目的第一内容密钥CK1的装置。所述C0D还包括用于使用CK1对第一内容项目进行加密
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1