1. Field of the Invention
The invention relates to display devices. More specifically, the invention describes a method and apparatus capable of providing a robust encryption of a audio/video data in a packet based transmission environment.
2. Overview
Protection of proprietary digital content has become an important consideration and more particularly, in high definition (HD), high-bandwidth applications. Especially important for HD, high-bandwidth applications, content protection provides assurances that owners of digitized content are protected from unauthorized use and copying of their proprietary content. A popular high-bandwidth digital-content protection scheme developed by Intel Corporation of Santa Clara Calif. commonly referred to as HDCP has been widely implemented. As currently configured, this particular HDCP protocol is specifically designed for use in Digital Visual Interface (DVI) and High-Definition Multimedia Interface (HDMI) based environments.
In general, HDCP encrypts the transmission of digital content between the video source, or transmitter—such as a PC, DVD player or set-top box—and the digital display, or receiver—such as a monitor, television or projector. In this way, HDCP is designed to prevent copying or recording of digital content thereby protecting the integrity of content as it is being transmitted. For example, as required by the described HDCP protocol, during an authentication phase, the receiver will only be provided with content once it demonstrates knowledge of the authentication keys which the transceiver verifies through computation of a secret value. Furthermore, to prevent eavesdropping and stealing of the data, the transmitter and receiver will generate a shared secret value that is consistently checked throughout the transmission. Once authentication is established, the transmitter encrypts the data and sends it to the receiver for decryption.
The current implementation of the DVI standard requires the use of a set of defined characters based upon a 10 bit transmission protocol. For example, as currently configured, only 460 characters (out of a possible 1024 available) are used by the receiver for data while 4 characters are used as explicit control signals such as hsync and vsync. In this arrangement, any time the receiver receives and recognizes one of the predefined characters representing data, then the received implicitly defines a data enable signal (DE) as being active thereby indicating that the received data is true data. However, whenever one of the 4 control characters is received by the receiver, then an implicit assumption is made that data enable (DE) is inactive.
HDCP protocol uses the status of DE, Hsync, Vsync and another control signal, called CNTL3, to advance its state machine. The DE, Hsync, and Vsync signals are timing signals associated with raster video transmitted in a “streaming” manner. In a streaming transfer, the pixel data is transferred at pixel rate and the ratio of blanking period to data period is preserved. In case of a packet transfer, these timing signals may not be present. Only the pixel data may be transferred in the packet stream, while timing information is communicated in a different way. Therefore, what is required is a way to support high-definition copy protection that is compatible with existing high definition copy protection protocols such as HDCP over a link, or a transmission medium, that operates in a packet transfer mode.
What is provided, therefore, is a packet-based digital transmission medium and protocol that supports high definition copy protection that is backwards compatible with existing high definition copy protection protocols such as HDCP.
In one embodiment of the invention, a packet based high bandwidth copy protection method is described that includes the following operations. Forming a number of data packets at a source device, encrypting the data packets based upon a set of encryption values, transmitting the encrypted data packets from the source device to a sink device coupled thereto, decrypting the encrypted data packets based in part upon the encryption values, and accessing the decrypted data packets by the sink device.
In another embodiment, a system for providing packet based high bandwidth copy protection to a data stream is disclosed that includes a source unit arranged to provide a number of data packets, a sink unit coupled to the source unit arranged to receive the data packets from the source unit, an encryption unit coupled to the source unit arranged to encrypt the data packets sent from the source unit to the sink unit, a decryption unit coupled to the sink unit arranged to decrypt the encrypted data packets and an encryption/decryption values generator arranged to provide a set of encryption/decryption values used to encrypt and decrypt the appropriate data packets.
In yet another embodiment, computer program product for providing a packet based high bandwidth copy protection is disclosed that includes computer code for forming a number of data packets at a source device, computer code for encrypting the data packets based upon a set of encryption values, computer code for transmitting the encrypted data packets from the source device to a sink device coupled thereto, computer code for decrypting the encrypted data packets based in part upon the encryption values, computer code for accessing the decrypted data packets by the sink device, and computer readable medium for storing the computer code.
Reference will now be made in detail to a particular embodiment of the invention an example of which is illustrated in the accompanying drawings. While the invention will be described in conjunction with the particular embodiment, it will be understood that it is not intended to limit the invention to the described embodiment. To the contrary, it is intended to cover alternatives, modifications, and equivalents as may be included within the spirit and scope of the invention as defined by the appended claims.
As currently implemented, HDCP establishes a secure channel in order to verify that the display device is licensed to receive protected content and once established, encrypts the data at the host side and decrypts at the display device in order to prevent ‘eavesdropping’ of the protected content. In addition, in order to identify unauthorized or comprised devices, HDCP relies upon authentication and key exchange, content encryption, and device renewability.
More specifically, HDCP protects copyrighted digital entertainment content in a Digital Video Interface (DVI) environment by encrypting its transmission between the video source and the digital display (receiver). The video source might be a PC, set-top boxes, DVD players and the like), and the digital display might be an liquid crystal display (LCD), television, plasma panel, or projector in which all authorized devices are given a set of unique secret device keys. During an authentication process, the receiver must demonstrate its knowledge of a number of secret device keys before the protected content is sent. After the receiver acknowledges the keys, both devices (the sender and receiver) generate a shared secret value that is designed to prevent eavesdroppers from stealing the content. After authentication, the content is encrypted and sent to the receiver that in turn decrypts it.
Authentication is a cryptographic process for verifying that the display device is authorized (or licensed) to receive protected content. Both the authorized host and the display device have knowledge of a set of secret keys that consist of an array of forty 56-bit secret device keys and a corresponding 40-bit binary Key Selection Vector (KSV). The host initiates authentication by sending an initiation message containing its Key Selection Vector, AKSV, and a 64-bit value An. The display device responds by sending a response message containing its Key Selection Vector, BKSV. The host confirms that the received KSV has not been revoked. At this point, the two devices can calculate a shared value, which, if both devices have a valid set of keys, will be equal. This shared value will be used in the encryption and decryption of the protected content since authentication has now been established.
Re-authentication continues at a rate of approximately once every two seconds to confirm the continued security of the link. If, at any time, equality of the shared value is lost, for example by disconnecting the display device and/or connecting an illegal recording device, the host will consider the DVI link to be unauthenticated, and end the transmission of protected content.
Content is encrypted at the source device to prevent usable, unauthorized copies of the transmitted content from being made. Encryption is the application of an algorithm, called a cipher, that transforms the content. To recover the content, the display device decrypts the content by knowledge of the correct decryption key. The HDCP cipher is a hybrid block/stream cipher. The block cipher operates during the authentication protocol. For content encryption and decryption, HDCP uses a stream cipher where encryption is accomplished by combining a data stream, generated by the HDCP cipher, with the transmitted content, through a bitwise exclusive-OR operation. In this way the content is protected pixel-by-pixel. Encrypted content viewed on a display device without decryption is seen as random noise, with no discernable content. As noted above, currently available HDCP protocols must be implemented using a DVI type connector.
The present invention provides a high definition high bandwidth copy protection protocol suitable for use in a packet based transmission medium that provides a robust digital copyright protection protocol that supports high definition copy protection that is backwards compatible with existing high definition copy protection protocols. In one embodiment of the invention the inventive HDCP protocol is carried out as a packet based high bandwidth copy protection method that includes forming a number of data packets at a source device, encrypting selected ones of the data packets based upon a set of encryption values, transmitting the encrypted data packets from the source device to a sink device coupled thereto, decrypting the encrypted data packets based in part upon the encryption values, and accessing the decrypted data packets by the sink device.
A particularly well suited packet based transmission system is described with reference to
Typically, when the source is a video source, the data streams 108-112 include various video signals that can have any number and type of well-known formats, such as composite video, serial digital, parallel digital, RGB, or consumer digital video. The video signal can be an analog video signal provided the source 102 includes some form of an analog video source such as for example, an analog television, still camera, analog VCR, DVD player, camcorder, laser disk player, TV tuner, set top box (with satellite DSS or cable signal) and the like. The source 102 can also include a digital image source such as for example a digital television (DTV), digital still camera, and the like. The digital video signal can be any number and type of well known digital formats such as, SMPTE 274M-1995 (1920×1080 resolution, progressive or interlaced scan), SMPTE 296M-1997 (1280×720 resolution, progressive scan), as well as standard 480 progressive scan video.
In the case where the source 102 provides an analog image signal, an analog-to-digital converter (A/D) converts an analog voltage or current signal into a discrete series of digitally encoded numbers (signal) forming in the process an appropriate digital image data word suitable for digital processing. Any of a wide variety of A/D converters can be used. By way of example, other A/D converters include, for example those manufactured by: Philips, Texas Instrument, Analog Devices, Brooktree, and others.
For example, if the data stream 110 is an analog type signal, the an analog to digital converter (not shown) included in or coupled to the transmitter 102 will digitize the analog data which is then packetize by a packetizer that converts the digitized data stream 110 into a number of data packets 114 each of which will be transmitted to the receiver 104 by way of the virtual link 116. The receiver 104 will then reconstitute the data stream 110 by appropriately recombining the data packets 114 into their original format. It is these data streams that are ultimately encrypted for form a set of copy protected data streams.
Accordingly, the video source 202 includes a number of buffers 206 each of which is used to buffer an associated one of the video datastreams. Each of the buffers is, in turn, coupled to a multiplexer 208 that is used to select a particular one of the data streams for transmission to a packetizer 210. The packetizer 210 parses the incident data stream into an associated number of data packets by incorporating a packet ID, optionally performing error correction, and attaching a time stamp and any of the attributes deemed important or necessary for the correct reconstruction of the video raster by the receiver 204. An encryption control generator unit 212 applies an appropriate encryption algorithm to each of the data packets based at least by inserting a control packet that conveys signals such as Hsync, Vsync, and a particular control character CNTL3 used to flag those data packets that are encrypted (and conversely those data packets that are not encrypted).
In accordance with an embodiment of the invention, the resulting encrypted data stream 214 (a particular example of which is shown in
It should be noted that in the described embodiment, the data stream 300 is time domain multiplexed, those data packets associated with the datastream 110 have a longer duration than those associated with the data stream 112. In these cases, a time-base recovery (TBR) unit 216 within the receiver 204 regenerates the stream's original native rate using time stamps embedded in the main link data packets, if necessary. Referring back to
Although only a few embodiments of the present invention have been described, it should be understood that the present invention may be embodied in many other specific forms without departing from the spirit or the scope of the present invention. The present examples are to be considered as illustrative and not restrictive, and the invention is not to be limited to the details given herein, but may be modified within the scope of the appended claims along with their full scope of equivalents.
While this invention has been described in terms of a preferred embodiment, there are alterations, permutations, and equivalents that fall within the scope of this invention. It should also be noted that there are many alternative ways of implementing both the process and apparatus of the present invention. It is therefore intended that the invention be interpreted as including all such alterations, permutations, and equivalents as fall within the true spirit and scope of the present invention.
This patent application takes priority under 35 U.S.C. 119(e) to U.S. Provisional Patent Application No. 60/506,193, filed on Sep. 26, 2003 entitled “PROVIDING HIGH DEFINITION COPY PROTECTION IN A PACKET BASED DATA STREAM” by Kobayashi which is incorporated by reference in its entirety for all purposes.
Number | Name | Date | Kind |
---|---|---|---|
4796203 | Roberts | Jan 1989 | A |
5245612 | Kachi et al. | Sep 1993 | A |
5258983 | Lane et al. | Nov 1993 | A |
5369775 | Yamasaki et al. | Nov 1994 | A |
5515296 | Agarwal | May 1996 | A |
5541919 | Yong et al. | Jul 1996 | A |
5608418 | McNally | Mar 1997 | A |
5615376 | Ranganathan | Mar 1997 | A |
5629715 | Zenda | May 1997 | A |
5739803 | Neugebauer | Apr 1998 | A |
5745837 | Fuhrmann | Apr 1998 | A |
5790083 | Bassetti | Aug 1998 | A |
5805173 | Glennon et al. | Sep 1998 | A |
5838875 | Cho et al. | Nov 1998 | A |
5852630 | Langberg et al. | Dec 1998 | A |
5909465 | Bottomley et al. | Jun 1999 | A |
5918002 | Klemets et al. | Jun 1999 | A |
5926155 | Arai et al. | Jul 1999 | A |
5940137 | Hulvey | Aug 1999 | A |
5949437 | Clark | Sep 1999 | A |
6005861 | Humpleman | Dec 1999 | A |
6020901 | Lavelle et al. | Feb 2000 | A |
6038000 | Hurst, Jr. | Mar 2000 | A |
6049316 | Nolan et al. | Apr 2000 | A |
6049769 | Holmes et al. | Apr 2000 | A |
6069929 | Yabe et al. | May 2000 | A |
6151334 | Kim et al. | Nov 2000 | A |
6151632 | Chadda et al. | Nov 2000 | A |
6154225 | Kou et al. | Nov 2000 | A |
6175573 | Togo et al. | Jan 2001 | B1 |
6177922 | Schiefer et al. | Jan 2001 | B1 |
6219736 | Klingman | Apr 2001 | B1 |
6223089 | Page | Apr 2001 | B1 |
6249319 | Post | Jun 2001 | B1 |
6326961 | Lin et al. | Dec 2001 | B1 |
6337964 | Inami et al. | Jan 2002 | B2 |
6353594 | Tooker et al. | Mar 2002 | B1 |
6356260 | Montalbo | Mar 2002 | B1 |
6437768 | Kubota et al. | Aug 2002 | B1 |
6441857 | Wicker et al. | Aug 2002 | B1 |
6446130 | Grapes | Sep 2002 | B1 |
6477252 | Faber et al. | Nov 2002 | B1 |
6545688 | Loveridge et al. | Apr 2003 | B1 |
6577303 | Kim | Jun 2003 | B2 |
6587480 | Higgins et al. | Jul 2003 | B1 |
6598161 | Kluttz et al. | Jul 2003 | B1 |
6608828 | Balachandran | Aug 2003 | B1 |
6614800 | Genty et al. | Sep 2003 | B1 |
6661422 | Valmiki et al. | Dec 2003 | B1 |
6697376 | Son et al. | Feb 2004 | B1 |
6704310 | Zimmermann et al. | Mar 2004 | B1 |
6765931 | Rabenko et al. | Jul 2004 | B1 |
6865188 | Stirling et al. | Mar 2005 | B1 |
6873625 | Yoo et al. | Mar 2005 | B1 |
6903716 | Kawabe et al. | Jun 2005 | B2 |
6909442 | Hiyama et al. | Jun 2005 | B2 |
6914637 | Wolf et al. | Jul 2005 | B1 |
6963968 | Kori | Nov 2005 | B2 |
6973069 | Spear et al. | Dec 2005 | B1 |
6975645 | Suzuki et al. | Dec 2005 | B1 |
7046631 | Giroux et al. | May 2006 | B1 |
7075987 | Kim et al. | Jul 2006 | B2 |
7136415 | Yun et al. | Nov 2006 | B2 |
7177329 | Kobayashi et al. | Feb 2007 | B2 |
7248590 | Liu | Jul 2007 | B1 |
7256790 | Valmiki et al. | Aug 2007 | B2 |
7295578 | Lyle et al. | Nov 2007 | B1 |
7525975 | Caspi et al. | Apr 2009 | B2 |
20010030649 | Mamiya et al. | Oct 2001 | A1 |
20010036193 | Kori | Nov 2001 | A1 |
20010038387 | Tomooka et al. | Nov 2001 | A1 |
20020007452 | Traw et al. | Jan 2002 | A1 |
20020011996 | Inoue et al. | Jan 2002 | A1 |
20020060676 | Kim | May 2002 | A1 |
20020061024 | Malkemes et al. | May 2002 | A1 |
20020062394 | Bunn et al. | May 2002 | A1 |
20020071055 | Ooshima et al. | Jun 2002 | A1 |
20020071390 | Reeves et al. | Jun 2002 | A1 |
20020075902 | Abbas et al. | Jun 2002 | A1 |
20020085582 | Kim | Jul 2002 | A1 |
20020089517 | Ludtke et al. | Jul 2002 | A1 |
20020122515 | Bodenschatz | Sep 2002 | A1 |
20020136219 | Ding et al. | Sep 2002 | A1 |
20020149617 | Becker | Oct 2002 | A1 |
20020163598 | Pasqualino | Nov 2002 | A1 |
20020164022 | Strasser et al. | Nov 2002 | A1 |
20020190974 | Morita | Dec 2002 | A1 |
20020190978 | Agarwal et al. | Dec 2002 | A1 |
20030035442 | Eng | Feb 2003 | A1 |
20030048852 | Hwang et al. | Mar 2003 | A1 |
20030063077 | Koyama | Apr 2003 | A1 |
20030076282 | Ikeda et al. | Apr 2003 | A1 |
20030080971 | Hochmuth et al. | May 2003 | A1 |
20030112822 | Hong et al. | Jun 2003 | A1 |
20030145258 | Warner et al. | Jul 2003 | A1 |
20030149987 | Pasqualino et al. | Aug 2003 | A1 |
20030152160 | Bauch et al. | Aug 2003 | A1 |
20030174156 | Katsuhara et al. | Sep 2003 | A1 |
20030174795 | Bruhnke et al. | Sep 2003 | A1 |
20030212811 | Thornton | Nov 2003 | A1 |
20040049705 | Liebenow | Mar 2004 | A1 |
20040080671 | Siemens et al. | Apr 2004 | A1 |
20040081151 | Greis et al. | Apr 2004 | A1 |
20040088469 | Levy | May 2004 | A1 |
20040103333 | Martwick et al. | May 2004 | A1 |
20040114607 | Shay et al. | Jun 2004 | A1 |
20040203383 | Kelton et al. | Oct 2004 | A1 |
20040210805 | Kimelman et al. | Oct 2004 | A1 |
20040218598 | Kobayashi | Nov 2004 | A1 |
20040218599 | Kobayashi | Nov 2004 | A1 |
20040218624 | Kobayashi | Nov 2004 | A1 |
20040218625 | Kobayashi | Nov 2004 | A1 |
20040218627 | Kobayashi | Nov 2004 | A1 |
20040221056 | Kobayashi | Nov 2004 | A1 |
20040221312 | Kobayashi | Nov 2004 | A1 |
20040221315 | Kobayashi | Nov 2004 | A1 |
20040228365 | Kobayashi | Nov 2004 | A1 |
20040233181 | Kobayashi | Nov 2004 | A1 |
20040243905 | Merritt | Dec 2004 | A1 |
20050062699 | Kobayashi | Mar 2005 | A1 |
20050062711 | Kobayashi | Mar 2005 | A1 |
20050066085 | Kobayashi | Mar 2005 | A1 |
20050103333 | Bonutti | May 2005 | A1 |
20060036788 | Galang et al. | Feb 2006 | A1 |
20060117371 | Margulis | Jun 2006 | A1 |
20060209890 | MacMullan et al. | Sep 2006 | A1 |
20070097885 | Traversat et al. | May 2007 | A1 |
20070140298 | Eng | Jun 2007 | A1 |
20080175277 | Yin et al. | Jul 2008 | A1 |
20080284761 | Knee et al. | Nov 2008 | A1 |
Number | Date | Country |
---|---|---|
1353513 | Jun 2002 | CN |
0 354 480 | Feb 1990 | EP |
0 385 449 | Sep 1990 | EP |
0674441 | Mar 1995 | EP |
0 674 440 | Sep 1995 | EP |
0 674 441 | Sep 1995 | EP |
0674440 | Sep 1995 | EP |
0674441 | Sep 1995 | EP |
0674441 | Sep 1995 | EP |
078 8048 | Jun 1997 | EP |
1 041 823 | Oct 2000 | EP |
1041823 | Oct 2000 | EP |
1 069 721 | Jan 2001 | EP |
1 089 503 | Apr 2001 | EP |
1 154 354 | Nov 2001 | EP |
1 229 690 | Aug 2002 | EP |
1 251 664 | Oct 2002 | EP |
1 432 203 | Jun 2004 | EP |
1 473 700 | Nov 2004 | EP |
1 517 292 | Mar 2005 | EP |
1 519 349 | Mar 2005 | EP |
1 519 581 | Mar 2005 | EP |
2 329 741 | Mar 1999 | GB |
03-153299 | Jul 1991 | JP |
10145309 | May 1998 | JP |
11175045 | Jul 1999 | JP |
2001 218082 | Aug 2001 | JP |
2001036900 | Sep 2001 | JP |
2002 304168 | Oct 2002 | JP |
110144 | Apr 2005 | SG |
WO9500917 | Jan 1995 | WO |
9513681 | May 1995 | WO |
WO 9841008 | Sep 1998 | WO |
WO 9963513 | Dec 1999 | WO |
WO0020974 | Apr 2000 | WO |
0225822 | Mar 2002 | WO |
WO0225885 | Mar 2002 | WO |
WO02065746 | Aug 2002 | WO |
WO 03058376 | Jul 2003 | WO |
Number | Date | Country | |
---|---|---|---|
20050069130 A1 | Mar 2005 | US |
Number | Date | Country | |
---|---|---|---|
60506193 | Sep 2003 | US |