Information
-
Patent Application
-
20040037422
-
Publication Number
20040037422
-
Date Filed
May 14, 200321 years ago
-
Date Published
February 26, 200420 years ago
-
Inventors
-
Original Assignees
-
CPC
-
US Classifications
-
International Classifications
Abstract
The invention relates in particular to a method of scrambling a video signal using an encryption key for controlling access to audiovisual information. The video signal is scrambled by applying a tattooing function to the video signal by using a marking key derived from the encryption key, the tattooing function including a parameter for regulating the amplitude of tattooing so as to enable the visibility of the tattooing in the video signal to be adjusted. The invention also provides a dual unscrambling method, and a system, an encoder, a decoder, a broadcast server, and a data medium for implementing said methods.
Description
[0001] The present invention relates to a method of scrambling a video signal using an encryption key for controlling access to audiovisual information transmitted by a broadcast server.
[0002] The invention also provides a method of unscrambling a video signal, and a system, an encoder, a decoder, a broadcast server, and a data medium for implementing said methods.
BACKGROUND OF THE INVENTION
[0003] There exist numerous scrambling methods implemented for controlling access to audiovisual information. For example, one solution is provided by the DVB Scrambling method of the digital video broadcasting (DVB) consortium.
[0004] Those methods generally make use of an encryption key for scrambling the video signal. The scrambling is generally based on performing an exclusive-OR (XOR) operation between the non-scrambled stream and the encryption key.
[0005] For example, in the context of broadcasting programs, a user desiring to access audiovisual information receives the scrambled signal together with a message of the Entitlement Control Message (ECM) type which represents an MPEG-2 Transport Stream (MPEG-2 TS) packet conveying, amongst other things, a decryption key associated with the encryption key. It is the decryption key which is used for unscrambling the video.
[0006] Unfortunately, the result of that type of scrambling method is to supply the user with a video signal that is scrambled but that cannot be viewed. The scrambled video signal does not make it possible for the user to get some idea of the audiovisual content prior to unscrambling.
OBJECTS AND SUMMARY OF THE INVENTION
[0007] The present invention seeks to remedy that drawback by providing a method of unscrambling a video signal that enables the video content to be scrambled while nevertheless ensuring that it remains viewable to some extent.
[0008] To this end, the invention provides a scrambling method of the above-specified type, wherein the video signal is scrambled by applying a tattooing function to the video signal using a marking key derived from the encryption key, the tattooing function including a parameter for regulating the amplitude of the tattooing that enables the visibility thereof in the video signal to be adjusted.
[0009] A scrambling method of the invention may further comprise one or more of the following characteristics:
[0010] the audiovisual information is accessible from a broadcast server;
[0011] the audiovisual information is stored on a data medium that is accessible for reading;
[0012] the tattooing function is applied to motion vectors obtained by encoding the video signal;
[0013] the tattooing function is applied to a frequency representation of said motion vectors;
[0014] the scrambling comprises the following steps:
[0015] selecting motion vectors from a set of motion vectors obtained by encoding the video signal;
[0016] separating abscissa and ordinate components of the selected vectors in two vectors respectively referred to as the abscissa vector and the ordinate vector;
[0017] applying a one-dimensional Discrete Cosine Transform (DCT) type transform to each of said two vectors;
[0018] applying the tattooing function using the marking key to the components of the DCT transforms of the abscissa and ordinate vectors; and
[0019] performing an inverse DCT transform on the abscissa and ordinate vectors and recombining them so as to provide new values for the selected motion vectors, after tattooing;
[0020] the motion vectors are extracted directly from the encoded video stream, the video signal being scrambled after being encoded;
[0021] the motion vectors are selected while encoding the video signal, the video signal then being scrambled while it is being encoded;
[0022] the scrambling is combined with invisible tattooing of the video signal by applying a tattooing function using a tattooing key including information concerning author rights;
[0023] the author rights information includes an identifier of the video and an identifier of the author having rights over the video;
[0024] said tattooing key is combined with the marking key using a function presenting one-to-one correspondence to generate a new marking key used instead of the marking key for scrambling the video signal;
[0025] the video signal is encoded in conformity with the MPEG-2 or the MPEG-4 standard;
[0026] spectrum spreading is performed on the marking key; and
[0027] each image is scrambled by a marking key obtained by permutation of the marking key of the preceding image.
[0028] The invention also provides a method of unscrambling a video signal using a decryption key, wherein the unscrambling is performed on a signal scrambled by a scrambling method as described above.
[0029] The unscrambling method may further comprise one or more of the following characteristics:
[0030] it comprises the following steps:
[0031] selecting motion vectors from a set of motion vectors obtained by encoding the video signal;
[0032] separating the abscissa and ordinate components of the selected vectors in two vectors referred to respectively to as the abscissa vector and the ordinate vector;
[0033] applying a one-dimensional DCT type transform to each of said two vectors;
[0034] applying a tattooing function using a marking key derived from the decryption key to the components of the DCT transforms of the abscissa and ordinate vectors; and
[0035] applying an inverse DCT transform to the abscissa and ordinate vectors and recombining them to produce the new values of the selected motion vectors; and
[0036] each image is unscrambled by a marking key obtained by permutation of the marking key of the preceding image.
[0037] The invention also provides an encoder including means for analyzing motion, the encoder further comprising means for scrambling a video signal by implementing a scrambling method as described above.
[0038] The invention also provides a decoder, including means for unscrambling a video signal by implementing an unscrambling method as described above.
[0039] The invention also provides a video signal broadcast server including means for scrambling the video signal by implementing a scrambling method as described above.
[0040] The invention also provides an access terminal for connection to an information transmission network to receive a video signal broadcast on the network, the terminal including means for unscrambling the video signal by implementing an unscrambling method as described above.
[0041] The invention also provides a computer-readable data medium, including means for storing a video signal scrambled using a scrambling method as described above.
[0042] Finally, the invention also provides a system for scrambling and unscrambling a video signal using an encryption key for controlling access to audiovisual information, the system comprising a broadcast server for broadcasting the video signal associated with storage means for storing the video signal, and connected to an information transmission network for broadcasting the video signal, the system including means for scrambling the video signal by implementing a scrambling method as described above.
[0043] A scrambling and unscrambling system of the invention may also include the characteristic whereby it includes an access terminal connected to the information transmission network, said access terminal including means for unscrambling the video signal by implementing an unscrambling method as described above.
BRIEF DESCRIPTION OF THE DRAWINGS
[0044] The invention will be better understood from the following description, given purely by way of example and made with reference to the accompanying drawings, in which:
[0045]
FIG. 1 is a diagram showing the structure of a system for broadcasting a video signal using a method of the invention;
[0046]
FIG. 2 shows the various steps of a first implementation of the scrambling method of the invention;
[0047]
FIG. 3 shows the various steps of a second implementation of a scrambling method of the invention;
[0048]
FIG. 4 shows a method of exchanging keys for unscrambling a video signal scrambled using a method of the invention; and
[0049]
FIG. 5 shows the various steps of an unscrambling method of the invention.
MORE DETAILED DESCRIPTION
[0050] The system shown in FIG. 1 comprises a server 10 for broadcasting audiovisual information stored in a database 12 connected thereto.
[0051] The broadcast server 10 is of conventional type and comprises, for example, a central processor unit (CPU) associated with random access memory (RAM) and read-only memory (ROM) for implementing a method of scrambling audiovisual information that is to be broadcast.
[0052] The broadcast server 10 is also connected to an information transmission network 14, such as the Internet. Scrambled audiovisual information can thus be transmitted via this network to at least one identified client terminal 16.
[0053] Means for secure data exchange using a conventional protocol are installed on the broadcast server 10 and also on the client terminal 16.
[0054] The installation of such secure data exchange means is necessary for implementing a method of exchanging confidential data, as described below with reference to FIG. 4.
[0055] The scrambling method shown in FIG. 2 is implemented by the broadcast server 10 using its software and hardware means. Its function is to process a video signal in order to scramble it.
[0056] In this implementation, the broadcast server 10 includes an encoder 20, e.g. an MPEG-2 encoder, adapted to receive as input a source video signal S and to deliver as output an encoded binary signal ready to be modulated prior to being broadcast over the network 14.
[0057] In this case, the client terminal 16 is provided with an MPEG-2 type decoder in order to be able to decode and display the source signal S.
[0058] The broadcast server 10 can also use an MPEG-4 standard encoder, in which case the client terminal decoder 16 must likewise comply with the MPEG-4 standard. It is also possible to use any other encoder that scans motion in a multidimensional sequence including a time component.
[0059] In conventional manner, the encoder 20 has a module 22 for estimating motion which associates a matrix of motion vectors 24 with a given image of the video signal S.
[0060] This matrix of motion vectors serves to generate a predicted image of the image in question on the basis, for example, of the preceding image of the video signal, by moving macroblocks of pixels thereof as a function of the motion vectors.
[0061] As a result, it is possible to transmit only the matrix 24 of motion vectors and the content of a residual image that is the result of taking the difference between the image under consideration and its predicted image, in order to enable the decoder to restore the image under consideration. Starting from the preceding image, it is possible to reconstruct the predicted image on decoding using the matrix 24 of motion vectors, and it is then possible to restore the image under consideration by adding the transmitted residual image to the predicted image. This conventional method enables the video signal S to be compressed efficiently.
[0062] The matrix 24 of motion vectors shown in this figure comprises nine motion vectors V1 to V9. Naturally, the number of motion vectors is generally greater. Only nine are shown in order to clarify the description below.
[0063] During a step 26, the broadcast server 10 generates an encryption key KT associated with the video signal S. This key is stored in the database 12 together with the corresponding audiovisual data.
[0064] Thereafter, during a step 28, the broadcast server 10 selects in pseudo-random manner from said encryption key a set 30 of motion vectors from the motion vectors of the matrix 24. In this example, the selected set of motion vectors is constituted by the vectors V6, V5, V2, and V9.
[0065] Thereafter, the server 10 separates the abscissa and ordinate components of the selected vectors into two vectors referred respectively as the abscissa vector Vx and the ordinate vector Vy. Thus, the vector Vx comprises four components representing the abscissas of the four vectors in the set 30, i.e.:
V
x
=(V6x, V5x, V2x, V9x)
[0066] Similarly, Vy comprises four components taken from the ordinates of the four vectors of the set 30, i.e.:
V
y
=(V6y, V5y, V2y, V9y)
[0067] During following step 32, the broadcast server 10 applies a transform of the one-dimensional DCT type to each of these two vectors.
[0068] This produces two vectors Fx and Fy representing the vectors Vx and Vy respectively, but in the frequency domain.
[0069] These two new vectors have the following components:
F
x
=(F6x, F5x, F2x, F9x) and Fy=(F6y, F5y, F2y, F9y)
[0070] During a step 34 following the step 26 of generating the encryption key, the broadcast server 10 generates a marking key 36 representing a binary version of the encryption key KT, in which zero values are replaced by the value −1.
[0071] In order to make the scrambling even more robust, it is advantageous also to spread the spectrum of the marking key 36. To do this, the marking key is oversampled and then random noise is added thereto. Redundancy is thus created in the marking key which is, in addition, scrambled by the noise.
[0072] The marking key has as many binary components as there are motion vectors selected during step 28, i.e. the marking key 36 has as many components as each of the vectors Fx and Fy. In this example, a marking key 36 is shown that has four binary components, with the first and last components having the value −1 and the second and third components having the value 1.
[0073] The marking key 36 obtained during step 34 is inserted into the selected motion vectors during a step 38 by applying the following tattooing function:
if Wi=−1, then F′Xi=FXi+Wiα and F′Yi=FYi,
else F′Xi=FXi and F′Yi=FYi+Wiα,
[0074] where Wi, FXi, FYi, F′Xi, and F′Yi represent, respectively, the i-th components of the marking key 36, of the vectors Fx and Fy and of new values F′x and F′y for the vectors Fx and Fy after tattooing.
[0075] α is a coefficient that is selected a priori, representing the strength of the marking. The greater the value of α, the greater the modification to the frequency components of the selected motion vectors, and the greater the extent to which the scrambling is visible in the video signal.
[0076] As a result of this operation, on leaving step 38, the following two vectors are obtained:
F′
x
=(F6x, F′5x, F′2x, F9x) and F′y=(F′6y, F5y, F2y, F′9y)
[0077] The method then moves onto a step 40 during which the broadcast server 10 applies an inverse DCT transform to the vectors F′x and F′y so as to output two vectors V′x and V′y in which all of the components differ from the components of the vectors Vx and Vy. Thus, it can be seen that the insertion of the marking key 36 into the selected motion vectors is spread over all of the components thereof.
[0078] Thereafter, the server 10 combines the new components of the vectors V′x and V′y so as to reconstitute a set 42 of four motion vectors corresponding to scrambled values for the initially selected vectors V6, V5, V2v and V9.
[0079] These new motion vectors are written V′6, V′5, V′2, and V′9.
[0080] These new vectors V′6, V′5, V′2, and V′9 replace the vectors V6, V5, V2, and V9 in order to provide a new matrix 44 of motion vectors. This new matrix 44 makes it possible on decoding to obtain a scrambled version of the initial image under consideration.
[0081] The set of steps enabling the matrix 44 to be generated from the matrix 24 of motion vectors, i.e. the set constituted by the steps 26, 28, 32, 34, 38, and 40 is referred to below as the scrambler module and is given an overall reference 46.
[0082] In the encoder 20, in conventional manner, motion estimation is reiterated on each image of the video signal S so as to obtain, at the output from the encoder 20, a scrambled binary signal BS′ in which all of the matrices of motion vectors are scrambled, and which can be stored in the database 12 prior to being broadcast over the network 14.
[0083] On each iteration, it is possible to implement a conventional permutation on the marking key prior to inserting it in the following video image so as to make the key even more difficult to detect.
[0084] Optionally, the above-described method includes a step (not shown) of invisible tattooing of the video signal S.
[0085] This tattooing is performed in conventional manner by applying a tattooing function to the signal, for example a function similar to that described above, but with a value for α that is low enough for the tattooing to be invisible, and using a second marking key. This second marking key, referred to as the “tattooing key” is constituted, for example, by an identifier of the author having rights in the video.
[0086] The tattooing step can be performed independently of the scrambling, and either before or after the scrambler module 46.
[0087] The tattooing step may also be combined with scrambling. It is possible to correlate the tattooing key and the marking key 36 using a function providing one-to-one correspondence such as an XOR function so as to generate a new marking key referred to as the “tattooed marking key”. This tattooed marking key is then used by the scrambler module 46 instead of the marking key 36.
[0088] The one-to-one relationship of the correlation function makes it possible to ensure that the signal can be unscrambled without necessarily removing its tattooing.
[0089]
FIG. 3 shows a second implementation of the scrambling method shown in FIG. 2.
[0090] Whereas in the preceding example, the scrambler module 46 is shown as being an integral portion of the encoder 20 and as operating after a step 22 of estimating motion, the implementation of FIG. 3 shows a scrambler module 46 that is independent of the encoder 20.
[0091] In this implementation, the video signal S is initially processed by the encoder 20 to provide a binary signal BS at its output.
[0092] The binary signal BS is then input to a syntax analyzer 58 capable of automatically extracting the matrix 24 of motion vectors. As before, this matrix 24 is input to the scrambler module 46 so as to obtain, at the output thereof, a new matrix 44 that is scrambled.
[0093] Finally, during a last step 60, the new matrix 44 is reintroduced into the binary signal BS, replacing the old matrix 24 so as to provide the scrambled binary signal BS′. This operation is performed on all of the matrices of motion vectors in the binary signal BS.
[0094] In this implementation, the above-described tattooing step can likewise be performed either independently of the scrambler module 46, or in combination with scrambling.
[0095] Since the client terminal 16 is provided with a decoder that is compatible with the MPEG-2 standard, it is capable of decoding the binary signal BS′ broadcast by the broadcast server 10.
[0096] In addition, if the client terminal 16 possesses the encryption key KT, it is also capable of reconstituting proper values for the scrambled motion vectors by implementing a method that is the dual of the scrambler module 46 as described above. This dual method, referred to as an unscrambler method, is described in detail below with reference to FIG. 5.
[0097] To enable the client terminal 16 to perform unscrambling, a method of transmitting the encryption key KT is described with reference to FIG. 4.
[0098] During a first step 50, the client terminal 16 downloads a scrambled binary video signal BS′ from the broadcast server 10.
[0099] During the following step 52, the user terminal 16 requests the broadcast server 10 to download an unscrambling application to view the content of the video of interest.
[0100] On receiving this request, the broadcast server 10 generates an identifier UID and a secret key KS obtained by applying a hashing function to the identifier UID and a master key Kp.
[0101] During the following step 54, the broadcast server send the unscrambling application requested by the client terminal 16. In secure manner, this application includes the identifier UID and the secret key KS. The key KS is stored by the user terminal in a manner that is secure. Therefore the user cannot access it.
[0102] Thereafter, during a step 56, a method of purchasing the rights to view the video is implemented between the client terminal 16 and the broadcast server 10. Once purchase has been performed, the broadcast server 10 extracts from the database 12 the encryption key KT that enables the video content to be unscrambled and it enciphers it using an encryption function EKS which depends on the secret key KS.
[0103] This produces an enciphered encryption key KSC.
[0104] Finally, during a final step 58, the broadcast server 10 transmits the enciphered encryption key to the client terminal 16.
[0105] The client terminal can restore the encryption key KT from the enciphered encryption key and the secret key KS stored in the downloaded application, using a decryption function DKS that is the dual of the encryption function EKS.
[0106] The client terminal 16 includes a decoder 60 shown in FIG. 5.
[0107] The decoder 60 receives as input the scrambled binary video signal BS′ and it outputs the unscrambled and decoded signal S ready for display on a display screen of the client terminal 16.
[0108] The decoder 60,includes in particular a module 62 for extracting motion vectors. This extraction module 62 outputs a matrix 64 of motion vectors identical to the matrix 44.
[0109] At least part of this matrix 64 comprises motion vectors that are scrambled, which it delivers to the input of an unscrambler module 66 of the decoder 60. The unscrambler module 66 has conventional software means for implementing a method comprising a first step 68 for pseudo-random selection of motion vectors. During this step, the selection is implemented using the encryption key KT in the same manner as the in step 28, i.e. using the same pseudo-random selection algorithm. As a result, the vectors that are selected during this step are the same vectors as those that were selected during the step 28. This constitutes the set 42 of vectors V′6, V′5, V′2, and V′9.
[0110] Thereafter, the abscissa and ordinate components of these four vectors are separated into two vectors referred to respectively as the abscissa vector V′x and the ordinate vector V′y.
[0111] During the following step 70, a one-dimensional DCT type transform is applied to each of these two vectors V′x and V′y.
[0112] This produces the two above-described vectors F′x and F′y, representing each of the vectors V′x and V′y in the frequency domain.
[0113] During a step 72 identical to the step 34, the client terminal 16 generates the marking key 36 from the encryption key KT. In the same manner as above, spectrum spreading may also be performed on the marking key 36.
[0114] During the step 72 following the step 70, the marking key 36 which was inserted in the components of the motion vectors selected during scrambling of the video signal S, is now removed from said vectors by applying the following function, which is a dual of the above-described tattooing function:
if Wi=−1, then F′XiFXi−Wiα and F′Yi=FYi,
else F′Xi=FXi and F′Yi=FYi−Wiα,
[0115] As a result of this operation, on leaving step 72, the following two vectors are obtained:
F
x
=(F6x, F5x, F2x, F9x) and Fy=(F6y, F5y, F2y, F9y)
[0116] The method then moves onto a step 74 during which an inverse DCT transform is applied to the vectors Fx and Fy to obtain the two vectors Vx and Vy respectively comprising the abscissa components and the ordinate components of the unscrambled selected motion vectors.
[0117] Thereafter, the components of the vectors Vx and Vy are combined so as to reconstitute the set 30 comprising the motion vectors V6, V5, V2, and V9.
[0118] As a result, at the output from the unscrambler module 66, there is provided the matrix 24 of unscrambled motion vectors.
[0119] As for scrambling the signal S during encoding, unscrambling can be performed independently of decoding, by a method that is the dual of the method described with reference to FIG. 3.
[0120] It can clearly be seen that a method of the invention for scrambling a video signal makes it possible to improve the broadcasting of paid-for audiovisual content by enabling the transmitted video signal to be scrambled but without preventing it being viewed by a user who is potentially interested.
[0121] Another advantage of the above-described invention is that it enables invisible tattooing of the video content to be combined with scrambling thereof.
Claims
- 1/ A method of scrambling a video signal using an encryption key for controlling access to audiovisual information, wherein the video signal is scrambled by applying a tattooing function to the video signal using a marking key derived from the encryption key, the tattooing function including a parameter for regulating the amplitude of the tattooing that enables the visibility thereof in the video signal to be adjusted.
- 2/ A scrambling method according to claim 1, wherein the audiovisual information is accessible from a broadcast server.
- 3/ A scrambling method according to claim 1, wherein the audiovisual information is stored on a data medium that is accessible for reading.
- 4/ A scrambling method according to claim 1, wherein the tattooing function is applied to motion vectors obtained by encoding the video signal.
- 5/ A scrambling method according to claim 4, wherein the tattooing function is applied to a frequency representation of said motion vectors.
- 6/ A scrambling method according to claim 5, wherein the scrambling comprises the following steps:
selecting motion vectors from a set of motion vectors obtained by encoding the video signal; separating abscissa and ordinate components of the selected vectors in two vectors respectively referred to as the abscissa vector and the ordinate vector; applying a one-dimensional DCT type transform to each of said two vectors; applying the tattooing function using the marking key to the components of the DCT transforms of the abscissa and ordinate vectors; and performing an inverse DCT transform on the abscissa and ordinate vectors and recombining them so as to provide new values for the selected motion vectors, after tattooing.
- 7/ A scrambling method according to claim 4, wherein the motion vectors are extracted directly from the encoded video stream, the video signal being scrambled after being encoded.
- 8/ A scrambling method according to claim 4, wherein the motion vectors are selected while encoding the video signal, the video signal then being scrambled while it is being encoded.
- 9/ A scrambling method according to claim 1, wherein the scrambling is combined with invisible tattooing of the video signal by applying a tattooing function using a tattooing key including information concerning author rights.
- 10/ A scrambling method according to claim 9, wherein the author rights information includes an identifier of the video and an identifier of the author having rights over the video.
- 11/ A scrambling method according to claim 9, wherein said tattooing key is combined with the marking key using a function presenting one-to-one correspondence to generate a new marking key used instead of the marking key for scrambling the video signal.
- 12/ A scrambling method according to claim 1, wherein the video signal is encoded in conformity with the MPEG-2 or the MPEG-4 standard.
- 13/ A scrambling method according to claim 1, wherein spectrum spreading is performed on the marking key.
- 14/ A scrambling method according to claim 1, wherein each image is scrambled by a marking key obtained by permutation of the marking key of the preceding image.
- 15/ A method of unscrambling a video signal using a decryption key, wherein the unscrambling is performed on a signal scrambled by a method according to claim 1.
- 16/ An unscrambling method according to claim 15, wherein the unscrambling comprises the following steps:
selecting motion vectors from a set of motion vectors obtained by encoding the video signal; separating the abscissa and ordinate components of the selected vectors in two vectors referred to respectively to as the abscissa vector and the ordinate vector; applying a one-dimensional DCT type transform to each of said two vectors; applying a tattooing function using a marking key derived from the decryption key to the components of the DCT transforms of the abscissa and ordinate vectors; and applying an inverse DCT transform to the abscissa and ordinate vectors and recombining them to produce the new values of the selected motion vectors.
- 17/ An unscrambling method according to claim 15, wherein each image is unscrambled by a marking key obtained by permutation of the marking key of the preceding image.
- 18/ An encoder including means for analyzing motion, the encoder further comprising means for scrambling a video signal by implementing a method according to claim 1.
- 19/ A decoder, including means for unscrambling a video signal by implementing an unscrambling method according to claim 15.
- 20/ A server for broadcasting a video signal, the server including means for scrambling the video signal by implementing a method according to claim 1.
- 21/ An access terminal for connection to an information transmission network to receive a video signal broadcast over said network, the terminal including means for unscrambling the video signal by implementing a method according to claim 15.
- 22/ A computer-readable data medium, including means for storing a video signal that has been scrambled using a method according to claim 1.
- 23/ A system for scrambling and unscrambling a video signal using an encryption key for controlling access to audiovisual information, the system comprising a broadcast server for broadcasting the video signal associated with storage means for storing the video signal, and connected to an information transmission network for broadcasting the video signal, the system including means for scrambling the video signal by implementing a method according to claim 1.
- 24/ A scrambling and unscrambling system according to claim 23, further comprising an access terminal connected to the information transmission network, said access terminal including means for unscrambling the video signal by implementing a method according to claim 15.
Priority Claims (1)
Number |
Date |
Country |
Kind |
0206405 |
May 2002 |
FR |
|