The present invention generally relates to distribution of data over a network, and more specifically to purchasing a right to receive digital or analog content.
Increasingly, consumers choose to view programs through a video on demand (VOD) service provided by a cable company or satellite multiple service/systems operator (“MSO”). Typically, a consumer has twenty-four hours in which to view a program that he or she has selected. After this time period, the program is no longer available to the user.
Some users may be unable to view the program within twenty-four hours. If a user still desires to view the program after exceeding this time period, he must reorder the program. He is then required to pay for the program a second time.
Another limitation relates to the automatic transmission of data to the same terminal or device that requested the program. This is problematic for users who travel.
These limitations are also not beneficial to distributors of cable services. For example, some users may forgo selecting a program through the VOD service because of the limited time or location in which to view the program. It is therefore desirable to have a method or system that addresses the disadvantages associated with present cable services that transfer data to a terminal or device.
The invention will become more fully understood from the detailed description and the accompanying drawings, wherein:
Generally, the present invention involves a user selecting or purchasing a right to receive a work (e.g., a movie, etc.) from a distributor. The right to receive a work allows a user to view, play, present, or use the work. The user may receive a work at a time or a location of the user's choosing. For example, a user may select and/or purchase a right to receive a work through his home computer in New Jersey; however, he may elect to receive the work a month later while staying in a hotel in New York, N.Y.
To better understand aspects of the invention, a distributor and a work are defined. A distributor is a person, entity, or business that provides, sells, or leases a right to receive a work. A work is data (i.e., analog or digital data). The work may include an audiovisual work (e.g., movies, computer games, etc.), an audio work (e.g., sound recording etc.), a visual work (e.g., picture, etc.) or a computer program. While a work is generally protected by copyright law, the scope of the definition of a work may include data that may not be protected by copyright law.
The ISP 20 unifies the SP 10A-10D. The ISP 20 creates, owns, sells or licenses at least one copy of a work to a user or an intelligent agent acting on behalf of the user. The ISP 20 includes a VOD server 25, an electronic programming guide (EPG) server 30, a database 23, and a network 40.
The VOD server 25 and the EPG server 30, coupled to the network 40 through the communication link 22, perform a variety of controlling operations. For example, the EPG server 30 transfers data onto the communication link 22 to the network 40 to allow a list of works such as an EPG to be presented on a graphical user interface (GUI) of one of the terminals 50A-50E.
The network 40 such as a head-end is configured to receive, store, or transfer data (e.g., a work, a key, etc.) over a communication link 160 to the terminals 50A-50E. A head-end is the facility at a local cable TV business that originates and communicates cable TV services and cable modem services to users of the terminals 50A-50E.
The network 40 may also poll terminals 50A-50E for data. Polling for data is a form of requesting or checking for information from the terminals 50A-50E. For example, the network 40 may poll a terminal 50A-50E to determine whether a key is available so that the terminal 50A-50E may receive a work. The network 40 may be an analog cable network 105 illustrated in
In one embodiment, the storage medium stores a key (e.g., a cookie, a token, etc.) from network 40 that indicates the user has a right to receive a work. The receiving device 152D also includes a GUI 182, a front panel 184, a pluggable security module (PSM) slot 186 configured to receive a PSM 187 and a radio frequency (RF) input 188.
The PSM 158 and 187 shown in
Referring to
The STB 152A and 152B are commonly used to receive and decode digital television broadcasts. The STB 152A and 152B also interface with a network such as the Internet. The STB 152B may receive and unscramble incoming television signals or perform complex functions such as videoconferencing, home networking, IP telephony, VOD, high-speed Internet TV services or other like services.
Generally, a STB 152A, 152B consists of a platform that includes a central processing unit (CPU), memory, on-screen display (OSD) circuitry, a tuner, a PSM interface, and a secure decoder. The secure decoder typically includes a decryption engine for decrypting data, a MPEG decoder to process digital video content, and a buffer memory that temporarily stores data.
The PSM 158 and the security decoder exchange session keys prior to decoding a work. Through the use of the session key, the PSM 158 is able to provide the key(s) necessary for the security decoder to decode the work. The security decoder uses content keys (e.g., a subscriber key, a PSM session key, a content session key, a security decoder (Sdec) session key, a title key, etc.) to decrypt the work prior to decoding the work. The tuner is configured to receive analog and/or digital data in data packets from the distributor 110. The tuner also passes data in data packets from the distributor 110 to the PSM 158.
The integrated TV 152C includes a STB (not shown). In comparison, the host 152E is either a STB, an integrated television, or a receiving device configured to store and to execute a digital TV (DTV) middleware platform such as the OpenCable™ Application Platform implementation.
The recorder/player 154, coupled to the STB 152B, is configured to record and to play (or present) the work to a user. In another embodiment, the recorder/player 154 is configured to store data such as a key.
Given this description of the components of the system 5, the techniques of the present invention are now presented. In one embodiment, a list of works such as an EPG is displayed on a graphical user interface (GUI) of a terminal 50A-50E. The user of the terminal 50A-50E enters into a transaction by selecting and/or purchasing a right to receive a work from the ISP 20. A transaction is an act between at least two entities or parties. Transaction data is generated at the network 40 and is typically stored in the database 23.
A key (e.g., cookie, token, etc.) is generated and is optionally encrypted by the network 40. The key is sent from the network 40 over the communication link 160 to one of the terminals 50A-50E. The key is stored at the terminal 50A-50E. The key may then be accessed from the terminal 50A-50E and stored on another storage medium such as a portable storage medium. In another embodiment, the key is emailed from the network 40 to a user or to a person designated to receive the key by the user.
The user then chooses to receive a work at any time or place by transmitting the key over the communication link 160 to the network 40 from one of the terminals 50A-50E. For example, the user may choose to receive the work three weeks after selecting and/or purchasing the right to receive work. Additionally, the user may choose to receive the work at a location different from where he selected and/or purchased the right to receive the work. For example, while the user may have selected and/or purchased the right to receive the work on the Internet using his home computer located in New Jersey, he may elect to receive the work through a cable network or across MSO cable network boundaries via a television in his hotel room while vacationing in New York, N.Y.
After receiving the key, the network 40 optionally verifies that the key is valid. For example, the network 40 accesses data that links the selection and/or purchase of a right to receive a work to an account that is associated with a user, a terminal, an entity, and/or a business. The network 40 then compares this data with the key. Thereafter, the VOD server 25 ensures that the work (e.g., movie, television show, etc.) is transferred via the network 40 over a communication link 160 to one of the terminals 50A-50E.
In another embodiment, the present invention controls whether copies may be made in order of a key to receive a work. For example, if the POD includes a slot for a SD Card, then copying of the key (e.g., cookie, token, etc.) can be controlled or prevented. In this embodiment, only the head-end and the POD have the key to access the secure area of the SD card. If the work (e.g. movie) is downloaded to a local removable medium, then the right to receive the cookie can be used to enable the remote POD to decrypt the content from the local removable medium. This is accomplished by providing a media key in the cookie itself. Alternatively, the cookie is sent to the head-end to acquire the media key. If the cookie is portable, the cookie is typically stored on the removable media either in a secure area similar to the secure area in an SD card or in a non-secure area.
In addition to the system 5 illustrated in
In system 300, a first client 310 sends a message to the second client. The message includes a list of available works or a single work. This list is displayed on the GUI of the second client 313. The user of the second client selects and/or purchases a right to receive a work through the GUI and transmits this request to the first client 310. The first client 310 generates and transmits a key to the second client 313 from the first client 310. The second client 313 stores the key in memory (not shown). The user of the second client 313 transmits this key to the first client when the user wishes to receive the work. The user may use the second client 313 or another client to receive the work.
In one embodiment, a list of works or a single work is presented through the GUI of the client 310. The user through the GUI of client 310 selects and/or purchases a right to receive a work. A message is sent from the client 310 to the server 365 regarding the selection of the work. Transaction data related to the user's selection of the work is generated and stored on the server 365 or in a database associated with the server 365.
A key (e.g., a cookie, token, etc.) is then generated and transmitted from the server 365 to the client 310. The key is stored in the memory of a client (e.g., a set-top box). This key can then be stored onto a portable memory device (e.g., SD card, etc.). In one embodiment, the key is e-mailed to the user. The key is accessed and transmitted to the server 365 by a client controlled by a user. The key is optionally authenticated by the server 365. The server 365 transmits the work over a network to the client 310.
The server 365 ensures that the work is only being played on the user's clients or, at most, one client not owned by the user. Conventional security measures may be implemented to protect the key. For example, the key can be password protected. Alternatively, a user's biometric data (e.g., fingerprint, iris scan, etc.) may be required to obtain access to the key.
The key is typically invalidated at the server 365,on the first use of the cookie. This invalidates only the key from use on another client.
In another embodiment, a user may be granted the right to receive a work k times. To ensure that the user can access the work only k times, a first key (e.g., cookie, etc.) is invalidated after one use. A second key is then generated and transmitted to the user. The second key allows k-1 accesses to a work. This embodiment is exemplified by a user that is granted the right to receive a work on five separate occasions. The first key is deleted after its use. The second key is generated thereby granting the user the right to receive a work on four separate occasions. This type of operation continues until his right to receive the work is exhausted.
After some discrete time period has passed, the user decides he wishes to receive the work. A discrete time period is defined as the time in which a distributor (e.g., SP10A-10D or ISP 20 of
Receiving the work at the second client shows the portability feature of the right to receive the work. Examples of the portability feature include transmitting (e.g., email) the right to receive the work to a third person, presenting the right to receive the work as a gift to a third person, and/or using the right to receive the work at a device that was not initially used to request the work (e.g., terminal at a hotel, etc.). The transaction data is then accessed at the server to determine whether the user has the right to receive the work at operation 550. The work is transmitted to either the first or the second clients at any time beyond a discrete time period (e.g. twenty-four hours) and based solely upon the right to receive the work at operation 560. The mode of receiving the work may be different from the mode of selecting or purchasing the work. For instance, the user may have purchased a right to receive the work over a cable network but he elects to receive the work over the Internet.
It will be appreciated that more or fewer processes may be incorporated into the methods described herein without departing from the scope of the invention and that no particular order is implied by the arrangement of blocks shown and described herein. Skilled artisans will appreciate that the methods described herein may be embodied in machine-executable instructions (e.g., software). The instructions can be used to cause a general-purpose or special-purpose processor that is programmed with the instructions to perform the operations described. Alternatively, the operations may be performed by specific hardware components that contain hard-wired logic for performing the operations, or by any combination of programmed computer components and custom hardware components. The methods may be provided as a computer program product that may include a machine-readable medium having stored thereon instructions that may be used to program a computer (or other electronic devices) to perform the methods. For the purposes of this specification, the term “machine-readable medium” includes any medium that is capable of storing or encoding a sequence of instructions for execution by the machine and that cause the machine to perform any one of the methodologies of the invention. The term “machine-readable medium” includes, but is not be limited to, solid-state memories, optical and magnetic disks, and carrier wave signals. Furthermore, it is common in the art to speak of software, in one form or another (e.g., program, procedure, process, application, module, logic, etc.), as taking an action or causing a result. Such expressions are merely a shorthand way of saying that the execution of the software by a computer causes the processor of the computer to perform an action or a produce a result.
Further areas of applicability of the invention will become apparent from the detailed description provided above. It should be understood that the detailed description and specific examples, while indicating the preferred embodiment of the invention, are intended for purposes of illustration only and are not intended to limit the scope of the invention.