Validating keying material by using a validation area of read-only media to prevent playback of unauthorized copies of content stored on the media6957343Abstract In one aspect of the invention is a method for preventing unauthorized copies of a medium, such as a DVD, from being played by a compliant device by using the validation area (VA) region of a medium to validate keying material. A compliant device is a device that will validate keying material. In one embodiment of the invention, a compliant device validates keying material by using the value in the VA region of the medium. In alternative embodiments, a compliant device will validate keying material by checking correspondence between keying material written to a non-VA region of a medium and validation data written to a VA region of a medium. In the alternative embodiments, if the keying material does not correspond to the validation data, then a compliant device will prevent the contents of the medium from being played. Claims 1. A method comprising: Description COPYRIGHT NOTICE
A VA is a portion of a medium that has physical properties that make it difficult to mimic using ordinary consumer recording equipment/media. A VA requires special manufacturing equipment to write, making its contents difficult to copy. Furthermore, since the VA is read using a physically different process from that used to read the other areas of a medium, a device can physically distinguish contents written to a VA from contents that may have been written by an ordinary recorder on ordinary recordable media. One example of a VA is the Burst Cutting Area of a DVD-ROM. It should be understood by one of ordinary skill in the art that the term "VA" or "VA region" is to be construed as an area having the general properties described herein, and that the term "VA" or "VA region" shall not preclude other areas having the properties of a VA described herein from being construed as an equivalent of a VA. Validated Medium A Validated Medium is a medium on which the VA is used to validate Keying Material 114. A Validated Medium comprises Validation Data in the VA region of the medium. In embodiments of the invention, a medium is illegitimate, or unauthorized, if Keying Material 114 in a Validated Medium cannot be validated, as will be discussed further below. A non-Validated Medium is merely a medium that does not comprise Validation Data in the VA region, but does not imply that the medium is an illegitimate, or unauthorized medium. In embodiments of the invention, a non-Validated Medium is played by a compliant device (as well as a non-compliant device) so as to preserve compatibility between compliant devices and legitimate, older media. These embodiments encourage consumers to buy newer devices, which will still play older media, but which will also prevent illegitimate discs from being played. Of course, it is also contemplated that compliant devices may prevent non-Validated Media from being played. Keying Material Keying Material 114 comprises value(s) on which access to protected content depends. In content protected by CSS (to be discussed), Keying Material 114 may comprise Secure Disc Key Data; and in content protected by CPPM (to be discussed), Keying Material 114 may comprise an Album Identifier. Typically, the value is used as a key, or is used to form a cryptographic key, for decrypting encrypted content 112. While the value may be unique for every medium, it is typically unique for some set of media. Validation Keying Material 114 is validated when it is used to decrypt encrypted content 112 (or form the cryptographic key needed to decrypt content), thereby allowing playback of the read-only content. Where correspondence is checked prior to validation, Keying Material 114 from the non-VA region of the medium is used if correspondence is found. Where no correspondence is checked for validation, Keying Material 114 used to decrypt the encrypted content is derived from Validation Data. Where the Validation Data comprises the Keying Material 114 (i.e., they are one and the same), or where the Validation Data is a copy of the Keying Material 114 in the non-VA region, the Keying Material 114 is derived from the Validation Data by using the Validation Data itself. In other cases, Keying Material 114 may be derived from the Validation Data by converting the Validation Data to the original Keying Material. For example, in some embodiments (such as in content protection schemes like CSS, to be discussed), Validation Data is a function of Keying Material 114, such that to use the original Keying Material 114 to decrypt the content, the same cryptographic function is used on the validation Data to form the original Keying Material 114. Device A device is any mechanism for playing back content on a read-only medium. For DVDs, such a mechanism comprises a DVD playback device, which may be a DVD player, or a DVD drive, for example. Compliant Device A compliant device is a device that will play a Validated Medium. Introduction Generally, as shown in the flowchart of FIG. 2, which begins at block 200, a compliant device playing a Validated Medium validates the Keying Material 114 in one of two ways. The compliant device may validate the Keying Material 114 by using Validation Data in the VA, shown in block 202, where the Validation Data may comprise the Keying Material 114 in the VA region; a copy of the Keying Material 114 in the non-VA region; or a function of Keying Material 114 that is written to the non-VA region (in which case the Validation Data is first subject to a function prior to being used to decrypt content, as discussed above). In the rare, or unlikely case that the Validation Data comprises some other value which will produce an incorrect cryptographic key, or does not comprise a value at all, a compliant device may still "validate" the Keying Material and use the value in the VA region, but an incorrect/invalid value in the VA region will prevent the content from being played. Alternatively, a compliant device may compare Keying Material 114 written to a non-VA region of the medium to Validation Data written to a VA region of the medium, as shown in block 204. In block 206, it is determined if the Keying Material 114 and the Validation Data correspond. If they do not correspond, then the device does not validate the Keying Material 114 in block 208, thereby preventing the Keying Material 114 from being used to decrypt the encrypted content 112, and thereby preventing playback of the content. If the Keying Material 114 and the Validation Data 402 correspond, then in block 210, the device validates the Keying Material 114, allowing it to be used for decrypting the encrypted data 112. The method ends at block 212. Given embodiments of this invention, the following outlines the different scenarios that may exist for playing media: 1. Validated Medium is played on a compliant device: compliant devices recognize the VA region of a medium, and will therefore look for Validation Data in the VA. Keying Material 114 may be automatically validated, as shown in block 202 of FIG. 2 in newer media that rely solely on compliant devices, or where a particular implementation trusts the VA properties of the medium. Other implementations may choose to find correspondence between the Validation in the VA and Keying Material 114 in the non-VA prior to validating the Keying Material 114, as shown in block 206 of FIG. 2. 2. Validated Medium is played on a non-compliant device: non-compliant (i.e. older) devices may not recognize the VA region of a medium, or may simply not be designed to look for Validation Data in the VA. Such devices will use the Keying Material 114 in the non-VA region of the medium to decrypt the content in accordance with previous methods for decrypting. 3. Non-Validated Medium is played on a compliant device: a compliant device will look for, but not find a BCA containing Validation Data. The device will, in this case, use the Keying Material 114 in the non-VA region to decrypt the content in accordance with previous methods for decrypting. (As discussed above, the device may alternatively prevent playback of the content on the medium.) 4. Non-Validated Medium is played on a non-compliant device: a non-compliant device will use the Keying Material 114 in the non-VA region to decrypt the content in accordance with previous methods for decrypting. In scenarios 2 and 4, a non-compliant device will not prevent the playback of unauthorized copies of media. In scenarios 2 and 3, prevention of unauthorized copies cannot be implemented with a Validated Medium or with a compliant device, but interoperability between new devices and old media (scenario 3), as well as old devices and new media (scenario 2), is maintained. To preserve compatibility with old devices and old media, the method of FIG. 2 can be modified as shown in FIG. 3, beginning at block 300. At block 302, a determination is made as to whether the medium being read is a Validated Medium (the determination to be discussed in further detail). If the medium is not a Validated Medium, then at block 314 the compliant device does not look for Validation Data, but instead simply uses the Keying Material 114 in the non-BCA region of the medium to decrypt the content in accordance with previous methods for decrypting. This determination preserves interoperability between compliant devices and non-BCA validated media, such that if the medium being read is not a Validated Medium, then the compliant device will not necessarily prevent the non-Validated Medium from being played. At blocks 306 and 308, the medium is determined to be a Validated Medium. The compliant device may validate the Keying Material 114 by using the Validation Data in the VA (in certain cases, as discussed above), as shown in block 306. Since the VA has the special properties that make its contents difficult to copy, the compliant device has a certain degree of confidence that the data in the VA has not been tampered with. The compliant device may alternatively validate the Keying Material 114 by comparing the Keying Material 114 in the non-VA region of the medium to the Validation Data in the VA of the medium, shown in block 308. Continuing to store Keying Material 114 in the non-VA region of the medium can be a means of preserving interoperability between Validated Media and non-compliant devices such that if a Validated Medium is read by a non-compliant device, which expects to find the Keying Material 114 in the non-VA of a given medium, the non-compliant device will not error out. Thus, a non-compliant device will look for Keying Material 114 in the non-VA of the medium and use that value to decrypt the content. A non-compliant device, however, has no mechanism for validating the authenticity of the Keying Material 114, even if the medium is a Validated Medium. A compliant device, on the other hand, can validate the authenticity of the Keying Material 114 written to a Validated Medium. At block 310, a determination is made as to whether the Keying Material 114 corresponds to the Validation Data. If there is no correspondence (correspondence to be discussed), then at block 304 the compliant device does not validate the Keying Material 114, thereby preventing playback of the content. At block 312, if there is correspondence, then the compliant device validates the Keying Material 114. The method ends at block 316. By embodiments of this invention, BCA validated media can prevent hackers from copying Keying Material 114 (and/or its associated Validation Data) that is stored on a DVD-ROM onto a DVD-R, for example, thereby making an unauthorized copy of the DVD-ROM on the DVD-R unplayable. On non-Validated Media, such as a non-Validated DVD, hackers can do this, for example, by:
As illustrated in FIG. 4, therefore, a Validated Medium 400 comprises a Validation Area 406 (VA) region and a non-VA region 404, where the VA region comprises Validation Data 402, and the non-VA region 404 comprises Encrypted Content 112. In some embodiments, the non-VA region 404 may additionally comprise Keying Material 114. Exemplary Embodiments Examples of media comprising a Validation Area 406 include DVD-ROMs (DVD-Read Only Memories). Several exemplary embodiments are described herein with reference to DVD media. Specifically, concepts related to this invention are described in relation to the following exemplary embodiments:
While these particular embodiments are described, it should be understood by one of ordinary skill in the art that the invention is not intended to be limited to these particular embodiments, and that general concepts of the invention are applicable to various embodiments not discussed herein. The current state of these embodiments is discussed in this section ("Exemplary Embodiments"). General concepts of the invention as they relate to these exemplary embodiments are described in subsequent sections. Where appropriate, or where helpful to understanding the invention, the general concepts of the invention are illustrated with reference to these exemplary embodiments. DVD Content Protected By CPPM The Content Protection For Prerecorded Media (CPPM) specification defines a robust and renewable method for protecting content distributed on prerecorded (read-only) media types. In one exemplary embodiment, a specification is defined for using CPPM technology to protect DVD-Audio content distributed on read-only DVD (DVD-ROM) discs. Generally, each CPPM compliant DVD-Audio playback device (such as a hardware DVD player, or a software player used in conjunction with a computer equipped with a DVD drive) is given a set of 16 Device Keys denoted Kd Each side of a disc with CPPM protected DVD-Audio content contains:
For purposes of this invention, the Album Identifier is described in further detail below; however, since the MKB and Encrypted Content 112 concepts are not pertinent to embodiments of this invention other than as described above, they are not discussed any further. For a detailed explanation of how an Album Identifier is used in conjunction with a Media Key Block to prevent unauthorized copying of content protected by CPPM, one can refer to the document entitled "CONTENT PROTECTION FOR PRERECORDED MEDIA SPECIFICATION, DVD BOOK" published by the 4C Entity, LLC, Revision 0.93, dated Jan. 31, 2001. Each side of a disc with CPPM Protected DVD-Audio content contains a 64-bit Album Identifier (IDalbum), which is placed in the Non-Data Area 104 by the disc manufacturer. Specifically, the Album Identifier is placed in bytes 80 through 87 of Control Data Area 110 Sector #2. The most significant 8 bits of the Album Identifier (stored in byte 80) are currently defined to have a value of zero. For forward compatibility, a non-zero value in these 8 bits is not considered an error. For the remaining 56 bits, the content provider individually assigns a secret, unpredictable (e.g., random) value to each DVD-audio album to be protected using CPPM. At the content provider's option, all pressings of a given album may contain the same IDalbum value, or different values may be assigned for different pressings. The role of the Album Identifier is not that of individual media identification. Rather, it serves as an album-specific value that is integrated into CPPM cryptographic key management, and placed in a location that is not writeable on compliant DVD recordable-rewriteable media. In a PC (personal computer) system, the Album Identifier is accessed using the DVD drive authentication protocol. For consistency with other non-CPPM uses of that protocol, the confidentiality of the data in Control Data Area 110 Sector #2, including the Album Identifier value, should be maintained. DVD Content Protected By CSS Content Scramble System (CSS) is a data scrambling and authentication scheme intended to prevent copying DVD-Video files directly from the disc. The CSS scrambling algorithm exchanges keys with the drive unit to generate an encryption key that is then used to obfuscate the exchange of disc keys and title keys that are needed to descramble data from the disc. DVD players have CSS circuitry that decrypts the data before it's decoded and displayed. On the computer side, DVD decoder hardware and software must include a CSS decryption module. All DVD drives have extra firmware to exchange authentication and decryption keys with the CSS module in the computer. DVD Content Protected By CPPM/CSS On combination discs that include both CPPM and CSS content, the CDA 110 contains not only the CPPM Album Identifier, but also the Secure Disc Key Data, which must be kept secret. Determining if a Medium is a BCA Validated Medium As used herein, media which uses the Validation Area 406 to validate Keying Material 114 is referred to as Validated Media 400. There are various methods for determining if a medium is a Validated Medium 400. For example, in one embodiment of the invention, a medium is a prerecorded DVD with CPPM protected content. In DVD's, the VA region 406 of the media is referred to as the Burst Cutting Area (BCA), and where the DVD uses the CPPM protection scheme, Keying Material 114 comprises an Album Identifier. The Album Identifier is written to a non-BCA region, specifically the Control Data Area 110 of the Lead-in Area 104. As mentioned previously, the Album Identifier is an 8-byte (64-bit) value. Under the current state of the art, the most significant 8 bits are set to 0. To implement embodiments of the invention using DVD protected by CPPM, the most significant 8 bits are used to indicate that a medium is a Validated Medium 400 by setting any one or more of those bits to 1. Thus, when a device determines whether a CPPM protected medium is a Validated Medium 400, it examines the Album Identifier to determine if its most significant bit, for example, is set to 1. If it is, then the device is triggered to look for Validation Data 402 in the Validation Area 406 (specifically, the BCA) of the medium 400. Otherwise, the medium is not a Validated Medium 400, and the device will simply use the Keying Material 114 in the non-VA region of the medium to decrypt the content in accordance with previous methods. In other embodiments, such as where Secure Disc Key Data is written to the non-VA region of a medium, other methods may be used to determine if the medium is a Validated Medium 400. Generally, some sort of trigger is used, which would typically involve setting some data item that is currently reserved or unused to a value other than its currently defined value. In embodiments of the invention, the data item that is used as a trigger is integrated with the Keying Material 114, such that a compliant device can also determine whether the trigger value has been tampered with when validating the Keying Material 114. For example, in content protected by CPPM, since the cryptographic key for decrypting content is dependent on the Album Identifier, any attempt to tamper with the Album Identifier will prevent it from producing the correct cryptographic key, thereby preventing the content from being played. Thus, if a hacker tries to thwart the scheme by flipping the most significant bit from 1 to 0 (in reference to the example above), the hacker will also change the Album Identifier. Although a compliant device will bypass validation, it will still use the Album Identifier in an attempt to decrypt the content, but since the Album Identifier has been tampered with, it will not produce the correct key for decrypting the content. Keying Material Keying Material 114 is a value or set of values that is written to a medium 100, 400 containing protected content, and upon which access to the content depends. For example, on DVD-Audio media protected by CPPM (Content Protection For Prerecorded Media), Keying Material 114 comprises an Album Identifier, which is an 8-byte (64-bit) value that is assigned individually and randomly to each album to be protected, and which is used in forming the cryptographic key needed to decrypt content on the medium, discussed supra. On DVD-Video media protected by CSS (Content Scramble System), Keying Material 114 comprises Secure Disc Key Data. On Media using a combination CSS/CPPM protection scheme, both an Album Identifier and Secure Disc Key Data are present. Keying Material 114 that is used to decrypt content (either by using it directly, or by forming a cryptographic function to decrypt the content) can be derived from the Validation Data that is in the VA region, or it can be used directly from the non-VA region, as explained in the section entitited "Validation", supra. Validation Data Validation Data 402 is data that enables a playback device to verify that the Keying Material 114 read from the medium is authentic (i.e. is not an unauthorized copy written using widely available recording equipment and recordable media). The nature and location of the Validation Data 402 varies depending upon the type of protection enabled for a given Validated Medium 400. In some cases, the Validation Data 402 may comprise the Keying Material 114 itself, and in other cases, the Validation Data 402 may comprise a copy of the Keying Material 114, or a cryptographic function of the Keying Material 114. Examples follow for each of the exemplary embodiments discussed above. In embodiments of the invention described herein, Validation Data 402 is written to the VA region 406 of a medium. DVD Content Protected By CPPM On Validated Media protected by CPPM where the Keying Material 114 comprises an Album Identifier, the Validation Data 402 comprises a copy of the Album Identifier. DVD Content Protected By CSS or CPPM/CSS On Validated Media where content is protected by CSS, and where content is protected by a combination scheme of CPPM/CSS, the Secure Disc Key Data are to be kept secret. Consequently, all values in CDA 110 sectors containing Secure Disc Key Data (possibly including sector #2 containing the Album Identifier) must be secret, due to the way that the sectors are scrambled during transfer from drive to host, for instance. However, storing a copy of the Album Identifier in the VA region 406 would make the value of the Secure Disc Key Data obvious (where a combination CPPM/CSS scheme is used), since the standard drive interface permits the BCA region 406 to be read in the clear. Thus, in the case of content protected by CSS, where the Keying Material 114 comprises Secure Disc Key Data, the Validation Data 402 comprises a function on the Secure Disc Key Data. Where content is protected by a combination scheme, and the Keying Material 114 comprises both the Album Identifier and Secure Disc Key Data, Validation Data 402 comprises a function on the Album Identifier, as well as a function on the Secure Disc Key Data. By using a one-way cryptographic function on a value to create the Validation Data 402, rather than using the given value itself, the value is prevented from being discovered by reading the VA region 406. At the same time, it permits devices to compare the Validation Data 402 in the BCA region 406 to the Keying Material 114 in the CDA 110, as described below in the section entitled "Determining Correspondence". Other Content Protection Formats New content protection formats and schemes for reading media can be designed by simply placing Keying Material 114 in the VA region of the medium, such that the Validation Data 402 comprises the Keying Material 114. Since the VA region has special properties that make mimicking that region very difficult, compliant devices can have a high degree of confidence that the data in the VA region has not been tampered with. Alternately, new formats might be designed with Keying Material in the non-VA region of the medium, and Validation Data (possibly a copy of the Keying Material itself) in the BCA. This approach would allow providers of content on the new format to choose whether or not to include the Validation Data in the BCA (i.e. a trade-off between increased protection against unauthorized copies, versus the added manufacturing cost of including the BCA). Determining Correspondence As shown in FIG. 5, correspondence relates to whether a device 500 can validate Keying Material 114 by comparing the Keying Material 114 written to the non-VA region of a medium to Validation Data 402 in the VA region of the medium. In embodiments of the invention, correspondence is determined where Keying Material 114 is placed in non-VA region 404 of the medium, rather than just placing it in the more secure VA region 406, and where the scheme for a given compliant device does not automatically validate Validation Data 402 written to the VA region 406. Assuming a compliant device, and a BCA validated medium 400 in one embodiment described above, the device 500 retrieves 506 the Keying Material 114 from the non-VA region 404 (e.g. the Control Data Area 110 of the Lead-in Area 104 on a DVD), and also retrieves the Validation Data 402 from the VA region 406. A comparator 502 in the device 500 compares the Keying Material 114 to the Validation Data 402. If the values correspond, then a validator 504 in the device 500 validates the authenticity of the Keying Material 114, allowing the Keying Material 114 to be used for decrypting the content 112. Although the comparator 502 and the validator 504 are shown as separate entities in the device 500, it should be understood by one of ordinary skill in the art that such a depiction is for illustrative purposes only, and that the functionality may be combined into a single entity, and may alternatively be an entity distinct from the device itself. Correspondence between Keying Material 114 and Validation Data 402 can be determined in a number of ways, depending upon the type of Keying Material 114 and Validation Data 402 used in a particular embodiment. Examples of making this determination in exemplary embodiments of the invention are described below. DVD Content Protected by CPPM For content protected by CPPM, correspondence exists between the Keying Material 114 and the Validation Data 402 if the Album Identifier in the non-VA region 404 (e.g., the Control Data Area 110 on a DVD) matches a copy of the Album Identifier in the BCA region 406. If the two values match, as determined by the comparator 502, then the device 500 validator 504 authenticates the Album Identifier, which can then be used to decrypt the medium content 112. DVD Content Protected by CSS For content protected by CSS, correspondence exists between the Keying Material 114 and the Validation Data 402 if a function of the Secure Disc Key Data in the non-VA region 404 (e.g., the Control Data Area 110 on a DVD) matches Validation Data 402 (i.e., a function of the Secure Disc Key Data) in the VA. A one-way cryptographic function, for example, of one of the Secure Disc Key Data values from the CDA 110 is written to the VA region 406, such that when a device 500 reads the Secure Disc Key Data value from the non-VA region 404, it uses the same one-way cryptographic function on that value. The device 500 compares the calculated value as determined by the comparator 502, for example, and compares it to the Validation Data found in the VA region 406. If the values match, then the device 500 validator 504 authenticates the Secure Disc Key Data values, which can then be used to decrypt the medium content 112. DVD Content Protected by CPPM/CSS For content protected by a combination of CPPM/CSS, correspondence exists between the Keying Material 114 and the Validation Data 402 if a function of the Album Identifier in the non-VA region 404 (e.g., the Control Data Area 110 on a DVD) matches Validation Data 402 (i.e., function of the Secure Disc Key Data and function of the Album Identifier) in the VA. A one-way cryptographic function of one of the Album Identifier from CDA 110 Sector #2, and a one-way cryptographic function of the Secure Disc Key Data are written to the BCA region 406, such that when a device reads the Album Identifier and the Secure Disc Key Data from the CDA, it uses the same one-way cryptographic function on those values. The device 500 calculates the function on the Album Identifier and on the Secure Disc Key Data from the non-BCA region 404 and compares the calculated values to the Validation Data found in the BCA region 406. If the values match, then the device 500 validator 504 authenticates the Album Identifier and Secure Disc Key Data, which can then be used to decrypt the medium content 112. Conclusion Thus, embodiments of the invention provide a robust means of validating Keying Material 114 to protect content, such as prerecorded CPPM or CSS content on DVD-ROM media, against unauthorized copying. The enhanced protection is enabled by new discs and new devices that use the invention. At the same time, full interoperability among new and old devices, and new and old media is maintained. In the foregoing specification, the invention has been described with reference to specific embodiments thereof. It will, however, be evident that various modifications and changes may be made thereto without departing from the broader spirit and scope of the invention. The specification and drawings are, accordingly, to be regarded in an illustrative rather than a restrictive sense. For example, while several exemplary embodiments have been described, it should be understood by one of ordinary skill in the art that concepts of this invention can be applied to other types of content, content protection systems, and media formats. For example, while the exemplary embodiments described herein are specific to DVD media as they relate to some of their current forms of protection (i.e. CPPM, CSS), one of ordinary skill in the art would understand that the read-only media described herein comprises a VA region and a non-VA region, and may not necessarily comprise all regions found in a DVD media. Furthermore, while embodiments of the invention described herein refer to an area called the Validation Area, it should be understood that the Validation Area is an area having characteristics described herein, and that such an area is not limited to areas that are called, or that contain the term, Validation Area. As an example, DVD-ROMs comprise a Validation Area called a Burst Cutting Area. While a one-way cryptographic function is discussed herein, it is also contemplated that a two-way cryptographic function may be used. For example, where no correspondence is checked, and Validation Data comprises a function of Keying Material, a two-way cryptographic function may be used which would convert the Validation Data back to its original Keying Material.
|
Same subclass Same class Consider this |
||||||||||
