CN115189879A - 用户界面用于访问控制使能对等共享的方法、系统及可读存储介质 - Google Patents

用户界面用于访问控制使能对等共享的方法、系统及可读存储介质 Download PDF

Info

Publication number
CN115189879A
CN115189879A CN202210620468.5A CN202210620468A CN115189879A CN 115189879 A CN115189879 A CN 115189879A CN 202210620468 A CN202210620468 A CN 202210620468A CN 115189879 A CN115189879 A CN 115189879A
Authority
CN
China
Prior art keywords
media
media item
user interface
user
user device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210620468.5A
Other languages
English (en)
Inventor
加伦·切克利
姆里纳尔·夏尔马
乔纳森·莱维内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US15/394,985 external-priority patent/US10915216B2/en
Application filed by Google LLC filed Critical Google LLC
Publication of CN115189879A publication Critical patent/CN115189879A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/108Transfer of content, software, digital rights or licenses
    • G06F21/1085Content sharing, e.g. peer-to-peer [P2P]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/045Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks

Abstract

本公开涉及用户界面用于访问控制使能对等共享的方法、系统及可读存储介质。实现方式公开了支持用于对等共享技术的访问控制机制的用户界面。示例方法包括:提供包括多个媒体项和多个媒体可用性指示符的用户界面以用于显示,其中,用户界面的部分表示通过对等连接接收多个媒体项中的一个媒体项的加密版本和加密版本的加密密钥;更新媒体可用性指示符中的媒体可用性指示符,以表示媒体项的加密版本和该加密密钥被保存;接收媒体项的加密版本被解密的指示;并且更新媒体可用性指示符,以表示该媒体项能够用于体验。

Description

用户界面用于访问控制使能对等共享的方法、系统及可读存 储介质
分案说明
本申请属于申请日为2017年9月21日的中国发明专利申请201780053873.0的分案申请。
技术领域
本公开涉及一种内容共享平台的领域,并且更具体地,涉及一种支持用于对等共享系统的访问控制技术的用户界面。
背景技术
内容共享平台及其相对应的网站和移动应用(“app”)使用户设备能够共享和播放流式内容,诸如流式音乐和视频。流式内容可能需要大量带宽,而某些连接可能无法提供流式内容所需的带宽。内容共享平台可以使用户能够在使用较高带宽连接的同时下载或离线流式内容,并且当用户设备是断开连接的或是使用低带宽连接的时,使用户能够随后播放流式内容。
发明内容
以下是本公开的简要概述,以便提供对本公开的一些方面的基本理解。该概述不是本公开的广泛概述。其既不旨在标识本公开的关键或重要元素,也不旨在描绘本公开的特定实现的任何范围或权利要求的任何范围。其唯一目的是以简化形式呈现本公开的一些概念来作为稍后呈现的更详细描述的序言。
在本公开的一个方面中,一种方法包括:提供用户界面以用于显示,用户界面包括多个媒体项和多个媒体可用性指示符。用户界面的部分可以表示正在通过对等连接接收多个媒体项的一个媒体项的加密版本和加密版本的加密密钥。该方法可以包括:更新媒体可用性指示符中的一个媒体可用性指示符,以表示保存了媒体项的加密版本和加密密钥。该方法可以还包括:接收媒体项的加密版本被解密的指示;以及更新媒体可用性指示符以表示媒体项可用于体验。在另一种实现方式中,媒体可用性指示符可以被用于在媒体项的三种状态之间进行区分,第一状态指示媒体项未被保存在用户设备上、第二状态指示媒体项被保存在加密版本中、以及第三状态指示媒体项被保存并且能够用于体验。
在一个实现方式中,用户界面可以包括图形控制元件,以发起通过对等连接对媒体项的加密密钥的包裹版本的接收。用户界面可以指示用于接收媒体项的加密版本的对等连接,并且可以指示互联网连接被用于解密媒体项。在进一步的实现方式中,用户界面可以包括对等连接指示符,该对等连接指示符标识正在提供媒体项的加密版本的用户设备,并且该对等连接指示符标识正在接收媒体项的加密版本的用户设备。
在另一实现方式中,通过包括第一图形部分和第二图形部分的媒体条目在用户界面内表示多个媒体项中的每一个。第一图形部分可以包括相应媒体项的图像,并且第二图形部分可以包括相应媒体项的文本信息。在进一步的实现方式中,该方法可以包含:接收与特定媒体项相对应的用户输入,并且发起对特定媒体项的呈现。用户界面可以包括用于在用户设备上呈现特定媒体项的部分。
在本公开的其它方面,公开了一种系统和/或一种用于存储使处理设备执行上述操作的指令的系统和/或非暂时性机器可读存储介质。
附图说明
在附图的图中,本公开通过示例而非限制的方式进行图示。
图1是图示根据本公开的实现方式的示例性系统架构的框图。
图2是图示根据本公开的实现方式的示例用户设备的组件和模块的框图。
图3是图示根据本公开的实现方式的媒体服务器的示例方法的流程图。
图4是图示根据本公开的实现方式的提供共享媒体项的用户设备的示例方法的流程图。
图5是图示根据本公开的实现方式的正在接收共享媒体项的用户设备的示例方法的流程图。
图6A是根据本公开的实现方式的用于使用户能够与用于对等共享的访问控制技术交互的示例图形界面。
图6B是根据本公开的实现方式的用于使用户能够与用于对等共享的访问控制技术交互的另一示例图形界面。
图7至图9是根据本公开的实现方式的用于提供共享媒体项的用户设备的示例图形界面。
图10至图14是根据本公开的实现方式的用于正在接收共享媒体项的用户设备的示例性图形界面。
图15是图示根据本公开的实现方式的用于提供图形界面的示例方法的流程图,该图形界面使得用户能够与用于对等共享的访问控制技术交互。
图16是图示根据本公开的实现方式的计算机系统的一种实现方式的框图。
具体实施方式
本公开的方面和实现方式针对用于对等内容共享技术的用户界面。用户界面增强了用户的使用对等内容共享技术进行共享和接收媒体项的能力。传统的内容共享技术可以包括集中式共享系统,其需要具有大带宽的网络连接,以便流式传输在线内容。在许多新兴市场中,计算网络的能力有限,并且它们通常具有低带宽,是不可靠的、或不可用的。当网络基础设施或互联网访问受限时,对等网络可以允许内容交换。用对等网络的问题在于它经常提供了对交换内容的不受限制的再现和访问,这可能是内容创建者和/或提供者未授权的,并且可能难以监视或难以强制实施。
本公开的方面通过为使用集中式访问控制机制的对等共享系统提供用户界面来解决上述和其它缺陷。集中式访问控制机制可以管理用户设备对在用户设备上存储的媒体项的访问。集中式访问控制机制可以支持一个或多个数字版权管理(DRM)方案,以控制受版权保护的媒体项的使用、修改和分发。在一个示例中,内容共享技术可以涉及媒体服务器和不同用户的多个用户设备。媒体服务器可以向第一用户的用户设备(“第一用户设备”)提供媒体项,并使第一用户设备能够与第二用户的用户设备(“第二用户设备”)共享媒体项。用户设备可以是诸如电话、平板电脑、或膝上型电脑的移动设备,并且可以能够在本地存储媒体项。
在一个示例中,第一用户设备可以直接从媒体服务器流式传输媒体项(例如,通过互联网),并且可以在本地存储流媒体。第一用户设备可以使用本地生成的加密密钥对媒体项进行加密,并且可以使用来自媒体服务器的公钥来包裹加密密钥。然后,(例如,当第一用户设备和/或第二用户设备具有有限的互联网访问或没有互联网访问时,经由对等连接)第一用户设备可以将加密的媒体项和所包裹的加密密钥传送到第二用户设备。第二用户设备可以访问加密的媒体项,但是可以限制播放加密的媒体项,直到它联系媒体服务器。第二用户设备可以使用可播放性请求来联系媒体服务器,该可播放性请求可以包括所包裹的加密密钥和媒体项的标识信息。然后,媒体服务器可以执行可播放性检查,以确保第二用户设备被授权观看媒体项。然后,媒体服务器可以使用包括未包裹的加密密钥的可播放性响应进行响应,这未包裹的加密密钥可以使第二用户设备能够解密和播放媒体项。
对等内容共享技术可以包括一个或多个用户界面,其使用户能够控制哪些媒体项被共享并且表示这些共享媒体项的状态。这些状态可以与媒体项的可用性相对应。例如,第一状态可以与正被接收或传送到用户设备中的一个的媒体项相对应。第二状态可以指示在用户设备上保存媒体项的加密版本和相对应的包裹加密密钥。第三状态可以指示媒体项已经被解密并准备好在用户设备上呈现。可以在使用期间更新用户界面以修改媒体项指示符,使得它们表示媒体项的当前状态。在其它示例中,用户界面还可以指示用于接收媒体项的加密版本的对等连接,并指示互联网连接被使用为解密媒体项。
这里公开的技术是有利的,因为它增强了用户的使用具有有限互联网访问或无互联网访问的对等共享技术来共享媒体项的能力,并且还提供了中央机制以管理和监视对共享媒体项的访问。该技术可以减少共享媒体项所需的带宽量,这可能对媒体服务器、中间网络基础设施(例如,互联网服务提供商(ISP))和用户设备有益,并且在新兴市场中可能特别有益。过去,用户设备中的每一个可能已经从媒体服务器访问了媒体项,并且现在许多用户设备能够从对等方访问媒体项,并且仅联系媒体服务器,以接收观看媒体项的授权。检查授权所需的网络业务的量可能比从媒体服务器流式传输或下载媒体项所需的网络业务或带宽的量小几个数目级。该技术也是有利的,因为它可以增强媒体服务器以确定经由对等连接共享的媒体项的收视情况,并提供补充媒体项(例如,相关视频)的能力。
为了简单和简洁,本公开的实现方式经常参考视频。然而,本公开的教导通常应用于媒体项,并且能够应用于各种类型的内容或媒体项,包括例如视频、音频、文本、图像、程序指令等。
图1图示根据本公开的一个实现方式的示例系统架构100。系统架构100包括媒体服务器110、用户设备120A-Z、对等连接130、对等网络140、网络150、和数据存储160。
媒体服务器110可以是一个或多个计算设备(诸如机架式服务器、路由器计算机、服务器计算机、个人计算机、大型计算机、膝上型计算机、平板计算机、台式计算机等)、数据存储器(例如,硬盘、存储器、数据库)、网络、软件组件、和/或硬件组件,其可以用于向用户提供有对媒体项的访问和/或向用户提供媒体项。媒体服务器110可以是内容共享平台的一部分,其可以允许用户消费、上传、共享、搜索、批准(“喜欢”)、不喜欢、和/或评论媒体项。内容共享平台还可以包括可以用于向用户提供有对媒体项的访问的网站(例如,网页)或应用后端软件。
媒体服务器110可以托管内容,诸如媒体项112和补充媒体项114。媒体项112和补充媒体项114可以是由用户选择的数字内容、由用户可用的数字内容、由用户上传的数字内容、由内容提供商选择的数字内容、由广播公司选择的数字内容等。媒体项112和补充媒体项114的示例包括但不限于数字视频、数字电影、数字照片、数字音乐、网站内容、社交媒体更新、电子书(ebook)、电子杂志、数字报纸、数字有声读物、电子期刊、网络博客、真正简单的联合(RSS)馈送、电子漫画书、软件应用等。
可以经由互联网和/或经由移动设备应用来消费媒体项112和补充媒体项114。为了简洁和简单起见,在整个文档中使用在线视频(以下也称为视频)作为媒体项112的示例。如这里所使用的,“媒体”、“媒体项”、“在线媒体项”、“数字媒体”、“数字媒体项”、“内容”、和“内容项目”能够包括能够使用被配置为向实体呈现数字媒体项的软件、固件、或硬件能够执行或加载的电子文件。在一个实现方式中,内容共享平台可以使用数据存储160来存储媒体项112。在一个示例中,媒体项112可以是由用户设备120A的用户识别的用户生成的视频,并且补充媒体项112可以是由媒体服务器110选择在用户设备120A-Z中的一个或多个上呈现媒体项112之前、期间或之后呈现的广告。
用户设备120A-Z可以各自包括计算设备,诸如个人计算机(PC)、膝上型计算机、移动电话、智能电话、平板计算机、上网本计算机、网络连接的电视等。在一些实现方式中,用户设备120A-Z也可以被称为“客户端设备”。用户设备120A-Z可以能够通过网络150从媒体服务器110接收媒体项112,并且能够经由对等连接130、对等网络140、网络150或其组合与其它用户设备共享媒体项112。
对等连接130可以是一个或多个用户设备120A-Z之间的任何通信信道。对等连接130可以基于任何无线或有线通信技术,并且可以直接或间接地(例如,涉及中间用户设备)将第一用户设备连接到第二用户设备。无线通信技术可以包括
Figure BDA0003676434790000071
红外、超声波或其它技术。有线通信可以包括通用串行总线(USB)、以太网、RS 232或其它有线连接。在其它示例中,对等连接130可以涉及在用户设备之间传输可移动存储介质以传输媒体项和其它数据。可移动存储介质可以是以任何形式的,包括安全数字(SD)卡、多媒体卡(MMC)、闪速驱动器、其它数据存储设备或其组合。对等连接可以是两个设备之间的单独连接,或者可以包括作为对等网络140的部分的多个连接。
对等网络140可以是在用户设备120A-Z之间提供一个或多个通信信道的计算网络。在一个示例中,对等网络140可以是不依赖于预先存在的网络基础设施(例如,接入点、交换机、路由器)的对等网络,并且用户设备A-Z可以替换网络基础设施以在用户设备之间路由通信。对等网络140可以是自配置的无线网络,并且使得用户设备120A-Z能够贡献给对等网络140并且动态地与对等网络140(例如,自组织无线网络)连接和断开。在另一示例中,对等网络140可以是包括使用户设备能够与其它用户设备通信的网络基础设施的计算网络。在后一示例中,对等网络140可以或可以不具有对公共网络(例如,互联网)的访问。例如,车辆(例如,公共汽车、火车)或位置(例如,教室、图书馆、咖啡馆)可以提供接入点或可以用作接入点的用户设备,以使得用户设备能够彼此通信而无需提供互联网访问。可替选地,对等网络可以提供对诸如网络150(例如,互联网)的较大网络的访问。
网络150可以是公共网络,其向用户设备120A-Z中的一个或多个提供有对媒体服务器110和其它公共可用计算设备的访问。网络150可以包括一个或多个广域网(WAN)、局域网(LAN)、有线网络(例如,以太网)、无线网络(例如,802.11网络或Wi-Fi网络)、蜂窝网络(例如,长期演进(LTE)网络)、路由器、集线器、交换机、服务器计算机和/或其组合。
用户设备120A-Z中的每一个可以包括媒体观看器,其允许用户观看通过对等网络140和/或网络150共享的媒体项112。媒体观看器可以呈现图像、视频、音频、网页、文档等。在一个示例中,媒体观看器可以是能够访问、检索、呈现和/或导航通过Web服务器服务的内容(例如,诸如超文本标记语言(HTML)页面、数字媒体项等的网页)的web浏览器。媒体观看器可以向用户呈现、显示、和/或呈现内容(例如,网页、媒体观看器)。媒体观看器还可以显示嵌入在网页(例如,可以提供关于由在线商家销售的产品的信息的网页)中的嵌入式媒体播放器(例如,
Figure BDA0003676434790000081
播放器或HTML5播放器)。在另一示例中,媒体观看器可以是允许用户观看数字媒体项(例如,数字视频、数字图像、电子书等)的独立应用(例如,移动应用或app)。
根据本公开的方面,媒体观看器可以是用于用户共享、记录、编辑、和/或上载内容到内容共享平台的内容共享平台应用。媒体观看器可以由媒体服务器110或内容共享平台提供给用户设备120A-Z。例如,媒体观看者可以是嵌入在由内容共享平台提供的网页中的嵌入式媒体播放器。在另一示例中,媒体观看器可以是在用户设备120A-Z上安装和执行的应用。
在图1所示的示例中,每个用户设备可以用作媒体共享设备(例如,用户设备120A)、媒体接收设备(例如,用户设备120B)或两者的组合。每个用户设备可以包括数据存储122、共享接口组件124、提供者组件126、接收者组件128、和数据存储122。
数据存储122可以是能够存储数据的存储器(例如,随机存取存储器)、驱动器(例如,硬盘驱动器、闪速驱动器)、数据库系统、或另一种类型的组件或设备。数据存储122可以包括可以跨越多个计算设备(例如,多个服务器计算机)的多个存储组件(例如,多个驱动器或多个数据库)。数据存储122可以包括存储从媒体服务器110接收的媒体项的副本的媒体高速缓存123。在一个示例中,每个媒体项112可以是从媒体服务器110下载并且可以本地存储在媒体高速缓存123中的文件。在另一个示例中,每个媒体项112可以从媒体服务器110流式传输,并且可以作为短暂的副本存在于用户设备的存储器中,直到它被离线。离线是指用户设备在用户设备的持久数据存储器中存储流媒体的短暂副本。这可以在不需要使用互联网连接的情况下使用户设备能够在稍后的时间点处(例如,在重新启动之后)访问流媒体项。在一个示例中,当呈现媒体项时,媒体项可以由用户设备流式传输到自身。在一个示例中,用户设备可以通过将媒体项的一个或多个流(例如,视频流、音频流)复制到持久数据存储器来使流媒体项离线。
共享界面组件124可以提供用户界面,该用户界面使用户能够选择与共享媒体项有关的一个或多个用户设备。共享界面组件124可以提供用户界面,该用户界面使用户能够从要共享的媒体缓存中选择一个或多个媒体项。媒体项可以是在本地用户设备的媒体缓存或远程用户设备的媒体缓存内可用。用户界面可以使用户能够识别媒体项的状态以及它们是否被保存在本地用户设备上以及它们是否需要在可用于消费之前被解密。将参考图6A-图14更详细地讨论示例用户界面。
提供者组件126可以包括使得用户设备能够将媒体项共享给一个或多个其它用户设备的功能。提供者组件126可以生成加密密钥并加密媒体项,以减少对媒体项的未授权访问。提供者组件126还可以包裹加密密钥,并且可以与一个或多个其它用户设备(例如,接收者设备)共享包裹的加密密钥和加密的媒体项。
接收者组件128可以包括使用户设备能够接收和处理加密的媒体项的功能。接收者组件128可以通过从媒体项、提供设备、接收者设备、或其组合收集信息来处理传入媒体项。可以将信息发送到媒体服务器,使得媒体服务器能够确定用户设备是否被授权播放媒体项。在一个示例中,接收用户设备可以在可播放性请求152中将包裹的加密密钥发送到媒体服务器,并且媒体服务器可以解包裹加密密钥并将其在可播放性响应154中发送回到用户设备。然后,用户设备可以使用解包裹的加密密钥来解密媒体项。
通常,如果合适的话,在一个实现方式中描述为由内容共享平台执行的功能也可以在其它实现方式中在客户端设备120A到120Z上执行。另外,归因于特定组件的功能能够由一起操作的不同或多个组件来执行。内容共享平台和媒体服务器110还能够作为通过适当的应用编程接口提供给其它系统或设备的服务来被访问,因此不限于在网站中使用。
在本公开的实现方式中,“用户”可以表示为单个个体。然而,本公开的其它实现方式包含“用户”是由一组用户和/或自动源控制的实体。例如,联合作为社交网络中的社区的一组个人用户可以被视为“用户”。在另一个示例中,自动化消费者可以是内容共享平台的自动提取管道,诸如主题频道。
尽管根据媒体服务器和内容共享平台讨论了本公开的实现方式,但是实现方式通常还可以应用于提供数字内容和用户之间的连接的任何类型的社交网络。
在这里讨论的系统收集关于用户的个人信息或者可以利用个人信息的情况下,可以向用户提供有以控制内容共享平台是否收集用户信息的机会(例如,关于用户的社交网络、社交动作或活动、专业,用户的偏好、或用户的当前位置的信息),或控制是否和/或如何从内容服务器接收可能与用户更相关的内容。另外,某些数据可以在其被存储或使用之前以一种或多种方式处理,从而移除个人可识别信息。例如,可以处理用户的身份,以便不能够为用户确定个人可识别信息,或者可以在获得位置信息的地方(例如,达到城市、邮政编码或州级别)一般化用户的地理位置,这样就无法确定用户的特定位置。因此,用户可以控制如何收集关于用户的信息并将其由内容共享平台使用。
图2是图示示例用户设备200的框图。用户设备200可以与用户设备120A-Z相同或相似。在图2所示的示例中,用户设备200包括共享接口组件124、提供者组件126、接收者组件128、和数据存储122。
共享界面组件124可以提供用户界面,该用户界面使用户设备200的用户能够观看和选择用于共享的可用的用户设备和媒体项。共享界面组件124可以包括设备选择模块210、媒体项可用性模块212、和启动模块214。
设备选择模块210可以搜索并显示可用于共享的一个或多个用户设备。设备选择模块210可以通过发出广播消息并等待响应来识别用户设备。广播消息可以识别关于用户设备200的信息,诸如识别信息(例如,设备标识符、用户标识符)、设备资源(例如,处理功率、存储容量、电池电量)、媒体项呈现能力(例如,播放特定媒体项格式的能力)、其它信息或其组合。然后,用户设备200可以从一个或多个其它设备接收响应。响应可以包括关于其它用户设备的信息,诸如媒体缓存信息(例如,可用媒体项)、标识信息(例如,设备标识符、用户标识符)、设备资源(例如,电池电量、网络连接、处理能力、存储容量)、其它信息或其组合。在一个示例中,请求和/或响应可以包括匿名数据而不是标识信息。设备选择模块210可以显示在图形界面中响应的用户设备,该图形界面可以能够接收用户输入以选择一个或多个用户设备。将参考图8更详细地讨论示例图形用户界面。
媒体项可用性模块212可以确定哪些媒体项可用于共享。在一些示例中,共享用户设备的媒体高速缓存中的所有媒体项可以可用于共享。在其它示例中,用户设备可以识别要进行共享的、在媒体高速缓存中的媒体项的子集。该子集可以不包括媒体项、一些媒体项、所有媒体项,或其它变体。该子集可以由用户设备根据用户输入、设备资源、媒体服务器输入、或其组合来确定。在一个示例中,用户可以识别要使其可用于共享的、在媒体高速缓存中的一个或多个特定媒体项。在另一示例中,用户设备可以分析设备资源(例如,电池电量、网络带宽)并确定是否应该共享哪个媒体项(如果有的话)。在又一示例中,媒体服务器可以提供标识要共享的一个或多个媒体项的输入。在不造成任何特定用户设备的负担情况下,这可以是尝试分发具有特定媒体项的用户设备的数目,以增强媒体项可用性和共享。媒体项可用性模块212可以在图形用户界面中显示可用于共享的媒体项,图形用户界面可以能够接收用户输入以选择用户设备中的一个或多个。
启动模块214可以与媒体项可用性模块212和设备选择模块210通信,以识别用于共享的特定用户设备和/或媒体项。共享可以涉及将媒体项推送到用户设备或从用户设备拉入媒体项或两者的组合。在一个示例中,用户设备200可以接收标识远程用户设备和本地媒体项的用户输入,并且发起模块214可以发起将所标识的媒体项推送到远程用户设备。在另一示例中,用户设备200可以接收标识远程用户设备和远程用户设备上可用的媒体项的用户输入,并且发起模块214可以发起从远程用户设备拉入所标识的媒体项。在其它示例中,用户设备可以拉入来自第一用户设备的媒体项,然后可以将媒体项推送到第二用户设备。
共享接口组件124可以以多种模式运行,包括一对一模式、公共模式、和私人模式。一对一模式可以类似于上面讨论的推送和拉入特征,并且可以涉及用户设备接收标识用于共享的特定媒体项和特定设备的用户输入。然后可以将媒体项从一个设备传送到另一个设备(即,一对一)。
公共模式可以类似于一对一模式,因为用户设备200可以接收选择特定媒体项的用户输入,但是当启用公共模式时,可以存在多个共享设备和多个接收者设备。一些或所有共享设备可以广播它们的可用媒体项。然后,用户设备200可以在不选择特定用户设备的情况下选择媒体项中的一个或多个。在该示例中,共享所选媒体项的用户设备可以对用户设备200保持匿名。相反,用户设备200可以作为共享设备参与并且广播一组可用媒体项并在被其它用户设备请求时匿名传输媒体项中的一个或多个。
私人模式可以类似于一对一模式和公共模式,但是可以包括批准阶段。在批准阶段期间,共享媒体项的用户设备可以接收对特定媒体项的共享请求,并且可以批准或不批准共享请求。在一个示例中,批准或不批准可以是基于用户输入的,在这种情况下,交互模块可以通知用户,并且用户可以提供批准或不批准共享的输入。
在共享接口组件124已经识别出媒体项并发起共享之后,它可以与提供者组件126或接收者组件128交互。可以在用户设备200将媒体项共享给另一个用户设备和接收者组件128时使用提供者组件126,并且可以在用户设备200从另一用户设备接收共享媒体项时使用接收者组件128。
提供者组件126可以包括密钥生成模块220、加密模块222、和包裹模块224。由提供者组件126执行的功能可以在共享过程中的任何点处执行,诸如在媒体项从媒体服务器被接收、被选择用于共享之前、期间或之后或者在共享被启动之后。
密钥生成模块220可以为用户设备创建一个或多个加密密钥240。每个加密密钥240可以包括确定加密功能的功能输出的一条信息,并且可以用于加密和解密媒体项。密钥生成模块220可以使用随机数生成器、伪随机数生成器、密钥导出函数、其它机制、或其组合来生成加密密钥240。密钥生成模块220可以使用对用户设备可用的信息(诸如设备标识符、时间戳、IP地址、MAC地址、用户标识符、其它信息或其组合)来产生密钥生成。在替选示例中,加密密钥240可以由媒体服务器或内容共享平台的其它部分生成并发送到用户设备200。
加密模块222可以使用由密钥生成模块220生成的加密密钥240来加密一个或多个媒体项。在一个示例中,可以使用不同的加密密钥240加密用户设备200上的每个媒体项。在另一个示例中,可以使用加密密钥240加密用户设备200上的多个(例如,所有)媒体项。加密模块222可以使用使用单个共享密钥的、诸如数据加密标准(DES)或高级加密标准(AES)的对称密钥加密系统加密媒体项。在其它实施例中,加密模块222还可以或替选地使用使用多个密钥(例如,公钥和私钥)的诸如Rivest-Shamir-Adleman(RSA)、非对称密码术或公钥密码系统来加密媒体项。
包裹模块224可以使用媒体服务器密钥244来包裹加密密钥240。媒体服务器密钥244可以是由媒体服务器或内容共享平台的其它部分生成并发送到用户设备200的公钥。包裹模块224可以使用媒体服务器密钥244以及密钥封装机制来保护加密密钥240,同时将其传送到另一个用户设备并存储在另一个用户设备上。
在一个示例中,加密模块222可以使用对称密钥加密系统来加密媒体项,并且包裹模块224可以是非对称密码系统,用于包裹加密密钥240。如上所述,非对称密码或公钥加密系统可以与RSA相同或相似。在包裹加密密钥之后,用户设备200可以将所加密的媒体项112(例如,密码文本)和包裹的加密密钥240传送到另一个设备。
当用户设备200正在接收由另一用户设备共享的媒体项时,可以使用接收者组件128。接收者组件128可以包括可播放性模块230、解密模块232、和验证模块234。
可播放性模块230可以与媒体服务器通信,以确定用户设备200是否被授权呈现媒体项。与媒体服务器的通信可以涉及发送可播放性请求和接收可播放性响应。可播放性请求可以包括所包裹的加密密钥和与媒体项、接收者或共享设备、接收者或共享用户有关的信息、其它信息或其组合。然后,媒体服务器可以分析该信息并将其与来自一个或多个数据存储器(例如,数据库)的信息进行比较,以确定用户设备200是否被授权向用户呈现媒体项。分析可以涉及检查媒体项是否仍是可用于呈现的以及是否其具有任何限制。例如,媒体项可以限于成人受众(例如,而不是用于儿童),或者可以限制于或来自某些地理区域(例如,某些国家)。在确定已经满足可播放性检查之后,媒体服务器可以解包裹所包裹的加密密钥。解包裹加密密钥可能涉及用于包裹加密密钥的类似密码系统,并且可以利用与媒体服务器密钥相关联的私钥(例如,公钥)。然后,媒体服务器可以在可播放性响应中将解包裹的加密密钥发送回至用户设备200。
解密模块232可以使用解包裹的加密密钥来解密加密的媒体项112。解包裹的加密密钥可以涉及用于加密媒体项的类似的加密系统,如上面关于加密模块222所讨论的。
验证模块234可以确定媒体项是否是可信的以及它是否包括任何未经授权的修改。验证模块234可以使用与媒体项相关联的数字签名来验证媒体项。数字签名可以是基于媒体项(例如,视频和/或音频字节)和媒体服务器的私有签名密钥,并且可以使用任何数字签名机制进行计算。在一个示例中,数字签名机制可以与椭圆曲线数字签名算法(ECDSA)相同或相似,并且可以使用椭圆曲线密码术或任何其它形式的密码术来计算数字签名。数字签名可以由媒体服务器或内容共享平台的其它部分进行计算,并且可以由用户设备200从(例如,与加密的媒体项)共享媒体项的用户设备或者直接从媒体服务器(例如,使用可播放性响应)接收数字签名。验证模块234可以在数字签名的角度上分析解密的媒体项以执行验证。在一个示例中,验证模块234可以计算媒体项的散列(例如,视频和/或音频字节),并使用媒体服务器的散列、数字签名、和公共验证密钥来验证解密的媒体项。可以使用诸如安全散列算法(SHA)或任何其它散列函数的加密散列函数来计算该散列。
图3、图4和图5描绘了用于实现用于对等媒体共享的访问控制机制的方法300、400和500的说明性示例的流程图。方法300从媒体服务器的角度图示了示例处理流程,并且方法400和500分别是用于共享用户设备和接收者用户设备的示例方法。方法300、400和500可以由处理设备执行,处理设备可以包括硬件(例如,电路、专用逻辑)、软件(诸如在通用计算机系统或专用机器上运行)或两者的组合。方法300、400和500以及它们各自的功能、例程、子例程、或操作中的每一个可以由执行该方法的计算机设备的一个或多个处理器执行。在某些实现方式中,方法300、400和500可以由单个处理线程执行。可替选地,方法300、400和500可以由两个或更多个处理线程执行,每个线程执行该方法的一个或多个单独的功能、例程、子例程或操作。
为了简化说明,将本公开的方法描绘和描述为一系列动作。然而,根据本公开的动作可以以各种顺序和/或同时发生,并且与本文未呈现和描述的其它动作一起发生。此外,可能不需要所有示出的动作来实现根据所公开的主题的方法。另外,本领域技术人员将理解并显而易见的是,该方法可替代地经由状态图或事件被表示为一系列相互关联的状态。另外,应当显而易见的是,本说明书中公开的方法能够被存储在制品上,以便于将这些方法传送和传输到计算设备。这里使用的术语“制品”旨在包含可从任何计算机可读设备或存储介质访问的计算机程序。在一个实现方式中,可以由媒体服务器110执行方法300,并且可以由图1的用户设备120执行方法400和500。
参考图3,方法300可以由媒体服务器的一个或多个处理设备执行,并且可以在框302处开始。在框302处,媒体服务器的处理设备可以将媒体项发送到第一用户设备。媒体项可以包括视频、音频、图像、文本、其它媒体或其组合。媒体服务器的处理设备还可以将一个或多个加密密钥发送到第一用户设备。第一用户设备可以使用加密密钥中的一个来包裹由用户设备生成的设备密钥(例如,加密密钥)。包裹(例如,封装)设备密钥可能是有利的,因为当设备密钥通过对等连接传输和/或存储在不可信对等体上时,包裹设备密钥可以将加密密钥掩蔽为密码文本。在另一示例中,媒体服务器可以将第二加密密钥发送到第一用户设备。第二加密密钥可以由媒体项生成,并且可以用作由用户设备生成的、用于加密媒体项的加密密钥的替代。
在框304处,处理设备可以从第二用户设备接收与媒体项相关联的可播放性请求和包裹的加密密钥。可播放性请求可以询问关于第二用户设备是否被授权经由对等连接播放由第一用户设备与第二用户设备共享的媒体项。在一个示例中,所包裹的加密密钥可以包括使用非对称加密密钥封装的对称加密密钥。对称加密密钥可以是由用户设备生成并用于加密媒体项的加密密钥。非对称加密密钥可以是由媒体服务器提供的、用于包裹对称加密密钥的公钥。在一个示例中,可播放性请求可以包括所包裹的加密密钥和与媒体项、接收者或共享设备、接收者或共享用户有关的信息、其它信息或其组合。
在框306处,处理设备可以确定第二用户设备被授权播放媒体项。该确定可以涉及媒体项分析可播放性请求中的信息,并将其与来自一个或多个数据存储器(例如,数据库)的信息进行比较。该分析可以涉及检查媒体项是否仍可用于呈现以及该媒体是否对进行复制或进行观看具有任何限制。在一个示例中,媒体服务器的处理设备还可以验证媒体项不包括未经授权的修改。可以通过将与第二用户设备上的媒体项的版本相关联的信息(例如,散列)与与媒体服务器上的媒体项的版本相关联的信息(例如,数字签名)进行比较来执行验证。
在框308处,处理设备可以发送指示第二用户设备被授权播放媒体项的响应,该响应包括从包裹的加密密钥导出的加密密钥。导出加密密钥可以涉及使用与用于包裹密钥的公钥相对应的私钥来解包裹所包裹的加密密钥。私钥和公钥可以是媒体服务器可访问的密钥对的部分,并且媒体服务器可能先前已将公钥提供给第一用户设备以包裹加密密钥。所包裹的加密密钥可以包括密码文本,并且解包裹加密密钥可以涉及结合非对称密码功能(例如,公钥密码功能)而使用私钥以从密码文本导出加密密钥。第二用户设备可以使用加密密钥来解密媒体项,并且一旦被解密,就可以将媒体项呈现给第二用户设备的用户。
媒体服务器的处理设备还可以在呈现媒体项之前、期间或之后提供要由第二用户设备呈现的补充媒体项。补充媒体项可以包括任何媒体内容,并且可以用作广告。在一个示例中,可以将补充媒体项与可播放性响应一起提供给第一用户设备。例如,可播放性响应可以包括补充媒体项或补充媒体项可以被包括在来自媒体服务器或其它设备(例如,合作伙伴、附属机构)的另一响应中。在另一示例中,补充媒体项可以被提供给第一用户设备,并且可以在发送加密的媒体项之前、期间或之后从第一用户设备发送到第二用户设备。响应于完成参考框308上文所述的操作,该方法可以终止。
在其它示例中,方法300可以涉及验证源自媒体服务器的、由第二用户设备接收的媒体项。验证可以发生在第二用户设备上播放媒体项之前的任何时刻,并且可以由媒体服务器、第一用户设备、第二用户设备、其它设备或其组合来执行。例如,它可以发生在第二用户设备从第一用户设备接收加密的媒体项之前,在第二用户设备上解密媒体项之前,在播放媒体项之前、或任何其它时间之前。在一个示例中,验证可以由第二设备(例如,接收者设备)执行,并且可以涉及分析散列。该散列可以是基于媒体项的解密版本,并且可以由第二设备计算。第二设备还可以分析由媒体服务器创建并直接从媒体服务器接收或从共享加密媒体项和包裹加密密钥的用户设备接收的数字签名。然后,第二用户设备可以分析散列和数字签名以确定解密的媒体项是真实的。
参考图4,方法400可以通过与另一用户设备共享媒体项的用户设备的处理设备来执行。共享可以由共享设备或接收者设备发起。由共享设备发起的共享可以被认为是基于推送的共享,因为可以将媒体项从共享设备推送到接收者设备。因为媒体项从共享设备被拉入到接收者设备,所以由接收者设备发起的共享可以被认为是基于拉入的共享。
方法400可以在框402处开始,其中,第一用户设备的处理设备可以经由网络从媒体服务器接收媒体项。可以使用任何流式传输或文件传输技术将媒体项从媒体服务器流式传输或下载到第一用户设备。流式技术可以将媒体项分离成音频流和视频流。可以使用诸如MP3、高级音频编码(AAC)、Opus、其它编码机制、或其组合的音频编解码器来压缩音频流。可以使用诸如H.264、VP8、其它编码机制、或其组合的视频编解码器来压缩视频流。流式技术还可以或可选地将音频流和视频流组装成容器流(例如,比特流),诸如MP4、Flash视频(FLV)、高级系统格式(ASF)、互联网流媒体联盟(ISMA)、其它编码机制或其组合。文件传输技术可以是基于任何文件传输协议,诸如超文本传输协议(HTTP)、文件传输协议(FTP)、普通文件传输协议(TFTP)、BitTorrent、其它协议或其组合。
在框404处,处理设备可以在第一用户设备处本地存储媒体项。当使用流媒体时,存储可以涉及将流媒体项离线到持久存储。用户设备可以通过将媒体项的一个或多个流(例如,视频流、音频流)从存储器复制到持久数据存储器来离线流媒体项。在一个示例中,第一用户设备可以请求来自媒体服务器的许可以便离线媒体项,并且媒体服务器可以用加密密钥(例如,高速缓存令牌)进行响应以加密离线媒体项。在另一示例中,第一用户设备本身可以生成加密密钥,而不是从媒体服务器接收加密密钥。
在框406处,处理设备可以使用加密密钥来加密媒体项,以生成加密的媒体项。用于加密媒体项的加密密钥可以由处理设备或由媒体服务器来生成。在一个示例中,加密媒体项可以涉及使用使用单个共享密钥的对称密钥密码系统,诸如数据加密标准(DES)或高级加密标准(AES)。在其它示例中,加密媒体项可以涉及使用使用多个密钥(例如,公钥和私钥)的非对称加密或公钥密码系统,诸如Rivest-Shamir-Adleman密码系统(RSA)。
在框408处,响应于接收到与第二用户设备共享所存储的媒体项的请求,处理设备可以包裹加密密钥以生成包裹的加密密钥。如上所述,共享设备(例如,第一用户设备)可以请求共享媒体项,在这种情况下,媒体项被推送到接收者设备(例如,第二用户设备),或者可以通过接收设备请求共享,在这种情况下,接收设备从共享设备拉入媒体项。当推送媒体项时,该请求可以是基于从可以选择媒体项的用户、目的地设备、或两者的组合接收的用户输入。当拉动媒体项时,该请求可以基于接收者设备接收的消息,该消息指示接收者设备正在请求共享媒体项。在接收到请求之后,处理设备可以通过使用媒体服务器的公钥加密加密密钥来包裹加密密钥。
在框410处,处理设备可以经由对等连接将加密的媒体项和所包裹的加密密钥发送到接收者设备。在一个示例中,共享设备还可以向接收者设备发送补充媒体项或到补充媒体项的链接。补充媒体项或到补充媒体项的链接可以源自媒体服务器并且可以与媒体项一起传送。在另一示例中,共享设备还可以将媒体项的元数据发送到接收者设备,并且可以在未加密的情况下传送元数据。响应于完成参考框410上文所述的操作,该方法可以终止。
参考图5,可以通过从共享设备接收媒体项的接收者用户设备的处理设备来执行方法500。方法500可以在框502处开始,此时接收者用户设备的处理设备可以通过对等连接从共享用户设备接收加密的媒体项和所包裹的加密密钥。在一个示例中,对等连接可以是使用无线技术、有线技术、或可移动介质的、在两个设备之间的直接连接。在另一示例中,对等连接可以是对等无线网络连接。在一个示例中,处理设备可以在向共享用户设备发送对媒体项的请求之后接收加密的媒体项。
在框504处,处理设备可以将所包裹的加密密钥和请求发送到媒体服务器以确定接收者用户设备是否被授权播放加密的媒体项。对确定接收者用户设备是否被授权播放加密媒体项的请求可以包括媒体项的标识符。在一个示例中,接收者用户设备可以与共享用户设备连接,并且可以使用共享用户设备的网络连接将请求和包裹的密钥发送到媒体服务器。
在框506处,处理设备可以从媒体服务器接收指示接收者用户设备被授权播放加密的媒体项的响应。该响应可以包括从所包裹的加密密钥导出的加密密钥。在一些示例中,来自媒体服务器的响应可以包括可以在播放媒体项之前、期间或之后呈现的补充媒体项或到补充媒体项的链接。在其它示例中,可以在接收到加密的媒体项时,从共享用户设备接收补充媒体项。
在框508处,处理设备可以使用加密密钥对加密的媒体项进行解密。加密密钥可以是由共享用户设备使用的以加密媒体项的相同密钥。在解密媒体项之后,处理设备可以经由接收者用户设备的图形界面指示媒体项准备好被播放。关于图14更详细地讨论图形界面。在解密媒体项之后,接收者用户设备可以将媒体项添加到媒体高速缓存并使其可用于与其它设备共享。下面关于图6A-图9更详细地讨论与另一设备(例如,第三设备)的共享媒体项。响应于完成参考框508上文所述的操作,该方法可以终止。
图6A-图14图示了用于包括访问控制机制的对等共享移动应用的示例图形界面。图6A和图6B表示使用户能够观看与多个媒体项有关的信息并检测多个媒体项中的每一个的可用性的图形界面。图7-图9表示用于选择媒体项并将媒体项发送到另一设备的图形界面。图10-图14表示用于接收共享媒体项并处理媒体项以使其可用于呈现的示例图形界面。
参考图6A,用户界面600可以使用户能够观看一个或多个媒体项并发起这些媒体项中的一个或多个的共享。一个或多个媒体项可以是在本地用户设备的媒体缓存中可用的媒体项(例如,一组保存的媒体项)的子集(例如,一些或全部)。用户设备可以响应于接收启动软件组件(例如,移动应用)的用户输入而向用户提供用户界面600,或者可以响应于从一个或多个其它用户设备接收共享(发送或接收)媒体项的请求而自动启动用户界面600。用户界面600可以包括向用户设备的用户提供(例如,呈现、显示、指示、反映)图形信息的一个或多个图形元件。图形元件可以表示基础数据结构(例如,媒体项)的信息,并且可以在修改基础数据结构时更新(例如,刷新)。在一个示例中,图形元件可以被配置为向用户提供信息,但是可以不被配置为从用户接收信息(例如,用户输入)。在另一示例中,图形元件可以是向用户提供信息的图形控制元件,并且还可以被配置为从用户接收信息,诸如接收用户输入。可以由用户设备经由触摸屏(例如,轻击、滑动、或其它触摸手势)、鼠标/键盘(例如,点击、滚动、键击)、相机(例如,手势)、加速计(例如,摇动)、其它感觉装置、或其组合来接收用户输入。在图6A所示的示例中,用户界面600可以包括媒体条目区域610、一个或多个媒体条目620、一个或多个媒体可用性指示符626和626B、以及共享控制元件630。
媒体条目区域610可以是用户界面600的任何部分,其显示与一个或多个媒体项相对应的信息。媒体条目区域610可以包括组织成媒体项布置的多个媒体项。在一个示例中,媒体项布置可以是媒体项的序列或媒体项的列表。媒体条目区域610可以被配置为接收用户输入以在一个或多个方向(例如,水平、垂直或其它方向)上调整(例如,滚动、平移、缩放、移动、重新定位)媒体项布置。随着调整媒体项布置,特定媒体项的位置可以改变,并且可以显示新的媒体项并且可以隐藏现有的媒体项。可以由媒体条目620表示媒体条目区域610中的每个媒体项。
每个媒体条目620可以是提供与特定媒体项相对应的信息的图形数据结构。如图6A所示,媒体条目620可以包括图像622、元数据624、和媒体可用性指示符626A。图像622可以是表示媒体项(例如,封面图像)或媒体项的一部分(诸如媒体项的视频帧)(例如,缩略图像)的图像。元数据624可以包括关于媒体项的任何信息,诸如标题、创建者、上传者、持续时间、创建日期/时间、上载日期/时间、观看者的数目、共享者的数目、其它信息或其组合。
媒体可用性指示符626A和626B可以是表示相对应的媒体项是否在特定用户设备上可用的图形元件。媒体可用性指示符626A和626B可以是任何图形元件或图形控制元件,并且可以包括形状(例如,圆形、正方形、八边形)、符号(例如,锁、复选标记、箭头)、颜色(例如,蓝色、绿色、红色、黄色)、文本(例如,不同的字体、大小)、图像、其它图形、或其组合。
图形元件可以位于媒体条目区域610内或相对应的媒体条目620内的任何位置处。媒体可用性指示符626A、626B可以被叠加在相应媒体条目620的图像622上,或者可以位于图像或媒体条目620的相邻位置(例如,上、下、侧)。在图6A所示的示例中,媒体可用性指示符626A可以是具有蓝色圆形形状和嵌入式锁定符号的覆盖图形元件,并且媒体可用性指示符626B可以是具有蓝色圆形形状和嵌入式带下划线的复选标记符号的覆盖图形元件。在一个示例中,一些或所有媒体可用性指示符可以是图形控制元件,其接收用户输入并响应地执行动作。例如,媒体可用性指示符626A可以指示媒体项处于锁定或加密状态。当媒体可用性指示符626A接收到用户输入(例如,轻击、点击、悬停、保持)时,它可以发起状态转换(例如,手动启动的解密)或呈现关于如何转换相对应的媒体项的信息(参见图12)。媒体可用性指示符的变化可以用于指示多个不同的媒体项状态,这将参考图6B更详细地讨论。
共享控制元件630可以被包括在用户界面600内,并且可以使用户能够共享一个或多个媒体项。共享控制元件630可以接收用户输入(例如,轻击、轻扫、点击、击键)并且可以发起一个或多个用户界面以共享媒体项。共享媒体项可以涉及将一个或多个媒体项发送到另一个用户设备和/或从另一个用户设备接收一个或多个媒体项。共享控制元件630可以包括一个或多个图形元件,并且可以包括形状(例如,圆形、正方形、八边形)、符号(例如,箭头、锁、复选标记)、文本、图像、其它图形、或其组合。共享控制元件630可以位于可以包括或不包括媒体输入区域610的用户界面600内的任何位置处。在图6A所示的示例中,共享控制元件630可以是具有蓝色圆形的图形控制元件(其具有指向相反方向的嵌入式平行水平箭头),并且一旦被选择,可以使用户界面前进到图7的用户界面700。
参考图6B,用户界面650可以类似于用户界面600,并且可以显示处于不同状态的媒体项,并且媒体项中的一个或多个可以在状态之间转换。在一个示例中,用户界面650可以包括多个媒体项状态628A-B、媒体条目625、和对等连接区域660。
媒体项状态628A-C可以图示媒体项可能在用户设备的使用期间处于或转换到或转换自的一些状态。媒体项状态628A可以图示媒体项的示例第一状态,其中,媒体项尚未被保存在用户设备上但是正处于从另一设备被接收(例如,被下载)的过程中。该另一个设备可以是一个或多个对等用户设备、服务器设备、其它设备、或其组合。如上所述,正在接收的媒体项的版本可以是加密版本,并且可以被附带有包裹的加密密钥。用户设备可以在接收加密的媒体项之前、期间或之后接收所包裹的加密密钥,并且可以从发送加密的媒体项的相同设备或从不同的设备接收所包裹的加密密钥。
媒体项状态628B图示了媒体项的第二状态,其中,媒体项可以以加密形式被保存在用户设备上。媒体项可以与加密密钥的包裹版本一起被保存。当媒体项处于第二状态时,用户设备不能够解释或呈现媒体项,但是可以能够与一个或多个其它用户设备共享媒体项的加密版本。
媒体项状态628C图示了媒体项的第三状态,其中,媒体项可以被保存在用户设备上并且可用于用户体验。当用户设备解密媒体项的加密版本时,媒体项可以从第二状态转换到第三状态。如上所述,用户设备可以通过将所包裹的加密密钥发送到远程设备(例如,内容共享平台)来解密媒体项,远程设备执行可播放性检查并解包裹所包裹的加密密钥。然后可以将解包裹的加密密钥版本发送到用户设备,并且用户设备可以使用它来解密媒体项,这可以使媒体项能够转换到媒体项状态628C。
媒体项状态628A-C中的每一个可以由相应的媒体可用性指示符626A和626B或缺少媒体可用性指示符来表示。例如,媒体项状态628A可以由缺少媒体可用性指示符(例如,隐藏的媒体可用性指示符)来表示,而媒体项状态628B和628C可以分别由媒体可用性指示符626A和626B来表示。特定媒体项可以在对等共享技术的操作期间在状态中的一个或多个之间转换。例如,当正在通过来自另一用户设备的对等连接下载媒体项的加密版本和所包裹的加密密钥时,媒体项可以在媒体项状态628A中开始。一旦下载完成,媒体项可以转换到媒体项状态628B,并且可以更新用户界面650以将媒体指示符从媒体指示符626A转换到媒体指示符626B。
媒体项状态628A-C还可以由一个或多个其它图形特征表示。其它图形特征可以包括修改媒体条目或媒体条目的部分,以调整透明度(例如,灰色)、字体(例如,粗体、斜体、突出显示)、尺寸(例如,放大、缩小)、排列(例如,缩进或突出特定媒体条目)。在图6B所示的示例中,媒体项状态628A可以由示例媒体条目625表示,其可以包括进度指示器627和图形控制元件629。进度指示器627、图形控制元件629、隐藏媒体可用性指示符、其它特征、或特征的组合的存在可以指示媒体条目与媒体项状态628A相对应。
进度指示器627可以是图形元件,其提供接收媒体项和/或包裹的加密密钥的进度的图形表示。进度指示器627可以采取任何形状,诸如条(例如,进度条)、圆形(例如,旋转轮、悸动机)、其它形状、或其组合。图形元件可以伴随百分比格式的进度的文本表示。进度指示器可以位于界面650上的任何位置。在一个示例中,进度指示器627可以被显示在媒体图像和/或元数据附近(例如,侧、上、下)。在另一个示例中,进度指示器627可以以半透明或不透明的方式被显示在媒体图像和/或元数据上,如图6B所示。
图形控制元件629可以使用户能够取消媒体项的传输。取消媒体项的传输可以将媒体项从状态628A转换到表示试图下载媒体项的取消或失败尝试的另一状态(例如,第四状态)(第四状态未示出)。图形控制元件629可以是按钮、小部件、其它元件或其组合。
连接区域660可以是用户界面650的任何部分,其显示关于用于发送或接收媒体项、加密密钥(包裹或未包裹的)、其它信息、或其组合的一个或多个连接相关的信息。该连接可以是对等连接、互联网连接、其它连接或其组合。在一个示例中,在媒体项的加密版本和所包裹的加密密钥正由用户设备接收或从用户设备发送的同时,可以显示连接(例如,对等连接)。在另一个示例中,可以在从用户设备接收包裹或未包裹的加密密钥的同时显示连接(例如,互联网连接)。
对等连接指示符662可以被显示在连接区域660内,并且可以是一种类型的连接的示例。对等连接指示符662可以包括一个或多个设备符号664A和664B、设备信息666A和666B以及连接符号668。一个或多个设备符号664A和664B可以图形地表示设备并且可以具有不同的符号来用于不同类型或类别的设备,诸如手机、平板计算机、膝上型计算机、台式机、服务器、或其它设备。设备信息666A和666B可以包括设备的标识信息,诸如设备标识符(例如,设备名称、用户名、IP地址)和相对标识符,该相对标识符可以指示设备标识符是否与本地设备(例如,“我的设备“)或远程设备(例如,“其它设备”、“发送设备”、“接收设备”)相对应。在一个示例中,连接符号668可以指示用于连接的基础技术,诸如wifi、蓝牙、蜂窝(例如,3G、4G)、其它技术或其组合。
参考图7,用户界面700可以显示针对所选媒体项的信息和用于共享所选媒体项的界面。用户界面700可以包括显示区域710和共享区域720。显示区域710可以包括用于呈现(例如,播放)媒体项的嵌入式媒体播放器。共享区域720可以包括用于共享媒体项的一个或多个选项。第一选项722可以使媒体项能够与附近的用户设备共享。第二选项724可以使媒体项能够与可通过互联网访问的用户共享。当用户输入指示第一选项722的选择时,用户界面700可以前进到用户界面800。
参考图8,用户界面800可以使用户能够选择旨在成为共享媒体项的接收者的一个或多个用户设备。在一个示例中,所显示的用户设备可以是位于用户设备的地理区域中(例如,30英尺内)的用户设备。用户界面800可以包括显示共享设备812和一个或多个接收者设备814A和814B的接收者选择区域810。接收者设备814A和814B相对于共享设备812的位置可以与相对应的用户设备之间的实际物理距离相对应。响应于指示对接收者设备814B的选择的用户输入,用户界面800可以前进到用户界面900。
参考图9,用户界面900可以在传输媒体项之前、期间和之后提供关于共享媒体项的信息。用户界面900可以包括共享指示符区域910和对等连接指示符区域930。共享指示符区域910可以包括媒体条目920,其可以与图6A的媒体条目620相同或相似。对等连接指示符区域930可以显示本地用户设备和所选择的接收者设备。
图10-图14可以包括在接收到共享媒体项时呈现的用户界面的示例,其与发送共享媒体项相反。参考图10,用户界面1000可以在接收媒体项之前、期间和之后提供关于媒体项的信息。用户界面1000可以类似于用户界面600和900,但是可以由接收设备而不是发送设备呈现。用户界面1000可以包括媒体列表1010和对等连接指示符区域1030。媒体列表1010可以包括与图6A的媒体条目620相同或相似的一个或多个媒体条目1020。与图9中所示的接收者设备相反,对等连接指示符区域1030可以显示本地用户设备和所选择的发送设备。
参考图11,用户界面1100可以提供关于在本地用户设备的媒体高速缓存中的媒体项(例如,保存的媒体项)的信息。用户界面1100可以与用户界面600相同或相似,并且可以包括一个或多个媒体条目1120。每个媒体条目1120可以包括媒体可用性指示符1122A或1122B。媒体可用性指示符1122A可以指示媒体项被存储在媒体高速缓存中(例如,离线)但是不可用于播放。这可能是因为媒体项可能是加密的。媒体可用性指示符1122B可以指示媒体项可用于播放或与另一用户设备共享。
参考图12,用户界面1200可以提供关于验证和解密接收的媒体项的信息。用户界面1200可以包括信息覆盖1240,其提供关于解密和验证媒体项的信息。它可以向用户指示可播放性检查可用于确保视频可用并且能够执行验证检查以确保媒体项源自媒体服务器并且没有未经授权的修改(例如,安全威胁)。
参考图13,用户界面1300可以提供与可播放性检查和验证检查相关的信息处理步骤。用户界面1300可以包括状态区域1350,其提供关于解密和验证过程的状态的信息。在一个示例中,它可以显示是否已经完成一个或多个过程中的每一个过程。
参考图14,用户界面1400可以包括通知区域1460,其提供包括图形、文本、音频、触觉、或其它组件的通知。
图15描绘了用于为对等媒体共享应用提供用户界面的方法1500的说明性示例的流程图。方法1500可以类似于上面讨论的方法300、400和500,并且可以集中于在用户设备上提供使用户能够可视化方法300、400和500的一个或多个特征或步骤的图形界面。方法1500可以由用户设备的一个或多个处理设备执行,并且可以在框1502处开始。
在框1502处,用户设备的处理设备可以提供用于显示的包括多个媒体项和多个媒体可用性指示符的用户界面。用户界面可以与图6A的用户界面600相同或相似,并且可以包括媒体可用性指示符626A和626B。处理设备可以响应于接收启动软件组件(例如,移动应用)的用户输入而提供用户界面,或者可以响应于接收以共享(发送或接收)媒体项的请求而自动发起。在一个示例中,多个媒体项中的每一个可以与媒体可用性指示符一起显示。在另一示例中,媒体项中的一些可以与媒体可用性指示符一起显示,并且其它媒体项可以与隐藏的媒体指示符一起显示或者没有媒体指示符地显示。在后一示例中,隐藏的媒体指示符可以指示相对应的媒体项(例如,媒体项的加密版本)正在被接收的过程并且媒体项尚未被保存在用户设备上或者可用于体验。当用户设备正在接收媒体项时,可能存在用户界面的部分,其表示正在从另一设备接收媒体项的加密版本和加密密钥的相对应的包裹版本。
在一个示例中,用户界面可以包括图形控制元件(例如,图6A中的共享控制元件630)以发起通过对等连接对媒体项的加密密钥的包裹版本的接收。在另一示例中,用户界面可以指示用于接收媒体项的加密版本的对等连接(例如,图1的对等连接130),并且指示互联网连接用于解密媒体项(例如,图13中的状态区1350)。对等连接可以被显示为对等连接指示符(例如,图6B中的对等连接指示符662),其标识正在提供媒体项的加密版本的用户设备,并且还标识正在接收媒体项的加密版本的用户设备。
在框1504处,处理设备可以更新媒体可用性指示符中的一个媒体可用性指示符,以表示媒体项的加密版本和加密密钥被保存在本地设备上。该更新可以响应于接收指示已经完成媒体项和加密密钥的下载的信号。在一个示例中,媒体可用性指示符可以用于区分特定媒体项的三种不同状态。第一状态可以指示媒体项未被保存在用户设备上。第二状态可以指示媒体项以加密形式被本地保存。第三状态可以指示媒体项被保存并且可用于体验(例如,由用户设备的用户进行消费)。可以存在更多或更少的状态,并且可以经由用户界面向用户显示更多或更少的状态。
在框1506处,处理设备可以接收对媒体项的加密版本进行解密的指示。可以从用户设备的模块(例如,图2中的解密模块232)接收该指示。解密可以是根据可以用于加密和解密媒体项的加密密钥。加密密钥可以由对等设备或其它远程设备(例如,内容共享平台)接收。在一个示例中,用户设备可以包括包裹的加密密钥,并且可以将所包裹的加密密钥传送到服务器,并且作为响应,可以接收解包裹的加密密钥。然后,用户设备可以使用解包裹的加密密钥以及一个或多个密码功能来解密媒体项。
在框1508处,处理设备可以更新媒体可用性指示符以表示可用于体验的媒体项。更新可以响应于接收解密媒体项的加密版本的指示。更新媒体可用性指示符可以涉及用第二媒体可用性指示符替换第一媒体可用性指示符。更新媒体可用性指示符还可以或替代地涉及修改现有媒体可用性指示符以调整所嵌入的符号、颜色、形状、格式、其它图形属性或其组合。
在一个示例中,可以通过媒体条目在用户界面内表示多个媒体项中的每一个。媒体条目可以包括具有不同形式的数据(例如,图像、文本)的多个图形部分。第一图形部分可以包括媒体项的图像(例如,图6A的图像622),第二图形部分可以包括媒体项的文本信息(例如,图6A的元数据624)。媒体条目或用户界面的一个或多个部分可以被配置为接收与特定媒体项相对应的用户输入并发起对特定媒体项的呈现。用户设备可以经由触摸屏(例如,轻击、滑动、或其它触摸手势)、鼠标/键盘(例如,点击、滚动、键击)、相机(例如,手势)、加速计(例如,摇动),其它感觉装置、或其组合来接收用户输入。可以由被嵌入在用户界面的一部分内的媒体播放器发生对特定媒体项的呈现,或者可以在不同的用户界面内发生。响应于完成参考框1508以上描述的操作,该方法可以终止。
图16描绘了根据本公开的一个或多个方面操作的计算机系统的框图。在某些实现方式中,计算机系统1600可以(例如,经由诸如局域网(LAN)、内联网、外联网、或互联网的网络)连接到其它计算机系统。计算机系统1600可以在客户端-服务器环境中以服务器或客户端计算机的身份运行,或者在对等或分布式网络环境中作为对等计算机运行。可以由个人计算机(PC)、平板PC、机顶盒(STB)、个人数字助理(PDA)、蜂窝电话、网络设备、服务器、网络路由器、交换机或网桥、或任何能够执行指定要由该设备采取的动作的一组指令(顺序地或以其它方式)的设备提供计算机系统1600。此外,术语“计算机”应当包括单独或联合执行一组(或多组)指令以执行本文描述的任何一种或多种方法的任何计算机的集合。
在另一方面,计算机系统1600可包括处理设备1602、易失性存储器1604(例如,随机存取存储器(RAM))、非易失性存储器1606(例如,只读存储器(ROM)或电可擦除可编程ROM(EEPROM))和数据存储设备1616,它们可以经由总线1608相互通信。
处理设备1602可以由一个或多个处理器提供,一个或多个处理器诸如是通用处理器(诸如,复杂指令集计算(CISC)微处理器、精简指令集计算(RISC)微处理器、非常长的指令字(VLIW)微处理器、实现其它类型指令集的微处理器、或实现指令集的类型的组合的微处理器)或专用处理器(诸如,专用集成电路(ASIC)、现场可编程门阵列)(FPGA)、数字信号处理器(DSP)、或网络处理器)。
计算机系统1600还可以包括网络接口设备1622。计算机系统1600还可以包括视频显示单元1610(例如,LCD)、字母数字输入设备1612(例如,键盘)、光标控制设备1614(例如,鼠标)、和信号发生设备1620。
数据存储设备1616可以包括非暂时性计算机可读存储介质1624,其上可以存储编码本文描述的方法或功能中的任何一个或多个的指令1626,其包括编码图2的共享接口组件124并且用于实现方法500的指令。
指令1626还可以在计算机系统1600执行其期间完全地或部分地驻留在易失性存储器1604内和/或处理设备1602内,因此,易失性存储器1604和处理设备1602也可以构成机器可读存储介质。
虽然计算机可读存储介质1624在说明性示例中被示出为单个介质,但是术语“计算机可读存储介质”应当包括存储一组或多组可执行指令的单个介质或多个介质(例如,集中式或分布式数据库、和/或相关联的高速缓存和服务器)。术语“计算机可读存储介质”还应当包括能够存储或编码一组指令以供计算机执行的任何有形介质,该指令使计算机执行本文描述的方法中任何一种或多种。术语“计算机可读存储介质”应当包括但不限于固态存储器、光学介质、和磁介质。
本文描述的方法、组件和特征可以由分立的硬件组件来实现,或者可以被集成在诸如ASICS、FPGA、DSP或类似设备的其它硬件组件的功能中。另外,方法、组件和特征可以由硬件设备内的固件模块或功能电路实现。此外,可以以硬件设备和计算机程序组件的任何组合或者以计算机程序实现方法、组件和特征。
除非另外特别说明,否则诸如“检测”、“确定”、“释放”、“销毁”、“启动”、“创建”或“放弃”等的术语是指由计算机系统执行或实现的动作和过程,其将在计算机系统寄存器和存储器内表示为物理(电子)量的数据操纵和转换成被类似地表示为计算机系统存储器或寄存器或其它此类信息存储、传输或显示设备内的物理量的其它数据。此外、这里使用的术语“第一”、“第二”、“第三”、“第四”等是指用于区分不同元件的标签,并且根据它们的数字标记可以不具有序数含义。
本文描述的示例还涉及用于执行本文描述的方法的设备。该装置可以具体地被构造用于执行本文中描述的方法,或者它可以包括由在计算机系统中存储的计算机程序选择性地编程的通用计算机系统。这样的计算机程序可以被存储在计算机可读有形存储介质中。
这里描述的方法和说明性示例并非固有地与任何特定计算机或其它装置相关。可以根据本文描述的教导来使用各种通用系统,或者可以证明方便地构造更专用的装置以执行方法300、400、500和/或其各个功能、例程、子例程或操作中的每一个。在以上描述中阐述了用于各种这些系统的结构的示例。
以上描述旨在是说明性的而非限制性的。尽管已经参考特定说明性示例和实现描述了本公开,但是将认识到本公开不限于所描述的示例和实现。应该参考所附权利要求以及权利要求所赋予的等同物的全部范围来确定本公开的范围。

Claims (20)

1.一种方法,包括:
由用户设备提供用户界面以用于显示,所述用户界面包括多个媒体项和多个媒体可用性指示符,其中,所述用户界面的媒体可用性指示符指示媒体项的一个或多个状态;
由所述用户设备更新所述媒体可用性指示符,以表示所述媒体项的加密版本和包裹的密钥已通过连接被接收,其中,所述包裹的密钥使用服务器的公钥来加密;
使所述用户界面能够发起向所述服务器的所述包裹的密钥的传输,其中,所述包裹的密钥包括所述媒体项的所述加密版本的加密密钥;
由所述用户设备接收所述加密密钥,所述加密密钥由所述服务器使用所述服务器的私钥来解包裹;以及
更新所述用户界面的所述媒体可用性指示符,以表示所述媒体项能够用于体验。
2.根据权利要求1所述的方法,其中,所述用户界面包括图形控制元件,以用于发起通过所述连接对所述媒体项的所述包裹的密钥的接收。
3.根据权利要求2所述的方法,其中,所述用户界面指示用于接收所述媒体项的所述加密版本的所述连接,并且指示互联网连接被用于所述加密密钥的接收以解密所述媒体项。
4.根据权利要求1所述的方法,其中,所述用户界面包括连接指示符,所述连接指示符标识正在提供所述媒体项的所述加密版本的对等用户设备,并且标识接收所述媒体项的所述加密版本的所述用户设备。
5.根据权利要求1所述的方法,其中,所述媒体可用性指示符被用于在所述媒体项的三种状态之间进行区分,第一状态指示所述媒体项未被保存在所述用户设备上、第二状态指示所述媒体项被保存在所述加密版本中、以及第三状态指示所述媒体项被保存并且能够用于体验。
6.根据权利要求1所述的方法,其中,所述多个媒体项中的每一个通过包括第一图形部分和第二图形部分的媒体条目在所述用户界面内来表示,所述第一图形部分包括相应媒体项的图像,并且所述第二图形部分包括所述相应媒体项的文本信息。
7.根据权利要求1所述的方法,还包括:接收与特定媒体项相对应的用户输入,并且发起对所述特定媒体项的呈现。
8.根据权利要求7所述的方法,其中,所述用户界面包括在所述用户设备上用于所述特定媒体项的所述呈现的部分。
9.一种系统,包括:
存储器;以及
处理设备,所述处理设备可通信地耦合到所述存储器,所述处理设备用以:
提供用户界面,所述用户界面包括多个媒体项和多个媒体可用性指示符,其中,所述用户界面的媒体可用性指示符指示媒体项的一个或多个状态;
由用户设备更新所述媒体可用性指示符,以表示所述媒体项的加密版本和包裹的密钥已通过连接被接收,其中,所述包裹的密钥使用服务器的公钥来加密;
使所述用户界面能够发起向所述服务器的所述包裹的密钥的传输,其中,所述包裹的密钥包括所述媒体项的所述加密版本的加密密钥;
接收所述加密密钥,所述加密密钥由所述服务器使用所述服务器的私钥来解包裹;以及
更新所述用户界面的所述媒体可用性指示符,以表示所述媒体项能够用于体验。
10.根据权利要求9所述的系统,其中,所述用户界面包括图形控制元件,以用于发起通过所述连接对所述媒体项的所述包裹的密钥的所述接收。
11.根据权利要求10所述的系统,其中,所述用户界面指示用于接收所述媒体项的所述加密版本的所述连接,并指示互联网连接被用于接收所述加密密钥以解密所述媒体项。
12.根据权利要求9所述的系统,其中,所述用户界面包括连接指示符,所述连接指示符标识正在提供所述媒体项的所述加密版本的对等用户设备,并且标识接收所述媒体项的所述加密版本的所述用户设备。
13.根据权利要求9所述的系统,其中,所述媒体可用性指示符被用于在所述媒体项的三种状态之间进行区分,第一状态指示所述媒体项未被保存在用户设备上、第二状态指示所述媒体项被保存在所述加密版本中、以及第三状态指示所述媒体项被保存并且能够用于体验。
14.根据权利要求9所述的系统,其中,所述多个媒体项中的每一个通过包括第一图形部分和第二图形部分的媒体条目在所述用户界面内来表示,所述第一图形部分包括相应媒体项的图像,并且所述第二图形部分包括所述相应媒体项的文本信息。
15.一种存储指令的非暂时性机器可读存储介质,所述指令在被执行时,使处理设备:
由用户设备提供用户界面以用于显示,所述用户界面包括多个媒体项和多个媒体可用性指示符,其中,所述用户界面的媒体可用性指示符指示媒体项的一个或多个状态;
由所述用户设备更新所述媒体可用性指示符,以表示所述媒体项的加密版本和包裹的密钥已通过连接被接收,其中,所述包裹的密钥使用服务器的公钥来加密;
使所述用户界面能够发起向所述服务器的所述包裹的密钥的传输,其中,所述包裹的密钥包括所述媒体项的所述加密版本的加密密钥;
由所述用户设备接收所述加密密钥,所述加密密钥由所述服务器使用所述服务器的私钥来解包裹;以及
更新所述用户界面的所述媒体可用性指示符,以表示所述媒体项能够用于体验。
16.根据权利要求15所述的非暂时性机器可读存储介质,其中,所述用户界面包括图形控制元件,以用于发起通过所述连接对所述媒体项的所述包裹的密钥的接收。
17.根据权利要求16所述的非暂时性机器可读存储介质,其中,所述用户界面指示用于接收所述媒体项的所述加密版本的所述连接,并且指示互联网连接被用于接收所述加密密钥以解密所述媒体项。
18.根据权利要求15所述的非暂时性机器可读存储介质,其中,所述用户界面包括连接指示符,所述连接指示符标识正在提供所述媒体项的所述加密版本的对等用户设备,并且标识接收所述媒体项的所述加密版本的所述用户设备。
19.根据权利要求15所述的非暂时性机器可读存储介质,其中,所述媒体可用性指示符被用于在所述媒体项的三种状态之间进行区分,第一状态指示所述媒体项未保存在所述用户设备上、第二状态指示所述媒体项被保存在所述加密版本中、以及第三状态指示所述媒体项被保存并且能够用于体验。
20.根据权利要求15所述的非暂时性机器可读存储介质,其中,所述多个媒体项中的每一个通过包括第一图形部分和第二图形部分的媒体条目在所述用户界面内来表示,所述第一图形部分包括相应媒体项的图像,并且所述第二图形部分包括所述相应媒体项的文本信息。
CN202210620468.5A 2016-09-26 2017-09-21 用户界面用于访问控制使能对等共享的方法、系统及可读存储介质 Pending CN115189879A (zh)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201662399865P 2016-09-26 2016-09-26
US62/399,865 2016-09-26
US15/394,985 US10915216B2 (en) 2016-06-27 2016-12-30 User interface for access control enabled peer-to-peer sharing
US15/394,985 2016-12-30
CN201780053873.0A CN109691012B (zh) 2016-09-26 2017-09-21 用户界面用于访问控制使能对等共享的方法、系统及可读存储介质
PCT/US2017/052756 WO2018057762A1 (en) 2016-09-26 2017-09-21 A user interface for access control enabled peer-to-peer sharing

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201780053873.0A Division CN109691012B (zh) 2016-09-26 2017-09-21 用户界面用于访问控制使能对等共享的方法、系统及可读存储介质

Publications (1)

Publication Number Publication Date
CN115189879A true CN115189879A (zh) 2022-10-14

Family

ID=61689725

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202210620468.5A Pending CN115189879A (zh) 2016-09-26 2017-09-21 用户界面用于访问控制使能对等共享的方法、系统及可读存储介质
CN201780053873.0A Active CN109691012B (zh) 2016-09-26 2017-09-21 用户界面用于访问控制使能对等共享的方法、系统及可读存储介质

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201780053873.0A Active CN109691012B (zh) 2016-09-26 2017-09-21 用户界面用于访问控制使能对等共享的方法、系统及可读存储介质

Country Status (5)

Country Link
EP (2) EP4160989A1 (zh)
JP (3) JP6776443B2 (zh)
KR (2) KR102222900B1 (zh)
CN (2) CN115189879A (zh)
WO (1) WO2018057762A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112910912B (zh) 2016-06-27 2023-08-01 谷歌有限责任公司 用于访问控制的方法和非暂时性机器可读存储介质
CN115189879A (zh) * 2016-09-26 2022-10-14 谷歌有限责任公司 用户界面用于访问控制使能对等共享的方法、系统及可读存储介质
WO2022168777A1 (ja) 2021-02-03 2022-08-11 三菱マテリアル株式会社 熱電変換モジュール、および、熱電変換モジュールの製造方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7170999B1 (en) * 2002-08-28 2007-01-30 Napster, Inc. Method of and apparatus for encrypting and transferring files
GB0312877D0 (en) 2003-06-05 2003-07-09 Koninkl Philips Electronics Nv Secure transfer of data
KR100533678B1 (ko) * 2003-10-02 2005-12-05 삼성전자주식회사 공개 키 기반 구조의 도메인을 형성하여 UPnP를통하여 구현하는 방법
US20050177853A1 (en) * 2004-02-11 2005-08-11 Alio, Inc. System and Methodology for Distributed Delivery of Online Content in Response to Client Selections from an Online Catalog
JP2006014035A (ja) * 2004-06-28 2006-01-12 Toshiba Corp 記憶媒体処理方法、記憶媒体処理装置及びプログラム
US8312267B2 (en) * 2004-07-20 2012-11-13 Time Warner Cable Inc. Technique for securely communicating programming content
CN101015165B (zh) * 2004-08-26 2010-05-05 富士通株式会社 内容管理方法及装置
US8306918B2 (en) * 2005-10-11 2012-11-06 Apple Inc. Use of media storage structure with multiple pieces of content in a content-distribution system
US8356177B2 (en) * 2008-12-30 2013-01-15 Cisco Technology, Inc. Key transport in authentication or cryptography
US8954740B1 (en) * 2010-10-04 2015-02-10 Symantec Corporation Session key proxy decryption method to secure content in a one-to-many relationship
FR2974475B1 (fr) * 2011-04-19 2015-06-05 Viaccess Sa Procede de protection d'un contenu multimedia enregistre
US9514462B2 (en) * 2012-03-02 2016-12-06 Google Inc. Obtaining and managing access to content
US20150358297A1 (en) * 2014-06-06 2015-12-10 Dropbox, Inc. Secure peer-to-peer data sychronization
CN115189879A (zh) 2016-09-26 2022-10-14 谷歌有限责任公司 用户界面用于访问控制使能对等共享的方法、系统及可读存储介质

Also Published As

Publication number Publication date
KR102271755B1 (ko) 2021-06-30
EP3507937A1 (en) 2019-07-10
JP7095047B2 (ja) 2022-07-04
KR20210024252A (ko) 2021-03-04
EP3507937A4 (en) 2020-02-26
KR20190043599A (ko) 2019-04-26
JP2022136079A (ja) 2022-09-15
JP2021015612A (ja) 2021-02-12
CN109691012B (zh) 2022-06-21
CN109691012A (zh) 2019-04-26
EP3507937B1 (en) 2022-11-30
JP6776443B2 (ja) 2020-10-28
EP4160989A1 (en) 2023-04-05
JP2019530073A (ja) 2019-10-17
KR102222900B1 (ko) 2021-03-05
WO2018057762A1 (en) 2018-03-29

Similar Documents

Publication Publication Date Title
US11675472B2 (en) User interface for access control enabled network sharing
US11025432B2 (en) Access control technology for peer-to-peer sharing
EP3482568B1 (en) Providing online media content via a satellite broadcast system
JP7095047B2 (ja) アクセス制御対応ピアツーピア共有のためのユーザインターフェース
JP6189438B2 (ja) メディア・セキュリティ・コントローラを使用したメディア・アイテムの保護
US11936716B2 (en) System and method for providing a secure network
US20210374211A1 (en) Drm sharing and playback service specification selection
EP4202734A1 (en) Separating the authorization of content access and content delivery using multiple cryptographic digital signatures
US20220286300A1 (en) Systems and methods to evaluate client device trust in a distributed computing system
KR20230118627A (ko) 분산형 컴퓨팅 시스템에서 클라이언트 인증 프로세스동안 콘텐츠를 전달하기 위한 시스템들 및 방법들
WO2022072624A1 (en) System and method for providing a secure network
CN117121437A (zh) 使用共置的次要设备来防止Cookie盗窃

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination