KR101465337B1 - Method for Authenticating Entity of Thing to Thing Communication Network - Google Patents

Method for Authenticating Entity of Thing to Thing Communication Network Download PDF

Info

Publication number
KR101465337B1
KR101465337B1 KR1020130059071A KR20130059071A KR101465337B1 KR 101465337 B1 KR101465337 B1 KR 101465337B1 KR 1020130059071 A KR1020130059071 A KR 1020130059071A KR 20130059071 A KR20130059071 A KR 20130059071A KR 101465337 B1 KR101465337 B1 KR 101465337B1
Authority
KR
South Korea
Prior art keywords
message
random number
field
authentication
recorded
Prior art date
Application number
KR1020130059071A
Other languages
Korean (ko)
Inventor
강남희
박지예
Original Assignee
덕성여자대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 덕성여자대학교 산학협력단 filed Critical 덕성여자대학교 산학협력단
Priority to KR1020130059071A priority Critical patent/KR101465337B1/en
Application granted granted Critical
Publication of KR101465337B1 publication Critical patent/KR101465337B1/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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • H04L9/3273Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response for mutual authentication
    • 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

Landscapes

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

Abstract

According to the present invention, an entity authentication method in an object-to-object communications network is a light-weighted entity authentication method that can be applied to an object-to-object communications network having limited computing resources. The entity authentication method comprises the steps of: including a first random number in a first message to be transmitted to a second device included in the object-to-object communications network if a first device included in the object-to-object communications network is in a state capable of requesting an authentication; generating a second random number, a first result value by calculating the second random number with a first portion of the first random number, and a second result value by bit-concatenating the first result value with a second portion of the first random number, if the second device is in a state capable of responding to the authentication; including the second result value in a second message and encrypting the second message with a shared key shared with the first device by the second device to transmit the second message to the first device; and decrypting the encrypted second message by the first device to obtain the second portion of the first random number and comparing the obtained second portion of the first random number with the first random number generated to authenticate the second device.

Description

사물간 통신 네트워크의 개체 인증 방법{Method for Authenticating Entity of Thing to Thing Communication Network}[0001] The present invention relates to a method for authenticating entities of a communication network,

본 발명은 통신 네트워크에 관한 것으로서, 보다 구체적으로 사물간 통신 네트워크의 개체 인증에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a communication network, and more particularly to entity authentication of an inter-object communication network.

센서 네트워크는 유비쿼터스 컴퓨팅(Ubiquitous Computing) 구현을 위한 기반 네트워크로서, 초경량, 저전력의 많은 센서들로 구성된 무선 네트워크이다. 유비쿼터스 컴퓨팅 개념의 도입과 함께 이를 실생활에 적용시킬 수 있는 방안이 활발하게 연구되는 가운데 현실적인 유비쿼터스 환경을 제공해 줄 수 있는 센서 네트워크가 주요 이슈로 부각되고 있다.The sensor network is the base network for the implementation of ubiquitous computing, and is a wireless network composed of many sensors of light weight and low power. As the introduction of ubiquitous computing concept and its application to real life are actively studied, a sensor network that can provide a realistic ubiquitous environment is emerging as a major issue.

센서 네트워크는 배치에 한계를 갖는 분야에서 광범위하게 사용되고 있다. 예를 들어, 센서 네트워크는 실시간 트래픽 모니터링(Traffic Monitoring), 건물 안전성의 모니터링, 군사상의 감지와 탐지, 지진 활동 측정, 실시간 오염 모니터링, 야생 생물의 모니터링, 야생 화재 탐지 등과 같이 널리 사용되고 있다.Sensor networks have been used extensively in areas with limited deployment. For example, sensor networks are widely used, such as real-time traffic monitoring, building safety monitoring, military detection and detection, seismic activity monitoring, real-time contamination monitoring, wildlife monitoring and wildfire detection.

특히, 최근에는 통신기술의 발달 및 모바일 기기의 대중화로 인해 대부분의 사람들이 인터넷에 연결 가능한 스마트 기기를 보유하게 됨에 따라 BAN(Body Area Network)나 CAN(Car Area Network) 등과 같은 사용자 중심의 네트워크에도 센서 네트워크가 적용되어 스마트 헬스케어나 스마트 카와 같은 서비스를 제공할 수 있게 되었다.In recent years, with the development of communication technology and the popularization of mobile devices, most people have smart devices capable of connecting to the Internet, so that the user-oriented network such as BAN (Body Area Network) and CAN (Car Area Network) Sensor networks have been applied to provide services such as smart healthcare and smart cars.

이러한 센서 네트워크를 비롯하여 최근 집중적인 연구가 이루어지고 있는 M2M(Machine to Machine), loT(Internet of Things), 및 WoT(Web of Things) 등을 포함하는 사물간 통신 네트워크의 경우 기밀성이 보장되어야 하고, 사물간 통신 센서 네트워크를 구성하는 각종 개체(기기)들 간에 안전한 인증이 사전에 이루어져야 한다.Inter-object communication networks including M2M (Machine to Machine), loT (Internet of Things), and WoT (Web of Things), which have recently been intensively studied as well as sensor networks, Secure communication between various entities (devices) constituting the inter-object communication sensor network must be performed in advance.

이러한 인증을 위해, PSK(Pre-Shared Key)를 이용한 DTLS(Datagram Transport Layer Security) 프로토콜의 적용을 고려하는 방법이 제안된 바 있다. DTLS는 UDP(User Datagram Protocol)와 같은 데이터그램 프로토콜을 사용하는 응용서비스에 데이터 기밀성, 무결성, 사용자 인증 등을 제공하는 보안 프로토콜을 의미한다. 사물간 통신 네트워크에서 인증을 위해 적용되는 DTLS 프로토콜에 대한 구체적인 내용은 Zach Shelby, Klaus Hartke, Carsten Bormann, “Constrained Application Protocol (CoAP),” IETF CoRE WG draft, Apr., 2013(이하, ‘선행문헌 1’이라 함)에 구체적으로 기재되어 있다.For this authentication, a method considering a DTLS (Datagram Transport Layer Security) protocol using a Pre-Shared Key (PSK) has been proposed. DTLS is a security protocol that provides data confidentiality, integrity, and user authentication to application services using datagram protocols such as UDP (User Datagram Protocol). For more information on the DTLS protocol applied for authentication in interworking networks, see Zach Shelby, Klaus Hartke, Carsten Bormann, "Constrained Application Protocol (CoAP)," IETF CoRE WG draft, Apr., 2013 Quot; 1 ").

하지만 선행문헌 1에서 알 수 있는 바와 같이 DTLS 프로토콜의 경우 인증 및 세션키 분배과정에서 많은 핸드쉐이킹 메시지가 요구되므로, LLN(Low-power, Lossy Network) 환경 특성을 갖는 사물간 통신 네트워크에는 적합하지 않다는 문제점이 있다.However, since the DTLS protocol requires a lot of handshaking messages in the authentication and session key distribution processes, it is not suitable for inter-object communication networks having LLN (Low-power, Lossy Network) environment characteristics There is a problem.

본 발명은 상술한 문제점을 해결하기 위한 것으로서, 제한적인 컴퓨팅 자원을 갖는 사물간 통신 네트워크에 적용 가능한 경량화된 개체 인증 방법을 제공할 수 있는 사물간 통신 네트워크의 개체 인증 방법을 제공하는 것을 그 기술적 과제로 한다.The object of the present invention is to provide an object authentication method for an inter-object communication network capable of providing a lightweight object authentication method applicable to an inter-object communication network having limited computing resources. .

또한, 본 발명은 Dos공격에 효율적으로 대응할 수 있는 사물간 통신 네트워크의 개체 인증 방법을 제공하는 것을 다른 기술적 과제로 한다.Another object of the present invention is to provide an entity authentication method of an inter-object communication network capable of efficiently responding to a DoS attack.

상술한 문제점을 해결하기 위한 본 발명의 일 측면에 따른 사물간 통신 네트워크의 개체 인증 방법은, 사물간 통신 네트워크에 포함된 제1 기기가 인증 요청 가능 상태이면, 제1 난수를 제1 메시지에 포함시켜 상기 센서 네트워크에 포함된 제2 기기로 전송하는 단계; 상기 제2 기기가 인증 응답 가능 상태이면, 제2 난수를 생성하고 상기 제2 난수와 상기 제1 난수의 제1 부분을 연산한 제1 결과값을 상기 제1 난수의 제2 부분과 비트연접한 제2 결과값을 생성하는 단계; 상기 제2 결과값을 제2 메시지에 포함시키고, 상기 제2 기기가 상기 제1 기기와 공유하고 있는 공유키로 상기 제2 메시지를 암호화하여 상기 제1 기기로 전송하는 단계; 및 상기 제1 기기가 상기 암호화된 제2 메시지를 복호화하여 상기 제1 난수의 제2 부분을 획득하고, 획득한 제1 난수의 제2 부분을 상기 생성한 제1 난수와 비교하여 상기 제2 기기를 인증하는 단계를 포함하는 것을 특징으로 한다.According to one aspect of the present invention, there is provided an entity authentication method for an inter-object communication network, the method comprising: if a first device included in an inter-object communication network is in an authentication requestable state, To a second device included in the sensor network; If the second device is in an authentication responsive state, generating a second random number and computing a first result of the second random number and a first portion of the first random number by bitwise concatenating the second result with a second portion of the first random number Generating a second result value; Encrypting the second message with the shared key shared by the second device with the first device, and transmitting the encrypted second message to the first device; And the first device decrypts the encrypted second message to obtain a second portion of the first random number, compares a second portion of the obtained first random number with the generated first random number, And authenticating the user.

일 실시예에 있어서, 상기 제2 기기는 상기 제2 난수와 상기 제1 난수의 제1 부분을 배타적 논리합(eXclusive OR: XOR)으로 연산하여 상기 제1 결과값을 생성하는 것을 특징으로 한다.In one embodiment, the second device generates the first result value by performing an exclusive OR (XOR) operation on the first random number and the first random number.

이때, 상기 제1 난수의 제1 부분은 상기 제1 난수의 비트열을 2등분 하였을 때 후단 비트열이고, 상기 제1 난수의 제2 부분은 상기 제1 난수의 비트열을 2등분 하였을 때 전단 비트열이며, 상기 제2 결과값의 길이와 상기 제1 난수의 길이는 동일할 수 있다. The first part of the first random number is a trailing bit string when the bit string of the first random number is bisected, and the second part of the first random number is a bit string of the first random number when the bit string of the first random number is bisected. And the length of the second resultant value and the length of the first random number may be the same.

상술한 실시예에 있어서, 상기 제2 기기가 상기 제2 난수를 구성하는 비트들 중 추출대상이 되는 비트열의 시작위치를 나타내는 인덱스를 설정하는 단계를 더 포함하고, 상기 제2 메시지를 암호화하여 상기 제1 기기로 전송하는 단계에서, 상기 인덱스를 상기 제2 메시지에 추가로 포함시켜 암호화하는 것을 특징으로 한다.The method of claim 1, further comprising setting an index indicating a start position of a bit string to be extracted from bits constituting the second random number by the second device, And encrypting the index by further including the index in the second message in the step of transmitting to the first device.

상술한 실시예에 있어서, 상기 제1 기기가 상기 암호화된 제2 메시지를 복호화하여 상기 제1 결과값 및 상기 인덱스를 획득하는 단계; 상기 제1 기기가 상기 제1 기기에 의해 생성된 상기 제1 난수 및 상기 제1 기기에 의해 획득된 상기 제1 결과값을 이용하여 상기 제2 난수를 획득하는 단계; 상기 제1 기기가 상기 획득된 제2 난수 중 상기 인덱스에 해당하는 비트부터 시작되는 비트열을 추출하여 상기 제2 기기로 전송하는 단계; 및 상기 제2 기기가 상기 제1 기기로부터 전송된 상기 비트열을 상기 제2 기기가 생성한 제2 난수의 비트열 중 일부와 비교하여 상기 제1 기기를 인증하는 단계를 더 포함하는 것을 특징으로 한다.In the above-described embodiment, the first device decrypts the encrypted second message to obtain the first resultant value and the index. The first device obtaining the second random number using the first random number generated by the first device and the first result obtained by the first device; Extracting a bit string starting from a bit corresponding to the index among the obtained second random numbers and transmitting the extracted bit string to the second device; And authenticating the first device by comparing the bit string transmitted from the first device with a part of the bit string of the second random number generated by the second device by the second device. do.

일 실시예에 있어서, 상기 제1 메시지는, 메시지 처리 방식이 기록되는 제1 필드, 상기 제1 기기의 식별정보가 기록되는 제2 필드, 상기 제1 난수의 길이가 기록되는 제3 필드, 및 상기 제1 난수가 기록되는 제4 필드를 포함하는 것을 특징으로 한다.In one embodiment, the first message includes a first field in which a message processing method is recorded, a second field in which identification information of the first device is recorded, a third field in which the length of the first random number is recorded, And a fourth field in which the first random number is recorded.

이때, 제1 기기는, 상기 제2 기기의 상태 확인이 요구되면 상기 제1 필드에 000을 기록하여 상기 제1 메시지를 Hello메시지로 생성하고, 상기 제1 기기의 연산능력이 미리 설정된 제1 최대 임계치보다 크거나 인증 요청 프로세스보다 우선순위가 높은 프로세스가 실행 중이면 상기 제1 기기가 인증 요청 가능 상태가 아닌 것으로 판단하고 상기 제1 필드에 001을 기록하여 상기 제1 메시지를 Busy 메시지를 생성하며, 상기 Busy 메시지의 브로드캐스팅 이후에 상기 제1 기기의 연산능력이 미리 설정된 제1 최소 임계치보다 낮아지거나 실행대상 프로세스들 중 인증 요청 프로세스의 우선순위가 가장 높은 것으로 판단되면 상기 제1 필드에 010을 기록하여 상기 제1 메시지를 Idle 메시지로 생성하고, 상기 제1 기기가 인증 요청 가능 상태인 것으로 판단되면 상기 제1 필드에 011을 기록하여 상기 제1 메시지를 인증 요청(Auth_Request) 메시지로 생성하는 것을 특징으로 한다.If the state of the second device is requested, the first device writes 000 in the first field to generate the first message as a Hello message, and if the computation capability of the first device is greater than a predetermined first maximum If it is determined that the first device is not in the authentication request enabled state and a 001 is written in the first field, a Busy message is generated for the first message If it is determined that the computation capability of the first device is lower than a predetermined first minimum threshold after broadcasting of the Busy message or that the priority of the authentication request process among the execution target processes is the highest, And generates the first message as an Idle message. When it is determined that the first device is in an authentication request enabled state, In the record 011 is characterized in that generating the first message to the authentication request (Auth_Request) message.

일 실시예에 있어서, 제2 메시지는, 메시지 처리 방식이 기록되는 제1 필드, 상기 제2 기기의 식별정보가 기록되는 제2 필드, 상기 제1 난수의 제2 부분이 기록되는 제3 필드, 상기 제1 결과값이 기록되는 제4 필드, 및 상기 제2 난수를 구성하는 비트들 중 추출대상이 되는 비트열의 시작위치를 나타내는 인덱스가 기록되는 제5 필드를 포함하는 것을 특징으로 한다.In one embodiment, the second message includes a first field in which a message processing method is recorded, a second field in which identification information of the second device is recorded, a third field in which a second portion of the first random number is recorded, A fourth field in which the first result value is recorded and a fifth field in which an index indicating a start position of a bit string to be extracted from the bits constituting the second random number is recorded.

이때, 제2 기기는, 상기 제1 기기의 상태 확인이 요구되면 상기 제1 필드에 100을 기록하여 상기 제2 메시지를 Hello메시지로 생성하고, 상기 제2 기기의 연산능력이 미리 설정된 제2 최대 임계치보다 크거나 인증 응답 프로세스보다 우선순위가 높은 프로세스가 실행 중이면 상기 제2 기기가 인증 응답 가능 상태가 아닌 것으로 판단하고 상기 제1 필드에 101을 기록하여 상기 제2 메시지를 Busy 메시지를 생성하며, 상기 Busy 메시지의 브로드캐스팅 이후에 상기 제2 기기의 연산능력이 미리 설정된 제2 최소 임계치보다 낮아지거나 실행되어야 할 프로세서들 중 인증 응답 프로세스의 우선순위가 가장 높은 것으로 판단되면 상기 제1 필드에 110을 기록하여 상기 제2 메시지를 Idle 메시지로 생성하고, 상기 제2 기기가 인증 응답 가능 상태인 것으로 판단되면 상기 제1 필드에 111을 기록하여 상기 제2 메시지를 인증 응답(Auth_Response) 메시지로 생성하는 것을 특징으로 한다.In this case, if the status of the first device is requested, the second device records 100 in the first field to generate the second message as a Hello message, and if the computation capability of the second device is the second maximum If it is determined that the second device is not in the authentication-responsive state and a process of having a priority higher than the threshold value or higher than the authentication response process is being executed, the second device writes 101 in the first field to generate a Busy message If it is determined that the computation capability of the second device is lower than a predetermined second minimum threshold after broadcasting of the Busy message or that the priority of the authentication response process among the processors to be executed is the highest, And generates the second message as an Idle message. If it is determined that the second device is in the authentication response enabled state, 1 field 111 to generate the second message as an authentication response message (Auth_Response).

상술한 실시예에 있어서, 상기 제1 기기는 센서이고, 상기 제2 기기는 상기 센서를 인터넷 서비스 제공을 위한 서버 또는 클라이언트에 연결시키는 모바일 게이트웨이이거나, 상기 제1 기기는 모바일 게이트웨이이고, 상기 제2 기기는 센서일 수 있다.In the above-described embodiment, the first device is a sensor and the second device is a mobile gateway connecting the sensor to a server or client for providing Internet service, or the first device is a mobile gateway, The device may be a sensor.

한편, 상기 사물간 통신 네트워크는 LLN(Low-Power, Lossy Network) 영역 및 인터넷 영역으로 구분되고, 상기 제1 기기와 상기 제2 기기는 상기 LLN 영역 내에서 단일홉(Hop)으로 연결되어 있는 것을 특징으로 한다.Meanwhile, the inter-object communication network is divided into an LLN (Low-Power, Lossy Network) area and an Internet area, and the first device and the second device are connected in a single hop in the LLN area .

본 발명에 따르면, 상호 인증을 위해 인증 요청 메시지 또는 인증 응답 메시지를 송수신하는 제1 기기 및 제2 기기 중 어느 하나만이 암호화 연산을 수행하면 되므로, 제1 기기 및 제2 기기 모두가 암호화 연산을 수행해야 하는 경우에 비해 컴퓨팅 자원의 소모를 최소화할 수 있다는 효과가 있다.According to the present invention, since only one of the first device and the second device transmitting and receiving the authentication request message or the authentication response message performs mutual authentication, the first device and the second device both perform the encryption operation It is possible to minimize the consumption of computing resources.

또한, 본 발명에 따르면 상호 인증을 위해 송수신되는 메시지의 길이를 최소화함으로써 센서 또는 스마트 기기와 같이 배터리를 사용하는 송수신장치의 송수신 전력 자원 및 무선 대역 등과 같은 자원 소모의 최소화를 극대화 시킬 수 있다는 효과가 있다.In addition, according to the present invention, it is possible to maximize the minimization of resource consumption such as transmission / reception power resources and wireless bandwidth of a transceiver using a battery, such as a sensor or a smart device, by minimizing the length of a message transmitted / have.

또한, 본 발명은 제1 기기가 제2 기기로부터 전송받은 제2 난수 중 일부만을 제2 기기로 전송하도록 함으로써 공격자가 제2 난수를 예측하더라도 인증을 위해 실제 전송되어야 하는 비트열을 알지 못하도록 할 수 있어 공격자로부터의 예측 공격에 효율적으로 대응할 수 있다는 효과가 있다. In addition, according to the present invention, the first device transmits only a part of the second random number received from the second device to the second device, so that even if the attacker predicts the second random number, it can not know the bit string to be actually transmitted for authentication So that it is possible to efficiently cope with a predictive attack from an attacker.

또한, 본 발명에 따르면 인증을 위한 기기의 연산능력이 미리 설정된 최대 임계값 이상이면 Busy 메시지를 생성하여 브로드캐스팅하고, Busy 메시지의 브로드캐스팅 이후에 기기의 연산능력이 최소 임계값 이하가 되면 Busy 상태의 종료를 알리는 Idle 메시지를 브로드캐스팅하기 때문에 무작위적 인증 요청 메시지로 인한 기기들의 자원 고갈을 방지함으로써 Dos공격에 대해 효율적으로 대응할 수 있다는 효과가 있다. According to the present invention, if the computation capability of the device for authentication is greater than or equal to a predetermined maximum threshold value, a Busy message is generated and broadcast. If the computation capability of the device is below a minimum threshold value after broadcasting of the Busy message, It is possible to efficiently cope with the DoS attack by preventing the depletion of the resources of the devices due to the random authentication request message.

도 1은 본 발명의 일 실시예에 따른 센서 네트워크의 구성을 개략적으로 보여주는 도면.
도 2는 본 발명의 제1 실시예에 따른 센서 네트워크의 기기 인증 방법을 보여주는 플로우차트.
도 3은 제1 메시지의 구조를 개략적으로 보여주는 도면.
도 4는 제2 메시지의 구조를 개략적으로 보여주는 도면.
도 5는 본 발명의 제2 실시예에 따른 센서 네트워크의 기기 인증 방법 중 인증 개시자에 의해 수행되는 방법을 보여주는 플로우차트.
도 6은 본 발명의 제2 실시예에 따른 센서 네트워크의 기기 인증 방법 중 응답자에 의해 수행되는 방법을 보여주는 플로우차트.
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a schematic view showing a configuration of a sensor network according to an embodiment of the present invention; FIG.
2 is a flowchart illustrating a method of authenticating a device in a sensor network according to a first embodiment of the present invention.
3 schematically shows the structure of a first message;
Figure 4 schematically shows the structure of a second message;
FIG. 5 is a flowchart illustrating a method performed by an authentication initiator of a device authentication method of a sensor network according to a second embodiment of the present invention; FIG.
FIG. 6 is a flowchart illustrating a method performed by a responder in a device authentication method of a sensor network according to a second embodiment of the present invention; FIG.

본 명세서에서 각 도면의 구성요소들에 참조번호를 부가함에 있어서 동일한 구성 요소들에 한해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 번호를 가지도록 하고 있음에 유의하여야 한다. It should be noted that, in the specification of the present invention, the same reference numerals as in the drawings denote the same elements, but they are numbered as much as possible even if they are shown in different drawings.

한편, 본 명세서에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다. Meanwhile, the meaning of the terms described in the present specification should be understood as follows.

단수의 표현은 문맥상 명백하게 다르게 정의하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다.The word " first, "" second," and the like, used to distinguish one element from another, are to be understood to include plural representations unless the context clearly dictates otherwise. The scope of the right should not be limited by these terms.

"포함하다" 또는 "가지다" 등의 용어는 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.It should be understood that the terms "comprises" or "having" does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

"적어도 하나"의 용어는 하나 이상의 관련 항목으로부터 제시 가능한 모든 조합을 포함하는 것으로 이해되어야 한다. 예를 들어, "제1 항목, 제2 항목 및 제 3 항목 중에서 적어도 하나"의 의미는 제1 항목, 제2 항목, 또는 제3 항목 각각 뿐만 아니라 제1 항목, 제2 항목, 및 제3 항목 중에서 2개 이상으로부터 제시될 수 있는 모든 항목의 조합을 의미한다.
It should be understood that the term "at least one" includes all possible combinations from one or more related items. For example, the meaning of "at least one of the first item, the second item and the third item" means not only the first item, the second item, or the third item, but also the first item, the second item, Means a combination of all items that can be presented from two or more of them.

먼저, 본 발명의 실시예들에 대해 구체적으로 설명하기에 앞서 본 발명이 적용되는 사물간 통신 네트워크의 구성에 대해 간략히 설명한다.First, before explaining embodiments of the present invention in detail, the structure of an inter-object communication network to which the present invention is applied will be briefly described.

ETSI(European Telecommunications Standards Institute)는 객체들간의 통신과 관련하여 M2M(Machine to Machine)을 키워드로 표준화 작업을 진행하고 있고, ITU-T(International Telecommunications Union Telecommunication)의 경우 IoT(Internet of Things)혹은 MOC(Machine Oriented Communication)라는 용어를 사용하고 있으나 대부분 M2M과 유사한 개념을 적용하고 있다.The European Telecommunications Standards Institute (ETSI) is working on the standardization of M2M (Machine to Machine) related to communication between objects. In the case of International Telecommunications Union Telecommunication (ITU-T), IoT (Internet of Things) (Machine Oriented Communication), but most of them use a concept similar to M2M.

IoT란 무선 통신이 가능한 각각의 사물들이 연결되어 지능화 통신을 하는 것을 의미한다. IoT는 각종 센서와 모바일 디바이스 등 이기종(Heterogeneous) 간 상호 접속 네트워크라는 특징을 가진다. 이러한 특징으로 인해 제조사별 기기마다 다양한 사설표준이 만들어지고 구현되어 이기종의 디바이스 간 원활한 상호운영에 어려움이 있다. 따라서 진정한 IoT 개념을 구현하기 위해서는 제조사나 기기 특성에 구애받지 않는 단일화된 표준 플랫폼이 필요하다.IoT means that each object capable of wireless communication is connected and intelligent communication is performed. IoT is characterized by heterogeneous interconnection networks such as various sensors and mobile devices. Due to these features, various private standards are created and implemented for each manufacturer, making it difficult to smoothly interoperate between different types of devices. Therefore, realizing a true IoT concept requires a unified standard platform that is independent of manufacturer or device characteristics.

이러한 문제를 해결하고자 모든 사물을 Web으로 통합하는 WoT(Web of Things)라는 개념이 제안된 바 있다. IETF(Internet Engineering Task force) CoRE(Constrained RESTful Environment) 워킹그룹에서는 WoT 환경에서 메시지 전송의 표준화 방안으로 CoAP(Constrained Application Protocol)라고 불리는 경량화된 웹 프로토콜의 표준화를 진행하고 있다. CoAP는 센서와 같은 제약이 많은 환경에서 웹 서비스를 제공하기 위한 프로토콜로 HTTP와 같이 REST(Representational State Transfer)형식을 기반으로 한다.To solve these problems, the concept of Web of Things (WoT), which integrates all objects into the Web, has been proposed. Internet Engineering Task Force (IETF) The Constrained RESTful Environment (CoR) Working Group is working on the standardization of lightweight web protocol called CoAP (Constrained Application Protocol) as a standardization method of message transmission in WoT environment. CoAP is a protocol for providing web services in a constrained environment such as sensor, and it is based on Representational State Transfer (REST) format like HTTP.

도 1은 이러한 WoT 환경의 센서 네트워크의 구성을 개략적으로 보여주는 도면이다.FIG. 1 is a diagram schematically showing a configuration of a sensor network in the WoT environment.

도 1에 도시된 바와 같이, WoT 환경의 센서 네트워크(100)는 크게 LLN(Low-power, Lossy Network)영역(110)과 인터넷(Internet)영역(120)으로 구분되고, CoAP을 지원하는 센서(130), CoAP을 지원하지 않는 레거시 디바이스(140), 모바일 게이트웨이(150), 인터넷 환경의 서버(160), 및 클라이언트(170)를 포함한다. WoT 환경에서 센서(130, 140)들은 기존 센서 네트워크에 포함된 센서들과는 달리 정보를 요청받고 제공하는 역할은 물론, 정보를 요청할 수 있다.1, the sensor network 100 in the WoT environment is divided into a low-power (LLN) region 110 and an internet region 120, and a sensor 130, a legacy device 140 that does not support CoAP, a mobile gateway 150, a server 160 in the Internet environment, and a client 170. In the WoT environment, the sensors 130 and 140 may request information as well as request and provide information, unlike the sensors included in the existing sensor network.

이때, 각 센서들(130, 140)은 모바일 게이트웨이(150)와 단일홉(Hop)으로 연결되어 있다.At this time, the sensors 130 and 140 are connected to the mobile gateway 150 through a single hop.

CoAP 표준에서는 이러한 WoT 환경의 센서 네트워크에서 종단 간 보안을 제공하기 위한 한 방안으로 PSK(Pre-Shared Key)를 이용한 DTLS(Datagram Transport Layer Security) 프로토콜을 제안한 바 있지만, DTLS 프로토콜을 이용한 인증, 세션키 분배과정은 많은 핸드쉐이킹 메시지로 LLN 영역(110)에 적용하기에는 적합하지 않다. In the CoAP standard, a Datagram Transport Layer Security (DTLS) protocol using PSK (Pre-Shared Key) has been proposed as a method for providing end-to-end security in a sensor network in the WoT environment. However, authentication using the DTLS protocol, The distribution process is not suitable for application to the LLN area 110 with many handshaking messages.

따라서 본 발명은 도 1에 도시된 WoT 환경의 센서 네트워크에서 LLN 영역(110)과 Internet 영역(120)을 구분하여 센서 네트워크 중 LLN 영역(110)에서 센서(130, 140)와 모바일 게이트웨이(170) 간의 상호 인증 방안을 제안한다. 제안한 장치 간 상호 인증방안은 세션키를 공유할 수 있으며 3way 통신으로 전송량을 감소시켜 LLN 환경에 보다 실용적으로 사용되어 질 수 있다. 이러한 본 발명에 따를 때, 인터넷 영역(120)에의 인증은 모바일 게이트웨이(150)를 통해 HTTP/TLS 혹은 CoAP/DTLS로 동작하게 된다.
1, the LLN region 110 and the Internet region 120 are separated from each other and the sensors 130 and 140 and the mobile gateway 170 are separated from each other in the LLN region 110 of the sensor network, We propose a mutual authentication method between The proposed mutual authentication scheme can share the session key and can be used more practically in the LLN environment by reducing the amount of transmission by 3 - way communication. According to the present invention, the authentication to the Internet domain 120 operates with HTTP / TLS or CoAP / DTLS through the mobile gateway 150.

이하, 첨부되는 도면을 참고하여 본 발명의 실시예들에 대해 상세히 설명한다.
Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

제1 실시예First Embodiment

도 2는 본 발명의 제1 실시예에 따른 사물간 통신 네트워크의 개체 인증 방법을 보여주는 플로우차트이다.FIG. 2 is a flowchart illustrating an entity authentication method of an inter-object communication network according to a first embodiment of the present invention.

도 2에서, 제1 기기는 도 1에 도시된 센서(130, 140)이고, 제2 기기는 도 1에 도시된 모바일 게이트웨이(170)일 수 있다. 이때, 제1 기기는 이동성을 갖는 무선센서일 수 있다. 다른 실시예에 있어서, 제1 기기는 도 1에 도시된 모바일 게이트웨이(170)이고, 제2 기기는 도 1에 도시된 센서(130, 140)일 수도 있다.In Fig. 2, the first device may be the sensor 130, 140 shown in Fig. 1 and the second device may be the mobile gateway 170 shown in Fig. At this time, the first device may be a wireless sensor having mobility. In another embodiment, the first device may be the mobile gateway 170 shown in FIG. 1 and the second device may be the sensors 130 and 140 shown in FIG.

이하의 설명에서는 편의를 위해 제1 기기가 인증 절차를 개시하는 인증 개시자(Authentication Initiator)역할을 수행하고, 제2 기기가 인증 개시 절차에 응답하는 응답자(Responder)역할을 수행하는 것으로 가정하여 설명하지만, 제1 기기 및 제2 기기는 서로 역할을 변경하여 수행할 수도 있을 것이다. In the following description, it is assumed that the first device serves as an authentication initiator for initiating the authentication procedure and the second device serves as a responder for responding to the authentication initiation procedure. However, the first device and the second device may be performed by mutually changing their roles.

도 2에 도시된 바와 같이, 제1 기기가 인증 절차에 이용될 제1 난수를 포함하는 제1 메시지를 생성한다(S200). 일 실시예에 있어서, 제1 기기는 제1 메시지 생성시 제1 난수 이외에도, 제1 메시지의 메소드 타입에 대한 정보 및 제1 기기의 식별정보를 추가로 포함시켜 제1 메시지를 생성할 수 있다.As shown in FIG. 2, the first device generates a first message including a first random number to be used in the authentication procedure (S200). In one embodiment, the first device may generate the first message by further including information on the method type of the first message and identification information of the first device, in addition to the first random number when generating the first message.

이하, 이러한 제1 메시지의 구성을 도 3을 참조하여 보다 구체적으로 설명한다.Hereinafter, the structure of the first message will be described in more detail with reference to FIG.

도 3은 제1 메시지의 구성을 개략적으로 보여주는 도면이다. 도 3에 도시된 바와 같이, 제1 메시지(300)는 4개의 필드(310, 320, 330, 340)로 구성된다.3 is a view schematically showing the configuration of the first message. As shown in FIG. 3, the first message 300 includes four fields 310, 320, 330, and 340.

먼저, 제1 필드(310)는 메시지 처리 방식인 메소드(Method) 타입이 기록된다. 일 실시예에 있어서, 메소드 타입이 기록되는 제1 필드(310)는 3비트로 구성된다. 이때, 첫 번째 비트는 인증 요청자와 응답자를 구분하기 위해 사용된다. 인증 요청자인 경우 첫 번째 비트가 0으로 설정된다.First, the first field 310 records a method type, which is a message processing method. In one embodiment, the first field 310 in which the method type is written consists of 3 bits. At this time, the first bit is used to distinguish the authentication requestor and the responder. If it is an authentication requestor, the first bit is set to zero.

구체적으로, 제1 기기가 가 제2 기기의 상태를 확인하기 위해 Hello 메시지를 제1 메시지로 생성하고자 하는 경우, 제1 기기는 제1 필드(310)의 비트값을 "000"으로 설정한다.Specifically, when the first device attempts to generate a Hello message as a first message to check the status of the second device, the first device sets the bit value of the first field 310 to "000".

또한, 제1 기기가 인증을 요청할 수 있는 상태인 경우 제1 기기는 제1 필드(310)의 비트값을 "011"로 설정함으로써 제1 메시지를 인증 요청(Auth-Request)메시지로 생성한다. 일 실시예에 있어서, 제1 기기는 제1 기기의 현재 연산능력(C1)이 미리 설정된 제1 최대 임계치(MAX_T1)보다 크지 않거나 인증 요청 프로세스(A_P)의 우선순위가 현재 실행중인 프로세스들 중 가장 높은 우선순위를 갖는 프로세스(C_P)의 우선순위 보다 높은 경우 인증 요청 가능 상태인 것으로 판단하여, 제1 필드(3100)의 비트값을 "011"로 설정하여 제1 메시지를 인증 요청 메시지로 생성한다.Also, when the first device can request authentication, the first device generates the first message as an authentication request message by setting the bit value of the first field 310 to "011 ". In one embodiment, the first device may be configured such that the current computing capability C1 of the first device is not greater than a preset first maximum threshold MAX_T1, or that the priority of the authentication request process A_P is the most If it is higher than the priority of the process C_P having a high priority, it is determined that the authentication request is possible and the first message 3100 is set as the bit value of the first field 3100 to generate the first message as an authentication request message .

이때, 제1 최대 임계치(MAX_T1)는 제1 기기의 연산능력의 80%로 설정될 수 있다.At this time, the first maximum threshold MAX_T1 may be set to 80% of the computing capability of the first device.

제2 필드(320)에는 제1 기기를 식별하기 위한 식별정보가 기록된다. 일 실시예에 있어서, 이러한 제2 필드(320)는 5비트로 구성된다. 다른 실시예에 있어서, 제2 필드(320)는 8의 배수에서 제1 필드(310)에 할당된 비트수를 감산한 비트로 구성될 수 있다. 이는 구현에서 바이트(Byte)단위 연산을 수행하기 위한 것으로서, 제1 필드(310)와 제2 필드(320)의 비트수의 합이 8의 배수가 되도록 구현하기 위한 것이다.In the second field 320, identification information for identifying the first device is recorded. In one embodiment, this second field 320 consists of 5 bits. In another embodiment, the second field 320 may comprise bits obtained by subtracting the number of bits assigned to the first field 310 from a multiple of eight. This is for implementing a byte unit operation in the implementation, and is for realizing that the sum of the number of bits of the first field 310 and the second field 320 is a multiple of 8.

다음으로, 제3 필드(330)에는 제1 기기에 의해 생성된 제1 난수의 길이가 기록된다. 일 실시예에 있어서, 제3 필드(330)는 1바이트(8비트)로 구성된다. 이는 제1 난수는 필요에 따라 가변적으로 결정되는 것이므로 사용되는 난수의 길이를 바이트 단위로 구분하여 제2 기기에게 전달해 주어야 하기 때문이다. 이러한 실시예에 따르는 경우 제3 필드(330)는 1바이트로 구성되므로 0~255 사이의 숫자가 기록된다.Next, in the third field 330, the length of the first random number generated by the first device is recorded. In one embodiment, the third field 330 consists of one byte (8 bits). This is because the first random number is variably determined as needed, and therefore, the length of the random number used must be divided into bytes and transmitted to the second device. According to this embodiment, since the third field 330 is composed of one byte, a number between 0 and 255 is recorded.

일 실시예에 있어서, 제1 난수가 제1 난수의 길이와 숫자 1을 합산한 값으로 구성되는 경우 제3 필드(330)에 "0"이 기록되면 이는 1바이트의 난수 길이를 나타내게 되고, 제3 필드(330)에 "1"이 기록되면 이는 2바이트의 난수 길이를 나타내게 된다. 따라서, 본 발명은 1바이트에서 256바이트의 길이를 갖는 제1 난수를 갖게 된다.In one embodiment, when the first random number is composed of the sum of the length of the first random number and the number 1, if "0" is recorded in the third field 330, it indicates a random number length of 1 byte, When "1" is recorded in the third field 330, it indicates a random number length of 2 bytes. Therefore, the present invention has a first random number having a length of 256 bytes from 1 byte.

다음으로, 제4 필드(340)에는 제1 기기에 의해 생성된 제1 난수가 기록된다. 일 실시예에 있어서, 제4 필드(340)에 기록되는 제1 난수는 매 인증 절차시 마다 한번 사용되는 값으로서 AES 128비트와 동일한 보안성을 갖도록 최소 256비트에서 최대 2048비트의 길이를 갖도록 생성될 수 있다.Next, in the fourth field 340, the first random number generated by the first device is recorded. In one embodiment, the first random number to be written in the fourth field 340 is generated to have a length of at least 256 bits and a maximum of 2048 bits so as to have the same security as AES 128 bits, .

제1 기기는 도 3에 도시된 각 필드들의 비트들을 연접(Concatenation)하여 제1 메시지를 구성할 수 있다.The first device may construct a first message by concatenating the bits of each field shown in FIG.

제1 기기에 의해 제2 기기로 전송될 제1 메시지를 도식화하여 표현하면 아래의 수학식 1과 같이 표기될 수 있다.The first message to be transmitted to the second device by the first device may be expressed as shown in Equation 1 below.

Figure 112013046094146-pat00001
Figure 112013046094146-pat00001

수학식 1에서 Auth_Request는 메소드 타입에서 제1 메시지가 인증 요청 메시지라는 것을 나타내고, ∥는 비트연접 연산자를 나타내며, I_ID는 제1 기기의 식별정보를 나타내고, r1은 제1 난수를 나타낸다. In Equation (1), Auth_Request indicates that the first message is an authentication request message in a method type, ∥ indicates a bit concatenation operator, I_ID indicates identification information of the first device, and r1 indicates a first random number.

다시 도 2를 참조하면, 제1 기기는 제1 메시지를 제2 기기로 전송한다(S210).Referring back to FIG. 2, the first device transmits the first message to the second device (S210).

다음으로, 제2 기기가 인증 절차에 이용될 제2 난수를 생성하고(S220), 제2 난수와 제1 난수의 제1 부분을 연산하여 제1 결과값을 생성한다(S230). 여기서, 제1 난수의 제1 부분이란 제1 난수를 구성하는 비트열을 2등분하였을 때, 후단에 해당하는 비트열을 의미한다.Next, the second device generates a second random number to be used for the authentication procedure (S220), and calculates a first result of the second random number and the first random number to generate a first result (S230). Here, the first part of the first random number means a bit string corresponding to the succeeding bit when the bit string constituting the first random number is bisected.

일 실시예에 있어서, 제2 기기는 제2 난수와 제1 난수의 제1 부분을 배타적 논리합(eXclusive OR: XOR)으로 연산하여 제1 결과값을 생성할 수 있다. 이러한 실시예에 따르는 경우, 제1 기기에 의해 생성된 제1 난수의 길이가 a이면 제2 기기는 a/2의 길이를 갖는 제2 난수를 생성하게 되고, 따라서 제1 결과값 또한 a/2의 길이를 갖게 된다. 예컨대, 제1 난수의 길이가 256비트이면 제2 난수의 길이 및 제1 결과값의 길이는 128비트가 된다.In one embodiment, the second device may generate a first result by performing an exclusive OR (XOR) of the second random number with the first portion of the first random number. According to this embodiment, if the length of the first random number generated by the first device is a, the second device generates a second random number having a length of a / 2, and therefore the first result is also a / 2 . For example, if the length of the first random number is 256 bits, the length of the second random number and the length of the first resultant value are 128 bits.

다음으로, 제2 기기는 제1 난수의 제2 부분에 제1 결과값을 비트 연접(Concatenation)함으로써 제2 결과값을 생성한다(S240). 여기서, 제1 난수의 제2 부분이란 제1 난수를 구성하는 비트열을 2등분하였을 때, 전단에 해당하는 비트열을 의미한다. 이에 따라 제2 결과값은 제1 난수와 동일한 a의 길이를 갖게 된다. 예컨대, 제1 난수의 길이가 256비트이면 제2 결과값의 길이 또한 256비트가 된다.Next, the second device generates a second result value by bit-concatenating the first result value to the second portion of the first random number (S240). Here, the second part of the first random number means a bit string corresponding to the preceding bit when the bit string constituting the first random number is bisected. Accordingly, the second resultant value has a length equal to the first random number a. For example, if the length of the first random number is 256 bits, the length of the second result value is also 256 bits.

본 발명은 상술한 바와 같이, 제1 기기에 의해 생성되어 전송되는 제1 난수와 제2 기기에 의해 생성되는 제2 난수가 동일한 길이를 갖게 되므로, 인증 절차 수행 동안 송수신되는 메시지의 길이가 제2 난수의 추가로 인해 증가되지 않으므로 컴퓨팅 자원의 소모를 최소화할 수 있게 된다.As described above, since the first random number generated and transmitted by the first device and the second random number generated by the second device have the same length, the length of the message transmitted and received during the authentication procedure is the second It is not increased due to the addition of random numbers, so that consumption of computing resources can be minimized.

다음으로, 제2 기기는 제2 난수를 구성하는 비트들 중 추출대상이 되는 비트열의 시작위치를 나타내는 인덱스를 설정하고(S245), 제2 결과값과 인덱스를 포함하는 제2 메시지를 생성한다(S250). 이때, 제2 결과값과 인덱스는 비트연접되어 제2 메시지에 포함될 수 있다.Next, the second device sets an index indicating the start position of the bit stream to be extracted from the bits constituting the second random number (S245), and generates a second message including the second result value and the index S250). At this time, the second resultant value and the index may be bit-concatenated and included in the second message.

일 실시예에 있어서, 제2 기기는 제2 메시지 생성시 제2 결과값 및 인덱스 이외에도, 제2 메시지의 메소드 타입에 대한 정보 및 제2 기기의 식별정보를 추가로 포함시켜 제2 메시지를 생성할 수 있다.In one embodiment, the second device may further include information on the method type of the second message and identification information of the second device, in addition to the second resultant value and the index, to generate the second message .

이하, 이러한 제2 메시지의 구성을 도 4를 참조하여 보다 구체적으로 설명한다.Hereinafter, the structure of the second message will be described in more detail with reference to FIG.

도 4는 제2 메시지의 구성을 개략적으로 보여주는 도면이다. 도 4에 도시된 바와 같이, 제2 메시지(400)는 5개의 필드(410, 420, 430, 440, 450)로 구성된다.4 is a diagram schematically showing a configuration of a second message. As shown in FIG. 4, the second message 400 includes five fields 410, 420, 430, 440 and 450.

먼저, 제1 필드(410)는 메시지 처리 방식인 메소드(Method) 타입이 기록된다. 일 실시예에 있어서, 메소드 타입이 기록되는 제1 필드(410)는 3비트로 구성된다. 이때, 첫 번째 비트는 인증 요청자와 응답자를 구분하기 위해 사용된다. 응답자인 경우 첫 번째 비트가 1로 설정된다.First, the first field 410 records a method type, which is a message processing method. In one embodiment, the first field 410 in which the method type is written consists of 3 bits. At this time, the first bit is used to distinguish the authentication requestor and the responder. If it is a respondent, the first bit is set to 1.

구체적으로, 제2 기기가 제1 기기의 상태를 확인하기 위해 Hello 메시지를 제2 메시지로 생성하고자 하는 경우, 제2 기기는 제1 필드(410)의 비트값을 "100"으로 설정한다.Specifically, if the second device wants to generate a Hello message as a second message to check the status of the first device, the second device sets the bit value of the first field 410 to "100".

또한, 제2 기기가 인증 요청에 응답할 수 있는 상태인 경우 제2 기기는 제1 필드(410)의 비트값을 "111"로 설정함으로써 제2 메시지를 인증 응답(Auth-Response)메시지로 생성한다. 일 실시예에 있어서, 제2 기기는 제2 기기의 현재 연산능력(C2)이 미리 설정된 제2 최대 임계치(MAX_T2)보다 크지 않거나 인증 응답 프로세스(A_P)의 우선순위가 현재 실행중인 프로세스들 중 가장 높은 우선순위를 갖는 프로세스(C_P)의 우선순위보다 높은 경우 인증 응답 가능 상태인 것으로 판단하여, 제1 필드(410)의 비트값을 "111"로 설정하여 제2 메시지를 인증 응답 메시지로 생성한다.If the second device is in a state capable of responding to the authentication request, the second device generates the second message as an Auth-Response message by setting the bit value of the first field 410 to "111" do. In one embodiment, the second device may be configured such that the current computing capability C2 of the second device is not greater than the preset second maximum threshold MAX_T2, or that the priority of the authentication response process A_P is the most If it is higher than the priority of the process C_P having a higher priority, it is determined that the authentication response is possible and the second message is generated as an authentication response message by setting the bit value of the first field 410 to "111" .

이때, 제2 최대 임계치(MAX_T2)는 제2 기기의 연산능력의 80%로 설정될 수 있다.At this time, the second maximum threshold MAX_T2 may be set to 80% of the computing capability of the second device.

제2 필드(420)에는 제2 기기를 식별하기 위한 식별정보가 기록된다. 일 실시예에 있어서, 이러한 제2 필드(420)는 5비트로 구성된다. 다른 실시예에 있어서, 제2 필드(420)는 8의 배수에서 제1 필드(410)에 할당된 비트수를 감산한 비트로 구성될 수 있다. 이는 구현에서 바이트(Byte)단위 연산을 수행하기 위한 것으로서, 제1 필드(410)와 제2 필드(420)의 비트수의 합이 8의 배수가 되도록 구현하기 위한 것이다.In the second field 420, identification information for identifying the second device is recorded. In one embodiment, this second field 420 consists of 5 bits. In another embodiment, the second field 420 may be composed of bits obtained by subtracting the number of bits assigned to the first field 410 from a multiple of eight. This is for implementing a byte unit operation in the implementation, and is for realizing that the sum of the number of bits of the first field 410 and the second field 420 is a multiple of 8.

다음으로, 제3 필드(430)에는 제1 난수의 제2 부분이 기록된다. 일 실시예에 있어서, 제1 난수의 제2 부분은 제1 난수의 비트열을 2등분한 것이기 때문에 제1 난수가 256비트로 구성되면 제3 필드(430)는 128비트로 구성될 수 있다.Next, the second field of the first random number is recorded in the third field 430. In one embodiment, since the second part of the first random number is a bisection of the bit string of the first random number, if the first random number is composed of 256 bits, the third field 430 may be composed of 128 bits.

다음으로, 제4 필드(440)에는 제1 결과값이 기록된다. 일 실시예에 있어서, 제1 난수의 길이가 256비트이면 제1 난수의 제1 부분과 제2 난수는 모두 128비트로 구성되고, 따라서 제1 난수의 제1 부분과 제2 난수를 배타적 논리합으로 연산한 결과인 제1 결과값이 기록되는 제4 필드(440)는 128비트로 구성된다.Next, in the fourth field 440, the first result value is recorded. In one embodiment, if the length of the first random number is 256 bits, the first part of the first random number and the second random number are both 128 bits, so that the first part of the first random number and the second random number are OR'ed The fourth field 440 in which the first resultant value is recorded is composed of 128 bits.

다음으로, 제5 필드(450)에는 인덱스가 기록된다. 일 실시예에 있어서, 인덱스가 기록되는 제5 필드(450)는 8비트로 구성될 수 있다. 이때, 제5 필드(450)의 첫 번째 비트는 사용하지 않고 실제 7 비트를 사용하지만, 1바이트 단위로 맞추기 위해 제5 필드(450)를 8비트로 구성하는 것이 바람직하다.Next, an index is recorded in the fifth field 450. In one embodiment, the fifth field 450 where the index is recorded may be composed of 8 bits. At this time, although the first bit of the fifth field 450 is not used but the actual 7 bits are used, it is preferable to configure the fifth field 450 to 8 bits in order to fit in one byte unit.

이와 같이, 제2 기기는 도 4에 도시된 각 필드들의 비트들을 연접(Concatenation)하여 제4 메시지를 구성할 수 있다.In this way, the second device can construct a fourth message by concatenating the bits of the fields shown in FIG.

제2 기기에 의해 제1 기기로 전송될 암호화된 제2 메시지를 도식화하여 표현하면 아래의 수학식 2와 같이 표기될 수 있다.The encrypted second message to be transmitted to the first device by the second device can be expressed as shown in Equation (2) below.

Figure 112013046094146-pat00002
Figure 112013046094146-pat00002

수학식 1에서 E_kIR은 제1 기기와 제2 기기가 서로 공유하고 있는 비밀키를 나타내고, Auth_Response는 메소드 타입에서 제2 메시지가 인증 응답 메시지라는 것을 나타내며, ∥는 비트연접 연산자를 나타내고, R_ID는 제2 기기의 식별정보를 나타내며, r1_F는 제1 난수의 제2 부분을 나타내고, r1_L은 제1 난수의 제1 부분을 나타내며, xor은 배타적 논리합 연산자를 나타내며, r2는 제2 난수를 나타내고, index_r2는 제2 기기에 의해 결정되는 인덱스를 나타낸다. In Equation 1, E_kIR denotes a secret key shared by the first device and the second device, Auth_Response indicates that the second message is an authentication response message in the method type, ∥ indicates a bit concatenation operator, R1_F represents the second part of the first random number, r1_L represents the first part of the first random number, xor represents the exclusive-OR operator, r2 represents the second random number, index_r2 represents the second random number, Indicates an index determined by the second device.

다시 도 2를 참조하면, 제2 기기는 제2 메시지를 제2 기기와 제1 기기가 서로 공유하고 있는 공유키를 이용하여 암호화한 후(S260), 암호화된 제2 메시지를 제1 기기로 전송한다(S270).Referring again to FIG. 2, the second device encrypts the second message using the shared key shared between the second device and the first device (S260), and transmits the encrypted second message to the first device (S270).

다음으로, 제1 기기는 제2 기기로부터 수신된 암호화된 제2 메시지를 복호화하고(S280), 복호화 결과 획득된 제2 메시지로부터 제1 난수의 제2 부분을 추출하여 S200에서 생성된 제1 난수와 비교함으로써 제2 기기를 인증한다(S290).Next, the first device decrypts the encrypted second message received from the second device (S280), extracts the second portion of the first random number from the second message obtained as a result of the decryption, and outputs the first random number To authenticate the second device (S290).

구체적으로, 제1 기기는 암호화된 제2 메시지를 복호화하여 제2 메시지를 획득하고, 획득한 제2 메시지로부터 제1 난수의 제2 부분을 추출한다. 이후, 추출한 제1 난수의 제2 부분을 S200에서 생성된 제1 난수의 비트열을 2등분 하였을 때의 전단과 비교하여 그 값이 동일하면 제2 기기를 정당한 기기로 인증하고, 동일하지 않으면 인증이 실패한 것으로 판단한다.Specifically, the first device decrypts the encrypted second message to obtain a second message, and extracts a second portion of the first random number from the acquired second message. Then, the second part of the extracted first random number is compared with the front end when the bit string of the first random number generated in step S200 is divided into two, and if the values are the same, the second device is authenticated by a legitimate device, It is judged to be failed.

한편, 제2 기기가 정당한 기기로 인증되면 제1 기기는 S280에서 복호화 결과 획득한 제2 메시지로부터 제1 결과값 및 인덱스를 추출한다(S300). 이후, 제1 기기는 S200에서 생성된 제1 난수의 비트열을 2등분 하였을 때의 후단과 제1 결과값을 연산하여 제2 난수를 도출한다(S310). 일 실시예에 있어서, 제1 기기는 제1 결과값과 S200에서 생성된 제1 난수의 후단을 배타적 논리합(eXclusive OR: XOR)으로 연산함으로써 제2 난수를 도출할 수 있다.On the other hand, if the second device is authenticated as a legitimate device, the first device extracts the first resultant value and the index from the second message obtained as the decoding result in step S280 (S300). Thereafter, the first device calculates the second random number by calculating the first result and the last stage when the bit stream of the first random number generated in S200 is bisected (S310). In one embodiment, the first device may derive a second random number by calculating an eXclusive OR (XOR) of the first resultant value and the tail end of the first random number generated in S200.

다음으로, 제1 기기는 도출된 제2 난수 중 인덱스에 해당하는 비트부터 시작되는 제1 비트열을 추출하고(S320), 추출된 제1 비트열을 제2 기기로 전송한다(S330).Next, the first device extracts a first bit stream starting from a bit corresponding to the index of the derived second random number (S320), and transmits the extracted first bit stream to the second device (S330).

다음으로, 제2 기기는 제1 기기로부터 수신한 제1 비트열과 S220에서 생성된 제2 난수 중 인덱스에 해당하는 비트부터 시작되는 제2 비트열을 비교하여 제1 기기를 인증한다(S340). 구체적으로, 제2 기기는 제1 비트열과 제2 비트열이 동일하면 제1 기기를 정당한 기기로 인증하고, 동일하지 않으면 인증이 실패한 것으로 판단한다.Next, the second device compares the first bit string received from the first device with the second bit string starting from the bit corresponding to the index of the second random number generated in S220 (S340). Specifically, if the first bit string and the second bit string are the same, the second device authenticates the first device with a legitimate device, and if not, it is determined that authentication fails.

이와 같이, 본 발명은 제1 기기 및 제2 기기의 상호 인증 과정에서 암호화 연산을 제2 기기만이 수행하면 되고, 제1 기기는 별도로 암호화 연산을 수행하지 않으므로 제한적인 컴퓨팅 자원 환경에서도 기기간 상호 인증을 보다 효율적으로 수행할 수 있게 된다.As described above, according to the present invention, only the second device needs to perform the encryption operation in the mutual authentication process of the first device and the second device, and the first device does not separately perform the encryption operation. Therefore, even in a limited computing resource environment, Can be performed more efficiently.

또한, 본 발명은 제1 기기가 제2 난수 중 일부만을 전송하도록 함으로써 공격자가 제2 난수를 예측하더라도 인증을 위해 실제 전송되어야 하는 비트열을 알지 못하도록 할 수 있어 공격자로부터의 예측 공격에 효율적으로 대응할 수 있다.
In addition, since the first device transmits only a part of the second random number, even if the attacker predicts the second random number, the first device can prevent the user from knowing the bit string to be actually transmitted for authentication, .

제2 실시예Second Embodiment

상술한 제1 실시예의 경우, 인증 개시자가 인증 응답자에게 전송하는 인증 요청 메시지는 암호화되지 않고 전송될 뿐만 아니라 누구나 생성 가능하다. 따라서, 악의적인 공격자가 인증 요청 메시지를 무작위로 생성하여 인증 응답자로 전송하는 Dos공격을 감행하게 되면 이를 수신하는 인증 응답자는 연산 복잡도가 높은 암호화 연산을 반복적으로 수행해야 하므로 인증 응답자의 자원이 고갈될 위험이 있다.In the case of the above-described first embodiment, the authentication request message transmitted from the authentication initiator to the authentication responder is not encrypted but transmitted by anyone. Therefore, when a malicious attacker randomly generates an authentication request message and sends a DoS attack to the authentication response responder, the authentication respondent receiving the authentication request repeatedly performs an encryption operation with a high computational complexity, There is a danger.

따라서, 본 발명은 이러한 Dos공격에 효율적으로 대응할 수 있는 센서 네트워크의 기기 인증 방법을 제2 실시예로 제안한다. 이하, Dos공격에 효율적으로 대응하기 위한 제2 실시예에 따른 센서 네트워크의 기기 인증 방법을 도 5 및 도 6을 참조하여 보다 구체적으로 설명한다.Therefore, the present invention proposes a method of authenticating a device in a sensor network, which can efficiently cope with such DoS attack, as a second embodiment. Hereinafter, an apparatus authentication method of a sensor network according to a second embodiment for efficiently responding to a DoS attack will be described in more detail with reference to FIGs. 5 and 6. FIG.

도 5는 본 발명의 제2 실시예에 따른 센서 네트워크의 기기 인증 방법 중 인증 개시자에 의해 수행되는 인증 방법을 보여주는 플로우차트이다.5 is a flowchart illustrating an authentication method performed by an authentication initiator in a device authentication method of a sensor network according to a second embodiment of the present invention.

먼저, 도 5에 도시된 바와 같이, 인증 요청이 개시되면(S500) 제1 기기는 제1 기기의 현재 수행중인 연산량(C1)과 미리 정해진 제1 최대 임계치(MAX_T1)를 비교하거나 인증 요청 프로세스(A_P)의 우선순위를 현재 실행중인 프로세스 중 우선순위가 가장 높은 프로세스(C_P)의 우선순위와 비교한다(S505).5, when the authentication request is initiated (S500), the first device compares the computation amount C1 currently being executed by the first device with a predetermined first maximum threshold value MAX_T1, A_P) with the priority of the process (C_P) having the highest priority among the currently executing processes (S505).

비교결과, 제1 기기의 현재 수행중인 연산량(C1)이 미리 정해진 제1 최대 임계치(MAX_T1)보다 작지 않거나 인증 요청 프로세스(A_P)의 우선순위가 현재 실행중인 프로세스 중 우선순위가 가장 높은 프로세스(C_P)의 우선순위보다 높지 않다면 제1 기기가 인증 요청 가능 상태가 아닌 것으로 판단하여 Busy 메시지를 제1 메시지로 생성하여 브로드캐스팅한다(S510).As a result of comparison, if the computation amount C1 currently being executed by the first device is not smaller than the predetermined first maximum threshold value MAX_T1 or the priority of the authentication request process A_P is higher than the priority of the currently executing process C_P , It is determined that the first device is not in the authentication request enabled state, and a Busy message is generated as a first message and broadcasted (S510).

일 실시예에 있어서, 제1 기기는 도 3에 도시된 제1 메시지(300)의 제1 필드(310)의 비트값을 "001"로 설정함으로써 제1 메시지를 Busy 메시지로 생성할 수 있다.In one embodiment, the first device may generate the first message as a Busy message by setting the bit value of the first field 310 of the first message 300 shown in FIG. 3 to "001 ".

한편 비교결과, 제1 기기의 현재 수행중인 연산량(C1)이 미리 정해진 제1 최대 임계치(MAX_T1)보다 작거나 인증 요청 프로세스(A_P)의 우선순위가 현재 실행중인 프로세스 중 우선순위가 가장 높은 프로세스(C_P)의 우선순위보다 높다면, 제1 기기는 도 2에 도시된 바와 같이 인증 요청을 나타내는 제1 메시지를 생성하여 제2 기기로 전송함으로써, 일반적인 인증 요청 절차를 진행한다(S520).As a result of comparison, if the computation amount C1 currently being executed by the first device is smaller than the predetermined first maximum threshold MAX_T1 or the priority of the authentication request process A_P is higher than the priority of the currently executing process C_P), the first device generates a first message indicating an authentication request as shown in FIG. 2, and transmits the first message to the second device, thereby performing a general authentication request procedure (S520).

일 실시예에 있어서, 제1 기기는 도 3에 도시된 제1 메시지(300)의 제1 필드(310)의 비트값을 "011"로 설정함으로써 제1 메시지를 인증 요청 메시지로 생성할 수 있다.In one embodiment, the first device may generate the first message as an authentication request message by setting the bit value of the first field 310 of the first message 300 shown in FIG. 3 to "011" .

한편, Busy 메시지의 브로드캐스팅 이후에 제1 기기는 기 수행 중인 인증 프로세스나 타 프로세스를 수행하면서 제1 기기의 현재 수행중인 연산량(C1)과 미리 정해진 제1 최소 임계치(MIN_T1)를 비교하거나 실행 대상이 되는 프로세스들 중 인증 요청 프로세스(A_P)의 우선순위가 가장 높은지 여부를 판단한다(S530).On the other hand, after broadcasting the Busy message, the first device compares the computation amount (C1) currently being executed by the first device with the predetermined first minimum threshold value MIN_T1 while performing the authentication process or other process under execution, It is determined whether the priority of the authentication request process (A_P) is the highest among the processes (S530).

일 실시예에 있어서, 제1 최소 임계치는 제1 기기의 연산능력의 60%로 설정될 수 있다.In one embodiment, the first minimum threshold may be set to 60% of the computing capability of the first device.

판단결과, 제1 기기의 현재 수행중인 연산량(C1)이 미리 정해진 제1 최소 임계치(MIN_T1)보다 작거나 인증 요청 프로세스(A_P)의 우선순위가 가장 높은 경우, 제1 기기는 Busy 상태가 해소된 것으로 판단하여 Idle 메시지를 제1 메시지로 생성하여 브로드캐스팅한다(S540).If it is determined that the computation amount C1 currently being executed by the first device is smaller than the predetermined first minimum threshold value MIN_T1 or the priority of the authentication request process A_P is the highest, And generates and broadcasts an Idle message as a first message at step S540.

일 실시예에 있어서, 제1 기기는 도 3에 도시된 제1 메시지(300)의 제1 필드(310)의 비트값을 "010"으로 설정함으로써 제1 메시지를 Idle 메시지로 생성할 수 있다.In one embodiment, the first device may generate the first message as an Idle message by setting the bit value of the first field 310 of the first message 300 shown in FIG. 3 to "010 ".

S520의 판단결과 제1 기기의 현재 수행중인 연산량(C1)이 미리 정해진 제1 최소 임계치(MIN_T1)보다 작지 않거나 인증 요청 프로세스(A_P)의 우선순위가 가장 높지 않은 경우 S520 이후의 과정을 반복하여 수행한다.If it is determined in step S520 that the computation amount C1 currently being executed by the first device is not smaller than the predetermined first minimum threshold MIN_T1 or the priority of the authentication request process A_P is not the highest, do.

도 6은 본 발명의 제2 실시예에 따른 센서 네트워크의 기기 인증 방법 중 인증 응답자에 의해 수행되는 인증 방법을 보여주는 플로우차트이다.FIG. 6 is a flowchart illustrating an authentication method performed by an authentication responder in the apparatus authentication method of the sensor network according to the second embodiment of the present invention.

먼저, 도 6에 도시된 바와 같이, 인증 요청 메시지인 제1 메시지가 수신되면(S600), 제2 기기는 제2 기기의 현재 수행중인 연산량(C2)과 미리 정해진 제2 최대 임계치(MAX_T2)를 비교하거나 인증 응답 프로세스(A_P)의 우선순위를 현재 실행중인 프로세스 중 우선순위가 가장 높은 프로세스(C_P)의 우선순위와 비교한다(S605).6, when the first message, which is the authentication request message, is received (S600), the second device computes the computation amount C2 currently being performed by the second device and the predetermined second maximum threshold value MAX_T2 And compares the priority of the authentication response process (A_P) with the priority of the process (C_P) having the highest priority among currently executing processes (S605).

비교결과, 제2 기기의 현재 수행중인 연산량(C2)이 미리 정해진 제2 최대 임계치(MAX_T2)보다 작지 않거나 인증 응답 프로세스(A_P)의 우선순위가 현재 실행중인 프로세스 중 우선순위가 가장 높은 프로세스(C_P)의 우선순위보다 높지 않다면 제2 기기가 인증 응답 가능 상태가 아닌 것으로 판단하여 Busy 메시지를 제2 메시지로 생성하여 브로드캐스팅한다(S610).As a result of comparison, if the computation amount C2 currently being executed by the second device is not smaller than the predetermined second maximum threshold MAX_T2 or the priority of the authentication response process A_P is higher than the priority of the currently executing process C_P It is determined that the second device is not in the authentication response enabled state, and a Busy message is generated as a second message and broadcasted (S610).

일 실시예에 있어서, 제2 기기는 도 4에 도시된 제2 메시지(400)의 제1 필드(410)의 비트값을 "101"로 설정함으로써 제2 메시지를 Busy 메시지로 생성할 수 있다.In one embodiment, the second device may generate a second message as a Busy message by setting the bit value of the first field 410 of the second message 400 shown in FIG. 4 to "101 ".

한편 비교결과, 제2 기기의 현재 수행중인 연산량(C2)이 미리 정해진 제2 최대 임계치(MAX_T2)보다 작거나 인증 응답 프로세스(A_P)의 우선순위가 현재 실행중인 프로세스 중 우선순위가 가장 높은 프로세스(C_P)의 우선순위보다 높다면, 제2 기기는 도 2에 도시된 바와 같이 인증 응답을 나타내는 제2 메시지를 생성하여 제1 기기로 전송함으로써, 일반적인 인증 응답 절차를 진행한다(S620).On the other hand, if the computation amount C2 currently being executed by the second device is smaller than the predetermined second maximum threshold MAX_T2 or the priority of the authentication response process A_P is higher than the priority of the currently executing process C_P), the second device generates a second message indicating the authentication response and transmits the second message to the first device as shown in FIG. 2, and proceeds to a general authentication response procedure (S620).

일 실시예에 있어서, 제2 기기는 도 4에 도시된 제2 메시지(400)의 제1 필드(410)의 비트값을 "111"로 설정함으로써 제2 메시지를 인증 응답 메시지로 생성할 수 있다.In one embodiment, the second device may generate the second message as an authentication response message by setting the bit value of the first field 410 of the second message 400 shown in FIG. 4 to "111 " .

한편, Busy 메시지의 브로드캐스팅 이후에 제2 기기는 기 수행 중인 인증 응답 프로세스나 타 프로세스를 수행하면서 제2 기기의 현재 수행중인 연산량(C2)과 미리 정해진 제2 최소 임계치(MIN_T2)를 비교하거나 실행 대상이 되는 프로세스들 중 인증 응답 프로세스(A_P)의 우선순위가 가장 높은지 여부를 판단한다(S630).On the other hand, after broadcasting the Busy message, the second device compares the computed amount C2 currently being operated by the second device with a predetermined second minimum threshold value MIN_T2 while performing the authentication response process or other process that is being performed, It is determined whether the priority of the authentication response process A_P is the highest among the targeted processes (S630).

일 실시예에 있어서, 제2 최소 임계치(MIN_T2)는 제2 기기의 연산능력의 60%로 설정될 수 있다.In one embodiment, the second minimum threshold MIN_T2 may be set to 60% of the computing capability of the second device.

판단결과, 제2 기기의 현재 수행중인 연산량(C2)이 미리 정해진 제2 최소 임계치(MIN_T2)보다 작거나 인증 응답 프로세스(A_P)의 우선순위가 가장 높은 경우, 제2 기기는 Busy 상태가 해소된 것으로 판단하여 Idle 메시지를 제2 메시지로 생성하여 브로드캐스팅한다(S640).If it is determined that the computation amount C2 currently being executed by the second device is smaller than the predetermined second minimum threshold value MIN_T2 or the priority of the authentication response process A_P is the highest, And generates and broadcasts an Idle message as a second message (S640).

일 실시예에 있어서, 제2 기기는 도 4에 도시된 제2 메시지(400)의 제1 필드(410)의 비트값을 "110"으로 설정함으로써 제2 메시지를 Idle 메시지로 생성할 수 있다.In one embodiment, the second device may generate the second message as an Idle message by setting the bit value of the first field 410 of the second message 400 shown in FIG. 4 to "110 ".

한편, S620의 판단결과 제2 기기의 현재 수행중인 연산량(C2)이 미리 정해진 제2 최소 임계치(MIN_T2)보다 작지 않거나 인증 응답 프로세스(A_P)의 우선순위가 가장 높지 않은 경우 S630 이후의 과정을 반복하여 수행한다.On the other hand, if it is determined in operation S620 that the computation amount C2 currently being performed by the second device is not smaller than the predetermined second minimum threshold value MIN_T2 or the priority of the authentication response process A_P is not the highest, .

상술한 바와 같이, 본 발명은 상호 인증을 수행하는 제1 기기 및 제2 기기의 연산능력 및 인증 요청 프로세스 또는 인증 응답 프로세스의 우선순위를 고려하여 각 기기의 인증 요청 또는 인증 응답 가능상태를 판단하고, 그 결과에 따라 인증 요청 또는 인증 응답이 수행되게 함으로써 무작위적인 인증 요청 메시지를 생성하여 전송하는 Dos공격에 대해 효율적으로 대응할 수 있게 된다.As described above, the present invention determines the authentication request or authentication response possible state of each device in consideration of the computing capability and the priority of the authentication request process or the authentication response process of the first device and the second device performing mutual authentication And the authentication request or the authentication response is performed according to the result, thereby generating a random authentication request message and efficiently responding to the DoS attack.

상술한 센서 네트워크의 기기 인증 방법은 다양한 컴퓨터 수단을 이용하여 수행될 수 있는 프로그램 형태로도 구현될 수 있는데, 이때 센서 네트워크의 기기 인증 방법을 수행하기 위한 프로그램은 하드 디스크, CD-ROM, DVD, 롬(ROM), 램, 또는 플래시 메모리와 같은 컴퓨터로 판독할 수 있는 기록 매체에 저장된다.The device authentication method of the sensor network may be implemented in a form of a program that can be performed using various computer means. The program for performing the device authentication method of the sensor network may be a hard disk, a CD-ROM, a DVD, Readable recording medium such as ROM, RAM, or flash memory.

본 발명이 속하는 기술분야의 당업자는 상술한 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다.It will be understood by those skilled in the art that the present invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof.

그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive. The scope of the present invention is defined by the appended claims rather than the detailed description and all changes or modifications derived from the meaning and scope of the claims and their equivalents are to be construed as being included within the scope of the present invention do.

100: 센서 네트워크 110: LLN영역
120: 인터넷 영역 130, 140: 센서
150: 모바일 게이트웨이 160: 서버
170: 클라이언트 300: 제1 메시지
400: 제2 메시지
100: Sensor network 110: LLN area
120: Internet zone 130, 140: Sensor
150: mobile gateway 160: server
170: client 300: first message
400: Second message

Claims (13)

사물간 통신 네트워크에 포함된 제1 기기가 인증 요청 가능 상태이면, 제1 난수를 제1 메시지에 포함시켜 상기 사물간 통신 네트워크에 포함된 제2 기기로 전송하는 단계;
상기 제2 기기가 인증 응답 가능 상태이면, 제2 난수를 생성하고 상기 제2 난수와 상기 제1 난수의 제1 부분을 연산한 제1 결과값을 상기 제1 난수의 제2 부분과 비트연접한 제2 결과값을 생성하는 단계;
상기 제2 결과값을 제2 메시지에 포함시키고, 상기 제2 기기가 상기 제1 기기와 공유하고 있는 공유키로 상기 제2 메시지를 암호화하여 상기 제1 기기로 전송하는 단계; 및
상기 제1 기기가 상기 암호화된 제2 메시지를 복호화하여 상기 제1 난수의 제2 부분을 획득하고, 획득한 제1 난수의 제2 부분을 상기 제1 난수와 비교하여 상기 제2 기기를 인증하는 단계를 포함하는 것을 특징으로 하는 사물간 통신 네트워크의 개체 인증 방법.
Transmitting a first random number included in a first message to a second device included in the inter-object communication network when the first device included in the inter-object communication network is in an authentication request enabled state;
If the second device is in an authentication responsive state, generating a second random number and computing a first result of the second random number and a first portion of the first random number by bitwise concatenating the second result with a second portion of the first random number Generating a second result value;
Encrypting the second message with the shared key shared by the second device with the first device, and transmitting the encrypted second message to the first device; And
The first device decrypts the encrypted second message to obtain a second portion of the first random number, and compares the second portion of the obtained first random number with the first random number to authenticate the second device The method comprising the steps of:
제1항에 있어서,
상기 제2 기기는 상기 제2 난수와 상기 제1 난수의 제1 부분을 배타적 논리합(eXclusive OR: XOR)으로 연산하여 상기 제1 결과값을 생성하는 것을 특징으로 하는 사물간 통신 네트워크의 개체 인증 방법.
The method according to claim 1,
Wherein the second device generates the first result value by calculating the second random number and the first part of the first random number with an exclusive OR (XOR) .
제1항에 있어서,
상기 제1 난수의 제1 부분은 상기 제1 난수의 비트열을 2등분 하였을 때 후단 비트열이고, 상기 제1 난수의 제2 부분은 상기 제1 난수의 비트열을 2등분 하였을 때 전단 비트열이며,
상기 제2 결과값의 길이와 상기 제1 난수의 길이는 동일한 것을 특징으로 하는 사물간 통신 네트워크의 개체 인증 방법.
The method according to claim 1,
Wherein the first part of the first random number is a trailing bit string when the bit string of the first random number is bisected and the second part of the first random number is a trailing bit string when the bit string of the first random number is bisected Lt;
Wherein the length of the second resultant value is equal to the length of the first random number.
제1항에 있어서,
상기 제2 기기가 상기 제2 난수를 구성하는 비트들 중 추출대상이 되는 비트열의 시작위치를 나타내는 인덱스를 설정하는 단계를 더 포함하고,
상기 제2 메시지를 암호화하여 상기 제1 기기로 전송하는 단계에서, 상기 인덱스를 상기 제2 메시지에 추가로 포함시켜 암호화하는 것을 특징으로 하는 사물간 통신 네트워크의 개체 인증 방법.
The method according to claim 1,
Setting an index indicating a start position of a bit string to be extracted from bits constituting the second random number by the second device,
And encrypting the second message by encrypting the second message and transmitting the second message to the first device, wherein the index is further included in the second message.
제4항에 있어서,
상기 제1 기기가 상기 암호화된 제2 메시지를 복호화하여 상기 제1 결과값 및 상기 인덱스를 획득하는 단계;
상기 제1 기기가 상기 제1 기기에 의해 생성된 상기 제1 난수 및 상기 제1 기기에 의해 획득된 상기 제1 결과값을 이용하여 상기 제2 난수를 획득하는 단계;
상기 제1 기기가 상기 획득된 제2 난수 중 상기 인덱스에 해당하는 비트부터 시작되는 비트열을 추출하여 상기 제2 기기로 전송하는 단계; 및
상기 제2 기기가 상기 제1 기기로부터 전송된 상기 비트열을 상기 제2 기기가 생성한 제2 난수의 비트열 중 일부와 비교하여 상기 제1 기기를 인증하는 단계를 더 포함하는 것을 특징으로 하는 사물간 통신 네트워크의 개체 인증 방법.
5. The method of claim 4,
Decrypting the encrypted second message by the first device to obtain the first resultant value and the index;
The first device obtaining the second random number using the first random number generated by the first device and the first result obtained by the first device;
Extracting a bit string starting from a bit corresponding to the index among the obtained second random numbers and transmitting the extracted bit string to the second device; And
And the second device compares the bit string transmitted from the first device with a part of the bit string of the second random number generated by the second device to authenticate the first device A method for authenticating an object in an inter - object communication network.
제1항에 있어서,
상기 제1 메시지는,
메시지 처리 방식이 기록되는 제1 필드, 상기 제1 기기의 식별정보가 기록되는 제2 필드, 상기 제1 난수의 길이가 기록되는 제3 필드, 및 상기 제1 난수가 기록되는 제4 필드를 포함하는 것을 특징으로 하는 사물간 통신 네트워크의 개체 인증 방법.
The method according to claim 1,
Wherein the first message comprises:
A first field in which a message processing method is recorded, a second field in which identification information of the first device is recorded, a third field in which the length of the first random number is recorded, and a fourth field in which the first random number is recorded Object communication network.
제6항에 있어서,
상기 제1 기기는,
상기 제2 기기의 상태 확인이 요구되면 상기 제1 필드에 000을 기록하여 상기 제1 메시지를 Hello메시지로 생성하고,
상기 제1 기기의 연산능력이 미리 설정된 제1 최대 임계치보다 크거나 인증 요청 프로세스보다 우선순위가 높은 프로세스가 실행 중이면 상기 제1 기기가 인증 요청 가능 상태가 아닌 것으로 판단하고 상기 제1 필드에 001을 기록하여 상기 제1 메시지를 Busy 메시지를 생성하며,
상기 Busy 메시지의 브로드캐스팅 이후에 상기 제1 기기의 연산능력이 미리 설정된 제1 최소 임계치보다 낮아지거나 실행대상 프로세스들 중 인증 요청 프로세스의 우선순위가 가장 높은 것으로 판단되면 상기 제1 필드에 010을 기록하여 상기 제1 메시지를 Idle 메시지로 생성하고,
상기 제1 기기가 인증 요청 가능 상태인 것으로 판단되면 상기 제1 필드에 011을 기록하여 상기 제1 메시지를 인증 요청(Auth_Request) 메시지로 생성하는 것을 특징으로 하는 사물간 통신 네트워크의 개체 인증 방법.
The method according to claim 6,
Wherein the first device comprises:
If the status of the second device is requested, 000 is written in the first field to generate the first message as a Hello message,
If it is determined that the first device is not in the authentication request enabled state, if the first device has a computation capability greater than a first predetermined maximum threshold or a priority higher than the authentication request process is being executed, To generate a Busy message for the first message,
If the computation capability of the first device is lower than a predetermined first minimum threshold after broadcasting of the Busy message or it is determined that the priority of the authentication request process among the execution target processes is the highest, 010 is written in the first field Generates the first message as an Idle message,
When the first device is determined to be in the authentication request enabled state, the first message is recorded as 011 in the first field to generate the first message as an authentication request message (Auth_Request).
제1항에 있어서,
상기 제2 메시지는,
메시지 처리 방식이 기록되는 제1 필드, 상기 제2 기기의 식별정보가 기록되는 제2 필드, 상기 제1 난수의 제2 부분이 기록되는 제3 필드, 상기 제1 결과값이 기록되는 제4 필드, 및 상기 제2 난수를 구성하는 비트들 중 추출대상이 되는 비트열의 시작위치를 나타내는 인덱스가 기록되는 제5 필드를 포함하는 것을 특징으로 하는 사물간 통신 네트워크의 개체 인증 방법.
The method according to claim 1,
Wherein the second message comprises:
A second field in which identification information of the second device is recorded, a third field in which a second portion of the first random number is recorded, a fourth field in which the first result value is recorded, And a fifth field in which an index indicating a start position of a bit string to be extracted from among the bits constituting the second random number is recorded.
제8항에 있어서,
상기 제2 기기는,
상기 제1 기기의 상태 확인이 요구되면 상기 제1 필드에 100을 기록하여 상기 제2 메시지를 Hello메시지로 생성하고,
상기 제2 기기의 연산능력이 미리 설정된 제2 최대 임계치보다 크거나 인증 응답 프로세스보다 우선순위가 높은 프로세스가 실행 중이면 상기 제2 기기가 인증 응답 가능 상태가 아닌 것으로 판단하고 상기 제1 필드에 101을 기록하여 상기 제2 메시지를 Busy 메시지를 생성하며,
상기 Busy 메시지의 브로드캐스팅 이후에 상기 제2 기기의 연산능력이 미리 설정된 제2 최소 임계치보다 낮아지거나 실행되어야 할 프로세서들 중 인증 응답 프로세스의 우선순위가 가장 높은 것으로 판단되면 상기 제1 필드에 110을 기록하여 상기 제2 메시지를 Idle 메시지로 생성하고,
상기 제2 기기가 인증 응답 가능 상태인 것으로 판단되면 상기 제1 필드에 111을 기록하여 상기 제2 메시지를 인증 응답(Auth_Response) 메시지로 생성하는 것을 특징으로 하는 사물간 통신 네트워크의 개체 인증 방법.
9. The method of claim 8,
The second device comprises:
If the status of the first device is requested, 100 is recorded in the first field to generate the second message as a Hello message,
If it is judged that the second device is not in the authentication-responsive state if the computation capability of the second device is greater than a second predetermined maximum threshold or a process having a higher priority than the authentication response process is being executed, To generate a Busy message for the second message,
If it is determined that the computation capability of the second device is lower than a predetermined second minimum threshold after broadcasting of the Busy message or that the priority of the authentication response process among the processors to be executed is the highest, And generates the second message as an Idle message,
When the second device determines that the second device is in the authentication response enabled state, writes 111 in the first field to generate the second message as an authentication response message.
제1항에 있어서,
상기 제1 기기는 센서이고, 상기 제2 기기는 상기 센서를 인터넷 서비스 제공을 위한 서버 또는 클라이언트에 연결시키는 모바일 게이트웨이인 것을 특징으로 하는 사물간 통신 네트워크의 개체 인증 방법.
The method according to claim 1,
Wherein the first device is a sensor and the second device is a mobile gateway connecting the sensor to a server or a client for providing an Internet service.
제1항에 있어서,
상기 제1 기기는 모바일 게이트웨이이고, 상기 제2 기기는 센서인 것을 특징으로 하는 사물간 통신 네트워크의 개체 인증 방법.
The method according to claim 1,
Wherein the first device is a mobile gateway and the second device is a sensor.
제1항에 있어서,
상기 사물간 통신 네트워크는 LLN(Low-Power, Lossy Network) 영역 및 인터넷 영역으로 구분되고, 상기 제1 기기와 상기 제2 기기는 상기 LLN 영역 내에서 단일홉(Hop)으로 연결되어 있는 것을 특징으로 하는 사물간 통신 네트워크의 개체 인증 방법.
The method according to claim 1,
Wherein the inter-object communication network is divided into an LLN (Low-Power, Lossy Network) area and an Internet area, and the first device and the second device are connected in a single hop within the LLN area Object authentication method of an inter-object communication network.
제1항 내지 제12항 중 어느 하나의 항에 기재된 사물간 통신 네트워크의 개체 인증 방법을 수행하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체.A computer-readable recording medium having recorded thereon a program for performing an entity authentication method of an inter-object communication network according to any one of claims 1 to 12.
KR1020130059071A 2013-05-24 2013-05-24 Method for Authenticating Entity of Thing to Thing Communication Network KR101465337B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130059071A KR101465337B1 (en) 2013-05-24 2013-05-24 Method for Authenticating Entity of Thing to Thing Communication Network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130059071A KR101465337B1 (en) 2013-05-24 2013-05-24 Method for Authenticating Entity of Thing to Thing Communication Network

Publications (1)

Publication Number Publication Date
KR101465337B1 true KR101465337B1 (en) 2014-11-25

Family

ID=52291614

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130059071A KR101465337B1 (en) 2013-05-24 2013-05-24 Method for Authenticating Entity of Thing to Thing Communication Network

Country Status (1)

Country Link
KR (1) KR101465337B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101611944B1 (en) 2015-03-13 2016-04-12 한국전자통신연구원 Method for selectively applying data encryption
WO2017018829A1 (en) * 2015-07-28 2017-02-02 이태원 Authentication device and method, and computer program and recording medium applied thereto
KR20180135766A (en) * 2017-06-13 2018-12-21 주식회사 뉴론웍스 A security method of communication network for Internet appliance using matching of variant protocol and disposable index key value

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006041714A (en) * 2004-07-23 2006-02-09 Sangikyou:Kk Authentication and authentication response system
KR20090039549A (en) * 2007-10-18 2009-04-22 삼성전자주식회사 Tag authentication method using rotation and tag and reader for executing the method
KR20110046849A (en) * 2009-10-29 2011-05-06 한국인터넷진흥원 Method and system for preserving secyrity of sensor data and recording medium using thereof
KR20110074441A (en) * 2009-12-24 2011-06-30 삼성테크윈 주식회사 Method for mutual authentication between tag and reader in radio frequency identification system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006041714A (en) * 2004-07-23 2006-02-09 Sangikyou:Kk Authentication and authentication response system
KR20090039549A (en) * 2007-10-18 2009-04-22 삼성전자주식회사 Tag authentication method using rotation and tag and reader for executing the method
KR20110046849A (en) * 2009-10-29 2011-05-06 한국인터넷진흥원 Method and system for preserving secyrity of sensor data and recording medium using thereof
KR20110074441A (en) * 2009-12-24 2011-06-30 삼성테크윈 주식회사 Method for mutual authentication between tag and reader in radio frequency identification system

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101611944B1 (en) 2015-03-13 2016-04-12 한국전자통신연구원 Method for selectively applying data encryption
US9602476B2 (en) 2015-03-13 2017-03-21 Electronics And Telecommunications Research Institute Method of selectively applying data encryption function
WO2017018829A1 (en) * 2015-07-28 2017-02-02 이태원 Authentication device and method, and computer program and recording medium applied thereto
KR20180135766A (en) * 2017-06-13 2018-12-21 주식회사 뉴론웍스 A security method of communication network for Internet appliance using matching of variant protocol and disposable index key value
KR102055862B1 (en) * 2017-06-13 2019-12-13 주식회사 뉴론웍스 A security method of communication network for Internet appliance using matching of variant protocol and disposable index key value

Similar Documents

Publication Publication Date Title
US10250698B2 (en) System and method for securing pre-association service discovery
Cao et al. Anti-quantum fast authentication and data transmission scheme for massive devices in 5G NB-IoT system
Zhang et al. SeDS: Secure data sharing strategy for D2D communication in LTE-Advanced networks
US20190123909A1 (en) End-to-End Service Layer Authentication
EP3395091B1 (en) Authentication and key agreement in communication network
US8254581B2 (en) Lightweight key distribution and management method for sensor networks
EP3051744B1 (en) Key configuration method and apparatus
US10790995B2 (en) Oracle authentication using multiple memory PUFs
KR102433939B1 (en) Methods for fast, secure and privacy-friendly internet connection discovery in wireless networks
KR101452124B1 (en) Method for Device Authentication and Session Key Generation Based on Encryption in Internet of Things
WO2018219181A1 (en) Method and device for determining identifier of terminal device
KR101486155B1 (en) Method for Device Authentication and Session Key Generation Based on Hash in Internet of Things
KR20180130203A (en) APPARATUS FOR AUTHENTICATING IoT DEVICE AND METHOD FOR USING THE SAME
CN113613245A (en) Method and apparatus for managing communication channels
KR101465337B1 (en) Method for Authenticating Entity of Thing to Thing Communication Network
CN110830421B (en) Data transmission method and device
Nasiraee et al. A new three party key establishment scheme: Applicable for internet-enabled sensor networks
Tayade et al. Quantum based flexible secure authentication protocol (SAP) for device to device (D2D) communication
KR101886367B1 (en) Generation of device individual session key in inter-object communication network and verification of encryption and decryption function between devices using it
Liu et al. A Secure and Reliable Data Transmission Scheme in Wireless Body Area Network.
Akhtar et al. A novel security algorithm for universal mobile telecommunication system
WO2017070973A1 (en) Internet protocol security tunnel establishing method, user equipment and base station
US11632235B2 (en) Method and apparatus for handling security procedure in mc communication system
WO2023160716A1 (en) Cell handover method and apparatus.
Vinh Real-time Key Management for Wireless Mesh Network

Legal Events

Date Code Title Description
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20171206

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20200203

Year of fee payment: 6