The present invention claims priority of Korean Patent Application No. 10-2007-0115869, filed on Nov. 14, 2007, which is incorporated herein by reference.
1. Field of the Invention
The present invention relates to a method for constructing a key graph for multi-group multi-casting service and managing a key; and, more particularly, to a method for constructing a key graph for multi-group multi-casting service using access qualification relations between user groups and resources and managing a key, which is capable of minimizing overlapping of access qualification relations between user groups and resources and thereby reducing communication cost and storage cost in a conditional access system (CAS) by connecting multiple user groups, which have the same access right to multiple resources, to a corresponding resource via an intermediate node.
This work was supported by the IT R&D program of MIC/IITA [2006-S-019-02, “The Development of Digital Cable Transmission and Receive System for 1 Gbps Downstream”].
2. Description of Related Art
An Internet protocol television (IPTV) conditional access system (CAS) using Internet multi-casting scheme is operated on the basis of a multi-group multi-casting service.
The multi-group multi-casting service requires a key management scheme for generating, changing, or deleting an entitlement key in accordance with entitlements varied with user's dynamic membership.
In this key management scheme, a rekey message including a newly generated entitlement key is generated and transmitted to corresponding subscribers to ensure a forward/backward security in spite of changes of the user's dynamic membership.
A key management scheme under IPTV CAS environment as described in
The IPTV CAS, as described in
The subscribers to IPTV services may buy premium broadcast contents, cancel buying contents, or buy another premium contents instead through the host terminals whenever they want. This is called as a user's dynamic membership.
The KDC 11 generates and transmits rekey messages 111 to 114 including a newly generated entitlement key to the subscribers whenever receiving qualification change requests 101 to 104 from the subscribers so as to ensure the forward/backward security whenever the user's dynamic membership occurs.
The scheme, which generates and transmits the rekey message whenever the user's dynamic membership occurs, results in increases of system costs such as communication cost and storage cost.
A conventional multi-group (MG) scheme has been proposed to solve this problem, which uses a key graph to reduce the communication cost and the storage cost when a KDC 11 generates and transmits a rekey message in accordance with changes of the user's dynamic membership in multi-group multi-casting service such as IPTV premium broadcast service.
The conventional MG scheme generates a hierarchical key graph (HKG) united into one, which searches for overlapped relations in access right relations between user groups and resources, and removes the overlapped relations. When using the key graph as described above, it is possible not only to reduce the required number of keys, but also to generate a rekey message including a smaller amount of data.
However, the conventional MG scheme uses a binary tree graph to construct the HKG, which results in a greater number of intermediate nodes. This causes the complexity of the HKG and increases a storage/communication overhead.
Moreover, the conventional MG scheme searches the binary tree graph for the attributes of overlapped access right relations between the user groups and the resources, which causes lower search efficiency.
Accordingly, the core of the MG scheme is to find how many of the overlapped relations there are and how to reflect the found overlapped relations efficiently in the key graph.
A configuration of the key graph, which is capable of minimizing the number of intermediate nodes, is absolutely necessary for efficient key management in accordance with the user's dynamic membership in the IPTV premium broadcast service.
An embodiment of the present invention is directed to providing a method for constructing a key graph for multi-group multi-casting service using access qualification relations between user groups and resources and managing a key, to solve problems that cause increases of communication cost and storage cost in a conditional access system due to inefficient overlapping in a key graph representing an access right relations between user groups and resources.
Another embodiment of the present invention is directed to providing a method for constructing a key graph for multi-group multi-casting service using access qualification relations between user groups and resources and managing a key, which is capable of minimizing overlapping of access qualification relations between user groups and resources and thereby reducing communication cost and storage cost in a conditional access system (CAS) by connecting multiple user groups, which have the same access right to multiple resources, to a corresponding resource via an intermediate node.
In accordance with an aspect of the present invention, there is provided a method for constructing a key graph for multi-group multi-casting service, the method including: searching for a user group set (common group set) having the same access right to each resource combination including multiple resource selected from resources for a service and non-overlapping with other resource combinations by using an access right relations between user groups and the resource; and constructing a key graph by interconnecting a user group key and a resource key using the access right relation, where user groups pertaining to the searched common group set are connected to corresponding resources via intermediate nodes.
In accordance with another aspect of the present invention, there is provided a method for managing a key for multi-group multi-casting service in a conditional access system, the method including: constructing a key graph using access right relations between user groups and resources, where a user group set (common group set) having the same access right to each resource combination and non-overlapping with other resource combinations are interconnected via intermediate nodes; and managing the key by distributing the key in accordance with the key graph and updating a corresponding key using the key graph when a user qualification is changed, and transmitting the updated key to a user.
Other objects and advantages of the present invention can be understood by the following description, and become apparent with reference to the embodiments of the present invention. Also, it is obvious to those skilled in the art to which the present invention pertains that the objects and advantages of the present invention can be realized by the means as claimed and combinations thereof.
The advantages, features and aspects of the invention will become apparent from the following description of the embodiments with reference to the accompanying drawings, which is set forth hereinafter.
An IPTV conditional access system uses a concept called a user group, which groups users having the same access right to resources such as premium broadcast contents (e.g., contents such as sports, stock) to efficiently manage subscribers as illustrated
An embodiment as illustrated in
For example, a user group 10 and a user group 13 represent a group including users having the same access right to resources 3 and 4.
The number of offspring nodes for each node in the key graph is minimized using a concept called a common subtree. This reduces the size of rekey message to be transmitted to a user in accordance with a user's dynamic membership. The common subtree, which is a key subtree for user groups having the same access right to two or more resources, represents overlapped access relations between the user groups and the resources.
As illustrated in
When using the intermediate nodes 311 to 313, the method can efficiently reduce the number of paths connected from Resource_Key nodes to the intermediate nodes 311 to 313 and the number of paths connected from the intermediate nodes 311 to 313 to Group_Key nodes.
The method for constructing the key graph in accordance with this embodiment is performed in accordance with the following two phases.
A first phase is a process of constituting each resource combination including two or more resources randomly selected from multiple resources and searching for user group set (hereinafter, referred to as a Common_group Set (CS)) having the same access right and non-overlapping with other resource combination using the access right relations between the user groups and resources. The multiple CSs are referred to as a Common_Group Set group (CSG).
A second phase is a process of constituting a key graph by connecting user group keys to resource keys based on the access right relation between the user groups and the resources, and connecting the user groups, which pertain to the CS obtained from the first phase, to corresponding resources via the intermediate nodes.
Hereinafter, the method for constructing the key graph performed in the CAS (more exactly, KDC 11) will be described with reference to
In operation S400, the CAS constitutes resource combination including two or more resources randomly selected from multiple resources. Then, in operation S402, the CAS searches for the CS using the access right relations between the user groups and the resource with respect to each resource combination.
Looking at the order of searching the resource combination, a resource combination including more resources is preferentially searched for corresponding CS. When the resource combinations have the same number of the resources, a resource combination, which has the largest number of user groups with the same access right, is preferentially determined as the CS.
To remove the overlapping between the CSs, user groups commonly pertaining to other preferentially determined CSs as well are excluded from the user groups with the same access right searched for a specific resource combination. Then, the residual user groups are determined as a corresponding CS.
After completing the CS search process, in operation S404, the CAS constructs a first sub key graph (common subtree) ((a), (b), and (c) in
That is, the CAS constructs the first sub key graph in which the corresponding resource key and group key are respectively set to a root node and a leaf node with respect to each resource combination searched for the CS in operation S402. At this time, the root nodes are connected to the leaf nodes via corresponding intermediate nodes (311, 312, and 313).
In operation S406, the CAS constructs a second sub key graph ((d), (e), (f), and (g) in
That is, the CAS constructs the second sub key graph in which the corresponding group key of the user group with an access right non-pertaining to corresponding CS and the resource key are respectively set to a leaf node and a root node with respect to each resource.
Then, in operation S408, the CAS constructs a key graph ((a)+(b)+(c)+(d)+(e)+(f)+(g) in
The method for constructing the key graph in accordance with an embodiment of the present invention as illustrated in
Hereinafter, definitions of parameters used in the above algorithm will be described as follows.
When the method for constructing a key graph in accordance with an embodiment of the present invention is concretely applied to a multi-group multi-casting service having an access relation as illustrated in
If Resource_Key (CSG(j)) and a Group_Key (CSG(j)) obtained from an algorithm of the present invention are interconnected via intermediate nodes 311, 312 and 313, a first sub key graph is constructed such as (a), (b), and (c) illustrated in
If Group_Keys and Resource_Keyks corresponding to each element of UG (Resource_Keyk) as previously obtained are interconnected, a second sub key graph is constructed such as (d), (e), (f) and (g) illustrated in
Finally, all of the previous sub key graphs are united into one key graph. Each of the Resource_Keys and each of the Group_Keys must be used only once.
The method in accordance with an embodiment of the present invention has the characteristic of generating and transmitting a rekey message whenever a user's dynamic membership (qualification change) occurs, based on the key graph finally completed through all process as described above.
When the key graph (refer to
It is checked in operation S504 whether the qualification of a user is changed. If positive, in operation S506, the CAS updates the entitlement key using the key graph. Then, in operation S508, the CAS transmits a rekey message including the updated entitlement key to the user.
Hereinafter will be described a case where a user included in a user group 10 withdraws.
A keyset subject to an update, that is, a keyset of a user group 10 including a qualification changed user is searched. The keyset means a set of keys which the qualification changed user located at an end node of the key graph must include, which includes all the keys placed on a path from a key assigned to the end node including the user to a root node. As illustrated in
The keyset, that is, {IKb, Resource_Key 3} is updated to IKhnew, Resource−Key3new.
Then, sub keys connected to the updated keys (IKhnew, Resource−Key3new) 303 and 312 is searched for on the key graph. The updated keys (IKhnew, Resource−Key3new) included in the keyset are encoded with the found sub keys. As a case where the user withdrew from the user group 10330, it is natural that corresponding group key 10 would be updated.
That is, the IKhnew 312 is encoded into a group key 10330 and a group key 13333 corresponding to its sub keys. The Resource−Key3new 303 is encoded into IKh 312, a group key 6326, a group key 11331, a group key 8328, a group key 3323, and IKc 313 corresponding to its sub keys.
This encoding relations can be symbolically expressed as follows:
{IK}Group−Key10new {circle around (1)}
{IKhnew}Group−Key13 {circle around (2)}
{Resource−Key3new}IKhnew {circle around (3)}
{Resource−Key3new}Group_Key6 {circle around (4)}
{Resource−Key3new}Group_Key11 {circle around (5)}
{Resource−Key3new}Group_Key8 {circle around (6)}
{Resource−Key3new}Group_Key3 {circle around (7)}
{Resource−Key3new}IKc {circle around (8)}
Where {A}B means that A is encoded into an encoding key B, and Anew means that A is updated.
In this case, the size of a rekey message can be expressed as 8, which becomes a communication cost value.
The methods for constructing a key graph for multi-group multi-casting service in accordance with the embodiments of the present invention may be programmed in a computer language. Codes and code segments constituting the computer program may be easily inferred by a computer programmer skilled in the art. Furthermore, the computer program may be stored in a computer-readable recording medium including all kinds of media such as CD-ROM, RAM, ROM, floppy disk, hard disk and magneto-optical disk, and read and executed by a computer to embody the methods.
While the present invention has been described with respect to the specific embodiments, it will be apparent to those skilled in the art that various changes and modifications may be made without departing from the spirit and scope of the invention as defined in the following claims.
Number | Date | Country | Kind |
---|---|---|---|
10-2007-0115869 | Nov 2007 | KR | national |