The present invention relates to the domain of electronic security modules, particularly security modules dedicated to access control to broadcast events and others mass medias.
The security operations are generally carried out in a security module associated to the multimedia unit or the decoder. Such security module can be implemented particularly in four different forms. One of them is a protected microprocessor card usually in the form of an ISO 781.6, a smart card or, more generally, an electronic module (in the form of a key, badge, . . . ). Such a module is generally detachable from and connectable to the decoder. The form involving electric contacts is the most used one, but does not exclude a connection without contacts, for instance, the ISO 14443 type or a combination of types with and without contacts.
A second known form is that of an integrated circuit package, generally placed in an irremovable and permanent way in the decoder casing. A variant consists of a circuit mounted on a fuse-base or connector such as a SIM module connector.
In a third form, the security module is integrated in an integrated circuit package having also other functions, for instance in a decoder descrambling module or decoder microprocessor.
In practice, the evolution of these security modules between the first modules used in a decoder sets and those installed with the latest decoders is prominent. Several generations of security modules can coexist within the same sets of a media distribution operator for instance via satellite, cable or Internet.
Obviously, should security faults be detected, the replacement of old modules is then carried out.
The difference between module generations is often related to services that accept the user's unit to which they are associated. Indeed, if a module version does not contain the “purse” function, it will be impossible to subtract from a credit and thus to authorize the content consumption without a bidirectional exchange with a management center.
Thus, a module of a certain generation will offer a limited number of services.
This is also a constraint for the users' units, to keep the compatibility with all the module of former generations. The process currently used is the identification of the security module by the user's unit. This identification can also be bidirectional, that is, the security module request the user's unit in order to know the characteristics of same.
The modification of security module generation can lead to material modifications, for instance by the availability of new communication ports. An example of such a security module is disclosed in the U.S. Pat. No. 6,779,734.
It is thus important that a security module can adapt to user's units and adjust its functionalities according to the communication means of the user's unit.
A malicious third party could use a modified decoder and attempt to access added high-value services by trying to appear as a decoder of the latest generation. Once in this mode, he/she will attempt to modify the internal memory of the security module to his advantage. In addition, the presence of advanced communication means, such as a USB 2.0, in such a module allows these third parties to multiply their attacks by these high rate communication means in comparison with other much slower communication means (ISO7816).
In the EP 1 486 907 application, a security module is also configurable according to the environment. The aim is to perform automatic configuration according to the signals received by the host device. Thus, if a malicious third party imitates a particular environment, the module will adapt to this environment even if it were not authorized.
The aim of the present invention is to provide a security module able to support the different functionalities and physical configurations of the last generation and the previous generations' connectivity, while avoiding any new attack possibility due to this adaptability.
This aim is obtained by a security module (SM) Comprising first communication means to a host device, first storage means (MEM0) and first decryption means (ENC0), characterized in that it includes a state module (ME) and second communication means (COM1), electric activation/deactivation means (TSB) of said second means, these activation/deactivation means being controlled by the state module (ME), and in that it includes reception means of a security message allowing the modification of the state of said state module (ME).
Thus, according to the state stored in the module state memory, the second communication means are completely inoperative and cannot be used by a third party for dishonest purposes. The electric activation/deactivation of the communication means are controlled by material means such as three state (tri-state) elements or “High Voltage bidirectional MOSFETs” according to the result of a cryptographic operation.
The same goes for other parts of the security module such as a memory zone. This memory can contain data such as keys or serial numbers, which are completely deactivated thus impossible to access according to the memory state. This memory state sends locking or unlocking material signals so that even in case a hack program operates in such a module, it cannot access this memory. The same mechanism can apply to other elements such as a decoding engine or an asymmetrical decryption module.
There are several solutions to define the operation mode of the security module.
A. Pre-Configuration
At the time of the manufacturing of the security module, or during a personalization step of said module, it is pre-configured to function according to a particular environment. Obviously this pre-programming can be modified during another step of pre-configuration in an initialization environment.
B. Message Activation
At the initialization, the module is in a basic mode and only the communication means being common to all the guest devices are activated. According to the pre-configuration, it can be in a particular mode considering the purpose of such a module. For changing the state of the security module and thus activating other functionalities, the module waits for the reception of a security message, which authorizes it to perform such a change. Only after having decoded such message and after verification of this message the module will change its state and thus will open the second communication means.
The invention will be better understood with the help of the following detailed description, which refers to enclosed drawings that are given as a non-restrictive example, namely:
According to our example, the module has a first encryption/decryption module (ENC0) as well as a second encryption/decryption module (ENC1).
According to the illustrated example in
The different modules are associated to the processor (CPU), which coordinates the operations, initializes the modules, transmits the results from one module to another, etc.
A particular module named state module (ME) will control the activation and the deactivation of certain modules and more generally the behavior of the security module (SM). According to the particular example in
This activation is shown in
When the state module (ME) has deactivated the communication module (COM0), the state module (ME) continues supervising the activity on the communication module (COM0). The state module (ME) can emit a warning message if it continues to ascertain the arrival of spikes.
There are other ways to influence the state module (ME). As indicated in the application preamble, the security module (SM) determines, according to the data received from the user's unit, which state corresponds to this unit.
According to a variant using a security message, it causes the change of the state of the state module (ME) as soon as this message is received and verified by the security module (SM).
According to that variant, this message is decrypted and verified by the processor (CPU) and the result is stored in the state module (ME). Thus, it acts as a memory with commands departing in the direction of the different modules concerned and as a supervision module in order to supervise the activity of all the communication paths.
According to another alternative, all or part of the message is directly treated by the state module (ME). The message can be previously processed by the processor (CPU), for instance by a key suitable for the security module (SM) contained in the first memory (MEM0), and then transmitted to the state module (ME). The latter has a clean key (Ksm), which will allow to verify the command, contained in the message. This verification can be made according to several well-known methods, such as the use of a signature on the generated message with an asymmetrical key, other asymmetrical key being the key Ksm of the module of the state memory. The microprocessor (CPU) cannot access the state memory without knowing the key pertaining to the state module (ME). Only the state module (ME) will accept a message prepared by the management center.
If the verification is correct, the new state is loaded in the state module (ME) with subsequent consequences on the other modules.
According to a variant process of the invention, the state module (ME) performs the supervising operations of the state of the security module (SM). It receives, for instance, the positive supply voltage Vdd (generally 5V), which also goes on the supply module PS and observes risk behaviors, such as a sudden voltage change, or abnormally high or low voltage. According to the defined criteria, it will be able to change its state without receiving a message, for instance, by generating an error message, or by deactivating certain functions of said module. The communication paths (COM1, COM0) are supervised by the state module (ME). By communication path we understand the paths through which input or output data pass from/to the security module (SM), such as the I/O path according to the ISO7816 standard, or the USB path or other high data transfer rate ports comprising infrared ones, etc. The connection paths are, as such, the other paths which are linked with the host device such as supply (Vdd, Vss) (Vss is the negative, or ground, supply voltage), clock (CLK) or reset.
Likewise, if it determines that spikes and noises are present on the communication means, such as the first communication means, it can also change its state or initiate countermeasures. Furthermore, the state module (ME) can comprise a supervising profile, on one hand, specific to the communication path or supervised connection and, on the other hand, according to the state of the state module (ME). Thus the verification parameters of the proper performance of a connection path can vary according to the state of the state module (ME). Voltage variations of +/−10% will be accepted in a state while in another state only +/−5% will be accepted. The same goes for the number of spikes, microcuts or others. These parameters are programmable and can be modified by receiving a security message.
This supervision can be made even if the communication path or means are deactivated.
The state module (ME) can also control the internal resources of the security module (SM). The second, memory (MEM1) can be either partially or completely deactivated. Moreover this deactivation can be made by either an electronic command (reading and/or writing locking) or by directly acting on the supply of said memory. This memory can be defined, according to the state, as read only, writing only or reading/writing. The same goes for others resources of the security module (SM) such as encryption/decryption modules (ENC0, ENC1). The state module (ME) can control modules and/or functions that are authorized or forbidden according to the state of the state module (ME). These functions are for instance the use of a high transfer data rate internal bus or a regulation mechanism of the clock. These modules are, for instance, a clock generator, an encryption/decryption module, a memory, a voltage regulator by a charging pump etc.
The incoming message to the security module (SM) preferably comes from a management center. This message can arrive to the security module SM either by the first or the second communication means. At the time of the initialization on site of the security module and its host device, messages are transmitted via the host device for the security module (SM). The management center knows the characteristics of the host apparatus as well as the subscriptions of the related subscriber and formats a message for the security module containing its working state. This message can be specific to each security module, or identical for all the security modules, a message containing a user's unit version and the security level of the security module (SM). Thus, if there are 8 different existing user's units, there will be eight messages in the transmission flow, each one comprising a user's unit version and the configuration of the corresponding security module (SM).
According to another embodiment, each host device according to its characteristics, stores a message, which will be subsequently transmitted, to the security module (SM) as soon as this is connected. The state of the security module (SM) will match the specifications of the host device.
Once the security module (SM) has determined its state, it preservers this state and is thus locked. In order for the security module (SM) to accept a new initialization, the management center can send a message that authorizes a new configuration process. This message can be conditional, that is to say, it can have a security module version indication or a state of the state module (ME) as a restarting condition.
Number | Date | Country | Kind |
---|---|---|---|
05111532 | Nov 2005 | EP | regional |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/EP2006/069150 | 11/30/2006 | WO | 00 | 6/5/2008 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2007/063108 | 6/7/2007 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
5149945 | Johnson et al. | Sep 1992 | A |
5237609 | Kimura | Aug 1993 | A |
5682032 | Philipp | Oct 1997 | A |
5734722 | Halpern | Mar 1998 | A |
6009363 | Beckert et al. | Dec 1999 | A |
6055581 | Berglund et al. | Apr 2000 | A |
6065679 | Levie et al. | May 2000 | A |
6175789 | Beckert et al. | Jan 2001 | B1 |
6268802 | Foladare et al. | Jul 2001 | B1 |
6385727 | Cassagnol et al. | May 2002 | B1 |
6438666 | Cassagnol et al. | Aug 2002 | B2 |
6538656 | Cheung et al. | Mar 2003 | B1 |
6543690 | Leydier et al. | Apr 2003 | B2 |
6553481 | Langton | Apr 2003 | B1 |
6573905 | MacInnis et al. | Jun 2003 | B1 |
6625703 | Goodman et al. | Sep 2003 | B2 |
6636222 | Valmiki et al. | Oct 2003 | B1 |
6661422 | Valmiki et al. | Dec 2003 | B1 |
6768774 | MacInnis et al. | Jul 2004 | B1 |
6772239 | Langton | Aug 2004 | B2 |
6779734 | Hill | Aug 2004 | B2 |
6813668 | Tseng et al. | Nov 2004 | B2 |
7224053 | Yamamoto | May 2007 | B2 |
7324450 | Oliver | Jan 2008 | B2 |
7383982 | Yamamoto et al. | Jun 2008 | B2 |
20010001319 | Beckert et al. | May 2001 | A1 |
20020019807 | Halpern | Feb 2002 | A1 |
20020035651 | Langton | Mar 2002 | A1 |
20030154326 | Tseng et al. | Aug 2003 | A1 |
20040089725 | Hill | May 2004 | A1 |
20040129787 | Saito et al. | Jul 2004 | A1 |
20040130016 | Yamamoto | Jul 2004 | A1 |
20040190558 | Oliver | Sep 2004 | A1 |
20040263319 | Huomo | Dec 2004 | A1 |
20050077355 | Yamamoto et al. | Apr 2005 | A1 |
20060059503 | Will et al. | Mar 2006 | A1 |
Number | Date | Country |
---|---|---|
1486907 | May 2008 | EP |
Entry |
---|
Samar; Unified Login with Pluggable Authentication Modules (PAM); Proceeding CCS '96 Proceedings of the 3rd ACM conference on Computer and communications security; pp. 1-10; ACM New York, NY, USA 1996. |
Itoi; Practical security systems with smartcards; Proceedings of the Seventh Workshop on Hot Topics in Operating Systems; Date of Conference: 1999; Conference Location : Rio Rico, AZ ; pp. 185-190; IEEE Xplore. |
International Search Report issued in PCT/EP2006/069150, dated Apr. 16, 2007. |
English Language Translation of International Search Report issued in PCT/EP2006/069150, dated Apr. 16, 2007. |
Written Opinion issued in PCT/EP2006/069150, dated Apr. 16, 2007. |
English language translation of Written Opinion issued in PCT/EP2006/069150, dated Apr. 16, 2007. |
Number | Date | Country | |
---|---|---|---|
20080307499 A1 | Dec 2008 | US |