KR100769934B1 - Method of managing inner information and system for managing inner information - Google Patents

Method of managing inner information and system for managing inner information Download PDF

Info

Publication number
KR100769934B1
KR100769934B1 KR1020070037993A KR20070037993A KR100769934B1 KR 100769934 B1 KR100769934 B1 KR 100769934B1 KR 1020070037993 A KR1020070037993 A KR 1020070037993A KR 20070037993 A KR20070037993 A KR 20070037993A KR 100769934 B1 KR100769934 B1 KR 100769934B1
Authority
KR
South Korea
Prior art keywords
node
group
key
internal information
access
Prior art date
Application number
KR1020070037993A
Other languages
Korean (ko)
Inventor
박동훈
Original Assignee
닉스테크 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 닉스테크 주식회사 filed Critical 닉스테크 주식회사
Priority to KR1020070037993A priority Critical patent/KR100769934B1/en
Application granted granted Critical
Publication of KR100769934B1 publication Critical patent/KR100769934B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • H04L9/0833Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
    • H04L9/0836Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key using tree structure or hierarchical structure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms

Abstract

A method and a system for managing internal information are provided to perform the update of an encryption key by assigning node keys by layers and nodes. A method for managing internal information includes the steps of: generating a GCK(Group Candidate Key) of each group layer node by a member of a user group corresponding to an upper node of the group layer node among the user groups corresponding to the nodes in a tree structure through a node key of the upper node and a GASK(Group Access Sub key) corresponding to the group level node(S110); and decoding the internal information encrypted by a user corresponding to the group level node through the GCK(S120).

Description

내부 정보 관리 방법 및 내부 정보 관리 시스템{METHOD OF MANAGING INNER INFORMATION AND SYSTEM FOR MANAGING INNER INFORMATION}Internal information management method and internal information management system {METHOD OF MANAGING INNER INFORMATION AND SYSTEM FOR MANAGING INNER INFORMATION}

도 1은 본 발명의 일실시예에 따른 내부 정보 관리 방법을 나타낸 동작 흐름도이다.1 is a flowchart illustrating an internal information management method according to an embodiment of the present invention.

도 2는 도 1에 도시된 그룹 후보키를 생성하는 단계의 일 예를 나타낸 동작 흐름도이다. FIG. 2 is a flowchart illustrating an example of generating a group candidate key shown in FIG. 1.

도 3은 본 발명의 계층별 사용자 집합들의 일 예를 나타낸 도면이다.3 is a diagram illustrating an example of hierarchical user sets according to the present invention.

도 4는 본 발명의 계층별 사용자 집합들의 다른 예를 나타낸 도면이다.4 is a diagram illustrating another example of hierarchical user sets according to the present invention.

도 5는 본 발명의 일실시예에 따른 내부 정보 관리 시스템을 나타낸 블록도이다. 5 is a block diagram illustrating an internal information management system according to an embodiment of the present invention.

도 6은 도 5에 도시된 그룹 후보 키의 일 예를 나타낸 블록도이다. FIG. 6 is a block diagram illustrating an example of a group candidate key shown in FIG. 5.

<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for main parts of the drawings>

S110: 그룹 후보 키 생성 단계S110: group candidate key generation step

S120: 내부 정보 복호화 단계S120: decrypting internal information

410: 그룹 후보 키 생성부410: group candidate key generation unit

420: 복호화부420: decoder

본 발명은 내부 정보 관리에 관한 것으로, 특히 노드 키를 이용하여 보다 효율적으로 내부 정보를 관리하기 위한 내부 정보 관리 방법 및 시스템에 관한 것이다. The present invention relates to internal information management, and more particularly, to an internal information management method and system for more efficiently managing internal information using a node key.

최근 정보의 보안과 관련하여 각종 암/복호화 기술들이 개발되고 있다. 일반적으로 조직 내부의 정보는 조직의 직급 또는 부서별로 보안이 이루어질 필요가 있다. 또한, 조직의 상급자 계층은 상기 상급자 계층에 속하는 하급자 계층의 정보를 열람하고자 하는 경우가 많으며, 하급자 계층에서도 모든 상급자 계층이 하급자 계층의 정보를 열람하지 못하도록 접근 권한을 제어할 필요가 있는 경우가 있다. 이 때, 조직의 내부 정보에 대한 접근 권한 제어를 위해서는 조직의 계층별로 암/복호화 키를 다르게 사용하는 방법이 있다.Recently, various encryption / decryption technologies have been developed in connection with the security of information. In general, information within an organization needs to be secured by organizational level or department. In addition, the senior group of the organization often wants to view the information of the lower tier belonging to the senior tier, and the lower tier may need to control the access rights so that all the senior tier cannot view the information of the lower tier. . In this case, there is a method of using encryption / decryption keys differently for each hierarchy of organizations to control access to internal information of the organization.

다만, 암/복호화 키를 조직의 계층별로 달리 사용하여 내부 정보를 관리하는 것은 계층 간의 내부 정보를 공유하는 것이 필요한 경우 문제가 된다. 예를 들어, 조직의 계층이 사원, 과장, 부장 및 사장 계층으로 네 가지 계층이 순차적으로 존재한다고 가정한다. 이러한 경우 과장 계층에 있는 사용자는 자신의 하위 계층인 사원 계층에서 암호화한 내부 정보를 복호화할 수 있어야 한다. 이 때, 각 계층마다 다른 암/복호화 키를 사용한다면 조직 내부의 정보 공유에 있어 불편한 점이 있다. 즉, 과장 계층에 있는 사용자가 사원 계층에서 암호화 된 조직 내부의 정보를 복호화 하기 위해서는 사원 계층의 암호화 키를 알고 있어야 하므로, 암/복 호화 키의 관리, 갱신, 보안 유지에 있어서 불편한 점이 있다. 또한, 암/복호화 키의 수가 많아지는 경우에는 키의 노출 우려가 높으며 제3자 및 내부 공격에도 취약한 경우가 많다. 따라서, 계층별로 가지고 있는 접근 권한에 따라 내부 정보를 열람할 수 있고, 암/복호화 키의 수를 최소화하는 기술이 절실히 요구된다. However, managing internal information by using encryption / decryption keys differently for each layer of an organization becomes a problem when it is necessary to share internal information between layers. For example, suppose the four hierarchies are in order: the hierarchical organization, the manager, the manager, and the president. In this case, the user in the exaggeration hierarchy should be able to decrypt internal information encrypted by the employee hierarchy, which is his lower hierarchy. At this time, if each layer uses a different encryption / decryption key, there is an inconvenience in sharing information inside the organization. That is, the user in the exaggeration layer must know the encryption key of the employee layer in order to decrypt the information inside the organization encrypted in the employee layer, there is an inconvenience in managing, updating, and maintaining the encryption / encryption key. In addition, when the number of encryption / decryption keys increases, there is a high risk of exposure of the keys, and they are often vulnerable to third-party and internal attacks. Therefore, there is an urgent need for a technology that can view internal information according to access rights held by layers and minimize the number of encryption / decryption keys.

또한, 사원 계층에도 A, B 및 C 그룹이 있고, 과장1은 A 및 B 그룹의 내부 정보 만을 열람할 수 있으며 과장 2는 C 그룹의 내부 정보 만을 열람할 권한이 있다고 가정한다. 이러한 경우에는 일률적으로 계층별로 접근 권한을 부여하게 되면 과장 2가 A, B 그룹의 내부 정보를 열람할 수 있게 되어, 원하지 않는 결과가 발생한다. 따라서, 보다 효율적으로 내부 정보를 관리하기 위한 내부 정보 관리 방법 및 시스템의 필요성이 절실하게 대두된다. In addition, it is assumed that there are groups A, B, and C in the employee hierarchy, section 1 can only view internal information of group A and B, and section 2 has authority to view only internal information of group C. In such a case, if the access authority is uniformly provided for each level, the manager 2 can view the internal information of the A and B groups, which may cause undesirable results. Therefore, there is an urgent need for an internal information management method and system for more efficiently managing internal information.

본 발명은 상술한 바와 같은 종래기술의 문제점을 해결하기 위해 안출된 것으로서, 그룹 접근 서브 키를 이용하여 사용자 계층별, 그룹별로 내부 정보에 대한 접근 권한을 제어함으로써, 효율적으로 내부 정보를 공유할 수 있도록 하는 것을 목적으로 한다. The present invention has been made to solve the problems of the prior art as described above, by using the group access subkey to control the access rights to the internal information for each user hierarchy, group by group, it is possible to efficiently share the internal information The purpose is to make sure.

또한, 본 발명은 계층별, 노드별로 노드 키를 부여함으로써 사용자의 계층 가입 및 탈퇴 등에 따르는 암호화 키의 갱신 문제를 효율적으로 해결하고, 실제 계층별로 내부 정보에 대한 접근 권한을 줄 필요성이 많은 상황에서 안전하고 유용한 어플리케이션을 제공하는 것을 목적으로 한다. In addition, the present invention efficiently solves the problem of updating the encryption key according to the user's hierarchical joining and withdrawal by assigning a node key for each layer and for each node, and in a situation where there is a great need to give access to internal information for each layer. Its purpose is to provide a safe and useful application.

또한, 본 발명은 상위 계층의 특정 사용자 멤버에게는 하위 계층에서 암호 화 된 내부 정보 중 선택된 일부만을 복호화 할 수 있게 함으로써, 권한별로 내부 정보를 공유할 수 있게 하여 효율적인 어플리케이션을 제공하는 것을 목적으로 한다. In addition, an object of the present invention is to provide an efficient application by allowing specific user members of the upper layer to decrypt only selected portions of the internal information encrypted in the lower layer, thereby allowing the sharing of the internal information for each authority.

또한, 본 발명은 그룹 계층에 속하는 그룹마다 그에 상응하는 암호화 키를 부여하여 내부 정보를 관리함으로써 주기적으로 그룹 키를 변경하는 등 암호화 키의 갱신이 용이하며, 암호화 키 노출 등의 응급 상황 발생 시에도 효과적으로 안전하게 내부 정보를 관리하는 것을 목적으로 한다. In addition, the present invention is easy to update the encryption key, such as changing the group key periodically by assigning the corresponding encryption key to each group belonging to the group hierarchy to manage the internal information, even in case of emergencies such as encryption key exposure It aims to manage internal information effectively and safely.

또한, 본 발명은 그룹 키 추출 함수를 이용하여 그룹 키를 생성함으로써 제3자의 공격에 대하여도 안전하게 내부 정보를 관리하는 것을 목적으로 한다. In addition, the present invention aims to securely manage internal information against attacks by third parties by generating group keys using a group key extraction function.

또한, 본 발명은 하위 계층에 있는 사용자도 상황에 따라 상위 계층에 있는 사용자의 내부 정보를 복호화 할 수 있게 함으로써, 효과적이고 안전한 내부 정보의 공유를 통해 업무 효율을 높이는 것을 목적으로 한다. In addition, an object of the present invention is to increase the work efficiency through the effective and safe sharing of internal information by allowing the user in the lower layer to decrypt the internal information of the user in the upper layer according to the situation.

상기의 목적을 달성하고 종래기술의 문제점을 해결하기 위하여, 본 발명의 일실시예에 따른 내부 정보 관리 방법은 트리 구조에서 각각 하나의 노드에 대응하는 사용자 집합들 중 그룹 계층 노드의 상위 노드에 상응하는 사용자 집합의 멤버가 상기 상위 노드의 노드 키 및 상기 그룹 계층 노드에 상응하는 그룹 접근 서브 키(GASK)를 이용하여 상기 그룹 계층 노드의 그룹 후보 키(GCK)를 생성하는 단계 및 상기 그룹 후보 키(GCK)를 이용하여 상기 그룹 계층 노드에 상응하는 사용자에 의하여 암호화된 내부 정보를 복호화하는 단계를 포함하는 것을 특징으로 한다. In order to achieve the above object and solve the problems of the prior art, the internal information management method according to an embodiment of the present invention corresponds to the upper node of the group hierarchy node of the user set corresponding to each node in the tree structure Generating a group candidate key (GCK) of the group hierarchy node by using a node key of the upper node and a group access subkey (GASK) corresponding to the group hierarchy node; And decrypting the internal information encrypted by the user corresponding to the group layer node using (GCK).

이 때, 상기 내부 정보를 복호화하는 단계는 상기 그룹 후보 키(GCK)를 이용하여 그룹 키(GK)를 생성하고, 상기 그룹 키(GK)를 이용하여 상기 암호화된 내부 정보를 복호화할 수 있다.At this time, the decrypting of the internal information may generate a group key GK using the group candidate key GCK, and decrypt the encrypted internal information using the group key GK.

이 때, 상기 그룹 후보 키를 생성하는 단계는 상기 상위 노드에 상응하는 사용자 집합에 대하여 부여된 그룹 접근 키(GAK)를 이용하여 상기 그룹 접근 서브 키(GASK)를 생성할 수 있다. In this case, the generating of the group candidate key may generate the group access subkey GASK using a group access key GAK assigned to a user set corresponding to the upper node.

이 때, 상기 그룹 후보 키를 생성하는 단계는 상기 상위 노드의 노드 키를 이용하여 상기 상위 노드의 하위 노드의 노드 키를 생성하는 단계 및 상기 하위 노드의 노드 키 및 상기 그룹 접근 서브 키(GASK)를 이용하여 상기 그룹 계층 노드의 그룹 후보 키(GCK)를 산출하는 단계를 포함할 수 있다. The generating of the group candidate key may include generating a node key of a lower node of the upper node using a node key of the upper node, a node key of the lower node, and the group access subkey (GASK). Computing the group candidate key (GCK) of the group layer node by using.

이 때, 상기 내부 정보 관리 방법은 상기 그룹 계층 노드에 대한 접근 권한이 부여된 경우, 상기 접근이 허용된 그룹 계층 노드들을 공통적으로 자식 노드로 가지는 부모 노드를 선택하는 단계 및 상기 접근 권한을 가지는 사용자 집합에 대하여 미리 상기 접근이 허용된 그룹 계층 노드들에 상응하는 상기 그룹 접근 서브 키(GASK) 및 상기 부모 노드의 노드 키를 제공하는 단계를 더 포함할 수 있다. At this time, the internal information management method, when the access authority to the group hierarchy node is granted, selecting a parent node having the group hierarchy nodes that are allowed access as a child node in common and the user having the access authority The method may further include providing the group access subkey GASK and the node key of the parent node corresponding to the group layer nodes to which the access is allowed in advance.

이 때, 상기 내부 정보를 복호화하는 단계는 다수의 그룹 키 추출 함수 중 임의로 하나의 상기 그룹 키 추출 함수를 선택하고, 선택된 상기 그룹 키 추출 함수를 통해 상기 그룹 후보 키를 이용하여 상기 그룹 키를 생성할 수 있다. In this case, the decoding of the internal information may include selecting one of the group key extracting functions arbitrarily from among a plurality of group key extracting functions, and generating the group key using the group candidate key through the selected group key extracting function. can do.

이 때, 상기 내부 정보 관리 방법은 상기 상위 노드에 상응하는 사용자 집합의 멤버가 브랜치 키(BK)로 상기 내부 정보를 암호화 한 경우, 상기 상위 노드의 자손 노드에 상응하는 사용자 집합의 멤버가 상기 자손 노드의 역 노드 키를 이용하여 상기 상위 노드에 상응하는 브랜치 후보 키를 생성하는 단계 및 상기 브랜치 후보 키를 이용하여 상기 브랜치 키를 생성하고, 상기 브랜치 키를 이용하여 상기 내부 정보를 복호화 하는 단계를 더 포함할 수 있다.At this time, in the internal information management method, when a member of the user set corresponding to the upper node encrypts the internal information with a branch key (BK), the member of the user set corresponding to the child node of the upper node is the descendant. Generating a branch candidate key corresponding to the upper node using an inverse node key of a node, generating the branch key using the branch candidate key, and decrypting the internal information using the branch key; It may further include.

또한, 본 발명의 일실시예에 따른 내부 정보 관리 시스템은 트리 구조에서 각각 하나의 노드에 대응하는 사용자 집합들 중 그룹 계층 노드의 상위 노드에 상응하는 사용자 집합의 멤버가 상기 상위 노드의 노드 키 및 상기 그룹 계층 노드에 상응하는 그룹 접근 서브 키(GASK)를 이용하여 상기 그룹 계층 노드의 그룹 후보 키(GCK)를 생성하는 그룹 후보 키 생성부 및 상기 그룹 후보 키(GCK)를 이용하여 상기 그룹 계층 노드에 상응하는 사용자에 의하여 암호화된 내부 정보를 복호화하는 복호화부를 포함하는 것을 특징으로 한다. In addition, in the internal information management system according to an embodiment of the present invention, a member of a user set corresponding to an upper node of a group hierarchy node among user sets corresponding to one node in a tree structure includes a node key of the upper node and A group candidate key generation unit for generating a group candidate key GCK of the group layer node using a group access subkey GASK corresponding to the group layer node and the group layer using the group candidate key GCK And a decryption unit for decrypting the internal information encrypted by the user corresponding to the node.

이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일실시예에 따른 내부 정보 관리 방법을 나타낸 동작 흐름도이다.1 is a flowchart illustrating an internal information management method according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일실시예에 따른 내부 정보 관리 방법은 트리 구조에서 각각 하나의 노드에 대응하는 사용자 집합들 중 그룹 계층 노드의 상위 노드에 상응하는 사용자 집합의 멤버가 상기 상위 노드의 노드 키 및 상기 그룹 계층 노드에 상응하는 그룹 접근 서브 키(Group Access Sub Key, GASK)를 이용하여 상기 그룹 계층 노드의 그룹 후보 키(Group Candidate Key, GCK)를 생성한 다(S110).Referring to FIG. 1, in the internal information management method according to an embodiment of the present invention, a member of a user set corresponding to an upper node of a group hierarchy node among user sets corresponding to one node in a tree structure may be a member of the upper node. A group candidate key (GCK) of the group layer node is generated using a node key of the group layer and a group access sub key (GASK) corresponding to the group layer node (S110).

복수의 사용자 집합들은 트리 구조 상의 하나에 노드에 각각 대응된다. 사용자 집합의 멤버는 하나 이상의 사용자를 포함한다. The plurality of user sets respectively correspond to one node in the tree structure. Members of a user set include one or more users.

트리 구조 상의 노드들은 둘 이상의 계층별로 분할된다. 이 때, 그룹 계층은 상기 상위 노드가 속하는 계층의 아래 계층이다. 예를 들어, 트리 구조 상의 노드들을 세개의 계층인 제1 계층, 제2 계층, 제3 계층으로 분할하는 경우, 최하위 계층인 제3 계층이 그룹 계층일 수 있다. 이 때, 상위 노드는 제1 계층 또는 제2 계층에 속하는 노드로서, 상기 제3 계층인 상기 그룹 계층의 노드를 자식 노드로 가지는 노드가 된다. 다만, 상기 그룹 계층은 최하위 계층일 수도 있고, 최하위 계층이 아닐 수도 있다. Nodes in the tree structure are divided into two or more hierarchies. At this time, the group layer is a layer below the layer to which the upper node belongs. For example, when dividing the nodes of the tree structure into three layers, a first layer, a second layer, and a third layer, the third layer, which is the lowest layer, may be a group layer. At this time, the upper node is a node belonging to the first layer or the second layer, and becomes a node having a node of the group layer which is the third layer as a child node. However, the group hierarchy may be the lowest hierarchy or may not be the lowest hierarchy.

이 때, 상기 상위 노드는 하나 또는 둘 이상일 수 있다. 만약, 사용자 집합들을 둘 이상의 계층으로 분할하는 경우에는 상위 노드는 둘 이상 존재할 수 있다. 상기 상위 노드에는 상기 상위 노드에 상응하는 노드 키가 설정된다. 따라서, 상기 상위 노드에 상응하는 사용자 집합의 멤버는 상기 상위 노드에 설정된 노드 키를 알 수 있다.At this time, the upper node may be one or two or more. If the user sets are divided into two or more layers, more than one upper node may exist. In the upper node, a node key corresponding to the upper node is set. Therefore, the member of the user set corresponding to the upper node can know the node key set in the upper node.

이 때, 그룹 후보 키(GCK)는 그룹 계층 노드에 상응하는 키이다. 예를 들어, 그룹 계층 노드 중 하나인 A 노드에서 내부 정보를 그룹 키(Group Key, GK)를 이용하여 암호화 한 경우, A 노드에 상응하는 그룹 후보 키(GCKA)를 산출하고, 상기 그룹 후보 키(GCKA)를 이용하여 상기 내부 정보를 복호화 할 수 있게 된다. At this time, the group candidate key GCK is a key corresponding to the group hierarchy node. For example, when internal information is encrypted using a group key (GK) in node A, which is one of the group hierarchical nodes, a group candidate key GCK A corresponding to node A is calculated, and the group candidate The internal information can be decrypted using the key GCK A.

내부 정보가 그룹 키(GK)로 암호화 된 경우에 상위 노드에 상응하는 사용자 집합의 멤버는 산출된 그룹 후보 키(GCK)를 이용하여 그룹 키(GK)를 생성함으로써 내부 정보를 복호화할 수 있을 뿐만 아니라 산출된 그룹 후보 키(GCK)를 이용하여 그룹 키(GK)를 생성하지 않고도 다양한 방식으로 내부 정보를 복호화하게 할 수도 있다,When the internal information is encrypted with the group key GK, the member of the user set corresponding to the upper node can decrypt the internal information by generating the group key GK using the calculated group candidate key GCK. In addition, it is possible to decrypt the internal information in various ways without generating the group key GK using the calculated group candidate key GCK.

이 때, 본 발명의 일실시예에 따른 내부 정보 관리 방법은 상기 그룹 후보 키(GCK)를 이용하여 상기 그룹 계층 노드에 상응하는 사용자에 의하여 암호화된 내부 정보를 복호화한다(S120).At this time, the internal information management method according to an embodiment of the present invention decrypts the internal information encrypted by the user corresponding to the group hierarchy node using the group candidate key (GCK) (S120).

이 때, 상기 내부 정보를 복호화하는 단계(S120)는 상기 그룹 후보 키(GCK)를 이용하여 그룹 키(GK)를 생성하고, 상기 그룹 키(GK)를 이용하여 상기 암호화된 내부 정보를 복호화할 수 있다.At this time, the step of decrypting the internal information (S120) generates a group key GK using the group candidate key GCK, and decrypts the encrypted internal information using the group key GK. Can be.

그룹 계층 노드에 상응하는 사용자는 그룹 키(GK)를 이용하여 내부 정보를 암호화한 경우에, 상위 노드에 상응하는 사용자 집합의 멤버가 상기 내부 정보를 복호화하기 위해서는 상기 그룹 키(GK)를 생성하여 내부 정보를 복호화 하는 것이 바람직하다. 다만, 상기 그룹 키(GK)를 생성하지 않고도 그룹 후보 키(GCK)를 이용하여 내부 정보를 복호화 할 수 있다.When a user corresponding to a group layer node encrypts internal information using a group key GK, a member of a user set corresponding to a higher node generates the group key GK to decrypt the internal information. It is desirable to decrypt the internal information. However, the internal information may be decrypted using the group candidate key GCK without generating the group key GK.

이 때, 상기 그룹 키(GK)는 생성된 상기 그룹 후보 키(GCK)를 이용하여 생성될 수 있다. 다만, 상기 그룹 후보 키(GCK)를 이용하여 상기 그룹 키(GK)를 생성하는 것을 반복하는 경우에는 그 생성 규칙이 외부에 드러날 수 있다. 이 때, 생성 규칙이 노출되는 것을 방지하기 위해서 상기 내부 정보를 복호화 하는 단 계(S120)는 다수의 그룹 키 추출 함수 중 임의로 하나의 상기 그룹 키 추출 함수를 선택하고, 선택된 상기 그룹 키 추출 함수를 통해 상기 그룹 후보 키(GCK)를 이용하여 상기 그룹 키를 생성할 수 있다. 생성 규칙이 각각 다르지만, 같은 그룹 후보 키(GCK)를 인자로 갖는 경우에는 같은 그룹 키(GK)를 생성할 수 있는 그룹 키 추출 함수를 이용하면, 보안성을 극대화할 수 있게 된다. In this case, the group key GK may be generated using the generated group candidate key GCK. However, when the generation of the group key GK is repeated using the group candidate key GCK, the generation rule may be revealed to the outside. In this case, in order to prevent the generation rule from being exposed, the step of decrypting the internal information (S120) may select one of the group key extraction functions arbitrarily from a plurality of group key extraction functions, and select the selected group key extraction function. The group key may be generated using the group candidate key GCK. Although the generation rules are different, in the case of having the same group candidate key (GCK) as a factor, security can be maximized by using a group key extraction function that can generate the same group key (GK).

도 2는 도 1에 도시된 그룹 후보 키(GCK)를 생성하는 단계의 일 예를 나타낸 동작 흐름도이다. FIG. 2 is a flowchart illustrating an example of generating a group candidate key GCK shown in FIG. 1.

도 2를 참조하면, 그룹 후보 키를 생성하는 단계(S110)는 상위 노드의 노드 키를 이용하여 상기 상위 노드의 하위 노드의 노드 키를 생성한다(S210). Referring to FIG. 2, in generating a group candidate key (S110), a node key of a lower node of the upper node is generated using a node key of an upper node (S210).

상기 상위 노드에 상응하는 사용자 집합의 멤버는 상기 상위 노드의 노드 키를 알고 있다. 그리고, 상기 상위 노드의 노드 키를 이용하여 상기 하위 노드의 노드 키를 생성할 수 있다. 또한, 상기 하위 노드보다 아래 계층에 존재하는 노드의 노드 키도 상기 하위 노드의 노드 키를 이용하여 생성할 수 있다. 따라서, 상기 사용자 집합의 멤버는 계층에 따라 순차적으로 아래 계층에 속하는 노드의 노드 키를 생성할 수 있다. The member of the user set corresponding to the parent node knows the node key of the parent node. The node key of the lower node may be generated using the node key of the upper node. In addition, a node key of a node existing in a hierarchy below the lower node may be generated using the node key of the lower node. Accordingly, the members of the user set may sequentially generate node keys of nodes belonging to the lower hierarchy according to the hierarchy.

그룹 후보 키를 생성하는 단계(S110)는 상기 하위 노드의 노드 키 및 상기 그룹 접근 키(GASK)를 이용하여 그룹 계층 노드의 그룹 후보 키(GCK)를 산출한다(S220). Generating a group candidate key (S110) calculates a group candidate key (GCK) of a group hierarchy node using the node key of the lower node and the group access key (GASK) (S220).

상위 노드에 상응하는 사용자 집합의 멤버는 상기 상위 노드의 노드 키를 이용하여 하위 노드의 노드 키를 생성할 수 있다. 생성된 상기 하위 노드의 노드 키 및 상기 그룹 접근 서브 키(GASK)를 이용하여 상기 그룹 후보 키(GCK)를 생성할 수 있는 것이다. A member of a user set corresponding to an upper node may generate a node key of a lower node using the node key of the upper node. The group candidate key GCK may be generated using the generated node key of the lower node and the group access subkey GASK.

도 3는 본 발명의 계층별 사용자 집합들의 일 예를 나타낸 도면이다.3 is a diagram illustrating an example of hierarchical user sets according to the present invention.

도 3를 참조하면, 본 발명의 계층별 사용자 집합들은 1, 2, 3, 4, 5 노드를 포함하는 그룹 계층(310)과 6, 7, 8 노드를 포함하는 디비젼(diVision) 계층(320), 9,10 노드를 포함하는 노드 계층(330), 11 노드를 포함하는 도메인 계층(340)을 포함한다. Referring to FIG. 3, the hierarchical user sets of the present invention include a group layer 310 including 1, 2, 3, 4, and 5 nodes, and a division layer 320 including 6, 7, and 8 nodes. Node hierarchy 330 including 9,10 nodes, and domain layer 340 including 11 nodes.

그룹 계층(310), 디비젼 계층(320), 노드 계층(330) 및 도메인 계층(340)은 회사의 직급별로 사용자 집합들을 분할한 것으로 볼 수 있다. 예를 들어, 그룹 계층(310)을 평사원들의 계층으로 볼 수 있으며, 디비젼 계층(320)은 과장급 계층, 노드 계층(330)은 부장급 계층, 도메인 계층(340)은 임원급 계층으로 볼 수도 있다.The group layer 310, the division layer 320, the node layer 330, and the domain layer 340 may be regarded as divided user sets according to company positions. For example, the group hierarchy 310 may be viewed as a hierarchy of ordinary employees, the division hierarchy 320 may be viewed as an exaggeration hierarchy, the node hierarchy 330 may be a division hierarchy, and the domain hierarchy 340 may be viewed as an executive hierarchy.

사용자 집합들은 각각 상기 트리 구조의 하나의 노드에 대응한다. 예를 들어, 1 노드는 A 사용자 집합에 대응하고 9 노드는 B 사용자 집합에 대응하는 것으로 볼 수 있다. Each user set corresponds to one node of the tree structure. For example, it can be seen that one node corresponds to a user set A and nine nodes correspond to a user set B.

그룹 계층 노드의 상위 노드에 상응하는 사용자 집합은 하나일 수도 있고, 둘 이상일 수도 있다. 또한, 상위 노드는 그룹 계층 노드를 자식 노드로 가지는 노드이다. 예를 들어, 1 노드는 그룹 계층 노드이고, 상기 1 노드의 상위 노드에 상응하는 사용자 집합은 6 노드, 9 노드, 11 노드가 된다. There may be one user set corresponding to a higher node of the group hierarchy node, or two or more users. In addition, an upper node is a node having a group hierarchy node as a child node. For example, one node is a group hierarchy node, and the set of users corresponding to the upper node of the first node is six nodes, nine nodes, and eleven nodes.

또한, 상기 상위 노드가 속하는 계층의 노드에는 각각 상위 노드의 노드 키 가 할당된다. In addition, the node key of the upper node is assigned to the node of the layer to which the upper node belongs.

즉, 디비젼 계층(320)에 속하는 6, 7, 8 노드에는 각각 노드 키로서 VCK6, VCK7, VCK8이 각각 할당된다. 마찬가지로, 노드 계층(330)에 속하는 9, 10 노드에는 노드 키로서 NCK9, NCK10이 각각 할당된다. 또한, 도메인 계층(340)에 속하는 11 노드에는 DCK11이 할당된다. 이 때, 최상위 노드인 11 노드에 할당되는 DCK11은 하위 노드에 할당된 노드 키들을 모두 산출할 수 있는 마스터 키일 수 있다. That is, 6, 7, 8 nodes belonging to the division layer 320 are respectively assigned VCK6, VCK7, and VCK8 as node keys. Similarly, 9 and 10 nodes belonging to the node hierarchy 330 are assigned NCK9 and NCK10 as node keys, respectively. In addition, DCK11 is allocated to 11 nodes belonging to the domain layer 340. In this case, the DCK11 allocated to the 11th node, which is the highest node, may be a master key capable of calculating all node keys allocated to the lower node.

또한, 그룹 계층(310)에 속하는 노드에는 그룹 후보 키(GCK)가 할당된다. 즉, 1, 2, 3, 4, 5 노드에는 GCK1, GCK2, GCK3. GCK4, GCK5가 각각 그룹 후보 키(GCK)로 할당된다. In addition, a group candidate key GCK is assigned to a node belonging to the group hierarchy 310. That is, 1, 2, 3, 4, 5 nodes have GCK1, GCK2, GCK3. GCK4 and GCK5 are assigned to the group candidate key GCK, respectively.

각 노드의 노드 키 및 그룹 후보 키(GCK)는 표 1과 같은 생성 규칙을 통하여 생성될 수 있다.The node key and the group candidate key GCK of each node may be generated through a generation rule as shown in Table 1.

생성 키Generate key 변 수variable 함수function 생성 규칙Generation rules GCKx GCK x X(그룹 계층 노드 번호), VCKy, GASKx X (group hierarchy node number), VCK y , GASK x H1 H 1 GCKx = H1(X,VCKy, GASKx)GCK x = H 1 (X, VCK y , GASK x ) VCKy VCK y Y(디비젼 계층 노드 번호), NCKz Y (division layer node number), NCK z H2 H 2 VCKy = H2(Y, NCKz)VCK y = H 2 (Y, NCK z ) NCKz NCK z Z(노드 계층 노드 번호), DCKN Z (node layer node number), DCK N H3 H 3 NCKz = H3(Z, DCKN)NCK z = H 3 (Z, DCK N )

즉, NCK는 DCK 및 노드 계층의 노드 번호를 이용하여 생성될 수 있고, VCK는 NCK 및 디비젼 계층의 노드 번호를 이용하여 생성될 수 있다. 또한, GCK는 그룹 계층 노드 번호, VCK 및 GASK를 이용하여 생성될 수 있다. H1, H2 및 H3 는 노드 키 생성 함수로서 단방향 함수일 수 있다. 따라서, 상위 노드에 상응하는 사용자 집합의 멤버는 상기 상위 노드의 노드 키를 알고 있으므로, 상기 상위 노드의 하위 노드의 노드 키를 표 1에 기재된 생성 규칙에 따라 생성할 수 있게 된다. That is, the NCK may be generated using the node number of the DCK and node layer, and the VCK may be generated using the node number of the NCK and division layer. In addition, the GCK may be generated using the group layer node number, VCK and GASK. H 1 , H 2 and H 3 may be unidirectional functions as node key generation functions. Therefore, since the member of the user set corresponding to the upper node knows the node key of the upper node, the node key of the lower node of the upper node can be generated according to the generation rule described in Table 1.

또한, 그룹 계층(310) 노드에 상응하는 사용자는 내부 정보를 그룹 키(GK)를 암호화 키로 하여 암호화 한다. In addition, the user corresponding to the node of the group hierarchy 310 encrypts the internal information using the group key GK as an encryption key.

본 발명의 일실시예에 따른 내부 정보 관리 방법은 그룹 계층(310) 노드의 상위 노드에 상응하는 사용자 집합의 멤버가 상기 상위 노드의 노드 키 및 상기 그룹 계층 노드에 상응하는 그룹 접근 서브 키(GASK)를 이용하여 상기 그룹 계층 노드의 그룹 후보키(GCK)를 생성한다. In the internal information management method according to an embodiment of the present invention, a member of a user set corresponding to an upper node of a group hierarchy 310 node includes a node key of the upper node and a group access subkey corresponding to the group hierarchy node. ) Generates a group candidate key GCK of the group layer node.

이 때, 그룹 접근 서브 키(GASK)는 그룹 계층(310)의 노드에 대응하는 그룹 후보 키(GCK)에 상응하는 것일 수 있다. In this case, the group access sub key GASK may correspond to a group candidate key GCK corresponding to a node of the group hierarchy 310.

예를 들어, 그룹 계층(310) 노드 중 하나인 1 노드에 상응하는 사용자가 그룹 키(GK)를 암호화 키로 하여 내부 정보를 암호화 하였다고 가정한다. 이 때, 6 , 9, 11 노드는 상기 1 노드의 상위 노드에 해당한다. 9 노드에 상응하는 사용자 집합의 멤버가 상기 그룹 키(GK)를 산출하기 위해서는 우선 그룹 후보 키(GCK1)를 생성해 내야 한다. 이 때, 그룹 후보 키(GCK1)는 1 노드에 상응하는 키이다. 9 노드에 상응하는 사용자 집합의 멤버는 9 노드의 노드 키(NCK9)를 알고 있다. 이 때, 상기 9노드에 상응하는 사용자 집합의 멤버는 NCK9를 이용하여 9 노드의 하위 노드인 6 노드의 노드 키(VCK6)를 산출할 수 있다. 즉, 상위 노드에 상응하는 사용자 집합의 멤버는 자신이 가지고 있는 노드 키를 이용하여 하위 노드의 노드 키를 산출할 수 있는 것이다. For example, it is assumed that a user corresponding to one node, which is one of the group hierarchy 310 nodes, encrypts internal information using the group key GK as an encryption key. In this case, nodes 6, 9, and 11 correspond to higher nodes of the first node. In order for a member of a user set corresponding to 9 nodes to calculate the group key GK, first, a group candidate key GCK1 must be generated. At this time, the group candidate key GCK1 is a key corresponding to one node. The member of the user set corresponding to the nine node knows the node key (NCK9) of the nine node. At this time, the member of the user set corresponding to the nine nodes can calculate the node key (VCK6) of the six nodes, which is a lower node of the nine nodes using NCK9. That is, the member of the user set corresponding to the upper node can calculate the node key of the lower node using the node key of the user.

이 때, 상위 노드에 상응하는 사용자 집합의 멤버는 상기 상위 노드의 노드 키 및 상기 하위 노드의 노드 키를 이용하여 순차적으로 상기 하위 노드보다 더 아래 계층에 속하는 노드의 노드 키를 생성할 수 있다. At this time, a member of a user set corresponding to an upper node may sequentially generate node keys of nodes belonging to a hierarchy lower than the lower node using the node key of the upper node and the node key of the lower node.

예를 들어, 11 노드에 상응하는 사용자 집합의 멤버는 DCK11을 이용하여 9 노드 및 10 노드의 노드 키인 NCK9, NCK10을 산출할 수 있다. 또한, 상기 11 노드에 상응하는 사용자 집합의 멤버는 9 노드의 노드 키(NCK9)를 산출할 수 있으므로, 상기 9 노드의 노드 키(NCK9)를 이용하여 6 노드의 노드 키(VCK6)를 생성할 수 있는 것이다. 이 때, 단반향 함수를 이용하여 노드 키를 생성할 수 있다.For example, a member of a user set corresponding to 11 nodes may use DCK11 to calculate NCK9 and NCK10, which are node keys of 9 and 10 nodes. In addition, since the member of the user set corresponding to the 11 nodes can calculate the node key NCK9 of 9 nodes, the node key VCK6 of 6 nodes can be generated using the node key NCK9 of the 9 nodes. It can be. At this time, the node key may be generated using the unidirectional function.

이 때, 1 노드에 상응하는 그룹 접근 서브 키(GASK)는 GASK1이다. 이 때, 9 노드에 상응하는 사용자 집합의 멤버는 그룹 접근 서브 키(GASK1)를 서버 또는 최상위 노드(11 노드)로부터 제공 받을 수 있다. 또한, 상기 9 노드에 상응하는 사용자 집합의 멤버는 그룹 접근 서브 키(GASK1)를 미리 저장해 둘 수도 있다.At this time, the group access subkey GASK corresponding to one node is GASK1. At this time, a member of a user set corresponding to nine nodes may receive a group access sub key GASK1 from a server or a top node (11 nodes). In addition, a member of the user set corresponding to the nine nodes may store the group access sub key GASK1 in advance.

이 때, 11 노드에 상응하는 사용자 집합의 멤버는 순차적으로 1 노드의 상위 노드에 상응하는 노드의 노드 키인 9 노드의 노드 키(NCK9) 및 6 노드의 노드 키(VCK6)를 산출할 수 있다. 그리고 상기 사용자 집합의 멤버는 제공 받은 그룹 접근 서브 키(GASK1) 및 상기 상위 노드의 노드 키(VCK6, NCK9)를 이용하여 1 노드에 상응하는 그룹 후보 키(GCK1)를 생성할 수 있다. At this time, the member of the user set corresponding to 11 nodes may sequentially calculate the node key NCK9 of 9 nodes and the node key VCK6 of 6 nodes, which are node keys of nodes corresponding to the upper node of 1 node. A member of the user set may generate a group candidate key GCK1 corresponding to one node by using the provided group access subkey GASK1 and the node keys VCK6 and NCK9 of the upper node.

이 때, 상위 노드에 상응하는 사용자 집합에 대하여 부여된 그룹 접근 키(GAK)를 이용하여 그룹 접근 서브 키(GASK)를 생성할 수 있다. 즉, 상기 상위 노드에 상응하는 사용자 집합의 멤버는 그룹 접근 키(GAK)를 별도의 서버로부터 제공 받거나, 기 저장해 둘 수 있다. 이 때, 상기 사용자 집합의 멤버는 상기 그룹 접근 키(GAK)를 이용하여 그룹 접근 서브 키(GASK)를 생성할 수 있다. 즉, GASK는 생성 규칙을 나타내는 수학식 1에 의해 생성될 수 있다. At this time, the group access subkey GASK may be generated using the group access key GAK assigned to the user set corresponding to the upper node. That is, members of the user set corresponding to the upper node may be provided with a group access key (GAK) from a separate server or may be stored in advance. At this time, a member of the user set may generate a group access sub key GASK using the group access key GAK. That is, GASK may be generated by Equation 1 representing a generation rule.

GASKT = H4(T, GAK)GASK T = H 4 (T, GAK)

여기서, T는 그룹 계층 노드의 노드 번호 또는 노드 주소이고, H4는 단방향 함수일 수 있다.Here, T is a node number or node address of the group layer node, H 4 may be a one-way function.

도 4는 본 발명의 계층별 사용자 집합들의 다른 예를 나타낸 도면이다.4 is a diagram illustrating another example of hierarchical user sets according to the present invention.

도 4를 참조하면, 도 3과 마찬가지로 그룹 계층(410), 디비젼 계층(420), 노드 계층(430) 및 도메인 계층(440)을 포함한다. 3, 4, 5 노드는 그룹 계층(410) 노드이며, 10 노드는 노드 계층(430) 노드로서 상기 3, 4, 5 노드의 상위 노드에 해당한다. Referring to FIG. 4, similar to FIG. 3, the group layer 410, the division layer 420, the node layer 430, and the domain layer 440 are included. Nodes 3, 4, and 5 are group hierarchy 410 nodes, and nodes 10 are node hierarchy 430 nodes and correspond to upper nodes of the nodes 3, 4, and 5.

다만, 10 노드에 상응하는 사용자 집합의 멤버는 3 노드 및 5 노드에 상응 하는 사용자가 암호화 한 내부 정보에 대한 접근 권한을 갖고 있지만, 10 노드는 4 노드의 상위 노드임에도 불구하고 4 노드에 상응하는 사용자가 암호화 한 내부 정보에 대한 접근 권한을 갖고 있지 않다. 마찬가지로, 7 노드도 3 노드의 상위 노드로서 3 노드에 대한 접근 권한을 갖고 있고, 8 노드도 4, 5 노드의 상위 노드로서 5 노드에 대한 접근 권한을 가지고 있으나, 4 노드에 대한 접근 권한을 가지고 있지는 않다.However, members of the user set corresponding to 10 nodes have access to the internal information encrypted by users corresponding to 3 nodes and 5 nodes, but 10 nodes correspond to 4 nodes even though they are parent nodes of 4 nodes. The user does not have access to the encrypted internal information. Similarly, node 7 has access to node 3 as a parent of node 3, and node 8 has access to node 5 as parent of node 4 and node 5, but has access to node 4 It is not.

본 발명의 일실시예에 따른 내부 정보 관리 방법은 그룹 계층 노드에 대한 접근 권한이 부여된 경우, 상기 접근이 허용된 그룹 계층 노드들을 공통적으로 자식 노드로 가지는 부모 노드를 선택하고, 상기 접근 권한을 가지는 사용자 집합에 대하여 미리 상기 그룹 계층 노드들에 상응하는 그룹 접근 서브 키(GASK) 및 상기 부모 노드의 노드 키를 제공할 수 있다. In the internal information management method according to an embodiment of the present invention, when access rights are granted to a group layer node, a parent node having the group layer nodes to which the access is allowed as a child node in common is selected, and the access right is selected. A branch access subkey (GASK) corresponding to the group hierarchy nodes and a node key of the parent node may be provided to the user set having the branch in advance.

도 4에서, 9 노드에게는 3, 5 노드에 대한 접근 권한만을 부여하고, 4 노드에 대한 접근 권한은 부여하지 않는다고 가정한다. 즉, 9 노드에 상응하는 사용자 집합의 멤버가 접근 권한을 갖고 있는 그룹 계층 노드는 3, 5 노드이다. 즉, 3, 5 노드가 9 노드의 사용자 집합의 멤버에게 접근이 허용된 그룹 계층 노드들이다. In FIG. 4, it is assumed that 9 nodes are granted only access rights to 3 and 5 nodes, but not access rights to 4 nodes. That is, the group hierarchy nodes to which members of the user set corresponding to the node 9 have access rights are 3 and 5 nodes. That is, three and five nodes are group hierarchy nodes that are allowed access to members of the user set of nine nodes.

3 노드는 7, 10, 11 노드의 자식 노드이고, 5 노드는 8, 10, 11 노드의 자식 노드이다. 따라서, 접근이 허용된 3, 5 노드를 공통적으로 자식 노드로 가지는 부모 노드는 10 노드, 11 노드가 된다. 상기 부모 노드는 둘 이상이 될 수도 있지만, 둘 이상의 부모 노드 중에서 가장 하위 계층에 있는 노드를 부모 노드로 선택하는 것이 가장 효율적이다. 결국 부모 노드는 10 노드로 선택될 수 있고, 상기 10 노드에 상응하는 노드 키는 NCK10이므로 상기 NCK10이 사용자 집합에 대응하는 노드에 제공될 수 있다. 또한, 접근 허용된 노드가 3, 5 노드이므로, 접근 권한이 부여된 사용자 집합에는 접근이 허용된 그룹 계층 노드들에 상응하는 그룹 접근 서브 키인 GASK3, GASK5가 제공될 수 있다. Three nodes are child nodes of 7, 10, and 11 nodes, and five nodes are child nodes of 8, 10, and 11 nodes. Therefore, the parent node having 3, 5 nodes that are allowed to access as a child node is 10 nodes and 11 nodes. There may be more than one parent node, but it is most efficient to select the node at the lowest layer among the two or more parent nodes as the parent node. As a result, the parent node may be selected as 10 nodes, and since the node key corresponding to the 10 nodes is NCK10, the NCK10 may be provided to the node corresponding to the user set. In addition, since the access allowed nodes are 3 and 5 nodes, GASK3 and GASK5, which are group access subkeys corresponding to the group hierarchy nodes to which access is granted, may be provided to the user set granted access permission.

예를 들어, 9 노드에게는 3, 5 노드에 대한 접근 권한만을 부여하고, 4 노드에 대한 접근 권한은 부여하지 않는다고 가정하면, 9 노드에 상응하는 사용자 집합에 대하여 부모 노드의 노드 키인 NCK10 및 접근이 허용된 그룹 계층 노드들에 상응하는 그룹 접근 서브 키(GASK)인 GASK3, GASK5가 제공될 수 있다. 이 경우, 9 노드에 상응하는 사용자 집합의 멤버는 NCK10을 이용하여 VCK7 및 VCK8을 산출할 수 있다. 이 때, 제공 받은 그룹 접근 서브 키(GASK3, GASK5) 및 상위 노드의 노드 키(VCK7, VCK8)을 이용하여 그룹 후보 키(GCK3, GCK5)를 생성할 수 있게 된다. 이에 따라, 9 노드에 상응하는 사용자 집합의 멤버는 3 노드 및 5 노드에 상응하는 사용자에 의하여 암호화된 내부 정보를 복호화 할 수 있게 된다. For example, suppose that 9 nodes are granted access rights only for nodes 3 and 5, but not access rights for 4 nodes. NCK10, which is the node key of the parent node, and access for the user set corresponding to node 9 GASK3, GASK5, which is a group access subkey (GASK) corresponding to the allowed group layer nodes, may be provided. In this case, the member of the user set corresponding to the nine nodes can calculate VCK7 and VCK8 using NCK10. At this time, the group candidate keys GCK3 and GCK5 can be generated using the provided group access subkeys GASK3 and GASK5 and the node keys VCK7 and VCK8 of the upper node. Accordingly, members of the user set corresponding to the nine nodes can decrypt the internal information encrypted by the users corresponding to the three nodes and the five nodes.

따라서, 상기 9 노드에 상응하는 사용자 집합의 멤버는 접근이 허용된 그룹 계층 노드인 3 노드 및 5 노드에 대한 그룹 후보 키(GCK3, GCK5)를 생성할 수 있으므로, 이에 대한 그룹 키(GK)를 생성할 수 있고, 4 노드에 대한 그룹 후보 키(GCK4)를 생성할 수 없으므로 이에 대한 그룹 키(GK)를 생성할 수는 없다. 결국, 본 발명에 따르면 그룹 접근 서브 키를 이용하여 그룹 계층 노드에 대한 접근 권한을 선택적으로 부여함으로써, 훨씬 편리한 내부 정보 관리 방법을 제공할 수 있다. Accordingly, members of the user set corresponding to the nine nodes can generate group candidate keys GCK3 and GCK5 for nodes 3 and 5, which are the group hierarchy nodes to which access is allowed, and thus generate a group key GK for them. It is not possible to generate a group candidate key GCK4 for four nodes, and thus a group key GK cannot be generated. As a result, according to the present invention, by selectively granting access authority to the group layer node using the group access subkey, a more convenient internal information management method can be provided.

이 때, 본 발명의 일실시예에 따른 내부 정보 관리 방법은 생성된 그룹 후보 키(GCK)를 이용하여 그룹 키(GK)로 암호화 된 내부 정보를 복호화 할 수 있다.At this time, the internal information management method according to an embodiment of the present invention can decrypt the internal information encrypted with the group key GK using the generated group candidate key GCK.

이 때, 그룹 후보 키(GCK)를 이용하여 그룹 키(GK)를 생성하고, 상기 그룹 키(GK)를 이용하여 상기 내부 정보를 복호화할 수 있다. At this time, a group key GK may be generated using a group candidate key GCK, and the internal information may be decrypted using the group key GK.

이 때, 다수의 그룹 키 추출 함수 중 임의로 하나의 그룹 키 추출 함수를 선택하고, 선택된 상기 그룹 키 추출 함수를 통해 상기 그룹 후보 키(GCK)를 이용하여 상기 그룹 키(GK)를 생성할 수 있다. 상기 그룹 키(GK)는 실제로 그룹 계층 노드에서 내부 정보를 암호화 하는 암호화 키이다. In this case, one group key extraction function may be arbitrarily selected from among a plurality of group key extraction functions, and the group key GK may be generated using the group candidate key GCK through the selected group key extraction function. . The group key GK is actually an encryption key for encrypting internal information at the group layer node.

다시 도 4를 참조하면, 1 노드에 상응하는 사용자가 그룹 키(GK)로 내부 정보를 암호화 한 경우에는 1 노드에 상응하는 그룹 후보 키(GCK1)를 생성해야 한다. 만약, 9 노드에 상응하는 사용자 집합의 멤버가 GCK1을 생성한 경우 상기 GCK1을 이용하여 1 노드에서 암호화 키로 사용된 그룹 키(GK)를 생성할 수 있다. 따라서, 생성된 그룹 키(GK)를 이용하여 암호화 된 내부 정보를 복호화 할 수 있게 된다. Referring back to FIG. 4, when a user corresponding to one node encrypts internal information with a group key GK, a group candidate key GCK1 corresponding to one node should be generated. If a member of a user set corresponding to 9 nodes generates GCK1, a group key GK used as an encryption key in one node may be generated using the GCK1. Therefore, the encrypted internal information can be decrypted using the generated group key GK.

상기 그룹 키(GK)를 생성하는 과정에서, 그룹 키 추출 함수를 이용할 수도 있다. 그룹 키 추출 함수는 그룹 후보 키(GCK)를 이용하여 그룹 키(GK)를 생성하는 과정에서 생성 과정에 대한 규칙성을 외부에서 파악할 수 없게 한다. 예를 들어, 그룹 키 추출 함수(Key Derivate Function, KDF)가 KDF1, KDF2,...., KDF16으로서 16개 존재한다고 가정한다. 이 때, 상기 16개의 그룹 키 추출 함수는 같은 그룹 후보 키(GCK)를 이용하면, 같은 그룹 키(GK)를 추출하지만 그 생성 규칙은 각각 다른 것이다. In the process of generating the group key GK, a group key extraction function may be used. The group key extraction function makes it impossible to externally grasp the regularity of the generation process in the process of generating the group key GK using the group candidate key GCK. For example, suppose that there are 16 group key extraction functions (KDF) as KDF1, KDF2, ..., and KDF16. At this time, the sixteen group key extraction functions extract the same group key GK when the same group candidate key GCK is used, but the generation rules are different.

반대로 하나의 그룹 키 추출 함수를 이용하여 그룹 키(GK)를 추출하는 경우에는 추출 횟수가 반복됨에 따라 제3자에게 그룹 키(GK) 생성 규칙이 노출될 우려가 크지만, 다수의 그룹 키 추출 함수를 이용하는 경우에는 상기 생성 규칙의 노출 우려가 적기 때문에 보안성에 큰 장점을 갖게 된다. On the contrary, in the case of extracting the group key (GK) by using one group key extraction function, there is a high possibility that the group key (GK) generation rule is exposed to a third party as the number of extraction is repeated, but a plurality of group key extraction is performed. In the case of using a function, there is little concern about exposing the generation rule, which has a great advantage in security.

본 발명의 일실시예에 따른 내부 정보 관리 방법은 상기 상위 노드에 상응하는 사용자 집합의 멤버가 브랜치 키(Branch Key, BK)로 상기 내부 정보를 암호화 한 경우, 상기 상위 노드의 자손 노드에 상응하는 사용자 집합의 멤버가 상기 자손 노드의 역 노드 키를 이용하여 상기 상위 노드에 상응하는 브랜치 후보 키(Branch Candidate Key)를 생성할 수 있다. The internal information management method according to an embodiment of the present invention corresponds to a child node of the upper node when a member of the user set corresponding to the upper node encrypts the inner information with a branch key (BK). A member of the user set may generate a branch candidate key corresponding to the higher node using the inverse node key of the descendant node.

이 때, 자손 노드는 상기 상위 노드를 공통적으로 부모 노드로 가지는 상기 상위 노드의 하위 노드이다. 예를 들어, 9 노드의 자손 노드는 6, 1, 2 노드가 된다. At this time, the descendant node is a lower node of the upper node having the upper node as a parent node in common. For example, the descendants of 9 nodes would be 6, 1, 2 nodes.

다시 도 4를 참조하면, 그룹 계층(410)의 상위 노드인 10 노드에 상응하는 사용자 집합의 멤버가 BK를 암호화 키로 하여 내부 정보를 암호화 하였다고 가정한다. 이 때, 3 노드에 상응하는 사용자 집합의 멤버가 상기 암호화 된 내부 정보를 복호화 할 필요가 있는 경우, 3 노드에 상응하는 사용자는 역 노드 키를 이용하여 10 노드에 상응하는 브랜치 후보 키(BCK10)을 생성할 수 있다. 상기 역 노드 키는 상기 자손 노드인 3 노드에 기 할당된 것일 수 있다.Referring back to FIG. 4, it is assumed that a member of a user set corresponding to 10 nodes, which is an upper node of the group hierarchy 410, encrypts internal information using BK as an encryption key. At this time, if a member of the user set corresponding to the three nodes needs to decrypt the encrypted internal information, the user corresponding to the three nodes uses the branch node key corresponding to the ten nodes using the reverse node key (BCK10). Can be generated. The reverse node key may be previously assigned to three nodes which are the descendant nodes.

본 발명의 일실시예에 따른 내부 정보 관리 방법은 생성된 브랜치 후보 키(BCK)를 이용하여 브랜치 키(BK)를 생성하고, 상기 브랜치 키를 이용하여 암호화 된 내부 정보를 복호화 할 수 있다. The internal information management method according to an embodiment of the present invention may generate a branch key BK using the generated branch candidate key BCK, and decrypt the encrypted internal information using the branch key.

예를 들어, 3 노드에 상응하는 사용자 집합의 멤버가 역 노드 키를 이용하여 10 노드에 상응하는 브랜치 후보 키(BCK10)를 생성하였다고 가정한다. 이 때, 상기 3 노드에 상응하는 사용자 집합의 멤버는 상기 브랜치 후보 키(BCK10)을 이용하여 암호화 키로 사용된 브랜치 키(BK)를 생성한다. For example, assume that a member of the user set corresponding to three nodes has generated a branch candidate key BCK10 corresponding to ten nodes using the inverse node key. At this time, a member of the user set corresponding to the three nodes generates a branch key BK used as an encryption key by using the branch candidate key BCK10.

이 때, 브랜치 키는 다수의 브랜치 키 추출 함수 중 임의로 하나의 브랜치 키 추출 함수를 선택하고, 선택된 상기 브랜치 키 추출 함수를 통해 브랜치 후보 키를 이용하여 생성될 수 있다. 즉, 다수의 브랜치 키 추출 함수는 같은 브랜치 후보 키를 이용하더라도 각기 다른 생성 규칙을 통하여 같은 브랜치 키를 생성하게 된다. In this case, the branch key may be generated by using one branch key extraction function arbitrarily among a plurality of branch key extraction functions, and using a branch candidate key through the selected branch key extraction function. That is, multiple branch key extraction functions generate the same branch key through different generation rules even though the same branch candidate key is used.

본 발명에 따른 내부 정보 관리 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The internal information management method according to the present invention can be implemented in the form of program instructions that can be executed by various computer means and recorded in a computer readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. Program instructions recorded on the media may be those specially designed and constructed for the purposes of the present invention, or they may be of the kind well-known and available to those having skill in the computer software arts. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks. Magneto-optical media, and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. The medium may be a transmission medium such as an optical or metal wire, a waveguide, or the like including a carrier wave for transmitting a signal specifying a program command, a data structure, or the like. Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

도 5는 본 발명의 일실시예에 따른 내부 정보 관리 시스템을 나타낸 블록도이다. 5 is a block diagram illustrating an internal information management system according to an embodiment of the present invention.

도 5를 참조하면, 상기 내부 정보 관리 시스템은 그룹 후보 키 생성부(510), 복호화부(520)을 포함한다. Referring to FIG. 5, the internal information management system includes a group candidate key generator 510 and a decoder 520.

상기 그룹 후보 키 생성부(510)는 트리 구조에서 각각 하나의 노드에 대응하는 사용자 집합들 중 그룹 계층 노드의 상위 노드에 상응하는 사용자 집합의 멤버가 상기 상위 노드의 노드 키 및 상기 그룹 계층 노드에 상응하는 그룹 접근 서브 키(GASK)를 이용하여 상기 그룹 계층 노드의 그룹 후보 키(GCK)를 생성한다. The group candidate key generator 510 is configured such that a member of a user set corresponding to an upper node of a group hierarchy node among user sets corresponding to one node in a tree structure is assigned to a node key of the upper node and the group hierarchy node. A group candidate key GCK of the group layer node is generated using the corresponding group access subkey GASK.

이 때, 상기 그룹 후보 키 생성부(510)는 상기 상위 노드에 상응하는 사용자 집합에 대하여 부여된 그룹 접근 키(GAK)를 이용하여 상기 그룹 접근 서브 키(GASK)를 생성할 수 있다. In this case, the group candidate key generation unit 510 may generate the group access subkey GASK using the group access key GAK assigned to the user set corresponding to the upper node.

이 때, 상기 그룹 후보 키 생성부(510)는 상기 상위 노드에 상응하는 사용자 집합에 대하여 부여된 그룹 접근 키(GAK)를 이용하여 상기 그룹 접근 서브 키(GASK)를 생성할 수 있다. In this case, the group candidate key generation unit 510 may generate the group access subkey GASK using the group access key GAK assigned to the user set corresponding to the upper node.

이 때, 상기 복호화부(520)는 상기 그룹 후보 키(GCK)를 이용하여 상기 그룹 계층 노드에 상응하는 사용자에 의하여 암호화된 내부 정보를 복호화한다.At this time, the decryption unit 520 decrypts the internal information encrypted by the user corresponding to the group layer node using the group candidate key GCK.

이 때, 상기 복호화부(520)는 상기 그룹 후보 키(GCK)를 이용하여 그룹 키(GK)를 생성하고, 상기 그룹 키(GK)를 이용하여 상기 암호화된 내부 정보를 복호화할 수 있다.In this case, the decryption unit 520 may generate a group key GK using the group candidate key GCK, and decrypt the encrypted internal information using the group key GK.

이 때, 상기 복호화부(520)는 다수의 그룹 키 추출 함수 중 임의로 하나의 상기 그룹 키 추출 함수를 선택하고, 선택된 상기 그룹 키 추출 함수를 통해 상기 그룹 후보 키를 이용하여 상기 그룹 키를 생성할 수 있다. In this case, the decryption unit 520 may randomly select one of the group key extraction functions and generate the group key using the group candidate key through the selected group key extraction function. Can be.

도 5에 도시되지 아니하였으나, 상기 상위 노드에 상응하는 사용자 집합의 멤버가 브랜치 키(BK)로 상기 내부 정보를 암호화 한 경우, 상기 상위 노드의 자손 노드에 상응하는 사용자 집합의 멤버가 상기 자손 노드의 역 노드 키를 이용하여 상기 상위 노드에 상응하는 브랜치 후보 키를 생성하는 브랜치 후보 키 생성부 및 상기 브랜치 후보 키를 이용하여 상기 브랜치 키를 생성하고, 상기 브랜치 키를 이용하여 상기 내부 정보를 복호화 하는 내부 정보 복호화부를 더 포함할 수 있다.Although not shown in FIG. 5, when the member of the user set corresponding to the parent node encrypts the internal information with a branch key BK, the member of the user set corresponding to the child node of the parent node is the child node. A branch candidate key generation unit for generating a branch candidate key corresponding to the upper node using an inverse node key of and a branch key using the branch candidate key, and decrypting the internal information using the branch key. The apparatus may further include an internal information decoder.

또한, 도 4에 도시되지 아니하였으나, 상기 내부 정보 관리 시스템은 상기 선택된 소정의 그룹 계층 노드의 브랜치가 상기 상위 노드에서 교차하는 교차 노드를 판단하고, 상기 교차 노드에 상응하는 노드 키를 상기 사용자 집합에 대응하는 노드에 제공하는 노드 키 제공부를 더 포함할 수 있다. In addition, although not shown in FIG. 4, the internal information management system determines a cross node where a branch of the selected predetermined group hierarchy node crosses at the upper node, and sets a node key corresponding to the cross node to the user set. The apparatus may further include a node key providing unit for providing a node corresponding to the node key.

또한, 도 5에 도시되지 아니하였으나, 상기 내부 정보 관리 시스템은 상기 그룹 계층 노드에 대한 접근 권한이 부여된 경우, 상기 접근이 허용된 그룹 계층 노드들을 공통적으로 자식 노드로 가지는 부모 노드를 선택하는 부모 노드 선택부 및 상기 접근 권한을 가지는 사용자 집합에 대하여 미리 상기 접근이 허용된 그룹 계층 노드들에 상응하는 상기 그룹 접근 서브 키(GASK) 및 상기 부모 노드의 노드 키를 제공하는 키 제공부를 더 포함할 수 있다. In addition, although not shown in FIG. 5, when the access right is granted to the group hierarchy node, the internal information management system selects a parent node having a parent node having the group hierarchy nodes to which the access is commonly performed as a child node. The apparatus may further include a key selector configured to provide the node access unit (GASK) corresponding to the group hierarchy nodes to which the access is allowed and the node key of the parent node in advance to the node selector and the user set having the access right. Can be.

도 5에 도시된 장치에 관하여 설명되지 아니한 내용은 도 1 내지 도 4를 통하여 이미 설명한 바와 같으므로 이하 생략한다.Content not described with respect to the apparatus illustrated in FIG. 5 is the same as already described with reference to FIGS. 1 to 4, and thus will be omitted.

도 6은 도 5에 도시된 그룹 후보 키 생성부(510)의 일 예를 나타낸 블록도이다. 6 is a block diagram illustrating an example of the group candidate key generation unit 510 shown in FIG. 5.

도 6을 참조하면, 그룹 후보 키 생성부(510)는 하위 노드 키 생성부(610) 및 그룹 후보 키 산출부(620)을 포함한다. Referring to FIG. 6, the group candidate key generator 510 includes a lower node key generator 610 and a group candidate key calculator 620.

하위 노드 키 생성부(610)는 상위 노드의 노드 키를 이용하여 상기 상위 노드의 하위 노드의 노드 키를 생성한다. The lower node key generation unit 610 generates the node key of the lower node of the upper node using the node key of the upper node.

상기 그룹 후보 키 산출부(620)는 상기 하위 노드의 노드 키 및 상기 그룹 접근 서브 키(GASK)를 이용하여 상기 그룹 계층 노드의 그룹 후보 키(GCK)를 생성한다. The group candidate key calculator 620 generates a group candidate key GCK of the group layer node using the node key of the lower node and the group access subkey GASK.

이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, although the present invention has been described with reference to limited embodiments and drawings, the present invention is not limited to the above embodiments, and those skilled in the art to which the present invention pertains various modifications and variations from such descriptions. This is possible.

그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되 며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined not only by the claims below but also by the equivalents of the claims.

본 발명의 내부 정보 관리 방법 및 시스템은 그룹 접근 서브 키를 이용하여 사용자 계층별, 그룹별로 내부 정보에 대한 접근 권한을 제어함으로써, 효율적으로 내부 정보를 공유할 수 있다. The internal information management method and system of the present invention can efficiently share internal information by controlling access rights to internal information for each user hierarchy and for each group using a group access subkey.

또한, 본 발명은 계층별, 노드별로 노드 키를 부여함으로써 사용자의 계층 가입 및 탈퇴 등에 따르는 암호화 키의 갱신 문제를 효율적으로 해결할 수 있고, 실제 계층별로 내부 정보에 대한 접근 권한을 줄 필요성이 많은 상황에서 안전하고 유용한 어플리케이션을 제공할 수 있다. In addition, the present invention can effectively solve the problem of updating the encryption key according to the user's hierarchical joining and withdrawal of the layer by assigning a node key for each layer and for each node, and it is necessary to give access rights to internal information for each layer. Can provide a secure and useful application.

또한, 본 발명은 상위 계층의 특정 사용자 멤버에게는 하위 계층에서 암호화 된 내부 정보 중 선택된 일부만을 복호화 할 수 있게 함으로써, 권한별로 내부 정보를 공유할 수 있게 하여 효율적인 어플리케이션을 제공할 수 있다. In addition, the present invention enables the specific user member of the upper layer to decrypt only a selected portion of the internal information encrypted in the lower layer, thereby enabling the sharing of the internal information for each permission, thereby providing an efficient application.

또한, 본 발명은 그룹 계층에 속하는 그룹마다 그에 상응하는 암호화 키를 부여하여 내부 정보를 관리함으로써 주기적으로 그룹 키를 변경하는 등 암호화 키의 갱신이 용이하며, 암호화 키 노출 등의 응급 상황 발생 시에도 효과적으로 안전하게 내부 정보를 관리할 수 있다. In addition, the present invention is easy to update the encryption key, such as changing the group key periodically by assigning the corresponding encryption key to each group belonging to the group hierarchy to manage the internal information, even in case of emergencies such as encryption key exposure Effectively manage internal information safely.

또한, 본 발명은 그룹 키 추출 함수를 이용하여 그룹 키를 생성함으로써 제3자의 공격에 대하여도 안전하게 내부 정보를 관리할 수 있다. In addition, the present invention can safely manage internal information against attacks by third parties by generating a group key using a group key extraction function.

또한, 본 발명은 하위 계층에 있는 사용자도 상황에 따라 상위 계층에 있는 사용자의 내부 정보를 복호화 할 수 있게 함으로써, 효과적이고 안전한 내부 정보의 공유를 통해 업무 효율을 높일 수 있다. In addition, the present invention enables users in the lower layer to decrypt the internal information of the user in the upper layer according to the situation, thereby increasing work efficiency through effective and safe sharing of the internal information.

Claims (15)

트리 구조에서 각각 하나의 노드에 대응하는 사용자 집합들 중 그룹 계층 노드의 상위 노드에 상응하는 사용자 집합의 멤버가 상기 상위 노드의 노드 키 및 상기 그룹 계층 노드에 상응하는 그룹 접근 서브 키(GASK)를 이용하여 상기 그룹 계층 노드의 그룹 후보 키(GCK)를 생성하는 단계; 및A member of the user set corresponding to the parent node of the group hierarchy node among the user sets corresponding to one node in the tree structure receives the node key of the parent node and the group access subkey (GASK) corresponding to the group hierarchy node. Generating a group candidate key (GCK) of the group layer node by using; And 상기 그룹 후보 키(GCK)를 이용하여 상기 그룹 계층 노드에 상응하는 사용자에 의하여 암호화된 내부 정보를 복호화하는 단계Decrypting internal information encrypted by a user corresponding to the group layer node using the group candidate key (GCK) 를 포함하는 것을 특징으로 하는 내부 정보 관리 방법.Internal information management method comprising a. 제1항에 있어서,The method of claim 1, 상기 내부 정보를 복호화하는 단계는Decoding the internal information 상기 그룹 후보 키(GCK)를 이용하여 그룹 키(GK)를 생성하고, 상기 그룹 키(GK)를 이용하여 상기 암호화된 내부 정보를 복호화하는 것을 특징으로 하는 내부 정보 관리 방법.And generating a group key (GK) using the group candidate key (GCK), and decrypting the encrypted internal information using the group key (GK). 제1항에 있어서,The method of claim 1, 상기 그룹 후보 키를 생성하는 단계는Generating the group candidate key 상기 상위 노드에 상응하는 사용자 집합에 대하여 부여된 그룹 접근 키(GAK)를 이용하여 상기 그룹 접근 서브 키(GASK)를 생성하는 것을 특징으로 하는 내부 정보 관리 방법.And generating the group access subkey (GASK) using a group access key (GAK) assigned to a user set corresponding to the upper node. 제1항에 있어서,The method of claim 1, 상기 그룹 후보 키를 생성하는 단계는Generating the group candidate key 상기 상위 노드의 노드 키를 이용하여 상기 상위 노드의 하위 노드의 노드 키를 생성하는 단계; 및Generating a node key of a lower node of the upper node using the node key of the upper node; And 상기 하위 노드의 노드 키 및 상기 그룹 접근 서브 키(GASK)를 이용하여 상기 그룹 계층 노드의 그룹 후보 키(GCK)를 산출하는 단계Calculating a group candidate key GCK of the group hierarchy node using the node key of the lower node and the group access subkey GASK 를 포함하는 것을 특징으로 하는 내부 정보 관리 방법.Internal information management method comprising a. 제1항에 있어서,The method of claim 1, 상기 내부 정보 관리 방법은The internal information management method 상기 그룹 계층 노드에 대한 접근 권한이 부여된 경우, 상기 접근이 허용된 그룹 계층 노드들을 공통적으로 자식 노드로 가지는 부모 노드를 선택하는 단계; 및When the access right is granted to the group hierarchy node, selecting a parent node having the group hierarchy nodes to which the access is allowed as a child node in common; And 상기 접근 권한을 가지는 사용자 집합에 대하여 미리 상기 접근이 허용된 그룹 계층 노드들에 상응하는 상기 그룹 접근 서브 키(GASK) 및 상기 부모 노드의 노드 키를 제공하는 단계Providing the group access subkey GASK and the node key of the parent node corresponding to the group hierarchical nodes to which the access is granted to the user set having the access right in advance 를 더 포함하는 것을 특징으로 하는 내부 정보 관리 방법.Internal information management method further comprising. 제2항에 있어서,The method of claim 2, 상기 내부 정보를 복호화하는 단계는Decoding the internal information 다수의 그룹 키 추출 함수 중 임의로 하나의 상기 그룹 키 추출 함수를 선택하고, 선택된 상기 그룹 키 추출 함수를 통해 상기 그룹 후보 키를 이용하여 상기 그룹 키를 생성하는 것을 특징으로 하는 내부 정보 관리 방법.Selecting at least one group key extraction function from among a plurality of group key extraction functions, and generating the group key using the group candidate key through the selected group key extraction function. 제1항에 있어서,The method of claim 1, 상기 내부 정보 관리 방법은The internal information management method 상기 상위 노드에 상응하는 사용자 집합의 멤버가 브랜치 키(BK)로 상기 내부 정보를 암호화 한 경우, 상기 상위 노드의 자손 노드에 상응하는 사용자 집합의 멤버가 상기 자손 노드의 역 노드 키를 이용하여 상기 상위 노드에 상응하는 브랜치 후보 키를 생성하는 단계; 및When the member of the user set corresponding to the parent node encrypts the internal information with a branch key (BK), the member of the user set corresponding to the child node of the parent node uses the inverse node key of the child node. Generating a branch candidate key corresponding to an upper node; And 상기 브랜치 후보 키를 이용하여 상기 브랜치 키를 생성하고, 상기 브랜치 키를 이용하여 상기 내부 정보를 복호화 하는 단계Generating the branch key using the branch candidate key, and decrypting the internal information using the branch key 를 더 포함하는 것을 특징으로 하는 내부 정보 관리 방법Internal information management method further comprises a 제1항 내지 제7항 중 어느 한 항의 방법을 실행하기 위한 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터에서 판독 가능한 기록 매체.A computer-readable recording medium in which a program for executing the method of any one of claims 1 to 7 is recorded. 트리 구조에서 각각 하나의 노드에 대응하는 사용자 집합들 중 그룹 계층 노드의 상위 노드에 상응하는 사용자 집합의 멤버가 상기 상위 노드의 노드 키 및 상기 그룹 계층 노드에 상응하는 그룹 접근 서브 키(GASK)를 이용하여 상기 그룹 계층 노드의 그룹 후보 키(GCK)를 생성하는 그룹 후보 키 생성부; 및A member of the user set corresponding to the parent node of the group hierarchy node among the user sets corresponding to one node in the tree structure receives the node key of the parent node and the group access subkey (GASK) corresponding to the group hierarchy node. A group candidate key generator for generating a group candidate key (GCK) of the group hierarchy node by using the group candidate key generator; And 상기 그룹 후보 키(GCK)를 이용하여 상기 그룹 계층 노드에 상응하는 사용자에 의하여 암호화된 내부 정보를 복호화하는 복호화부Decryption unit for decrypting the internal information encrypted by the user corresponding to the group layer node using the group candidate key (GCK) 를 포함하는 것을 특징으로 하는 내부 정보 관리 시스템.Internal information management system comprising a. 제9항에 있어서,The method of claim 9, 상기 복호화부는 The decoding unit 상기 그룹 후보 키(GCK)를 이용하여 그룹 키(GK)를 생성하고, 상기 그룹 키(GK)를 이용하여 상기 암호화된 내부 정보를 복호화하는 것을 특징으로 하는 내부 정보 관리 시스템.And generating a group key (GK) using the group candidate key (GCK), and decrypting the encrypted internal information using the group key (GK). 제9항에 있어서,The method of claim 9, 상기 그룹 후보 키 생성부는The group candidate key generation unit 상기 상위 노드에 상응하는 사용자 집합에 대하여 부여된 그룹 접근 키(GAK)를 이용하여 상기 그룹 접근 서브 키(GASK)를 생성하는 것을 특징으로 하는 내부 정보 관리 시스템.And generating the group access subkey (GASK) using a group access key (GAK) assigned to a user set corresponding to the upper node. 제9항에 있어서,The method of claim 9, 상기 그룹 후보 키 생성부는The group candidate key generation unit 상기 상위 노드의 노드 키를 이용하여 상기 상위 노드의 하위 노드의 노드 키를 생성하는 하위 노드 키 생성부; 및A lower node key generation unit generating a node key of a lower node of the upper node by using a node key of the upper node; And 상기 하위 노드의 노드 키 및 상기 그룹 접근 서브 키(GASK)를 이용하여 상기 그룹 계층 노드의 그룹 후보 키(GCK)를 생성하는 그룹 후보 키 산출부A group candidate key calculator for generating a group candidate key GCK of the group hierarchy node using the node key of the lower node and the group access subkey GASK 를 포함하는 것을 특징으로 하는 내부 정보 관리 시스템.Internal information management system comprising a. 제9항에 있어서,The method of claim 9, 상기 내부 정보 관리 시스템은The internal information management system 상기 그룹 계층 노드에 대한 접근 권한이 부여된 경우, 상기 접근이 허용된 그룹 계층 노드들을 공통적으로 자식 노드로 가지는 부모 노드를 선택하는 부모 노드 선택부; 및A parent node selecting unit for selecting a parent node having common access to the group hierarchical nodes to which the access is granted, when the access right is granted to the group hierarchical node; And 상기 접근 권한을 가지는 사용자 집합에 대하여 미리 상기 접근이 허용된 그룹 계층 노드들에 상응하는 상기 그룹 접근 서브 키(GASK) 및 상기 부모 노드의 노드 키를 제공하는 키 제공부A key providing unit providing the group access subkey GASK and the node key of the parent node corresponding to the group hierarchical nodes to which the access is allowed to the user set having the access right in advance. 를 더 포함하는 것을 특징으로 하는 내부 정보 관리 시스템.Internal information management system further comprising. 제10항에 있어서,The method of claim 10, 상기 복호화부는The decoding unit 다수의 그룹 키 추출 함수 중 임의로 하나의 상기 그룹 키 추출 함수를 선 택하고, 선택된 상기 그룹 키 추출 함수를 통해 상기 그룹 후보 키를 이용하여 상기 그룹 키를 생성하는 것을 특징으로 하는 내부 정보 관리 시스템.Selecting one of the group key extracting functions arbitrarily from among a plurality of group key extracting functions, and generating the group key using the group candidate key through the selected group key extracting function. 제9항에 있어서,The method of claim 9, 상기 내부 정보 관리 시스템은 The internal information management system 상기 상위 노드에 상응하는 사용자 집합의 멤버가 브랜치 키(BK)로 상기 내부 정보를 암호화 한 경우, 상기 상위 노드의 자손 노드에 상응하는 사용자 집합의 멤버가 상기 자손 노드의 역 노드 키를 이용하여 상기 상위 노드에 상응하는 브랜치 후보 키를 생성하는 브랜치 후보 키 생성부; 및When the member of the user set corresponding to the parent node encrypts the internal information with a branch key (BK), the member of the user set corresponding to the child node of the parent node uses the inverse node key of the child node. A branch candidate key generation unit generating a branch candidate key corresponding to an upper node; And 상기 브랜치 후보 키를 이용하여 상기 브랜치 키를 생성하고, 상기 브랜치 키를 이용하여 상기 내부 정보를 복호화 하는 내부 정보 복호화부An internal information decoder configured to generate the branch key using the branch candidate key and to decode the internal information using the branch key; 를 더 포함하는 것을 특징으로 하는 내부 정보 관리 시스템Internal information management system further comprises a
KR1020070037993A 2007-04-18 2007-04-18 Method of managing inner information and system for managing inner information KR100769934B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070037993A KR100769934B1 (en) 2007-04-18 2007-04-18 Method of managing inner information and system for managing inner information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070037993A KR100769934B1 (en) 2007-04-18 2007-04-18 Method of managing inner information and system for managing inner information

Publications (1)

Publication Number Publication Date
KR100769934B1 true KR100769934B1 (en) 2007-10-24

Family

ID=38815747

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070037993A KR100769934B1 (en) 2007-04-18 2007-04-18 Method of managing inner information and system for managing inner information

Country Status (1)

Country Link
KR (1) KR100769934B1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060031257A (en) * 2004-10-08 2006-04-12 삼성전자주식회사 Apparatus and method of generating a key for broadcast encryption
KR20060050505A (en) * 2004-10-22 2006-05-19 삼성전자주식회사 Key management method in network system
KR20060062319A (en) * 2004-12-03 2006-06-12 삼성에스디에스 주식회사 Home network gateway for assigning authority and administering connection classfied by user and control method thereof
US20060129805A1 (en) 2004-11-12 2006-06-15 Samsung Electronics Co., Ltd. Method of managing user key for broadcast encryption
KR20060079065A (en) * 2004-12-30 2006-07-05 삼성전자주식회사 Method of managing a key of user for broadcast encryption

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060031257A (en) * 2004-10-08 2006-04-12 삼성전자주식회사 Apparatus and method of generating a key for broadcast encryption
KR20060050505A (en) * 2004-10-22 2006-05-19 삼성전자주식회사 Key management method in network system
US20060129805A1 (en) 2004-11-12 2006-06-15 Samsung Electronics Co., Ltd. Method of managing user key for broadcast encryption
KR20060062319A (en) * 2004-12-03 2006-06-12 삼성에스디에스 주식회사 Home network gateway for assigning authority and administering connection classfied by user and control method thereof
KR20060079065A (en) * 2004-12-30 2006-07-05 삼성전자주식회사 Method of managing a key of user for broadcast encryption

Similar Documents

Publication Publication Date Title
US9866375B2 (en) Multi-level key management
Wan et al. HASBE: A hierarchical attribute-based solution for flexible and scalable access control in cloud computing
US8423764B2 (en) Method and apparatus for key revocation in an attribute-based encryption scheme
US20030210790A1 (en) Optimizing costs associated with managing encrypted data
KR101174058B1 (en) Method for saving and serching of encrypted data on database
US20060236104A1 (en) Method and apparatus for encrypting and decrypting data in a database table
US7770006B2 (en) Method and apparatus for authorizing a database operation
US20120257743A1 (en) Multiple independent encryption domains
Blundo et al. Efficient key management for enforcing access control in outsourced scenarios
Rao et al. R-PEKS: RBAC enabled PEKS for secure access of cloud data
JP2022544484A (en) Encrypted Knowledge Graph
Blundo et al. Managing key hierarchies for access control enforcement: Heuristic approaches
CN111008386A (en) Method, device and medium for managing household registration based on block chain
KR100769934B1 (en) Method of managing inner information and system for managing inner information
Nabeel et al. Mask: a system for privacy-preserving policy-based access to published content
El Bouchti et al. A new database encryption model based on encryption classes
Tourani et al. Access control enforcement on outsourced data ensuring privacy of access control policies
KR102211937B1 (en) A System of the Role-based Data Protection by using of the Off-Chain Ledger on the Blockchain Network
Hingwe et al. Hierarchical role-based access control with homomorphic encryption for database as a service
Mammass et al. An overview on access control models
Alomari et al. SecloudDB: A unified API for secure SQL and NoSQL cloud databases
Cui et al. Efficient authorisation update on cloud data
Prantl et al. Towards a cryptography encyclopedia: a survey on attribute-based encryption
Ghebghoub et al. Security model based encryption to protect data on cloud
Kayem et al. Efficient enforcement of dynamic cryptographic access control policies for outsourced data

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120917

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20131017

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140917

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150827

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20161019

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20171019

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20181019

Year of fee payment: 12