Smartphone-based conditional access system
By using smart phones as building blocks in the CA system and allocating a subset of service keys based on the security profile, the problems of vulnerability and single point failure of existing CA systems are solved, achieving higher security and multi-point protection.
Patent Information
- Application Number
- CN202110292488.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-03-18
- Filing Date
- 2021-03-18
- Publication Date
- 2025-03-14
- Estimated Expiration
- 2041-03-18
AI Technical Summary
Existing conditional access (CA) systems are vulnerable to cloning, CA service manipulation, authorization manipulation, key sharing, and content sharing, and hardware-based solutions increase costs and have single point of failure.
Using a smart phone as the building block of the security-enhanced CA system, the device key is obtained and positioned by executing the method at the front end, and the user's access to the channel is adjusted during the authorization cycle, the security level of the device is determined based on the security profile, and the corresponding subset of service keys is allocated.
Improves the security of the CA system, avoids single point of failure, enhances the protection of media content, and reduces the risks of cloning and key sharing.
Smart Images

Figure CN113497960B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure generally relates to conditional access to media content from an end-user device. Background Art
[0002] Conditional access (CA) systems are exposed to various attacks, such as cloning, CA service manipulation, entitlement manipulation, key sharing and content sharing. In order to reduce these attacks, some CA systems rely on security-enhanced set-top box (STB) chips as security anchors. However, such hardware-based solutions drive up costs and cause single point failures. Some solutions attempt to enhance security by applying watermarks. Such software-based solutions have limitations. For example, downstream support cannot be relied on in front-end-based watermarks, for example, content detection in non-unicast systems may take a long time. In another example, because client-based watermarks rely on device security, it is expensive to perform watermarking in STBs. BRIEF DESCRIPTION OF THE DRAWINGS
[0003] So that those of ordinary skill in the art can appreciate the present disclosure, a more particular description may be had by reference to aspects of certain illustrative embodiments, some of which are illustrated in the accompanying drawings.
[0004] Figure 1 is a block diagram of an exemplary conditional access (CA) system according to some embodiments;
[0005] Figure 2A is a block diagram of an exemplary headend system for secure key allocation and distribution according to some embodiments;
[0006] Figure 2B is a block diagram of an exemplary front-end system for secure content delivery according to some embodiments;
[0007] Figure 3 is a block diagram illustrating decryption of media content in a smartphone-based CA system according to some embodiments;
[0008] Figure 4A-4D is a block diagram illustrating dynamic keys and content delivery in a smartphone-based CA system according to some embodiments;
[0009] Figure 5 is a flow chart illustrating a method for service key allocation and distribution in a smartphone-based CA system according to some embodiments; and
[0010] Figure 6 is a flow chart illustrating a method for secure content delivery in a smartphone-based CA system according to some embodiments.
[0011] As a matter of practice, the various features illustrated in the drawings may not be drawn to scale. Therefore, for the sake of clarity, the sizes of the various features may be arbitrarily enlarged or reduced. In addition, some drawings may not depict all the components of a given system, method, or device. Finally, throughout the specification and drawings, the same reference numerals may be used to represent the same features. DETAILED DESCRIPTION
[0012] Many details are described in order to provide a thorough understanding of the example embodiments shown in the accompanying drawings. However, the accompanying drawings only illustrate some example aspects of the present disclosure and are therefore not to be considered limiting. One of ordinary skill in the art will appreciate that other effective aspects and / or variations do not include all of the specific details described herein. In addition, well-known systems, methods, components, devices, and circuits are not described in detail so as not to obscure more relevant aspects of the example embodiments described herein.
[0013] Overview
[0014] Techniques for using a smartphone or similar end-user device as a building block in a security-enhanced conditional access (CA) system are described herein.
[0015] Smartphones are common end-user devices. Typically, smart phones have more capable resources (e.g., CPU and / or bidirectional transmission paths) than set-top boxes (STBs) and are more difficult to clone. Each embodiment disclosed herein uses smart phones as building blocks in a security-enhanced CA system.
[0016] According to various embodiments, a method is performed at a front end. The method includes obtaining a security profile associated with a first device, a second device paired with the first device, and a user. The method also includes locating a first device key for the first device and a second device key for the second device. The method additionally includes regulating user access to a channel during an authorization period, which also includes determining a first security level for the first device and a second security level for the second device based on the security profile, and allocating a first subset of service keys to be encrypted using the first device key and a second subset of service keys to be encrypted using the second device key based on the first security level and the second security level. The method also includes sending the first subset of service keys to the first device and sending the second subset of service keys to the second device.
[0017] According to various embodiments, a method is performed at a front end. The method includes: scrambling media content associated with a channel during an authorization period, which also includes: encrypting the media content using at least one control word to generate encrypted media content, and selectively encrypting the at least one control word using a service key from a first subset of service keys assigned to a first device or a second subset of service keys assigned to a second device paired with the first device to generate at least one encrypted control word. The method also includes sending the at least one encrypted control word to at least one of the first device or the second device along with the encrypted media content.
[0018] · Example Implementation
[0019] As described above, many conditional access (CA) systems rely on set-top boxes (STBs) to ensure security. Figure 1 A block diagram of an exemplary CA system 100 is illustrated. The exemplary CA system 100 includes a server side and a client side, as indicated by dashed lines. For example, the server side may include a front end 110, and the client side may include a subscriber device 160, such as a STB. In some embodiments, the front end 110 includes a device key generator 112 that generates a unique device key 114 on demand and delivers the unique device key 114 to the subscriber device 160. Once delivered, the subscriber device 160 stores the received device key 114 in an internal storage device or an external storage device 162. In some embodiments, the subscriber device 160 includes the device key in the hardware and / or firmware of the subscriber device 160. In such an embodiment, as will be described below, the front end 110 obtains the device key from the client side, for example, during registration and / or pairing.
[0020] In some embodiments, the front end 110 also includes a service key generator 122 and an entitlement management message (EMM) generator 124. The sending of the EMM 128 is typically in response to a request from a subscriber 160 to a service provider. In addition, at the request of the service provider, the service key generator 122 generates a service key 126 and provides the service key 126 to the EMM generator 124. To generate the EMM 128, the EMM generator 124 obtains subscriber data from an internal storage device or an external storage device 116, including at least one authorization 118 for the subscriber (e.g., payment for a particular channel), and combines it with the service key 126 to form the EMM 128. The EMM 128 typically includes fields such as the authorization 118 for the subscriber, the service key 126 encrypted with the device key 114, and / or a data integrity check field.
[0021] In some embodiments, the front end 110 also includes a control word (CW) generator 132, a scrambler 134, and an entitlement control message (ECM) generator 136. The control word generator 132 generates a control word 138 and provides the control word 138 to the scrambler 134. The scrambler 134 obtains unencrypted media content 142 from an internal media content repository or an external media content repository 143, and generates encrypted media content 146 by encrypting the media content 142 using the control word 138. For further protection, the ECM generator 136 encrypts the control word 138 using the service key 126 provided by the service key generator 122. The encrypted control word is then included in the ECM 144 to be sent together with the encrypted media content 146. As used herein, the terms "scrambling" and "encryption" are used interchangeably, and in some embodiments, the terms "scrambler" and "encryptor" are also used interchangeably.
[0022] On the client side, in some embodiments, in addition to the internal storage device or external storage device 162, the subscriber device 160 includes an EMM decoder 166, an ECM decoder 172, and a descrambler 176. In some embodiments, once the subscriber device 160 receives the encrypted media content 146, the descrambler 176 decrypts the encrypted media content 146 to prepare for rendering. In order to decrypt the media content 146, in some embodiments, the EMM decoder 166 obtains the device key 164 from the storage device 162 and applies the device key 164 to the EMM 128 to derive the authorization 168 and the decrypted service key 169 for the subscriber. The EMM decoder 166 also provides the authorization 168 and the decrypted service key 169 to the ECM decoder 172. The ECM decoder 172 then applies the decrypted service key 169 to the ECM 144 to derive the decrypted control word 174. The decrypted control word 174 is then used by the descrambler 176 to decrypt the encrypted media content 146. As used herein, the terms "descrambling" and "decryption" may be used interchangeably, and in some embodiments, the terms "descrambler" and "decryptor" may also be used interchangeably.
[0023] In some embodiments, in the key-based CA system 100, the key in each level is encrypted or decrypted using the key of the previous level. For example, the device key 114 is used to encrypt the service key 126 in the front end 110 and is used to decrypt the service key 169 on the subscriber device 160. In some embodiments, the key of the previous level is used to generate keys and / or decrypt in other levels. For example, the device key 114 is used as a seed for generating the service key 126 and for deriving the service key 169. In addition, in some embodiments, one key can be generated based on multiple seeds (or keys) and vice versa.
[0024] like Figure 1 As shown in, CA system 100 is exposed to various attacks. For example, in an attempt to view the content that people have not paid for, a user may use an illegal device to copy the uniqueness of subscriber device 160 for key and / or content sharing. In another embodiment, a subscriber who has purchased a service (e.g., service A) but has not paid for another service (e.g., service B) may attempt to manipulate the authorization (e.g., in EMM 128) for service A to obtain access to service B. In yet another embodiment, a user may modify the authorization information in EMM 128 to extend the service after the subscription deadline. Typical off-the-shelf STBs have limited hardware resources and software resources to provide strong protection for encrypted media content 146, ECM 144, EMM 128 and / or device key 114. Like this, the CA system that only relies on such STB as a security anchor is vulnerable to the above-mentioned attacks.
[0025] Smartphones (and other end-user devices, such as tablet computers, wearable devices, computers, and / or portable multifunction devices, etc.) are becoming increasingly common and affordable around the world. Typically, a smart phone is paired with its human owner and is capable of two-way communication with a remote server. In addition, within a close range, a smart phone is capable of establishing a secure two-way communication channel with another device, for example, via Wi-Fi and / or Bluetooth. In addition, relative to off-the-shelf STBs, smart phones have more capable resources (e.g., a more powerful CPU) and are more difficult to clone. Therefore, the smart phone-based CA system disclosed herein according to an embodiment utilizes the above-mentioned characteristics of smart phones (e.g., affordability, communication capabilities, processing power, and / or security), and uses smart phones as building blocks for security enhancement.
[0026] Figure 2A An exemplary smart phone-based CA system 200A for security key distribution and distribution according to some embodiments is illustrated. CA system 200A includes a server side and a client side, as indicated by a dotted line. In some embodiments, the server side includes a front end 210 for sending media content, and the client side includes a plurality of receiving devices used by a subscriber 260 (or user 260), for example, a smart phone 270 and a STB / TV 280. In the smart phone-based CA system 200A, the smart phone 270 and the STB / TV 280 are paired so that the smart phone 270 becomes a building block of the CA system 200A. In some embodiments, the front end 210 includes a receiver 220 for receiving information from the smart phone 270, a storage device 222 for storing a security profile generated based on the information received from the receiver 220, a device key generator 230 for locating and / or delivering a device key to a receiving device used by the subscriber 260, a controller 240, and a transmitter for key distribution.
[0027] In some embodiments, the application is installed on both the STB / TV 280 and the smart phone 270. When the subscriber 260 registers with the service provider and creates a user account (e.g., via the application on the smart phone 270), the profile of the smart phone 270 is sent from the smart phone 270 to the front end 210 along with the user profile, e.g., via the transceiver 274 of the smart phone and through the receiver 220. In some embodiments, the profile of the smart phone 270 includes, but is not limited to, a hardware profile, a software profile, and / or a firmware profile of the smart phone 270. In addition, in some embodiments, the STB / TV 280 displays (e.g., on a display of the STB and / or TV) an identifier of the STB / TV 280 and other information (e.g., a hardware profile, a software profile, and / or a firmware profile of the STB / TV 280).
[0028] In some embodiments, when the smart phone 270 used by the subscriber 260 is within a threshold distance from the STB / TV 280, the smart phone 270 obtains the displayed information, for example, by scanning a QR code displayed on the STB / TV 280, to establish pairing. In some embodiments, the smart phone 270 and the STB / TV 280 exchange information and establish a secure near-range communication channel through one or more transceivers 274 (e.g., WiFi and / or Bluetooth) of the smart phone 270 and one or more transceivers 284 (e.g., WiFi and / or Bluetooth) of the STB / TV 280. Once the smart phone 270 and the STB / TV 280 are paired, the smart phone 270 sends the information of the STB / TV 280 to the front end 210 along with the information exchanged with the STB / TV 280, for example, via the transceiver 274 and through the receiver 220. The front end 210 in turn stores the received information in the internal storage device or the external storage device 222 as a security profile for the subscriber 260, along with the information of the smartphone 270 and / or the user profile of the subscriber 260 received during registration. In some embodiments, the security profile for the subscriber 260 changes over time. For example, in the event of a violation of a specific phone model, the front end 210 (e.g., the controller 240) updates the security profile related to the specific phone model stored in the storage device 222. Therefore, if the security profile for the subscriber 260 indicates that the subscriber 260 uses a specific phone model in the smartphone-based CA system 200A, the update affects the security profile for the subscriber 260, for example, indicating in the profile of the smartphone 270 that the smartphone 270 is less secure.
[0029] In some embodiments, based on the security profile, the device key generator 230 generates a device key suite. In some embodiments, the device key suite includes at least one unique device key for the smartphone 270, denoted as K PHONE , and another unique device key for the STB / TV 280 (different from the device key for the smartphone 270) - denoted as K STB Once generated, the device keys are securely delivered to the smartphone 270 and STB / TV 280, respectively, for example, via one or more transmitters 250 of the front end 210, one or more transceivers 274 of the smartphone 270, one or more transceivers 284 and / or receivers 288 of the STB / TV 280. Upon receiving the corresponding device keys, the smartphone 270 converts the K PHONE is stored in the secure storage device 276 associated with the smart phone 270, and the STB / TV 280 stores K STB is stored in secure storage 286 associated with STB / TV 280. In some embodiments, K PHONE Included in the hardware and / or firmware of smartphone 270, for example, the key is burned into the device at the factory. STB is included in the hardware and / or firmware of the STB / TV 280. In such an embodiment, the front end 210 locates K from the receiving device during registration and / or pairing. PHONE and K STB , for example, the device key generator 230 obtains the device key from information received from the smartphone 270 and / or from a security profile stored in the storage device 222 .
[0030] In some embodiments, during period E for channel C, controller 240 obtains a service key, denoted as {SK C,E 1 ,…SK C,E S}, for example, from the service key generator 122 ( Figure 1 ) is obtained. Based on the security profile stored in the storage device 222, the controller 240 determines the security level of the smart phone 270 and the STB / TV 280. In addition, based on the security level, for the period E and for the channel C authorized to the subscriber 260, the controller 240 decides to use K PHONE How many service keys are encrypted and how many K STB How many service keys are encrypted and the service key {SK C,E 1 ,…SK C,E S} for encryption.
[0031] In some embodiments, instead of determining separate security levels, e.g., one security level for the smartphone 270 and another security level for the STB / TV 280, the controller 240 calculates one security level for a tuple associated with the receiving device, e.g., <STB ID, smartphone ID, communication type between the smartphone and the STB>. In some embodiments, the controller determines the combined security level during pairing and updates the combined security level when at least one of the profile of the smartphone 270 or the profile of the STB / TV 280 changes. For example, based on a newly discovered security vulnerability in the STB / TV 280, the controller 240 lowers the combined security level for the combination of the smartphone 270 and the STB / TV 280. In some embodiments, as will be described below with reference to Figure 3 the controller 240 uses the combined security level to determine whether the receiving device is secure enough to view the type of media content requested.
[0032] In some embodiments, in the case of encrypting the service key using K PHONE the controller 240 instructs the transmitter 250 to send the encrypted service key SK C,E i to the smartphone 270. As used herein, the encrypted service key sent to the smartphone 270 is denoted as SK PHONE . On the other hand, in the case of encrypting the service key using K STB the front-end system 210 sends the encrypted service key SK C,E i to the STB / TV 280. As used herein, the encrypted service key sent to the STB / TV 280 is denoted as SK STB . As will be described below, the encrypted service key will then be used by the respective receiving device to decrypt the encrypted media content. In some embodiments, as described above with reference to Figure 1 the encrypted service key is sent in the EMM 128 along with the authorization for the subscriber 260. When the authorization is renewed, the front-end repeats the service key allocation and distribution process described herein.
[0033] At the receiving end, the controller 272 of the smartphone 270 uses the device key and the service key received from the front-end 210 (e.g., K PHONE and SK PHONE ) to perform decryption, such as by Figure 1Similarly, the controller 282 of the STB / TV 280 uses the device key and service key (e.g., K STB and SK STB ) to perform decryption, such as by Figure 1 The descrambler 176, ECM decoder 172 and EMM decoder 166 in the embodiment perform the functions. Figure 3 As described, controller 272 and controller 282 perform additional functions for security enhancement.
[0034] Figure 2B An exemplary smartphone-based CA system 200B for secure content delivery according to some embodiments is illustrated. In some embodiments, the exemplary smartphone-based CA system 200B uses the CA system described above with reference to Figure 2A The described service key allocation and distribution mechanism is used to protect the content using the service key. Figure 2A and Figure 2B Common elements include common reference numerals, and the differences are described herein for the sake of brevity.
[0035] In some embodiments, the controller 240 obtains unencrypted media content from the media content repository 292. To protect the media content, the controller 240 encrypts the media content using a control word (CW). In some embodiments, the controller 240 obtains the unencrypted media content from the control word generator 294 (e.g., the control word generator 132, Figure 1 ) obtains the control word. When encrypting the media content associated with channel C and for period E, the controller 240 obtains the control word from the control word generator 294. In addition, for the control word, for example, CW i , the controller 240 encrypts the control word using the selected service key, for example, calculating ECW i =F(CW i ,SK C,E l ), where F is a reversible function and is typically an encryption function. In some embodiments, for each ECW i , there is a relationship between which SK is used for the corresponding ECW iIndicator for decryption. In some embodiments, the controller 240 instructs the transmitter 250 to send the indicator to the subscriber 260 to facilitate control word decryption. It should be noted that in some embodiments, there are n CWs and s SKs in a particular cryptographic period. In other words, the controller 240 can choose to use some service keys for each cryptographic period. In this way, the index of the CW and the index of the SK can be different, for example, i is different from l. As used herein, "period" refers to the length of the minimum authorized period, for example, 30 days to 60 days or less. Therefore, in some embodiments, the terms "period" and "authorization period" are used interchangeably. In addition, as used herein, "cryptographic period" refers to the time span in which a specific cryptographic key is approved for use. For example, within each cryptographic period, the control word is changed.
[0036] The controller 240 then causes the transmitter 250 to transmit the encrypted control word, for example, broadcasting the encrypted control word ECW to be received by the STB / TV 280. i In addition, for each media content packet, the controller 240 selects a control word, for example, CW j , and use CW j The media content packets are encrypted, and then the transmitter 250 is caused to send the encrypted media content packets to one of the receiving devices, for example, the encrypted media content is broadcast together with the encrypted control word. In some embodiments, for each encrypted media content packet, there is an indicator about which CW is used to decrypt the corresponding packet. In some embodiments, the controller 240 instructs the transmitter 250 to send the indicator to the subscriber 260 to facilitate media content decryption.
[0037] As mentioned above Figure 2AAs described, based on the security level, in some embodiments, the front end 210 distributes a subset of encrypted service keys to the smart phone 270 and another subset of encrypted service keys (different from the subset given to the smart phone 270) to the STB / TV 280. In this way, a subset of encrypted control words will be decrypted by the smart phone 270, and another subset of encrypted control words will be decrypted by the STB / TV 280. Naturally, it follows that a subset of encrypted media content will be decrypted by the smart phone 270, and another subset of encrypted media content will be decrypted by the STB / TV 280. Therefore, the smart phone-based CA system 200B disclosed herein according to the embodiment extends media content protection to two devices (e.g., the smart phone 270 and the STB / TV 280). Relative to the reliance on a single STB / TV as a security anchor in the previously existing CA system, the multi-point protection in the smart phone-based CA system described herein avoids the single point of failure in the previously existing CA system.
[0038] It should be noted that the components are represented in the exemplary CA systems 200A and 200B for illustrative purposes. Other configurations may be used and / or included in the exemplary CA systems 200A and 200B. For example, in addition to storing security profiles in the storage device 222, authorization and / or other subscriber data may also be stored in the storage device 222. In other words, the components may be divided, combined, and / or reconfigured to perform the functions described herein. In addition, although the components are shown in the exemplary CA systems 200A and 200B, other configurations may be used and / or included in the exemplary CA systems 200A and 200B. For example, in addition to storing security profiles in the storage device 222, authorization and / or other subscriber data may also be stored in the storage device 222. In other words, the components may be divided, combined, and / or reconfigured to perform the functions described herein. Figure 2A and Figure 2B Not shown, but exemplary CA systems 200A and 200B may include other components and / or subcomponents to facilitate secure key and content distribution. For example, device key generator 230 may include one or more transmitters to send device keys to smartphone 270 and / or STB / TV 280.
[0039] References Figure 2A and Figure 2B The various features of the described implementations may be embodied in a variety of forms, and any specific structure and / or functionality described herein is merely illustrative. Specifically, although CA systems 200A and 200B include a smartphone 270, a person of ordinary skill in the art will appreciate that various other types of end-user devices, including but not limited to tablet computers, wearable devices, computers, and / or portable multifunction devices, may be used in place of smartphone 270 to facilitate the security enhancements described herein.
[0040] Figure 3is a block diagram illustrating media content decryption in an exemplary smartphone-based CA system 300 according to some embodiments. In some embodiments, the smartphone-based CA system 300 includes: a first receiving device, such as a smartphone 310, and a second receiving device, such as a STB / TV 320. Although Figure 3 The STB / TV 320 is illustrated as a receiving device for receiving encrypted media content from a head end (not shown), but one or more of the smart phone 310 and the STB / TV 320 are capable of receiving packets and decrypting the packets. Thus, in some embodiments, the smart phone 310 can be a receiving device for receiving encrypted media content from the head end.
[0041] As mentioned above Figure 2A and Figure 2B As explained, the smart phone 310 may include a device for receiving data from the front end 210 ( Figure 2A and Figure 2B ) transceiver 274 receiving the packet ( Figure 2A and Figure 2B In addition, the smart phone 310 may include a controller 272 ( Figure 2A and Figure 2B ) to facilitate decryption. In some embodiments, such as Figure 3 As shown in , smartphone 310 includes a descrambler 312 for decrypting media content packets, an ECM decoder 314 for decrypting control words, an EMM decoder 316 for decrypting service keys and deriving authorization for subscriber 305, and a storage device 318 for storing device keys. In some embodiments, Figure 2A and Figure 2B 272 performs the functions of the descrambler 312, the ECM decoder 314, and / or the EMM decoder 316. Thus, in some embodiments, the functions performed by the descrambler 312, the ECM decoder 314, and / or the EMM decoder 316 are performed by the controller 272 ( Figure 2A and Figure 2B ) implementation.
[0042] Same as above reference Figure 2A and Figure 2B As explained, the STB / TV 320 may include a device for receiving data from the front end 210 ( Figure 2A and Figure 2B )Receiver 288 receiving the packet ( Figure 2A and Figure 2B In addition, the STB / TV 320 may include a controller 282 ( Figure 2A and Figure 2B ) for easy decryption. Figure 3In the embodiment, STB / TV 320 includes a descrambler 322 for decrypting media content packets, an ECM decoder 324 for decrypting control words, an EMM decoder 326 for decrypting service keys and deriving authorization for subscriber 305, and a storage device 328 for storing device keys. Thus, in some embodiments, Figure 2A and Figure 2B The illustrated controller 282 performs the functions of a descrambler 322 , an ECM decoder 324 , and / or an EMM decoder 326 .
[0043] In some embodiments, subscriber 305 makes a purchase through smartphone 310, for example, subscriber 305 selects channel C to purchase through an application on smartphone 310. Smartphone 310 sends the purchase request to the front end. In some embodiments, following the above reference Figure 2A In the described process, based on the security profile, the front end determines whether the receiving device (e.g., smart phone 310 and / or STB / TV 320) is secure enough to view the media content, for example, by calculating the security level of the receiving device based on the security profile for the subscriber 305. Other methods for analyzing the security features of the receiving device and for determining whether the receiving device is secure enough to view the content may be used instead of or in addition to the calculation of the security level.
[0044] Where the receiving device is sufficiently secure (e.g., one or both of the security levels are above a threshold associated with the type of media content), subscriber 305 submits payment (e.g., via a payment processing application on smartphone 310) and authorization for subscriber 305 is recorded at the front end (e.g., at Figure 1 The subscriber data storage device 116 and / or Figure 2A and Figure 2B In some embodiments, when the security level of the combination of smart phone 310 and STB / TV 320 is above a threshold, subscriber 305 submits payment and the authorization for subscriber 305 is recorded. Figure 2A According to the described key distribution and distribution process, the front end sends the device key and / or service key to the smart phone 310 and / or STB / TV 320. On the other hand, in the case where one or more of the receiving devices have weak security capabilities, the front end will not send the device key and / or service key to the unsecured device.
[0045] For example, the threshold associated with high-value media content (such as 4K content) can be higher than the threshold associated with lower resolution media content. Based on the security profile for subscriber 305, including the type of media content that subscriber 305 wants to view, the profile of smart phone 310 and / or the profile of STB / TV 320, the front end determines that STB / TV 320 and / or smart phone 310 cannot be secure enough to watch high-value 4K media content, and will not distribute the key for content viewing. On the other hand, in the case where subscriber 305 requests to watch lower resolution media content, based on the authorization information and the profiles of smart phone 310 and STB / TV 320, the front end determines that STB / TV 320 and / or smart phone 310 can be secure enough to watch such media content, and will distribute the key accordingly.
[0046] To view media content, in some embodiments, subscriber 305 selects media content to view, for example, by selecting the content to view from a package that subscriber 305 has purchased. Using pairing between smart phone 310 and STB / TV 320 (e.g., via transceiver 284 of STB / TV 280 and transceiver 274 of phone 270, Figure 2A and Figure 2B ), the smart phone 310 generates a request to the STB / TV 320 and instructs the STB / TV 320 to receive media content corresponding to the selected channel from the head end, for example, using the smart phone 310 as a remote control to signal the STB / TV 320. In response to the channel viewing request, in some embodiments, the STB / TV 320 tunes to the requested channel and receives encrypted media content packets associated with the channel from the head end through a unidirectional communication channel (e.g., via satellite communication).
[0047] For each received encrypted media content packet, the STB / TV 320 determines whether to encrypt it using the control word that can be generated. 1 The associated control word CW 1 SK for decryption C,E 1 It's SK STB In the case of a part of the STB / TV 320 Packet 1 On the other hand, in the case of a second media content packet Packet 2 The associated control word CW 2 SK for decryption C,E 2 It's SK PHONEIn the case of a portion of the STB / TV 320, the packet (although still encrypted) is transmitted along with the encrypted control word CW 2 Together, the data is forwarded to the smartphone 310 , for example, via a secure communication channel between the smartphone 310 and the STB / TV 320 .
[0048] Specifically, on the STB / TV 320 side, in order to 1 Decryption is performed, and the EMM decoder 326 of the STB / TV 320 determines that the EMM decoder 326 has received the encrypted service key SK C,E x , the service key SK C,E x It is the SK in the EMM message from the front end STB The EMM decoder 326 obtains the device key K from the storage device 328. STB , and the device key K STB Apply to SK C,E x to the encrypted service key SK in, for example, EMM C,E x , to SK C,E x Decrypted SK C,E x is provided to the ECM decoder 324 for decoding the encrypted CW received from the head end, for example in the ECM 1 To decrypt CW 1 To decrypt, the ECM decoder 324 converts the decrypted SK C,E x Applied to encrypted CW 1 To export unencrypted CW 1 , for example, by executing ECW 1 =F(CW 1 ,SK C,E x ) is the inverse function of ). The ECM decoder 324 then converts the unencrypted CW 1 Provided to the descrambler 322, the descrambler 322 uses the unencrypted CW 1 To Packet 1 Decrypt.
[0049] On the smartphone 310 side, the smartphone 310 receives the encrypted Packet forwarded by the STB / TV 320 2 In response to receiving the encrypted Packet 2 , the EMM decoder 316 of the smart phone 310 determines whether the EMM decoder 316 has received the encrypted service key SKC,E y , the service key SK C,E y It comes from SK in the front-end EMM PHONE part of the encrypted service key SK C,E y It is the SK in the EMM from the front end PHONE In the case of a part of PHONE , and the device key K PHONE Apply to SK C,E y To decrypt SK C,E y . Then the decrypted SK C,E y is provided to the ECM decoder 314, and the ECM decoder 314 converts the decrypted SK C,E y Applied to encrypted CW from the front end, e.g. in ECM 2 , to export unencrypted CW 2 , for example, by executing ECW 2 =F(CW 2 ,SK C,E y ) is the inverse function of ). The ECM decoder 314 then converts the unencrypted CW 2 Provided to the descrambler 312, the descrambler 312 uses the unencrypted CW 2 To Packet 2 The smartphone 310 thus decrypts the encrypted media content packets and transmits the unencrypted packets to the STB / TV 320 via the secure channel established during pairing. 2 Sent back to STB / TV 320.
[0050] In some embodiments, for performance reasons, the smartphone 310 generates a SK PHONE 310, and the decrypted service key is sent to the STB / TV 320. In such an embodiment, instead of sending the encrypted media content packets and / or the encrypted control words to the smart phone 310, the STB / TV 320 receives the decrypted service key from the smart phone 310 and uses the decrypted service key to decrypt the encrypted media content packets and / or the encrypted control words. In some embodiments, for security reasons, the decrypted service key is sent over a secure channel between the STB / TV 320 and the smart phone 310. For example, the decrypted service key can be locally encrypted before being sent.
[0051] In some embodiments, in order to further protect the media content, the smart phone 310 embeds a watermark in the packet sent back to the STB / TV320. In some embodiments, the embedded watermark includes a unique identification so that the media content is identifiable, thereby providing a deterrent to pirated copies. In such an embodiment, the smart phone 310 receives encrypted media content, decrypts it, embeds a watermark, and sends the decrypted media content back to the STB / TV320. Like this, the secure CA system 300 utilizes the communication capability and / or processing capability of the smart phone 310 to enhance security.
[0052] Despite Figure 3 282 ( Figure 2A and Figure 2B ) of a display (eg, a TV display and / or a STB display), and the smart phone 310 may include an image capture device (eg, a scanner or a camera). When the controller 282 ( Figure 2A and Figure 2B ) instructions, the display displays an identifier of the STB / TV 320 that can be scanned by the smart phone 310, such as a QR code with embedded information of the STB / TV 320. According to some embodiments, the smart phone 310 scans the displayed information and extracts the information to facilitate pairing.
[0053] The smartphone-based CA system disclosed herein according to an embodiment improves security relative to previously existing CA systems. By including smartphones as building blocks in the smartphone-based CA system, the smartphone-based CA system utilizes more capable receiving devices to protect media content from various attacks and avoids having a single point of failure as in previously existing CA systems.
[0054] For example, cloning is preventable because cloning a smartphone is more difficult to achieve than cloning an off-the-shelf STB. In another embodiment, because each service has its own unique authorization and the encrypted service key included in the EMM is specific to a channel for a period of time, the authorization cannot be reused for another service. The authorization also cannot be reused for the same service and another period of time. Therefore, the above reference to Figure 2AThe described key distribution and distribution mechanism protects the media content from potential CA service manipulation and authorization manipulation. In yet another embodiment, because a subset of packets can be decrypted by a smartphone, a hacker must distribute the encrypted control word to the smartphone to obtain the decrypted control word for content decryption. Thus, control word sharing is complicated. Furthermore, because smartphones can embed watermarks into the decrypted media content packets of the STB / TV, content sharing can be detected. Thus, the above reference Figure 2B The described secure content delivery mechanism protects media content from potential key sharing and content sharing.
[0055] In some embodiments, the key and content delivery mechanisms described herein are dynamic. Figure 4A-4D is a block diagram illustrating dynamic key and content delivery in an exemplary smartphone-based CA system 400A-400D according to some embodiments. Elements common to these figures include common reference numbers, and the differences are described herein for brevity.
[0056] to this end, Figure 4A 4 is a block diagram illustrating service key allocation and distribution in an exemplary CA system 400A, wherein a smartphone 420 used by a subscriber 405 is more secure than a STB / TV 1 430-1 (eg, an off-the-shelf STB), according to some embodiments. Figure 4A , subscriber 405 uses smart phone 420 to send a message to front end 410 (e.g., front end system 210, Figure 2A and Figure 2B ) registration. The front end 410 receives the configuration file of the smart phone 420 (e.g., hardware serial number, model number, configuration, firmware version, installed software, etc.) and the user profile of the subscriber 405 (e.g., user information and / or user authorization). Once the smart phone 420 is paired with the STB / TV 1 430-1, the smart phone 420 obtains the configuration file of the STB / TV 1 430-1 and sends the configuration file of the STB / TV 1 430-1 to the front end 410. As described above with reference to Figure 2A and Figure 2B As explained, based on the profile, the front end 410 (eg, the controller 240, FIG. 2 ) stores a security profile for the subscriber 405, locates two different device keys, and / or converts a device key, such as K PHONE Distribute to smartphone 420 and pass another device key such as K STB1 Distributed to STB / TV 1 430-1.
[0057] In some embodiments, as described above with reference to Figure 2A and Figure 2BAs explained, when establishing a security profile for subscriber 405 (e.g., including a profile of smart phone 420, a profile of STB / TV 1 430-1, and a user profile of subscriber 405), front end 410 calculates a first security level for smart phone 420 and a second security level for STB / TV 1 430-1, for example, by calculating the corresponding security levels based on attributes of security features in hardware, software, and / or firmware assigned to the corresponding receiving devices.
[0058] In addition, based on the security level, the front end 410 determines how many of the service keys will be distributed and used by the smart phone 420, and how many will be distributed and used by the STB / TV 1 430-1. For example, in the case where the first security level is higher than the second security level (e.g., the smart phone 420 has more hardware capabilities, software capabilities, and / or firmware capabilities than the STB / TV 1 430-1 to protect media content from hacker attacks), the front end 410 allocates more service keys to the smart phone 420 than to the STB / TV 1 430-1.
[0059] like Figure 4A As shown in FIG. 4 , for example, the front end 410 obtains three service keys, for example, {SK C,E 1 ,SK C,E 2 ,SK C,E 3 For a specific period E and for each channel C authorized to the subscriber 405, based on the security level, the front end 410 assigns two service keys to the smartphone 420, for example, SK PHONE ={SK C,E 1 ,SK C,E 2}, and assign a service key, for example, SK STB1 =SK C,E 3 The front end 410 then uses the device key K PHONE Service key set SK PHONE Encrypted and using the device key K STB1 Service key SK STB1 The encrypted service key is then securely sent to the corresponding receiving device, for example, PHONE The set is sent to the smartphone 420 and the encrypted SK STB1 Sent to STB / TV 1 430-1. About Figure 4AThe 2:1 ratio of service key distribution and distribution shown in is only exemplary. Those skilled in the art will appreciate that other ratios based on the calculation of security level can be determined and / or configured by the front end 410, which is further determined based on the security profile of the subscriber 405.
[0060] Figure 4B 4 is a block diagram illustrating service key allocation and distribution in an exemplary CA system 400B, wherein STB / TV 2 430-2 (e.g., a STB with a security chip) is substantially as secure as smartphone 420 according to some embodiments. Figure 4B 2, the smart phone 420 is paired with the STB / TV 2 430-2, for example, through a near range communication transceiver, such as the transceiver 274 of the smart phone 270 and the transceiver 284 of the STB / TV 280 (FIG. 2). Once the smart phone 420 is paired with the STB / TV 2 430-2, the smart phone 420 obtains the profile of the STB / TV 2 430-2 and sends the profile of the STB / TV 2 430-2 to the head end 410. Based on the profile, the head end 410 (e.g., the controller 240, FIG. 2) stores a security profile for the subscriber 405, which includes but is not limited to the profile of the smart phone 420, the profile of the STB / TV 2 430-2, and / or the user profile of the subscriber 405. The head end 410 also stores a device key (e.g., K PHONE ) is located and / or distributed to the smartphone 420 and another device key (e.g., K STB2 ) is positioned and / or distributed to STB / TV 2 430-2.
[0061] In some embodiments, as described above with reference to Figure 2A and Figure 2B As explained, based on the security profile for the subscriber 405, the front end 410 calculates a first security level for the smart phone 420 and a second security level for the STB / TV 2 430-2, for example, the corresponding security levels are calculated according to the attributes of the security features in the hardware, software and / or firmware assigned to the corresponding receiving device. In addition, based on the security level, the front end 410 determines how many of the service keys will be distributed and used by the smart phone 420, and how many will be distributed and used by the STB / TV 2 430-2. In the case where the first security level is the same or approximately the same as the second security level (for example, the smart phone 420 has sufficient CPU power to perform encryption and decryption and the STB / TV 2 430-2 has a security-enhanced chip), the front end 410 assigns an equal (or approximately equal) number of service keys to the smart phone 420 and the STB / TV2 430-2.
[0062] For example, in Figure 4B In the example, the front end 410 obtains two service keys, for example, {SK C,E 4 ,SK C,E 5 For a specific period E and for each channel C authorized to the subscriber 405, based on the security level, the front end 410 assigns a service key to the smartphone 420, for example, SK PHONE =SK C,E 4 , and assign a service key, for example, SK STB2 =SK C,E 5 The front end 410 then uses the device key K PHONE Service key SK PHONE Encrypted and using the device key K STB2 Service key SK STB2 The encrypted service key is then securely sent to the corresponding receiving device, for example, PHONE Sent to smartphone 420 and the encrypted SK STB2 Send to STB / TV 2430-2. About Figure 4B The 1:1 ratio of service key allocation and distribution shown in is only exemplary. Those skilled in the art will appreciate that other ratios based on the calculation of security level can be determined and / or configured by the front end 410, which is further determined based on the security profile of the subscriber 405.
[0063] like Figure 4A and Figure 4B As shown in , the security key allocation and distribution mechanism disclosed herein according to an embodiment is dynamic. Based on the security profile, the front end adjusts the number of keys and / or content delivered to the receiving device, for example, periodically or in response to a request. If the receiving device is more capable of protecting the media content, the front end delivers more keys and content to the more secure receiving device. In some embodiments, in the event that one receiving device is compromised, the front end can deliver keys and content to an uncompromised paired device, such as Figure 4C As shown in .
[0064] exist Figure 4CIn some embodiments, the front end 410 obtains an indication that the STB / TV 430 is damaged. For example, the front end 410 can periodically obtain the configuration file of the smart phone 420, the configuration file of the STB / TV 430 and / or the user profile of the subscriber 405. Based on the analysis of the configuration file, for example, by comparing the signatures of the hardware, software and / or firmware of the smart phone 420 and / or the STB / TV 430, the front end 410 determines whether any tempering of the receiving device has occurred. In some embodiments, using its two-way communication capability, the smart phone 420 periodically obtains the configuration file of the STB / TV 430 by pairing and reports any damage to the front end 410. In response to obtaining the indication of damage, the front end 410 stops sending keys to the STB / TV 430, including but not limited to service keys, control words and / or device keys, and / or media content. In some embodiments, the smart phone 420 stops the communication path between the smart phone 420 and the STB / TV 430, for example, in response to detecting a compromise of the STB / TV 430 by the smart phone 420 and / or in response to being directed by the front end 410 to stop pairing with the STB / TV 430. Thus, without pairing, the compromised STB / TV 430 will not be able to send a portion of the encrypted media content to the smart phone 420 for decryption.
[0065] In conjunction with stopping sending keys and content to the STB / TV 430, the front end 410 increases the number of keys assigned to the smartphone 420, encrypts the service key using the device key assigned to the smartphone 420, and sends the encrypted service key to the smartphone 420. In other words, in one of the receiving devices (e.g., Figure 4C In the case that the STB / TV 430 shown in FIG. 4 is damaged, the CA system described herein according to the embodiment will encrypt the key and send all encrypted keys together with the encrypted media content to the undamaged device. In the case of not having the key, even if the damaged receiving device obtains the encrypted media content, the damaged receiving device will not be able to decrypt the media content and export the media content.
[0066] In addition to being able to dynamically adjust the number of keys and the amount of media content delivered, the secure CA system disclosed herein according to the embodiments is flexible. Specifically, the pairing information included in the security profile enables people to watch authorized media content on different receiving devices.
[0067] For example, in Figure 4AFor high-value media content, such as 4K video, the off-the-shelf STB / TV 1 430-1 may not have capable hardware, firmware, and software to adequately protect 4K video. Thus, in order to view high-value media content, the subscriber 405 may switch to a security-enhanced receiving device, such as, Figure 4B STB / TV 2430-2 with security chip in. Figure 4D Receiving device switching in a smartphone-based CA system 400D is illustrated according to some embodiments.
[0068] exist Figure 4D 4, the smartphone 420 has been disconnected from STB / TV 1 430-1, e.g., when the subscriber 405 and the smartphone 420 move away from STB / TV 1 430-1 and are outside a threshold distance from STB / TV 1 430-1 or disconnected by the subscriber 405 through an application on the smartphone 420. In addition, the smartphone 420 is paired with STB / TV 2 430-2, e.g., when the subscriber 405 and the smartphone 420 move within a threshold distance from STB / TV 2 430-2 or connect by the subscriber 405 through an application on the smartphone 420. Using a short range communication transceiver (e.g., transceiver 274 of smartphone 270 and transceiver 284 of STB / TV 280), Figure 2A and Figure 2B ), a secure close range communication channel is established between the smart phone 420 and the STB / TV 2 430-2.
[0069] In some embodiments, once the smart phone 420 is paired with the STB / TV 2 430-2, the smart phone 420 obtains the configuration file of the STB / TV 2 430-2 and sends the configuration file of the STB / TV 2 430-2 to the head end 410. Figure 4B As explained, based on the configuration file, the front end 410 allocates and distributes the keys to the STB / TV 2 430-2. In some embodiments, the front end 410 relocates and / or redistributes different device keys to the smartphone 420 in response to a configuration file update (e.g., a pairing change). Also as described above with reference to Figure 4AAs explained, when smart phone 420 is paired with existing STB / TV 1 430-1, front end 410 delivers more keys and content to smart phone 420. When the pairing changes so that smart phone 420 is paired with STB / TV 2 430-2 with enhanced security, based on the updated security profile, front end 410 adjusts the number of keys and content assigned to receiving device accordingly. For example, before switching, front end 410 separates service keys according to the ratio of 2:1 between smart phone 420 and STB / TV 1, wherein smart phone 420 is safer and receives more service keys. After switching, utilizing STB / TV 2 430-2 with security chip, front end 410 evenly separates service keys between smart phone 420 and STB / TV 2 430-2. Like this, CA system disclosed herein allows content viewing on different receiving devices with continuous security.
[0070] Figure 5 is a flowchart representation of a method 500 for service key allocation and distribution in a CA system according to some embodiments. In some embodiments, at a front end (e.g., Figure 2A and Figure 2B The front end 210 and / or Figure 4A-4D Method 500 is performed at a front end 410 in the embodiment of the present invention, wherein the front end includes a controller (e.g., controller 240, Figure 2A and Figure 2B ), at least one non-transitory storage device for storing a security profile (e.g., Figure 2A and Figure 2B 222 in the storage device), a device key generator (e.g., a device key generator 230, Figure 2A ) and a transmitter (e.g., transmitter 250, Figure 2A and Figure 2B ). Briefly, method 500 includes: obtaining a security profile including a profile of a first device, a profile of a second device paired with the first device, and a user profile; locating a first device key for the first device and a second device key for the second device; and regulating user access to a channel during an authorization period, including determining a first security level for the first device and a second security level for the second device based on the security profile, and allocating a first subset of service keys to be encrypted using the first device key and a second subset of service keys to be encrypted using the second device key based on the first security level and the second security level, and sending the first subset of service keys to the first device and sending the second subset of service keys to the second device.
[0071] To this end, as represented by block 510, method 500 includes: the controller obtains a security profile including a profile of a first device, a profile of a second device paired with the first device, and a user profile. In some embodiments, the front end also includes a receiver (e.g., receiver 220, Figure 2A and Figure 2B ) in order to obtain a security profile. For example, the first device may be a smart phone, for example, Figure 2A and Figure 2B Smartphone 270, Figure 3 Smart phone 310 or Figure 4A-4D and the second device may be a STB or a smart TV, for example, Figure 2A and Figure 2B STB / TV 280, Figure 3 STB / TV 320, Figure 4A and Figure 4D STB / TV 1430-1, or Figure 4B The configuration file of the smart phone may include hardware and subcomponent model numbers, operating system type and version, installed applications, SIM information, device identifier and / or serial number, etc. The configuration file of the STB / TV may include brand and model, chip type, identifier and / or firmware update, etc.
[0072] As represented by block 512, in some embodiments, the receiver receives from the first device the user profile, a profile of the first device including an identifier of the first device, a profile of the second device including an identifier of the second device, and data exchanged during pairing of the first device and the second device. The controller then establishes the security profile based on the profile of the first device, the profile of the second device, and the user profile. In some embodiments, when establishing the security profile for the subscriber, the front end stores the security profile in a non-transitory storage device.
[0073] For example, during registration or account setup, the smartphone sends the subscriber's information to the front end. In addition, the STB / TV can display the identifier of the STB / TV so that the smartphone can scan it in close range. The smartphone scans the identifier of the STB / TV and pairs with the STB / TV using a close range communication device. Once paired, the smartphone will obtain additional information about the STB / TV through the communication between the smartphone and the STB / TV. In some embodiments, the smartphone sends information about the STB / TV, the smartphone and the subscriber, and the communication between the smartphones paired with the STB / TV to the front end. Such information is then sent by the front end (e.g., controller 240, Figure 2A and Figure 2B ) is used to establish a security profile for a subscriber and store the security profile in a storage device.
[0074] Method 500 continues by locating a first device key for the first device and a second device key for the second device using a device key generator, as represented by block 520. In some embodiments, the first device key and the second device key are sent to the first device and the second device by a transmitter of the front end. For example, Figure 2A In the example, the device key generator 230 generates a device key K for the STB / TV 280. STB and a device key K for the smartphone 270 PHONE In addition, the device key generator 230 converts K STB The K PHONE The first device key and the second device key are sent to the smartphone 270. In some embodiments, the front end obtains the first device key and the second device key from the first device and the second device, for example, once the first device and the second device are paired. In some embodiments, the device key generator locates and manages the first device key and the second device key for encryption at the front end.
[0075] The method 500 continues, as represented by block 530, by regulating user access to the communication channel during the authorization period using the controller. In some embodiments, to regulate user access, as represented by block 540, the front end first determines a first security level for the first device and a second security level for the second device based on the security profile, as represented by block 540. In addition, as represented by block 550, the front end regulates user access by allocating a first subset of service keys to be encrypted using the first device key and a second subset of service keys to be encrypted using the second device key based on the first security level and the second security level. In addition, as represented by block 560, the front end regulates user access by sending the first subset of service keys to the first device and sending the second subset of service keys to the second device.
[0076] For example, in Figure 4A In period E, for channel C, the front end 410 receives a key from the service key generator (e.g., service key generator 122, Figure 1 ) obtain three service keys {SK C,E 1 ,SK C,E 2 ,SK C,E 3 For period E and for channel C authorized to subscriber 405, front end 410 determines that smartphone 420 has a higher security level than STB / TV 1 430-1. Thus, based on the security level, front end 410 assigns smartphone 420 a subset of service keys, for example, two service keys, denoted as SK PHONE ={SK C,E 1 ,SK C,E 2}, and assigns another subset of service keys to STB / TV 1 430-1, for example, one service key - denoted as SK STB1 =SK C,E 3 The front end 410 then uses the device key K PHONE Service key set SK PHONE Encrypted and using the device key K STB1 Service key SK STB1 The encrypted service key is then securely sent to the corresponding receiving device, for example, PHONE The set is sent to the smartphone 420 and the encrypted SK STB1 Sent to STB / TV 1 430-1.
[0077] In some embodiments, as represented by block 542, determining the first security level of the first device and the second security level of the second device based on the security profile includes: associating values to security features extracted from the profile of the first device and the profile of the second device; and calculating the first security level of the first device and the second security level of the second device based on a function of the values associated with the security features.
[0078] For example, the front end extracts security features, such as processor type and speed, type of encryption and decryption software, storage capacity, etc. In some embodiments, the front end calculates the security level by assigning values to the security features, for example, 1 is assigned to a standard chip in an off-the-shelf STB or an older version of the operating system, 2 is assigned to a security chip in a security-enhanced STB or a newer version of firmware, 3 is assigned to an encryption engine on a smart phone, etc. The front end then calculates the security level based on the value associated with the security feature. In some embodiments, the value assigned to the security feature is configurable, for example, the value assigned to a type of chip is reduced over time as more capable chips are developed, or the value assigned to a version of software is reduced in response to the discovery of a security vulnerability.
[0079] Still reference Figure 5 In some embodiments, as represented by block 552, allocating a first subset of service keys to be encrypted using the first device key and allocating a second subset of service keys to be encrypted using the second device key based on the first security level and the second security level includes: allocating an equal number of service keys in the first subset and the second subset of service keys based on a determination that the first security level of the first device and the second security level of the second device are substantially the same. On the other hand, if the first security level and the second security level are not substantially the same, the front end will allocate more service keys to send to a receiving device with a higher security level.
[0080] For example, if the user has a secure smartphone, the security level of the smartphone is higher. As a result, the front end sends more service keys to the smartphone, for example, two service keys are distributed to the smartphone 420 and one service key is distributed to the ready-made STB / TV 1 430-1, as shown in FIG. Figure 4A In contrast, if the STB has a security chip, the security level of the STB is higher than or approximately the same as that of the smart phone. As a result, the front end sends more service keys to the STB or evenly divides the number of service keys distributed to the smart phone and the STB, for example, one service key is distributed to the smart phone 420 and one service key is distributed to the STB / TV 2 430-2 with a security chip, as shown in FIG. Figure 4B As shown in .
[0081] In some embodiments, as represented by block 562, method 500 also includes: (a) receiving a request for access to a channel from the first device; (b) determining, in response to the request, whether at least one of the first device, the second device, or a combination of the first device and the second device can securely access the channel based on the security profile; and (c) performing allocation and sending of the first subset and the second subset of service keys based on a determination that at least one of the first device or the second device can securely access the channel.
[0082] In other words, in some embodiments, in response to a request from the first device (e.g., a channel purchase and / or a subscription service package), the front end analyzes security features in a configuration file and determines a security score for the first device and a security score for the second device. If the front end determines that at least one of the first device or the second device is secure, for example, the security score for the first device and / or the security score for the second device is above a threshold, the front end allocates and sends a first subset of service keys and / or a second subset of service keys. On the other hand, if the first device and / or the second device does not have the ability to provide sufficient protection for media content, for example, when a subscriber requests high-value media content (such as 4K content), the front end may determine that the subscriber is unable to watch 4K content using a corresponding weakly secure receiving device, and therefore does not send the corresponding service key (which may be a corresponding device key) to the corresponding receiving device.
[0083] In some embodiments, as represented by piece 570, method 500 also includes detecting the updating of described security profile, including at least one updating of the profile of the profile of the first device, the profile of the second device or the user profile of the user, and the number of the service key of at least one of the first subset or the second subset assigned to the service key based on the update adjustment. In other words, the subscriber can switch to different smart phones or different STBs to view the subscribed media content. In some embodiments, the front end can detect changes, for example, receives the updating of pairing information or receives the report that STB has been destroyed from the smart phone. In response to detecting the update, the front end dynamically adjusts the service key distribution accordingly to utilize safer receiving equipment for content protection.
[0084] For example, Figure 4DAs shown in , once the pairing is changed, based on the updated security profile for subscriber 405, the front end 410 determines that STB / TV 2 430-2 is as secure as smartphone 420, which is more secure than STB / TV 1 430-1. Therefore, the front end changes the service key distribution ratio between the two receiving devices from 2:1 to 1:1. In another embodiment, as Figure 4C As shown in , once the STB / TV 430 is compromised, the security level of the STB / TV 430 is reduced. As a result, the front end 410 sends 100% of the service keys to the uncompromised receiving devices.
[0085] In some embodiments, as represented by block 580, method 500 also includes regulating the user's access to the channel during the next authorization period. In some embodiments, regulating the user's access to the channel during the next authorization period includes: (a) determining whether the user is entitled to access the channel during the next authorization period based on the user profile; and (b) in accordance with the determination that the user is entitled to access the channel, determining a third security level for the first device and a fourth security level for the second device based on the security profile, and assigning a third subset of service keys to be encrypted using the first device key and a fourth subset of service keys to be encrypted using the second device key based on the third security level and the fourth security level, and sending the third subset of service keys to the first device and the fourth subset of service keys to the second device. Thus, when it is time to renew the authorization (for the next period), the front end performs the steps in block 530 for each subscriber.
[0086] In some embodiments, as represented by block 590, method 500 further includes: (a) encrypting at least one control word using at least one of the first subset of service keys or the second subset of service keys; (b) encrypting media content associated with the channel using the at least one control word; and (c) sending the encrypted media content and the at least one control word to the first device or the second device. For example, as described above with reference to Figure 2B As described, a service key set SK PHONE Distribute to smartphone 270 and send another set SK STB Distributed to STB / TV 280. Controller 240 uses the service key to encrypt the control word, for example, to calculate ECW i =F(CW i ,SK C,E j ). In addition, for each media content packet, the controller 240 selects a control word, for example, CW j , and use CWj The media content packets are encrypted. Thus, the media content is sent in encrypted form and the smartphone 270 is a building block in a smartphone-based CA system.
[0087] Figure 6 is a flowchart representation of a method 600 for secure content delivery in a CA system according to some embodiments. In some embodiments, at a front end (e.g., Figure 2A and Figure 2B The front end 210 and / or Figure 4A-4D Method 600 is performed at a front end 410 in the embodiment of the present invention, wherein the front end includes a controller (e.g., controller 240, Figure 2A and Figure 2B ), at least one non-transitory storage device for storing a security profile (e.g., Figure 2A and Figure 2B 222 in the storage device), a device key generator (e.g., a device key generator 230, Figure 2A ) and a transmitter (e.g., transmitter 250, Figure 2A and Figure 2B Briefly, method 600 includes scrambling media content associated with a channel during an authorization period, including: encrypting the media content using at least one control word to generate encrypted media content, and selectively encrypting the at least one control word using a service key from a first subset of service keys assigned to a first device or a second subset of service keys assigned to a second device paired with the first device to generate at least one encrypted control word; and sending the at least one encrypted control word along with the encrypted media content to at least one of the first device or the second device.
[0088] For this reason, as represented by block 610, method 600 begins with the controller scrambling the media content associated with the channel during the authorization period. As represented by block 612, in some embodiments, scrambling includes using at least one control word to encrypt the media content to generate encrypted media content. In addition, as represented by block 614, in some embodiments, scrambling includes utilizing a first subset of the service key assigned to the first device or a second subset of the service key assigned to the second device paired with the first device to selectively encrypt the at least one control word to generate at least one encrypted control word. Method 600 continues, as represented by block 620, utilizing the controller to instruct the transmitter to send the at least one encrypted control word together with the encrypted media content to at least one of the first device or the second device.
[0089] For example, as mentioned above Figure 2BAs explained above, when encrypting the media content associated with channel C, for period E, the controller 240 encrypts the control word CW i Encrypted and based on CW i and SK C,E j Calculate the encrypted control word ECW i , for example, ECW i =F(CW i ,SK C,E j ). In addition, for each media content packet, the controller 240 selects a control word, for example, CW j , and use CW j The media content packets are encrypted and then the transmitter 250 is instructed to broadcast the encrypted media content together with the encrypted control words.
[0090] In some embodiments, as represented by block 630, method 600 also includes receiving a user profile from the first device or the second device, a profile of the first device including an identifier of the first device, a profile of the second device including an identifier of the second device, and data exchanged during pairing of the first device and the second device; and establishing a security profile for storage based on the profile of the first device, the profile of the second device, and the user profile.
[0091] In some embodiments, as represented by block 640, method 600 also includes generating a first device key and a second device key and delivering the first device key to the first device and delivering the second device key to the second device; encrypting the first subset of service keys using the first device key and encrypting the second subset of service keys using the second device key; and sending the first subset of encrypted service keys to the first device and sending the second subset of encrypted service keys to the second device.
[0092] In some embodiments, as represented by block 650, method 600 also includes adjusting the number of service keys assigned to at least one of the first subset or the second subset of service keys based on an update to at least one of a profile of the first device, a profile of the second device, or a user profile.
[0093] In some embodiments, as represented by block 660, method 600 further includes: detecting a compromise of the second device; and ceasing to send the at least one encrypted control word and the encrypted media content to the second device. Figure 4CIn the example embodiment, once the front end 410 obtains an indication that the STB / TV 430 is compromised, the front end 410 stops sending keys (eg, service keys, control words, and / or device keys) and / or media content to the STB / TV 430.
[0094] In some embodiments, as represented by block 670, the first subset of service keys is assigned to the first device and the second subset of service keys is assigned to the second device based on a security profile. In some embodiments, the service key assignment is performed by: determining a first security level for the first device and a second security level for the second device based on the security profile; and assigning the first subset of service keys to be encrypted using a first device key associated with the first device and assigning the second subset of service keys to be encrypted using a second device key associated with the second device based on the first security level and the second security level. In such embodiments, as represented by block 672, method 600 also includes: scrambling media content associated with the channel during a next authorization period. In some embodiments, scrambling the content of the channel during the next authorization period includes: determining whether the user is authorized to access the channel based on the security profile; and based on the determination that the user is authorized to access the channel, encrypting the media content using one or more control words to generate encrypted media content, and selectively encrypting the one or more control words using another service key from the first subset of service keys or the second subset of service keys, wherein the number of service keys assigned to the first subset of service keys and the second subset of service keys is adjusted based on the update of the security profile.
[0095] Although various aspects of implementation within the scope of the appended claims are described above, it should be understood that the various features of the implementation described above can be embodied in various forms, and any specific structure and / or function described above is only exemplary. Based on the present disclosure, it should be understood by those skilled in the art that an aspect described herein can be implemented independently of any other aspect, and two or more of these aspects can be combined in various ways. For example, a device can be implemented and / or a method can be practiced using any number of aspects set forth herein. In addition, in addition to one or more of the aspects set forth herein, such a device can be implemented and / or such a method can be practiced using other structures and / or functions.
[0096] It should also be understood that, although the terms "first", "second", etc. may be used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another element. For example, a first device may be referred to as a second device, and similarly, a second device may be referred to as a first device, which changes the meaning of the description, as long as all occurrences of the "first device" are consistently renamed and all occurrences of the "second device" are consistently renamed. The first device and the second device are both devices, but they are not the same device.
[0097] The terms used herein are for the purpose of describing specific embodiments only and are not intended to limit the claims. As used in the description of the embodiments and the appended claims, the singular forms "a", "an" and "the" are also intended to include the plural forms, unless the context clearly indicates otherwise. It should also be understood that the term "and / or" as used herein refers to and encompasses any and all possible combinations of one or more of the associated listed items. It will also be understood that the terms "comprises" and / or "comprising", when used in this specification, specify the presence of stated features, integers, steps, operations, elements and / or parts, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, parts and / or groups thereof.
[0098] As used herein, the term “if” may be interpreted to mean “when the stated antecedent is true” or “when the stated antecedent is true” or “in response to determining that the stated antecedent is true” or “in accordance with a determination that the stated antecedent is true” or “in response to detecting that the stated antecedent is true”, depending on the context. Similarly, the phrase “if it is determined that [the stated antecedent is true]” or “if [the stated antecedent is true]” or “when [the stated antecedent is true]” may be interpreted to mean “upon determining that the stated antecedent is true” or “in response to determining that the stated antecedent is true” or “in accordance with a determination that the stated antecedent is true” or “in response to detecting that the stated antecedent is true” or “in response to detecting that the stated antecedent is true”, depending on the context.
Claims
1. A method for security-enhanced conditional access, comprising: distributing a first subset of service keys to a first device and a second subset of the service keys to a second device paired with the first device during an authorization period, wherein the first subset is different than the second subset and the first device is associated with a device for viewing; Media content packets associated with the channel are scrambled during an authorization period, including: encrypting the first subset of packets and the second subset of packets using at least one control word during the authorization period to generate a first subset of encrypted media content packets and a second subset of encrypted media content packets, respectively; selecting a first service key from said first subset of service keys and selecting a second service key from said second subset of service keys; and encrypting the at least one control word using the first service key to generate a first encrypted control word and encrypting the at least one control word using the second service key to generate a second encrypted control word; and sending at least one encrypted control word along with the encrypted media content packets to at least one of the first device or the second device, wherein the sending causes the first device to obtain the packets for viewing, including causing the first device to decrypt the first subset of the encrypted media content packets using the first service key, and causing the second device to facilitate decryption of the second subset of the encrypted media content packets using the second service key.
2. The method according to claim 1, further comprising: receiving, from the first device or the second device, a user profile, a profile of the first device including an identifier of the first device, a profile of the second device including an identifier of the second device, and data exchanged during pairing of the first device and the second device; as well as A security profile is established for storage based on the profile of the first device, the profile of the second device, and the user profile.
3. The method of claim 1 , wherein distributing the first subset of service keys to the first device and distributing the second subset of service keys to the second device paired with the first device comprises: generating a first device key and a second device key and delivering the first device key to the first device and the second device key to the second device; encrypting the first subset of the service keys using the first device key to generate a first subset of encrypted service keys, and encrypting the second subset of the service keys using the second device key to generate a second subset of encrypted service keys; as well as The first subset of encrypted service keys is sent to the first device and the second subset of encrypted service keys is sent to the second device.
4. The method according to claim 1, further comprising: The number of service keys assigned to at least one of the first subset or the second subset of service keys is adjusted based on an update to at least one of a configuration file of the first device, a configuration file of the second device, or a user configuration file.
5. The method according to claim 1, further comprising: Upon detecting that the second device is compromised or in response to obtaining an indication that the second device is compromised, ceasing to send one or more of the at least one encrypted control word, the encrypted media content packets, and the second subset of service keys to the second device.
6. The method according to claim 1, further comprising: determining a first security level for the first device and a second security level for the second device during the authorization period based on a security profile; as well as The first subset of service keys is assigned to be encrypted using a first device key associated with the first device and the second subset of service keys is assigned to be encrypted using a second device key associated with the second device based on the first security level and the second security level.
7. The method according to claim 6, further comprising: Scrambling media content associated with the channel during a second authorization period, the scrambling media content associated with the channel during the second authorization period comprising: determining whether a user is authorized to access the channel during the second authorization period based on the security profile; as well as Based on a determination that the user is authorized to access the channel during the second authorization period, the media content is encrypted using one or more control words during the second authorization period to generate encrypted media content, a third service key is selected from the first subset of service keys and a fourth service key is selected from the second subset of service keys, and the one or more control words are encrypted using the third service key to generate a third encrypted control word and the one or more control words are encrypted using the fourth service key to generate a fourth encrypted control word.
8. The method according to claim 2, further comprising: obtaining a security level for a combination of the first device and the second device based on the security profile; as well as A determination is made as to whether the combined security level is above a threshold for delivering the media content packet to at least one of the first device or the second device.
9. The method of claim 6, wherein distributing the first subset of service keys to a first device and distributing the second subset of service keys to a second device paired with the first device comprises: determining a ratio of the first subset of the service keys to the second subset during the authorization period based on the first security level of the first device and the second security level of the second device; as well as The first subset of the service keys is distributed to the first device and the second subset of the service keys is distributed to the second device according to the ratio.
10. A front-end system, comprising: A controller capable of operating: instructing a transmitter to distribute a first subset of encrypted service keys to a first device and to distribute a second subset of the encrypted service keys to a second device paired with the first device, wherein the first subset is different than the second subset and the first device is associated with a device for viewing; scrambling media content packets associated with a channel during an authorization period, comprising: encrypting a first subset of the packets and a second subset of the packets using at least one control word during the authorization period to generate a first subset of encrypted media content packets and a second subset of encrypted media content packets, respectively, selecting a first service key from the first subset of service keys assigned to a first device and selecting a second service key from the second subset of service keys assigned to a second device, and encrypting the at least one control word using the first service key to generate a first encrypted control word and encrypting the at least one control word using the second service key to generate a second encrypted control word; The transmitter is operable to send at least one encrypted control word along with the encrypted media content packets to at least one of the first device or the second device, wherein the sending enables the first device to obtain the packets for viewing, including: enabling the first device to decrypt the first subset of the encrypted media content packets using the first service key, and enabling the second device to decrypt the second subset of the encrypted media content packets using the second service key.
11. The front-end system according to claim 10, further comprising: a receiver for receiving, from the first device or the second device, a user profile, a profile of the first device, a profile of the second device, and data exchanged during pairing of the first device and the second device; as well as The storage device is used to store a security profile established based on the user profile, the profile of the first device and the profile of the second device.
12. The front-end system according to claim 10, further comprising: A device key generator is configured to assign a first device key to the first device and a second device key different from the first device key to the second device, wherein the transmitter is further operable to send the first device key to the first device and the second device key to the second device.
13. The headend system of claim 12, wherein distributing the first subset of encrypted service keys to the first device and distributing the second subset of encrypted service keys to the second device paired with the first device comprises: encrypting the first subset of the service keys using the first device key to generate a first subset of encrypted service keys and encrypting the second subset of the service keys using the second device key to generate a second subset of encrypted service keys; and The transmitter is instructed to send the first subset of encrypted service keys to the first device and to send the second subset of encrypted service keys to the second device.
14. The front-end system according to claim 10, wherein: The controller is further operable to: The number of service keys assigned to at least one of the first subset or the second subset of service keys is adjusted based on an update to at least one of a configuration file of the first device, a configuration file of the second device, or a user configuration file.
15. The front-end system according to claim 10, wherein: The controller is further operable to: Detecting that the second device is compromised or in response to obtaining an indication that the second device is compromised, directing the transmitter to cease transmitting one or more of the at least one encrypted control word, the encrypted media content packets, and the second subset of encrypted service keys to the second device.
16. The front-end system according to claim 10, wherein: The controller is further operable to scramble media content associated with the channel during a second authorization period, including: determining whether the user is authorized to access the channel during the second authorization period based on the security profile; and Based on a determination that the user is authorized to access the channel during the second authorization period, the media content is encrypted using one or more control words during the second authorization period to generate encrypted media content, a third service key is selected from the first subset of service keys and a fourth service key is selected from the second subset of service keys, and the one or more control words are encrypted using the third service key to generate a third encrypted control word and the one or more control words are encrypted using the fourth service key to generate a fourth encrypted control word.
Citation Information
Patent Citations
Method and apparatus for protecting the transfer of data
US20130322625A1