Abstract:
A conditional access system and method including a first source device and a first sink device coupled to the first source device, wherein the source device includes a module for generating sequence counter values and appending the values to content transmitted from the source device to the sink device.

Description:
RELATED APPLICATIONS 
     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. 
    
    
     FIELD OF THE INVENTION 
     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. 
     BACKGROUND OF THE INVENTION 
     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. 
     SUMMARY OF THE INVENTION 
     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. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is block diagram showing an apparatus according to a first exemplary embodiment of the present invention. 
         FIG. 2  is block diagram showing an apparatus according to a second exemplary embodiment of the present invention. 
     
    
    
     DETAILED DESCRIPTION 
     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. 
       FIG. 1  shows a system  100  according to a first exemplary embodiment of the present invention. The system  100  comprises a content source  105 , a sink device  110 , such as a digital television (DTV), a first source device  120 , such as a set top box (STB), digital versatile (or video) disc (DVD) player, or Personal Video Recorder (PVR), and a second source device  130  which permits recording, such as a digital videocassette (DVCR or DVHS) player/recorder, a digital versatile (or video) disc (DVD) player/recorder, or a PVR. As is well known in the art, a DVCR, a PVR or a DVD player/recorder will permit recording of content on a digital medium. In the exemplary embodiment shown in  FIG. 1 , the sink device  110  also preferably includes integrated therein a recording device  117  for executing a ‘video pause’ function. 
     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  FIG. 1  because it is assumed that all content which is recorded and played back by the second source device comes from the first source device  120  (and thus already contains the sequence counter values embedded therein). If the second source device  130  were to receive secured content from other outside sources, a secure module with sequence counter would be required in order to prevent unauthorized viewing of the content. 
     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  FIG. 1 ), the sink device  110  preferably retains (e.g., in a memory or otherwise) a list of all source devices from which it receives content as well as a list of the device IDs for each source device. In the above-described exemplary system  100 , the sink device  110  would need to store the device ID for the first source device  120  and the device ID for the second source device  130 , if both devices have the ability to receive secure content into the network to the sink device. For example, the sink device  110  may store device ID 1  corresponding to the first source device  120  in a first memory location, and device ID 2  corresponding to the second source device  130  in a second memory location. 
     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). 
       FIG. 2  shows a system  200  according to a second exemplary embodiment of the present invention. The system  200  is similar to system  100  described above, and like reference numerals denote like elements. The main difference between systems  100  and  200  is that, in system  200  the recording device  240  is disposed outside the sink device  110  (as opposed to being internal to the sink device). The system  200  comprises a content source  205 , a sink device  210 , such as a digital television (DTV), a first source device  220 , such as a set top box (STB), digital versatile (or video) disc (DVD) player, or Personal Video Recorder (PVR), and a second source device  230  which permits recording, such as a digital videocassette (DVCR or DVHS) player/recorder, a digital versatile (or video) disc (DVD) player/recorder, or a PVR. As is well known in the art, a DVCR, a PVR or a DVD player/recorder will permit recording of content on a digital medium. The system  200  also includes a recording device  240  for executing a ‘video pause’ function. The system  200  operates substantially similarly to the system  100  described above, and therefore a detailed description is omitted here. 
     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.