The present invention concerns the encryption of data, particularly the transmission of encrypted data on open networks.
When we want to guarantee that only the authorised addresses can exploit the data transmitted on open networks (cable, satellite, terrestrial broadcast, or Internet), the most appropriate means is to encrypt these data and to ensure that only the authorised addressees have the means for decrypting them.
Despite known encryption algorithms, it is admitted that it is possible for a third person with significant computing power to decrypt these data.
This is why the known systems integrate a frequent key changing mechanism that discourages potential assailants. Each attack then only acts on a small portion of data and only allows access, after decryption, to a few seconds of transmission.
This method is used for the broadcasting of pay television, wherein the key is called the “control word” and only has a duration of a few seconds. These data are referred to as “for immediate consumption” and the corresponding key is sent in parallel.
The appearance of storing means (e.g., digital video recorders) and the possibility of viewing (or exploiting) these data at any given moment has modified the situation somewhat.
In order to further satisfy clients it is now possible to send encrypted data on a distribution network comprising a great number of users. These data are stored in the storage unit of the user unit. These data are accompanied by a file containing the encryption keys, this file also being encrypted according to an algorithm and keys contained in a security module of the user. This security module generally is in the form of a smart card having in its memory its own keys to decrypt the data.
For the following discussion the data defining the product subject to conditional access will be referred to as “product data”. “Product data” means content such as a film, a sports broadcast, a game, or software.
We will consider the fact that a great number of user units contain in their storage unit the same “product data” and a file of keys.
If the user decides to buy this product, the security module will receive the necessary instructions to decrypt the keys file and to supply in useful time the keys to decrypt the “product data”.
An ill-intentioned third person will then attack the keys file that is encrypted by the specific key while the “product data” are encrypted by a great number of keys.
Furthermore, the size of the keys file is small compared with the size of the product data. For information purposes, the size of a film in encrypted form may be about 1 Gigabyte; in decrypted and decompressed form the same can represent a size of 10 Gigabytes.
In this way, when this third person manages to decrypt the keys file this information can circulate easily on the Internet for example, thereby allowing other persons by means of a modified decoder to decrypt the “product data”.
It should be understood that the decoder receives a stream of data whose format depends upon the broadcaster. This means that it is very difficult to isolate the different packages of information to obtain the “product data” in encrypted form at this stage. This is why the attack is made on the storing unit or hard disk, which for economic reasons is of a standard type (IDE for example). This disk is then transferred to a personal computer to receive by other channels the keys file.
In the similar objective of allowing the storing of a product on a hard disk and of viewing it later, a first approach is described in the document FR 2 732 537. The problem that this document seeks to solve is the duration of limited validity of the keys transmitted with the data. This is why the proposed solution is to decrypt the file containing the keys (CW) and to re-encrypt them with a local key to allow thus the use of the data at any time. It should be noted that the data in themselves are stored in the same state as when they entered the decoder.
The embodiment described in the document EP 0 912 052 varies in the sense that the local re-encryption key is stored in a smart card.
These two documents do not allow to solve the problem of the vulnerability of the data when they are stored on a storage device with easy access.
An objective of the present invention is to prevent the decryption of a keys file or of data from allowing ill-intentioned users to benefit illegally from “product data”.
This objective is achieved by a storing method for data extracted from an encrypted data stream sent to a decoder connected to a security module and to a storing unit (DB), the method consisting of re-encrypting the encrypted data before they are transferred to the storing unit (DB) by at least one specific key (K1, K2).
In this way, the data of each storing unit are specific to the considered decoder and the decryption of a keys file only allows decryption of the “product data”.
The data stream entering the decoder is firstly interpreted to isolate the parts that constitute the “product data”. These are encrypted by a first key that is contained in the decoder.
Because of the fact that the decoder is not considered secure it is possible to use instead of or in additional to the first key, a key contained in a security module.
The present invention will be better understood with the help of the annexed figures, taken as a non-limiting example, in which:
The key K1 delivered by the security module SM can be combined with a second key K2 specific to the decoder. From this fact the deviation of the security module SM with the content of the data stored DB does not allow the decryption of these data.
These keys are specific, that is, each decoder or security module uses a different key. Depending on the chosen generation mode this key is generated randomly during an initialisation phase or is sent by the operating centre of the system.
A first stage of encryption NK(K1) is then accomplished with a first key K1 coming from the security module SM. These data are then sent to a second encryption module NK(K2) fed by a second key K2 coming from the decoder STB.
These keys supplied by the decoder STB and the security module SM are used in any given order.
According to one embodiment, the encryption module is placed directly in the interface between the decoder and the storing module. In this way it is at a low logical level that this encryption is carried out independently of the central management software of the decoder.
According to another embodiment the security module SM has encryption means powerful enough to receive the data stream to be encrypted and to return the data in encrypted form. In this case it is the security module SM only that contains and uses the encryption key.
The encryption of the data can be executed a first time on the base of a first key K1 coming from the security module SM then on the base of a second key K2 coming from the decoder STB. Furthermore, according to the capacities of the storing module the latter can also supply a key K3 allowing to encrypt the data with this key.
It will then be necessary to collect these three elements so that the decryption is possible.
This principle can be understood for all the elements capable of storing their own key, this key then being used by a new encryption layer of data.
In most cases the use of stored data according to the method described above is subject to obtaining a right also known as an entitlement. This right is obtained from the operating centre and can be acquired before or after the downloading of the “product data”. This right contains a product descriptor and a decryption key for the control words.
According to the invention at least one stage of the encryption is subject to a key contained in the security module (SM) where there are also the rights for the use of the data. During the decryption operation of the stored data on the storage means, the key K1 is only supplied to the decryption module if the verification of the right of use is positive. In this way the data DB will only recover their original encrypted form if the user has the right of use.
According to this embodiment the data DB are accompanied by a descriptor in plain text describing the necessary rights for these data. The security module SM, before decryption with the key K1, verifies this information with that contained in its secured memory.
Number | Date | Country | Kind |
---|---|---|---|
0061/01 | Jan 2001 | CH | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/IB02/00106 | 1/15/2002 | WO | 00 | 12/9/2002 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO02/056592 | 7/18/2002 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
4302810 | Bouricius et al. | Nov 1981 | A |
5008936 | Hamilton et al. | Apr 1991 | A |
5224166 | Hartman, Jr. | Jun 1993 | A |
5353351 | Bartoli et al. | Oct 1994 | A |
5504816 | Hamilton et al. | Apr 1996 | A |
5757909 | Park | May 1998 | A |
5915025 | Taguchi et al. | Jun 1999 | A |
6144744 | Smith et al. | Nov 2000 | A |
6195751 | Caronni et al. | Feb 2001 | B1 |
6393128 | Rix et al. | May 2002 | B1 |
6550011 | Sims, III | Apr 2003 | B1 |
6636966 | Lee et al. | Oct 2003 | B1 |
6853728 | Kahn et al. | Feb 2005 | B1 |
6859533 | Wang et al. | Feb 2005 | B1 |
6937726 | Wang | Aug 2005 | B1 |
6941454 | Spraggs | Sep 2005 | B1 |
6957340 | Pang et al. | Oct 2005 | B1 |
7039816 | Kocher et al. | May 2006 | B2 |
7069579 | Delpuch | Jun 2006 | B2 |
7093277 | Perlman | Aug 2006 | B2 |
7093295 | Saito | Aug 2006 | B1 |
7181129 | Saito | Feb 2007 | B2 |
20020019932 | Toh et al. | Feb 2002 | A1 |
20020091935 | Smith et al. | Jul 2002 | A1 |
20020184648 | Delpuch | Dec 2002 | A1 |
20020184684 | Pieters | Dec 2002 | P1 |
20030208771 | Hensgen et al. | Nov 2003 | A1 |
Number | Date | Country |
---|---|---|
0 809 402 | Nov 1997 | EP |
0 912 052 | Apr 1999 | EP |
1 122 910 | Aug 2001 | EP |
2 732 537 | Oct 1996 | FR |
WO 00 22777 | Apr 2000 | WO |
Number | Date | Country | |
---|---|---|---|
20030179881 A1 | Sep 2003 | US |