|Publication number||US7103184 B2|
|Application number||US 10/141,724|
|Publication date||Sep 5, 2006|
|Filing date||May 9, 2002|
|Priority date||May 9, 2002|
|Also published as||US20030210785|
|Publication number||10141724, 141724, US 7103184 B2, US 7103184B2, US-B2-7103184, US7103184 B2, US7103184B2|
|Original Assignee||Intel Corporation|
|Export Citation||BiBTeX, EndNote, RefMan|
|Patent Citations (16), Non-Patent Citations (1), Referenced by (72), Classifications (23), Legal Events (3)|
|External Links: USPTO, USPTO Assignment, Espacenet|
Embodiments of the invention relate to the field of content security, in particular, to a system and method for obfuscating sign masks used to enhance content protection.
For many years, there has been a growing demand for electronic systems that provide visual and/or audible content to consumers. Previously, content providers have supplied consumers with content in a variety of forms (e.g., vinyl records, audio cassette tapes, video cassette recorder “VCR” tapes, etc.). When played back in an analog format, the content is somewhat protected at that time. For example, analog content is troublesome to illicitly copy and redistribute. Also, the recorded copies have poorer image or sound quality than the original content.
Over the last few years, there has been a growing demand for and use of digital content. For instance, digital versatile disks (DVDs) are an optical disc technology that is expected to rapidly replace the CD-ROM discs over the next few years. A DVD digitally stores content (e.g., Motion Picture Experts Group-2 “MPEG-2” file), and during use, the content is retrieved, processed and converted into an analog format just prior to playback.
One concern experienced by content providers is that computers are now being manufactured with DVD-RAM drives that enables data to be written on a DVD. As a result, content may be retrieved from a DVD, temporarily stored in its digital format, and subsequently rewritten on a new DVD. Thus, copies with the same images and/or sound quality as the master may be illegally reproduced and sold.
In order to protect content providers from unauthorized copying and distribution of their digital content, a data scrambling scheme is performed during playback decoding of the DVD in order to avoid extraction of unmodified digital content. In particular, the bit streams retrieved from sectors of the DVD are scrambled by the DVD playback application and the scrambled bit streams are transferred to a driver software. The driver software performs descrambling operations on the scrambled bit streams. This enables recovery of the original bit streams before transmission to the graphics hardware to decode and display the images.
The data scrambling scheme involves the application of a sign mask to each block of the bit stream. More specifically, bits of the sign mask are Exclusively OR'ed (XOR'ed) with signed bits of DCT coefficients partially forming the block. Thereafter, the sign mask is transferred from the DVD playback application to the driver software for later use to descramble and recover the original bit stream.
One disadvantage with this content protection mechanism is that the data scrambling scheme can be circumvented if a third party obtains the particulars of the sign mask, which is transferred in the clear between the DVD playback application and the software driver. This threat may impede further expansion of digital content distribution.
The invention may best be understood by referring to the following description and accompanying drawings that are used to illustrate embodiments of the invention, In the drawings:
Embodiments of the invention relate to a system and method for obfuscating sign masks used during a data scrambling scheme in order to protect content. Such obfuscation improves security of the system as well as the secured nature of the content.
In the following description, numerous specific details are set forth. However, it is understood that embodiments of the invention may be practiced without these specific detail.
In the following description, some terminology is used to describe certain characteristics of the invention as well as cryptographic functionality. For example, “content” generally includes data perceived by consumers such as video, images and/or audio. A “link” is defined as an information-carrying medium (e.g., electrical wire, optical fiber, cable, bus trace, etc.) or wireless communications through established techniques such as infrared (IR) and radio frequency (RF) signaling.
In one embodiment, an “image display device” is an electronic product having logic with graphics processing capability. Examples of an image display device include, but are not limited to, a computer (e.g., desktop, laptop, hand-held, server, mainframe, etc.), a set-top box, a game console, consumer electronic equipment (e.g., compact disc “CD” or digital versatile disk “DVD” player, television, etc.), or the like.
The internal logic of the image display device may include hardware, firmware, software module(s) or any combination thereof. A “software module” is a series of instructions that, when executed, perform a certain function. Examples of a software module include an operating system, an application, an applet, a program or even a routine. One or more software modules may be stored in a machine-readable medium, which includes but is not limited to an electronic circuit, a semiconductor memory device, a read only memory (ROM), a flash memory, a type of erasable programmable ROM (EPROM or EEPROM), a floppy diskette, any optical disk (e.g., CD or DVD), a hard disk, or the like.
With respect to cryptographic functionality, a “key” is information used by a cryptographic function for encryption and decryption. Examples of cryptographic functions may include, but are not limited or restricted to any symmetric key cryptographic functions such as Data Encryption Standard (DES).
System 100 further comprises a link 160 that enables data to be transferred between the image display device 105 and a content playing device 170 (e.g., a peripheral DVD player, integrated DVD drive, a peripheral CD player, integrated CD drive, etc.). The content playing device 170 may be integrated into image display device 105 or configured as an independent peripheral as shown. In this embodiment of the invention, link 160 may be adapted for coupling content playing device 170 to a port of image display device 105. The port operates as a conduit for the incoming content to be subsequently routed through internal logic 210, 220 and 230 of image display device 105.
Referring now to
In one embodiment of the invention, software module 200 is a DVD playback application that retrieves unscrambled (raw) bit streams 202, perhaps stored on the DVD in a compressed format using Discrete Cosine Transform (DCT) coefficients such as any type Motion Picture Experts Group compression (e.g., MPEG-2, MPEG-4, etc.). Of course, bit streams 202 may be initially encrypted and thus require decryption. For illustrative sake, considering raw bit streams 202 as MPEG-2 bit streams, they undergo parsing operations to convert the MPEG-2 bit streams 202 into block layer DCT bit streams 352 as shown in
The GOP header and pictures 320 includes a GOP header 322 followed by one or more pictures 324. Equivalent to a frame of data being displayed or stored, each picture 324 includes a picture header 330 and one or more slices 332 collectively forming a frame of data. The picture header 330 features data that identifies how the picture 324 is coded. For example, the picture 324 may be coded as an “Intra” picture (I_picture) having no reference to any other picture. Alternatively, the picture 324 may be coded as either a “Predicted” picture (P_picture) or “Bi-directional” picture (B_picture). A “P_picture” may reference another picture and can be used as a reference for other pictures. A “B_picture” may reference two different pictures, but cannot be used as a reference picture itself.
Each slice 332 is a portion of an image, normally coded independently from the other slices of the picture so as to allow for error confinement. Hence, in the event that an error in the bit stream is detected, the graphics chipset 120 of
As further shown in
Each macroblock 342 includes a macroblock header 350 followed by one or more blocks 352. Each block 352 includes a Discrete Cosine Transform (DCT) coefficient 360 followed by run-level variable length coefficients 362. DCT is used to remove spatial correlation existing among adjacent pixels and also to remove subjective redundancy. The end of block 352 is denoted by an end-of-block parameter 364.
Referring back to
Additionally, using a Diffie-Hellman key exchange methodology, a shared secret key (SK) 250 is computed for use by both the software module 200 and the software driver 220 as described in
For this embodiment of the invention, at the software driver 220, the encrypted sign mask 260 will be decrypted using the shared secret key 250. The sign mask 260, therefore, will be transferred between the software module 200 and driver 220 in an encrypted form to prevent third parties from more easily obtaining such information. Of course, it is contemplated, that the sign mask 240 used by software module 200 to produce scrambled bit streams 208 may be encrypted and subsequently decrypted by the graphics chipset 120 of
Referring now to
The authentication may be performed through handshake signaling between the software module 200 and the software driver 220 using the DxVA API 210. This avoids “man-in-the-middle” attacks.
For instance, in one embodiment of the invention, the software module 200 and software driver 220 agree upon two prime numbers, g & n, where “g” is a primitive root of “n”. A utility software routine 400 of the software module 200 selects a random value “X” and computes a value A=gX·mod(n). This value “A” is routed to the driver 220. The driver 220 also selects a random number “Y” and sends software module 200 the value D=gY·mod(n). The agreed shared secret key (SK) is determined to be the following as shown in equation (1).
SK=A Y ·mod(n)=D X ·mod(n)=g XY ·mod(n). (1)
In particular, with respect to generation of the sign masks, the utility software routine 400 comprises a number generator 415 (e.g., random number generator or pseudo random number generator), which produces 64-bit sign masks. For instance, thirty-two (32) sign masks may be produced in support of MPEG-2 data scrambling as shown in Table A. In one embodiment of the invention, pseudo random number generator 415 may be implemented using a Linear Congruence Algorithm. The pseudo code for the pseudo random number generator 415 is shown in Table B.
SignMask [15:0]  
SignMask [15:0]  
SignMask [15:0]  
SignMask [15:0]  
SignMask [15:0]  
SignMask [15:0]  
SignMask [31:16]  
SignMask [31:16]  
SignMask [31:16]  
SignMask [31:16]  
SignMask [31:16]  
SignMask [31:16]  
Pseudorandom (X (i)i)
X(i+1) = (X(i)*a +1)mod m, where
a = 6364136223846793005;
m = 264
With respect to scrambling of the DCT coefficient sign bit in the raw bit stream, in one embodiment of the invention, the utility software routine 400 performs XOR operations on the generated sign mask with signed bit of DCT coefficients. The pseudo code for the scrambling operations are shown in Table C.
signedmask XOR signed bit of each coefficient of DCT block
With respect to performance of the Diffie-Hellman key exchange, this involves modulo computations. As generally stated above, utility software routine 400 in cooperation with software module 200 computes the value A=gX·mod(n), where “X” is a randomly generated number. The utility software module 400 in cooperation with software driver 220 computes a value D=gY·mod(n), where “Y” is a randomly generated number. Such values (A,D) are used to produce the secret key (SK) equal to AY·mod(n) or DX·mod(n), namely gXY·mod(n), where “g” and “n” are prime numbers agreed to be used by software module 200 and software driver 220. The pseudo code for the operation of modulo mathematics in Diffie-Hellman key exchange operations is shown in Table D.
Let <Bk, Bk−1 . . . B0>be the binary representation for b
For (i=k; i<0;i=i−1)
} return d; }
With respect to encryption of the sign masks, it is contemplated that a XOR operation is conducted on both the shared key and all signed masks. For example, the shared key is XOR'ed with thirty-two sign masks, each being 64-bits in length. The pseudo code for the encryption operations are set forth in Table E.
SignMask Encrypted_Mask (signedmask, sharedkey)
sharedkey XOR signedmask
While this invention has been described in terms of several illustrative embodiments, this description is not intended to be construed in a limiting sense. Various modifications of the illustrative embodiments, as well as other embodiments of the invention, are deemed to lie within the spirit and scope of the appended claims.
|Cited Patent||Filing date||Publication date||Applicant||Title|
|US3610828 *||May 23, 1967||Oct 5, 1971||Technical Communications||Privacy communication system|
|US4800590||Jan 14, 1985||Jan 24, 1989||Willis E. Higgins||Computer key and computer lock system|
|US5367572||Jul 31, 1992||Nov 22, 1994||Weiss Kenneth P||Method and apparatus for personal identification|
|US5590194||Aug 9, 1994||Dec 31, 1996||Macrovision Corporation||Method of and apparatus for scrambling a video signal with full network transmission and recording capability|
|US5592553||Feb 8, 1996||Jan 7, 1997||International Business Machines Corporation||Authentication system using one-time passwords|
|US5727064 *||Jul 3, 1995||Mar 10, 1998||Lucent Technologies Inc.||Cryptographic system for wireless communications|
|US5802176||Mar 22, 1996||Sep 1, 1998||Activcard||System for controlling access to a function, using a plurality of dynamic encryption variables|
|US5825879||Sep 30, 1996||Oct 20, 1998||Intel Corporation||System and method for copy-protecting distributed video content|
|US5852472||Sep 28, 1995||Dec 22, 1998||Intel Corporation||Method and apparatus for connecting video sources and video sinks|
|US5862150||Oct 28, 1997||Jan 19, 1999||Sun Microsystems, Inc.||Video frame signature capture|
|US5892899||Jun 13, 1996||Apr 6, 1999||Intel Corporation||Tamper resistant methods and apparatus|
|US6005940||May 16, 1997||Dec 21, 1999||Software Security, Inc.||System for securely storing and reading encrypted data on a data medium using a transponder|
|US6167136||May 16, 1997||Dec 26, 2000||Software Security, Inc.||Method for preventing copying of digital video disks|
|US20020199110 *||Jun 13, 2002||Dec 26, 2002||Algotronix Ltd.||Method of protecting intellectual property cores on field programmable gate array|
|EP0127382A1 *||May 16, 1984||Dec 5, 1984||M/A-Com Government Systems, Inc.||Digital audio scrambling system with error conditioning|
|WO1999019822A2||Sep 16, 1998||Apr 22, 1999||Microsoft Corp||System and method for discovering compromised security devices|
|1||*||Stallings, William. "Public-Key Cryptography and RSA." Cryptography and Network Security- Principles and Practices. Upper Saddle River, NJ: Prentice Hall, 2003. 268-278.|
|Citing Patent||Filing date||Publication date||Applicant||Title|
|US7248696 *||Sep 12, 2002||Jul 24, 2007||International Business Machines Corporation||Dynamic system bus encryption using improved differential transitional encoding|
|US7647503||Sep 7, 2007||Jan 12, 2010||Wistaria Trading, Inc.||Optimization methods for the insertion, projection, and detection of digital watermarks in digital data|
|US7664263||Jun 25, 2003||Feb 16, 2010||Moskowitz Scott A||Method for combining transfer functions with predetermined key creation|
|US7664264||Sep 12, 2006||Feb 16, 2010||Blue Spike, Inc.||Utilizing data reduction in steganographic and cryptographic systems|
|US7664958||Aug 31, 2007||Feb 16, 2010||Wistaria Trading, Inc.||Optimization methods for the insertion, protection and detection of digital watermarks in digital data|
|US7730317||Nov 2, 2006||Jun 1, 2010||Wistaria Trading, Inc.||Linear predictive coding implementation of digital watermarks|
|US7738659||Feb 21, 2006||Jun 15, 2010||Moskowitz Scott A||Multiple transform utilization and application for secure digital watermarking|
|US7761712||Feb 7, 2005||Jul 20, 2010||Wistaria Trading, Inc.||Steganographic method and device|
|US7770017||Dec 26, 2007||Aug 3, 2010||Wistaria Trading, Inc.||Method and system for digital watermarking|
|US7779261||Jan 3, 2007||Aug 17, 2010||Wistaria Trading, Inc.||Method and system for digital watermarking|
|US7813506||Mar 30, 2009||Oct 12, 2010||Blue Spike, Inc||System and methods for permitting open access to data objects and for securing data within the data objects|
|US7822197||Sep 7, 2007||Oct 26, 2010||Wistaria Trading, Inc.||Optimization methods for the insertion, protection, and detection of digital watermarks in digital data|
|US7826615 *||Feb 4, 2005||Nov 2, 2010||Samsung Electronics Co., Ltd.||Scrambling apparatus and method using conversion of motion vector information of video data|
|US7830915||Jan 23, 2008||Nov 9, 2010||Wistaria Trading, Inc.||Methods and systems for managing and exchanging digital information packages with bandwidth securitization instruments|
|US7844074||Jun 30, 2008||Nov 30, 2010||Wistaria Trading, Inc.||Optimization methods for the insertion, protection, and detection of digital watermarks in digitized data|
|US7870393||Aug 21, 2007||Jan 11, 2011||Wistaria Trading, Inc.||Steganographic method and device|
|US7877609||Nov 12, 2009||Jan 25, 2011||Wistaria Trading, Inc.||Optimization methods for the insertion, protection, and detection of digital watermarks in digital data|
|US7930545||Nov 15, 2006||Apr 19, 2011||Wistaria Trading, Inc.||Optimization methods for the insertion, protection, and detection of digital watermarks in digital data|
|US7949494||May 24, 2011||Blue Spike, Inc.||Method and device for monitoring and analyzing signals|
|US7953981||Aug 10, 2009||May 31, 2011||Wistaria Trading, Inc.|
|US7987371||Jul 9, 2008||Jul 26, 2011||Wistaria Trading, Inc.|
|US7991188||Aug 31, 2007||Aug 2, 2011||Wisteria Trading, Inc.|
|US8046841||Aug 21, 2007||Oct 25, 2011||Wistaria Trading, Inc.||Steganographic method and device|
|US8104079||Mar 23, 2009||Jan 24, 2012||Moskowitz Scott A||Methods, systems and devices for packet watermarking and efficient provisioning of bandwidth|
|US8121343||Oct 10, 2010||Feb 21, 2012||Wistaria Trading, Inc||Optimization methods for the insertion, protection, and detection of digital watermarks in digitized data|
|US8160249||Apr 17, 2012||Blue Spike, Inc.||Utilizing data reduction in steganographic and cryptographic system|
|US8161286||Jun 21, 2010||Apr 17, 2012||Wistaria Trading, Inc.||Method and system for digital watermarking|
|US8171561||Oct 9, 2008||May 1, 2012||Blue Spike, Inc.||Secure personal content server|
|US8175330||Aug 18, 2011||May 8, 2012||Wistaria Trading, Inc.||Optimization methods for the insertion, protection, and detection of digital watermarks in digitized data|
|US8214175||Feb 26, 2011||Jul 3, 2012||Blue Spike, Inc.||Method and device for monitoring and analyzing signals|
|US8224705||Sep 10, 2007||Jul 17, 2012||Moskowitz Scott A||Methods, systems and devices for packet watermarking and efficient provisioning of bandwidth|
|US8225099||Apr 14, 2010||Jul 17, 2012||Wistaria Trading, Inc.||Linear predictive coding implementation of digital watermarks|
|US8238553||Mar 30, 2009||Aug 7, 2012||Wistaria Trading, Inc||Steganographic method and device|
|US8265276||Dec 22, 2009||Sep 11, 2012||Moskowitz Scott A||Method for combining transfer functions and predetermined key creation|
|US8265278||Sep 21, 2010||Sep 11, 2012||Blue Spike, Inc.||System and methods for permitting open access to data objects and for securing data within the data objects|
|US8271795||Sep 11, 2006||Sep 18, 2012||Blue Spike, Inc.||Security based on subliminal and supraliminal channels for data objects|
|US8281140||Nov 23, 2009||Oct 2, 2012||Wistaria Trading, Inc|
|US8307213||Jun 21, 2010||Nov 6, 2012||Wistaria Trading, Inc.||Method and system for digital watermarking|
|US8467525||Jun 8, 2010||Jun 18, 2013||Wistaria Trading, Inc.||Steganographic method and device|
|US8473746||Oct 14, 2011||Jun 25, 2013||Scott A. Moskowitz||Methods, systems and devices for packet watermarking and efficient provisioning of bandwidth|
|US8526611||Mar 19, 2012||Sep 3, 2013||Blue Spike, Inc.||Utilizing data reduction in steganographic and cryptographic systems|
|US8527765 *||May 14, 2009||Sep 3, 2013||Nederlandse Organisatie Voor Toegepast-Natuurwetenschappelijk Onderzoek Tno||Shared secret verification method and system|
|US8538011||Aug 29, 2006||Sep 17, 2013||Blue Spike, Inc.||Systems, methods and devices for trusted transactions|
|US8542831||May 4, 2010||Sep 24, 2013||Scott A. Moskowitz||Multiple transform utilization and application for secure digital watermarking|
|US8549305||Oct 27, 2010||Oct 1, 2013||Wistaria Trading, Inc.||Steganographic method and device|
|US8612765||Mar 25, 2012||Dec 17, 2013||Blue Spike, Llc||Security based on subliminal and supraliminal channels for data objects|
|US8706570||Jul 17, 2012||Apr 22, 2014||Scott A. Moskowitz||Methods, systems and devices for packet watermarking and efficient provisioning of bandwidth|
|US8712728||Mar 13, 2013||Apr 29, 2014||Blue Spike Llc||Method and device for monitoring and analyzing signals|
|US8739295||Mar 7, 2012||May 27, 2014||Blue Spike, Inc.||Secure personal content server|
|US8767962||Aug 11, 2012||Jul 1, 2014||Blue Spike, Inc.||System and methods for permitting open access to data objects and for securing data within the data objects|
|US8774216||Sep 28, 2010||Jul 8, 2014||Wistaria Trading, Inc.||Exchange mechanisms for digital information packages with bandwidth securitization, multichannel digital watermarks, and key management|
|US8781121||Mar 13, 2013||Jul 15, 2014||Blue Spike, Inc.||Utilizing data reduction in steganographic and cryptographic systems|
|US8789201||Mar 12, 2013||Jul 22, 2014||Blue Spike, Inc.||Secure personal content server|
|US8798268||Mar 11, 2013||Aug 5, 2014||Blue Spike, Inc.|
|US8930719||Jul 24, 2012||Jan 6, 2015||Scott A. Moskowitz||Data protection method and device|
|US9021602||Mar 11, 2013||Apr 28, 2015||Scott A. Moskowitz||Data protection method and device|
|US9070151||Mar 12, 2013||Jun 30, 2015||Blue Spike, Inc.||Systems, methods and devices for trusted transactions|
|US9104842||Aug 24, 2007||Aug 11, 2015||Scott A. Moskowitz||Data protection method and device|
|US9171136||Nov 17, 2014||Oct 27, 2015||Wistaria Trading Ltd||Data protection method and device|
|US9191205||Apr 22, 2014||Nov 17, 2015||Wistaria Trading Ltd||Multiple transform utilization and application for secure digital watermarking|
|US9191206||Apr 22, 2014||Nov 17, 2015||Wistaria Trading Ltd||Multiple transform utilization and application for secure digital watermarking|
|US20040052375 *||Sep 12, 2002||Mar 18, 2004||International Business Machines Corporation||Dynamic systm bus encryption using improved differential transitional encoding|
|US20040131182 *||Sep 3, 2003||Jul 8, 2004||The Regents Of The University Of California||Block cipher mode of operation for constructing a wide-blocksize block cipher from a conventional block cipher|
|US20050169380 *||Feb 4, 2005||Aug 4, 2005||Samsung Electronics Co., Ltd.||Scrambling apparatus and method using conversion of motion vector information of video data|
|US20050177727 *||Feb 7, 2005||Aug 11, 2005||Moskowitz Scott A.||Steganographic method and device|
|US20070300072 *||Aug 31, 2007||Dec 27, 2007||Wistaria Trading, Inc.||Optimization methods for the insertion, protection and detection of digital watermarks in digital data|
|US20080005572 *||Sep 10, 2007||Jan 3, 2008||Moskowitz Scott A||Methods, systems and devices for packet watermarking and efficient provisioning of bandwidth|
|US20080075277 *||Aug 21, 2007||Mar 27, 2008||Wistaria Trading, Inc.||Steganographic method and device|
|US20110179274 *||May 14, 2009||Jul 21, 2011||Nederlandse Organisatie voor Toegepast-natuurweten Onderzoek TNO||Shared secret verification method and system|
|USRE44222||Jun 4, 2012||May 14, 2013||Scott Moskowitz||Methods, systems and devices for packet watermarking and efficient provisioning of bandwidth|
|USRE44307||Jun 4, 2012||Jun 18, 2013||Scott Moskowitz||Methods, systems and devices for packet watermarking and efficient provisioning of bandwidth|
|CN101710964B||Nov 17, 2009||Sep 5, 2012||深圳国微技术有限公司||Method for enciphering and deciphering MPEG2 transport stream packets|
|U.S. Classification||380/205, 348/E05.004, 380/206, 386/E05.004, 348/E07.061, 380/210, 348/E07.056|
|International Classification||H04N7/167, H04N7/16, H04N5/913, H04L9/14, H04N7/025|
|Cooperative Classification||H04N21/4367, H04N5/913, H04N7/163, H04N21/63345, H04N2005/91364, H04N7/1675|
|European Classification||H04N21/4367, H04N21/6334K, H04N7/167D, H04N7/16E2, H04N5/913|
|May 9, 2002||AS||Assignment|
Owner name: INTEL CORPORATION, CALIFORNIA
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:JIAN, JIAN-MING;REEL/FRAME:012887/0613
Effective date: 20020503
|Feb 25, 2010||FPAY||Fee payment|
Year of fee payment: 4
|Feb 19, 2014||FPAY||Fee payment|
Year of fee payment: 8