KR100919864B1 - Key distribution method and apparatus using network coding, network communication system and recording medium storing program for performing the method thereof - Google Patents

Key distribution method and apparatus using network coding, network communication system and recording medium storing program for performing the method thereof

Info

Publication number
KR100919864B1
KR100919864B1 KR1020070090857A KR20070090857A KR100919864B1 KR 100919864 B1 KR100919864 B1 KR 100919864B1 KR 1020070090857 A KR1020070090857 A KR 1020070090857A KR 20070090857 A KR20070090857 A KR 20070090857A KR 100919864 B1 KR100919864 B1 KR 100919864B1
Authority
KR
South Korea
Prior art keywords
message
router
network
terminal device
key
Prior art date
Application number
KR1020070090857A
Other languages
Korean (ko)
Other versions
KR20090025760A (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 KR1020070090857A priority Critical patent/KR100919864B1/en
Publication of KR20090025760A publication Critical patent/KR20090025760A/en
Application granted granted Critical
Publication of KR100919864B1 publication Critical patent/KR100919864B1/en

Links

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
    • 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
    • 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/0431Key distribution or pre-distribution; Key agreement

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명은 네트워크 코딩을 이용한 키 분배 방법, 키 분배 장치 및 네트워크 통신 시스템 그리고 상기 방법을 수행하는 프로그램이 기록된 기록 매체를 개시한다. 본 발명의 네트워크 코딩을 이용한 키 분배 방법은 라우터가 신뢰 센터 및 라우터로 부터 전송받은 메시지를 이용하여 네트워크 코딩을 수행하고, 신뢰 센터와 단말 장치가 네트워크 코딩에 따라 생성된 메시지를 이용하여 링크 키를 각각 생성하는 단계; 및 신뢰 센터가 상기 생성된 링크 키를 이용하여 네트워크 키를 생성하고, 상기 생성된 네트워크 키를 상기 단말 장치에 전송하는 단계를 포함한다. 본 발명에 따르면, 링크 키를 생성하기 위해 교환되는 정보량을 최소화할 수 있고, 링크 키를 생성하고 링크 키를 분배함에 따라 소요되는 시간과 소비 전력을 단축시킴으로써 키 분배 효율을 향상 시킬 수 있기 때문에, 멀티홉(multi-hop) 네트워크에서 홉(hop) 수가 많은 텔레매틱스나 군용 무선 통신망 등에 효과적으로 사용될 수 있다.The present invention discloses a key distribution method using network coding, a key distribution device and a network communication system, and a recording medium having recorded thereon a program for performing the method. In the key distribution method using the network coding of the present invention, the router performs network coding using a message transmitted from the trust center and the router, and the link center uses the message generated according to the network coding to link the link key. Generating each; And generating, by the trust center, a network key using the generated link key, and transmitting the generated network key to the terminal device. According to the present invention, since the amount of information exchanged for generating the link key can be minimized, the key distribution efficiency can be improved by shortening the time and power consumed by generating the link key and distributing the link key. In multi-hop networks, it can be effectively used for telematics or military wireless communication networks with a large number of hops.

Description

네트워크 코딩을 이용한 키 분배 방법, 키 분배 장치 및 네트워크 통신 시스템 그리고 상기 방법을 수행하는 프로그램이 기록된 기록 매체{Key distribution method and apparatus using network coding, network communication system and recording medium storing program for performing the method thereof}Key distribution method and apparatus using network coding, network communication system and recording medium storing program for performing the method }

본 발명은 네트워크 시스템(Network system), 네트워크 시스템에 사용되는 키 분배 방법 및 키 분배 장치에 관한 것으로서, 특히 지그비(Zigbee)와 같은 무선 네트워크 시스템(Wireless network system)에서 네트워크 시스템과 새롭게 네트워크에 참여하고자 하는 단말 장치 사이에서 암호화된 데이터를 송수신하기 위한 키 분배 방법에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a network system, a key distribution method used in a network system, and a key distribution device. In particular, the present invention relates to a network system and a new network in a wireless network system such as Zigbee. The present invention relates to a key distribution method for transmitting and receiving encrypted data between terminal devices.

네트워크 시스템 특히 보완이 요구되는 무선 네트워크 시스템은 단말 장치와 네트워크가 비밀 키 또는 공개 키를 공유하고, 공유된 키를 이용하여 단말 장치와 네트워크 사이에 암호화된 데이터의 송수신이 이루어진다. 무선 네트워크에 적용될 수 있는 통신 표준으로서 지그비(ZigBee) 무선 표준은 저속 저전력 기반의 무선 개인 영역 통신 기술로, IEEE 802.15.4 표준을 하위 표준으로 하고, 상위에 네트워크 계층(network layer)과 응용 계층(application layer)을 표준화 하고 보안도 추가한 국제표준이다. 지그비는 가정, 사무실 등의 무선 네트워킹 분야에서 10~20m 내외의 근거리 통신과 유비쿼터스 컴퓨팅을 위한 기술로서, 전력 소모를 최소화하는 대신 소량의 정보를 소통시키는 무선 센서 네트워크이다. 이러한 지그비 네트워크는 지능형 홈 네트워크, 빌딩 등의 근거리 통신 시장과 산업용기기 자동화, 물류, 환경 모니터링, 휴먼 인터페이스, 텔레매틱스, 군사 등에 활용된다. Network systems In particular, in a wireless network system requiring supplementation, a terminal device and a network share a secret key or a public key, and encrypted data is transmitted and received between the terminal device and the network using the shared key. As a communication standard that can be applied to a wireless network, ZigBee wireless standard is a low-speed, low-power wireless personal area communication technology. The ZigBee wireless standard is based on the IEEE 802.15.4 standard as a lower standard. It is an international standard that standardizes application layer and adds security. ZigBee is a technology for short-range communication and ubiquitous computing within 10 ~ 20m in wireless networking fields such as home and office.It is a wireless sensor network that communicates a small amount of information instead of minimizing power consumption. These ZigBee networks are used in short-range communications markets such as intelligent home networks, buildings, industrial equipment automation, logistics, environmental monitoring, human interfaces, telematics and military.

지그비는 전력 소모량이 적고 값이 싸기 때문에, 홈 네트워크 등 유비쿼터스 구축 솔루션으로 각광받고 있다. 지그비에서 사용되는 키는, 두 단말 장치 사이의 암호화 통신에 사용되는 링크 키(link key), 링크 키를 생성하기 위한 마스터 키(master key), 그리고 브로드캐스팅(broadcasting)과 멀티캐스팅(multicasting)에 사용하는 네트워크 키(network key)가 있다. 현재 출시된 지그비를 이용한 네트워크 시스템은 선형(linear), 또는 트리(tree)구조를 갖는다. ZigBee's low power consumption and low price make it a ubiquitous solution for home networks. The key used in Zigbee is a link key used for encryption communication between two terminal devices, a master key for generating a link key, and broadcasting and multicasting. There is a network key used. Current Zigbee-based network systems have a linear or tree structure.

도 1은 무선 네트워크의 구조를 설명하기 위한 참고도이다. 도 1에 도시된 무선 네트워크 구조는 지그비(Zigbee) 기반의 네트워크 구조를 가지며, 신뢰 센터(trust center, coordinator, 10), 라우터(router, 22~26), 단말 장치(end device, 31~36)를 포함한다.1 is a reference diagram for explaining the structure of a wireless network. The wireless network structure shown in FIG. 1 has a Zigbee-based network structure, and includes a trust center (coordinator) 10, routers 22 to 26, and end devices 31 to 36. It includes.

신뢰 센터(10)는 무선 네트워크의 조정자(Coordinator)로서, 네트워크의 보안에서 암호화를 위한 키 생성, 분배 및 관리 등의 역할을 한다. 라우터(22~26)는 네트워크 구성을 위한 라우팅을 수행한다. 단말 장치(31~36)는 라우터를 통해서 또는 신뢰 센터와 직접 데이터를 주고받는다.The trust center 10 is a coordinator of a wireless network, and serves as a key generation, distribution, and management for encryption in the security of the network. Routers 22 to 26 perform routing for network configuration. The terminal devices 31 to 36 exchange data with a router or directly with a trust center.

새로운 단말 장치(36)가 네트워크에 참여(join)하고자 할 때, 참여하고자 하는 단말 장치(36)는 라우터(24)와의 메시지 전달을 통해서 네트워크에 연결된다. 또한, 상기 단말 장치(36)는 신뢰 센터(10)와의 통신을 통해서 포인트-투-포인트(point-to-point) 통신을 위한 링크 키와 그룹 통신을 하기 위한 네트워크 키를 분배 받는다. 이때, 라우터(24)는 중간에서 중계 역할을 한다.When the new terminal device 36 wants to join the network, the terminal device 36 to join is connected to the network through message transfer with the router 24. In addition, the terminal device 36 receives a link key for point-to-point communication and a network key for group communication through communication with the trust center 10. At this time, the router 24 serves as a relay in the middle.

상기와 같이 지그비 네트워크에서는 대칭키 암호방식을 이용하여 안전하게 통신을 수행한다. 각 노드들은 마스터 키나 링크 키를 이용하여 포인트-투-포인트 통신을 하고, 네트워크 키를 이용하여 그룹 통신을 한다. 그리고 네트워크에 새로운 단말 장치가 참여를 요청하면, 신뢰 센터(trust center)는 단말 장치에게 마스터 키를 전달하고 이를 이용하여 새로운 링크 키를 생성한 후, 생성된 링크 키를 이용하여 네트워크 키를 안전하게 전송하는 방법을 사용한다.As described above, the Zigbee network performs secure communication using a symmetric key cryptography. Each node performs point-to-point communication using a master key or a link key and performs group communication using a network key. When a new terminal device requests participation in the network, the trust center delivers the master key to the terminal device, generates a new link key using the terminal device, and then securely transmits the network key using the generated link key. Use the method.

이하, 도 2를 참조하여 지그비 네트워크에서 네트워크에 참여하고자 하는 새로운 단말 장치가 키를 전송받는 종래의 방법을 자세히 설명한다.Hereinafter, a conventional method of receiving a key by a new terminal device intending to join a network in a Zigbee network will be described in detail with reference to FIG. 2.

도 2에서 단말 장치(103)는 연결하고자 하는 라우터(102)와 비컨(beacon) 메시지(201, 202)를 주고받아 채널을 확보한다. 단말 장치(103)는 확보된 채널을 통해서 연결 요청 메시지(203)를 전송하고, 전송된 메시지가(203) 유효할 경우에 라우터(102)는 단말 장치에 연결 승인 메시지(204)를 보내 단말 장치가 연결되었음을 알린다. 다음, 라우터(102)가 신뢰 센터(trust center, 101)에게 단말 장치 업데이트 명령(Update-Device Command)(206)을 전송하면, 신뢰 센터(101)는 새로운 단말 장치(103)가 네트워크에 포함될 것인지의 참여 여부를 판단한다. 네트워크에 포함시킬 것으로 판단한 경우 단말 장치(103)에게 보안키를 분배하는 과정은 다음과 같이 진행된다.In FIG. 2, the terminal device 103 exchanges a beacon message 201 and 202 with a router 102 to be connected to secure a channel. The terminal device 103 transmits the connection request message 203 through the secured channel, and when the transmitted message is valid 203, the router 102 sends a connection approval message 204 to the terminal device. Informs you that you are connected. Next, when the router 102 sends a terminal device update command (Update-Device Command) 206 to the trust center 101, the trust center 101 determines whether the new terminal device 103 will be included in the network. Judge whether to participate. If it is determined to include in the network, the process of distributing the security key to the terminal device 103 proceeds as follows.

신뢰 센터(101)가 마스터 키를 단말 장치(103)에 전송하면(208, 209), 신뢰 센터(101)와 단말 장치(103)는 마스터 키를 이용하여 대칭키 키 설정 (symmetric- key key establishment, SKKE) 프로토콜(210, 211, 212, 213)을 수행하고, 서로 간의 새로운 비밀키인 링크키(link key)를 생성한다. 이때 라우터(102)는 중간에서 중계 역할을 한다. SKKE 프로토콜이 성공적으로 수행되면, 신뢰센터(101)는 생성된 링크키를 이용하여 네트워크 키의 암호화한 값을 단말 장치(103)에게 전송한다(214). 그러면 단말 장치(103)는 링크키를 이용하여 신뢰 센터(101)에게 전송받은 데이터로부터 네트워크 키를 획득하여 네트워크에 참여(215)한다. 이러한 종래의 방법에서는 단말 장치(103)가 신뢰센터(101)로부터 네트워크 키를 획득한 것을 인증으로 파악한다.When the trust center 101 transmits the master key to the terminal device 103 (208, 209), the trust center 101 and the terminal device 103 establish a symmetric-key key establishment using the master key. , SKKE) protocols 210, 211, 212, and 213, and generate link keys that are new secret keys. At this time, the router 102 serves as a relay in the middle. If the SKKE protocol is successfully performed, the trust center 101 transmits the encrypted value of the network key to the terminal device 103 using the generated link key (214). Then, the terminal device 103 acquires the network key from the data transmitted to the trust center 101 using the link key and participates in the network 215. In this conventional method, the terminal device 103 determines that the network key is obtained from the trust center 101 by authentication.

상술한 종래의 방법은 보안키를 분배하기 위해 전송해야 하는 메시지 개수가 많고, 지연 시간이 길다는 문제가 있다. 또한, 상술한 종래의 방법은 배터리를 전원으로 하는 센서 네트워크가 요구하는 저 전력과 짧은 지연 시간을 충족시키기 어려운 문제가 있다.The conventional method described above has a problem that the number of messages to be transmitted in order to distribute the security key is large and the delay time is long. In addition, the conventional method described above has a problem that it is difficult to meet the low power and short delay time required by the sensor network powered by the battery.

관련 특허 문헌으로서, 대한민국 특허공개 제2006-49340호는 복수의 노드에 노드 경로 ID를 부여하고 해쉬함수를 이용하는 키 생성 방법을 개시한 바 있고, 대한민국 특허공개 제2003-74826호는 핀(PIN) 값을 기초로 식별 키를 생성하는 방법을 개시한 바 있으며, 미국 특허공개 제2007-52548호는 사용자 구분을 위한 새로운 인증 프로세스, 키 생성 방법을 개시한 바 있다. 그러나, 기존의 특허들은 네트워크에 새롭게 참여하는 장치를 인증하기 위한 키를 효율적으로 분배하기 위한 방법에 대하여는 어떠한 사항도 개시한 바 없다.As a related patent document, Korean Patent Laid-Open Publication No. 2006-49340 discloses a key generation method for assigning a node path ID to a plurality of nodes and using a hash function, and Korean Patent Laid-Open Publication No. 2003-74826 discloses a PIN. A method of generating an identification key based on a value has been disclosed. US Patent Publication No. 2007-52548 discloses a new authentication process and key generation method for user identification. However, the existing patents do not disclose anything about a method for efficiently distributing a key for authenticating a newly participating device in a network.

상술한 종래 기술의 한계를 고려하여, 본 발명은 링크 키를 생성하기 위해 교환되는 정보량을 최소화하고, 또한 링크 키를 생성 및 분배함에 따라 소요되는 시간과 소비 전력을 단축시키기 위해 라우터가 네트워크 코딩을 수행하고, 네트워크 코딩된 메시지들을 신뢰 센터와 단말 장치에 전송하는 키 분배 방법과 장치, 그리고 이러한 키 분배 방법을 채택하고 있는 네트워크 통신 시스템을 제공하는 것을 목적으로 한다. In view of the above-mentioned limitations of the prior art, the present invention provides a router with network coding to minimize the amount of information exchanged to generate the link key, and to reduce the time and power consumption of generating and distributing the link key. A key distribution method and apparatus for performing and transmitting network coded messages to a trust center and a terminal device, and a network communication system employing such a key distribution method.

상술한 기술적 과제를 해결하기 위한 본 발명에 따른 신뢰 센터, 라우터 및 단말 장치를 구비하는 네트워크 통신 시스템의 키 분배 방법은 a) 상기 라우터가 신뢰 센터 및 라우터로 부터 전송받은 메시지를 이용하여 네트워크 코딩을 수행하고, 상기 신뢰 센터와 상기 단말 장치가 상기 네트워크 코딩에 따라 생성된 메시지를 이용하여 링크 키를 각각 생성하는 단계; 및 b) 상기 신뢰 센터가 상기 생성된 링크 키를 이용하여 네트워크 키를 생성하고, 상기 생성된 네트워크 키를 상기 단말 장치에 전송하는 단계를 포함한다.In order to solve the above technical problem, a key distribution method of a network communication system including a trust center, a router, and a terminal device according to the present invention includes a) network coding using a message transmitted from a trust center and a router by the router. And generating, by the trust center and the terminal device, a link key using the message generated according to the network coding, respectively. And b) the trust center generating a network key using the generated link key and transmitting the generated network key to the terminal device.

본 발명에서 a) 단계는 a1) 상기 신뢰 센터와 단말 장치가 링크 키 설정을 위한 제1 메시지와 제2 메시지를 각각 라우터에 전송하는 단계; a2) 상기 라우터가 상기 제1 메시지와 제2 메시지를 이용한 네트워크 코딩을 수행하고, 상기 네트워크 코딩에 따라 생성된 메시지를 상기 신뢰 센터와 단말 장치 각각에 전송하는 단계; 및 a3) 상기 신뢰 센터와 단말 장치가 상기 네트워크 코딩된 메시지를 이용하여 각각 링크키를 생성하는 단계를 포함하는 것이 바람직하다. 여기에서 제1 메시지와 제2 메시지는 신뢰 센터와 단말 장치의 정보를 포함하는 것으로서, 제1 메시지와 제2 메시지는 후술하는 본 발명의 실시예에서는 SKKE-1~4 메시지를 통해 구체적으로 설명된다.In the present invention, step a) may include a1) transmitting a first message and a second message to the router by the trust center and the terminal device, respectively, for link key setting; a2) performing, by the router, network coding using the first message and the second message, and transmitting a message generated according to the network coding to each of the trust center and the terminal device; And a3) generating a link key by the trust center and the terminal device using the network coded message, respectively. Herein, the first message and the second message include information of the trust center and the terminal device, and the first message and the second message are described in detail through the SKKE-1 to 4 messages in the embodiment of the present invention described later. .

상술한 또 다른 기술적 과제를 해결하기 위한 본 발명에 따른 신뢰센터, 라우터 및 단말 장치를 포함하는 네트워크 통신 시스템은, 신뢰 센터와 상기 단말 장치가 공유하는 링크키 생성을 위한 메시지를 신뢰 센터와 상기 단말 장치로부터 각각 전송 받는 메시지 수신부; 상기 전송 받은 메시지를 이용한 네트워크 코딩을 수행하는 코딩부; 및 상기 네트워크 코딩된 메시지를 상기 신뢰 센터와 단말 장치에 각각 전송하는 전송부를 구비하는 라우터를 포함한다.In accordance with another aspect of the present invention, there is provided a network communication system including a trust center, a router, and a terminal device. The network includes a message for generating a link key shared by the trust center and the terminal device. Message receiving unit for receiving each transmission from the device; A coding unit which performs network coding using the received message; And a router including a transmission unit for transmitting the network coded message to the trust center and the terminal device, respectively.

상술한 또 다른 기술적 과제를 해결하기 위한 본 발명의 네트워크 통신 시스템의 키 분배 장치는, 링크 키 생성을 위한 메시지를 신뢰 센터와 단말 장치로 부터 전송 받는 메시지 수신부; 상기 메시지 수신부에 수신된 메시지가 네트워크 코딩에 따라 생성된 메시지인지 여부를 판단하는 제 1 판단부; 상기 제 1 판단부의 판단 결과 네트워크 코딩된 메시지가 아닌 경우, 상기 전송된 메시지를 저장하는 저장부; 상기 수신된 또 다른 메시지가 네트워크 코딩에 따라 생성된 메시지 인지 여부를 판단하고, 상기 판단 결과 네트워크 코딩된 메시지가 아닌 경우 상기 저장부에 저장된 메시지의 출발지 또는 목적지가 상기 수신된 또 다른 메시지의 목적지 또는 출발지와 서로 동일한 지 여부를 판단하는 제 2 판단부; 상기 제 2 판단부의 판단 결과 서로 동일한 것으로 판단된 경우, 상기 저장부에 저장된 메시지와 상기 수신된 또 다른 메시지를 이용하여 네트워크 코딩을 수행하는 네트워크 코딩부; 및 상기 네트워크 코딩에 따라 부호화된 메시지를 상기 신뢰 센터와 단말 장치로 전송하는 메시지 전송부를 포함한다.The key distribution device of the network communication system of the present invention for solving the above technical problem is a message receiving unit for receiving a message for the link key generation from the trust center and the terminal device; A first determining unit determining whether the message received by the message receiving unit is a message generated according to network coding; A storage unit for storing the transmitted message, when it is determined that the first determination unit is not a network coded message; It is determined whether the received another message is a message generated according to network coding, and if the result of the determination is not a network coded message, the source or destination of the message stored in the storage unit is the destination of the received another message or A second determination unit determining whether the same as the starting point; A network coding unit configured to perform network coding using a message stored in the storage unit and another received message when it is determined that the second determination unit is identical to each other; And a message transmitter for transmitting a message encoded according to the network coding to the trust center and the terminal device.

또한, 본 발명은 상술한 네트워크 시스템의 키 분배 방법을 컴퓨터 상에서 수행하기 위한 프로그램이 기록된 컴퓨터에서 판독 가능한 기록 매체를 제공한다. The present invention also provides a computer-readable recording medium having recorded thereon a program for executing the above-described key distribution method of the network system on a computer.

본 발명에 따르면, 신뢰 센터와 단말 장치 간의 링크 키 설정과 관련하여 라우터가 신뢰 센터와 단말 장치에서 생성된 메시지들을 단순히 중계하는 종래의 방식 대신, 라우터가 네트워크 코딩을 수행하여 얻어지는 네트워크 코딩된 메시지들을 신뢰 센터와 단말 장치에 전송하는 방식을 새롭게 채택함으로써, 링크 키를 생성하기 위해 교환되는 정보량을 최소화할 수 있고, 링크 키를 생성하고 링크 키를 분배함에 따라 소요되는 시간과 소비 전력을 단축시킬 수 있다. 본 발명에 따르면 키 분배 효율을 향상 시킬 수 있기 때문에, 멀티홉(multi-hop) 네트워크에서 홉(hop) 수가 많을 경우 예를 들어 텔레매틱스나 군용 무선 통신 망에 사용될 경우 더욱 효과적이다.According to the present invention, instead of the conventional method in which the router simply relays messages generated at the trust center and the terminal device with respect to link key setting between the trust center and the terminal device, network coded messages obtained by the router performing network coding are performed. By adopting a new transmission method to the trust center and the terminal device, the amount of information exchanged to generate the link key can be minimized, and the time and power consumed by generating the link key and distributing the link key can be shortened. have. According to the present invention, since the key distribution efficiency can be improved, a large number of hops in a multi-hop network is more effective, for example, when used in a telematics or military wireless communication network.

도 1은 무선 네트워크의 구조를 설명하기 위한 참고도이다.1 is a reference diagram for explaining the structure of a wireless network.

도 2는 지그비 네트워크에서 네트워크에 새롭게 참여하고자 하는 단말 장치가 키를 전송 받는 종래의 메시지 흐름을 나타내는 흐름도이다.2 is a flowchart illustrating a conventional message flow in which a terminal device newly participating in a network receives a key in a Zigbee network.

도 3은 본 발명의 일 실시예에 따라 키 분배를 수행하기 위한 메시지 흐름을 나타내는 흐름도이다.3 is a flowchart illustrating a message flow for performing key distribution according to an embodiment of the present invention.

도 4는 도 3에서 신뢰 센터와 단말 장치의 전송 데이터 프레임 구조를 나타내는 참고도이다.4 is a reference diagram illustrating a transmission data frame structure of a trust center and a terminal device in FIG. 3.

도 5는 도 3에서 라우터의 전송 데이터 프레임 구조를 나타내는 참고도이다.FIG. 5 is a reference diagram illustrating a structure of a transmission data frame of a router in FIG. 3.

도 6은 도 3에서 단말 장치가 네트워크에 참여할 때 키 분배 방법을 나타내는 흐름도이다.6 is a flowchart illustrating a key distribution method when the terminal device participates in a network in FIG. 3.

도 7은 도 6의 605 단계에서 신뢰 센터가 링크 키를 생성하는 과정을 설명하는 세부 흐름도이다.FIG. 7 is a detailed flowchart illustrating a process of generating a link key by a trust center in step 605 of FIG. 6.

도 8은 도 6의 605 단계에서 단말 장치가 링크 키를 생성하는 과정을 설명하는 세부 흐름도이다. FIG. 8 is a detailed flowchart illustrating a process of generating a link key by a terminal device in step 605 of FIG. 6.

도 9는 도 3에서 서비스 타입이 0인 경우 312단계와 315단계를 설명하는 세부 흐름도이다.FIG. 9 is a detailed flowchart illustrating steps 312 and 315 when the service type is 0 in FIG. 3.

도 10은 도 3에서 서비스 타입이 1인 경우 312단계와 315단계를 설명하는 세부 흐름도이다. FIG. 10 is a detailed flowchart illustrating steps 312 and 315 when the service type is 1 in FIG. 3.

도 11은 도 3에서 서비스 타입이 2인 경우 네트워크 코딩의 개념을 설명하기 위한 개념도이다.FIG. 11 is a conceptual diagram illustrating the concept of network coding when the service type is 2 in FIG. 3.

도 12는 본 발명의 일 실시예에 따른 네트워크 통신 시스템을 나타내는 블록도이다.12 is a block diagram illustrating a network communication system according to an embodiment of the present invention.

이하에서는 도면과 실시예를 참조하여 본 발명의 네트워크 코딩을 이용한 키 분배 방법, 키 분배 장치, 네트워크 통신 시스템 그리고 상기 방법을 수행하는 프로그램이 기록된 기록 매체에 대하여 구체적으로 설명한다.Hereinafter, a key distribution method, a key distribution device, a network communication system, and a recording medium on which a program for performing the method are recorded will be described in detail with reference to the drawings and embodiments.

도 3은 본 발명의 일 실시예에 따라 키 분배를 수행하기 위한 메시지 흐름을 나타내는 흐름도이다. 도 3에 도시된 키 분배 방법은 신뢰 센터(301), 라우터(302) 및 단말 장치(303)에서 시계열적으로 수행되는 하기의 단계들을 포함한다. 본 실시예는 ZigBee (802.15.4) RFID와 같이 보안이 요구되는 무선 센서 네트워크에서 적용 가능하다. 본 실시예에서는 SKKE 프로토콜을 기반으로 하는 키 분배 시스템을 위주로 설명하지만, 본 발명의 적용 범위는 SKKE 프로토콜을 이용하는 키 분배 시스템에 국한되지 않는다. 예를 들어, SKKE 프로토콜 이외에도 Diffie-Hellman 프로토콜을 기반으로 하는 키 분배 시스템과 같은 다양한 무선 센서 네트워크 분야에 사용될 수 있다. 3 is a flowchart illustrating a message flow for performing key distribution according to an embodiment of the present invention. The key distribution method illustrated in FIG. 3 includes the following steps performed in time series at the trust center 301, the router 302, and the terminal device 303. This embodiment is applicable to wireless sensor networks that require security, such as ZigBee (802.15.4) RFID. In the present embodiment, the key distribution system based on the SKKE protocol will be described mainly, but the scope of the present invention is not limited to the key distribution system using the SKKE protocol. For example, in addition to the SKKE protocol, it can be used in various wireless sensor network applications such as a key distribution system based on the Diffie-Hellman protocol.

201단계에서 단말 장치(303)는 비콘 요청 메시지(Beacon request command, unsecured)를 라우터에 전송한다. 202단계에서 라우터(302)는 상기 전송된 비콘 메시지에 응답하여 단말 장치(303)에 전송한다. 202단계를 통해 새롭게 네트워크에 참여하고자 하는 단말 장치(303)는 라우터(302)와 메시지를 소통할 수 있는 채널을 확보한다.In step 201, the terminal device 303 transmits a beacon request command (unsecured) to the router. In step 202, the router 302 transmits to the terminal device 303 in response to the transmitted beacon message. In step 202, the terminal device 303 newly participating in the network secures a channel for communicating a message with the router 302.

203단계에서 단말 장치(303)는 202단계에서 확보된 채널을 통해 연결 요청 메시지(Association request command)를 라우터(302)에 전송한다. 204단계에서 라우터(302)는 상기 전송된 메시지가 유효할 경우 단말 장치(303)에 연결 승인 메시지(Association response command)를 전송한다. 204단계에서 연결 승인 메시지가 단말 장치에 전송되면, 신뢰 센터(301)와 단말 장치(303)는 서로 연결된 상태가 된다(205단계). In step 203, the terminal device 303 transmits an association request command to the router 302 through the channel secured in step 202. In step 204, the router 302 transmits an association response command to the terminal device 303 when the transmitted message is valid. When the connection approval message is transmitted to the terminal device in step 204, the trust center 301 and the terminal device 303 are connected to each other (step 205).

206단계에서 라우터(302)는 신뢰 센터(301)에게 단말 장치 업데이트 명령(Update-Device Command)을 보낸다. 207단계에서 신뢰 센터(301)는 상기 단말 장치(303)를 네트워크에 포함시킬 것인지를 결정한다.In step 206, the router 302 sends a terminal device update command to the trust center 301. In step 207, the trust center 301 determines whether to include the terminal device 303 in the network.

208단계에서 신뢰 센터(301)는 207단계에서의 판단 결과 상기 단말 장치(303)를 네트워크에 포함시킬 것으로 판단한 경우, 인증된 전송-키 명령 즉 마스터 키(Master key)를 라우터(302)에 전송한다. 209단계에서 라우터(302)는 신뢰 센터(301)로 부터 전달된 마스터 키(Unsecured Transport-key Command)를 단말 장치(303)에 전송한다. 본 단계를 통해 단말 장치와 신뢰 센터가 마스터 키를 공유하게 되면, 상기 각각의 장치들은 마스터 키를 이용하여 대칭-키 키 설정(symmetric-key key establishment, SKKE) 프로토콜을 기반으로 하는 키 분배를 수행하고, 최종적으로 링크 키와 네트워크 키를 공유한다.If the trust center 301 determines in step 207 that the terminal device 303 is to be included in the network, in step 207, the trust center 301 transmits an authenticated transmit-key command, that is, a master key, to the router 302. do. In step 209, the router 302 transmits an unsecured transport-key command transmitted from the trust center 301 to the terminal device 303. When the terminal device and the trust center share the master key through this step, the respective devices perform key distribution based on the symmetric-key key establishment (SKKE) protocol using the master key. Finally, the link key and network key are shared.

310단계에서 신뢰 센터(301)는 SKKE-1 메시지를 라우터(302)에 전송한다. 311단계에서 단말 장치(303)는 기존의 SKKE 프로토콜에 따른 키 분배 방식과 달리 SKKE-1 메시지 수신을 기다리지 않고, SKKE-2 메시지를 라우터(302)에 전송하는데, 이 때문에 메시지 수신 대기에 필요한 시간을 줄일 수 있다.In step 310, the trust center 301 transmits a SKKE-1 message to the router 302. In step 311, the terminal device 303 transmits the SKKE-2 message to the router 302 without waiting for the reception of the SKKE-1 message, unlike the key distribution method according to the existing SKKE protocol. Can be reduced.

312단계에서 라우터(302)는 수신된 SKKE-1와 SKKE-2 메시지를 이용한 네트워크 코딩을 수행하고, 멀티캐스팅 또는 브로드 캐스팅을 통해 네트워크 코팅된 메시지를 신뢰 센터(301)와 단말 장치(303)에 전송한다. 본 발명에서 네트워크 코딩(network coding)은 라우터를 통해 신뢰 센터와 단말 장치가 서로 메시지를 교환하고자 할 때, 신뢰 센터와 단말 장치에서 전송된 메시지를 라우터가 부호화하는 것을 의미한다. 예를 들어, XOR, XNOR 등 다양한 연산 이용한 부호화 및 복호화가 가능하다.In step 312, the router 302 performs network coding using the received SKKE-1 and SKKE-2 messages, and transmits the network-coated message to the trust center 301 and the terminal device 303 through multicasting or broadcasting. send. In the present invention, network coding means that the router encodes a message transmitted from the trust center and the terminal device when the trust center and the terminal device want to exchange messages with each other through the router. For example, encoding and decoding using various operations such as XOR and XNOR are possible.

본 발명은 네트워크 코딩을 이용한 키 분배 방법으로서 라우터에서 네트워크 코딩된 메시지를 쌍방 즉 신뢰 센터와 단말 장치에 전송하는 점에서 라우터를 통해 메시지가 대칭적으로 중계되는 종래의 방식과 구별된다. 예를 들어, 본 실시예의 라우터(302)는 수신된 SKKE-1과 SKKE-2를 입력으로 하는 XOR 연산을 네트워크 코딩으로서 수행할 수 있다.The present invention is a key distribution method using network coding, which is different from the conventional method in which a message is symmetrically relayed through a router in that a router transmits a network coded message to both a trust center and a terminal device. For example, the router 302 of the present embodiment may perform XOR operation with the received SKKE-1 and SKKE-2 as input as network coding.

312단계의 수행 결과, 신뢰 센터(301)는 이미 갖고 있는 SKKE-1 메시지가 갖는 시퀀스 넘버와 전송 받는 메시지의 시퀀스 넘버가 동일하면, 전송 받은 메시지를 XOR연산으로 복호화하여 SKKE-2 메시지를 획득한다. 313단계에서 신뢰 센터(301)는 SKKE-2 메시지를 획득하면 SKKE-3 메시지를 라우터(302)에 전송한다. As a result of performing step 312, if the sequence number of the already received SKKE-1 message and the sequence number of the received message are the same, the trust center 301 decodes the received message by XOR operation to obtain the SKKE-2 message. . In step 313, the trust center 301 transmits the SKKE-3 message to the router 302 when the SKKE-2 message is obtained.

마찬가지로, 312단계에 수행 결과 단말 장치(303)는 전송받은 메시지를 XOR연산으로 복호화하여 SKKE-1 메시지를 획득하고, 단말 장치(303)는 SKKE-4 메시지를 라우터(302)에 전송한다(314단계). Similarly, as a result of performing step 312, the terminal device 303 decodes the received message by XOR operation to obtain a SKKE-1 message, and the terminal device 303 transmits a SKKE-4 message to the router 302 (314). step).

315단계에서 라우터(302)는 SKKE-3과 SKKE-4 메시지를 전송 받고, XOR연산에 따라 상기 전송 받은 메시지에 대한 네트워크 코딩을 수행한 후, 네트워크 코딩된 메시지를 신뢰 센터(301)와 단말 장치(303)에 전송한다.  In step 315, the router 302 receives the SKKE-3 and SKKE-4 messages, performs network coding on the received messages according to the XOR operation, and then transmits the network coded message to the trust center 301 and the terminal device. Send to 303.

신뢰 센터(301)는 315단계를 통해 전송된 정보 즉 네트워크 코딩된 메시지에 대한 복호화를 수행함으로써 SKKE-4메시지를 획득하고, 단말 장치와 신뢰 센터가 서로 공유할 수 있는 링크 키를 생성한다. 마찬가지로, 단말 장치(303)는 네트워크 코딩된 메시지에 대한 복호화를 수행하여 SKKE-3메시지를 획득하고, 획득된 메시지를 이용하여 링크 키를 생성한다. 여기에서 생성된 링크 키는 두 개의 장치 즉 신뢰 센터와 단말 장치 간의 보안을 위한 인증 수단이다.The trust center 301 acquires a SKKE-4 message by decrypting the information transmitted in step 315, that is, the network coded message, and generates a link key that can be shared between the terminal device and the trust center. Similarly, the terminal device 303 decrypts the network coded message to obtain a SKKE-3 message, and generates a link key using the obtained message. The link key generated here is an authentication means for security between two devices, that is, the trust center and the terminal device.

316단계에서 신뢰 센터(301)는 상기 생성된 링크 키를 이용하여 보안된 전송-키 명령(Secured Transport-Key Command) 즉 암호화된 네트워크 키(NWK key)를 생성하고, 라우터(302)를 통해 네트워크 키를 단말 장치(303)에 전송한다. 여기에서 네트워크 키는 네트워크 내에서의 데이터 전송시 보안을 위해 사용되는 인증 수단이다.In step 316, the trust center 301 generates a secured transport-key command, that is, an encrypted network key (NWK key), by using the generated link key, and generates a network through the router 302. The key is transmitted to the terminal device 303. Here, the network key is an authentication means used for security in transmitting data in the network.

도 4는 도 3에서 신뢰 센터와 단말 장치의 전송 데이터 프레임 구조를 나타내는 참고도이다.4 is a reference diagram illustrating a transmission data frame structure of a trust center and a terminal device in FIG. 3.

도 4에 도시된 전송 데이터 프레임 구조에서, 타입(Type, 401) 필드는 해당 프레임이 네트워크 코딩을 지원하는 것을 나타낸다. 헤더 길이(Header Length, 402) 필드는 네트워크 코딩에서 헤더의 크기를 나타낸다.In the transmission data frame structure shown in FIG. 4, the Type (401) field indicates that the frame supports network coding. The Header Length (402) field indicates the size of the header in network coding.

서비스 타입(Service type, 403) 필드는 네트워크 코딩의 부호화를 수행하는 라우터를 선정하기 위한 세 가지 방법을 구분하기 위한 것이다. 서비스 타입의 값이 0일 경우에는, 모든 라우터가 부호화를 수행할 수 있는 경우로서 부호화를 하기 위한 라우터를 별도로 지정하지 않는다. 즉, 이 경우 모든 라우터들은 신뢰 센터에서 단말 장치로 보내는 메시지와, 단말 장치에서 신뢰 센터로 보내는 메시지를 동시에 수신할 때 부호화를 수행하게 되며, 이러한 방식은 모든 라우터에서 부호화를 수행할 수 있는 능력이 있을 경우에 사용된다. 서비스 타입의 값이 1일 경우에는, 신뢰 센터와 단말 장치 사이의 홉 카운트(hop count)가 1/2이 되는 값을 홉 카운트 투 라우터(hop count to router)로 지정한다. 한편, 홉 카운트가 홀수 일 경우에는 신뢰 센터에서 단말 장치로 보내는 메시지는 (hop count+1)의 1/2 값을 홉 카운트 투 라우터로 지정하고, 단말 장치에서 신뢰 센터로 보내는 메시지는 (hop count-1)의 1/2값을 홉 카운트 투 라우터로 지정한다. 서비스 타입의 값이 2인 경우는 직접적으로 부호화를 위해 사용될 라우터의 주소를 지정하는데, 필요에 따라 여러 개의 라우터가 지정될 수 있다. 이러한 방식을 사용하기 위해서는 신뢰 센터와 단말 장치에서 부호화를 수행하기 위한 라우터를 지정하기 위한 테이블을 저장하고 있어야 한다. The service type (403) field is for distinguishing three methods for selecting a router that performs encoding of network coding. If the value of the service type is 0, all routers can perform encoding and do not separately specify a router for encoding. That is, in this case, all routers perform encoding when receiving a message sent from the trust center to the terminal device and a message sent from the terminal device to the trust center at the same time. This method has the ability to perform encoding at all routers. Used when present. When the value of the service type is 1, a hop count to router is designated as a value where the hop count between the trust center and the terminal device is 1/2. On the other hand, if the hop count is odd, the message sent from the trust center to the terminal device designates 1/2 value of (hop count + 1) as the hop count to router, and the message sent from the terminal device to the trust center is (hop count). Specify 1/2 value of -1) as hop count-to-router. When the value of the service type is 2, an address of a router to be directly used for encoding is specified. Multiple routers may be designated as necessary. In order to use this method, a table for specifying a router for encoding in the trust center and the terminal device should be stored.

전체 길이(Total length, 404) 필드는 전체 프레임의 크기를 나타낸다. 전체 길이와 헤더 길이를 알면 PDU(Protocol Data Unit)의 크기를 알 수 있다. 네트워크 코딩은 PDU의 크기가 같은 두개의 프레임에 대하여 수행된다. PDU의 크기가 다른 경우에는 0값으로 채움으로써 크기를 맞출 수 있다. The total length (404) field indicates the size of the entire frame. Knowing the total length and the header length gives the size of the protocol data unit (PDU). Network coding is performed on two frames having the same size of PDU. If the size of the PDUs is different, the size can be adjusted by filling with zero values.

상태(Status, 405) 필드는 부호화된 상태를 나타낸다. 상태 필드 값이 0일 경우에는 네트워크 코딩되지 않은 상태를 의미한다. 즉, 해당 프레임이 신뢰 센터나 단말 장치에서 전송된 프레임을 의미한다. 상태 필드 값이 1인 경우에는 라우터에서 부호화된 프레임으로서, 신뢰 센터와 단말 장치로 전송되는 프레임을 의미한다. 도 4의 프레임은 신뢰 센터 또는 단말 장치의 프레임이므로 상태 필드값은 0이다. The Status (405) field indicates the coded status. If the status field value is 0, it means that the network is not coded. That is, the frame means a frame transmitted from the trust center or the terminal device. If the status field value is 1, it means a frame encoded by the router and transmitted to the trust center and the terminal device. Since the frame of FIG. 4 is a frame of a trust center or a terminal device, the state field value is zero.

소스 주소(Source Address, 406) 필드는 생성된 프레임의 주소를 나타내고, 목적지 주소(Destination Address, 407)는 해당 프레임이 전송되어야할 목적지의 주소를 나타낸다. 라우터 주소(Router address, 408) 필드는 부호화를 수행하기 위한 라우터 주소를 나타내는 필드이다. 홉 카운트 투 라우터(409) 필드는 서비스 타입이 1일 때 필요하며, 서비스 타입이 2일 때 홉 카운트 투 라우터(409) 필드는 생략될 수 있다. 라우터 주소(408) 필드에는 여러 개의 주소가 지정될 수 있으며, 이 때 지정된 라우터의 개수를 나타내는 필드가 선택적으로 포함될 수 있다. 서비스 타입(403) 필드의 값이 1일 경우에는 홉 카운트 투 라우터(409) 필드가 지정되고, 라우터 주소(408) 필드가 생략될 수 있다. The Source Address (406) field indicates the address of the generated frame, and the Destination Address (407) indicates the address of the destination where the frame is to be transmitted. The router address field 408 is a field indicating a router address for performing encoding. The hop count to router 409 field is required when the service type is 1, and when the service type is 2, the hop count to router 409 field may be omitted. Multiple addresses may be designated in the router address 408 field, and a field indicating the number of designated routers may be optionally included. If the value of the service type 403 field is 1, the hop count to router 409 field may be designated, and the router address 408 field may be omitted.

시퀀스 넘버(410) 필드는 네트워크 코딩을 위해 필요한 신뢰 센터로 부터의 프레임과 단말 장치로 부터의 프레임의 순서를 맞추기 위한 것이다. 타임 투 라이브(411) 필드 값을 넘는 프레임은 삭제된다. PDU(412) 필드는 프로토콜 데이터 단위(Protocol Data Unit)로서 신뢰 센터와 단말 장치 간에 교환되는 데이터를 나타낸다.The sequence number 410 field is for aligning a frame from a trust center and a frame from a terminal device necessary for network coding. Frames exceeding the value of the time to live 411 field are deleted. The PDU 412 field represents data exchanged between the trust center and the terminal device as a protocol data unit.

도 5는 도 3에서 라우터의 전송 데이터 프레임 구조를 나타내는 참고도이다.FIG. 5 is a reference diagram illustrating a structure of a transmission data frame of a router in FIG. 3.

도 5에 도시된 전송 테이터 프레임 구조에서, 타입(Type, 501) 필드는 해당 프레임이 네트워크 코딩을 지원하는 프레임을 나타낸다. 헤더 길이(Header Length, 502) 필드는 네트워크 코딩의 헤더 크기를 나타낸다. 서비스 타입(503) 필드는 네트워크 코딩의 부호화를 수행하는 라우터를 선정하기 위한 방법을 구분하기 위한 것이다. 전체 길이(Total length, 504) 필드는 전체 프레임의 크기를 나타낸다. 상태(Status, 505) 필드는 부호화된 상태를 나타내며, 도 5의 프레임은 라우터의 프레임이므로 상태 필드의 값은 1이다. 신뢰 센터와 단말 장치의 주소는 각각 목적지 1 주소(Destination 1 Address, 506)와 목적지 2 주소(Destination 2 Address, 508) 필드에 저장된다. 각각의 프레임의 시퀀스 넘버(sequence number, 507, 509)는 각각 신뢰 센터와 단말 장치에서 복호화 될 때, 저장된 프레임 중에서 복호화에 필요한 쌍이 되는 프레임을 찾을 때 사용된다. PDU(510) 필드는 프로토콜 데이터 단위(Protocol Data Unit)로서 라우터로 부터 신뢰 센터와 단말 장치로 전달되는 데이터를 나타낸다.In the transmission data frame structure shown in FIG. 5, the Type (Type, 501) field indicates a frame in which the frame supports network coding. The Header Length (502) field indicates the header size of network coding. The service type 503 field is for identifying a method for selecting a router that performs encoding of network coding. The total length (504) field indicates the size of the entire frame. The Status (505) field represents an encoded state. The value of the Status field is 1 since the frame of FIG. 5 is a frame of a router. The addresses of the trust center and the terminal device are stored in the destination 1 address 506 and the destination 2 address 508 fields, respectively. The sequence numbers 507 and 509 of each frame are used to find a pair of frames necessary for decoding among the stored frames when they are decoded in the trust center and the terminal device, respectively. The PDU 510 field represents data transmitted from a router to a trust center and a terminal device as a protocol data unit.

도 6은 도 3에서 단말 장치가 네트워크에 참여할 때 키 분배 방법을 나타내는 흐름도이다.6 is a flowchart illustrating a key distribution method when the terminal device participates in a network in FIG. 3.

601단계에서 라우터(302)는 단말 장치(303)가 네트워크에 포함되었는지 여부를 판단한다. 602단계에서 라우터(302)는 단말 장치(303)에 대한 업데이트 명령(Update-Device Command)을 신뢰 센터(301)에 전송한다.In step 601, the router 302 determines whether the terminal device 303 is included in the network. In step 602, the router 302 transmits an update-device command for the terminal device 303 to the trust center 301.

603단계에서 신뢰 센터(301)는 단말 장치의 승인 여부를 결정하고, 604단계에서 단말 장치로 마스터 키를 전송한다. 605단계는 네트워크 코딩을 이용한 SKKE 프로토콜을 기반으로 링크기를 생성한다. 특히, 605단계에서 라우터(302)는 신뢰 센터와 단말 장치로 부터 전송 받은 메시지를 이용하여 네트워크 코딩을 수행하며, 신뢰 센터와 단말 장치는 네트워킹 코딩된 메시지를 이용하여 링크키를 각각 생성한다. 606단계에서 신뢰 센터(301)는 생성된 링크키를 이용하여 네트워크 키를 암호화하고, 암호화된 네트워크키를 단말 장치에 전송함으로써 키 분배 과정은 완료된다.In step 603, the trust center 301 determines whether to approve the terminal device, and transmits the master key to the terminal device in step 604. Step 605 creates a linker based on the SKKE protocol using network coding. In particular, in step 605, the router 302 performs network coding using a message received from the trust center and the terminal device, and the trust center and the terminal device generate a link key using the networking coded message. In step 606, the trust center 301 encrypts the network key using the generated link key, and transmits the encrypted network key to the terminal device, thereby completing the key distribution process.

도 7은 도 6의 605단계에서 신뢰 센터가 링크 키를 생성하는 과정을 설명하는 세부 흐름도이다. 도 7에는 신뢰 센터에서 네트워크 코딩을 이용하여 링크 키를 생성하기 위한 흐름이 도시되어 있다. FIG. 7 is a detailed flowchart illustrating a process of generating a link key by a trust center in step 605 of FIG. 6. 7 shows a flow for generating a link key using network coding in a trust center.

701단계에서 신뢰 센터(301)는 링크키를 만들기 위해서 마스터 키를 가지고 있는지 확인한다. 마스터 키가 없을 경우에는 키 분배 과정이 종료된다. 마스터 키가 있을 경우, 702단계에서 신뢰 센터는 도 4에 도시된 프레임 구조를 갖는 패킷 정보를 포함하는 SKKE-1 메시지를 생성하고, 생성된 메시지를 다음 홉(next hop)으로 전송한다.In step 701, the trust center 301 checks whether the master key has a master key to create a link key. If there is no master key, the key distribution process is terminated. If there is a master key, the trust center generates a SKKE-1 message including packet information having the frame structure shown in FIG. 4 and transmits the generated message to the next hop.

703단계에서 신뢰 센터(301)가 SKKE-2 메시지를 수신하였는지 여부를 판단한다. SKKE-2 메시지를 수신하지 않은 것으로 판단된 경우, 705단계에서 신뢰 센터(301)는 네트워크 코딩된 메시지를 받았는지 여부를 판단한다. 네트워크 코딩된 메시지를 받은 것으로 판단되면, 신뢰 센터(301)는 네트워크 코딩된 메시지를 복호화하여 SKKE-2 메시지를 얻는다. 예를 들어, 신뢰 센터(301)는 수신한 메시지의 상태(status)를 읽고, 수신한 메시지의 상태가 1일 경우, 기존에 가지고 있는 SKKE-1의 시퀀스 넘버(sequence number)를 목적지 1, 2의 시퀀스 넘버와 비교하고, 동일한 시퀀스 넘버가 있으면 XOR(exclusive OR)연산으로 복호화함으로써 SKKE-2 메시지를 얻는다. 703단계에서 신뢰 센터(301)가 SKKE-2 메시지를 수신한 경우, 707단계가 수행된다. 한편, 705단계에서 네트워크 코딩된 메시지를 수신하지 않은 경우 메시지를 수신할 때까지 대기한다(704단계). In step 703, the trust center 301 determines whether the SKKE-2 message has been received. If it is determined that the SKKE-2 message has not been received, the trust center 301 determines whether a network coded message has been received in step 705. If it is determined that the network coded message has been received, the trust center 301 decrypts the network coded message to obtain a SKKE-2 message. For example, the trust center 301 reads the status of the received message, and if the status of the received message is 1, the destination number 1, 2 of the existing sequence number of SKKE-1 is present. The SKKE-2 message is obtained by comparing with the sequence number of and comparing with the sequence number of the block. If the trust center 301 receives the SKKE-2 message in step 703, step 707 is performed. On the other hand, if the network-coded message is not received in step 705, it waits for receiving the message (step 704).

707단계에서 신뢰 센터(301)가 SKKE-2 메시지를 획득하면, SKKE-3 메시지를 라우터로 전송한다. 708단계에서 신뢰 센터가 SKKE-4 메시지를 수신하였는지 여부를 판단한다. SKKE-4 메시지가 수신되지 않은 것으로 판단된 경우, 710단계에서 신뢰 센터는 네트워크 코딩된 메시지를 수신하였는지 여부를 판단한다. 네트워크 코딩된 메시지가 수신된 경우 711단계에서 신뢰 센터(301)는 네트워크 코딩된 메시지를 복호화하여 SKKE-4 메시지를 얻는다. 712단계에서 신뢰 센터(301)는 획득된 SKKE-4 메시지를 이용하여 링크 키를 생성한다.When the trust center 301 acquires the SKKE-2 message in step 707, the trust center 301 transmits the SKKE-3 message to the router. In step 708, it is determined whether the trust center receives the SKKE-4 message. If it is determined that the SKKE-4 message has not been received, the trust center determines whether a network coded message has been received in step 710. If a network coded message is received, the trust center 301 decrypts the network coded message to obtain a SKKE-4 message in step 711. In step 712, the trust center 301 generates a link key using the obtained SKKE-4 message.

도 8은 도 6의 605단계에서 단말 장치가 링크 키를 생성하는 과정을 설명하는 세부 흐름도이다. 도 8에는 지그비 단말 장치가 네트워크 코딩을 이용하여 링크 키를 생성하기 위한 흐름이 도시되어 있다.8 is a detailed flowchart illustrating a process of generating a link key by a terminal device in step 605 of FIG. 6. 8 shows a flow for a Zigbee terminal device to generate a link key using network coding.

801단계에서 단말 장치(303)는 링크키를 만들기 위해서 마스터 키를 가지고 있는지 확인한다. 마스터 키가 없을 경우에는 키 분배 과정이 종료된다. 마스터 키가 있을 경우, 802단계에서 단말 장치는 도 4에 도시된 프레임 구조를 갖는 패킷 정보를 포함하는 SKKE-2 메시지를 생성하고, 생성된 메시지를 다음 홉(next hop)으로 전송한다. 803단계에서 단말 장치(303)는 SKKE-1 메시지를 수신하였는지 여부를 판단한다. SKKE-1 메시지를 수신하지 않은 것으로 판단된 경우, 805단계에서 단말 장치(303)는 네트워크 코딩된 메시지를 받았는지 여부를 판단한다. 네트워크 코딩된 메시지를 받은 것으로 판단되면, 단말 장치(303)는 네트워크 코딩된 메시지를 복호화하여 SKKE-1 메시지를 얻는다(806단계). 예를 들어, 단말 장치(303)는 수신한 메시지의 상태(status)를 읽고, 수신한 메시지의 상태가 1일 경우, 기존에 가지고 있는 SKKE-2의 시퀀스 넘버(sequence number)를 목적지 1, 2의 시퀀스 넘버와 비교하고, 동일한 시퀀스 넘버가 있으면 XOR(exclusive OR)연산으로 복호화함으로써 SKKE-1 메시지를 얻는다. 803단계에서 단말 장치(303)가 SKKE-1 메시지를 수신한 경우, 807단계가 수행된다. 한편, 805단계에서 네트워크 코딩된 메시지를 수신하지 않은 경우 메시지를 수신할 때까지 대기한다(804단계). In step 801, the terminal device 303 checks whether it has a master key in order to create a link key. If there is no master key, the key distribution process is terminated. If there is a master key, in step 802, the terminal device generates a SKKE-2 message including packet information having the frame structure shown in FIG. 4, and transmits the generated message to the next hop. In step 803, the terminal device 303 determines whether a SKKE-1 message has been received. If it is determined that the SKKE-1 message has not been received, the terminal device 303 determines whether a network coded message has been received in step 805. If it is determined that the network coded message has been received, the terminal device 303 decodes the network coded message to obtain a SKKE-1 message (step 806). For example, the terminal device 303 reads the status of the received message, and if the status of the received message is 1, the terminal device 303 reads the sequence number of the existing SKKE-2 as the destination 1, 2; The SKKE-1 message is obtained by comparing with the sequence number of and comparing with the sequence number of the block. When the terminal device 303 receives the SKKE-1 message in step 803, step 807 is performed. On the other hand, if the network coded message is not received in step 805, it waits for receiving the message (step 804).

807단계에서 단말 장치(303)가 SKKE-1 메시지를 획득하면, 단말 장치는 SKKE-4 메시지를 라우터로 전송한다. 808단계에서 단말 장치(303)가 SKKE-3 메시지를 수신하였는지 여부를 판단한다. SKKE-3 메시지가 수신되지 않은 것으로 판단된 경우, 810단계에서 단말 장치는 네트워크 코딩된 메시지를 수신하였는지 여부를 판단한다. 네트워크 코딩된 메시지가 수신된 경우 811단계에서 단말 장치(303)는 네트워크 코딩된 메시지를 복호화하여 SKKE-3 메시지를 얻는다. 812단계에서 단말 장치(303)는 획득된 SKKE-3 메시지를 이용하여 링크 키를 생성한다.If the terminal device 303 acquires the SKKE-1 message in step 807, the terminal device transmits the SKKE-4 message to the router. In step 808, the terminal device 303 determines whether the SKKE-3 message has been received. If it is determined that the SKKE-3 message has not been received, the terminal device determines whether a network coded message has been received in step 810. When the network coded message is received, in step 811, the terminal device 303 decodes the network coded message to obtain a SKKE-3 message. In step 812, the terminal device 303 generates a link key using the obtained SKKE-3 message.

도 9는 도 3에서 서비스 타입이 0인 경우 312단계와 315단계를 설명하기 위한 세부 흐름도이다. 312단계와 315단계는 공통적으로 라우터(302)가 네트워크 코딩을 수행하고, 네트워크 코딩된 메시지를 신뢰 센터와 단말 장치에 전송하는 단계로서 세부적인 흐름은 다음과 같다. FIG. 9 is a detailed flowchart for describing steps 312 and 315 when the service type is 0 in FIG. 3. Steps 312 and 315 are common steps in which the router 302 performs network coding and transmits the network coded message to the trust center and the terminal device. The detailed flow is as follows.

901단계에서 라우터(302)는 신뢰 센터(301)와 단말 장치(303)로부터 각각 메시지를 수신한다. 902단계에서 라우터(302)는 수신된 메시지의 타입(401)정보를 판단한다. 수신된 메시지가 네트워크 코딩의 타입인 경우, 라우터(302)는 수신된 메시지가 네트워크 코딩으로 부호화되었는지 여부를 판단한다. 네트워크 코딩으로 부호화된 경우에는 911단계가 수행되며, 네트워크 코딩으로 부호화되지 않은 경우, 라우터(302)는 수신된 메시지를 저장한다.In step 901, the router 302 receives messages from the trust center 301 and the terminal device 303, respectively. In step 902, the router 302 determines the type 401 information of the received message. If the received message is a type of network coding, the router 302 determines whether the received message has been coded with network coding. If it is encoded by network coding, step 911 is performed. If it is not encoded by network coding, the router 302 stores the received message.

905단계에서 라우터(302)는 새로운 메시지를 수신할 때 까지 대기한다. 906단계에서 라우터(302)는 수신된 메시지의 타입이 네트워크 코딩인지 여부를 판단하고, 907단계에서 네트워크 코딩으로 부호화되었는지 여부를 판단한다. 네트워크 코딩으로 부호화되지 않은 경우, 908단계에서 라우터(302)는 수신한 메시지의 출발지와 저장된 메시지의 목적지가 동일한지 여부 또는 수신한 메시지의 목적지와 저장된 메시지의 수신지가 동일한지 여부를 판단한다. 동일한 것으로 판단된 경우, 라우터(302)는 수신된 메시지와 저장된 메시지에 대하여 네트워크 코딩을 수행하여, 네트워크 코딩된 메시지를 생성한다. 911단계에서 라우터(302)는 네트워크 코딩된 메시지를 멀티캐스팅을 통해 신뢰 센터와 단말 장치에 전송한다. 이때 전송 프레임의 목적지 1 주소(506), 목적지 2 주소(508)은 멀티 캐스팅을 위한 주소가 되며, 상기 주소들은 각각 신뢰 센터와 단말 장치의 주소가 된다.In step 905, the router 302 waits until a new message is received. In step 906, the router 302 determines whether the received message type is network coding, and in step 907, the router 302 determines whether the received message is coded by network coding. If not encoded by network coding, in step 908, the router 302 determines whether the source of the received message and the destination of the stored message are the same or whether the destination of the received message and the destination of the stored message are the same. If determined to be the same, the router 302 performs network coding on the received message and the stored message to generate a network coded message. In step 911, the router 302 transmits the network coded message to the trust center and the terminal device through multicasting. In this case, the destination 1 address 506 and the destination 2 address 508 of the transmission frame are addresses for multicasting, and the addresses are addresses of a trust center and a terminal device, respectively.

도 10은 도 3에서 서비스 타입이 1인 경우 312단계와 315단계를 설명하기 위한 세부 흐름도이다.FIG. 10 is a detailed flowchart for describing steps 312 and 315 when the service type is 1 in FIG. 3.

1001단계에서 라우터(302)는 신뢰 센터(301)와 단말 장치(303)로부터 각각 메시지를 수신한다. 1002단계에서 라우터(302)는 수신된 메시지의 타입(401)정보를 판단한다. 수신된 메시지가 네트워크 코딩의 타입인 경우, 라우터(302)는 수신된 메시지가 네트워크 코딩으로 부호화되었는지 여부를 판단한다. 네트워크 코딩으로 부호화된 경우에는 1008단계가 수행된다. 한편, 네트워크 코딩으로 부호화되지 않은 경우, 1004단계에서 라우터는 홉 카운트 투 라우터(hop counter to router)가 0인지 여부를 판단한다. 홉 카운트 투 라우터가 0인 경우, 네트워크 부호화를 거처 메시지가 전송된다. 1005단계에서 라우터(302)는 저장된 메시지가 있는지 여부를 판단한다. 저장된 메시지가 있는 경우, 1006단계에서 라우터는 수신된 메시지의 출발지와 저장된 메시지의 목적지가 동일한지 또는 수신한 메시지의 목적지와 저장된 메시지의 출발지가 동일한지 여부를 판단한다. 1006단계의 수행 결과 동일한 것으로 판단된 경우, 1007단계에서 라우터는 수신된 메시지와 저장된 메시지를 네트워크 코딩으로 부호화한다. 1004단계에서 홉 카운트 투 라우터 값이 0이 아닌 것으로 판단된 경우, 1010단계에서 홉 카운트 투 라우터 값을 1 감소 시키고, 1008단계가 수행된다.In step 1001, the router 302 receives messages from the trust center 301 and the terminal device 303, respectively. In step 1002, the router 302 determines the type 401 information of the received message. If the received message is a type of network coding, the router 302 determines whether the received message has been coded with network coding. In the case of coded by network coding, step 1008 is performed. On the other hand, if not encoded by the network coding, in step 1004, the router determines whether the hop counter to router is zero. If the hop count to router is 0, the message is transmitted via network encoding. In step 1005, the router 302 determines whether there is a stored message. If there is a stored message, in step 1006, the router determines whether the source of the received message and the destination of the stored message are the same or whether the destination of the received message and the source of the stored message are the same. If it is determined that the performance of step 1006 is the same, in step 1007, the router encodes the received message and the stored message by network coding. If it is determined in step 1004 that the hop count to router value is not 0, in step 1010, the hop count to router value is decreased by 1 and step 1008 is performed.

1005단계에서 저장된 메시지가 없는 경우, 라우터는 메시지를 저장하는 1009단계를 수행하고, 1001단계를 포함하는 이후의 단계들을 다시 수행한다. 또한, 1006단계에서 주소가 동일하지 않은 경우, 라우터는 1001단계를 포함하는 이후의 단계들을 다시 수행한다.If there is no message stored in step 1005, the router performs step 1009 in which the message is stored and performs subsequent steps including step 1001 again. In addition, if the address is not the same in step 1006, the router performs the subsequent steps including step 1001 again.

도 11은 도 3에서 서비스 타입이 2인 경우 네트워크 코딩의 개념을 설명하기 위한 개념도이다.FIG. 11 is a conceptual diagram illustrating the concept of network coding when the service type is 2 in FIG. 3.

1101단계에서 신뢰 센터(301)와 단말 장치(303)는 각각 메시지를 생성한다. 1102단계에서 신뢰 센터와 단말 장치는 각각 생성된 메시지의 네트워크 계층의 목적지 주소를 라우터 주소로 입력한다. 1103단계에서 신뢰 센터와 단말 장치는 상기 라우터 주소가 입력된 메시지를 라우터로 전송한다. 1104단계에서 라우터(302)는 수신된 메시지와 저장된 메시지를 네트워크 코딩으로 부호화한다. 여기에서 수신된 메시지와 저장된 메시지의 개념은 도 9에서 설명한 것과 동일하다. 1105단계에서 라우터(302)는 신뢰 센터와 단말 장치를 멀티캐스트 그룹으로 설정하고, 네트워크 코딩으로 부호화된 메시지를 멀티캐스팅한다. 이러한 방법은 기존의 네트워크 계층을 변경시키지 않고 사용할 수 있다.In step 1101, the trust center 301 and the terminal device 303 each generate a message. In step 1102, the trust center and the terminal device respectively input the destination address of the network layer of the generated message as the router address. In step 1103, the trust center and the terminal device transmit the message in which the router address is input to the router. In step 1104, the router 302 encodes the received message and the stored message by network coding. The concept of the received message and the stored message is the same as described with reference to FIG. 9. In step 1105, the router 302 sets the trust center and the terminal device as a multicast group, and multicasts a message encoded by network coding. This method can be used without changing the existing network layer.

도 12는 본 발명의 일 실시예에 따른 네트워크 통신 시스템을 나타내는 블록도이다. 도 12에 도시된 네트워크 통신 시스템은 지그비 기반의 통신 시스템으로서 신뢰 센터(1200), 라우터(1300) 및 단말 장치(1400)를 포함한다. 도 12에 도시된 네트워크 시스템에서 링크 키는 무선 네트워크에서 두 장치 사이에 암호화된 통신을 위해 사용되는 키로서 단말 장치가 네트워크에 참여할 때 두 장치의 정보를 이용하여 생성된다. 기존의 지그비(Zigbee)와 같은 무선 네트워크에서는 대칭-키 키 설정(Symmetric-Key Key Establishment: SKKE) 프로토콜이 사용되었으나, 본 실시예에 따른 네트워크 시스템은 네트워크 코딩(Network coding)을 이용하여 시스템 구성원 간에 교환하는 정보의 량을 줄이고, 정보의 전송 경로를 단순화 시킬 수 있으며, 시간 지연과 소비 전력의 측면에서 유리한 구조를 갖는다. 이하 각 구성요소에 대하여 상세히 설명한다.12 is a block diagram illustrating a network communication system according to an embodiment of the present invention. The network communication system illustrated in FIG. 12 is a Zigbee-based communication system including a trust center 1200, a router 1300, and a terminal device 1400. In the network system illustrated in FIG. 12, a link key is a key used for encrypted communication between two devices in a wireless network and is generated by using information of two devices when a terminal device joins a network. In a conventional wireless network such as Zigbee, a symmetric-key key establishment (SKKE) protocol is used. However, the network system according to the present embodiment uses network coding between network members. It can reduce the amount of information exchanged, simplify the transmission path of information, and has an advantageous structure in terms of time delay and power consumption. Hereinafter, each component will be described in detail.

우선, 키 분배 장치인 라우터(1300)는 본 실시예에서 네트워크 코딩을 통한 키 분산을 수행한다. 라우터(1300)는 키 전송부(1302), 메시지 전송부(1304), 네트워크 코딩부(1306) 및 메시지 수신부(1308)를 포함한다. First, the router 1300, which is a key distribution device, performs key distribution through network coding in this embodiment. The router 1300 includes a key transmitter 1302, a message transmitter 1304, a network coding unit 1306, and a message receiver 1308.

키 전송부(1302)는 신뢰 센터에서 전송한 마스터 키, 네트워크 키를 단말 장치에 전송 또는 중계하는 역할을 수행한다. 링크 키의 경우 신뢰 센터와 단말 장치에서 각각 생성하므로 본 실시예에서 키 전송부(1302)는 링크 키의 전송을 수행할 필요는 없다. 메시지 전송부(1304)는 네트워크 코딩된 메시지를 신뢰 센터와 단말 장치에 멀티캐스팅한다. 네트워크 코딩부(1306)는 신뢰 센터와 단말 장치로 부터 수신된 메시지들을 입력으로 네트워크 코딩을 수행한다. 메시지 수신부(1308)는 신뢰 센터와 단말 장치로 부터 링크 키 생성을 위해 필요한 메시지들을 수신한다. The key transmitter 1302 transmits or relays the master key and the network key transmitted from the trust center to the terminal device. Since the link key is generated by the trust center and the terminal device, the key transmitter 1302 does not need to transmit the link key in this embodiment. The message transmitter 1304 multicasts the network coded message to the trust center and the terminal device. The network coding unit 1306 performs network coding with input of messages received from the trust center and the terminal device. The message receiving unit 1308 receives messages required for link key generation from the trust center and the terminal device.

도 12에 도시되지는 않았지만, 본 발명의 라우터는 제 1 판단부, 저장부 및 제 2 판단부를 더 포함할 수 있다. 제 1 판단부(미도시)는 메시지 수신부에 수신된 메시지가 네트워크 코딩에 따라 생성된 메시지인지 여부를 판단한다. 저장부(미도시)는 제 1 판단부의 판단 결과 네트워크 코딩된 메시지가 아닌 경우 수신된 메시지를 저장한다. 제 2 판단부(미도시)는 또 다른 메시지가 메시지 수신부에 수신된 경우 그 메시지가 네트워크 코딩에 따라 생성된 메시지 인지 여부를 판단하고, 네트워크 코딩된 메시지가 아닌 경우 상기 저장부에 저장된 메시지의 출발지 주소와 상기 또 다른 메시지의 목적지 주소가 동일한지 여부, 또는 저장된 메시지의 목적지 주소와 상기 또 다른 메시지의 출발지 주소가 동일한지 여부를 판단한다. 제 2 판단부의 판단 결과 동일한 것으로 판단되면, 네트워크 코딩부(1306)는 상기 메시지들의 시퀀스 넘버가 동일한지 여부를 판단한 후 네트워크 코딩을 수행한다. Although not shown in FIG. 12, the router of the present invention may further include a first determiner, a storage unit, and a second determiner. The first determiner (not shown) determines whether the message received by the message receiver is a message generated according to network coding. The storage unit (not shown) stores the received message if it is not a network coded message as a result of the determination of the first determination unit. The second determination unit (not shown) determines whether the message is a message generated according to a network coding when another message is received in the message receiving unit. If the message is not a network coded message, the second determination unit (not shown) is the source of the message stored in the storage unit. It is determined whether an address and a destination address of the another message are the same or whether the destination address of the stored message and the source address of the another message are the same. If it is determined that the second determination unit is the same, the network coding unit 1306 determines whether the sequence numbers of the messages are the same and then performs network coding.

신뢰 센터(1200)는 마스터 키, 링크 키 및 네트워크 키를 생성 및 관리하고, 라우터(1300)의 중계를 통해 단말 장치(1400)와의 지그비 통신을 수행한다. 신뢰 센터(1200)는 마스터 키 전송부(1202), 링크 키 생성부(1204), 네트워크 키 전송부(1206), 메시지 전송부(1208), 디코딩 부(1210) 및 메시지 수신부(1212)를 포함한다. The trust center 1200 generates and manages a master key, a link key, and a network key, and performs Zigbee communication with the terminal device 1400 through a relay of the router 1300. The trust center 1200 includes a master key transmitter 1202, a link key generator 1204, a network key transmitter 1206, a message transmitter 1208, a decoder 1210, and a message receiver 1212. do.

마스터 키 전송부(1202)는 라우터로 부터 단말 장치 업데이트 명령을 수신하고, 해당 단말 장치를 네트워크에 포함시킬 것으로 판단한 경우 마스터 키를 단말 장치에 전송한다. 링크 키 생성부(1204)는 디코딩 부(1210)로 부터 복호화된 메시지를 입력으로 신뢰 센터와 단말 장치가 공유하는 링크 키를 생성한다. 네트워크 키 전송부(1206)는 생성된 링크 키를 이용하여 네트워크 키를 암호화하고, 암호화된 네트워크 키를 라우터를 중계로 하여 단말 장치에 전송한다. 메시지 전송부(1208)는 디코딩부(1210)로 부터 전달된 메시지를 라우터 또는 단말 장치로 전송한다. 디코딩부(1210)는 메시지 수신부(1212)에 수신된 메시지 즉 라우터(1300)로 부터 수신되는 네트워크 코딩된 메시지를 복호화한다. 예를 들어, 디코딩부(1210)이 XOR 연산을 통해 부호화된 메시지인 SKKE-1 XOR KKE-2를 수신하면, 상기 수신된 메시지에 대한 복호화를 수행하여 단말 장치로부터 전송된 SKKE-2 메시지를 획득한다. 메시지 수신부(1212)는 라우터(1300) 또는 단말 장치(1400)로 부터의 메시지를 수신하고, 수신된 메시지를 디코딩부에 전달한다.The master key transmitter 1202 receives the terminal device update command from the router, and transmits the master key to the terminal device when it is determined that the terminal device is to be included in the network. The link key generation unit 1204 generates a link key shared by the trust center and the terminal apparatus by using the decrypted message from the decoding unit 1210. The network key transmission unit 1206 encrypts the network key using the generated link key, and transmits the encrypted network key to the terminal device via the router as a relay. The message transmitter 1208 transmits the message transmitted from the decoder 1210 to the router or the terminal device. The decoder 1210 decodes the message received by the message receiver 1212, that is, the network coded message received from the router 1300. For example, when the decoding unit 1210 receives the SKKE-1 XOR KKE-2, which is a message encoded through an XOR operation, the decoder 1210 decodes the received message to obtain a SKKE-2 message transmitted from the terminal device. do. The message receiving unit 1212 receives a message from the router 1300 or the terminal device 1400 and transfers the received message to the decoding unit.

단말 장치(1400)는 라우터(1300)의 중계를 통해 단말 장치(1400)와의 지그비 통신을 수행하기 위한 메시지를 수신 및 전송한다. 단말 장치(1400)는 마스터 키 수신부(1402), 링크 키 생성부(1404), 네트워크 키 수신부(1406), 메시지 전송부(1408), 디코딩 부(1410) 및 메시지 수신부(1412)를 포함한다. The terminal device 1400 receives and transmits a message for performing Zigbee communication with the terminal device 1400 through the relay of the router 1300. The terminal device 1400 includes a master key receiving unit 1402, a link key generating unit 1404, a network key receiving unit 1406, a message transmitting unit 1408, a decoding unit 1410, and a message receiving unit 1412.

마스터 키 수신부(1402)는 신뢰 센터에서 전송된 마스터 키를 수신한다. 링크 키 생성부(1404)는 디코딩 부(1410)로부터 복호화된 메시지를 입력으로 신뢰 센터와 단말 장치가 공유하는 링크 키를 생성한다. 네트워크 키 수신부(1406)는 신뢰 센터로 부터 전송된 네트워크 키를 수신한다. 메시지 전송부(1408)는 디코딩부(1410)로 부터 전달된 메시지를 라우터 또는 신뢰 센터로 전송한다. 디코딩부(1410)는 메시지 수신부(1412)에 수신된 메시지 즉 라우터(1300)로 부터 수신되는 네트워크 코딩된 메시지를 복호화한다. 예를 들어, 디코딩부(1210)이 XOR연산을 통해 부호화된 메시지인 SKKE-1 XOR SKKE-2를 수신하면, 상기 수신된 메시지에 대한 복호화를 수행하고, 신뢰 센터로부터 전송된 SKKE-1 메시지를 획득한다. 메시지 수신부(1412)는 라우터(1300) 또는 신뢰 센터(1200)로부터의 메시지를 수신하고, 수신된 메시지를 디코딩부에 전달한다.The master key receiving unit 1402 receives the master key transmitted from the trust center. The link key generation unit 1404 generates a link key shared by the trust center and the terminal apparatus by using the decrypted message from the decoding unit 1410. The network key receiving unit 1406 receives the network key transmitted from the trust center. The message transmitter 1408 transmits the message transmitted from the decoder 1410 to a router or a trust center. The decoding unit 1410 decodes the message received by the message receiving unit 1412, that is, the network coded message received from the router 1300. For example, when the decoding unit 1210 receives the SKKE-1 XOR SKKE-2, which is a message encoded through the XOR operation, the decoding unit 1210 decodes the received message, and decodes the SKKE-1 message transmitted from the trust center. Acquire. The message receiving unit 1412 receives a message from the router 1300 or the trust center 1200 and transfers the received message to the decoding unit.

한편 본 발명의 네트워크 키 분배 방법은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다.Meanwhile, the network key distribution method of the present invention can be embodied as computer readable codes on a computer readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored.

컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현하는 것을 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트 들은 본 발명이 속하는 기술 분야의 프로그래머들에 의하여 용이하게 추론될 수 있다.Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disks, optical data storage devices, and the like, which may also be implemented in the form of carrier waves (for example, transmission over the Internet). Include. The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion. In addition, functional programs, codes, and code segments for implementing the present invention can be easily inferred by programmers in the art to which the present invention belongs.

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

본 발명의 네트워크 통신 시스템에서의 키 분배 방법과 장치 그리고 네트워크 통신 시스템은 링크 키를 분배함에 따라 링크 키를 생성하기 위해 교환되는 정보량을 최소화할 수 있고, 또한 소요되는 시간과 소비 전력을 단축시킬 수 있으며, ZigBee (802.15.4) RFID와 같이 보안이 요구되는 다양한 무선 네트워크 시스템에 적용되기에 유리하다. The key distribution method and apparatus in the network communication system of the present invention and the network communication system can minimize the amount of information exchanged to generate the link key as the link key is distributed, and can also reduce the time and power consumption. ZigBee (802.15.4) is advantageous to be applied to various wireless network systems that require security such as RFID.

Claims (16)

신뢰 센터, 라우터 및 단말 장치를 구비하는 네트워크 통신 시스템의 키 분배 방법에 있어서,A key distribution method of a network communication system having a trust center, a router, and a terminal device, a) 상기 라우터가 신뢰 센터 및 라우터로 부터 전송받은 메시지를 이용하여 네트워크 코딩을 수행하고, 상기 신뢰 센터와 상기 단말 장치가 상기 네트워크 코딩에 따라 생성된 메시지를 이용하여 링크 키를 각각 생성하는 단계; 및a) the router performs network coding using a message received from the trust center and the router, and the link center and the terminal device generate link keys using the messages generated according to the network coding; And b) 상기 신뢰 센터가 상기 생성된 링크 키를 이용하여 네트워크 키를 생성하고, 상기 생성된 네트워크 키를 상기 단말 장치에 전송하는 단계를 포함하는 것을 특징으로 하는 네트워크 통신 시스템의 키 분배 방법.b) the trust center generating a network key using the generated link key, and transmitting the generated network key to the terminal device. 제 1 항에 있어서, 상기 a) 단계는The method of claim 1, wherein step a) a1) 상기 신뢰 센터와 단말 장치가 링크 키 설정을 위한 제1 메시지와 제2 메시지를 각각 라우터에 전송하는 단계; a1) transmitting the first message and the second message to the router by the trust center and the terminal device respectively to establish a link key; a2) 상기 라우터가 상기 제1 메시지와 제2 메시지를 이용한 네트워크 코딩을 수행하고, 상기 네트워크 코딩에 따라 생성된 메시지를 상기 신뢰 센터와 단말 장치 각각에 전송하는 단계; 및a2) performing, by the router, network coding using the first message and the second message, and transmitting a message generated according to the network coding to each of the trust center and the terminal device; And a3) 상기 신뢰 센터와 단말 장치가 상기 네트워크 코딩된 메시지를 이용하여 각각 링크키를 생성하는 단계를 포함하는 것을 특징으로 하는 네트워크 통신 시스템의 키 분배 방법.a3) generating a link key by the trust center and the terminal device using the network coded message, respectively. 제 2 항에 있어서, 상기 a3) 단계는The method of claim 2, wherein the step a3) a31) 상기 신뢰 센터가 상기 네트워크 코딩된 메시지를 디코딩하여 제 2 메시지를 획득하고, 상기 획득된 제 2 메시지를 이용하여 링크 키를 생성하는 단계; 및a31) the trust center decoding the network coded message to obtain a second message, and generating a link key using the obtained second message; And a32) 상기 단말 장치가 상기 네트워크 코딩된 메시지를 디코딩하여 제 1 메시지를 획득하고, 상기 획득된 제 1 메시지를 이용하여 링크 키를 생성하는 단계를 포함하는 것을 특징으로 하는 네트워크 통신 시스템의 키 분배 방법.a32) the terminal device decoding the network coded message to obtain a first message, and generating a link key using the obtained first message; . 제 2 항에 있어서, a2) 단계는 The method of claim 2, wherein step a2) a21) 상기 라우터에 전송된 메시지가 네트워크 코딩에 따라 생성된 메시지인지 여부를 판단하는 단계;a21) determining whether the message sent to the router is a message generated according to network coding; a22) 상기 a21)에서의 판단 결과 네트워크 코딩된 메시지가 아닌 경우, 상기 전송된 메시지를 저장하는 단계;a22) if the result of the determination in a21 is not a network coded message, storing the transmitted message; a23) 상기 라우터에 전송된 또 다른 메시지가 네트워크 코딩에 따라 생성된 메시지 인지 여부를 판단하고, 상기 판단 결과 네트워크 코딩된 메시지가 아닌 경우, 상기 a22) 단계에서 저장된 메시지의 출발지 또는 목적지가 상기 전송된 또 다른 메시지의 목적지 또는 출발지와 서로 동일한 지 여부를 판단하는 단계;a23) It is determined whether another message transmitted to the router is a message generated according to network coding, and if the result is not a network coded message, the source or destination of the message stored in step a22) is transmitted. Determining whether the message is the same as a destination or a source of another message; a24) 상기 a23)단계에서 서로 동일한 것으로 판단된 경우, 상기 a22)단계에서 저장된 메시지와 상기 a23)단계에서 전송된 또 다른 메시지를 이용하여 네트워크 코딩을 수행하는 단계; 및a24) if it is determined that they are the same in step a23), performing network coding using the message stored in step a22) and another message transmitted in step a23); And a25) 상기 네트워크 코딩에 따라 생성된 메시지를 상기 신뢰 센터와 단말 장치 각각에 전송하는 단계를 포함하는 것을 특징으로 하는 네트워크 통신 시스템의 키 분배 방법.a25) transmitting a message generated according to the network coding to each of the trust center and the terminal device. 제 3 항에 있어서, The method of claim 3, wherein 상기 메시지들은 SKKE 프로토콜 기반의 메시지인 것을 특징으로 하는 네트워크 통신 시스템의 키 분배 방법.The message is a key distribution method of the network communication system, characterized in that the message based on the SKKE protocol. 제 1 항에 있어서, The method of claim 1, 상기 a)단계에서 상기 메시지들은 SKKE 프로토콜 기반의 메시지이고, 상기 a)단계는In step a), the messages are messages based on the SKKE protocol, and step a) a1) 상기 신뢰 센터가 SKKE-1 메시지를 상기 라우터로 전송하며, 상기 단말 장치가 SKKE-2 메시지를 상기 라우터로 전송하는 단계;a1) the trust center sending a SKKE-1 message to the router, and the terminal device sending a SKKE-2 message to the router; a2) 상기 라우터가 상기 전송받은 SKKE-1과 SKKE-2 메시지에 대한 네트워크 코딩을 수행하고, 상기 네트워크 코딩에 따라 생성된 메시지를 신뢰 센터와 단말 장치에 각각 전송하는 단계;a2) performing, by the router, network coding the received SKKE-1 and SKKE-2 messages and transmitting a message generated according to the network coding to a trust center and a terminal device, respectively; a3) 상기 신뢰 센터와 단말 장치가 상기 a2)단계에서 전송된 메시지에 대한 디코딩을 각각 수행하는 단계;a3) each of the trust center and the terminal device performing decoding on the message transmitted in step a2); a4) 상기 신뢰 센터가 상기 디코딩된 메시지를 이용하여 SKKE-3 메시지를 생성하고, 상기 생성된 신호를 상기 라우터로 전송하며, 상기 단말 장치가 상기 디코딩된 메시지를 이용하여 SKKE-4 메시지를 생성하고, 상기 생성된 신호를 상기 라우터로 전송하는 단계;a4) the trust center generates a SKKE-3 message using the decoded message, transmits the generated signal to the router, and the terminal device generates a SKKE-4 message using the decoded message; Transmitting the generated signal to the router; a5) 상기 라우터가 상기 전송받은 SKKE-3과 SKKE-4 메시지에 대한 네트워크 코딩을 수행하고, 상기 네트워크 코딩에 따라 생성된 메시지를 신뢰 센터와 단말 장치에 각각 전송하는 단계; 및a5) performing, by the router, network coding the received SKKE-3 and SKKE-4 messages, and transmitting a message generated according to the network coding to a trust center and a terminal device, respectively; And a6) 상기 신뢰 센터와 단말 장치가 상기 a5)단계에서 전송 받은 메시지에 대한 디코딩을 각각 수행하고, 상기 디코딩된 메시지를 이용하여 링크키를 각각 생성하는 단계를 포함하는 것을 특징으로 하는 네트워크 통신 시스템의 키 분배 방법.a6) each of the trust center and the terminal device decoding the message received in step a5) and generating a link key using the decoded message, respectively. Key distribution method. 제 1 항에 있어서, 상기 신뢰 센터와 단말 장치가 전송하는 메시지들은, The method of claim 1, wherein the messages transmitted by the trust center and the terminal device are: 신뢰 센터와 단말 장치에서 생성된 메시지 인지 여부 또는 라우터에서 네트워크 코딩된 메시지인지 여부를 구분하기 위한 정보, 네트워크 코딩을 위한 라우터 선정을 위한 정보, 홉 카운트 투 라우터 정보 및 라우터 주소 정보를 포함하는 것을 특징으로 하는 네트워크 통신 시스템의 키 분배 방법.And information for identifying whether the message is generated by the trust center and the terminal device or whether the message is a network coded message in the router, information for selecting a router for network coding, hop count to router information, and router address information. A key distribution method of a network communication system. 제 1 항에 있어서, 상기 a) 단계에 앞서,The method of claim 1, wherein prior to step a), 네트워크에 참여하고자 하는 단말 장치가 네트워크와의 연결을 위해 라우터와 메시지 교환을 하는 단계;Exchanging a message with a router for connection with a network by a terminal device intending to participate in the network; 상기 라우터가 신뢰 센터에 업데이트 요청 메시지를 전송하는 단계; 및The router sending an update request message to a trust center; And 상기 신뢰 센터가 상기 단말 장치를 네트워크에 포함할 것인지 여부를 판단하고, 상기 판단 결과에 따라 마스터 키를 상기 단말 장치에 전송하는 단계를 더 포함하며,Determining, by the trust center, whether to include the terminal device in a network, and transmitting a master key to the terminal device according to the determination result; 상기 a) 단계에서 상기 단말 장치는 상기 마스터 키를 이용하여 메시지를 생성하는 것을 특징으로 하는 네트워크 통신 시스템의 키 분배 방법.And in step a), the terminal device generates a message using the master key. 제 2 항에 있어서, The method of claim 2, 상기 a1)에서 상기 신뢰 센터와 단말 장치는 네트워크 코딩을 위한 라우터 선정을 위한 정보를 더욱 생성하여 라우터에 각각 전송하며,In the a1), the trust center and the terminal device further generate information for selecting a router for network coding and transmit the information to the router, respectively. 상기 라우터 선정을 위한 정보는 네트워크 코딩을 상기 네트워크에 포함된 모든 라우터가 수행할 수 있다는 정보, 홉 카운트를 고려하여 라우터를 선정한다는 정보 및 네트워크 코딩을 위한 라우터의 주소를 특정한 정보들 중에서 하나를 포함하는 것을 특징으로 하는 네트워크 통신 시스템의 키 분배 방법.The information for selecting a router includes one of information that network coding can be performed by all routers included in the network, information for selecting a router in consideration of a hop count, and information specifying a router address for network coding. Key distribution method for a network communication system, characterized in that. 제 9 항에 있어서, The method of claim 9, 상기 라우터 선정을 위한 정보가 홉 카운트를 고려하여 라우터를 선정한다는 정보를 포함할 경우,If the information for selecting the router includes information that selects the router in consideration of the hop count, 홉 카운트가 짝수이면 홉 카운트의 1/2 인 값을 홉 카운트 투 라우터(hop count to router)로 지정하고, 홀수일 경우 신뢰 센터에서 단말 장치로 보내는 메시지는 (홉 카운트+0)의 1/2값을 홉 카운트 투 라우터로 지정하며, 단말 장치에서 신뢰 센터로 보내는 메시지는 (홉 카운트 -1)의 1/2 값을 홉 카운트 투 라우터로 지정하며,If the hop count is even, assign a value of 1/2 of the hop count to hop count to router.If it is odd, a message sent from the trust center to the endpoint is 1/2 of (hop count + 0). Value to hop count-to-router, and a message sent from the terminal device to the trust center specifies 1/2 value of (hop count -1) to hop count-to-router, 상기 지정된 홉 카운트 투 라우터에 대한 정보는 상기 신뢰 장치와 단말 장치에서 생성되는 메시지에 포함되는 것을 특징으로 하는 네트워크 통신 시스템의 키 분배 방법.And the information on the designated hop count to router is included in a message generated by the trusted device and the terminal device. 제 10 항에 있어서, The method of claim 10, 상기 라우터는 상기 전송 받은 메시지의 홉 카운트 투 라우터 값이 0인 경우 네트워크 코딩을 수행하고, 홉 카운트 투 라우터 값이 0이 아닌 경우에는 홉 카운트 투 라우터값을 1을 감소시킨 후 다음 홉으로 전송하는 것을 특징으로 하는 특징으로 하는 네트워크 통신 시스템의 키 전송 방법.If the hop count to router value of the received message is 0, the router performs network coding. If the hop count to router value is not 0, the router decreases the hop count to router value to 1 and then transmits it to the next hop. Key transmission method of a network communication system, characterized in that. 제 1 항 내지 제 11 항 중 어느 한 항의 네트워크 통신 시스템의 키 분배 방법을 컴퓨터상에서 수행하기 위한 프로그램이 기록된 컴퓨터에서 판독가능한 기록 매체.A computer-readable recording medium having recorded thereon a program for executing on a computer the key distribution method of the network communication system according to any one of claims 1 to 11. 신뢰센터, 라우터 및 단말 장치를 포함하는 네트워크 통신 시스템에 있어서, A network communication system including a trust center, a router, and a terminal device, 상기 라우터는 The router is 신뢰 센터와 상기 단말 장치가 공유하는 링크키 생성을 위한 메시지를 신뢰 센터와 상기 단말 장치로부터 각각 전송 받는 메시지 수신부; A message receiving unit for receiving a message for generating a link key shared by the trust center and the terminal device from the trust center and the terminal device, respectively; 상기 전송 받은 메시지를 이용한 네트워크 코딩을 수행하는 코딩부; 및A coding unit which performs network coding using the received message; And 상기 네트워크 코딩된 메시지를 상기 신뢰 센터와 단말 장치에 각각 전송하는 전송부를 구비하는 것을 특징으로 하는 네트워크 통신 시스템.And a transmission unit for transmitting the network coded message to the trust center and the terminal device, respectively. 제 13 항에 있어서, 상기 신뢰 센터는 The method of claim 13, wherein the trust center is 네트워크에 참여하고자 하는 단말 장치에게 마스터 키를 전송하는 마스터 키 전송부;A master key transmitter for transmitting a master key to a terminal device that wants to participate in a network; 링크 키 생성을 위한 제 1 메시지를 라우터에 전송하는 제 1 메시지 전송부;A first message transmitter for transmitting a first message for generating a link key to a router; 상기 라우터로부터 전송 받은 네트워크 코딩된 메시지를 디코딩하는 디코딩부;A decoding unit for decoding the network coded message received from the router; 상기 디코딩부를 통해 디코딩된 메시지를 이용하여 링크 키 생성을 위한 제 3 메시지를 상기 라우터에 전송하는 제 3 메시지 전송부;A third message transmitter for transmitting a third message for link key generation to the router by using the message decoded by the decoder; 상기 디코딩부를 통해 디코딩된 메시지를 이용하여 링크키를 생성하는 링크키 생성부; 및A link key generation unit generating a link key using the message decoded by the decoding unit; And 상기 단말 장치와 관련하여 생성된 링크 키를 이용하여 네트워크 키를 생성하고, 상기 네트워크 키를 상기 단말 장치에 전송시키는 네트워크 키 전송부를 포함하는 것을 특징으로 하는 네트워크 통신 시스템.And a network key transmitter for generating a network key using the link key generated in association with the terminal device and transmitting the network key to the terminal device. 제 13 항에 있어서, 상기 단말 장치는 The terminal device of claim 13, wherein the terminal device comprises: 상기 신뢰 센터로 부터의 마스터 키를 전송받는 마스터 키 수신부;A master key receiving unit for receiving a master key from the trust center; 상기 링크 키 생성을 위한 제 2 메시지를 상기 라우터에 전송하는 제 2 메시지 전송부;A second message transmitter which transmits a second message for generating the link key to the router; 상기 라우터로부터 전송 받은 네트워크 코딩된 메시지를 디코딩하는 디코딩부;A decoding unit for decoding the network coded message received from the router; 상기 디코딩부에서 디코딩된 메시지를 이용하여 링크 키 생성을 위한 제 4 메시지를 상기 라우터에 전송하는 제 4 메시지 전송부;A fourth message transmitter for transmitting a fourth message for generating a link key to the router by using the message decoded by the decoder; 상기 디코딩부에서 디코딩된 메시지를 이용하여 링크키를 생성하는 링크 키 생성부; 및A link key generation unit generating a link key using the message decoded by the decoding unit; And 상기 신뢰 센터로부터의 네트워크 키를 전송 받는 네트워크 키 수신부를 포함하는 것을 특징으로 하는 네트워크 통신 시스템.And a network key receiver for receiving a network key from the trust center. 네트워크 통신 시스템의 키 분배 장치에 있어서,In the key distribution device of the network communication system, 링크 키 생성을 위한 메시지를 신뢰 센터와 단말 장치로 부터 전송 받는 메시지 수신부;A message receiving unit for receiving a message for generating a link key from a trust center and a terminal device; 상기 메시지 수신부에 수신된 메시지가 네트워크 코딩에 따라 생성된 메시지인지 여부를 판단하는 제 1 판단부;A first determining unit determining whether the message received by the message receiving unit is a message generated according to network coding; 상기 제 1 판단부의 판단 결과 네트워크 코딩된 메시지가 아닌 경우, 상기 전송된 메시지를 저장하는 저장부; A storage unit for storing the transmitted message, when it is determined that the first determination unit is not a network coded message; 상기 수신된 또 다른 메시지가 네트워크 코딩에 따라 생성된 메시지 인지 여부를 판단하고, 상기 판단 결과에 따라 상기 저장부에 저장된 메시지의 출발지 또는 목적지가 상기 수신된 또 다른 메시지의 목적지 또는 출발지와 서로 동일한 지 여부를 판단하는 제 2 판단부;It is determined whether the received another message is a message generated according to network coding, and according to the determination result, whether the source or destination of the message stored in the storage unit is the same as the destination or source of the received another message. A second determination unit determining whether or not; 상기 제 2 판단부의 판단 결과 서로 동일한 것으로 판단된 경우, 상기 저장부에 저장된 메시지와 상기 수신된 또 다른 메시지를 이용하여 네트워크 코딩을 수행하는 네트워크 코딩부; 및A network coding unit configured to perform network coding using a message stored in the storage unit and another received message when it is determined that the second determination unit is identical to each other; And 상기 네트워크 코딩에 따라 부호화된 메시지를 상기 신뢰 센터와 단말 장치로 전송하는 메시지 전송부를 포함하는 것을 특징으로 하는 네트워크 통신 시스템의 키 분배 장치.And a message transmitter for transmitting a message encoded according to the network coding to the trust center and a terminal device.
KR1020070090857A 2007-09-07 2007-09-07 Key distribution method and apparatus using network coding, network communication system and recording medium storing program for performing the method thereof KR100919864B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070090857A KR100919864B1 (en) 2007-09-07 2007-09-07 Key distribution method and apparatus using network coding, network communication system and recording medium storing program for performing the method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070090857A KR100919864B1 (en) 2007-09-07 2007-09-07 Key distribution method and apparatus using network coding, network communication system and recording medium storing program for performing the method thereof

Publications (2)

Publication Number Publication Date
KR20090025760A KR20090025760A (en) 2009-03-11
KR100919864B1 true KR100919864B1 (en) 2009-09-30

Family

ID=40694034

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070090857A KR100919864B1 (en) 2007-09-07 2007-09-07 Key distribution method and apparatus using network coding, network communication system and recording medium storing program for performing the method thereof

Country Status (1)

Country Link
KR (1) KR100919864B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101508073B1 (en) * 2013-12-24 2015-04-07 단국대학교 천안캠퍼스 산학협력단 Method for access of device in zigbee network and apparatus therefor
KR20190089346A (en) * 2018-01-22 2019-07-31 삼성전자주식회사 Electronic apparatus, terminal, method for controlling thereof and computer program product thereof
CN114268933A (en) * 2021-12-20 2022-04-01 太仓市同维电子有限公司 Method and system for realizing rapid exchange of wireless key between wireless router and intelligent terminal

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030056568A (en) * 2001-12-28 2003-07-04 한국전자통신연구원 Method of authentication for protecting agent and messages
US20060251256A1 (en) * 2005-04-04 2006-11-09 Nokia Corporation Administration of wireless local area networks

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030056568A (en) * 2001-12-28 2003-07-04 한국전자통신연구원 Method of authentication for protecting agent and messages
US20060251256A1 (en) * 2005-04-04 2006-11-09 Nokia Corporation Administration of wireless local area networks

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
논문1:전자공학회
논문2:전자공학회

Also Published As

Publication number Publication date
KR20090025760A (en) 2009-03-11

Similar Documents

Publication Publication Date Title
CN109995510B (en) Quantum key relay service method
CN109995515B (en) Quantum key relay method
US7697516B2 (en) Method and apparatus for pre-admitting a node to a mesh network
KR20170013879A (en) Systems and methods for selective association
US20070147620A1 (en) Method for encryption key management for use in a wireless mesh network
Afaneh Intro to Bluetooth low energy
Sathiamoorthy et al. Design of a proficient hybrid protocol for efficient route discovery and secure data transmission in CEAACK MANETs
CN100594691C (en) Data transmission encryption method of MANET network
WO2007052527A1 (en) Radio communication system, communication device, and relay device
Gopikrishnan et al. HSDA: hybrid communication for secure data aggregation in wireless sensor network
KR100919864B1 (en) Key distribution method and apparatus using network coding, network communication system and recording medium storing program for performing the method thereof
Rhee et al. A Group Key Management Architecture for Mobile Ad-hoc Wireless Networks.
CN116866899B (en) Multi-node wireless ad hoc network communication method and device, electronic equipment and storage medium
de Ree et al. Key management for secure network coding-enabled mobile small cells
KR100686736B1 (en) The method of joining in the mobile ad-hoc network through the authentication
Robinson et al. Bandwidth and delay aware routing protocol with scheduling algorithm for multi hop mobile ad hoc networks
Safaka et al. Towards unconditional tor-like anonymity
Anitha et al. An Efficient Secure Routing and Hierarchical Approach to Elliptic Curve Cryptography Combined with Distributed Group Key Management
Ruxanayasmin et al. Minimization of power consumption in mobile adhoc networks
Mathankumar et al. Implementation of Energy Efficient Multipath Routing and Secure Data Aggregation in Wireless Sensor Networks using ARM LPC2148
Mohapatra et al. On the number of entangled qubits in quantum wireless sensor networks
Elgenaidi et al. Implementing secure key coordination scheme for line topology wireless sensor networks
Anderson et al. A secure wireless agent-based testbed
JP6961951B2 (en) Network construction system, method and wireless node
Singh et al. SMGSAF: a secure multi-geocasting scheme for opportunistic networks

Legal Events

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

Payment date: 20130618

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140515

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20150922

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20160922

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee