The present patent application claims the priority benefit of the filing date of European Application (EPO) No. 08161072.7, filed Jul. 24, 2008, the entire content of which is incorporated herein by reference in its entirety.
The present invention relates to a method for monitoring usage of an encrypted broadcast service in a secure client module, a secure client module for monitoring usage of an encrypted broadcast service, a signal comprising an encrypted entitlement control message for enabling monitoring usage of an encrypted broadcast service in a secure client module, and a signal comprising an encrypted entitlement management message for enabling monitoring usage of an encrypted broadcast service in a secure client module.
In a conditional access system a broadcast service, e.g. a television program or movie, is typically broadcasted to a client device in an encrypted format. Control words required for decrypting the encrypted broadcast service are transmitted from a head-end system to a secure client module connected to the client device regularly in entitlement control messages (ECMs). For increased security, the ECMs are encrypted with an ECM key that is made available by the head-end system to the secure client module when authorized, e.g. when the client has a subscription to the broadcast service. The ECM key is transmitted from the head-end system to the authorized secure client module in an entitlement management message (EMM). The EMM is usually also encrypted and decryptable with an EMM key hardcoded into the secure client module.
The client device and secure client module provide decryption of the encrypted broadcast service, enabling an end-user device to display or record the decrypted broadcast service. A set-top box is a known example of a client device. A smartcard inserted into the set-top box functions as secure client module. A television set or video recorder as end-user device can e.g. be used to display or record a decrypted television program of movie.
The client device, secure client module and end-user device can be integrated into a single end-user device. Examples of a single end-user device are a mobile phone, a smartphone, a computer, a notebook and a PDA.
Usage of an encrypted broadcast service is typically monitored by a vendor specific monitoring module in the client device. The monitoring module captures requests from the end-user for a broadcast service to generate a usage report for the broadcast service. Requests are e.g. made by using a remote control on the client device and by choosing services from an electronic service guide presented to the end-user on the end-user device. For deriving the status of the broadcast service, vendor specific triggers, as implemented by the vendor in the client device, are used.
There is a need in the art for a non-vendor specific solution of monitoring usage of encrypted broadcast services.
According to various embodiments, a method is proposed for monitoring usage of an encrypted broadcast service in a secure client module. The secure client comprises a memory and is communicatively linked to a client device. The method comprises receiving an encrypted entitlement control message from the client device. The method further comprises decrypting the encrypted entitlement control message. The method further comprises obtaining a control word from the decrypted entitlement control message. The method further comprises transmitting the control word to the client device for decrypting the encrypted broadcast service. The method further comprises obtaining a service identifier from the decrypted entitlement control message. The service identifier is indicative of the encrypted broadcast service. The method further comprises generating, in dependence of the decrypted entitlement control message, status data being indicative of a status of the broadcast service. The method further comprises storing the service identifier and the status data in the memory of said secure client module.
According various embodiments, a secure client module is proposed to monitor usage of an encrypted broadcast service. The secure client module is communicatively linked to a client device. The secure client module comprises a memory. The secure client module further comprises a receiver module configured to receive an encrypted entitlement control message. The secure client module further comprises a decryptor configured to decrypt the encrypted entitlement control message. The secure client module further comprises a processing module. The secure client module further comprises a first transmitter module configured to provide a control word to the client device for decrypting the encrypted broadcast service. The processing module is configured to obtain the control word and a service identifier from the decrypted entitlement control message. The service identifier is indicative of the encrypted broadcast service. The processor module is further configured to generate, in dependence of the decrypted entitlement control message, status data being indicative of a status of the broadcast service. The processor module is further configured to store the service identifier and the status data in the memory.
Thus, the method advantageously enables a non-vendor specific monitoring of usage of encrypted broadcast services in a secure client module, using entitlement control messages as input for the monitoring.
The embodiments of claims 2 and 8 advantageously enable detection of a start or an end of the broadcast service.
The embodiments of claims 3 and 9 advantageously enable an alternative detection of an end of the broadcast service. The embodiments of claims 4 and 10 advantageously enable enabling or disabling the monitoring of usage of the encrypted broadcast service identified by the service identifier.
The embodiments of claims 5 and 11 advantageously enable the secure client module to transmit the service identifier and status data to an external server as identified in the entitlement management message.
The embodiments of claims 6 and 12 advantageously enable enabling or disabling the monitoring of usage of all broadcast services.
The embodiment of claim 13 advantageously enables a SIM card in a mobile phone to perform the monitoring of usage of an encrypted broadcast service.
According to various embodiments, a control signal comprising an encrypted entitlement control message is proposed to enable monitoring usage of an encrypted broadcast service in a secure client module. The encrypted entitlement control message is decryptable by the secure client module. The encrypted entitlement control message comprises a control word to decrypt the encrypted broadcast service. The encrypted entitlement control message further comprises a service identifier being indicative of the encrypted broadcast service. The encrypted entitlement control message further comprises a monitoring instruction to enable or disable storing of the service identifier and status data being indicative of a status of the broadcast service in the secure client.
Thus, the control signal advantageously enables the secure client module to monitor usage of the encrypted broadcast service identified by the service identifier.
According to various embodiments, a management signal comprising an encrypted entitlement management message is proposed to enable monitoring usage of an encrypted broadcast service in a secure client module. The encrypted entitlement management message is decryptable by the secure client module. The encrypted entitlement management message comprises a network address of an external server operable to enable the secure client module to transmit a service identifier being indicative of the encrypted broadcast service and status data being indicative of a status of the broadcast service to the external server using the network address.
Thus, the management signal advantageously enables the secure client module to transmit the service identifier and status data to an external server as identified in the entitlement management message.
Hereinafter, embodiments of the invention will be described in further detail. It should be appreciated, however, that these embodiments may not be construed as limiting the scope of protection for the present invention.
Aspects of the invention will be explained in greater detail by reference to exemplary embodiments shown in the drawings, in which:
The conditional access system shown in
Other examples of single end-user devices are a mobile phone, PC, notebook, or any other end-user device integrating the functionality of a secure client module 1, client device 2 and play back module 5. Depending on the type of single end-user device 6, the secure client module 1 can be implemented as a SIM card, smartcard, surface mounted device, or any other device implementing the functionality of the secure client module. It is possible that the secure client module 1, client device 2 and play back module 5 are separate modules, i.e. not integrated into a single end-user device, or only partly integrated.
The head-end system 4 transmits the encrypted television program in an encrypted broadcast signal (indicated by ‘c’) to the client device 2. An EMM is transmitted in a management signal (indicated by ‘b’) from the head-end system 4 to the SIM card 1 via the intermediary of the client device 2. The EMM enables the SIM card 1 to decrypt ECMs transmitted in a control signal (indicated by ‘a’) from the head-end system 4 to the SIM card 1 via the intermediary of the client device 2. The SIM card 1 decrypts the ECMs to obtain CWs. The CWs are subsequently transmitted in a control word signal (indicated by ‘d’) to a decryptor 21 in the client device 2. Decryptor 21 decrypts the encrypted television program using the received CWs and the decrypted television program is provided in a decrypted broadcast signal (indicated by ‘f’) to the mobile television application 5 for playback.
The signals a, b, c, d and f are typically suitable for carrying data packets. This also applies to signal e, which will be explained below.
To allow the television program to be decrypted without delays, the ECMs—and thus the CWs—are transmitted synchronously with the encrypted television program. A service identifier (SID) in the ECM indentifies the television program that is associated with the CWs.
Each time that the SIM card receives a new ECM, it is derived that the end-user is viewing the television program identified by the SID. This derived information is used in the SIM card for monitoring the usage of the encrypted broadcast service, i.e. in the example of
In
In the example of
An ECM is received from the head-end system 4 via the intermediary of client device 2 in receiver module 11. The decryptor 12 decrypts the ECM using an ECM decryption key stored in the memory 10. The ECM decryption key required for decrypting the ECM is e.g. obtained in the past from an EMM received from the head-end system 4 via the intermediary of the client device 2 in the receiver module 11.
From the decrypted ECM one or more CWs and the SID are obtained. The CWs are transmitted via the first transmitter module 14 to the decryptor 21 for decrypting the encrypted television program identified by the SID.
The processing module 13 keeps track of the ECMs received and generates status data being indicative of the status of the viewing of the television program in the mobile television application 5. The status data comprises e.g. an indication that and when the television program is being viewed. Together with the SID the status data is stored in the memory 10 for later use.
Optionally, processing module 13 compares the SID obtained from the ECM with the latest SID stored in the memory 10. If the SID obtained from the ECM differs from the latest SID stored in the memory 10, then it is derived that another television program has started. For the television program identified by the SID stored in the memory 10 it is concluded that viewing of that television program has ended. For the television program identified by the SID obtained from the ECM it is concluded that viewing of that television program has started. Status data is generated indicating that the previous television program has ended and a new television program has started. The status data is stored in the memory 10 together with the corresponding SIDs.
ECMs are received in a predefined time interval called a crypto-period. Typically the crypto-period is set to 30 seconds, but other settings are possible. The CWs received with an ECM can be used for 30 seconds by decryptor 21 to decrypt the encrypted television program. After 30 seconds the television program will be encrypted using another CW, which has to be obtained from a new ECM. Optionally, if no ECM is received 30 seconds after having received the previous ECM, it is concluded that the end-user stopped watching the television program. The latest SID stored in the memory 10 is used to identify the television program that the end-user stopped watching. Status data is generated indicating that the end-user stopped watching the television program identified by the SID. The status data is stored in the memory 10 together with the SID.
Optionally, the ECM comprises a first monitoring instruction, e.g. in the form of a specific bit pattern. When the processing module 13 detects the specific bit pattern in the decrypted ECM, no status data will be generated and stored. Thus the head-end system 4 can enable or disable the monitoring of the usage of encrypted broadcast services on a per service basis. If e.g. only sport television programs are to be monitored, all ECMs except for the ECMs associated to the sport television programs contain the specific bit pattern.
Alternatively the specific bit pattern is present in ECMs associated to television programs that are to be monitored and upon detection of the bit pattern the status data will be generated. ECMs without the specific bit pattern cause the associated television program not to be monitored. Yet in another alternative both ECMs associated with television programs to be monitored and ECMs associated with television programs not to be monitored contain a specific bit pattern, which bit pattern indicates whether or not to monitor the associated television program.
The status data stored in the memory 10 is transmitted to an external server 3 using the second transmitter module 15 of the SIM card 1. In
It is possible that the status data is transmitted to the external server 3 without using the client device 2. Alternatively the status data is transmitted to the external server 3 transparently via the intermediary of the client device 2. The second transmitter module 15 or client device 2 is thereto communicatively linked to a communication module (not shown in the figures) of the smartphone 6, enabling, in case of a smartphone as single end-user device 6, communication with the head-end system in accordance with e.g. a mobile phone standard such as GSM, GPRS or UMTS.
The status data can be transmitted as raw data, i.e. as stored in the memory 10, or in any structured data format. In various embodiments, the status data is transmitted in a mark-up language such as XML or HTML.
The address used by the SIM card 1 to address the external server 3 is, in various embodiments, obtained from an EMM received from the head-end system 4 via the intermediary of the client device 2. The EMM is received in the SIM card by the receiver module 11. Decryptor 12 decrypts the EMM using an EMM decryption key pre-stored on the SIM card, e.g. in the memory 10 or a read-only-memory (ROM) module not shown in
Optionally, the EMM comprises a second monitoring instruction, e.g. in the form of a specific bit pattern. When the processing module 13 detects the specific bit pattern in the decrypted EMM, the monitoring of usage of encrypted broadcast services is disabled for all services.
In
To obtain the CWs for decrypting the encrypted television program, in 100 an encrypted ECM is received from the head-end system 4 via the intermediary of the client device 2. The ECM is decrypted in 101 and—if a CW is present in the ECM, which is determined in 201—the CW is obtained from the decrypted ECM and transmitted to decryptor 21 in the client device 2 in 102 and 103.
In 202 it is determined if there is a SID in the ECM. If this is the case, then the SID is obtained from the decrypted ECM in 104 and status data is generated for the television program identified by the SID in 105. The status data and SID are stored in the memory 10 in 106.
It is possible to skip one or more operations as described, e.g., the determination 201 and 202 are optionally not performed, resulting in all the other operations always being performed. It is possible to alter the order of the operations. 102 and 103 can e.g. be performed after 104. It is possible to perform operations in parallel. 102 and 103 can e.g. be performed in parallel to 104, 105 and 106.
In
100-106 and 201-202 are similar to the operations described for
If the SID obtained from the ECM differs from the latest SID stored in the memory 10, then it is derived that another television program has started. For the television program identified by the SID stored in the memory 10 it is concluded that viewing of that television program has ended. For the television program identified by the SID obtained from the ECM it is concluded that viewing of that television program has started. Status data is generated indicating that the previous television program has ended (105b) and a new television program has started (105a).
In 206 it is determined if a first monitoring instruction is present in the ECM. If this is the case, the first monitoring instruction is obtained from the decrypted ECM in 109. Depending on the value of the first monitoring instruction, which is determined in 110, the SID and status data is stored in the memory 10.
After receiving the ECM in 100, the amount of time lapsed since receiving the ECM can be tracked. This is indicated by 108 where the amount of time is calculated. In 205 it is determined if the amount of time lapsed exceeds a predefined amount of time. If this is the case, then in 105c the status data is set to indicate that watching the television program has ended.
At any time an EMM can be received, which is indicated by 111. In 112 the EMM is decrypted. In 207 it is determined if there is a second monitoring instruction present in the EMM. If this is the case, then in 115 the monitoring instruction is obtained from the EMM, and depending on the value of the monitoring instruction, which is determined in 116, the monitoring of usage of broadcast services is enabled or disabled for all services. In case monitoring is to be disabled, a signal is e.g. given to 202 to stop the process there.
If the EMM contains a network address of an external server 3, then this address is obtained from the decrypted EMM in 113. This network address is used in 114 to address the external server 3 when transmitting the SID and status data.
The order of the operations in
Number | Date | Country | Kind |
---|---|---|---|
08161072.7 | Jul 2008 | EP | regional |