This present invention relates to a method and apparatus for protecting content, and in particular, a method and apparatus for protecting audio-visual (A/V) content from repeat viewing without authorization.
Content Protection (CP) systems are well known for providing protection of audio-visual (A/V) content. Typically, a content protection system includes a source device (e.g., set top box (STB), digital videocassette (DVCR or DVHS) player, digital versatile (or video) disc (DVD) player, etc.) and a sink device (e.g., digital television (DTV), etc.). As will be understood by those skilled in the art, the ‘source’ device is so named because it provides a source of A/V content. Similarly, the ‘sink’ device provides a medium for viewing the A/V content. In order to prevent multiple viewing of certain A/V content, a content protection system is typically installed between the source and he sink device. For example, in the case of a certain program recorded using a DVCR, the CP system will prevent viewing of the program beyond the limits set by the provider of the program (e.g., copyright holder). For instance, the provider may permit the program to be watched once, but not thereafter. In such a case, the CP system would prevent viewing of the program on the sink device (e.g., DTV) if the user attempts to play the program through the DVCR more than once.
Some commercially available products have recording systems which permit a function commonly known as ‘video pause’ mode (e.g., TiVO, etc.). These products are often referred to as Personal Video Recorders (PVRs). In some instances, a PVR may be integrated into a television or other apparatus to allow ‘video pause’ of the television picture. In operation, a ‘live’ A/V stream enters the television for viewing. This live A/V stream is transmitted to a recording device operating in a passive mode (e.g., computer memory, etc.) in the television before it is presented on the display screen of the television. Initially, the recording device operates only as ‘pass-through’, and passes the content stream on to the display screen unaltered, while at the same time making a copy of the content stream. When the user selects the ‘video pause’ function the output of the recording device is no longer sent to the display screen, but the recording continues. When the user deselects the ‘video pause’ function (i.e., ‘unpauses’ the television), the content stream from the recording device to the display screen resumes from the paused location, and the recording continues. The content stream viewed by the user is now delayed by the amount of the pause time. At this point, the user has the option of either watching the time delayed content stream, or ‘catching up’ with the live content stream by skipping portions of the recorded content stream. Consumers appreciate this feature as it allows them to carry out other tasks without having to miss portions of a live broadcast (e.g., you can go make a sandwich during a live football game and not miss a second of the action).
Another feature of PVRs is the ability to perform an ‘instant replay’ function (the playing of the same portion of content over and over again). Thus, if a user wished to watch a pivotal play in a football game over again several time to determine if the referee made a good call, the PVR typically permits the storing of content for this function as well.
However, ‘video pause’ and ‘instant replay’ functionality present several problems as well. Content providers desire to sell their most valuable content on a ‘view only’ basis (i.e., no recordings are permitted). By the same token, the content providers may want to control what functionality is allowed to consumers, for example, allowing a ‘video pause’ function, but preventing an ‘instant replay’ function.
Present solutions to this problem include licensing television manufacturers and prohibiting storage of the content for more than a specified period of time. For example, the ‘video pause’ recorder would only store the bit stream for a maximum of twenty four (24) hours. After the specified time period has expired, the recording device automatically erases the recording. This solution is problematic because if the recording device is hacked in the interim period (e.g., within 24 hours), the content is available to be copied. Additionally, if the recording device is somehow deceived about the time, the content may be available for longer periods then intended by the content provider.
Thus, there is presently a need for a method and apparatus for copy protecting content stored during video pause mode so that the content may only be viewed in the limited manner intended by the content providers.
The present invention comprises a method for implementing a conditional access system, including appending, in a source device, a sequence counter value to content transmitted from the source device to a sink device, storing the sequence counter value in the sink device, comparing the sequence counter value to a reference sequence counter value stored at the sink device, and providing an output signal which is viewable on the sink device if the sequence counter value is greater than or equal to the reference sequence counter value stored in the sink device.
The present invention also comprises a method for implementing a conditional access system, including receiving content and at least one sequence counter value in a sink device, storing the at least one sequence counter value in the sink device, comparing the sequence counter value to a reference sequence counter value stored at the sink device, and providing an output signal which is viewable on the sink device if the sequence counter value is greater than or equal to the reference sequence counter value stored in the sink device.
Further, the present invention comprises a conditional access system including a first source device and a first sink device coupled to the first source device, wherein the source device includes a first module for generating sequence counter values and appending the values to content transmitted from the source device to the sink device, and wherein the sink device includes a second module for storing the sequence counter values in the sink device.
Additionally, the present invention comprises a method for implementing a conditional access system, the method comprising appending a sequence counter value to content transmitted from a first source device to a sink device and a second source device, storing the sequence counter value together in the second source device, transmitting the sequence counter value together with the content from the second source device to the sink device, comparing the sequence counter value to a reference sequence counter value stored at the sink device, and providing an output signal which is viewable on the sink device if the sequence counter value is greater than or equal to the reference sequence counter value stored in the sink device.
The present invention also comprises a method for implementing a conditional access system, the method comprising receiving content and at least one sequence counter value in a source device, storing the at least one sequence counter value in the source device, transmitting the sequence counter value together with the content from the source device to a sink device, comparing the sequence counter value to a reference sequence counter value stored at the sink device, and providing an output signal which is viewable on the sink device if the sequence counter value is greater than or equal to the reference sequence counter value stored in the sink device.
The present invention also comprises a conditional access system including first and second source devices and a first sink device coupled to the first and second source devices, wherein the first source device includes a first module for generating sequence counter values and appending the values to content transmitted from the first source device to the sink device and the second source device, and wherein the sink device includes a second module for storing the sequence counter values in the sink device.
The present invention also comprises a method for implementing a conditional access system, comprising appending, in a source device, a sequence counter value to content transmitted from the source device to a sink device, storing the sequence counter value in a recording device connected to the source device and the sink device, transmitting the content and the sequence counter value from the recording device to the sink device, comparing the sequence counter value to a reference sequence counter value stored at the sink device, and providing an output signal which is viewable on the sink device if the sequence counter value is greater than or equal to the reference sequence counter value stored in the sink device.
The present invention also comprises a conditional access system including first and second source devices, a first sink device coupled to the first and second source devices, and a recording device coupled between the first source device and the sink device, wherein the first source device includes a first module for generating sequence counter values and appending the values to content transmitted from the first source device to the recording device and the second source device, and wherein the sink device includes a second module for storing the sequence counter values in the sink device, and wherein the recording device stores the content.
Finally, the present invention comprises a method for implementing a conditional access system, comprising receiving content and at least one sequence counter value in a sink device, storing the sequence counter value in a recording device connected to the source device and the sink device, transmitting the content and the sequence counter value from the recording device to the sink device, comparing the sequence counter value to a reference sequence counter value stored at the sink device, and providing an output signal which is viewable on the sink device if the sequence counter value is greater than or equal to the reference sequence counter value stored in the sink device.
The present invention is a method and apparatus for copy protecting audio-visual (A/V) content. Through the utilization of a sequence counter, viewing of content stored in a recording device may be significantly restricted. In an exemplary embodiment of the present invention, a first source device (e.g., set top box (STB)) is provided with a device identifier and a sequence counter, and a sink device (e.g., digital television (DTV), etc.) is equipped to store the device identifier and sequence counter values for the associated sink device. By comparing the sequence counter values transmitted by the first source device with sequence counter values stored in the sink device, protection of content may be accomplished.
The first source device 120 preferably includes a first secure module 121 which contains a sequence counter value generator. The sequence counter value generator may be of any suitable size, but is preferably 32 bit (generating 32 bit sequence counter values). Of course, those of ordinary skill in the art will realize that any bit size may be used for the sequence counter values (e.g., 40 bit, 56 bit, 64, bit etc.), depending on the desired security and relative complexity of the system. In accordance with the present invention, the first secure module generates sequence counter values and appends theses values to content which is transmitted by the first source device 120.
In the first exemplary embodiment, the second source device 130 comprises a means for playing and recording content, such as a DVD player/recorder or a DVHS/DVCR player/recorder. Those of ordinary skill in the art will realize that the second source device 130 may also include a secure module with a sequence counter, however, such is not necessary in the exemplary embodiment shown in
Preferably, the first source device 120 and the second source device 130 also have respective device identifiers (device IDs) associated therewith. The device ID may be, for example, the serial number value of the respective source devices 120, 130. These device IDs are used in the present invention to identify content with respect to the particular source device which originally supplied the content.
The sink device 110 preferably includes a second secure module 111 which checks the sequence counter values as they are transmitted with content from either the first source device 120 or the second source device 130. The second secure module 111 also updates respective sequence counter databases corresponding to each source device coupled to the sink device (e.g., source devices 120, 130, etc.) each time a new value is transmitted.
When content is transmitted from the first source device 120, the sequence counter values generated in the first secure module 121 are embedded in the content. It will be understood by those skilled in the art that the embedding of the sequence counter values in the content should be done in a secure manner so as to prevent a user from tampering with the sequence counter values. For example, the sequence counter value may be included as a data field in the Entitlement Control Message (ECM) that carries Control Words (CWs) for the content. This insures that any recording device (e.g., 130 or 117) will need to store the original counter values rather than replacing them. At periodic intervals (e.g., every 10 seconds), the sequence counter generator of the first secure module 121 is incremented and the new value is used in the content stream which is sent from the first source device 120. When the sink device 110 receives the sequence counter values, they are stored in respective sequence counter databases corresponding to each source device coupled to the sink device (e.g., source devices 120, 130). For example, the first sequence counter value transmitted with the content may be “0001”, and successive sequence counter values may be “0002”, “0003” and so on.
If the sink device 110 is coupled to more than one source device (such as shown in
When the sink device 110 is about to render content (e.g., display the content on a display screen of the sink device or a display screen coupled to the sink device) the sink device decrypts the ECMs to get the proper CWs for decryption of the content. As the decryption of the ECMs proceeds, the sink device 110 also recovers the sequence counter value embedded in the ECM and compares the value to the last value stored in the respective sequence counter for that source device. If the received sequence counter value is equal to or greater than greatest value that has already been transmitted by the particular source device (e.g., source device 120), the sink device 110 renders the content. If the sequence counter value is less than the greatest value that has already been transmitted by the particular source device (e.g., source device 120), the sink device 110 will not render the content (i.e., the sink device will not display the content on a display screen of the sink device or a display screen coupled to the sink device). Further, if the sequence counter value is higher than the greatest value that has already been transmitted by the particular source device (e.g., source device 120), the sink device also updates the stored sequence counter value for the respective source device (e.g., source device 120).
For example, if source device 120 transmits program A directly to the sink device 110 or second source device 130 for viewing, the first sequence counter value received by the sink device may be 0001. If the user engages the ‘video pause’ feature (recording device 117) of the television (sink device 110) before the next sequence counter value is received, the television continues-to receive content with higher sequence counter values (e.g., 0002, 0003, etc.), but the sequence counter value within the second secure module 111 of the sink device 110 is not updated. Thus, when the user returns and ‘unpauses’ the television, the content continues from the pause point and the sequence counter value is updated accordingly as the user watches the recorded version of the program.
Once the user has watched the ‘paused’ version of the program, he may not go back and watch the program again even though the program may remain stored in sink device 110. This is because the sequence counter value stored in second secure module 111 and associated with the source device 120 will have a reached a value corresponding to the end of the program (e.g., 0100), and thus will not permit re-viewing of portions with sequence counter values less than this value. The result of the above is that pausing of content may occur, but recording of content for a long period is effectively prevented.
The second source device 130 may also be used in the same manner as the recording device 117 to record programs for later viewing, and the first secure module 121 will provide protection therefor. For example, if the first source device 120 transmits program A to the second source device 130 for recording, the first sequence counter value received by the second source device may again be 0001. If the program has sequence counter values through 0100, and the user records the entire program, the user will be able to watch the recorded program on the sink device 110 at any later time, provided the user has not previously viewed the program on the sink device 110 (e.g., the user watched the program while recording it).
Accordingly, the above-described system 100 permits the following actions: (1) live viewing of content, (2) paused viewing, (3) viewing a short piece of the content over and over (provided that the sequence counter does not increment in the span that is being played), (4) pausing a program, watching something from another source device and then un-pausing the original program, and (5) watching one program on a first sink device and then watching the program again on another sink device. As far as the content provider is concerned, numbers (3) and (5) above are not optimal results, however, the content provider will likely submit to these results given the benefits provided by numbers (1), (2), and (4).
For example, consider two programs, Movie A and Movie B. Both Movie A and Movie B are transmitted from the same source device (e.g., source device 120) and are rendered on the same sink device (e.g., sink device 110). Movie A is transmitted with sequence counter values from 0001-1000 and Movie B is transmitted with sequence values from 1001-2000. If a recording of Movie A is made in the sink device 110 (e.g., using the ‘video pause’ feature) while movie A is also being viewed on the sink device, and the user ‘pauses’ the movie (“paused viewing”; Example (2) discussed above) at sequence counter value 573, the user may go back and watch portions of movie A with sequence counter values equal to and above 573 (e.g., 573-1000). Portions of Movie A which have sequence counter values from 1-572 may not be viewed. Similarly, if the user watches all of Movie A (through sequence counter value 1000), the user may not go back and watch any portion of the movie which was recorded in the sink device 110 (or recorded in an external device such as sink device 130) because each portion of the movie has a sequence counter value lower than the maximum stored value (e.g., 1000).
Additionally, if the user ‘pauses’ Movie A, watches Movie B, and then attempts to finish viewing Movie A, the user will not be permitted to watch the rest of Movie A as the sequence counter value for the sink device is now at the last sequence counter value in Movie B (e.g., 2000), and the unwatched portions of Movie A have lower sequence counter values. Although this result may not be ideal for consumers (i.e., because they have paid for all of Movie A and have only been permitted to watch part of it), the content provider prefers this result, as it prevents long-term storage of the recorded (paused) content (in this case Movie A).
Although the invention has been described in terms of exemplary embodiments, it is not limited thereto. Rather, the appended claims should be construed broadly, to include other variants and embodiments of the invention which may be made by those skilled in the art without departing from the scope and range of equivalents of the invention.
This application claims the benefit, under 35 U.S.C. § 365 of International Application PCT/US02/20503, filed Jun. 28, 2002, which was published in accordance with PCT Article 21(2) on Mar. 13, 2003 in English and which claims the benefit of U.S. Provisional Application 60/316,373, filed Aug. 31, 2001.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/US02/20503 | 6/28/2002 | WO | 00 | 2/24/2004 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO03/021959 | 3/13/2003 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
2086585 | Taub et al. | Jul 1937 | A |
2087132 | Taub et al. | Jul 1937 | A |
2108765 | Domagk | Feb 1938 | A |
2209383 | Bock | Jul 1940 | A |
2439969 | Fourneau | Apr 1948 | A |
2445393 | Fourneau | Jul 1948 | A |
2513747 | Sallman et al. | Jul 1950 | A |
2606909 | Blicke | Aug 1952 | A |
2689790 | Mowry et al. | Sep 1954 | A |
2950253 | Kling et al. | Aug 1960 | A |
3054678 | Michener et al. | Sep 1962 | A |
3694473 | Eibl et al. | Sep 1972 | A |
4093714 | Tolman et al. | Jun 1978 | A |
4096278 | Queuille | Jun 1978 | A |
4119714 | Kny et al. | Oct 1978 | A |
4159988 | Eibl et al. | Jul 1979 | A |
4221732 | Oette et al. | Sep 1980 | A |
4235877 | Fullerton | Nov 1980 | A |
4291024 | Turcotte | Sep 1981 | A |
4329302 | Hanahan et al. | May 1982 | A |
4426525 | Hozumi et al. | Jan 1984 | A |
4444766 | Bosies et al. | Apr 1984 | A |
4471113 | MacCoss | Sep 1984 | A |
4540521 | Garst et al. | Sep 1985 | A |
4559157 | Smith et al. | Dec 1985 | A |
4608392 | Jacquet et al. | Aug 1986 | A |
4619917 | Lee et al. | Oct 1986 | A |
4622392 | Hong et al. | Nov 1986 | A |
4661509 | Gordon et al. | Apr 1987 | A |
4724232 | Rideout et al. | Feb 1988 | A |
4797479 | Shuto et al. | Jan 1989 | A |
4816450 | Bell et al. | Mar 1989 | A |
4820508 | Wortzman | Apr 1989 | A |
4826823 | Cook et al. | May 1989 | A |
4835263 | Nguyen et al. | May 1989 | A |
4837023 | Eibl | Jun 1989 | A |
4841039 | Chu et al. | Jun 1989 | A |
4880782 | Eckstein et al. | Nov 1989 | A |
4921951 | Shuto et al. | May 1990 | A |
4938949 | Borch et al. | Jul 1990 | A |
4992478 | Geria | Feb 1991 | A |
4997761 | Jett-Tilton | Mar 1991 | A |
5026687 | Yarchoan et al. | Jun 1991 | A |
5034394 | Daluge | Jul 1991 | A |
5138045 | Cook et al. | Aug 1992 | A |
5221696 | Ke et al. | Jun 1993 | A |
5496546 | Wang et al. | Mar 1996 | A |
5512671 | Piantadosi | Apr 1996 | A |
5614548 | Piantadosi et al. | Mar 1997 | A |
5633388 | Diana et al. | May 1997 | A |
5770584 | Kucera et al. | Jun 1998 | A |
5830905 | Diana et al. | Nov 1998 | A |
5846964 | Ozeki | Dec 1998 | A |
5891874 | Colacino et al. | Apr 1999 | A |
5922757 | Chojkier | Jul 1999 | A |
5962437 | Kucera et al. | Oct 1999 | A |
6030960 | Morris-Natschke et al. | Feb 2000 | A |
6456783 | Ando et al. | Sep 2002 | B1 |
6670341 | Kucera et al. | Dec 2003 | B1 |
20010030943 | Gregg et al. | Oct 2001 | A1 |
20030159043 | Epstein | Aug 2003 | A1 |
Number | Date | Country |
---|---|---|
37 26 945 | Feb 1989 | DE |
39 34 820 | Apr 1991 | DE |
40 10 228 | Oct 1991 | DE |
199 14 474 | Oct 1999 | DE |
0 094 586 | Nov 1983 | EP |
0 109 255 | May 1984 | EP |
0 142 333 | May 1985 | EP |
0 145 303 | Jun 1985 | EP |
0 146 258 | Jun 1985 | EP |
0 252 310 | Jan 1988 | EP |
0 310 109 | Apr 1989 | EP |
0 335 396 | Apr 1989 | EP |
0 348 859 | Jan 1990 | EP |
0 350 287 | Jan 1990 | EP |
0 416 401 | Mar 1991 | EP |
0 434 450 | Jun 1991 | EP |
0 506 704 | Jul 1991 | EP |
0 632 048 | Jan 1995 | EP |
975165 | Jan 2000 | EP |
1561630 | Mar 1969 | FR |
2 239 243 | Jun 1991 | GB |
42-13841 | Aug 1967 | JP |
49-100224 | Sep 1974 | JP |
61-238793 | Oct 1986 | JP |
1029312 | Jan 1989 | JP |
08-268890 | Oct 1996 | JP |
10-101591 | Apr 1998 | JP |
10-243374 | Sep 1998 | JP |
9000555 | Jan 1990 | WO |
9005736 | May 1990 | WO |
9015601 | Dec 1990 | WO |
9105558 | May 1991 | WO |
9109602 | Jul 1991 | WO |
9118914 | Dec 1991 | WO |
9119726 | Dec 1991 | WO |
9203462 | Mar 1992 | WO |
9206192 | Apr 1992 | WO |
9300910 | Jan 1993 | WO |
9308807 | May 1993 | WO |
9316091 | Aug 1993 | WO |
9316092 | Aug 1993 | WO |
9317020 | Sep 1993 | WO |
9321191 | Oct 1993 | WO |
WO 9428908 | Dec 1994 | WO |
WO 9817679 | Apr 1998 | WO |
WO 9822496 | May 1998 | WO |
WO 9907734 | Feb 1999 | WO |
0001149 | Jan 2000 | WO |
WO 0004727 | Jan 2000 | WO |
Number | Date | Country | |
---|---|---|---|
20040233811 A1 | Nov 2004 | US |
Number | Date | Country | |
---|---|---|---|
60316373 | Aug 2001 | US |