KR20110055866A - Inter-group information sharing method and key generation method - Google Patents

Inter-group information sharing method and key generation method Download PDF

Info

Publication number
KR20110055866A
KR20110055866A KR1020090112474A KR20090112474A KR20110055866A KR 20110055866 A KR20110055866 A KR 20110055866A KR 1020090112474 A KR1020090112474 A KR 1020090112474A KR 20090112474 A KR20090112474 A KR 20090112474A KR 20110055866 A KR20110055866 A KR 20110055866A
Authority
KR
South Korea
Prior art keywords
group
node
polynomial
key
shared key
Prior art date
Application number
KR1020090112474A
Other languages
Korean (ko)
Other versions
KR101094094B1 (en
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 KR1020090112474A priority Critical patent/KR101094094B1/en
Publication of KR20110055866A publication Critical patent/KR20110055866A/en
Application granted granted Critical
Publication of KR101094094B1 publication Critical patent/KR101094094B1/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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3093Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving Lattices or polynomial equations, e.g. NTRU scheme
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/043Key management, e.g. using generic bootstrapping architecture [GBA] using a trusted network node as an anchor
    • H04W12/0433Key management protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • H04W4/08User group management

Abstract

PURPOSE: An information switching method between groups and public key generation method are provided to efficiently generate a public key while using a polynomial of a master node. CONSTITUTION: A master node broadcasts a group key within a group G2(110). A normal node receives a group key. The normal node generates a polynomial through the group key(120). An ID value uni-casts one of group G2(130). A node D which receives the ID value allocates the ID value for polynomial. The node D generates a share key(140).

Description

복수 개의 노드로 구성된 그룹 간의 정보 교환 방법 및 공유키 생성 방법{Inter-group information sharing method and key generation method}Inter-group information sharing method and key generation method

본 발명은 복수 개의 노드로 구성된 그룹 간의 정보 교환 방법 및 공유키 생성 방법에 관한 것으로 보다 상세하게는 한 그룹 내의 노드가 다른 그룹 내의 노드들과 기밀성을 유지하면서 정보를 교환하기 위한 방법 및 이를 위한 공유키 생성 방법에 관한 것이다.The present invention relates to a method of exchanging information and a method of generating a shared key between a group consisting of a plurality of nodes, and more particularly, to a method for exchanging information while maintaining confidentiality with nodes in another group and sharing therefor. It relates to a key generation method.

최근에 그룹 통신(group communication)이 무선 네트워크의 다양한 어플리케이션에서 중요한 요소가 되고 있다. 그룹 통신은 무선 통신의 브로드캐스트 특성을 이용하여 정보 전달 속도를 높이고 무선 노드에서의 에너지 효율을 향상시킬 수 있는 장점이 있다.Recently, group communication has become an important factor in various applications of wireless networks. Group communication has an advantage of improving information transmission speed and energy efficiency at a wireless node by using broadcast characteristics of wireless communication.

그룹 통신 환경에서, 한 그룹 내의 송신자와 다른 그룹 내의 수신자들 간에 특정 데이터를 공유할 필요가 있다. 이러한 경우 공유할 데이터에는 외부로 유출되면 안되는 기밀성을 다루는 정보들도 있기 때문에 해당 그룹의 멤버들 외에는 상기 정보를 볼 수 없도록 할 필요가 있다. 따라서 송신자는 수신자들을 제외한 외부 공격자에게 데이터를 노출시키지 않도록 하기 위해 메시지를 암호화해야 한다. 이러 한 암호화 알고리즘을 사용하기 위해서는 해당 그룹의 멤버들 간에는 사전에 키를 공유하여야 하는데, 키를 효율적으로 생성하고 공유하는 것은 중요한 문제이다. In a group communication environment, it is necessary to share certain data between senders in one group and receivers in another group. In this case, since the data to be shared also contain confidential information that should not be leaked to the outside, it is necessary to make the information invisible except the members of the group. Therefore, the sender must encrypt the message to prevent exposing the data to external attackers except recipients. In order to use this encryption algorithm, the key must be shared among the members of the group in advance. It is important to generate and share the key efficiently.

본 발명이 이루고자 하는 기술적 과제는 다항식을 이용하면서 효율적으로 공유키를 생성하고, 공유키의 노출을 방지할 수 있는, 복수 개의 노드로 구성된 그룹 간의 정보 교환 방법 및 공유키 생성 방법을 제공하는 데 있다.An object of the present invention is to provide a method for exchanging information and a method for generating a shared key between a group consisting of a plurality of nodes, which can efficiently generate a shared key and prevent exposure of the shared key while using a polynomial. .

상기 기술적 과제를 해결하기 위하여 본 발명에 따른 복수 개의 노드로 구성된 그룹 간의 정보 교환 방법은, (a) 제2 그룹 내의 복수 개의 노드 중 하나인 마스터 노드가 그룹키를 생성하여 상기 제2 그룹 내에 브로드캐스트하는 단계; (b) 상기 제2 그룹 내의 노드가 상기 그룹키를 수신하고, 상기 그룹키를 이용하여 다항식을 생성하는 단계; 및 (c) 상기 다항식을 생성한 상기 노드가 상기 다항식을 이용하여 공유키를 생성하고, 제1 그룹 내의 노드로부터 수신한 암호화된 메시지를 상기 공유키를 이용하여 복호화(decrypt)하는 단계를 포함하는 것을 특징으로 한다.In order to solve the above technical problem, a method of exchanging information between a group consisting of a plurality of nodes according to the present invention includes: Casting; (b) a node in the second group receiving the group key and generating a polynomial using the group key; And (c) the node generating the polynomial generates a shared key using the polynomial and decrypts an encrypted message received from a node in a first group using the shared key. It is characterized by.

여기서, 상기 정보 교환 방법은, 상기 제1 그룹 내의 상기 노드가 자신의 식별자 값을 상기 제2 그룹 내의 복수 개의 노드 중 하나로 유니캐스트하는 단계; 상기 식별자 값을 수신한 상기 제2 그룹 내의 노드가 상기 식별자 값을 상기 다항식에 대입 연산하여 공유키를 생성하고, 상기 공유키를 상기 제1 그룹 내의 상기 노드로 유니캐스트하는 단계; 및 상기 제1 그룹 내의 상기 노드가 상기 공유키를 이용하여 상기 제2 그룹 내의 복수 개의 노드로 전송할 메시지를 암호화하여 상기 식 별자 값과 함께 상기 제2 그룹 내에 브로드캐스트하는 단계를 더 포함할 수 있다.Wherein the information exchange method comprises: unicasting, by the node in the first group, its identifier value to one of a plurality of nodes in the second group; A node in the second group receiving the identifier value assigns the identifier value to the polynomial to generate a shared key, and unicasts the shared key to the node in the first group; And encrypting, by the node in the first group, a message to be transmitted to the plurality of nodes in the second group by using the shared key, and broadcasting the message in the second group together with the identifier value. .

또한, 상기 (c) 단계는, 상기 다항식을 생성한 상기 노드가 상기 식별자 값과 상기 암호화된 메시지를 수신하고, 상기 식별자 값을 상기 다항식에 대입 연산하여 공유키를 생성하고, 상기 공유키를 이용하여 상기 암호화된 메시지를 복호화(decrypt)할 수 있다.In the step (c), the node that has generated the polynomial receives the identifier value and the encrypted message, assigns the identifier value to the polynomial, generates a shared key, and uses the shared key. It is possible to decrypt the encrypted message.

또한, 상기 (b) 단계에서, 상기 제2 그룹 내의 상기 노드는 상기 그룹키를 시드로 하여 수도-랜덤 넘버 생성기를 이용하여 다항식의 계수를 결정함으로써 상기 다항식을 생성할 수 있다. 이때, 상기 제2 그룹 내의 상기 노드는 상기 그룹키를 시드로 하여 생성되는 수도-랜덤 넘버를 다항식의 어느 하나의 계수로 결정하고, 상기 결정된 계수를 시드로 하여 생성되는 수도-랜덤 넘버를 다항식의 다른 계수로 결정할 수 있다.Also, in the step (b), the node in the second group may generate the polynomial by determining a coefficient of the polynomial using a pseudo-random number generator using the group key as a seed. In this case, the node in the second group determines the pseudo-random number generated by using the group key as a seed as one coefficient of the polynomial, and the pseudo-random number generated by using the determined coefficient as a seed of the polynomial. Can be determined by other coefficients.

상기 기술적 과제를 해결하기 위하여 본 발명에 따른 복수 개의 노드로 구성된 그룹에서의 공유키 생성 방법은, (a) 제2 그룹 내의 복수 개의 노드 중 하나인 마스터 노드가 그룹키를 생성하여 상기 제2 그룹 내에 브로드캐스트하는 단계; (b) 상기 제2 그룹 내의 노드가 상기 그룹키를 수신하고, 상기 그룹키를 이용하여 다항식을 생성하는 단계; 및 (c) 상기 다항식을 생성한 상기 노드가 상기 다항식에 제1 그룹 내의 노드로부터 수신한 식별자 값을 대입 연산하여 공유키를 생성하는 단계를 포함하는 것을 특징으로 한다.In order to solve the above technical problem, a method of generating a shared key in a group consisting of a plurality of nodes according to the present invention includes: (a) a master node, which is one of a plurality of nodes in a second group, generates a group key to generate the second group; Broadcasting within; (b) a node in the second group receiving the group key and generating a polynomial using the group key; And (c) generating a shared key by assigning the identifier value received from the node in the first group to the polynomial by the node that has generated the polynomial.

여기서, 상기 공유키 생성 방법은, 상기 제1 그룹 내의 상기 노드가 자신의 식별자 값을 상기 제2 그룹 내의 복수 개의 노드 중 하나로 유니캐스트하는 단계; 상기 식별자 값을 수신한 상기 제2 그룹 내의 노드가 상기 식별자 값을 상기 다항식에 대입 연산하여 공유키를 생성하고, 상기 공유키를 상기 제1 그룹 내의 상기 노드로 유니캐스트하는 단계; 및 상기 제1 그룹 내의 상기 노드가 상기 식별자 값을 상기 제2 그룹 내에 브로드캐스트하는 단계를 더 포함할 수 있다.The method for generating a shared key may include: unicasting, by the node in the first group, its identifier value to one of a plurality of nodes in the second group; A node in the second group receiving the identifier value assigns the identifier value to the polynomial to generate a shared key, and unicasts the shared key to the node in the first group; And the node in the first group broadcasting the identifier value in the second group.

또한, 상기 (b) 단계에서, 상기 제2 그룹 내의 상기 노드는 상기 그룹키를 시드로 하여 수도-랜덤 넘버 생성기를 이용하여 다항식의 계수를 결정함으로써 상기 다항식을 생성할 수 있다. 이때, 상기 제2 그룹 내의 상기 노드는 상기 그룹키를 시드로 하여 생성되는 수도-랜덤 넘버를 다항식의 어느 하나의 계수로 결정하고, 상기 결정된 계수를 시드로 하여 생성되는 수도-랜덤 넘버를 다항식의 다른 계수로 결정할 수 있다. Also, in the step (b), the node in the second group may generate the polynomial by determining a coefficient of the polynomial using a pseudo-random number generator using the group key as a seed. In this case, the node in the second group determines the pseudo-random number generated by using the group key as a seed as one coefficient of the polynomial, and the pseudo-random number generated by using the determined coefficient as a seed of the polynomial. Can be determined by other coefficients.

상기된 본 발명에 의하면, 마스터 노드의 오버로드 없이 다항식을 이용하면서 효율적으로 공유키를 생성할 수 있으며, 공격자에게 공유키가 노출되기가 어려운 장점이 있다.According to the present invention described above, it is possible to efficiently generate a shared key using polynomials without overloading the master node, and it is difficult to expose the shared key to an attacker.

이하에서는 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. 이하 설명 및 첨부된 도면들에서 실질적으로 동일한 구성요소들은 각각 동일한 부호들로 나타냄으로써 중복 설명을 생략하기로 한다. 또한 본 발명을 설명함에 있어 관련된 공지기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그에 대한 상세한 설명은 생략하기로 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the following description and the accompanying drawings, substantially the same components are denoted by the same reference numerals, and redundant description will be omitted. In addition, in the following description of the present invention, if it is determined that a detailed description of a related known function or configuration may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted.

도 1은 본 발명의 일 실시예에 따른 복수 개의 노드로 구성된 그룹 간의 정보 교환 방법을 나타낸 흐름도이고, 도 2는 본 실시예에 따른 정보 교환 방법이 수행되는 그룹 통신 환경을 나타내는 참고도이다. 본 실시예에서, 한 그룹 내의 송신 노드는 다른 그룹 내의 수신 노드들로 전달할 특정 메시지를 공유키를 이용하여 암호화(encrypt)하여 전송하고, 상기 수신 노드들은 암호화된 메시지를 공유키를 이용하여 복호화(decrypt)한다. 그리고 공유키의 생성은 다항식(polynomial)을 이용한다.1 is a flowchart illustrating a method of exchanging information between a group consisting of a plurality of nodes according to an embodiment of the present invention, and FIG. 2 is a reference diagram illustrating a group communication environment in which an information exchanging method according to the present embodiment is performed. In this embodiment, a transmitting node in one group encrypts a specific message to be delivered to a receiving node in another group by using a shared key, and the receiving nodes decrypt the encrypted message using a shared key. decrypt). And the generation of a shared key uses a polynomial.

도 2를 참조하면, 각각 복수 개의 노드로 구성되는 세 그룹(G1, G2, G3)이 있으며, Hi,j(x)는 그룹 Gi에서 그룹 Gj로부터 수신한 메시지를 복호화는데 사용되는 공유키를 결정하기 위한 다항식을 나타낸다. 예컨대, H2,1(x)는 그룹 G2에서 그룹 G1으로부터 수신한 메시지를 복호화하는데 사용되는 공유키를 결정하기 위한 다항식이다. 따라서 그룹 G1에서는 G2와 G3로부터 수신한 메시지의 복호화를 위해 H1,2(x)와 H1,3(x)가 필요하고, 그룹 G2에서는 G1, G3로부터 수신한 메시지의 복호화를 위해 H2,1(x)와 H2,3(x)가 필요하며, 그룹 G3에서는 G1, G2로부터 수신한 메시지의 복호화를 위해 H3,1(x)와 H3,2(x)가 필요하다. 물론 그룹의 개수는 3 이상인 N일 수 있으며, 이 경우 각 그룹에서 필요한 다항식의 개수는 (N-1)이 된다. Referring to FIG. 2, there are three groups G 1 , G 2 , and G 3 each consisting of a plurality of nodes, and Hi, j (x) decodes a message received from the group G j in group G i . Represents a polynomial for determining the shared key used. For example, H 2,1 (x) is a polynomial for determining the shared key used to decrypt a message received from group G 1 in group G 2 . Therefore, in group G 1 , H 1,2 (x) and H 1,3 (x) are required for decoding messages received from G 2 and G 3 , and in group G 2 , messages received from G 1 and G 3 H 2,1 (x) and H 2,3 (x) are required for decoding, and in group G 3 , H 3,1 (x) and H 3 are used for decoding messages received from G 1 and G 2 . , 2 (x) is required. Of course, the number of groups may be N of 3 or more, in which case the number of polynomials required in each group is (N-1).

이하에서는 그룹 G1 내의 하나의 노드인 노드 v가 특정 메시지를 그룹 G2 내의 모든 노드들로 전송하는 경우를 가정하여 설명하기로 한다. Hereinafter, it will be described on the assumption that node v, which is one node in group G 1 , transmits a specific message to all nodes in group G 2 .

도 1을 참조하면, 우선 그룹 G2 내의 복수 개의 노드 중 하나인 마스터 노드가 그룹키를 생성하여 그룹 G2 내에 브로드캐스트한다(110단계). 이 과정을 통하여 그룹키가 그룹 내의 모든 노드들 간에 공유된다. 후방향 비밀성(backward secrecy)을 위하여 그룹에 외부로부터 노드가 참여(join)하여 새로운 멤버가 되거나, 그룹 내의 노드가 탈퇴하는 경우에 그룹키는 갱신되어야 한다. 따라서 마스터 노드는 그룹에 외부로부터 노드가 참여(join)하여 새로운 멤버가 되거나, 그룹 내의 노드가 탈퇴하는 경우에 새로운 그룹키를 생성하여 그룹 내에 브로드캐스트한다. 1, the first group G by the plurality of nodes, one of the master node generates a group key, the group G is broadcast (Step 110) in the 2 in the second. Through this process, the group key is shared among all nodes in the group. For backward secrecy, a group key must be updated when a node joins a group from outside and becomes a new member, or when a node within a group leaves. Therefore, the master node joins a group from outside and becomes a new member, or generates a new group key and broadcasts it within the group when a node in the group leaves the group.

본 발명의 실시예에서, 마스터 노드는 소정 바이트의 랜덤 스트링(random string)을 그룹키로서 생성할 수 있다. 그러면 각 바이트에 해당하는 값이 각 다항식을 생성하는 데 이용된다. 예컨대, 그룹키로서 도 3에 도시된 바와 같은 랜덤 스트링이 생성되면, 첫 번째 바이트에 해당하는 값은 H2,1(x)를 생성하는 데 이용되고, 두 번째 바이트에 해당하는 값은 H2,3(x)를 생성하는 데 이용된다.In an embodiment of the present invention, the master node may generate a random string of predetermined bytes as a group key. The value corresponding to each byte is then used to generate each polynomial. For example, when a random string as shown in FIG. 3 is generated as a group key, a value corresponding to the first byte is used to generate H 2,1 (x), and a value corresponding to the second byte is H 2. Is used to generate 3 (x).

110단계 이후에, 그룹 G2 내의, 마스터 노드를 제외한 일반 노드들은 상기 그룹키를 수신하게 된다. 그러면, 상기 일반 노드들은 각각 수신한 그룹키를 이용하여 다항식을 생성한다(120단계). 여기서, 다항식의 차수 n은 미리 정해져 있을 수 있다. 일반 노드는 그룹키를 시드(seed)로 하여 수도-랜덤 넘버 생성기(PRNG: pseudo-random number generator)를 이용하여 다항식의 각 계수를 결정함으로써 다항식을 생성한다. 본 실시예에서, 동일 그룹 내의 노드들은 모두 동일한 수도-랜덤 넘버 생성기를 가지고 있다. 따라서 그룹 내의 일반 노드들 각각에서 생성되는 다 항식은 모두 동일한 다항식이 된다. 도 3에 나타난 바와 같이, 랜덤 스트링의 첫 번째 바이트에 해당하는 값 98을 시드로 하여 생성되는 수도-랜덤 넘버 23을 첫 번째 계수로 결정하고, 이 첫 번째 계수를 다시 시드로 하여 생성되는 118을 두 번째 계수로 결정하고, 이러한 과정을 반복하여 H2,1(x)의 각 계수를 결정한다. 마찬가지로, 랜덤 스트링의 두 번째 바이트에 해당하는 값 207을 시드로 하여 생성되는 수도-랜덤 넘버 113을 첫 번째 계수로 결정하고, 이 첫 번째 계수를 다시 시드로 하여 생성되는 88을 두 번째 계수로 결정하고, 이러한 과정을 반복하여 H2,3(x)의 각 계수를 결정한다. After step 110, general nodes other than the master node in the group G 2 receive the group key. Then, the general nodes each generate a polynomial using the received group key (step 120). Here, the order n of the polynomial may be predetermined. A general node generates a polynomial by determining each coefficient of the polynomial using a pseudo-random number generator (PRNG) using the group key as a seed. In this embodiment, nodes in the same group all have the same pseudo-random number generator. Thus, the polynomials generated at each of the general nodes in a group are all the same polynomial. As shown in FIG. 3, the random number 23 generated by seeding the value 98 corresponding to the first byte of the random string is determined as the first coefficient, and 118 generated by seeding the first coefficient again. Determine the second coefficient, and repeat this process to determine each coefficient of H 2,1 (x). Similarly, the pseudo-random number 113 generated by seeding the value 207 corresponding to the second byte of the random string is determined as the first coefficient, and the 88 coefficient generated by reseeding this first coefficient is determined as the second coefficient. Repeat this procedure to determine each coefficient of H 2,3 (x).

다시 도 1을 참조하면, 메시지를 송신하고자 하는 그룹 G1 내의 노드 v는 자신의 식별자(ID) 값을 그룹 G2 내의 노드 중 하나로 유니캐스트한다(130단계). 이때 노드 v는 그룹 G2 내의 노드 중 자신과 가장 가까운 거리에 있는 노드로 상기 식별자(ID) 값을 유니캐스트할 수 있다. 노드 v로부터 상기 식별자 값을 수신하는 노드를 노드 D로 가정한다. Referring back to FIG. 1, a node v in group G 1 to which a message is to be transmitted unicasts its identifier (ID) value to one of the nodes in group G 2 (step 130). At this time, the node v may unicast the identifier (ID) value to a node that is closest to the node among the nodes in the group G 2 . Assume that node D receives the identifier value from node v.

130단계 이후에, 식별자 값을 수신한 노드 D는 상기 식별자 값을 상기 120단계에서 생성하여 가지고 있는 다항식 H2,1(x)에 대입 연산하여 공유키를 생성한다(140단계). 예컨대, 다항식 H2,1(x)=5x+8이고, 노드 v의 식별자 값이 5라고 하자. 그러면 노드 D는 H2,1(5)=5*5+8=33을 공유키로서 생성한다. After operation 130, the node D receiving the identifier value generates the shared key by assigning the identifier value to the polynomial H 2, 1 (x) generated in operation 120 (step 140). For example, assume that the polynomial H 2,1 (x) = 5x + 8 and the identifier value of node v is 5. Node D then generates H 2,1 (5) = 5 * 5 + 8 = 33 as a shared key.

140단계 이후에, 상기 노드 D는 생성된 공유키를 그룹 G1 내의 노드 v로 유니캐스트 하고(150단계), 상기 노드 v는 상기 노드 D로부터 수신한 공유키를 이용하여 메시지를 암호화하고(160단계), 암호화된 메시지를 자신의 식별자 값과 함께 그룹 G2 내에 브로드캐스트한다(170단계). 메시지를 m, 노드 v의 식별자 값을 v라 하면, 상기 노드 v가 전송하는 패킷은 (v, G2, E(m, H2,1(v)))로 표현될 수 있다. 여기서, E(m, H2,1(v))는 메시지 m이 H2,1(v)를 이용하여 암호화된 메시지를 의미한다. 상기된 예와 같이 공유키로 33이 생성되었다면, 암호화된 메시지는 E(m, 33)으로 표현된다. 이때 노드 v가 전송하는 패킷은 (v, G2, E(m, 33))이 된다.After step 140, the node D unicasts the generated shared key to node v in group G 1 (step 150), and node v encrypts the message using the shared key received from node D (160). In step 170, the encrypted message is broadcast in the group G 2 together with its identifier value. If the message is m and the identifier value of node v is v, the packet transmitted by node v may be expressed as (v, G 2 , E (m, H 2,1 (v))). Here, E (m, H 2,1 (v)) means a message in which the message m is encrypted using H 2,1 (v). If 33 is generated with the shared key as in the above example, the encrypted message is represented by E (m, 33). At this time, the packet transmitted by the node v becomes (v, G 2 , E (m, 33)).

170단계가 수행되면, 그룹 G2 내의 모든 노드들은 노드 v로부터 식별자 값과 암호화된 메시지를 수신하게 된다. 이미 설명한 것처럼, 그룹 G2 내의 모든 노드들은 다항식 H2,1(x)를 이미 알고 있다. 따라서 그룹 G2 내의 노드들 각각은 상기 노드 v로부터 획득한 식별자 값을 자신이 가지고 있는 다항식에 대입 연산하여 공유키를 생성한다(180단계). 예컨대, 그룹 G2 내의 노드들 각각은 노드 v로부터 획득한 식별자 값 5를 자신이 가지고 있는 다항식 H2,1(x)=5x+8에 대입하여 H2,1(5)=5*5+8=33을 공유키로서 생성한다.When step 170 is performed, all nodes in group G 2 receive an identifier value and an encrypted message from node v. As already explained, all nodes in group G 2 already know the polynomial H 2,1 (x). Accordingly, each of the nodes in the group G 2 substitutes the identifier value obtained from the node v into a polynomial thereof, and generates a shared key (step 180). For example, each of the nodes in group G 2 assigns the identifier value 5 obtained from node v to the polynomial H 2,1 (x) = 5x + 8 that it has, H 2,1 (5) = 5 * 5 + Generate 8 = 33 as a shared key.

180단계 이후에, 그룹 G2 내의 노드들 각각은 노드 v로부터 수신한 암호화된 메시지를 상기 생성된 공유키를 이용하여 복호화(decrypt)한다. 예컨대, 노드 v로부터 수신한 암호화된 메시지 E(m, 33)를 공유키 33을 이용하여 복호화할 수 있다. 그룹 G2 내의 노드들 이외의 노드들은 공유키 생성을 위한 다항식을 알 수 없기 때문에 노드 v로부터 암호화된 메시지를 수신하더라도 그 메시지를 복호화할 수 없게 된다. After step 180, each of the nodes in group G 2 decrypts the encrypted message received from node v using the generated shared key. For example, the encrypted message E (m, 33) received from the node v can be decrypted using the shared key 33. Nodes other than the nodes in group G 2 do not know the polynomial for generating the shared key, and thus cannot decrypt the message even if they receive an encrypted message from node v.

상술한 본 발명에 의하면, 마스터 노드가 그룹키의 생성 및 전송과 다항식의 생성 및 전송을 모두 부담하지 않고, 마스터 노드가 그룹키를 생성하여 그룹 내의 일반 노드들로 브로드캐스트하고 일반 노드들 각각이 그룹키와 수도-랜덤 넘버 생성기를 이용하여 다항식을 생성하기 때문에, 마스터 노드가 수행하는 부담(cost)이 적다. 즉, 마스터 노드의 오버로드 없이 다항식을 이용하면서 효율적으로 공유키를 생성할 수 있으며, 각 노드들이 수도-랜덤 넘버 생성기를 이용하여 다항식을 생성하기 때문에 공격자에게 공유키가 노출되기가 어렵다. According to the present invention described above, the master node does not bear both the generation and transmission of the group key and the generation and transmission of the polynomial, and the master node generates the group key and broadcasts it to the general nodes in the group. Since the polynomial is generated using the group key and the capital-random number generator, the cost of the master node is low. That is, the shared key can be generated efficiently using the polynomial without overloading the master node, and the shared key is difficult to expose to the attacker because each node generates the polynomial using the capital-random number generator.

한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드 디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등) 및 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)와 같은 저장매체를 포함한다.Meanwhile, the above-described embodiments of the present invention can be written as a program that can be executed in a computer, and can be implemented in a general-purpose digital computer that operates the program using a computer-readable recording medium. The computer-readable recording medium may be a magnetic storage medium (for example, a ROM, a floppy disk, a hard disk, etc.), an optical reading medium (for example, a CD-ROM, DVD, etc.) and a carrier wave (for example, the Internet). Storage medium).

이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.So far I looked at the center of the preferred embodiment for the present invention. Those skilled in the art will appreciate that the present invention can be implemented in a modified form without departing from the essential features of the present invention. Therefore, the disclosed embodiments should be considered in an illustrative rather than a restrictive sense. The scope of the present invention is shown in the claims rather than the foregoing description, and all differences within the scope will be construed as being included in the present invention.

도 1은 본 발명의 일 실시예에 따른 복수 개의 노드로 구성된 그룹 간의 정보 교환 방법을 나타낸 흐름도이다.1 is a flowchart illustrating a method of exchanging information between a group consisting of a plurality of nodes according to an embodiment of the present invention.

도 2는 본 실시예에 따른 정보 교환 방법이 수행되는 그룹 통신 환경을 나타내는 참고도이다.2 is a reference diagram illustrating a group communication environment in which an information exchange method according to the present embodiment is performed.

도 3은 그룹키를 이용하여 다항식을 생성하는 예를 설명하기 위한 참고도이다.3 is a reference diagram for explaining an example of generating a polynomial using a group key.

Claims (9)

복수 개의 노드로 구성된 그룹 간의 정보 교환 방법에 있어서,In the information exchange method between a group consisting of a plurality of nodes, (a) 제2 그룹 내의 복수 개의 노드 중 하나인 마스터 노드가 그룹키를 생성하여 상기 제2 그룹 내에 브로드캐스트하는 단계;(a) generating, by a master node, one of a plurality of nodes in a second group, a group key and broadcasting in the second group; (b) 상기 제2 그룹 내의 노드가 상기 그룹키를 수신하고, 상기 그룹키를 이용하여 다항식을 생성하는 단계; 및(b) a node in the second group receiving the group key and generating a polynomial using the group key; And (c) 상기 다항식을 생성한 상기 노드가 상기 다항식을 이용하여 공유키를 생성하고, 제1 그룹 내의 노드로부터 수신한 암호화된 메시지를 상기 공유키를 이용하여 복호화(decrypt)하는 단계를 포함하는 것을 특징으로 하는 그룹 간의 정보 교환 방법.(c) the node generating the polynomial generates a shared key using the polynomial and decrypts an encrypted message received from the node in the first group using the shared key. Characterized in that the information exchange between groups. 제1항에 있어서,The method of claim 1, 상기 제1 그룹 내의 상기 노드가 자신의 식별자 값을 상기 제2 그룹 내의 복수 개의 노드 중 하나로 유니캐스트하는 단계;The node in the first group unicasting its identifier value to one of a plurality of nodes in the second group; 상기 식별자 값을 수신한 상기 제2 그룹 내의 노드가 상기 식별자 값을 상기 다항식에 대입 연산하여 공유키를 생성하고, 상기 공유키를 상기 제1 그룹 내의 상기 노드로 유니캐스트하는 단계; 및A node in the second group receiving the identifier value assigns the identifier value to the polynomial to generate a shared key, and unicasts the shared key to the node in the first group; And 상기 제1 그룹 내의 상기 노드가 상기 공유키를 이용하여 상기 제2 그룹 내의 복수 개의 노드로 전송할 메시지를 암호화하여 상기 식별자 값과 함께 상기 제2 그룹 내에 브로드캐스트하는 단계를 더 포함하는 것을 특징으로 하는 그룹 간의 정보 교환 방법.Encrypting, by the node in the first group, a message to be transmitted to the plurality of nodes in the second group using the shared key and broadcasting the message in the second group together with the identifier value. How information is exchanged between groups. 제2항에 있어서, The method of claim 2, 상기 (c) 단계는,In step (c), 상기 다항식을 생성한 상기 노드가 상기 식별자 값과 상기 암호화된 메시지를 수신하고, 상기 식별자 값을 상기 다항식에 대입 연산하여 공유키를 생성하고, 상기 공유키를 이용하여 상기 암호화된 메시지를 복호화(decrypt)하는 것을 특징으로 하는 그룹 간의 정보 교환 방법.The node that has generated the polynomial receives the identifier value and the encrypted message, assigns the identifier value to the polynomial to generate a shared key, and decrypts the encrypted message using the shared key. Information exchange between groups. 제1항에 있어서, The method of claim 1, 상기 (b) 단계에서,In step (b), 상기 제2 그룹 내의 상기 노드는 상기 그룹키를 시드로 하여 수도-랜덤 넘버 생성기를 이용하여 다항식의 계수를 결정함으로써 상기 다항식을 생성하는 것을 특징으로 하는 그룹 간의 정보 교환 방법.And the node in the second group generates the polynomial by determining a coefficient of the polynomial using a pseudo-random number generator using the group key as a seed. 제4항에 있어서, The method of claim 4, wherein 상기 (b) 단계에서,In step (b), 상기 제2 그룹 내의 상기 노드는 상기 그룹키를 시드로 하여 생성되는 수도-랜덤 넘버를 다항식의 어느 하나의 계수로 결정하고, 상기 결정된 계수를 시드로 하여 생성되는 수도-랜덤 넘버를 다항식의 다른 계수로 결정하는 것을 특징으로 하는 그룹 간의 정보 교환 방법.The node in the second group determines a pseudo-random number generated by using the group key as a seed as one coefficient of the polynomial, and uses the determined coefficient as a seed as another coefficient of the polynomial. Information exchange method between groups, characterized in that determined by. 복수 개의 노드로 구성된 그룹에서의 공유키 생성 방법에 있어서,In the shared key generation method in a group consisting of a plurality of nodes, (a) 제2 그룹 내의 복수 개의 노드 중 하나인 마스터 노드가 그룹키를 생성하여 상기 제2 그룹 내에 브로드캐스트하는 단계;(a) generating, by a master node, one of a plurality of nodes in a second group, a group key and broadcasting in the second group; (b) 상기 제2 그룹 내의 노드가 상기 그룹키를 수신하고, 상기 그룹키를 이용하여 다항식을 생성하는 단계; 및(b) a node in the second group receiving the group key and generating a polynomial using the group key; And (c) 상기 다항식을 생성한 상기 노드가 상기 다항식에 제1 그룹 내의 노드로부터 수신한 식별자 값을 대입 연산하여 공유키를 생성하는 단계를 포함하는 것을 특징으로 하는 공유키 생성 방법.and (c) generating a shared key by substituting an identifier value received from a node in a first group into the polynomial by the node that has generated the polynomial. 제6항에 있어서,The method of claim 6, 상기 제1 그룹 내의 상기 노드가 자신의 식별자 값을 상기 제2 그룹 내의 복수 개의 노드 중 하나로 유니캐스트하는 단계;The node in the first group unicasting its identifier value to one of a plurality of nodes in the second group; 상기 식별자 값을 수신한 상기 제2 그룹 내의 노드가 상기 식별자 값을 상기 다항식에 대입 연산하여 공유키를 생성하고, 상기 공유키를 상기 제1 그룹 내의 상기 노드로 유니캐스트하는 단계; 및A node in the second group receiving the identifier value assigns the identifier value to the polynomial to generate a shared key, and unicasts the shared key to the node in the first group; And 상기 제1 그룹 내의 상기 노드가 상기 식별자 값을 상기 제2 그룹 내에 브로드캐스트하는 단계를 더 포함하는 것을 특징으로 하는 공유키 생성 방법.And the node in the first group broadcast the identifier value in the second group. 제6항에 있어서, The method of claim 6, 상기 (b) 단계에서,In step (b), 상기 제2 그룹 내의 상기 노드는 상기 그룹키를 시드로 하여 수도-랜덤 넘버 생성기를 이용하여 다항식의 계수를 결정함으로써 상기 다항식을 생성하는 것을 특징으로 하는 공유키 생성 방법.And the node in the second group generates the polynomial by determining a coefficient of the polynomial using a pseudo-random number generator using the group key as a seed. 제8항에 있어서, The method of claim 8, 상기 (b) 단계에서,In step (b), 상기 제2 그룹 내의 상기 노드는 상기 그룹키를 시드로 하여 생성되는 수도-랜덤 넘버를 다항식의 어느 하나의 계수로 결정하고, 상기 결정된 계수를 시드로 하여 생성되는 수도-랜덤 넘버를 다항식의 다른 계수로 결정하는 것을 특징으로 하는 그룹 간의 공유키 생성 방법.The node in the second group determines a pseudo-random number generated by using the group key as a seed as one coefficient of the polynomial, and uses the determined coefficient as a seed as another coefficient of the polynomial. The method of generating a shared key between groups, characterized in that determined by.
KR1020090112474A 2009-11-20 2009-11-20 Inter-group information sharing method and key generation method KR101094094B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090112474A KR101094094B1 (en) 2009-11-20 2009-11-20 Inter-group information sharing method and key generation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090112474A KR101094094B1 (en) 2009-11-20 2009-11-20 Inter-group information sharing method and key generation method

Publications (2)

Publication Number Publication Date
KR20110055866A true KR20110055866A (en) 2011-05-26
KR101094094B1 KR101094094B1 (en) 2011-12-15

Family

ID=44364524

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090112474A KR101094094B1 (en) 2009-11-20 2009-11-20 Inter-group information sharing method and key generation method

Country Status (1)

Country Link
KR (1) KR101094094B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013073869A1 (en) * 2011-11-17 2013-05-23 Samsung Electronics Co., Ltd. Method and apparatus for managing security keys for communication authentication with mobile station in wireless communication system
KR101327051B1 (en) * 2012-02-08 2013-11-08 경희대학교 산학협력단 Method for exchanging group key using trust server in communication network

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3917507B2 (en) 2002-01-28 2007-05-23 株式会社東芝 Content providing system, user system, tracking system, content providing method, encrypted content decrypting method, unauthorized user specifying method, encrypting device, decrypting device, and program
US20090165032A1 (en) 2007-12-21 2009-06-25 Ibiquity Digital Corporation Method And Apparatus For Managing Broadcasting Services Using Broadcast Tokens

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013073869A1 (en) * 2011-11-17 2013-05-23 Samsung Electronics Co., Ltd. Method and apparatus for managing security keys for communication authentication with mobile station in wireless communication system
KR20130054911A (en) * 2011-11-17 2013-05-27 삼성전자주식회사 Method and apparatus for handling security key to authenticate with a mobile station in a radio communication system
US9380459B2 (en) 2011-11-17 2016-06-28 Samsung Electronics Co., Ltd. Method and apparatus for managing security keys for communication authentication with mobile station in wireless communication system
KR101327051B1 (en) * 2012-02-08 2013-11-08 경희대학교 산학협력단 Method for exchanging group key using trust server in communication network

Also Published As

Publication number Publication date
KR101094094B1 (en) 2011-12-15

Similar Documents

Publication Publication Date Title
EP1354443B1 (en) Method for broadcast encryption
US6851049B1 (en) Method and apparatus for facilitating secure anonymous email recipients
KR20140028342A (en) Method of managing keys for broadcast encryption and method of transmitting messages using broadcast encryption
Shi et al. ARDEN: Anonymous networking in delay tolerant networks
JP2021506023A (en) Secure content routing with one-time pads
JP2022516352A (en) One-time pad encryption hub
JP5400395B2 (en) Data distribution system, key management apparatus, and key management method
KR101086431B1 (en) Method and apparatus for decryption using external device or service on revocation mechanism, method and apparatus for supporting decryption therefor
KR101308023B1 (en) Broadcast encryption method for securing recipient privacy
US20120201376A1 (en) Communication device and key calculating device
KR101094094B1 (en) Inter-group information sharing method and key generation method
JP5512559B2 (en) ENCRYPTION DEVICE, DECRYPTION DEVICE, ENCRYPTION SYSTEM, ENCRYPTION METHOD, PROGRAM
JP4561074B2 (en) Information processing apparatus, information processing method, and computer program
WO2022239129A1 (en) Key exchange system, device, key exchange method, and program
Saraswathi et al. Dynamic group key management scheme for clustered wireless sensor networks
US11451518B2 (en) Communication device, server device, concealed communication system, methods for the same, and program
JP5051429B2 (en) Encryption key management method, system thereof, and program thereof
JP2006203739A (en) Encryption method, and apparatus and program utilizing its method
JP7254296B2 (en) Key exchange system, information processing device, key exchange method and program
CN102324994B (en) System and method for optimization and expandability of broadcast encryption
JP4576824B2 (en) Information processing apparatus and information processing method
JP2009141633A (en) Key management device and key delivery method
Chew et al. Email Plugin Suite for k-Resilient Identity-Based Encryption and Searchable Encryption
Kong Formal notions of anonymity for peer-to-peer networks
Zhu Cryptanalysis of two group key management protocols for secure multicast

Legal Events

Date Code Title Description
A201 Request for 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: 20140916

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20161004

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20171012

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20181002

Year of fee payment: 8