This disclosure relates generally to content transfer and, more particularly, to secure content transfer systems and methods to operate the same.
The ever increasing proliferation and/or availability of media players (e.g., personal computers, digital video recorders (DVRs), home media centers, game playing system, etc.) creates a strong demand for systems, devices and/or methods to download video, audio and/or multimedia data, files and/or assets. Today, most media devices are customized for operation with a single content delivery medium, for example, satellite, digital cable, Internet. Additionally, present media devices rely on often incompatible media file formats and transmission protocols. As such, a device that can record, for example, a movie delivered via satellite may be incapable of receiving a movie, even the same movie, via the Internet. Additionally, to reduce piracy, broadcast and/or delivery systems and media players require methods to ensure secure authorization, secure content delivery and secure content storage.
To facilitate review and understanding of the content delivery systems and methods to operate the same disclosed herein, the present patent has been organized in accordance with the following headings:
Secure content transfer systems and methods and methods to operate the same are disclosed. A disclosed example system includes a content server to encrypt content according to an encryption key, and to transfer the encrypted content, the encryption key and a license to a client that supports a digital rights management technology. The example system further includes a broadcast system headend to determine the encryption key, wherein the broadcast system headend is physically separate from the content server, and a digital rights management license server to provide the license.
A disclosed example method includes detecting a content transfer initiation, determining an encryption secret for the initiated content transfer at the content server, wherein the encryption secret is known to a geographically-separate broadcast system headend, and encrypting transferred content based on the encryption secret. The disclosed example method may further include receiving a content transfer license and forwarding the content transfer license. Another disclosed example method includes receiving a content transfer authorization request, determining an encryption secret for the content transfer authorization request, sending the encryption secret to a geographically-separate content server and sending a content transfer license request to a digital rights management license server. The disclosed example method may further include receiving a content transfer license and forwarding the content transfer license. Yet another disclosed example method includes receiving a license renewal request for previously transferred content, determining an encryption secret used to encrypt the previously transferred content, and renewing a content transfer license based on the determined encryption secret.
While the following disclosure is made with respect to example DIRECTV® broadcast services and systems, it should be understood that many other delivery systems are readily applicable to disclosed systems and methods. Such systems include other wireless distribution systems, wired or cable distribution systems, cable television distribution systems, Ultra High Frequency (UHF)/Very High Frequency (VHF) radio frequency systems or other terrestrial broadcast systems (e.g., Multi-channel Multi-point Distribution System (MMDS), Local Multi-point Distribution System (LMDS), etc.), Internet-based distribution systems, cellular distribution systems, power-line broadcast systems, any point-to-point and/or multicast Internet Protocol (IP) delivery network, and fiber optic networks. Further, the different functions collectively allocated among a headend (HE), integrated receiver/decoders (IRDs) and a content delivery network (CDN) as described below can be reallocated as desired without departing from the intended scope of the present patent.
Further, while the following disclosure is made with respect to the delivery of video (e.g., television (TV), movies, music videos, etc.), it should be understood that the systems and methods disclosed herein could also be used for delivery of any media content type, for example, audio, music, data files, web pages, etc. Additionally, throughout this disclosure reference is made to data, information, programs, movies, assets, video data, etc., however, it will be readily apparent to persons of ordinary skill in the art that these terms are substantially equivalent in reference to the example systems and/or methods disclosed herein. As used herein, the term title will be used to refer to, for example, a movie itself and not the name of the movie.
I. Content Delivery System
As illustrated in
Security of assets broadcast via the satellite/relay 104 may be established by applying encryption to assets during content processing and/or during broadcast (i.e., broadcast encryption). For example, an asset can be encrypted based upon a codeword (CW) known to the HE 102 and known to the IRDs 106 authorized to view and/or playback the asset. In the illustrated example DTH system 100, for each asset the HE 102 generates a code word packet (CWP) that includes, among other things, a time stamp, and then determines the codeword (CW) for the asset by computing a cryptographic hash of the contents of the CWP. The CWP is also broadcast to the IRDs 106 via the satellite/relay 104. IRDs 106 authorized to view and/or playback the broadcast encrypted asset will be able to correctly determine the CW by computing a cryptographic hash of the contents the received CWP. If an IRD 106 is not authorized, the IRD 106 will not be able to determine the correct CW that enables decryption of the received broadcast encrypted asset. The CW may be changed periodically (e.g., every 30 seconds) by generating and broadcasting a new CWP. In an example, a new CWP is generated by updating the timestamp included in each CWP. Alternatively, a CWP could directly convey a CW either in encrypted or unencrypted form. Other examples of coordinated encryption and decryption abound, including for example, public/private key encryption and decryption.
In the illustrated example pay content delivery system 100, programs/information from the media source 103 may also be transmitted from the HE 102 to the IRDs 106 via a content delivery network (CDN) 110. In the example of
While the Internet 111 is a multipoint to multipoint communication network(s), persons of ordinary skill in the art will readily appreciate that point-to-point communications via any variety of point-to-point communication signals may be made via the Internet 111. For instance, in the example system of
The example CDN 110 of
In the example content delivery system 100 (i.e., the example DTH system 100), the CDN 110 may be operated by an external vendor (i.e., the CDN 110 need not be operated by the operator of the HE 102). To download files from the CDN 110, the IRDs 106 implement, for instance, an Internet protocol (IP) stack with a defined application layer and possibly a download application provided by the CDN vendor. In the illustrated example, file transfers are implemented using standard Internet protocols (e.g., file transfer protocol (FTP), hypertext transfer protocol (HTTP), etc.). Each file received by an IRD 106 is checked for completeness and integrity and, if a file is not intact, missing and/or damaged portion(s) of the file are delivered and/or downloaded again. Alternatively, the entire file is purged from the IRD 106 and/or is delivered and/or downloaded again. As described below, downloads in the illustrated example system 100 may be interrupted (e.g., paused) and then resumed, at a later time, from the point where the interruption occurred. In fact, as described below in Section II and in connection with
Security of assets available via the CDN 110 may be established by the broadcast encryption applied to an asset before the asset is provided to the CDN 110 and, thus, the CDN 110 is not necessarily required to apply encryption and/or encoding to an asset. For example, the HE 102 may provide to the CDN 110 the CWP(s) for each broadcast encrypted asset provided to the CDN 110. The CDN 110 then downloads the CWP(s) for the asset to an IRD 106 such that, if the IRD 106 is authorized to view and/or playback the asset, the IRD 106 may correctly determine the CW(s) used to broadcast encrypt the asset. In this way, the authorization to view assets downloaded via the CDN 110 is performed in substantially the same fashion as that performed for live and non-live assets broadcast via the satellite/relay 104. If the security of an asset at the CDN 110 is known by the CDN 110 and/or the HE 102 to be compromised, the HE 102 and/or the CDN 110 make the compromised version of the file unavailable (e.g., by purging the file at the CDN 110) for download by other IRDs 106 until the compromised asset is replaced by the HE 102.
In another example, the CDN 110 first verifies that an IRD 106 is authorized to download a file before the CDN 110 allows the IRD 106 to download the file (i.e., the CDN 110 implements a conditional access scheme). Authorization verification may be performed using any of a variety of techniques. Example authorization methods are discussed below in Section III-VI and in connection with
As discussed below in Section VI and in connection with
Furthermore, the CDN 110 may determine an IRD's 106 general geographic location based on, for example, an IP address thereby allowing downloads to be restricted to certain geographic areas (e.g., only domestically, only North America, etc.). Additionally or alternatively, the location of an IRD 106 relative to the CDN 110 may be determined by measuring the round trip travel time of a ping transmitted to the IRD 106. The CDN 110 may also limit the number of downloads by any IRD 106 to, for example, a maximum number of downloads per month, and may provide regular reports on download activity to the HE 102.
To facilitate backchannel communications between the IRDs 106 and the HE 102, the IRDs 106 may be communicatively coupled (e.g., via an Ethernet circuit or modem) to the HE 102 via, for example, a terrestrial communication link, such as a telephone line or, preferably, the Internet 111. Such communication could also be carried out via any variety of wireless and/or cellular return path from the IRD 106 to the HE 102 such as, for example a satellite return path via the satellite/relay 104, a cellular communication network, etc. In general, backchannel communications and/or information sent from the HE 102 to an IRD 106 may be secured using any of a variety of techniques such as, for example, encryption. As discussed in more detail below in Sections III-VI and in connection with
Example devices 114 coupled to the IRD 106 include a personal computer (PC), a portable media player, a media extender, a game playing system, a media client, etc. As illustrated in
The example DTH system 100 of
In addition to the delivery of live content (e.g., a TV program) and/or information, the example HE 102 of
As illustrated in
In the illustrated example of
In contrast, Internet-based delivery via the CDN 110 can support a large number of titles, each of which may have a narrower target audience. Further, Internet-based delivery is point-to-point (e.g., from an Internet-based content server 112 to an IRD 106) thereby allowing each user of an IRD 106 to individually select titles. In the illustrated example of
In the example DTH system 100, each asset (e.g., program, title, TV program, etc.) is pre-packetized and, optionally, pre-encrypted and then stored as a data file (i.e., an asset file). Subsequently, the asset file may be broadcast via the satellite/relay 104 and/or sent to the CDN 110 for download via the CDN 110 (i.e., Internet-based delivery). In particular, if the data file is broadcast via the satellite/relay 104, the data file forms at least one payload of a resultant satellite signal. Likewise, if the data file is available for download via the CDN 110, the data file forms at least one payload of a resultant Internet signal.
It will be readily apparent to persons of ordinary skill in the art that even though the least one payload of a resultant signal includes the data file regardless of broadcast technique (e.g., satellite or Internet), how the file is physically transmitted may differ. In particular, transmission of data via a transmission medium (e.g., satellite, Internet, etc.) comprises operations that are: (a) transmission medium independent and b) transmission medium dependent. For example, transmission protocols (e.g., transmission control protocol (TCP)/IP, user datagram protocol (UDP), encapsulation, etc.) and/or modulation techniques (e.g., quadrature amplitude modulation (QAM), forward error correction (FEC) employed, etc.) used to transmit a file via Internet signals (e.g., over the Internet 111) may differ from those used via satellite (e.g., the satellite/relay 104). In other words, transmission protocols and/or modulation techniques are specific to physical communication paths, that is, they are dependent upon the physical media and/or transmission medium used to communicate the data. However, the content (e.g., a file representing a title) transported by any given transmission protocol and/or modulation is agnostic of the transmission protocol and/or modulation, that is, the content is transmission medium independent.
In the illustrated example of
As described below in conjunction with
The stream of data packets (i.e., a bitstream) is then broadcast encrypted by an encrypter 240 using, for example, the well-known Advanced Encryption Standard (AES) or the well-known Data Encryption Standard (DES). In an example, only the payload portion of the data packets are encrypted thereby allowing an IRD 106 to filter, route and/or sort received broadcast encrypted data packets without having to first decrypt the encrypted data packets. To facilitate broadcast of the encrypted bitstream, the encrypted bitstream passes from the encrypter 240 to a multiplexer and modulator 245 that, using any of a variety of techniques, multiplexes any number of encrypted bitstreams together and then modulates a carrier wave with the multiplexed encrypted bitstreams. The modulated carrier wave is then passed to any variety of uplink frequency converter and radio frequency (RF) amplifier 250, which, using any of a variety of techniques, converts the modulated carrier wave to a frequency band suitable for reception by the satellite/relay 104 and applies appropriate RF amplification. The up-converted and amplified signal is then routed from the uplink frequency converter 250 to the uplink (i.e., transmit) antenna 107 where it is transmitted towards the satellite/relay 104.
While a particular broadcast system 205 is illustrated in
As discussed above, content, data and/or information provided by the sources 208-214 may be live, real time and/or non-real time. For example, a first program source 208 may provide a live TV program while a second program source 208 provides a previously recorded title (e.g., a movie, a music video, etc.). In the illustrated example of
As discussed above in connection with
The program sources 208 receive video and audio programming from a number of sources, including satellites, terrestrial fiber optics, cable, or tape. The video and audio programming may include, but is not limited to, television programming, movies, sporting events, news, music or any other desirable content. The program sources 208 may provide the video and audio programming in the form of, for example, a bitstream or a file.
The control data source 210 passes control data to the media handler 206 such as, for example, data representative of a list of SCIDs to be used during the encoding process, or any other suitable information.
The data service source 212 receives data service information and web pages made up of data files, text files, graphics, audio, video, software, etc. Such information may be provided via a network 260. In practice, the network 260 may be the Internet 111, a local area network (LAN), a wide area network (WAN) or a PSTN. The information received from various sources is compiled by the data service source 212 and provided to the media handler 206. For example, the data service source 212 may request and receive information from one or more websites 265. The information from the websites 265 may be related to the program information provided to the media handler 206 by the program sources 208, thereby providing additional data related to programming content that may be displayed to a user at an IRD 106.
The program guide data source 214 provides information that the IRDs 106 use to generate and display a program guide to a user, wherein the program guide may be a grid guide that informs the user of particular programs that are available on particular channels at particular times. The program guide also includes information that an IRD 106 uses to assemble programming for display to a user. For example, if the user desires to watch a baseball game on his or her IRD 106, the user will tune to a channel on which the game is offered. The program guide contains information required by an IRD 106 to tune, demodulate, demultiplex, decrypt, depacketize and/or decode selected programs.
In the illustrated example HE 102 of
To pre-packetize the pre-encoded asset to one of any variety of formats suitable for distribution (e.g., an asset file) and, optionally, to pre-encrypt the asset file, the example media handler 206 of
It will be readily apparent to persons of ordinary skill in the art that content processing, that is, the processes of pre-encoding, pre-packetizing and, optionally, pre-encrypting assets to form asset files may be performed in non-real time. Preferably, content processing is implemented as an automated workflow controlled by a traffic and scheduling system (TSS) 315. In particular, the TSS 315 can schedule content processing for a plurality of received assets based upon a desired program lineup to be offered by the example DTH system 100 of
In the illustrated example of
For satellite distribution, the SMA 330, as instructed by the TSS 315, sends an asset file to the broadcast system 205 at a scheduled broadcast time. As described above in connection with
In the illustrated example of
For Internet distribution, the SMA 330, as instructed by the TSS 315, sends an asset file to the CDN 110 at a scheduled time via a dedicated private access line (e.g., a digital signal level 3 (DS-3) communication link, a optical carrier level 3 (OC-3) fiber optic link, etc.) or a secure virtual private network (VPN) link. In the illustrated examples of
To provide program guide information to the IRDs 106, the example HE 102 of
To schedule content processing, APG data updates as well as content delivery via the broadcast system 205 and/or the CDN 110, the example HE 102 of
In the example HE 102 of
To facilitate backchannel communications between the IRDs 106 and the HE 102, the illustrated example HE 102 includes any of a variety of broadband interfaces 340 that communicatively couples the HE 102 to the IRDs 106 via the Internet 111. As described above, the broadband interface 340 using any of a variety of techniques may realize secure communications between the HE 102 and the IRDs 106. Alternatively, the broadband interface 340 provides any of a variety of modem interfaces to a PSTN. The broadband interface 340 also facilitates interaction of the IRDs 106 with a web interface 345 and/or the conditional access system (CAS) 350. To allow users of the IRDs 106 to subscribe to services, purchase titles, change preferences, etc., the example HE 102 of
In the example DTH system 100 of
In the illustrated example of
To store received and/or recorded programs and/or assets, the example IRD 106 of
Specifically, the example IRD 106 of
The example front end modules 510 of
The transport module 520 receives the transport stream of digitized data packets containing video, audio, data, scheduling information, data files, and other information. As described above, the data packets contain identifying headers. To route and/or connect data packets and/or bitstreams between various components and/or devices of the transport module 520, the example transport module 520 includes a stream manager 521. In one example, a channel de-multiplexer 522, under control of the controller module 505, filters out packets that are not currently of interest, and the stream manager 521 routes the data packets of interest through a DES decryption circuit 523. In the example DTH system 100 of
To allow additional encryption to be applied to received broadcast encrypted data packets prior to storage on the HDD 425, the example IRD 106 of
The authorized and decrypted data of interest, which now consists of, for example, encoded audio/video data, are, for example, forwarded to decoder dynamic random access memory (DRAM) for buffering (not shown). The display module 530 and/or the audio module 535, using any of a variety of techniques and/or methods, decode the received encoded audio/video data, as needed. For example, a video decoder 532 reads the encoded video data, parses it, obtains quantized frequency domain coefficients, and then performs an inverse quantization, an inverse discrete cosine transform (DCT) and motion compensation. At this point, an image is reconstructed in the spatial domain and stored in a frame buffer (not shown). At a later time, the image is read out of the frame buffer and passed to an encoder 534. Alternatively or additionally, the display module 530 may generate graphics that allow, for example, an electronic program guide to be displayed. The video encoder 534 may convert the digital video signals to, for example, an analog signal according to the NTSC standard or to another desired output protocol (e.g., a protocol defined by the ATSC), thereby allowing video to be received by the display device 420 (
To communicatively couple the example IRD 106 to a HE 102 and/or a CDN 110, the illustrated example interface module 550 includes a network interface 435 and/or a conventional modem 551. In the example of
To receive inputs and provide outputs, the illustrated example IRD 106 includes the front panel module 560 that provides an interface between the controller module 505 and a plurality of input and/or output devices (e.g., devices 562, 564, 566 and 568). To read and/or write data to any of a variety of smart cards, the example IRD 106 includes the smart card reader 562. To receive user inputs and/or selections from a remote control, the IRD 106 includes an infrared (IR) receiver 564. In addition, support for a RF remote control, e.g. that uses UHF frequencies instead of IR frequencies, may be offered through a RF receiver module (not shown). A user may also provide inputs and/or control the example IRD 106 via one or more buttons (e.g., power on/off, play, etc.) 566 physically located on the IRD 106. To provide user prompts, status, date, time, etc. information to a user, the illustrated example includes any of a variety of display devices 568, for example, a liquid crystal display (LCD).
The controller module 505 may be implemented using any of a variety of techniques, devices, components and/or circuits. An example controller module 505 includes one of any variety of microprocessors, processors, controllers, CPUs 507, an electronically erasable programmable read only memory (EEPROM) 508 and flash memory 509 to store, for example, machine readable instructions that may be executed by the CPU 507, a static random access memory (SRAM) 506 to store data and/or variables used and/or accessed by the CPU 507, or other memory.
Reception of content (i.e., assets) by downloading them from a CDN 110 may be performed by the example IRD 106 of
Assets and/or programs received via the satellite/relay 104 include a program clock reference (PCR) that may be used by the transport module 520, the display module 530 and/or the audio module 535 during playback of the received assets and/or programs. Assets and/or programs received from a CDN 110 do not include a PCR and, thus, the IRD 106 assumes the PCR is running exactly at 27 MHz and therefore runs its internal clock 580 at its default frequency. Like assets and/or programs received via the satellite/relay 104, for assets received via the CDN 110, the display module 530 and/or the audio module 535 use presentation time stamps (PTS) to maintain appropriate frame rates and to established audio and video synchronization. In particular, the IRD 106 uses the first PTS encountered to set the phase of the clock 580.
In one example, the satellite receiver card 602 includes a front end module 510 and a transport module 520. The implementation and/or interconnection of these devices are substantially the same as shown and described in conjunction with
The audio/video decoder card 604 includes an audio/video decoder 630, an optional NTSC and/or ATSC output driver 632 and a video graphics adapter (VGA) output driver 634. As described below in detail, the satellite receiver card 602 can receive and the audio/video card 604 can decode the signal received from the LNB 405.
In operation, an incoming signal from the LNB 405 is received by the satellite receiver card 602 and passed through a series of initial processing operations including the front end module 510 and the transport module 520. Although the functional circuits within the transport module 520 are not illustrated, they may, for example, be identical to those described above in connection with
The transport module 510 passes the data to the audio/video decoder 630 of the video/audio decoder card 604. The authorized data of interest are stored in system RAM (not shown) for buffering, and the video/audio decoder 630 retrieves the data from RAM as needed. For video data, the audio/video decoder 630 reads in the encoded video data from its RAM, and, using any of a variety of techniques and/or methods, decodes the encoded video data and stores the resulting video data in a frame buffer in the video decoder's RAM. At a later time, the image may be read out of the frame buffer and passed through the display circuitry to the VGA output driver 634 and optionally, to the NTSC and/or ATSC output driver 632, the output of which may be coupled to the display device 420. The display circuitry may also generate graphics and text for a graphical user interface (GUI), such as an electronic program guide, to be displayed.
Although not shown, any one or more of the cards 602-608 may include one or more processors to execute machine readable instructions that may be used to implement the example methods, processes, apparatus, and/or systems described herein. Also, the allocation of memory and control functions may be arbitrarily divided between the cards 602-608 of the example IRD 106 of
Although the example IRDs 106 illustrated in
In the illustrated example DTH system 100, the HDD 425 of the example IRDs 106 of
As discussed above, the example IRDs 106 of
In the example IRDs 106 of
Since the example IRDs 106 of
The example IRDs 106 illustrated in
In the illustrated example of
When the encrypted video stored on the HDD 425 is to be played back, the encrypted video is first decrypted by the AES decrypter 528 using the CPCW and then the resulting broadcast encrypted video is further decrypted using the CW by the DES decrypter 523 or an AES decrypter 525, depending upon the type of broadcast encryption performed by the encrypter 324 or the encrypter 240. Audio and data are handled in a similar manner. The decrypted data may be subsequently decoded and played back for viewing by a user of the IRD 106 as described above in connection with
The example process of
Returning to block 805, if the scheduled time to create an asset has not arrived, the TSS 315 determines if a scheduled time to broadcast an asset has arrived (block 815). If a scheduled time to broadcast an asset has arrived (block 815), the TSS 315 determines if the asset is to be transmitted via the satellite/relay 104 (block 820). If the asset is to be transmitted via the satellite/relay 102 (block 820), the SMA 330 configures the broadcast system 205 by, for example, carrying out the example process described below in conjunction with
At block 830, if the asset is to be transmitted to a CDN 110, the SMA 330 under the control of the TSS 315 transmits the asset to the CDN 110 using the assigned BOC channel of the link (block 835). If the transfer is not successful (block 840), the SMA 330 re-transmits the asset to the CDN 110 (block 835). Once the asset has been successfully transmitted to the CDN 110 (block 840) and/or the broadcast system 205 has been configured (block 825), control returns to block 802 to await another new event. If the asset is not to be transmitted to a CDN 110 (block 830), control returns to block 802 to await another new event.
The example process of
Once the video asset has been correctly pre-encoded and packaged according to the CableLabs specification for VoD content, the packetizer 322 pre-packetizes the pre-encoded asset (block 925). If the pre-packetized pre-encoded asset is to be pre-encrypted (block 930), the encrypter 324 pre-encrypts the pre-packetized pre-encoded asset (block 935). The broadcast encrypted or unencrypted asset is then stored, along with descriptive information (i.e., program name and/or other labels) in the repository 322 (block 940) and control returns to, for example, the example process of
The example process of
Returning to block 1005, if the asset is not live, the SMA 330 sends the asset file of the asset to the multiplexer/modulator 245 of the example broadcast system 205 of
To control, manage and/or configure the example Internet-based content server 112 of
To store one or more pre-encoded, pre-packetized and, optionally, pre-encrypted asset files, the example Internet-based content server 112 of
To process content delivery requests received from the IRDs 106, the illustrated example Internet-based content server 112 includes a request processor 1125. The request processor 1125 uses, for example, IRD 106 identifiers and/or authorization results stored in the database 1120 to determine is an IRD 106 is allowed to download an asset file.
To encrypt or additionally encrypt an asset file prior to download to an IRD 106, the example Internet-based content server 112 of
Example usage of the Internet-based content server 112 of
The contents of the example asset file may subsequently be made available for download via the CDN 110 and, in particular, an Internet-based content server 112. The Internet-based content server 112, using any of a variety of techniques, receives and stores the example asset file. In particular, a data structure used by the Internet-based content server 112 to store the asset file maintains, intact, the plurality of encrypted data packets 1218A-C created and provided by the HE 102. When an IRD 106 downloads the example asset file, the Internet-based content server 112 encapsulates the plurality of encrypted data packets 1218A-C, via, for instance, an IP stack 1220 into one or more IP packets that are sent to the IRD 106 via the Internet 111 (i.e., an Internet signal). An example IP packet 1225 (i.e., Internet signal 1225) includes an IP header 1227 and a payload carrying one or more of the plurality of encrypted data packets 1218A-C. At an IRD 106, the network interface 435 (
Additionally or alternatively, the broadcast encrypted data packets 1218A-C may be immediately broadcast via the satellite/relay 104 and/or the contents of the example asset file may be broadcast via the satellite/relay 104 at a later time. In either case, the stream of broadcast encrypted data packets 1218A-C are multiplexed and modulated by the multiplexer/modulator 245 (
As illustrated in the example of
II. Flexible Content Delivery
As described above in connection with the example DTH system 100 of
As also described above, the satellite signal(s) broadcast by the HE 102 represent one or more programs. In the illustrated example of
By nature, the reception of a program by a large plurality of IRDs 106 via the satellite/relay 104 is bandwidth efficient. That is, a program may be broadcast once and simultaneously received by the large plurality of IRDs 106. However, because channels (i.e., transponders) are limited on the satellite/relay 104, the number of programs simultaneously supported by the satellite/relay 104 is correspondingly limited. Also by nature, the reception of a program by a large plurality of IRDs 106 via the CDN 110 is bandwidth inefficient. In particular, each program downloaded by an IRD 106 requires a separate transmission from the CDN 110 to an IRD 106 and, thus, downloads of a single program by a large plurality of IRDs 106 requires a correspondingly large plurality of separate transmissions.
In recognition of the above capabilities, characteristics and/or inherent advantages of the example DTH system 100 of
In the illustrated example of
To allow the IRD 106 to start recording the program 1305 at time 1315 into, for example, a file 1325 on the HDD 425 of the IRD 106, even though the HE 102 is currently part way through transmission of the program 1305 via the satellite/relay 104, the IRD 106 in the illustrated example downloads 1335 the beginning portion 1320 of the file from the CDN 110 and starts recording 1340 the remaining portion 1345 of the program 1305 from the satellite signal. Because the same stream of encrypted data packets is receivable via the satellite/relay 104 and/or the CDN 110, the IRD 106 can seamlessly splice at a point in the program designated by reference numeral 1350 the portion 1320 of the program downloaded from the CDN 110 while the remaining portion 1345 of the program 1305 is recorded from the satellite signal. For instance, the IRD 106 may use the sequence numbers in the headers of the encrypted data packets to assemble a complete set of encrypted data packets, that is, to ensure no data packets are duplicated or missing. Obviously, the file 1325 thus created is identical to either recording the entire program 1305 from the satellite signal or downloading the entire program 1305 from the CDN 110.
After downloading at least some of the portion 1320 from the CDN 110, the IRD 106 may, additionally or alternatively, immediately start displaying (i.e., decoding and playing back) the program 1305 while simultaneously recording the portion 1345 (i.e., the remainder of the program 1305) from the satellite signal. Once the entire downloaded portion 1320 has been displayed, the remaining portion 1345 can be decoded and played back from the portion 1345 recorded from the satellite signal.
If an asset file for the example program 1305 is not available via the CDN 110, the IRD 106 may wait for the next time the program 1305 is broadcast. Furthermore, if the program 1305 is intended to not be played back right away, the IRD 106 may alternatively download the portion 1345 now, and record the portion 1320 at a later time.
Starting at a later point in time designated by reference numeral 1420 and continuing to a point in time designated by reference numeral 1425, reception of the satellite signal by the IRD 106 is inhibited by, for example bad weather. Between the point in times 1420 and 1425, a portion 1430 of the program 1405 is, thus, not receivable by the IRD 106 via the satellite signal. In the example of
Because the same stream of encrypted data packets is receivable via the satellite/relay 104 and/or the CDN 110, the IRD 106 can seamlessly splice at points in the program designated by reference numerals 1435 and 1440 the portion 1430 of the program downloaded from the CDN 110 with the beginning and end of the program 1405 recorded from the satellite signal (i.e., the portion of the program 1405 received via the satellite signal prior to point in the program 1420 and after point in the program 1425). Of course, the file 1415 thus created is identical to either recording the entire program 1405 from the satellite signal or downloading the entire program 1405 from the CDN 110.
After downloading at least some of the portion 1420 from the CDN 110, the IRD 106 may, additionally or alternatively, immediately starting displaying (i.e., decoding and playing back) the program 1405 while simultaneously recording the remainder of the program 1405 including, for example portion 1430.
If an asset file for the example program 1405 is not available via the CDN 110, the IRD 106 may wait for the next time the program 1405 is broadcast. Furthermore, if the program 1405 is intended to not be played back right away, the IRD 106 may alternatively record the portion 1430 at a later time.
The example process of
Returning to block 1515, if the new program has not already started, the IRD 106 waits for the start of the new program (block 1535). When the new program starts (block 1535), the IRD 106 starts recording and/or playback of the new program received via the satellite signal (block 1540).
At block 1545, after recording from the satellite has begun at either block 1520 or block 1540, the IRD 106 determines if reception of an ongoing satellite signal is interrupted. If no interrupt occurs (block 1545), the IRD 106 determines if downloading of the program has completed via the CDN 110 and/or the satellite signal (block 1547). If download of the program has not completed (block 1547), control returns to block 1545 to monitor for a satellite signal interruption. If recording of the program has completed (block 1547), control returns from the example machine executable instructions of
Returning to block 1545, if a satellite signal interruption occurs, the IRD 106 starts downloading and recording the missing (i.e., interrupted) portion of the program (e.g., the example missing portion 1430 of
The downloading from the CDN 110 of any missing and/or beginning portion(s) continues in parallel to recording via the satellite signal, if necessary, to complete reception and recording of the selected program. Of course, if the interruption occurs during a recording for later playback, the downloading and recording of the missing portion of the program need not occur simultaneously with the reception of the satellite signal.
III. Conditional Access of Broadband Content
As described above in connection with the example DTH system 100 of
To facilitate more efficient utilization of the CDN 110 and/or the Internet 111 and/or to reduce costs associated with operating the example pay content delivery system 100 of
Multiple methods may be implemented to pre-authorize program downloads. An example method is described below in connection with
The CDN 110 stores the authorization information 1610 in, for example, the database 1120 (
After and/or during download, the IRD 106 may decrypt and/or playback the program as described above in connection with
In an example, the authorization request 1605 may contain information that the HE 102 may use to verify the identity of the IRD 106. For example, an identification number for a smart card inserted in the smart card reader 562 (
Additionally or alternatively, the content request 1615 is cryptographically enhanced. For example, any of a variety of cryptographic hashes could be applied to the content request 1615 prior to transmission. For instance, the IP address of the IRD 106 may be used to scramble the content request 1615 to prevent “copy” and/or “replay” type piracy attacks. If the CDN 110 is unable to correctly decipher the content request message 1615 the CDN 110 ignores the content request 1615 and/or returns an error message. The content request 1615 may include a periodically or aperiodically changing number received by the IRD 106 in a satellite signal broadcast by the HE 102 to verify that the IRD 106 is currently part of the example pay content delivery system 100 of
The example process of
If the download is authorized (block 1715), the IRD 106 downloads the program from the CDN 110 (block 1720) and control returns to block 1702 to await another program selection. Authorization may be determined by, for example, the start of reception (i.e., download) of the program from the CDN 110. The CDN 110 may, alternatively, send an authorization response message to the IRD 106 prior to the start of the download or send an authorization rejection message to the IRD 106. The IRD 106 may also use a timeout to determine that the download was not authorized. If authorization is rejected or download doesn't start, the IRD 106 presents, for example, an authorization denied message to the user (block 1725) and control returns to block 1702 to wait for another program selection. Alternatively, the IRD 106 may retry, one or more times, the authorization request (block 1705) and/or content request (block 1710). In particular, one retry of the content request (block 1710) may be beneficial to ensure that the CDN 110 had adequate time to receive and process authorization information provided by the HE 102. Alternatively, the IRD 106 may wait a period of time before sending the content request message (block 1710).
The example process of
The example process of
If a content request is received (e.g., the content request 1615 of
IV. Signed Conditional Access of Broadband Content
As described above in Sections I and III, to facilitate more efficient utilization of the CDN 110 and/or the Internet 111 and/or to reduce costs associated with operating the example pay content delivery system 100 of
The authorization 1810 may be signed using any of a variety of techniques such as, for example, the authorization 1810 may be signed using a secret key (e.g., the secret key 1812) known to both the CAS 350 (
The IRD 106 then sends a content request 1815 (e.g., via a content request message) and a corresponding signed authorization 1820 (e.g., via a signed authorization message) to the CDN 110. In the example of
After and/or during download, the IRD 106 may decrypt and/or playback the program as described above in connection with
In an example, the authorization request 1805 may contain information that the HE 102 may use to verify the identity of the IRD 106. For example, an identification number for a smart card inserted in the smart card reader 562 (
Additionally or alternatively, the content request 1815 and/or the signed authorization 1820 may be cryptographically enhanced. For example, any of a variety of cryptographic hashes could be applied to the content request 1815 and/or the signed authorization 1820 prior to transmission. For instance, the IP address of the IRD 106 may be used to scramble the content request 1815 to prevent “copy” and/or “replay” type piracy attacks. If the CDN 110 is unable to correctly decipher the content request message 1815 the CDN 110 ignores the content request 1815 or returns an error message. The content request 1815 may include a periodically or aperiodically changing number received by the IRD 106 in a satellite signal broadcast by the HE 102 to verify that the IRD 106 is currently part of the example pay content delivery system 100 of
The example process of
When an authorization response is received (block 1910), the IRD 106 based upon information in the authorization response determines if the requested download is authorized (block 1914). If the download is not authorized (block 1914), the IRD 106 presents, for example, an authorization denied message to the user (block 1918) and control returns to block 1902 to wait for another program selection.
If the download is authorized (block 1914), the IRD 106 sends a content request (e.g., the content request 1815 of
The example process of
The example process of
When a content request is received (e.g., the content request 1815 of
If the signature of the authorization response is verified (block 1975), the CDN 110 transfers the program to the IRD 106 (block 1980) and control returns to block 1960 to wait for another new event. If the authorization response is not verifiable (block 1975), the CDN 110 sends a rejection response to the IRD 106 (block 1985) and control returns to block 1960 to wait for another new event.
V. Validated Conditional Access of Broadband Content
As described above in Sections I and III, to facilitate more efficient utilization of the CDN 110 and/or the Internet 111 and/or to reduce costs associated with operating the example pay content delivery system 100 of
When a user of an IRD 106 selects a program (e.g., a movie, a TV program, a music video, an asset file, etc.) for download via the CDN 110, the IRD 106 sends a content request 2015 (e.g., via a content request message) and any of a variety of validation data 2020 (e.g., via a validation data message) to the CDN 110. An example validation data message 2020 includes a cryptographic signature of the IRD 106 or a shared secret. In the example of
In a presently preferred example, the IRDs 106 utilize a common shared secret to authenticate themselves to the CDN 110. In particular, the HE 102 broadcasts a shared secret 2005 that may be, for example, changed periodically or aperiodically by the HE 102, to all authorized IRDs 106 as well as to the CDN 110 (not shown). Preferably a portion of the content request 2015 (e.g., the URL of the requested asset) is cryptographically hashed with the shared secret, thus, eliminating the need to expressly send the validation data 2020. That is, the content request 2015 and an authorization message containing validation data 2020 are combined since the validation data 2020 is used to cryptographically modify the content request 2015.
In the illustrated example of
The IRD 106 registers with the HE 102 by sending a client registration 2104 (e.g., a client registration message). In response to the client registration 2104, the HE 102 determines a private key 2106 and a corresponding public key 2108 for the IRD 106, sends the private key 2106 to the IRD 106 (e.g., via a private key message), and sends a certified version of the public key 2108 to the IRD 106 (e.g., via a public key message). In the example of
When a user of an IRD 106 selects a program (e.g., a movie, a TV program, a music video, etc.) for download via the CDN 110, the IRD 106 sends a content request 2112 (e.g., via content request message) and a client signature 2114 (e.g., via a client signature message) to the CDN 110 together with the previously received certified public key 2108 in, for example, the message 2110. Using the certified public key 2108, the request processor 1125 (
In the illustrated examples of
In the examples of
The example process of
Once validation secrets have been received (block 2204) and stored (block 2206), the IRD 106 determines if a user selected a program for viewing and/or playback (block 2208). If a program selection was made (block 2208), the IRD 106 generates and sends a content request (e.g., the content request 2015 of
Alternatively, as discussed above, the content request sent at block 2210 may contain additionally information useable to authorize the IRD 106 to download the program and, thus, the IRD 106 may skip sending the validation data (block 2212). For example, the IRD 106 may receive a shared secret via the satellite/relay 104 and then use the shared secret to scramble the content request (block 2210).
The example process of
The example process of
Alternatively, instead of receiving the validation data (block 2268), the received content request (block 2266) could be de-scrambled using the current shared secret to verify the authorization and/or authenticity of the content request (block 2270).
The example process of
The IRD 106 waits until a user selects a program for viewing and/or playback (block 2310). When a program selection is received (block 2310), the IRD 106 generates a content request. The IRD 106 signs the content request with the private key of the IRD 106 (block 2312), and sends the signed content request (e.g., the content request 2112 of
In an example, upon sending the content request (block 2312) and/or the signature (block 2314), and/or the certified public key (block 2315) the IRD 106 starts a count down timer. When the timer expires, the IRD 106 ceases waiting for the download to start (block 2316) and control returns to block 2310 to wait for another program selection. Alternatively, the IRD 106 may receive a message from the CDN 110 indicating that authorization failed.
The example process of
The example process of
The CDN 110 waits to receive a content request from an IRD 106 (block 2354). If a content request (e.g., the content request 2112 of
If a certified public key was received and certification verified (block 2362), the CDN 110 verifies the authenticity of the content request based on the client signature using the certified public key (block 2364). If the content request is authentic (block 2366), the CDN 110 starts transferring the requested content (block 2368) and control returns to block 2354 to await another content request. If the content request is not authentic (block 2366), the CDN 110 notifies the IRD 106 by, for example, sending a download rejection (block 2370) and control returns to block 2354 to wait for another content request.
VI. Additionally Encrypted Broadband Content Delivery
As described above in Sections I and III, to facilitate more efficient utilization of the CDN 110 and/or the Internet 111 and/or to reduce costs associated with operating the example pay content delivery system 100 of
In the illustrated example of
The CDN 110 stores the authorization information and the encryption key 2410 in, for example, the database 1120 (
After and/or during download, the IRD 106 may decrypt and playback the program as described below in connection with
In the illustrated example of
In the example of
In the examples of
Additionally or alternatively, the example content request 2415 of
The example process of
If the download is authorized (block 2615), the IRD 106 downloads the program from the CDN 110 (block 2620) and decrypts the downloaded program for playback using the received encryption key (block 2622). Control then returns to block 2602 to await another program selection. Authorization may be determined by, for example, the start of reception (i.e., download) of the program from the CDN 110. The CDN 110 may, alternatively, send an authorization response message to the IRD 106 prior to the start of the download. The IRD 106 may also use a timeout to determine that the download was not authorized. If neither an authorization response nor download start occurs, the IRD 106 presents, for example, an authorization denied message to the user (block 2625) and control returns to block 2602 to wait for another program selection. Alternatively, the IRD 106 may retry, one or more times, the authorization request (block 2605) and/or content request (block 2610). In particular, one retry of the content request (block 2610) may be beneficial to ensure that the CDN 110 had adequate time to receive and process authorization information provided by the HE 102. Alternatively, the IRD 106 may wait a period of time before sending the content request message (block 2610).
The example process of
The example process of
If a content request is received from an IRD 106 (e.g., the content request 2415 of
VII. Secure Content Sharing in a Home Network
As described above in connection with the example DTH system 100 of
In the example of
Alternatively, as discussed above in connection with
In the illustrated example of
An example CAP is a RID message (MSG) 2712 associating a RID with a Family Key (FK) and a Pairing Key (PK). In the examples of
Another example CAP is a PEK MSG that contains, for the smart card 2730, a personal entitlement key (PEK) that the smart card 2730 may use to encrypt received CWP(s) 2722 prior to storing the received CWP(s) 2722 on the HDD 425. Likewise, the smart card 2730 may use the PEK to decrypt previously encrypted and stored received CWP(s) 2722.
Another example CAP for the smart card 2730 is a PK MSG 2723 containing the PK. In the illustrated example of
In the illustrated example of
To store encryption information received in a RID MSG 2712, the example media server 106 of
As described above, each CWP 2722 contains information that may be used by the smart card 2730 to determine a CW 2732 used by the HE 102 to broadcast encrypt a portion of the encrypted video 2705. Received CWP(s) 2722 may be stored and/or utilized by the example IRD 106 of
In another example, the CWP(s) 2722 may be encrypted by the IRD 106 using other encryption keys such as, for example, a CPCW 2734. Alternatively, the IRD 106 stores received CWP(s) 2722 on the HDD 425 without first encrypting them. In a further example, the smart card 2730 determines the CW(s) 2732 from the CWP(s) 2732 at recording time, uses a PK received in a PK MSG 2723 to encrypt the CW(s) 2732, and then the IRD 106 stores the resulting ECW(s) 2738 on the HDD 425. During playback, the security chip 524 (or the smart card 2730) obtains the ECW(s) 2738 from the HDD 425 and the security chip 524 decrypts them with the PK to obtain the CW(s) 2732.
In yet another example, the smart card 2730 obtains CW(s) 2732 from received CWP(s) 2722 at recording time, and then encrypts them with a PK to form ECW(s) 2738. The resultant ECW(s) 2738 and the CWP(s) 2722 are then encrypted with a PEK and stored on the HDD 425. During playback, the smart card 2730 obtains the encrypted ECW(s) 2738 from the HDD 425, decrypts them using the PEK, and provides the ECW(s) 2738 to the security chip 524. The security chip 524 then decrypts them using the PK to obtain the CW(s) 2732. Other examples abound.
In the examples of
To determine the CPCW 2734 that may be used to additionally encrypt (i.e., super-encrypt) the broadcast encrypted video 2705 and/or to decrypt super-encrypted video 2710, a security device (e.g., the security chip 524) obtains the EFK 2714 from the table 2725, decrypts the EFK 2714 based on the US 2780, and then scrambles (i.e., encrypts, decrypts or cryptographically hashes) a seed number 2736 with the decrypted EFK 2714 to form the CPCW 2734. An example seed number 2736 is the content identifier for the broadcast encrypted video 2705. Other example seed numbers 2736 include a random number, an encrypted key or encrypted CPCW delivered from the HE 102.
When, for instance, the client 114 requests content (e.g., the content 2705) from the media server 106 (e.g., via a content request message), the media server 106 obtains the ECW(s) 2738 for the requested content 2705 from the smart card 2730. The media server 106 provides to the client 114 the ECW(s) 2738, the EFK* 2716, the EPK* 2728, the seed number 2736 for the requested content, and the super-encrypted content 2710. In the example of
Similarly to that described above for the media server 106, the client 114 determines the CPCW 2734 and CW(s) 2732 that may be used to decrypt the super-encrypted content 2710. In particular, a security device (e.g., a security chip 2740) uses the US* 2785 to decrypt both the received EFK* 2716 and the received EPK* 2728. The security chip 2740 then scrambles the received seed number 2736 with the decrypted EFK* 2716 to determine CPCW 2734 that may be used by an AES decrypter 2745 to decrypt the super-encrypted video 2710. The security chip 2740 also decrypts the received ECW(s) 2738 using decrypted EPK* 2728 to obtain the CW(s) 2732 that may be used by a DES/AES decrypter 2750 to further decrypt the output of the decrypter 2745 (i.e., broadcast encrypted video).
An example implementation of a client 114 may utilize substantially similar components, devices and/or modules to those used to implement the example IRDs 106 illustrated in
Turning to
The security chip 524 decrypts the EFK 2714 indicated with reference numeral 2820 and uses the decrypted EFK 2714 to scramble the seed number 2736 indicated with reference numeral 2822 to obtain the CPCW 2734 indicated with reference numeral 2824. The encrypter 527 uses the CPCW 2734 to encrypt the received broadcast encrypted video 2705 indicated with reference numeral 2826 and stores the super-encrypted video 2710 on the HDD 425 as indicated with reference numeral 2827. When CWP(s) 2722 are received by the media server 106 as indicated with reference numeral 2828, the media server 106 and/or the smart card 2730, using any of the methods described above, processes, handles and/or stores the received CWP(s) 2722. In the example of
Continuing with
At the client 114, the security chip 2740 decrypts the EFK* 2716 using the US* 2785 and uses the decrypted EFK* 2716 and the seed number 2736 to determine the CPCW 2734 (indicated with reference numeral 2840) that the decrypter 2745 uses to decrypt the super-encrypted video 2710. The security chip 2740 also uses the US* 2785 to decrypt the EPK* 2728 and uses the decrypted EPK* 2728 to decrypt the ECW(s) 2738 as indicated by reference numeral 2842. The decrypter 2750 uses the decrypted ECW(s) 2738 (i.e., the CW(s) 2732) to further decrypt the broadcast encrypted video 2844 output by the decrypter 2745 to obtain the requested unencrypted content 2846.
In the illustrated examples of
In another example, the value of the PEK is updated with a new PEK MSG 2814. The PEK MSG 2814 indicates when the new PEK is to become active. If the PEK is updated, one or more old PEK values may be retained by the smart card 2730 in order to correctly decrypt the previously encrypted CWP(s) 2722 stored on the HDD 425. Alternately, one or more old PEK MSGs 2714 may be retained by the IRD 106.
In yet another example, the HE 102 updates the value of the PK by sending a new PK MSG 2810 to the smart card 2730 and sending a new EPK (e.g., EPK 2726, EPK* 2728) containing the new PK to the media server 106 and/or the client 114 via one or more RID MSGs. The smart card 2730 may determine when to begin using the new PK, or it may be instructed from the HE 102 in the PK MSG 2810 or via the CWP(s) 2722. In an example, the new PK is used to encrypt the CW(s) 2732 at playback time, so that previous PK values are not required, and the PK values can change frequently. In another example, the PK is used to encrypt the CW(s) 2732 at recording time, and the resulting ECW(s) 2738 are stored on the HDD 425. In this example, the media server 106 retains one or more old EPK 2726 and/or EPK* 2728 values to allow the media server 106 and/or the client 114 to correctly decrypt the broadcast-encrypted content 2710 stored on the HDD 425. In yet another example, all or part of the PK value is required by the smart card 2730 to obtain the CW(s) 2732 from the CWP(s) 2722, such as where the PK may have a common portion that is shared amongst all authorized subscribers during a particular period of time, so that the smart card 2730 retains the new PK and one or more old PK values to obtain the CW(s) 2732 for correct viewing of the live broadcast or the recorded content. In this example, previous values of PK, EPK 2726 and/or EPK* 2728 are required to correctly decrypt content from the HDD 425.
The media server 106 may also contain unencrypted content on the HDD 425 such as, for example, equipment demonstrations, advertisements, instructions, etc. In the example systems of
The example process of
If the new event (block 2902) is a selection, for example, by a user of the media server 106, to record a selected program (block 2910), a security device (e.g., the security chip 524) generates, as described above, from the EFK 2714 and, for example, a content identifier 2736 for the selected program, a CPCW 2734 (block 2912). The AES encrypter 527 (
If the new event (block 2902) is a request for content from a client 114 (block 2920), a security device (e.g., the CPU 507 associated with the media server 106 (
If the client is authorized (block 2921), a possibly different security device (e.g., the smart card 2730) decrypts the encrypted CWP(s) 2722 stored on, for example, the HDD 425, and determines the corresponding CW(s) 2732 (block 2923). The smart card 2730 then encrypts the CW(s) 2732 with the PK to form the ECW(s) 2738 (block 2924). Any of the other methods described above for obtaining ECW(s) 2738 may additionally or alternatively be implemented. The media server 106 obtains, based on the RID* 2720 of the client 114, the EFK* 2716 and the EPK* 2728 from, for instance, the table 2725 (block 2926). The media server 106 sends the content identifier 2736 for the requested content, the ECW(s) 2738, the EPK* 2726 and the EFK* 2716 to the client 114 (block 2928) and then transfers the requested content 2710 from the HDD 425 to the client 114 (block 2930).
If the new event (block 2902) is the receipt of another CWP 2722 (block 2940), a security device (e.g., the smart card 2730) encrypts the received CWP 2722 (block 2942) and stores the encrypted CWP 2722 in, for example, the HDD 425 (block 2944) and control returns to block 2902 to await a new event. Any of the other methods described above for processing, handling and/or storing received CWP(s) 2722 may additionally or alternatively be implemented.
If the new event (block 2902) is receipt of a RID MSG 2712 (block 2960), a security device (e.g., the CPU 507 associated with the media server 106) updates the table 2725 with the information received in the RID MSG 2712 (block 2962) and control returns to block 2902 to await a new event.
If the new event (block 2902) is receipt of a PK MSG 2712 or a PEK MSG (block 2970), a security device (e.g., the smart card 2730) updates the encryption information (e.g., the PK or the PEK) stored in the smart card 2730 with the new and/or additional encryption information received in the PK MSG 2723 or PEK MSG (block 2972) and control returns to block 2902 to await a new event.
The example process of
When the encryption information and the super-encrypted video is received (block 3006), a security device (e.g., the security chip 2740) decrypts the received EPK* 2726 and EFK* 2716 (block 3008). The security chip 2740 then determines the CPCW 2734 from the decrypted EFK* 2716 and the content identifier (i.e., the seed) (block 3010) and determines the CW(s) 2732 from the decrypted EPK* 2726 and the ECW(s) 2738 (block 3012). The decrypter 2745 decrypts the received super-encrypted video 2710 with the CPCW 2734 (block 3014) and then the decrypter 2750 further decrypts the resultant broadcast encrypted video with the CW(s) 2732 (block 3016). The client 114 then decodes and displays the selected program for the user (block 3018) and control returns to block 3002 to await another selection.
The example process of
If the media server 106 or client 114 is authorized (block 3104), the CAS 350 determines if the registering device is a media server 106 (block 3106). If the registering device is a server (block 3106), the CAS 350 determines a PK, a FK and a PEK (block 3108) and sends the PK and PEK to the smart card 2730 (block 3110).
The CAS 350 encrypts the FK of the home domain with the US (e.g., US 2780 or US 2785) associated with the RID (e.g., the RID 2718 or the RID* 2720) of the registering device and encrypts the PK of the home domain with the US (e.g., US 2780 or US 2785) associated with the RID of the registering device (block 3112). The CAS 350 creates a RID MSG containing the encrypted FK and the encrypted PK (block 3114) and sends the RID MSG to the media server 106 or, for a registering client 114, to a media server 106 to which the client 114 is communicatively coupled (block 3116). Control then returns to block 3102 wait for another registration request.
VIII. Secure Content Transfer
As described above in connection with the example DTH system 100 of
Based on the contents of the content transfer authorization request 3210, the key server 350 identifies the content server 106, the DRM client 114 and the requested content (e.g., movie title). The key server 350 also determines an entitlement key (KE) (i.e., an encryption key or secret) for the secure content transfer.
The key server 350 sends to the DRM license server 118 a content transfer license request 3220, and the KE as indicated with reference numeral 3225. An example license request 3220 includes content identifier information (e.g., song title), DRM client 114 identification information, payment information, etc. The key server 350 also sends, as signified by reference number 3230, DRM requirements for the requested license such as, for example, expiration date, number of playbacks, etc.
If the content transfer is allowable, the example DRM license server 118 of
In the illustrated examples of
In the illustrated example of
A content transfer authorization request 3210 may be sent not only in response to a content transfer initiation 3205, but additionally or alternatively to, for example, register and/or obtain a content transfer authorization for a current, new and/or additional DRM client 114. Moreover, a content transfer authorization request 3210 could be used to obtain an encrypted KE 3242 applicable to the transfer of one or more type(s) of content such as, for example, all broadcast television shows, a subscription movie channel, etc. In such examples, the encrypted KE 3242 received by the content server 106 may be valid for a period of time such as, for example, a month. Such time period enabled encrypted KE 3242 may be periodically or aperiodically renewed by the HE 102 and/or at the request of the DRM client 114, the content server 106 and/or a user. For such time period enabled encrypted KEs 3242, when a content transfer initiation 3205 is detected, the content server 106 may check to see if a valid encrypted KE 3242 is available for the content and/or content type to be transferred. If a valid encrypted KE 3242 is available, the content server 106 encrypts the content to be transferred and transfers the encrypted content without first sending a content transfer authorization request 3210 to the HE 102. Further still, as discussed above, the license and embedded KE 3245 provided to the DRM client 114 may be valid for a period of time and may be periodically or aperiodically renewed by the HE 102 and/or at the request of the DRM client 114, the content server 106 and/or a user. Such renewals include the issuance of a fresh license valid for an extended period and the same KE and license terms as the expired license, so that existing encrypted content available to the DRM client 114 may continue to be viewed via the DRM client 114 for the extended period. The same KE may be derived from a stored seed value, or a seed value based on the content itself, a content identifier and/or license terms may be regenerated in order to determine the same KE for license renewal. Furthermore, if a license is shared among many current and future content programs (such as all broadcast television shows, or all movies on a subscription movie channel) then a renewed license may be delivered to the DRM client 114 on a periodic basis, allowing current and/or future programs to be delivered to that client 114 under the protection of the original and renewed license.
Additionally or alternatively, the content server 106 may provide to the key server 350 any variety of random number such as, for example, a seed that the content server 106 uses to generate the key 3225 and that the key server 350 uses to determine the key 3225 that it provides to the DRM license server 118. In this fashion, the key server 350 may skip the providing of the encrypted KE 3242 to the content server 106 illustrated in the example of
In the illustrated example of
It will be readily apparent to persons of ordinary skill in the art that alternative secure content transfer exchanges to those illustrated in
In the illustrated example of
While in the illustrated examples of
The example process of
When the KE or the seed is received (block 3315), a security device (e.g., the security chip 524 of
Returning to block 3307, if an applicable encrypted KE is available, a security device (e.g., the security chip 524 of
Having started sending the encrypted content to the DRM client 114 (block 3330), the content server 106 determines if an applicable license for the transferred content was previously received (i.e., available) (block 3332). If an applicable license is not available (block 3332), the content server 106 waits to receive a license with the embedded KE from the key server 350 (block 3335). When a license (e.g., the license 3240 of
Returning to block 3332, if an applicable license is available, the content server 106 forwards the license with the embedded KE to the DRM client 114 (block 3340). Control returns to block 3305 to wait for another transfer request.
The example process of
The key server 350 sends a content transfer license request to the DRM license server 118 (block 3425), sends the KE to the DRM license server 118 (block 3430) and sends the requirements for the content transfer to the DRM license server 118 (block 3435). The key server 350 encrypts and securely sends the KE to the content server 106 (block 3440). Alternatively, the key server 350 may send a seed from which the KE may be determined by the content server 106 (block 3440). The key server 350 then determines, using any of a variety of techniques, if the DRM license server 118 will provide the license with the embedded key to the DRM client 114 via, for instance, the Internet 111 (block 3445). If the DRM license server 118 will provide the license and key to the DRM client 114 (block 3445) it does so (block 3447) and control returns to block 3405 to wait for another transfer request.
If the key server 350 is to forward the license and key to the DRM client 114 (block 3445), the key server 350 waits to receive the license from the DRM license server 118 (block 3450). When a license is received from the DRM license server 118 (block 3450), the key server 350 forwards (i.e., sends) the license with the embedded key to the content server 106 (block 3455). Control returns to block 3405 to wait for another transfer request. If the license is not received (block 3450), the key server 350 continues waiting. If a timeout occurs while waiting for the license (block 3450), the key server 350 stops waiting for the license. Control then returns to block 3405 to wait for another transfer request. Additionally, the key server 350 may send an error message to the content server 106 when a timeout occurs.
While the example flowcharts of
IX. Example Processor Platform
The processor platform 8000 of the example of
The processor 8010 is in communication with the main memory (including a read only memory (ROM) 8020 and the RAM 8025) via a bus 8005. The RAM 8025 may be implemented by dynamic random access memory (DRAM), Synchronous DRAM (SDRAM), a hard disk drive, flash memory and/or any other type of RAM device. The ROM 8020 may be implemented by flash memory and/or any other desired type of memory device. Access to the memory 8020 and 8025 is typically controlled by a memory controller (not shown) in a conventional manner.
The processor platform 8000 also includes a conventional interface circuit 8030. The interface circuit 8030 may be implemented by any type of well-known interface standard, such as an external memory interface, serial port, general purpose input/output, etc.
One or more input devices 8035 and one or more output devices 8040 are connected to the interface circuit 8030. The input devices 8035 and output devices 8040 may be used, for example, to implement interfaces between the HE 102 and the CDN 110, the HE 102 and the IRDs 106, the CDN 110 and the IRDs 106, and/or between components, devices and/or circuits implementing the HE 102, the CDN 110 and/or the IRDs 106.
Although certain example methods, apparatus and articles of manufacture have been described herein, the scope of coverage of this patent is not limited thereto. On the contrary, this patent covers all methods, apparatus and articles of manufacture fairly falling within the scope of the appended claims either literally or under the doctrine of equivalents.
This patent arises from a continuation of U.S. patent application Ser. No. 14/321,436, filed on Jul. 1, 2014, which is a continuation of U.S. patent application Ser. No. 11/434,404, filed May 15, 2006, now U.S. Pat. No. 8,775,319, both of which are hereby incorporated herein by reference in their entireties.
Number | Name | Date | Kind |
---|---|---|---|
3794922 | Osborn et al. | Feb 1974 | A |
3885089 | Callais et al. | May 1975 | A |
4241237 | Paraskevakos et al. | Dec 1980 | A |
4322745 | Saeki et al. | Mar 1982 | A |
4613901 | Gilhousen et al. | Sep 1986 | A |
4633309 | Li et al. | Dec 1986 | A |
4675732 | Oleson | Jun 1987 | A |
4694490 | Harvey et al. | Sep 1987 | A |
4866769 | Karp | Sep 1989 | A |
4866787 | Olesen | Sep 1989 | A |
4881264 | Merkle | Nov 1989 | A |
4941176 | Matyas et al. | Jul 1990 | A |
5012510 | Schaubs et al. | Apr 1991 | A |
5015830 | Masuzawa et al. | May 1991 | A |
5029207 | Gammie | Jul 1991 | A |
5033084 | Beecher | Jul 1991 | A |
5036461 | Elliott et al. | Jul 1991 | A |
5068894 | Hoppe | Nov 1991 | A |
5091618 | Takehiro | Feb 1992 | A |
5105268 | Yamanouchi et al. | Apr 1992 | A |
5111504 | Esserman et al. | May 1992 | A |
5115467 | Esserman et al. | May 1992 | A |
5132992 | Yurt et al. | Jul 1992 | A |
5168353 | Walker et al. | Dec 1992 | A |
5172413 | Bradley et al. | Dec 1992 | A |
5191410 | McCalley et al. | Mar 1993 | A |
5199066 | Logan | Mar 1993 | A |
5251332 | Hansen | Oct 1993 | A |
5260778 | Kauffman et al. | Nov 1993 | A |
5270809 | Gammie et al. | Dec 1993 | A |
5301245 | Endoh | Apr 1994 | A |
5301352 | Nakagawa et al. | Apr 1994 | A |
5319707 | Wasilewski et al. | Jun 1994 | A |
5331139 | Lee | Jul 1994 | A |
5335277 | Harvey et al. | Aug 1994 | A |
5341425 | Wasilewski et al. | Aug 1994 | A |
5345594 | Tsuda | Sep 1994 | A |
5357276 | Banker et al. | Oct 1994 | A |
5371551 | Logan et al. | Dec 1994 | A |
5381481 | Gammie et al. | Jan 1995 | A |
5386587 | Yuzawa | Jan 1995 | A |
5396293 | Shellard | Mar 1995 | A |
5420866 | Wasilewski | May 1995 | A |
5421031 | De Bey | May 1995 | A |
5438423 | Lynch et al. | Aug 1995 | A |
5440336 | Buhro et al. | Aug 1995 | A |
5442389 | Blahut et al. | Aug 1995 | A |
5446919 | Wilkins | Aug 1995 | A |
5473609 | Chaney | Dec 1995 | A |
5481609 | Cohen et al. | Jan 1996 | A |
5485221 | Banker et al. | Jan 1996 | A |
5488413 | Elder et al. | Jan 1996 | A |
5495531 | Smiedt | Feb 1996 | A |
5497206 | Ji | Mar 1996 | A |
5504816 | Hamilton et al. | Apr 1996 | A |
5505901 | Harney et al. | Apr 1996 | A |
5506902 | Kubota | Apr 1996 | A |
5511986 | Casey et al. | Apr 1996 | A |
5544161 | Bigham et al. | Aug 1996 | A |
5557541 | Schulhof | Sep 1996 | A |
5559549 | Hendricks et al. | Sep 1996 | A |
5565805 | Nakagawa et al. | Oct 1996 | A |
5566353 | Cho et al. | Oct 1996 | A |
5583562 | Birch et al. | Dec 1996 | A |
5583937 | Ullrich et al. | Dec 1996 | A |
5586264 | Belknap et al. | Dec 1996 | A |
5590200 | Nachman et al. | Dec 1996 | A |
5592212 | Handelman | Jan 1997 | A |
5592491 | Dinkins | Jan 1997 | A |
5592551 | Lett et al. | Jan 1997 | A |
5592651 | Rackman | Jan 1997 | A |
5594491 | Hodge et al. | Jan 1997 | A |
5603077 | Muckle et al. | Feb 1997 | A |
5619247 | Russo | Apr 1997 | A |
5625693 | Rohatgi et al. | Apr 1997 | A |
5630204 | Hylton et al. | May 1997 | A |
5631903 | Dianda et al. | May 1997 | A |
5640453 | Schuchman et al. | Jun 1997 | A |
5642418 | Ferris et al. | Jun 1997 | A |
5649318 | Lusignan | Jul 1997 | A |
5661517 | Budow et al. | Aug 1997 | A |
5663896 | Aucsmith | Sep 1997 | A |
5664046 | Abecassis | Sep 1997 | A |
5666293 | Metz et al. | Sep 1997 | A |
5666645 | Thomas et al. | Sep 1997 | A |
5675390 | Schindler et al. | Oct 1997 | A |
5677895 | Mankovitz | Oct 1997 | A |
5677953 | Dolphin | Oct 1997 | A |
5684742 | Bublitz et al. | Nov 1997 | A |
5699429 | Tamer et al. | Dec 1997 | A |
5701383 | Russo et al. | Dec 1997 | A |
5701582 | De Bey | Dec 1997 | A |
5708963 | Mobley | Jan 1998 | A |
5710970 | Walters et al. | Jan 1998 | A |
5715315 | Handelman | Feb 1998 | A |
5715403 | Stefik | Feb 1998 | A |
5721829 | Dunn et al. | Feb 1998 | A |
5724646 | Ganek et al. | Mar 1998 | A |
5729000 | Sugimoto | Mar 1998 | A |
5729280 | Inoue et al. | Mar 1998 | A |
5729824 | O'Neill et al. | Mar 1998 | A |
5734589 | Kostreski et al. | Mar 1998 | A |
5734853 | Hendricks et al. | Mar 1998 | A |
5742680 | Wilson | Apr 1998 | A |
5748732 | Le Berre et al. | May 1998 | A |
5760820 | Eda et al. | Jun 1998 | A |
5761302 | Park | Jun 1998 | A |
5764762 | Kazmierczak et al. | Jun 1998 | A |
5767913 | Kassatly | Jun 1998 | A |
5768539 | Metz et al. | Jun 1998 | A |
5784095 | Robbins et al. | Jul 1998 | A |
5787172 | Arnold | Jul 1998 | A |
5790663 | Lee et al. | Aug 1998 | A |
5790783 | Lee et al. | Aug 1998 | A |
5793413 | Hylton et al. | Aug 1998 | A |
5793971 | Fujita et al. | Aug 1998 | A |
5805699 | Akiyama et al. | Sep 1998 | A |
5818934 | Cuccia | Oct 1998 | A |
5826165 | Echeita et al. | Oct 1998 | A |
5831664 | Wharton et al. | Nov 1998 | A |
5845240 | Fielder | Dec 1998 | A |
5848158 | Saito et al. | Dec 1998 | A |
5850218 | Lajoie et al. | Dec 1998 | A |
5864747 | Clark et al. | Jan 1999 | A |
5864757 | Parker | Jan 1999 | A |
5867207 | Chaney et al. | Feb 1999 | A |
5867579 | Saito | Feb 1999 | A |
5870474 | Wasilewski et al. | Feb 1999 | A |
5872353 | Reichardt et al. | Feb 1999 | A |
5878141 | Daly et al. | Mar 1999 | A |
5886995 | Arsenault et al. | Mar 1999 | A |
5889941 | Tushie et al. | Mar 1999 | A |
5892508 | Howe et al. | Apr 1999 | A |
5892535 | Allen et al. | Apr 1999 | A |
5892536 | Logan et al. | Apr 1999 | A |
5894320 | Vancelette | Apr 1999 | A |
5898159 | Huang | Apr 1999 | A |
5899919 | Yuen | Apr 1999 | A |
5899582 | Dulac | May 1999 | A |
5912969 | Sasamoto et al. | Jun 1999 | A |
5914941 | Janky | Jun 1999 | A |
5917481 | Rzeszewski et al. | Jun 1999 | A |
5923362 | Klosterman | Jul 1999 | A |
5926205 | Krause et al. | Jul 1999 | A |
5930215 | Fite et al. | Jul 1999 | A |
5933500 | Blatter et al. | Aug 1999 | A |
5936222 | Korsunsky et al. | Aug 1999 | A |
5936660 | Gurantz | Aug 1999 | A |
5937067 | Thatcher et al. | Aug 1999 | A |
5940737 | Eastman | Aug 1999 | A |
5951639 | MacInnis | Sep 1999 | A |
5953418 | Bock et al. | Sep 1999 | A |
5966186 | Shigihara et al. | Oct 1999 | A |
5973756 | Erlin | Oct 1999 | A |
5978037 | Hilpert et al. | Nov 1999 | A |
5978649 | Kahn et al. | Nov 1999 | A |
5999628 | Chan | Dec 1999 | A |
5999629 | Heer | Dec 1999 | A |
6005937 | Lee | Dec 1999 | A |
6006987 | Hoolhorst | Dec 1999 | A |
6009116 | Bednarek et al. | Dec 1999 | A |
6009307 | Granata et al. | Dec 1999 | A |
6011511 | Chuong et al. | Jan 2000 | A |
6011597 | Kubo | Jan 2000 | A |
6025868 | Russo | Feb 2000 | A |
6035038 | Campinos et al. | Mar 2000 | A |
6038319 | Chari | Mar 2000 | A |
6041056 | Bigham et al. | Mar 2000 | A |
6052554 | Hendricks et al. | Apr 2000 | A |
6055314 | Spies | Apr 2000 | A |
6055566 | Kikinis | Apr 2000 | A |
6061451 | Muratani et al. | May 2000 | A |
6061452 | Suzuki | May 2000 | A |
6064724 | Kelly | May 2000 | A |
6067107 | Travaille et al. | May 2000 | A |
6067440 | Diefes | May 2000 | A |
6069647 | Sullivan et al. | May 2000 | A |
6072873 | Bewick | Jun 2000 | A |
6072982 | Haddad | Jun 2000 | A |
6075330 | Terk | Jun 2000 | A |
6091883 | Artigalas et al. | Jul 2000 | A |
6097441 | Allport | Aug 2000 | A |
6101171 | Yoshida et al. | Aug 2000 | A |
6105134 | Pinder et al. | Aug 2000 | A |
6105868 | Reichardt | Aug 2000 | A |
6115074 | Ozkan et al. | Sep 2000 | A |
6141531 | Williams et al. | Oct 2000 | A |
6144400 | Ebisawa | Nov 2000 | A |
6148081 | Szymanski et al. | Nov 2000 | A |
6148400 | Arnold | Nov 2000 | A |
6154206 | Ludtke | Nov 2000 | A |
6157719 | Wasilewski et al. | Dec 2000 | A |
6157949 | Cheng et al. | Dec 2000 | A |
6160988 | Shroyer et al. | Dec 2000 | A |
6163284 | Manarata | Dec 2000 | A |
6169877 | Gulla | Jan 2001 | B1 |
6169879 | Perlman | Jan 2001 | B1 |
6172972 | Birdwell et al. | Jan 2001 | B1 |
6175362 | Harms et al. | Jan 2001 | B1 |
6178242 | Tsuria | Jan 2001 | B1 |
6198875 | Edenson et al. | Mar 2001 | B1 |
6202211 | Williams, Jr. | Mar 2001 | B1 |
6208636 | Tawil et al. | Mar 2001 | B1 |
6212682 | Kuno | Apr 2001 | B1 |
6216266 | Eastman et al. | Apr 2001 | B1 |
6226618 | Downs et al. | May 2001 | B1 |
6229895 | Son et al. | May 2001 | B1 |
6240401 | Oren et al. | May 2001 | B1 |
6253375 | Gordon et al. | Jun 2001 | B1 |
6263504 | Ebisawa | Jul 2001 | B1 |
6263506 | Ezaki et al. | Jul 2001 | B1 |
6266480 | Ezaki et al. | Jul 2001 | B1 |
6266481 | Lee et al. | Jul 2001 | B1 |
6267295 | Amagai et al. | Jul 2001 | B1 |
6275991 | Erlin | Aug 2001 | B1 |
6286142 | Ehreth | Sep 2001 | B1 |
6288716 | Humpleman et al. | Sep 2001 | B1 |
6289314 | Matsuzaki et al. | Sep 2001 | B1 |
6289455 | Kocher et al. | Sep 2001 | B1 |
6292568 | Akins, III et al. | Sep 2001 | B1 |
6298441 | Handelman et al. | Oct 2001 | B1 |
6310661 | Arsenault | Oct 2001 | B1 |
6317883 | Marics | Nov 2001 | B2 |
6317884 | Earnes et al. | Nov 2001 | B1 |
6331979 | Dillon et al. | Dec 2001 | B1 |
6363525 | Dougherty et al. | Mar 2002 | B1 |
6370318 | Iwaki | Apr 2002 | B1 |
6370688 | Hejna | Apr 2002 | B1 |
6381747 | Wonfor et al. | Apr 2002 | B1 |
6398245 | Gruse et al. | Jun 2002 | B1 |
6405372 | Kim | Jun 2002 | B1 |
6408437 | Hendricks et al. | Jun 2002 | B1 |
6415031 | Colligan et al. | Jul 2002 | B1 |
6418421 | Hurtado et al. | Jul 2002 | B1 |
6418424 | Hoffberg et al. | Jul 2002 | B1 |
6424717 | Pinder et al. | Jul 2002 | B1 |
6424947 | Tsuria et al. | Jul 2002 | B1 |
6430165 | Arsenault | Aug 2002 | B1 |
6437836 | Huang et al. | Aug 2002 | B1 |
6441797 | Shah | Aug 2002 | B1 |
6442525 | Silverbrook et al. | Aug 2002 | B1 |
6456985 | Ohtsuka | Sep 2002 | B1 |
6466671 | Maillard et al. | Oct 2002 | B1 |
6466921 | Cordery et al. | Oct 2002 | B1 |
6473858 | Shimomura et al. | Oct 2002 | B1 |
6476825 | Croy et al. | Nov 2002 | B1 |
6480667 | O'Connor | Nov 2002 | B1 |
6487663 | Jaisimha et al. | Nov 2002 | B1 |
6487722 | Okura et al. | Nov 2002 | B1 |
6496980 | Tillman et al. | Dec 2002 | B1 |
6502139 | Birk et al. | Dec 2002 | B1 |
6510519 | Wasilewski et al. | Jan 2003 | B2 |
6516412 | Wasilewski et al. | Feb 2003 | B2 |
6516465 | Paskins | Feb 2003 | B1 |
6519693 | De Bey | Feb 2003 | B1 |
6519772 | Bopardikar | Feb 2003 | B1 |
6529680 | Broberg | Mar 2003 | B1 |
6530085 | Perlman | Mar 2003 | B1 |
6539548 | Hendricks et al. | Mar 2003 | B1 |
6542870 | Matsumoto | Apr 2003 | B1 |
6543053 | Li et al. | Apr 2003 | B1 |
6550011 | Sims | Apr 2003 | B1 |
6560340 | Akins et al. | May 2003 | B1 |
6574609 | Downs et al. | Jun 2003 | B1 |
6574795 | Carr | Jun 2003 | B1 |
6588017 | Calderone | Jul 2003 | B1 |
6588673 | Chan et al. | Jul 2003 | B1 |
6591419 | Barry et al. | Jul 2003 | B2 |
6611812 | Hurtado et al. | Aug 2003 | B2 |
6622307 | Ho | Sep 2003 | B1 |
6636966 | Lee et al. | Oct 2003 | B1 |
6637027 | Breslauer et al. | Oct 2003 | B1 |
6654547 | Maeda et al. | Nov 2003 | B1 |
6655580 | Ergo et al. | Dec 2003 | B1 |
6668377 | Dunn | Dec 2003 | B1 |
6671881 | Tamer et al. | Dec 2003 | B1 |
6675384 | Block et al. | Jan 2004 | B1 |
6681326 | Son et al. | Jan 2004 | B2 |
6687683 | Harada et al. | Feb 2004 | B1 |
6697489 | Candelore | Feb 2004 | B1 |
6701528 | Arsenault et al. | Mar 2004 | B1 |
6714650 | Maillard et al. | Mar 2004 | B1 |
6741574 | Arsenault | May 2004 | B2 |
6741834 | Godwin | May 2004 | B1 |
6745245 | Carpenter | Jun 2004 | B1 |
6748080 | Russ et al. | Jun 2004 | B2 |
6754827 | Cane et al. | Jun 2004 | B1 |
6754904 | Cooper et al. | Jun 2004 | B1 |
6766451 | Van Rijnsoever | Jul 2004 | B1 |
6772133 | Kambayashi et al. | Aug 2004 | B1 |
6772434 | Godwin | Aug 2004 | B1 |
6792618 | Bendinelli et al. | Sep 2004 | B1 |
6804357 | Ikonen et al. | Oct 2004 | B1 |
6810387 | Yim | Oct 2004 | B1 |
6816596 | Peinado et al. | Nov 2004 | B1 |
6816970 | Morgan et al. | Nov 2004 | B2 |
6824051 | Reddy et al. | Nov 2004 | B2 |
6834111 | Nishmura et al. | Dec 2004 | B1 |
6853728 | Kahn et al. | Feb 2005 | B1 |
6862582 | Harada et al. | Mar 2005 | B2 |
6889208 | Okabe et al. | May 2005 | B1 |
6904522 | Benardeau et al. | Jun 2005 | B1 |
6912513 | Candelore | Jun 2005 | B1 |
6934963 | Reynolds et al. | Aug 2005 | B1 |
6961858 | Fransdonk | Nov 2005 | B2 |
6985591 | Graunke | Jan 2006 | B2 |
6987854 | Maillard | Jan 2006 | B2 |
6993433 | Gagnon et al. | Jan 2006 | B2 |
6993499 | Gagnon et al. | Jan 2006 | B2 |
6993782 | Newberry et al. | Jan 2006 | B1 |
7003791 | Mizutani | Feb 2006 | B2 |
7007170 | Morten | Feb 2006 | B2 |
7016498 | Peinado et al. | Mar 2006 | B2 |
7032236 | Ozkan et al. | Apr 2006 | B1 |
7035827 | Ezaki | Apr 2006 | B2 |
7036011 | Grimes et al. | Apr 2006 | B2 |
7039615 | Gajjala | May 2006 | B1 |
7058802 | Epstein et al. | Jun 2006 | B1 |
7072865 | Akiyama | Jul 2006 | B2 |
7073073 | Nonaka et al. | Jul 2006 | B1 |
7085529 | Arsenault et al. | Aug 2006 | B1 |
7093295 | Saito | Aug 2006 | B1 |
7099946 | Lennon et al. | Aug 2006 | B2 |
7124938 | Marsh | Oct 2006 | B1 |
7177911 | deCarmo | Feb 2007 | B2 |
7191155 | Maruyama et al. | Mar 2007 | B2 |
7191335 | Maillard | Mar 2007 | B1 |
7194757 | Fish et al. | Mar 2007 | B1 |
7203311 | Kahn et al. | Apr 2007 | B1 |
7203314 | Kahn et al. | Apr 2007 | B1 |
7228439 | Sasselli | Jun 2007 | B2 |
7231450 | Clifford et al. | Jun 2007 | B1 |
7277928 | Lennon | Oct 2007 | B2 |
7298849 | Graunke | Nov 2007 | B2 |
7327931 | Frantz | Feb 2008 | B2 |
7328455 | Jutzi et al. | Feb 2008 | B2 |
7369660 | Kahn | May 2008 | B1 |
7370342 | Ismail et al. | May 2008 | B2 |
7382879 | Miller | Jun 2008 | B1 |
7400774 | Puri | Jul 2008 | B2 |
7403618 | Van Rijnsoever et al. | Jul 2008 | B2 |
7457414 | Kahn et al. | Nov 2008 | B1 |
7461249 | Pearson et al. | Dec 2008 | B1 |
7492897 | Eskicioglu et al. | Feb 2009 | B1 |
7496540 | Irwin et al. | Feb 2009 | B2 |
7539307 | Lotspiech et al. | May 2009 | B2 |
7546623 | Ramraz et al. | Jun 2009 | B2 |
7590243 | Kahn | Sep 2009 | B2 |
7912219 | Michener | Mar 2011 | B1 |
7992175 | Klauss et al. | Aug 2011 | B2 |
8001565 | Kahn et al. | Aug 2011 | B2 |
8095466 | Kahn et al. | Jan 2012 | B2 |
8140859 | Kahn et al. | Mar 2012 | B1 |
8359102 | Alataris | Jan 2013 | B2 |
8532293 | Kalm | Sep 2013 | B2 |
8682802 | Kannanari | Mar 2014 | B1 |
8763059 | James et al. | Jun 2014 | B1 |
8775319 | Kahn et al. | Jul 2014 | B2 |
8996421 | Kahn et al. | Mar 2015 | B2 |
9485469 | Kahn et al. | Nov 2016 | B2 |
20010001876 | Morgan et al. | May 2001 | A1 |
20010037452 | Go et al. | Nov 2001 | A1 |
20010046299 | Wasilewski et al. | Nov 2001 | A1 |
20010047516 | Swain et al. | Nov 2001 | A1 |
20010053979 | Kori | Dec 2001 | A1 |
20010056576 | Park | Dec 2001 | A1 |
20020001386 | Akiyama | Jan 2002 | A1 |
20020002674 | Grimes et al. | Jan 2002 | A1 |
20020010920 | Bertram | Jan 2002 | A1 |
20020013948 | Aguayo, Jr. et al. | Jan 2002 | A1 |
20020019984 | Rakib | Feb 2002 | A1 |
20020021805 | Schumann et al. | Feb 2002 | A1 |
20020023219 | Treffers et al. | Feb 2002 | A1 |
20020026640 | Graan | Feb 2002 | A1 |
20020040475 | Yap et al. | Apr 2002 | A1 |
20020046336 | Kon et al. | Apr 2002 | A1 |
20020048367 | Maillard | Apr 2002 | A1 |
20020051539 | Okimoto et al. | May 2002 | A1 |
20020054752 | Wood et al. | May 2002 | A1 |
20020056112 | Dureau et al. | May 2002 | A1 |
20020056118 | Hunter et al. | May 2002 | A1 |
20020064152 | Lemley et al. | May 2002 | A1 |
20020067914 | Schumann et al. | Jun 2002 | A1 |
20020071434 | Furukawa | Jun 2002 | A1 |
20020094084 | Wasilewski et al. | Jul 2002 | A1 |
20020095679 | Bonini | Jul 2002 | A1 |
20020100052 | Daniels | Jul 2002 | A1 |
20020101991 | Bacon et al. | Aug 2002 | A1 |
20020112235 | Balton et al. | Aug 2002 | A1 |
20020112243 | Hunter et al. | Aug 2002 | A1 |
20020114465 | Shen-Orr | Aug 2002 | A1 |
20020116705 | Perlman et al. | Aug 2002 | A1 |
20020124258 | Fritsch | Sep 2002 | A1 |
20020147979 | Corson | Oct 2002 | A1 |
20020154055 | Davis et al. | Oct 2002 | A1 |
20020161571 | Matsushima | Oct 2002 | A1 |
20020162104 | Raike et al. | Oct 2002 | A1 |
20020166121 | Rovira | Nov 2002 | A1 |
20020169971 | Asano et al. | Nov 2002 | A1 |
20020170054 | Kudelski et al. | Nov 2002 | A1 |
20020170072 | Lundbald et al. | Nov 2002 | A1 |
20020178454 | Antoine et al. | Nov 2002 | A1 |
20020196374 | Barry et al. | Dec 2002 | A1 |
20020196939 | Unger et al. | Dec 2002 | A1 |
20020198846 | Lao | Dec 2002 | A1 |
20030002679 | Akiyama et al. | Jan 2003 | A1 |
20030002680 | Akiyama et al. | Jan 2003 | A1 |
20030005285 | Graunke | Jan 2003 | A1 |
20030005429 | Colsey | Jan 2003 | A1 |
20030018968 | Avnet | Jan 2003 | A1 |
20030026428 | Loisel | Feb 2003 | A1 |
20030037006 | Maruyama et al. | Feb 2003 | A1 |
20030037331 | Lee | Feb 2003 | A1 |
20030040962 | Lewis et al. | Feb 2003 | A1 |
20030046702 | Sasaki | Mar 2003 | A1 |
20030061477 | Kahn et al. | Mar 2003 | A1 |
20030066884 | Reddy et al. | Apr 2003 | A1 |
20030084306 | Abburi | May 2003 | A1 |
20030088876 | Mao et al. | May 2003 | A1 |
20030097622 | Liu et al. | May 2003 | A1 |
20030105718 | Hurtado et al. | Jun 2003 | A1 |
20030110132 | Sako | Jun 2003 | A1 |
20030121047 | Watson et al. | Jun 2003 | A1 |
20030122966 | Markman et al. | Jul 2003 | A1 |
20030131349 | Kuczynski-Brown | Jul 2003 | A1 |
20030131353 | Blom et al. | Jul 2003 | A1 |
20030145183 | Muehring et al. | Jul 2003 | A1 |
20030156649 | Abrams, Jr. | Aug 2003 | A1 |
20030163684 | Franksdonk | Aug 2003 | A1 |
20030167392 | Fransdonk | Sep 2003 | A1 |
20030174844 | Candelore | Sep 2003 | A1 |
20030177365 | Buhan et al. | Sep 2003 | A1 |
20030188154 | Dallard | Oct 2003 | A1 |
20030188164 | Okimoto | Oct 2003 | A1 |
20030188316 | DePrez | Oct 2003 | A1 |
20030190149 | Chang et al. | Oct 2003 | A1 |
20030196113 | Brown et al. | Oct 2003 | A1 |
20030196204 | Thiagarajan et al. | Oct 2003 | A1 |
20030208771 | Mensgen et al. | Nov 2003 | A1 |
20030212997 | Hejna | Nov 2003 | A1 |
20030223468 | Koga | Dec 2003 | A1 |
20030228911 | Dernis et al. | Dec 2003 | A1 |
20030229898 | Babu et al. | Dec 2003 | A1 |
20030229900 | Reisman | Dec 2003 | A1 |
20030233561 | Ganesan | Dec 2003 | A1 |
20040003079 | Alu et al. | Jan 2004 | A1 |
20040032950 | Graunke | Feb 2004 | A1 |
20040049796 | Briggs | Mar 2004 | A1 |
20040052377 | Mattox et al. | Mar 2004 | A1 |
20040054920 | Wilson | Mar 2004 | A1 |
20040060065 | James et al. | Mar 2004 | A1 |
20040068747 | Robertson et al. | Apr 2004 | A1 |
20040073954 | Bjordammen et al. | Apr 2004 | A1 |
20040078828 | Parchman et al. | Apr 2004 | A1 |
20040083487 | Collens et al. | Apr 2004 | A1 |
20040088558 | Candelore | May 2004 | A1 |
20040101138 | Revital et al. | May 2004 | A1 |
20040102154 | Klauss et al. | May 2004 | A1 |
20040126093 | Platt et al. | Jul 2004 | A1 |
20040133908 | Smith | Jul 2004 | A1 |
20040139480 | Delpuch et al. | Jul 2004 | A1 |
20040148634 | Arsenault et al. | Jul 2004 | A1 |
20040168063 | Revital | Aug 2004 | A1 |
20040168071 | Silverbrook | Aug 2004 | A1 |
20040177369 | Akins | Sep 2004 | A1 |
20040190721 | Barrett et al. | Sep 2004 | A1 |
20040193550 | Siegel | Sep 2004 | A1 |
20040205812 | Candelore | Oct 2004 | A1 |
20040221305 | Broussard et al. | Nov 2004 | A1 |
20040237100 | Pinder et al. | Nov 2004 | A1 |
20040249815 | Lee | Dec 2004 | A1 |
20040250293 | Ryal et al. | Dec 2004 | A1 |
20040260798 | Addington et al. | Dec 2004 | A1 |
20040261126 | Addington et al. | Dec 2004 | A1 |
20050005286 | Koskela et al. | Jan 2005 | A1 |
20050010531 | Kushalnagar | Jan 2005 | A1 |
20050039025 | Main et al. | Feb 2005 | A1 |
20050050333 | Yeap et al. | Mar 2005 | A1 |
20050055721 | Zigmond | Mar 2005 | A1 |
20050055724 | Atad et al. | Mar 2005 | A1 |
20050061884 | Stewart | Mar 2005 | A1 |
20050071280 | Irwin et al. | Mar 2005 | A1 |
20050068173 | Kalwit | Apr 2005 | A1 |
20050084102 | Hollar | Apr 2005 | A1 |
20050086696 | Daniels | Apr 2005 | A1 |
20050091681 | Borden et al. | Apr 2005 | A1 |
20050097596 | Pedlow, Jr. | May 2005 | A1 |
20050102506 | Pica et al. | May 2005 | A1 |
20050107157 | Wachtfogel et al. | May 2005 | A1 |
20050108519 | Barton et al. | May 2005 | A1 |
20050144248 | Doganowski et al. | Jun 2005 | A1 |
20050144468 | Northcutt et al. | Jun 2005 | A1 |
20050144478 | Yamanaka | Jun 2005 | A1 |
20050169468 | Fahrny et al. | Aug 2005 | A1 |
20050182931 | Robert et al. | Aug 2005 | A1 |
20050183112 | Duval | Aug 2005 | A1 |
20050195975 | Kawakita | Sep 2005 | A1 |
20050195978 | Babic | Sep 2005 | A1 |
20050204391 | Hunleth et al. | Sep 2005 | A1 |
20050216942 | Barton | Sep 2005 | A1 |
20050225857 | Inagaki | Oct 2005 | A1 |
20050235338 | AbiEzzi | Oct 2005 | A1 |
20050235361 | Akove et al. | Oct 2005 | A1 |
20050249350 | Kahn et al. | Nov 2005 | A1 |
20050262573 | Bo et al. | Nov 2005 | A1 |
20060015750 | Ashley et al. | Jan 2006 | A1 |
20060031873 | Fahrny et al. | Feb 2006 | A1 |
20060037037 | Miranz | Feb 2006 | A1 |
20060039560 | Wasilewski | Feb 2006 | A1 |
20060039565 | Kim et al. | Feb 2006 | A1 |
20060041905 | Wasilewski | Feb 2006 | A1 |
20060085835 | Istvan et al. | Apr 2006 | A1 |
20060107285 | Medvinsky | May 2006 | A1 |
20060120309 | Bigras et al. | Jun 2006 | A1 |
20060164544 | Lecomte | Jul 2006 | A1 |
20060167817 | Gajjala | Jul 2006 | A1 |
20060168663 | Viljoen et al. | Jul 2006 | A1 |
20060179489 | Mas Ribes | Aug 2006 | A1 |
20060195881 | Segev et al. | Aug 2006 | A1 |
20060218620 | Nadarajah et al. | Sep 2006 | A1 |
20060242069 | Peterka | Oct 2006 | A1 |
20070021053 | Marrah | Jan 2007 | A1 |
20070092077 | Yoshida et al. | Apr 2007 | A1 |
20070092078 | Yoshida et al. | Apr 2007 | A1 |
20070100701 | Boccon-Gibod et al. | May 2007 | A1 |
20070124602 | Wald et al. | May 2007 | A1 |
20070160142 | Abrams, Jr. | Jul 2007 | A1 |
20070160198 | Orsini et al. | Jul 2007 | A1 |
20070198414 | Derrenberger | Aug 2007 | A1 |
20070240193 | Sie et al. | Oct 2007 | A1 |
20070265966 | Kahn et al. | Nov 2007 | A1 |
20070265967 | Kahn et al. | Nov 2007 | A1 |
20070265973 | Kahn et al. | Nov 2007 | A1 |
20070266414 | Kahn | Nov 2007 | A1 |
20080098450 | Wu et al. | Apr 2008 | A1 |
20090216623 | Hendricks et al. | Aug 2009 | A1 |
20100031059 | Laackmann | Feb 2010 | A1 |
20100175092 | Kikinis et al. | Jul 2010 | A1 |
20110271306 | Klauss et al. | Nov 2011 | A1 |
20120328800 | Yoon et al. | Dec 2012 | A1 |
Number | Date | Country |
---|---|---|
0677949 | Oct 1995 | EP |
0710017 | May 1996 | EP |
0817485 | Jan 1998 | EP |
0912052 | Apr 1999 | EP |
0936812 | Aug 1999 | EP |
0975165 | Jan 2000 | EP |
0989557 | Mar 2000 | EP |
1030463 | Aug 2000 | EP |
1122910 | Aug 2001 | EP |
1156676 | Nov 2001 | EP |
1158790 | Nov 2001 | EP |
1176826 | Jan 2002 | EP |
1176827 | Jan 2002 | EP |
0002703 | Aug 2002 | EP |
0008703 | Aug 2002 | EP |
1304871 | Apr 2003 | EP |
1353511 | Oct 2003 | EP |
1369152 | Dec 2003 | EP |
1418701 | May 2004 | EP |
2272822 | May 1994 | GB |
2354392 | Mar 2001 | GB |
04175025 | Jun 1992 | JP |
04288743 | Oct 1992 | JP |
05284499 | Oct 1993 | JP |
06351023 | Dec 1994 | JP |
08125651 | May 1996 | JP |
08287014 | Nov 1996 | JP |
10013784 | Jan 1998 | JP |
11136708 | May 1999 | JP |
11220444 | Aug 1999 | JP |
11232776 | Aug 1999 | JP |
11284584 | Oct 1999 | JP |
2000122539 | Apr 2000 | JP |
2000122933 | Apr 2000 | JP |
2001203686 | Jul 2001 | JP |
2003448274 | Feb 2005 | JP |
2005505989 | Feb 2005 | JP |
8910670 | Nov 1989 | WO |
9111884 | Aug 1991 | WO |
9211713 | Jul 1992 | WO |
9856180 | Dec 1998 | WO |
9907150 | Feb 1999 | WO |
9909743 | Feb 1999 | WO |
9918729 | Apr 1999 | WO |
9927666 | Aug 1999 | WO |
9941907 | Aug 1999 | WO |
9943120 | Aug 1999 | WO |
0008909 | Feb 2000 | WO |
0013412 | Mar 2000 | WO |
0014967 | Mar 2000 | WO |
0019294 | Apr 2000 | WO |
0030354 | May 2000 | WO |
0056068 | Sep 2000 | WO |
0117159 | Mar 2001 | WO |
0122724 | Mar 2001 | WO |
0137546 | May 2001 | WO |
0143444 | Jun 2001 | WO |
0165762 | Sep 2001 | WO |
0177783 | Oct 2001 | WO |
0182600 | Nov 2001 | WO |
0198903 | Dec 2001 | WO |
0199422 | Dec 2001 | WO |
0215184 | Feb 2002 | WO |
02063879 | Aug 2002 | WO |
02065750 | Aug 2002 | WO |
03101105 | Dec 2003 | WO |
04014075 | Feb 2004 | WO |
04017637 | Feb 2004 | WO |
2004049715 | Jun 2004 | WO |
04057871 | Jul 2004 | WO |
04082286 | Sep 2004 | WO |
Entry |
---|
1st Report of EBU/SMPTE Task Force for Harmonized Standards for the Exchange of Teleision Program Material as Bit Streams, May 6, 1997, Version 1.30, pp. 1-73. |
Advisory Action dated Jun. 22, 2006 in U.S. Appl. No. 09/960,824, filed Sep. 21, 2001 by Raynold M. Kahn et al. |
Advisory Action dated Jan. 7, 2008 in U.S. Appl. No. 10/790,466, filed Mar. 1, 2004 by Dulac, Stephen P. |
Anerousis,N., “Skycast: The Satellite Digital Broadcast Relay Service,” ATT&T Labs Research, unpublished manuscript, 1999, pp. 1-4. |
Bruce Schneier, Applied Cryptography—Protocols, Algorithms, and Source Code in C, 2nd Edition, pp. 216-222, 357-362. |
Carsten Griwodz, Oliver Merkel, Jana Dittman, Ralf Steinmetz, “Protecting VoD the Easier Way,” International Multimedia Conference Proceedings of the 6th ACM International Conference on Multimedia, pp. 21-28, ACM Press, New York, NY, 2002 ISBN: 0-201-30990-4. |
Derfler, “How Networks Work,” Bestseller Edition, 1996, Ziff-Davis Press, Emeryville, CA, all pages. |
“Download PocketTV (beta) for WinCE” [online], Nov. 3, 1999 MPEG TV, LLC [retrieved on Mar. 26, 2004]. Retrieved from the Internet <URL: http://web.archive.org/web/19991127093158/www.mpegtv.com/wince/pockettylindex.html>. |
EBU Project Group B/CA; “Functional model of a Conditional Access System”; EBU Technical Review; Jun. 10, 1995; pp. 64-77. |
Notice of Allowance dated Nov. 8, 2005 in U.S. Appl. No. 09/620,833, filed Jul. 21, 2000 by Raynold M. Kahn et al. (2 pages). |
EPO Communication dated Sep. 14, 2004 in European counterpart Application No. 01 117 554.4 of U.S. Appl. No. 09/621,476, filed Jul. 21, 2000 by Raynold M. Kahn et al., now Apr. 10, 2007 as U.S. Pat. No. 7,203,311. |
EPO Communication dated Sep. 14, 2004 in European counterpart Application No. 01 117 556.9 of U.S. Appl. No. 09/620,833, filed Jul. 21, 2000 by Raynold M. Kahn et al. |
EPO Communication dated Sep. 17, 2004 in European counterpart Application No. 01 177 555.1 of U.S. Appl. No. 09/620,772, filed Jul. 21, 2000 by Raynold M. Kahn et al. |
EPO Communication dated Mar. 5, 2007 in European counterpart Application No. 01 117 556.9 of U.S. Appl. No. 09/620,833, filed Jul. 21, 2000 by Raynold M. Kahn et al. |
EPO Communication dated Apr. 25, 2007 in European counterpart Application No. 01 117 554.4 of U.S. Appl. No. 09/621,476, filed Jul. 21, 2000 by Raynold M. Kahn et al., now Apr. 10, 2007 as U.S. Pat. No. 7,203,311. |
Notice of Allowance dated Feb. 11, 2005 in U.S. Appl. No. 09/620,833, filed Jul. 21, 2000 by Raynold M. Kahn et al. (3 pages). |
Non-final Office Action dated Apr. 23, 2004 in U.S. Appl. No. 09/620,833, filed Jul. 21, 2000 by Raynold M. Kahn et al. (5 pages). |
EPO Communication dated May 10, 2010 in European Patent Application No. 02789167.7 filed Sep. 20, 2002 by Raynold M. Kahn et al. |
EPO Communication dated Sep. 14, 2004 in European counterpart Application No. 01 117 553.6 of U.S. Appl. No. 09/620,832, filed Jul. 21, 2000 by Raynold M. kahn et al., now issued Feb. 8, 2005 as U.S. Pat. No. 6,853,728. |
EPO Decision of Refusal dated Mar. 8, 2007 in European counterpart Application No. 01 117 553.6 of U.S. Appl. No. 09/620,832, filed Jul. 21, 2000 by Raynold M. Kahn et al., now Feb. 8, 2005 as U.S. Pat. No. 6,853,728. |
EPO Minutes of the Oral Proceedings dated Nov. 16, 2007 in European counterpart Application No. 01 117 555.1 of U.S. Appl. No. 09/620,772, filed Jul. 21, 2000 by Raynold M. Kahn et al. |
EPO Notice of Allowance dated Nov. 22, 2007 in European counterpart Application No. 01 117 555.1 of U.S. Appl. No. 09/620,772, filed Jul. 21, 2000 by Raynold M. Kahn et al. |
EPO Notice of Allowance dated Oct. 29, 2007 in European counterpart Application No. 01 117 556.9 of U.S. Appl. No. 09/620,833, filed Jul. 21, 2000 by Raynold M. Kahn et al. |
EPO Sumons to Attend Oral Proceedings dated Mar. 26, 2007 in European counterpart Application No. 01 117 555.1 of U.S. Appl. No. 09/620,772, filed Jul. 21, 2000 by Raynold M. Kahn et al. |
Final Office Action dated Jan. 23, 2008 in U.S. Appl. No. 09/620,772, filed Jul. 21, 2000 by Kahn et al. (25 pages). |
Final Rejection dated Apr. 14, 2006 in U.S. Appl. No. 09/960,824, filed Sep. 21, 2001 by Raynold M. Kahn et al. |
Final Rejection dated Aug. 20, 2007 in U.S. Appl. No. 10/758,818, filed Jan. 16, 2004 by Raynold M. Kahn et al. (36 pages). |
Final Rejection dated Sep. 25, 2007 in U.S. Appl. No. 10/758,865, filed Jan. 16, 2004 by Raynold M. Kahn et al. |
Final Rejection dated Oct. 10, 2007 in U.S. Appl. No. 10/790,466, filed Mar. 1, 2004 by Raynold M. Kahn et al. (30 pages). |
Final Rejection dated Mar. 25, 2009 in U.S. Appl. No. 11/434,538, filed May 15, 2006 by Raynold M. Kahn et al. (10 pages). |
Final Rejection dated May 12, 2009 in U.S. Appl. No. 11/433,969, filed May 15, 2006 by Raynold M. Kahn et al. (18 pages). |
Final Rejection dated Oct. 27, 2009 in U.S. Appl. No. 11/433,969, filed May 15, 2006 by Raynold M. Kahn et al. (18 pages). |
Final Rejection dated Jun. 9, 2010 in U.S. Appl. No. 11/433,969, filed May 15, 2006 by Raynold M. Kahn et al. (23 pages). |
Final Rejection dated Jun. 10, 2010 in U.S. Appl. No. 12/172,901, filed Jul. 14, 2008 by Raynold M. Kahn et al. |
Final Rejection dated Nov. 12, 2010 in U.S. Appl. No. 11/433,926, filed May 15, 2006 by Peter M. Klauss et al. |
Final Rejection dated Mar. 25, 2011 in U.S. Appl. No. 12/684,076, filed Jan. 7, 2010 by Raynold M. Kahn et al. (21 pages). |
Final Rejection dated Oct. 26, 2011 in U.S. Appl. No. 11/434,528, filed May 15, 2006 by Raynold M. Kahn et al. (20 pages). |
Final Rejection dated Nov. 1, 2012 in U.S. Appl. No. 12/684,076, filed Jan. 7, 2010 by Raynold M. Kahn et al. |
Final Rejection dated May 9, 2013 in U.S. Appl. No. 13/179,433, filed Jul. 8, 2011 by Raynold M. Kahn et al. (24 pages). |
Final Rejection dated Apr. 28, 2016 in U.S. Appl. No. 11/433,926, filed May 15, 2006 by Raynold M. Kahn et al. (21 pages). |
Fink, Dan, “ReadyTo Take the Dive? It's fast-forward as new DVDE and Divx formats hit market (includes graphic: Home video: the next generation plus: Some selections that swhow off the system)”, York Daily Record, Dec. 21, 1998, pp. 1-3. |
Gralla, “How the Internet Works,” Millennium Edition, 1999, Que Corporation, Indianapolis, IN, all pages. |
Hewlett Packard “HP Jornada 430/430se Palm-size PC: User's Guide”, 1999, (pp. 7-9). |
Hewlett Packard “HP Jornada 430/430se Palm-size PC: User's Guide-Chapter 6”, 1999, (pp. 43-54). |
Huadong Ma, Kang G. Shin; “Multicast Video on Demand Services”; ACM SIGCOMM Computer Communication Review: vol. 32, Issue 1; Jan. 2002; pp. 31-43; ACM Press; New York NY. |
“Introduction to Encryption Theory”, published by Kyoritsu Shuppan Co., Feb. 25, 1993. |
United States Patent and Trademark Office, “Non-Final Office Action,” issued in connection with U.S. Appl. No. 11/433,926, dated Dec. 10, 2015 (19 pages). |
United States Patent and Trademark Office, “Non-Final Office Action,” issued in connection with U.S. Appl. No. 11/433,926, dated Dec. 24, 2009 (16 pages). |
United States Patent and Trademark Office, “Final Rejection,” issued in connection with U.S. Appl. No. 11/434,082, dated Aug. 7, 2009. (21 pages). |
United States Patent and Trademark Office, “Final Rejection,” issued in connection with U.S. Appl. No. 11/434,404, dated Nov. 10, 2009 (16 pages). |
United States Patent and Trademark Office, “Final Rejection,” issued in connection with U.S. Appl. No. 11/433,926, dated Apr. 4, 2017. (21 pages). |
United States Patent and Trademark Office, “Final Office Action,” issued in connection with U.S. Appl. No. 14/321,436, dated Oct. 3, 2016 (10 pages). |
United States Patent and Trademark Office, “Final Office Action,” issued in connection with U.S. Appl. No. 14/321,436, dated Jan. 13, 2017 (6 pages). |
United States Patent and Trademark Office, “Notice of Allowance and Fee(s) Due,” issued in connection with U.S. Appl. No. 14/321,436, dated Jul. 3, 2017 (5 pages). |
United States Patent and Trademark Office, “Notice of Allowance and Fee(s) Due,” issued in connection with U.S. Appl. No. 11/434,404, dated Feb. 18, 2014 (11 pages). |
Wanjiun Liao, et al., The Split and merge Protocol for Interactive Video-On-Demand, IEEE MultiMedia, Oct.-Dec. 1997, vol. 4, No. 4, index and pp. 51-62. |
White, “How Computers Work,” Millennium Edition, 1999, Que Corporation, Indianapolis, IN, all pages. |
Notice of Allowance dated Jun. 6, 2007 in U.S. Appl. No. 09/620,833, filed Jul. 21, 2000 by Raynold M. Kahn et al. (4 pages). |
Notice of Allowance dated Sep. 27, 2007 in U.S. Appl. No. 09/620,833, filed Jul. 21, 2000 by Raynold M. Kahn et al. (4 pages). |
Notice of Allowance dated Feb. 7, 2007 in U.S. Appl. No. 09/620,833, filed Jul. 21, 2000 by Raynold M. Kahn et al. (4 pages). |
Notice of Allowance dated Nov. 7, 2006 in U.S. Appl. No. 09/620,833, filed Jul. 21, 2000 by Raynold M. Kahn et al. (2 pages). |
Notice of Allowance dated Sep. 20, 2006 in U.S. Appl. No. 09/620,833, filed Jul. 21, 2000 by Raynold M. Kahn et al. (4 pages). |
Notice of Allowance dated Apr. 24, 2006 in U.S. Appl. No. 09/620,833, filed Jul. 21, 2000 by Raynold M. Kahn et al. (4 pages). |
Michael Robin, et al., Digital Television Fundamentals—Design and Installation of Video and Audio Systems, McGraw-Hill, Chapter 8, title page(s) and pp. 345-425. |
Mounir A. Tantaoui, Kien A. Hua, Simon Sheu; “Interaction with Broadcast Video,” International Multimedia Conference Proceedings of the 10th ACM International Conference on Multimedia, pp. 29-38, ACM Press, New York, NY, 2002 ISBN: 1-58113-620-X. |
Muller, “Desktop Encyclopedia of the Internet,” 1999, Artech House Inc., Norwood, MA, all pages. |
Non-final Office Action dated Sep. 11, 2003 in U.S. Appl. No. 09/620,832, filed Jul. 21, 2000 by Kahn et al., now issued Feb. 8, 2005 as U.S. Pat. No. 6,853,728. |
Non-final Office Action dated Feb. 26, 2004 in U.S. Appl. No. 09/620,773, filed Jul. 21, 2000 Kalm et al. |
Non-final Office Action dated Mar. 1, 2004 in U.S. Appl. No. 09/620,772, filed Jul. 21, 2000by Raynold M. Kahn et al. |
Non-final Office Action dated May 24, 2004 in U.S. Appl. No. 09/621,476, filed Jul. 21, 2000 by Kahn et al., now issued Apr. 10, 2007 as U.S. Pat. No. 7,203,311. |
Non-final Office Action dated Aug. 25, 2004 in U.S. Appl. No. 09/620,773, filed Jul. 21, 2000 Kahn et al. |
Non-final Office Action dated Oct. 20, 2004 in U.S. Appl. No. 09/620,772, filed Jul. 21, 2000by Raynold M. Kahn et al. |
Non-final Office Action dated Jan. 27, 2005 in U.S. Appl. No. 09/621,476, filed Jul. 21, 2000 by Kahn et al., now issued Apr. 10, 2007 as U.S. Pat. No. 7,203,311. |
Non-final Office Action dated Jul. 14, 2005 in U.S. Appl. No. 09/621,476 filed Jul. 21, 2000 by Kahn et al., now issued Apr. 10, 2007 as U.S. Pat. No. 7,203,311. |
Non-final Office Action dated Oct. 31, 2005 in U.S. Appl. No. 09/960,824, filed Sep. 21, 2001 by Raynold M. Kahn et al. |
Non-final Office Action dated Jul. 19, 2006 in U.S. Appl. No. 09/620,773, filed Jul. 21, 2000 Kahn et al. |
Non-final Office Action dated Aug. 15, 2006 in U.S. Appl. No. 09/620,772, filed Jul. 21, 2000by Raynold M. Kahn et al. |
Non-final Office Action dated Jan. 22, 2007 in U.S. Appl. No. 09/620,772, filed Jul. 21, 2000by Raynold M. Kahn et al. |
Non-final Office Action dated Jul. 26, 2007 in U.S. Appl. No. 09/620,772, filed Jul. 21, 2000by Raynold M. Kahn et al. |
Final Office Action dated Sep. 25, 2007 in U.S. Appl. No. 10/758,865, filed Jan. 16, 2004 by Raynold M. Kahn et al. |
Non-final Office Action dated Dec. 4, 2007 in U.S. Appl. No. 10/758,811, filed Jan. 16, 2004 Kahn et at (30 pages). |
Non-final Office Action dated Jan. 18, 2008 in U.S. Appl. No. 10/759,679, filed Jan. 19, 2004 by Arsenault et al. (15 pages). |
Non-final Office Action dated Mar. 17, 2008 in U.S. Appl. No. 11/701,800, filed Feb. 2, 2007 by Raynold M. Kahn et al. |
Non-final Office Action dated Apr. 11, 2008 in U.S. Appl. No. 11/434,437, filed May 15, 2006 by Raynold M. Kahn et al. (7 pages). |
Non-final Office Action dated Apr. 14, 2008 in U.S. Appl. No. 11/434,538, filed May 15, 2006 by Raynold M. Kahn et al. (7 pages). |
Non-final Office Action dated Oct. 16, 2008 in U.S. Appl. No. 11/434,437, filed May 15, 2006 by Raynold M. Kahn et al. (9 pages). |
Non-final Office Action dated Oct. 20, 2008 in U.S. Appl. No. 11/434,538, filed May 15, 2006 by Raynold M. Kahn et al. (9 pages). |
Non-final Office Action dated Nov. 14, 2008 in U.S. Appl. No. 11/433,969, filed May 15, 2006 by Raynold M. Kahn et al. |
Non-final Office Action dated Oct. 27, 2009 in U.S. Appl. No. 11/433,969, filed May 15, 2006 by Raynold M. Kahn et al. |
Non-final Office Action dated Jan. 21, 2009 in U.S. Appl. No. 11/434,082, filed May 15, 2006 by Raynold M. Kahn et al. (34 pages). |
Non-final Office Action dated Oct. 7, 2009 in U.S. Appl. No. 11/434,528, filed May 15, 2006 by Raynold M. Kahn et al. (13 pages). |
Non-final Office Action dated Oct. 28, 2009 in U.S. Appl. No. 11/434,437, filed May 15, 2006 by Raynold M. Kahn et al. (7 pages). |
Non-final Office Action dated Oct. 29, 2009 in U.S. Appl. No. 11/434,538, filed May 15, 2006 by Raynold M. Kahn et al. (8 pages). |
Non-final Office Action dated Nov. 6, 2009 in U.S. Appl. No. 12/184,957, filed Aug. 1, 2008 by Raynold M. Kahn et al. |
Non-final Office Action dated Dec. 1, 2009 in U.S. Appl. No. 12/172,901, filed Jul. 14, 2008 by Raynold M. Kahn et al. |
Yongchen Li, et al., Security Enhanced MPEG Player, IEEE, 1996, pp. 169-175. |
Non-final Office Action dated Feb. 3, 2010 in U.S. Appl. No. 11/434,437, filed May 15, 2006 by Raynold M. Kahn et al. |
Non-final Office Action dated Apr. 14, 2010 in U.S. Appl. No. 11/434,528, filed May 15, 2006 by Raynold M. Kahn et al. (14 pages). |
Non-final Office Action dated Apr. 15, 2010 in U.S. Appl. No. 11/433,926, filed May 15, 2006 by Raynold M. Kahn et al. (17 pages). |
Non-final Office Action dated May 13, 2010 in U.S. Appl. No. 11/434,538, filed May 15, 2006 by Raynold M. Kahn et al. (6 pages). |
Non-final Office Action dated Sep. 17, 2010 in U.S. Appl. No. 12/684,076, filed Jan. 7, 2010 by Raynold M. Kahn et al. (18 pages). |
Non-final Office Action dated Sep. 30, 2010 in U.S. Appl. No. 11/434,437, filed May 15, 2006 by Raynold M. Kahn et al. (9 pages). |
Non-final Office Action dated Nov. 16, 2010 in U.S. Appl. No. 11/434,538, filed May 15, 2006 by Raynold M. Kahn et al. (8 pages). |
Non-final Office Action dated May 2, 2011 in U.S. Appl. No. 11/434,528, filed May 15, 2006 by Raynold M. Kahn et al. (19 pages). |
Non-final Office Action dated Mar. 29, 2012 in U.S. Appl. No. 12/684,076, filed Jan. 7, 2010 by Raynold M. Kahn et al. (22 pages). |
Non-final Office Action dated Aug. 29, 2012 in U.S. Appl. No. 13/179,433, filed Jul. 8, 2011 by Raynold M. Kahn et al. (20 pages). |
Non-final Office Action dated May 6, 2013 in U.S. Appl. No. 12/684,076, filed Jan. 7, 2010 by Raynold M. Kahn et al. |
Non-final Office Action dated Aug. 21, 2014 in U.S. Appl. No. 11/434,528, filed May 15, 2006 by Raynold M. Kahn et al. (9 pages). |
Notice of Allowance dated Sep. 22, 2004 in U.S. Appl. No. 09/620,832, filed Jul. 21, 2000 by Kahn et al., now issued Feb. 8, 2005 as U.S. Pat. No. 6,853,728. |
Notice of Allowance dated Mar. 11, 2005 in U.S. Appl. No. 09/620,773, filed Jul. 21, 2000 by Kahn et al. |
Notice of Allowance dated May 10, 2005 in U.S. Appl. No. 09/620,772, filed Jul. 21, 2000by Raynold M. Kahn et al. |
Notice of Allowance dated Dec. 5, 2006 in U.S. Appl. No. 09/620,773, filed Jul. 21, 2000 by Kahn et al. |
Notice of Allowance dated Oct. 19, 2006 in U.S. Appl. No. 09/621,476, filed Jul. 21, 2000 by Kahn et al., now issued Apr. 10, 2007 as U.S. Pat. No. 7,203,311. |
Notice of Allowance dated Apr. 18, 2007 in U.S. Appl. No. 09/960,824, filed Sep. 21, 2001 by Kahn et al. |
Notice of Allowance dated Dec. 5, 2007 in U.S. Appl. No. 09/620,833, filed Jul. 21, 2000 by Kahn et al. (9 pages). |
Notice of Allowance dated Dec. 10, 2007 in U.S. Appl. No. 09/960,824, filed Sep. 21, 2001 by Kahn et al. |
Notice of Allowance dated Apr. 21, 2008 in U.S. Appl. No. 09/620,772, filed Jul. 21, 2000 by Raynold M. Kahn et al. |
Notice of Allowance dated Sep. 12, 2008 in U.S. Appl. No. 11/701,800, filed Feb. 2, 2007 by Raynold M. Kahn et al. |
Notice of Allowance dated May 12, 2010 in U.S. Appl. No. 12/184,957, filed Aug. 1, 2008 by Raynold M. Kahn et al. |
Notice of Allowance dated Mar. 9, 2011 in U.S. Appl. No. 11/433,969, filed May 15, 2006 by Raynold M. Kahn et al. (9 pages). |
Notice of Allowance dated Apr. 7, 2011 in U.S. Appl. No. 11/434,437, filed May 15, 2006 by Raynold M. Kahn et al. (9 pages). |
Notice of Allowance dated Sep. 6, 2011 in U.S. Appl. No. 11/434,538, filed May 15, 2006 by Raynold M. Kahn et al. (9 pages). |
Notice of Allowance dated Jan. 2, 2014 in U.S. Appl. No. 12/684,076, filed Jan. 7, 2010 by Raynold M. Kahn et al. |
Notice of Allowance dated Nov. 19, 2014 in U.S. Appl. No. 11/434,528, filed May 15, 2006 by Raynold M. Kahn et al. (5 pages). |
Notice of Allowance dated Jun. 15, 2016 in U.S. Appl. No. 13/179,433, filed Jul. 8, 2011 by Raynold M. Kahn et al. (21 pages). |
P. Venkat Rangan, et al., Designing an On-Demand Multimedia Service, IEEE Communications magazine, Jul. 1992, vol. 30, No. 7, title page and pp. 56-64. |
United States Patent and Trademark Office, “Non-Final Office Action,” issued in connection with U.S. Appl. No. 11/433,926, dated Sep. 21, 2016 (23 pages). |
“PKCS #1 v2.1: RSA Cryptography Standard”; Jun. 14, 2002, RSA Laboratories, (61 pages). |
“PocketTV-MPEG movie player for Pocket PC and WinCE” [online], May 17, 2000 MPEG TV, LLC [retrieved on Mar. 26, 2004]. Retrieved from the Intrnet <URL: http://web.archive.org/web/200006210123803/www.mpegtv.com/wince/pocketty/index.html>. |
United States Patent and Trademark Office, “Non-Final Office Action,” issued in connection with U.S. Appl. No. 11/434,404, dated May 26, 2009 (19 pages). |
Proposed SMPTE Standard for Television—Splice Points for MPEG-2 Transport Streams, SMPTE Journal, Oct. 1998, SMPTE 312M, pp. 916-925. |
Robert Johnston, et al., A Digital television Sequence Store, IEEE Transactions on Communications, May 1978, vol. Com-26, No. 5, index and pp. 594-600. |
Sin-J00 Lee, et al., A Survey of Watermarking Techniques Applied to Multimedia, IEEE, 2001, pp. 272-277. |
Tsubakiyama, Hideki and Koga, Keiichiro; “Security for Information Data Broadcasting System with conditional-Access Control”; IEEE; 1993; pp. 164-170. |
United States Patent and Trademark Office, “Non-Final Office Action,” issued in connection with U.S. Appl. No. 14/671,778, dated Jan. 29, 2016 (14 pages). |
United States Patent and Trademark Office, “Non-Final Office Action,” issued in connection with U.S. Appl. No. 14/321,436, dated May 17, 2016 (14 pages). |
Number | Date | Country | |
---|---|---|---|
20180046949 A1 | Feb 2018 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 14321436 | Jul 2014 | US |
Child | 15724918 | US | |
Parent | 11434404 | May 2006 | US |
Child | 14321436 | US |