KR101645705B1 - Method for authentication between devices - Google Patents
Method for authentication between devices Download PDFInfo
- Publication number
- KR101645705B1 KR101645705B1 KR1020140175248A KR20140175248A KR101645705B1 KR 101645705 B1 KR101645705 B1 KR 101645705B1 KR 1020140175248 A KR1020140175248 A KR 1020140175248A KR 20140175248 A KR20140175248 A KR 20140175248A KR 101645705 B1 KR101645705 B1 KR 101645705B1
- Authority
- KR
- South Korea
- Prior art keywords
- random number
- authentication
- equipment
- key
- authentication code
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3226—Cryptographic 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 a predetermined code, e.g. password, passphrase or PIN
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
본 발명은 제1 장비와 제2 장비간의 인증방법에 관한 것으로서, 상기 제1 장비의 장비 ID, 인증코드 및 난수 생성 인수와 난수 생성 함수 및 키 생성 함수 중 적어도 하나를 포함하는 인증정보를 상기 제1 장비 및 상기 제2 장비에 각각 저장하는 단계(a); 상기 제1 장비가 상기 난수 생성 인수 및 난수 생성 함수를 이용하여 제1 난수를 생성하며, 상기 제1 난수 및 상기 키 생성 함수를 이용하여 제1 키 값을 생성하는 단계(b); 상기 제1 장비가 상기 제1 키 값을 이용하여 상기 장비 ID를 암호화한 장비 ID 암호키를 상기 제2 장비로 전송하는 단계(c); 상기 제2 장비가 상기 난수 생성 인수를 이용하여 제2 난수를 생성하며, 상기 제2 난수 및 상기 키 생성 함수를 이용하여 제2 키 값을 생성하는 단계(d); 상기 제2 장비가 상기 제2 키 값을 이용하여 상기 장비 ID 암호키를 복호화 하여 장비 ID를 추출하고, 상기 제2 키 값을 이용하여 상기 추출된 장비 ID에 대응되는 인증코드를 암호화한 인증코드 암호키를 상기 제1 장비로 전송하는 단계(e); 상기 제1 장비가 상기 제1 키 값을 이용하여 상기 인증코드 암호키를 복호화하여 인증코드를 추출하고, 상기 추출된 인증코드 및 상기 제1 장비에 저장된 인증코드를 비교하여 인증을 수행하는 단계(f)를 포함하는 것을 특징으로 한다.The present invention relates to an authentication method between a first device and a second device, the authentication method including at least one of a device ID, an authentication code, a random number generation function, a random number generation function, and a key generation function of the first device, 1 < / RTI > equipment and the second equipment, respectively; (B) generating a first random number using the random number generation function and the random number generation function, and generating a first key value using the first random number and the key generation function; (C) transmitting, by the first equipment, an equipment ID cryptographic key obtained by encrypting the equipment ID using the first key value to the second equipment; (D) generating, by the second device, a second random number using the random number generation factor, and generating a second key value using the second random number and the key generation function; The second device decrypts the device ID cryptographic key using the second key value to extract the device ID and encrypts the authentication code corresponding to the extracted device ID using the second key value, (E) transmitting an encryption key to the first device; The first device decrypts the authentication code encryption key using the first key value to extract an authentication code, and performs authentication by comparing the extracted authentication code and the authentication code stored in the first device f).
Description
본 발명의 실시예들은 장비들간의 인증방법에 관한 것으로서, 더욱 상세하게는 IOT 통신 환경에서의 장비들간의 인증방법에 관한 것이다.Embodiments of the present invention relate to authentication methods between devices, and more particularly, to authentication methods between devices in an IOT communication environment.
현대사회는 기술의 발전으로 우리가 의식하지 않아도, 모든 사물(장치)과 사람이 통신을 하는 시대로 바뀌고 있다. 이런 기술을 IOT(Internet of things)라고 부른다. IOT 기술의 핵심은 인간의 개입 없이 모든 장치들이 상호 협력적으로 센싱, 정보 처리 등을 수행한다는 점이다. 이러한 장치들간의 통신이 가능해짐에 따라 각 장비들은 해킹, 악성코드, 바이러스들과 같은 다양한 위험요소에 노출될 수 있으므로, 장비들간의 인증을 수행할 필요가 있다.Modern society is changing from the development of technology to an era in which all things (devices) and people communicate, even though we are not conscious of it. This technology is called the Internet of things (IOT). The key to IOT technology is that all devices perform sensing, information processing, and so on, without human intervention. As communication between these devices becomes possible, each device may be exposed to various risk factors such as hacking, malicious code, and viruses, so authentication between devices needs to be performed.
데이터를 암호화하고 해독하는 방식에는 공개키 암호화 및 대칭키 암호화 방식이 있다. 공개키 암호화 방식은 공개 되는 키와 여기에 1:1로 대응되는 비밀키가 있고, 대칭키 암호화 방식은 공개되지 않는 비밀키를 가지고 암호화하고 해독하는 방식이다.There are public key encryption and symmetric key encryption methods for encrypting and decrypting data. The public key cryptosystem has a public key and a secret key corresponding thereto in a one-to-one correspondence, and the symmetric key cryptosystem is a method of encrypting and decrypting a public key that is not disclosed.
공개키 암호화 키는 키 정보를 교환하는 과정에서 보안 취약점이 존재하고, 비밀키 암호화는 비밀키가 노출되었을 때 보안 취약점이 발생하게 된다. 또한, 인증을 하는 장비가 상호 식별을 위하여 인증서를 사용하고 이와 이 인증서의 대응되는 키 정보를 가지고 암호화를 하고 이를 해독하는 방법이 많이 쓰이지만, 인증 시 정보가 공개된 네트워크를 통하여 전송됨으로써 보안 취약점이 발생하기도 한다. 예를 들어, SSL(Secure Socket Layer), TLS(Transport Layer Security)에서는 클라이언트와 서버 사이에 키를 교환하는 과정이 존재한다. 또한, IOT 환경에서 통신을 하는 많은 수의 장비와 서버들이 통신의 신뢰성을 확보하기 위하여 인증기관(CA)으로부터 검증된 인증서를 발급받아야 하는데, 이러한 경우 높은 인증 비용이 발생하게 되고, CA의 인증서버의 부하도 감당할 수 없이 증가하게 되어 실제 환경에서 기존의 기술로는 상용화된 신뢰성 있는 통신체계를 구현하기 어렵다.A public key cryptographic key has a security vulnerability in exchanging key information, and a secret key cryptographic security vulnerability occurs when a secret key is exposed. In addition, although the authentication device uses a certificate for mutual identification, encrypts it with the corresponding key information of the certificate, and decrypts the encrypted information. However, when the authentication information is transmitted through the public network, . For example, in SSL (Secure Socket Layer) and TLS (Transport Layer Security), there is a process of exchanging keys between a client and a server. In addition, a large number of equipments and servers communicating in the IOT environment must receive a certificate verified by a certification authority (CA) in order to secure the reliability of communication. In this case, a high authentication cost is incurred, It is difficult to implement a reliable communication system that is commercialized by existing technologies in a real environment.
상기한 바와 같은 종래기술의 문제점을 해결하기 위해, 본 발명은 기존의 인증 및 암호화 알고리즘의 결점을 보완한 것으로서, 데이터를 암호화고 이를 복호화 하는데 사용되는 장비 ID와 인증코드가 장비간에 사용되는 주 통신망이 아닌 다른 부가적인 경로로 상호 전달되어 보안성을 높이며, 장비 ID, 인증코드, 난수 생성 인수를 이용하여 생성된 별도의 키가 사용되어 데이터를 암호화하고 복호화 할 수 있으며, 난수 발생 시 난수 발생 규칙을 장비들간에 미리 공유함으로써 난수 불일치에 의한 복호화의 오류를 없앨 수 있는 장치들간의 인증방법을 제안하고자 한다.In order to solve the problems of the prior art as described above, the present invention complements the drawbacks of existing authentication and encryption algorithms, and it is an object of the present invention to provide an apparatus and a method for encrypting data, It is possible to encrypt and decrypt the data by using a separate key generated by using the equipment ID, authentication code, and random number generation factor. In addition, when the random number generation rule To prevent the error of decryption due to the random number mismatch, thereby proposing an authentication method between the devices.
본 발명의 다른 목적들은 하기의 실시예를 통해 당업자에 의해 도출될 수 있을 것이다.Other objects of the invention will be apparent to those skilled in the art from the following examples.
상기한 목적을 달성하기 위해 본 발명의 바람직한 일 실시예에 따르면, 제1 장비와 제2 장비간의 인증방법에 있어서, 상기 제1 장비의 장비 ID, 인증코드 및 난수 생성 인수와 난수 생성 함수 및 키 생성 함수 중 적어도 하나를 포함하는 인증정보를 상기 제1 장비 및 상기 제2 장비에 각각 저장하는 단계(a); 상기 제1 장비가 상기 난수 생성 인수 및 난수 생성 함수를 이용하여 제1 난수를 생성하며, 상기 제1 난수 및 상기 키 생성 함수를 이용하여 제1 키 값을 생성하는 단계(b); 상기 제1 장비가 상기 제1 키 값을 이용하여 상기 장비 ID를 암호화한 장비 ID 암호키를 상기 제2 장비로 전송하는 단계(c); 상기 제2 장비가 상기 난수 생성 인수를 이용하여 제2 난수를 생성하며, 상기 제2 난수 및 상기 키 생성 함수를 이용하여 제2 키 값을 생성하는 단계(d); 상기 제2 장비가 상기 제2 키 값을 이용하여 상기 장비 ID 암호키를 복호화 하여 장비 ID를 추출하고, 상기 제2 키 값을 이용하여 상기 추출된 장비 ID에 대응되는 인증코드를 암호화한 인증코드 암호키를 상기 제1 장비로 전송하는 단계(e); 상기 제1 장비가 상기 제1 키 값을 이용하여 상기 인증코드 암호키를 복호화하여 인증코드를 추출하고, 상기 추출된 인증코드 및 상기 제1 장비에 저장된 인증코드를 비교하여 인증을 수행하는 단계(f)를 포함하는 것을 특징으로 하는 제1 장비와 제2 장비간의 인증방법이 제공된다. According to a preferred embodiment of the present invention, there is provided an authentication method between a first device and a second device, the method comprising the steps of: obtaining a device ID, an authentication code and a random number generation factor of the first device, (A) storing authentication information in the first device and the second device, the authentication information including at least one of the generation functions; (B) generating a first random number using the random number generation function and the random number generation function, and generating a first key value using the first random number and the key generation function; (C) transmitting, by the first equipment, an equipment ID cryptographic key obtained by encrypting the equipment ID using the first key value to the second equipment; (D) generating, by the second device, a second random number using the random number generation factor, and generating a second key value using the second random number and the key generation function; The second device decrypts the device ID cryptographic key using the second key value to extract the device ID and encrypts the authentication code corresponding to the extracted device ID using the second key value, (E) transmitting an encryption key to the first device; The first device decrypts the authentication code encryption key using the first key value to extract an authentication code, and performs authentication by comparing the extracted authentication code and the authentication code stored in the first device f) of the first device and the second device is provided.
상기 단계(a)는 상기 제1 장비와 상비 제2 장비간의 데이터 통신 경로 외의 다른 경로를 통해 수행될 수 있다.The step (a) may be performed through a path other than the data communication path between the first equipment and the second equipment.
상기 단계(a)는, 상기 제1 장비 및 상기 제2 장비에 상기 제2 장비의 장비 ID를 더 저장할 수 있으며, 상기 단계(b) 및 상기 단계(d)는 상기 제2 장비의 장비 ID를 더 이용하여 상기 제1 키 값 및 상기 제2 키 값을 생성할 수 있다.Wherein the step (a) may further store the equipment ID of the second equipment in the first equipment and the second equipment, and the step (b) and the step (d) To generate the first key value and the second key value.
상기 제1 장비와 상기 제2 장비간의 통신은 TCP-IP 프로토콜을 통해 수행되며, 상기 단계(b)는, 상기 제1 장비가 상기 제2 장비로 ACK 신호를 전송한 ACK 전송 시간 및 기 설정된 시간 구간 값을 통해 산출된 제1 전송시간을 더 이용하여 상기 제1 난수를 생성하며, 상기 단계(d)는 상기 제2 장비가 상기 제1 장비로 SYN-ACK 신호를 전송한 SYN-ACK 전송 시간, 상기 제2 장비가 상기 ACK 신호를 수신한 ACK 수신 시간 및 상기 기 설정된 시간 구간 값을 통해 산출된 제2 전송시간을 더 이용하여 상기 제2 난수를 생성할 수 있다.Wherein the communication between the first equipment and the second equipment is performed through a TCP-IP protocol, and the step (b) comprises: transmitting an ACK transmission time of the ACK signal transmitted from the first equipment to the second equipment, Wherein the second device generates the first random number by further using the first transmission time calculated through the interval value, and wherein the step (d) includes: generating a SYN-ACK transmission time , The second equipment generates the second random number by further using the ACK reception time at which the ACK signal was received and the second transmission time calculated through the predetermined time interval value.
상기 단계(b)는 상기 제1 전송시간을 시각 동기화 오차로 나눈 정수 값을 이용하여 상기 제1 난수를 생성하며, 상기 단계(d)는 상기 제2 전송시간을 시각 동기화 오차로 나눈 정수 값을 이용하여 상기 제2 난수를 생성할 수 있다.Wherein the step (b) generates the first random number using an integer value obtained by dividing the first transmission time by a time synchronization error, and the step (d) generates an integer value obtained by dividing the second transmission time by a time synchronization error To generate the second random number.
상기 인증정보는 상기 제1 장비에 포함되는 별도의 인증 모듈에 저장될 수 있다.The authentication information may be stored in a separate authentication module included in the first device.
상기 인증 모듈은 별도의 전원과 IC 칩을 포함할 수 있으며, 상기 인증 모듈이 상기 제1 장비에 장착될 시 상기 IC 칩에 저장된 난수 생성 인수를 이용하여 생성된 난수와 상기 제1 장비에서 저장된 난수 생성 인수를 이용하여 생성된 난수가 동일한 경우 상기 제1 장비는 상기 인증 모듈을 인증할 수 있다.The authentication module may include a separate power source and an IC chip. When the authentication module is mounted on the first device, a random number generated using the random number generation factor stored in the IC chip and a random number stored in the first device The first device can authenticate the authentication module if the generated random numbers are the same using the generation factor.
상기 인증모듈은 전원과 통신이 공급되는 인증모듈 장착용 장비에서 장착되어 시간 동기화 서버를 통해 시각 동기화가 된 상태에서, 상기 인증모듈 장착용 장비로부터 분리되어 상기 제1 장비에 장착될 수 있으며, 상기 인증모듈과 상기 제1 장비는 시간 정보를 더 이용하여 각각 생성된 난수를 비교하여 인증을 수행할 수 있다.The authentication module may be mounted on the authentication module mounting equipment supplied with communication with the power source and may be mounted on the first device separated from the authentication module mounting equipment in a state in which the time synchronization is performed through the time synchronization server, The authentication module and the first device can perform authentication by comparing the generated random numbers using the time information.
상기 제2 장비와 통신하는 상기 제1 장비가 적어도 둘 이상인 경우,And if the first equipment in communication with the second equipment is at least two,
상기 인증 정보는 상기 제1 장비의 장비 식별번호를 더 포함하며, 상기 단계(a)에서 상기 제2 장비에는 상기 제1 장비들 각각에 대한 인증정보가 저장되며, 상기 단계(d)는 상기 장비 ID 암호키를 전송한 제1 장비의 장비 식별번호를 추출하고, 상기 추출된 장비 식별번호에 대응되는 난수 생성 인수를 이용하여 상기 제2 난수를 생성할 수 있다.Wherein the authentication information further includes a device identification number of the first device, wherein authentication information for each of the first devices is stored in the second device in step (a), and step (d) The apparatus identification number of the first apparatus that transmitted the ID encryption key may be extracted and the second random number may be generated using the random number generation factor corresponding to the extracted apparatus identification number.
상기 제1 장비들과 상기 제2 장비간의 통신이 TCP-IP 프로토콜을 통해 수행되는 경우, 상기 추출된 장비 식별번호는 상기 제1 장비의 물리적인 하드웨어 정보일 수 있다. 상기 제1 장비들과 상기 제2 장비간의 통신이 무선 통신을 통해 수행되는 경우, 상기 추출된 장비 식별번호는 상기 제1 장비의 통신 모뎀 정보일 수 있다.When the communication between the first devices and the second device is performed through the TCP-IP protocol, the extracted device identification number may be physical hardware information of the first device. When the communication between the first devices and the second device is performed through wireless communication, the extracted device identification number may be the communication modem information of the first device.
상기 제2 장비와 통신하는 상기 제1 장비가 적어도 둘 이상인 경우, 상기 인증 정보는 상기 제1 장비의 장비 식별번호를 더 포함하며, 상기 단계(a)에서 상기 제2 장비에는 상기 제1 장비들 각각에 대한 인증정보가 저장되며, 상기 단계(c)는 상기 제1 장비들 중 인증을 요청하는 제1 장비의 장비 식별번호를 상기 제2 장비로 더 전송하며, 상기 단계(d)는 상기 수신된 장비 식별번호에 대응되는 난수 생성 인수 및 상기 난수 생성 함수를 이용하여 상기 제2 난수를 생성할 수 있다.Wherein the authentication information further includes a device identification number of the first device when the first device communicating with the second device is at least two or more, (C) further transmits, to the second device, an equipment identification number of the first equipment requesting authentication among the first equipment, and the step (d) And generate the second random number using the random number generation factor corresponding to the identified device identification number and the random number generation function.
상기 단계(f) 이후에, 상기 제1 장비는 상기 제1 난수를 재 생성하며, 이전에 생성된 난수, 상기 재 생성된 난수 및 상기 제1 키 값 중 적어도 하나를 이용하여 데이터를 암호화하여 상기 제2 장비로 전송하며, 상기 제2 장비는 상기 제2 난수를 재 생성하며, 이전에 생성된 제2 난수, 상기 재 생성된 난수 및 상기 제2 키 값 중 적어도 하나를 이용하여 상기 데이터를 복호화할 수 있다.After the step (f), the first device regenerates the first random number, encrypts the data using at least one of the previously generated random number, the regenerated random number, and the first key value, And the second device regenerates the second random number and decrypts the data using at least one of the previously generated second random number, the regenerated random number, and the second key value, can do.
상기 제1 장비와 상기 제2 장비간의 데이터 전송 중 통신이 실패하는 경우, 최종 통신 성공에 사용된 난수를 사용하여 통신을 복원할 수 있다.If the communication between the first device and the second device fails during the data transmission, the communication can be restored using the random number used for the last communication success.
본 발명의 다른 실시예에 따르면, 인증서버를 이용한 제1 장비와 제2 장비간의 인증방법에 있어서, 상기 제1 장비 및 상기 제2 장비 각각의 장비 ID, 인증코드, 난수 생성 인수, 장비 식별번호와 난수 생성 함수 및 키 생성 함수 중 적어도 하나를 포함하는 인증정보를 상기 인증서버에 등록하며, 상기 제1 장비의 인증정보를 상기 제1 장비에 등록하며, 상기 제2 장비의 인증정보를 상기 제2 장비에 등록하는 단계(a); 상기 제1 장비는 상기 제1 장비의 난수 생성 인수 및 상기 난수 생성 함수를 이용하여 생성된 제1 난수 및 상기 키 생성 함수를 이용하여 제1 키 값을 생성하며, 상기 제1 키 값을 이용하여 상기 제1 장비의 장비 ID를 암호화한 제1 장비 ID 암호키 및 상기 제1 장비의 장비 식별번호를 상기 제2 장비로 전송하는 단계(b); 상기 제2 장비는 상기 암호화된 제1 장비 ID 암호키 및 상기 제1 장비의 장비 식별번호를 상기 인증서버로 전송하는 단계(c); 상기 인증 서버는 상기 제1 장비의 장비 식별번호에 대응되는 난수 생성 인수를 이용하여 생성된 제2 난수와 상기 키 생성 함수를 이용하여 제2 키 값을 생성하며, 상기 제2 키 값을 이용하여 상기 제1 장비 ID 암호키를 복호화하여 제1 장비 ID를 추출하며, 상기 제2 키 값을 이용하여 상기 추출된 제1 장비 ID에 대응되는 인증코드를 암호화한 제1 인증코드 암호키를 상기 제2 장비로 전송하는 단계(d); 상기 제2 장비는 상기 제1 인증코드 암호키를 상기 제1 장비로 전송하는 단계(e); 및 상기 제1 장비가 상기 제1 키 값을 이용하여 상기 제1 인증코드 암호키를 복호화하여 제1 인증코드를 추출하고, 상기 추출된 제1 인증코드 및 상기 제1 장비에 등록된 인증코드를 비교하여 상기 제2 장비와의 인증을 수행하는 단계(f)를 포함하는 것을 특징으로 하는 인증서버를 이용한 제1 장비와 제2 장비간의 인증방법이 제공된다.According to another embodiment of the present invention, there is provided an authentication method between a first device and a second device using an authentication server, the method comprising the steps of: obtaining a device ID, an authentication code, a random number generation factor, And registering the authentication information of the first device in the first device, and registering the authentication information of the second device in the first device, the authentication information including at least one of the random number generation function and the key generation function, 2 step (a) of registering with the equipment; Wherein the first device generates a first key value using the first random number generated using the random number generation factor of the first device and the random number generation function and the key generation function, (B) transmitting a first equipment ID encryption key obtained by encrypting the equipment ID of the first equipment and an equipment identification number of the first equipment to the second equipment; (C) transmitting, by the second device, the encrypted first device ID encryption key and the device identification number of the first device to the authentication server; Wherein the authentication server generates a second key value using a second random number generated using a random number generation factor corresponding to the device identification number of the first device and the key generation function, Extracting a first device ID by decrypting the first device ID cryptographic key and generating a first authentication code cryptographic key by encrypting an authentication code corresponding to the extracted first device ID using the second key value, (D) transmitting to the second equipment; (E) sending the first authentication code encryption key to the first device; And the first device decrypts the first authentication code encryption key using the first key value to extract a first authentication code, and extracts the extracted first authentication code and the authentication code registered in the first device (F) performing authentication with the second device by comparing the first device and the second device with each other.
본 발명에 따르면, 기존의 인증 및 암호화 알고리즘의 결점을 보완한 것으로서, 데이터를 암호화고 이를 복호화 하는데 사용되는 장비 ID와 인증코드가 장비간에 사용되는 주 통신망이 아닌 다른 부가적인 경로로 상호 전달되어 보안성을 높이며, 장비 ID, 인증코드, 난수 생성 인수를 이용하여 생성된 별도의 키가 사용되어 데이터를 암호화하고 복호화 할 수 있으며, 난수 발생 시 난수 발생 규칙을 장비들간에 미리 공유함으로써 난수 불일치에 의한 복호화의 오류를 없앨 수 있는 장치들간의 인증방법을 제안하고자 한다.According to the present invention, the device ID and the authentication code, which are used for encrypting data and decrypting the data, are transmitted to an additional path other than the main communication network used between the devices, A separate key generated by using the equipment ID, the authentication code, and the random number generation factor can be used to encrypt and decrypt the data, and the random number generation rule can be previously shared among the devices when the random number is generated, We propose an authentication method between devices that can eliminate the error of decryption.
도 1은 본 발명의 일 실시예에 따른 장비들간의 블록도를 도시한 도면이다.
도 2은 본 발명의 일 실시예에 따른 장비들간의 인증 과정을 상세하게 도시한 도면이다.
도 3은 제1 장비와 제2 장비간의 상호 통신 시작시의 Three-way-handshake가 이루어지는 과정의 일례를 도시한 도면이다.
도 4는 복수의 제1 장비와 제2 장비간의 인증방법을 설명하기 위해 도시한 도면이다.
도 5는 본 발명의 다른 실시예에 따른 인증서버를 이용한 제1 장비와 제2 장비간의 인증방법을 도시한 순서도이다.1 is a block diagram of equipment according to an embodiment of the present invention.
FIG. 2 is a detailed view illustrating an authentication process between devices according to an exemplary embodiment of the present invention. Referring to FIG.
3 is a diagram illustrating an example of a process in which a three-way handshake is performed at the start of mutual communication between a first device and a second device.
4 is a diagram illustrating an authentication method between a first device and a second device.
5 is a flowchart illustrating an authentication method between a first device and a second device using an authentication server according to another embodiment of the present invention.
기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.The details of other embodiments are included in the detailed description and drawings.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 이하의 설명에서 어떤 부분이 다른 부분과 연결되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우뿐 아니라 그 중간에 다른 소자를 사이에 두고 전기적으로 연결되어 있는 경우도 포함한다. 또한, 도면에서 본 발명과 관계없는 부분은 본 발명의 설명을 명확하게 하기 위하여 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 동일한 도면 부호를 붙였다.BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention, and the manner of achieving them, will be apparent from and elucidated with reference to the embodiments described hereinafter in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments described below, but may be embodied in various forms. In the following description, it is assumed that a part is connected to another part, But also includes a case in which other elements are electrically connected to each other in the middle thereof. In the drawings, parts not relating to the present invention are omitted for clarity of description, and like parts are denoted by the same reference numerals throughout the specification.
본 발명은 장비들간의 인증방법에 관한 것으로서, 제1 장비와 제2 장비간의 상호 인증 시 키에 대한 교환이 이루어지는 공개키 암호화 방법과 달리, 본 발명은 장비들이 키를 교환하지 않고 통신 시작 시에 키를 각각 생성하는데 특징이 있다. 이하에서는, 공개키를 서로 교환하지 않으면서 상호 인증을 수행하는 인증방법에 대해 보다 상세하게 설명하도록 한다.Unlike a public key encryption method in which a key is exchanged for a mutual authentication between a first device and a second device, the present invention provides an authentication method between devices, Key, respectively. Hereinafter, an authentication method for performing mutual authentication without exchanging public keys will be described in more detail.
도 1은 본 발명의 일 실시예에 따른 장비의 구성을 도시한 블록도이다.1 is a block diagram illustrating a configuration of an apparatus according to an embodiment of the present invention.
장비(100)는 통신부(110), 제어부(120), 저장부(130) 및 인증모듈(140)을 포함할 수 있다.The
장비(100)는 다른 장비와의 상호 인증을 통해 인증이 되는 경우, 데이터를 송수신하는 다양한 장비 등을 포함할 수 있다. 일례로, 장비는 스마트 그리드 시스템에서의 원격 검침 시스템(AMI, Advanced Metering Infrastructure)을 구성하는 전력 단말 장치 및 스마트 미터등을 포함할 수 있다. 원격 검침 시스템은 스마트 그리드 환경에서 각 가정에서 사용되는 전력을 원격으로 검침하여 관리하고, 각 장치들 간 상호 인증을 수행하여 안전한 전력량을 전송하기 위한 검침 시스템이다. 이와 같은 원격 검침 시스템에서 전력 단말기와 스마트 미터 간의 통신에 해킹이 발생하는 경우, 전력 단말기의 검침량이 조작되거나, 소비자의 개인 정보가 노출 되는 등의 문제가 발생할 수 있다. 이와 같이 본 발명의 장비는 서로 데이터 통신을 수행하며, 상호 인증이 필요한 다양한 장비들을 포함할 수 있다.The
통신부(110)는 상호 인증이 수행된 다른 장비와 데이터를 송수신 하기 위한 것으로, 유선 방식 및 무선 방식뿐만 아니라 다양한 통신 방식을 통해서 다른 장치간의 데이터를 송수신할 수 있다. 더하여, 하나 이상의 통신 방식을 사용하여 데이터를 송수신할 수 있으며, 이를 위하여 통신부(110)는 각각 서로 다른 통신 방식에 따라서 데이터를 송수신하는 복수의 통신 모듈을 포함할 수 있다.The
제어부(120)는 다른 장치와의 통신 및 상호 인증을 위한 전반적인 제어를 수행한다.The
저장부(130)는 장비의 동작에 필요한 프로그램 및 데이터를 저장하며, 특히 본 발명에 의한 인증에 필요한 인증 정보를 저장한다. 여기서 인증정보는 장비 ID, 인증 코드, 난수 생성 인수, 난수 생성 함수, 키 생성 함수 등의 정보를 포함할 수 있다. The
이러한 저장부(130)는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(Magnetic Medical), CD-ROM(Compact Disk Read Only Memory), DVD(Digital Video Disk)와 같은 광 기록 매체(Optical Media), 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-Optical Media) 및 롬(ROM), 램(RAM, Random Access Memory), 플래시 메모리를 포함한다.The
상기의 인증정보의 저장은 보안이 중요하기 때문에, 제1 장비(100)와 제2 장비(200)간의 데이터 통신 경로 외의 다른 경로를 통해 저장이 수행될 수 있다. Storage of the authentication information may be performed through a path other than the data communication path between the
또한, 인증 정보는 인위적으로 읽어낼 수 없는 별도의 인증모듈(140)에 보관될 수 있으며, 인증모듈(140)은 접근이 허용된 장비만이 인증정보를 읽을 수 있도록 허용한다. 접근이 허용된 장비에 대한 판단은 외부에서 접근할 수 없는 특정 폐쇄된 통신망 내에 존재하는 장치나, 특정 장비 ID를 가진 장비로 제한될 수 있다. 이와 같은 인증모듈(140)은 장비의 일부로 포함되거나, 인증정보 배포를 위한 독립적인 모듈로 구현될 수 있다. 또한, 인증정보를 인증모듈(140)로부터 전자적인 방법이나 통신을 통하여 전송 시 블록 암호화 같이 안전한 암호화 방식으로 암호화된 형태로 전송될 수 있다.In addition, the authentication information can be stored in a
인증모듈(140)은 별도의 전원과 IC 칩을 포함할 수 있으며, 인증모듈이 제1 장비(100)에 장착될 시 상기 IC 칩에 저장된 난수 생성 인수를 이용하여 생성된 난수와 제어부(120)에서 제1 장비(100)의 저장부(130)에 미리 저장된 난수 생성 인수를 이용하여 생성된 난수가 동일한 경우 상기 제1 장비(100)는 상기 인증모듈(140)을 적법한 인증모듈로 인증하고, 상기 인증 모듈(130)에 저장된 장비 ID와 인증코드를 저장부(130)에 저장할 수 있다.The
이와 같이 인증모듈(140)을 제1 장비(100)에 장착할 때 인증과정을 수행하는 이유는 제1 장비(100)에 장착된 인증모듈(130)을 제3 자가 교환하여 해킹을 시도하는 것을 방지하기 위함이다.The authentication process is performed when the
또 다른 실시예에 따르면, 인증모듈(140)은 전원과 통신이 공급되는 인증모듈 장착용 장비에 장착되어 시간 동기화 서버를 통해 시각 동기화가 된 상태에서, 상기 인증모듈 장착용 장비로부터 분리되어 상기 제1 장비에 장착될 수 있다. 인증모듈은 자체 전원과 IC 칩을 갖고 있으므로, 인증모듈 장착용 장비로부터 분리된 경우에도 일정시간 동안 오차 없이 현재 시간 정보를 가진다. 제1 장비(100)의 제어부(120)는 시각 동기화 된 상태에서 인증모듈과 동일한 방법으로 난수를 발생시키고, 인증모듈이 장착된 후 인증모듈이 생성하는 난수와 제어부(120)에서 발생한 난수가 동일하면 제어부(120)는 인증모듈(140)로부터 장비 ID와 인증코드를 저장부(130)로 읽어올 수 있다. 인증모듈(140)과 제어부(120)는 시간 정보를 더 이용하여 난수를 생성하고, 이를 비교하여 인증을 수행할 수 도 있다.According to yet another embodiment, the
도 2은 본 발명의 일 실시예에 따른 장비들간의 인증 과정을 상세하게 도시한 도면이다.FIG. 2 is a detailed view illustrating an authentication process between devices according to an exemplary embodiment of the present invention. Referring to FIG.
도 2를 참조하면, 제1 장비(100)와 제2 장비(200)간의 상호 인증을 위해 제1 장비(100)와 제2 장비(200)에는 제1 장비(100)의 장비 ID, 인증코드 및 난수 생성 인수와 난수 생성 함수 중 적어도 하나를 포함하는 인증 정보가 미리 저장된다(S100). 이와 같은 인증 정보의 저장은 제1 장비(100)와 제2 장비(200)간의 데이터 통신 경로 외의 다른 경로를 통해 수행됨은 앞서 살펴본 바와 같다.Referring to FIG. 2, in order to perform mutual authentication between the
이어서, 제1 장비(100)는 제2 장비(200)와의 상호 인증을 위해 난수 생성 인수 및 난수 생성 함수를 이용하여 제1 난수를 생성하며, 제1 난수 및 키 생성 함수를 이용하여 제1 키 값을 생성한다(S110).Then, the
여기서, 난수 생성 인수(F)는 난수 생성을 위해 제1 장비(100)와 제2 장비(200)간의 상호 약속된 인수로서, 제1 장비(100)의 인증 시에는 제1 장비에 대한 난수 생성 인수(F)를 통해 난수를 생성한다.Here, the random number generation factor F is a mutually agreed factor between the
보다 상세하게, 제1 난수는 아래의 수학식 1을 통해 생성되며, 제1 키 값은 아래의 수학식 2를 통해 생성될 수 있다.More specifically, the first random number is generated by Equation (1) below, and the first key value can be generated by Equation (2) below.
여기서, 는 제1 난수, fn()은 난수 생성 함수, F는 난수 생성 인수를 각각 의미한다.here, Denotes a first random number, fn () denotes a random number generating function, and F denotes a random number generating factor.
여기서, 는 제1 키값, fk()는 키 생성 함수를 각각 의미한다.here, (K) denotes a first key value, and fk () denotes a key generation function.
상기 난수 생성 함수 및 키 생성 함수는 단계(S100)에서 제1 장비(100) 및 제2 장비(200)에 미리 저장되는 값으로서, 제1 장비(100) 및 제2 장비(200)가 서로 동일한 난수 생성 인수를 통해 난수를 생성하는 경우 동일한 키 값이 생성될 것이다The random number generation function and the key generation function are values previously stored in the
이어서, 제1 장비(100)는 제1 키 값을 이용하여 제1 장비(100)의 장비 ID를 암호화하여 장비 ID 암호키를 생성(S120)하고, 장비 ID 암호키를 제2 장비(200)로 전송한다(S130).The
장비 ID 암호키를 수신한 제2 장비(200)는 난수 생성 인수 및 난수 생성 함수를 이용하여 제2 난수를 생성하며, 제2 난수 및 키 생성 함수를 이용하여 제2 키 값을 생성한다(S140). 만약. 제2 장비(200)에 제1 장비(100)와 동일한 난수 생성 인수, 난수 생성 함수, 키 생성 함수가 저장되어 있다면, 제1 난수 및 제1 키 값과 동일한 제2 난수 및 제2 키 값이 생성될 것이다. 제2 난수 및 제2 키 값은 아래의 수학식 3 및 4를 통해 생성될 수 있다.The
여기서, 는 제2 난수를 의미한다.here, Means a second random number.
여기서, 는 제2 키 값을 의미한다.here, Quot; means a second key value.
제2 장비(200)는 제2 키 값을 이용하여 장비 ID 암호키를 복호화 하여 장비 ID를 추출한다(S150).The
이어서, 제2 장비(200)에 장비 ID 에 대응되어 저장된 인증코드를 제2 키 값을 이용하여 암호화하여 인증코드 암호키를 생성(S160) 한 후, 인증 코드 암호키를 제1 장비(100)로 전송한다(S170).Then, the authentication code stored in the
제1 장비(100)는 제1 키 값을 이용하여 인증코드 암호키를 복화화하여 인증코드를 추출(S175)하고, 추출된 인증코드 및 제1 장비(100)에 저장된 인증코드를 비교한다(S180).The
만약, 추출된 인증코드와 제1 장비(100)에 저장된 인증코드가 동일한 경우 제1 장비(100)와 제2 장비(200)간의 상호 인증이 이루어진 것으로 판단하고, 제1 장비(100)와 제2 장비(200)간의 데이터 통신을 시작한다(S185).If the extracted authentication code is identical to the authentication code stored in the
추출된 인증코드와 제1 장비(100)에 저장된 인증코드가 다른 경우 제1 장비(100)와 제2 장비(200)간의 인증이 실패한 것으로 판단하고, 제1 장비(100)와 제2 장비(200)간의 통신을 단절한다(S190).It is determined that the authentication between the
단계(S185)에서 제1 장비(100)는 제1 난수를 재 생성하며, 이전에 생성된 난수, 상기 재 생성된 난수 및 제1 키 값 중 적어도 하나를 이용하여 데이터를 암호화하여 제2 장비(200)로 전송하며, 제2 장비는 제2 데이터가 전송될 때마다 제2 난수를 재 생성하며, 이전에 생성된 제2 난수, 재 생성된 제2 난수 및 제 키 값 중 적어도 하나를 이용하여 데이터를 복호화할 수 있다. 즉, 본 발명은 제1 장비 및 제2 장비에서 동일하게 생성되는 난수를 이용하여 데이터를 암호화함으로써 데이터의 보안성을 높일 수 있다.In operation S185, the
일례로, 최초에 전송하는 데이터를 P1, 그 다음에 전송하는 데이터를 P2, 이런 식으로 N번째 전송되는 데이터를을 Pn이라고 가정하면For example, assuming that the data to be initially transmitted is P1, the data to be transmitted next is P2, and the data to be transmitted N-th in this way is Pn
, ,
, ,
와 같이 암호화 하고, 이것을 복호화한 결과는 으로 복호화되어서, 데이터와 다음번 데이터 암호화에 사용될 난수 값을 알 수 있어야 한다. 데이터를 받은 제2 장비(200)는 암호문을 복호화하여 데이터와 난수로 분리한다. 이 난수는 다음 번에 전송될 데이터의 복호화에 사용된다. And the result of decoding this is To be able to know the data and the random value to be used for the next data encryption. The
실제적인 구현은 The actual implementation is
, ,
와 같이 구현되는 것과,≪ / RTI >
과 같이 난수를 생성하는 함수인 fn()에 인수로 c를 사용하여 난수를 생성하고, 이 c를 함께 전송하는 구현도 가능하다. 또한, 난수를 통신상으로 전송하지 않고, 난수 생성 함수만 공유하여 암호화하고 복호화 하는 것도 가능할 것이다. It is also possible to generate a random number using c as an argument to fn (), a function that generates a random number, as shown below, and then send this c together. It is also possible to encrypt and decrypt the random number generation function by sharing only the random number generation function without transmitting the random number to the communication.
또한, 본 발명은 상기 제1 장비와 상기 제2 장비간의 데이터 전송 중 통신이 실패하는 경우, 최종 통신 성공에 사용된 난수를 사용하여 통신을 복원할 수 있다.In addition, the present invention can recover the communication using the random number used for the last communication success if the communication fails during data transmission between the first device and the second device.
본 발명은 장비들이 장비 ID, 인증코드, 난수 생성 인수, 난수 생성 함수, 키 생성 함수와 같은 인증정보를 미리 저장하고 있으므로, 각각의 장비들에서 동일한 난수 및 키 값을 생성할 수 있으므로 인증 시 키 정보를 교환할 필요가 없다. 이에 따라, 종래의 공개키 암호화 인증 방법의 키 정보를 교환하는 과정에서 발생하는 보안 취약점의 문제가 발생하지 않는다.Since the devices store authentication information such as device ID, authentication code, random number generation factor, random number generation function, and key generation function in advance, each device can generate the same random number and key value, There is no need to exchange information. Accordingly, there is no security vulnerability problem occurring in exchanging the key information of the conventional public key encryption authentication method.
또한, 본 발명은 제1 장비(100)와 제2 장비(200)간의 데이터 전송이 완료된 후 다시 통신 연결이 시도되는 경우, 제1 장비(100)와 제2 장비(200)간의 인증을 다시 수행한다. 본 발명의 난수 생성 함수는 난수 생성 시 이전에 생성된 난수와 다른 난수를 발생시킴으로 제1 장비(100)와 제2 장비가(200)가 인증할 때마다 제1 장비와 제2 장비에서 생성되는 키 값이 매번 달라지게 되어 보안의 신뢰성이 높아진다.
In addition, the present invention resets authentication between the
본 발명의 일 실시예에 따르면, 난수 만으로 충분한 길이의 키 값의 생성이 불가능 한 경우 제1 키 값 및 제2 키 값은 제2 장비의 ID를 더 이용하여 생성될 수 있으며 하기의 수학식 5와 같다. 이를 위해 제1 장비 및 제2 장비는 제2 장비의 장비 ID를 더 저장할 수 있다. According to an embodiment of the present invention, when it is impossible to generate a key value having a sufficient length only by a random number, the first key value and the second key value may be generated by further using the ID of the second device, . To this end, the first device and the second device may further store the device ID of the second device.
여기서, 는 제2 장비의 ID를 의미한다.here, Means the ID of the second device.
제1 장비는 제2 장비와의 인증을 수행할 시 제2 장비의 장비 ID를 미리 알 고 있으므로, 상기와 같이 제2 장비의 장비 ID를 더 이용하여 제1 키 값을 생성할 수 있으며, 제2 장비는 자신의 장비 ID를 더 이용하여 제2 키 값을 생성하게 된다.Since the first device knows the device ID of the second device in advance when performing authentication with the second device, it is possible to generate the first key value by further using the device ID of the second device as described above, 2 device generates a second key value by further using its own device ID.
본 발명의 다른 실시예에 따르면, 제1 장비(100)와 제2 장비(200)간의 통신이 TCP-IP 프로토콜을 통해 수행되어, NTP(Network Time Protocol)을 사용한 장비들간의 시각 동기화가 되는 환경이라면, 시간 정보를 더 사용하여 높은 수준의 신뢰성을 가지는 난수를 생성할 수 있다. 제1 장비(100) 및 제2 장비(200)는 사전에 설정된 난수 생성 인수(F)를 저장하고 있다. 이와 같은 난수 생성 인수와 함께 각 장비에서 NTP 시각을 msec로 환산한 후 이 값을 가지고 난수를 생성할 수 있다.According to another embodiment of the present invention, the communication between the
그러나, 제1 장비(100)와 제2 장비(200)간의 통신 시 각 장비 내부의 연산 시간이나 통신망에서 전송되는 시간에 의해 지연이 발생하므로 데이터 전송 시 발생하는 난수와 수신 시에 발생하는 난수가 달라질 수 있다. 이러한 오류를 최소화하기 위하여, 각 장비는 상호 통신을 할 때 TCP-IP의 Three-way-handshake가 이루어지는 과정에서의 일정 시점에서의 시간을 사용하여 난수 발생 오류를 최소화 한다. 여기서, Three-way-handshake란 TCP-IP프로토콜을 이용해서 통신을 하는 장비가 데이터를 전송하기 전에 먼저 정확한 전송을 보장하기 위해 상대 장비와 사전에 세션을 수립하는 과정을 의미한다.However, when communication between the
도 3은 제1 장비와 제2 장비간의 상호 통신 시작시의 Three-way-handshake가 이루어지는 과정의 일례를 도시한 도면이다.3 is a diagram illustrating an example of a process in which a three-way handshake is performed at the start of mutual communication between a first device and a second device.
도 3을 참조하면, 제1 장비(100)는 제2 장비(200)와의 통신 시작 시 SYN 신호를 제2 장비(200)로 전송하며, 제2 장비(200)는 SYN-ACK 신호를 제1 장비(100)로 전송한다. 제1 장비(100)는 ACK 신호를 제2 장비(200)로 전송하여 세션을 수립한다.3, the
제1 장비(100)는 제1 난수의 생성 시 제1 장비(100)가 제2 장비로 ACK 신호를 전송한 ACK 전송 시간() 및 기 설정된 시간 구간 값(D)을 통해 산출된 제1 전송시간을 더 이용하여 제1 난수를 생성할 수 있다.The
또한, 제2 장비(200)는 ACK 전송 시간()을 알 수 없으므로, 제2 장비(100)는 ACK 수신 시간()에서 SYN-ACK 전송 시간 ()를 빼서 2로 나누어서 구한 추정 ACK 전송시간() 및 기 설정된 시간 구간 값(D)을 통해 산출된 제2 전송시간을 더 이용하여 제2 난수를 생성할 수 있다. In addition, the
실제 ACK 전송 시간과 ACK 전송의 추정 시간은 오차가 발생할 수 있으므로, 시간을 일정 단위로 분할 한 기 설정된 시간 구간 값을 이용하여 실제 ACK 전송 시간과 ACK 전송의 추정 시간의 오차를 줄일 수 있다.Since an error may occur between the actual ACK transmission time and the estimated ACK transmission time, the error between the actual ACK transmission time and the estimated time of the ACK transmission can be reduced by using a predetermined time interval value obtained by dividing the time by a predetermined unit.
제1 전송시간 및 제2 전송시간은 아래의 수학식 6과 같다. The first transmission time and the second transmission time are expressed by Equation (6) below.
여기서, 는 제1 전송시간, 는 제2 전송시간, MOD()는 나머지 함수를 각각 의미한다. here, A first transmission time, And MOD () denotes a remaining function, respectively.
일례로,ACK 전송 시간()이 10040msec이며, 추정 ACK 전송시간()가 10038msec 이며, 시간 구간 값(D)가 500인 경우 제1 전송시간 = 10040 - 40(10040을 500으로 나눈 나머지 값) = 10000이며, 제2 전송시간 = 10038 - 38(10038을 500으로 나눈 나머지 값) = 10000으로 동일한 시간이 산출됨을 알 수 있다. 이와 같이 본 발명은 제1 장비(100)와 제2 장비(200)간의 시간 동기화 값인 제1 전송시간 및 제2 전송시간을 더 이용하여 동일한 제1 난수 및 제2 난수를 생성함으로써 높은 수준의 신뢰성을 가진 난수를 생성할 수 있다.For example, the ACK transmission time ( ) Is 10040 msec, and the estimated ACK transmission time ( ) Is 10038 msec. When the time interval value D is 500, the first transmission time = 10040 - 40 (remainder value obtained by dividing 10040 by 500) = 10000, and the second transmission time = 10038 - 38 (the remainder value obtained by dividing 10038 by 500) = 10000, the same time is calculated. As described above, the present invention generates the same first random number and second random number using the first transmission time and the second transmission time, which are time synchronization values between the
본 발명의 일 실시예에 따르면, 제1 장비(100)와 제2 장비(200)간의 시각 동기화의 오차를 해소하기 위해, 제1 장비(100)와 제2 장비(200)는 제1 전송 시간 및 제2 전송 시간을 시각 동기화 오차(AC)로 나눈 정수 값을 이용하여 제1 난수 및 제2 난수를 각각 생성할 수 있다. 이는 하기의 수학식 7과 같이 표현될 수 있다.According to an embodiment of the present invention, in order to eliminate the time synchronization error between the
여기서, 는 제1 전송시간을 시각 동기화 오차(AC)로 나눈 정수 값, 는 제2 전송시간을 시각 동기화 오차로 나눈 정수 값을 각각 의미한다.here, Is an integer value obtained by dividing the first transmission time by the time synchronization error (AC) Represents an integer value obtained by dividing the second transmission time by the time synchronization error.
본 발명의 다른 실시예에 따르면, 도 4에서와 같이 제2 장비(200)와 통신하는 제1 장비(100-1, 100-2,... 100-n)가 복수 개일 수 있다. 이 경우 제2 장비(200)는 어느 하나의 제1 장비로부터 인증 요청이 오는 경우, 상대방의 난수 생성 인수를 알 수가 없다. 이와 같은 문제를 해결하기 위해, 단계(S100)에서 제2 장비(200)는 단계(S100)에서 제1 장비들(100-1, 100-2,... 100-n) 각각의 장비 ID, 인증코드, 난수 생성 인수 및 장비 식별번호를 포함하는 인증정보 저장할 수 있다. 또한, 제1 장비들은 기존의 인증정보에 자신들의 장비 식별번호 정보를 더 저장할 수 있다.According to another embodiment of the present invention, as shown in FIG. 4, there may be a plurality of first devices 100-1, 100-2, ..., 100-n communicating with the
제2 장비(200)가 인증을 요청하는 제1 장비의 장비 식별번호를 알 수 있다면, 장비 식별번호에 대응되는 난수 생성 인수를 이용하여 인증을 요청하는 제1 장비와 동일한 난수 및 키 값을 생성함으로써 인증을 수행할 수 있을 것이다.If the
여기서, 제2 장비(200)에 저장되는 제1 장비들의 장비 식별번호(100-1, 100-2,... 100-n)는 OSI 7 Layer의 Network Layer를 통하여 전송되는 통신장치의 하드웨어 정보(MAC Address)나, 무선 환경에서의 제1 장비의 통신 모뎀 정보일 수 있다. 즉, 제1 장비들의 장비 식별번호가 MAC Address나 통신 모뎀 정보 인 경우 인증을 요청하는 제1 장비와의 통신 과정에서 제2 장비(200)는 제1 장비의 장비 식별번호를 추출할 수 있다. 따라서, 제2 장비(200)는 단계(S140)에서 인증을 요청하는 제1 장비의 장비 식별번호를 추출하고, 추출된 장비 식별번호에 대응되는 난수 생성 인수를 이용하여 제2 난수를 생성할 수 있다. 이 경우, 인증을 요청하는 제1 장비는 별도의 장비 식별번호를 제2 장비(200)로 전송할 필요가 없다.The device identification numbers 100-1, 100-2, ..., 100-n of the first devices stored in the
그러나, 사설망이 개입된 통신환경과 같이 상대방의 하드웨어 정보를 알아낼 수 없거나, 여러 개의 장비가 1개의 통신 하드웨어를 사용할 경우에는 제2 장비(200)는 인증을 요청하는 제1 장비의 장비 식별번호를 추출할 수 없다. 이와 같은 경우, 인증을 요청하는 제1 장비는 단계(S130)에서 장비 ID 암호키와 함께 자신의 장비 식별번호를 제2 장비(200)로 전송하며, 제2 장비(200)는 단계(S140)에서 수신된 장비 식별번호에 대응되는 난수 생성 인수를 이용하여 제2 난수를 생성할 수 있다.However, when the hardware information of the other party can not be obtained as in the communication environment in which the private network is interfaced, or when a plurality of devices use one communication hardware, the
도 5는 본 발명의 다른 실시예에 따른 인증서버를 이용한 제1 장비와 제2 장비간의 인증방법을 도시한 순서도이다.5 is a flowchart illustrating an authentication method between a first device and a second device using an authentication server according to another embodiment of the present invention.
도 5를 참조하면, 제1 장비(100) 및 제2 장비(200) 각각의 장비 ID, 인증코드, 난수 생성 인수, 장비 식별번호와 난수 생성 함수 및 키 생성 함수 중 적어도 하나를 포함하는 인증정보가 인증서버에 등록되며, 제1 장비(100)의 인증정보가 상기 제1 장비(100)에 등록되며, 제2 장비(200)의 인증정보가 상기 제2 장비에 등록된다.5, authentication information including at least one of a device ID, an authentication code, a random number generation factor, a device identification number, a random number generation function, and a key generation function of each of the
인증서버(300)를 이용하여 제1 장비(100)와 제2 장비(200)간의 인증을 하는 경우, 우선 제2 장비(200)와 인증서버(300)간의 상호 인증이 수행된 상태에서, 제1 장비(100)가 제2 장비(200)에 인증을 요청하면, 제2 장비(200)는 이 인증정보를 인증서버(300)로 전송하여 인증서버(300)로부터 지1 장비(100)의 인증 코드를 받아 제1 장비(100)로 전송한다.When authentication between the
보다 상세하게, 단계(S200)에서 제2 장비(200)는 제2 장비(200)의 난수 생성 인수 및 난수 생성 함수를 이용하여 생성된 제3 난수 및 상기 키 생성 함수를 이용하여 제3 키 값을 생성하며, 상기 제3 키 값을 이용하여 제2 장비(200)의 장비 ID를 암호화한 제3 장비 ID 암호키 및 제2 장비(200)의 장비 식별번호를 인증서버(300)로 전송한다.More specifically, in step S200, the
인증서버(300)는 단계(S210)에서, 제2 장비의 장비 식별번호에 대응되는 난수 생성 인수를 이용하여 생성된 제4 난수와 상기 키 생성 함수를 이용하여 제4 키 값을 생성하며, 상기 제4 키 값을 이용하여 제2 장비 ID 암호키를 복호화하여 제2 장비 ID를 추출하며, 상기 제4 키 값을 이용하여 추출된 제2 장비 ID에 대응되는 인증코드를 암호화한 제2 인증코드 암호키를 제2 장비(200)로 전송한다.The authentication server 300 generates a fourth key value using the fourth random number generated using the random number generation factor corresponding to the equipment identification number of the second device and the key generation function in step S210, Extracting a second device ID by decrypting the second device ID cryptographic key using the fourth key value, generating a second authentication code by encrypting the authentication code corresponding to the extracted second device ID using the fourth key value, And transmits the encryption key to the second device (200).
제2 장비(200)와 인증서버(300)는 제3 키 값을 이용하여 제2 인증코드 암호키를 복호화 하여 제2 인증코드를 추출하고, 추출된 제2 인증코드와 제2 장비(200)에 등록된 인증코드가 일치하는 경우 인증서버(300)와 인증이 수행된 것으로 판단한다.The
이어서, 단계(S220)에서 제1 장비(100)는 제1 장비(100)의 난수 생성 인수 및 상기 난수 생성 함수를 이용하여 생성된 제1 난수 및 상기 키 생성 함수를 이용하여 제1 키 값을 생성하며, 상기 제1 키 값을 이용하여 제1 장비(100)의 장비 ID를 암호화한 제1 장비 ID 암호키 및 제1 장비(100)의 장비 식별번호를 제2 장비(200)로 전송한다.Then, in step S220, the
제2 장비(200)는 단계(S230)에서 제1 장비 ID 암호키 및 제1 장비(100)의 장비 식별번호를 인증서버(300)로 전송한다.The
이어서, 인증서버(300)는 단계(S240)에서 인증 서버(300)는 제1 장비의 장비 식별번호에 대응되는 난수 생성 인수를 이용하여 생성된 제2 난수와 상기 키 생성 함수를 이용하여 제2 키 값을 생성하며, 상기 제2 키 값을 이용하여 상기 제1 장비 ID 암호키를 복호화하여 제1 장비 ID를 추출하며, 상기 제2 키 값을 이용하여 상기 추출된 제1 장비 ID에 대응되는 인증코드를 암호화한 제1 인증코드 암호키를 제2 장비(200)로 전송한다.Then, in step S240, the authentication server 300 transmits the second random number generated using the random number generation factor corresponding to the device identification number of the first device and the second random number generated using the key generation function to the second Extracts a first device ID by decrypting the first device ID cryptographic key using the second key value, extracts a first device ID corresponding to the extracted first device ID using the second key value, And transmits the first authentication code encryption key that has been encrypted with the authentication code to the
이어서, 제2 장비(200)는 단계(S250)에서, 상기 제1 인증코드 암호키를 제1 장비로 전송한다.Then, in step S250, the
마지막으로, 제1 장비는 상기 제1 키 값을 이용하여 상기 제1 인증코드 암호키를 복호화하여 제1 인증코드를 추출하고, 상기 추출된 제1 인증코드 및 제1 장비(100)에 등록된 인증코드를 비교하여 상기 제2 장비와의 인증을 수행한다.Finally, the first device decrypts the first authentication code encryption key using the first key value to extract a first authentication code, and extracts the first authentication code and the first authentication code, which are registered in the
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.As described above, the present invention has been described with reference to particular embodiments, such as specific elements, and specific embodiments and drawings. However, it should be understood that the present invention is not limited to the above- And various modifications and changes may be made thereto by those skilled in the art to which the present invention pertains. Accordingly, the spirit of the present invention should not be construed as being limited to the embodiments described, and all of the equivalents or equivalents of the claims, as well as the following claims, belong to the scope of the present invention .
100: 제1 장비 110: 통신부
120: 제어부 130: 저장부
140: 인증모듈 200: 제2 장비
300: 인증서버100: first equipment 110: communication unit
120: control unit 130:
140: authentication module 200: second device
300: authentication server
Claims (18)
상기 제1 장비의 장비 ID, 인증코드 및 난수 생성 인수와 난수 생성 함수 및 키 생성 함수 중 적어도 하나를 포함하는 인증정보를 상기 제1 장비 및 상기 제2 장비에 각각 저장하는 단계(a);
상기 제1 장비가 상기 난수 생성 인수 및 난수 생성 함수를 이용하여 제1 난수를 생성하며, 상기 제1 난수 및 상기 키 생성 함수를 이용하여 제1 키 값을 생성하는 단계(b);
상기 제1 장비가 상기 제1 키 값을 이용하여 상기 장비 ID를 암호화한 장비 ID 암호키를 상기 제2 장비로 전송하는 단계(c);
상기 제2 장비가 상기 난수 생성 인수를 이용하여 제2 난수를 생성하며, 상기 제2 난수 및 상기 키 생성 함수를 이용하여 제2 키 값을 생성하는 단계(d);
상기 제2 장비가 상기 제2 키 값을 이용하여 상기 장비 ID 암호키를 복호화 하여 장비 ID를 추출하고, 상기 제2 키 값을 이용하여 상기 추출된 장비 ID에 대응되는 인증코드를 암호화한 인증코드 암호키를 상기 제1 장비로 전송하는 단계(e);
상기 제1 장비가 상기 제1 키 값을 이용하여 상기 인증코드 암호키를 복호화하여 인증코드를 추출하고, 상기 추출된 인증코드 및 상기 제1 장비에 저장된 인증코드를 비교하여 인증을 수행하는 단계(f)를 포함하되,
상기 제1 장비에서 생성되는 제1 난수 및 상기 제2 장비에서 생성되는 제2 난수는 동일한 난수이며, 상기 제1 장비와 상기 제2 장비간의 데이터 통신이 시도될 때마다 상기 단계(b) 내지 단계(f)를 재수행하며, 상기 제1 장비 및 상기 제2 장비에서 생성되는 난수는 이전 인증단계에서 생성된 난수와 다른 값을 가지는 것을 특징으로 하는 제1 장비와 제2 장비간의 인증방법.In an authentication method between a first device and a second device,
(A) storing authentication information including at least one of a device ID, an authentication code, a random number generation factor, a random number generation function, and a key generation function of the first device in the first device and the second device, respectively;
(B) generating a first random number using the random number generation function and the random number generation function, and generating a first key value using the first random number and the key generation function;
(C) transmitting, by the first equipment, an equipment ID cryptographic key obtained by encrypting the equipment ID using the first key value to the second equipment;
(D) generating, by the second device, a second random number using the random number generation factor, and generating a second key value using the second random number and the key generation function;
The second device decrypts the device ID cryptographic key using the second key value to extract the device ID and encrypts the authentication code corresponding to the extracted device ID using the second key value, (E) transmitting an encryption key to the first device;
The first device decrypts the authentication code encryption key using the first key value to extract an authentication code, and performs authentication by comparing the extracted authentication code and the authentication code stored in the first device f)
Wherein the first random number generated by the first device and the second random number generated by the second device are the same random number, and each time data communication between the first device and the second device is attempted, (f), and the random number generated in the first device and the second device is different from the random number generated in the previous authentication step.
상기 단계(a)는 상기 제1 장비와 상비 제2 장비간의 데이터 통신 경로 외의 다른 경로를 통해 수행되는 것을 특징으로 하는 제1 장비와 제2 장비간의 인증방법.The method according to claim 1,
Wherein the step (a) is performed through a path other than the data communication path between the first equipment and the second equipment.
상기 단계(a)는, 상기 제1 장비 및 상기 제2 장비에 상기 제2 장비의 장비 ID를 더 저장할 수 있으며,
상기 단계(b) 및 상기 단계(d)는 상기 제2 장비의 장비 ID를 더 이용하여 상기 제1 키 값 및 상기 제2 키 값을 생성하는 것을 특징으로 하는 제1 장비와 제2 장비간의 인증방법.The method according to claim 1,
The step (a) may further store the equipment ID of the second equipment in the first equipment and the second equipment,
Wherein the step (b) and the step (d) further generate the first key value and the second key value by further using the device ID of the second device. Way.
상기 제1 장비와 상기 제2 장비간의 통신은 TCP-IP 프로토콜을 통해 수행되며,
상기 단계(b)는, 상기 제1 장비가 상기 제2 장비로 ACK 신호를 전송한 ACK 전송 시간 및 기 설정된 시간 구간 값을 통해 산출된 제1 전송시간을 더 이용하여 상기 제1 난수를 생성하며,
상기 단계(d)는 상기 제2 장비가 상기 제1 장비로 SYN-ACK 신호를 전송한 SYN-ACK 전송 시간, 상기 제2 장비가 상기 ACK 신호를 수신한 ACK 수신 시간 및 상기 기 설정된 시간 구간 값을 통해 산출된 제2 전송시간을 더 이용하여 상기 제2 난수를 생성하는 것을 특징으로 하는 제1 장비와 제2 장비간의 인증방법.The method according to claim 1,
Wherein communication between the first device and the second device is performed through a TCP-IP protocol,
The step (b) further generates the first random number by further using the first transmission time calculated based on the ACK transmission time and the predetermined time interval value in which the first equipment transmits the ACK signal to the second equipment ,
Wherein the step (d) includes: a SYN-ACK transmission time at which the second equipment transmits a SYN-ACK signal to the first equipment; an ACK reception time at which the second equipment receives the ACK signal; And generating the second random number by further using a second transmission time calculated through the first transmission time and the second transmission time.
상기 단계(b)는 상기 제1 전송시간을 시각 동기화 오차로 나눈 정수 값을 이용하여 상기 제1 난수를 생성하며,
상기 단계(d)는 상기 제2 전송시간을 시각 동기화 오차로 나눈 정수 값을 이용하여 상기 제2 난수를 생성하는 것을 특징으로 하는 제1 장비와 제2 장비간의 인증방법.5. The method of claim 4,
Wherein the step (b) generates the first random number using an integer value obtained by dividing the first transmission time by a time synchronization error,
Wherein the step (d) generates the second random number using an integer value obtained by dividing the second transmission time by the time synchronization error.
상기 제1 난수는 하기의 수학식을 이용하여 생성되는 것을 특징으로 하는 제1 장비와 제2 장비간의 인증방법.
여기서, 는 제1 전송시간, 는 상기 ACK 전송 시간, MOD는 나머지 함수, D는 기 설정된 시간 구간 값, Ac는 상기 시각 동기화 오차, 는 제1 전송시간을 시각 동기화 오차로 나눈 정수 값, 는 제1 난수, fn()은 난수 생성 함수, F는 난수 생성 규칙을 각각 의미함.6. The method of claim 5,
Wherein the first random number is generated using the following equation.
here, A first transmission time, , MOD is a remaining function, D is a preset time interval value, Ac is the time synchronization error, Is an integer value obtained by dividing the first transmission time by the time synchronization error, Is a first random number, fn () is a random number generating function, and F is a random number generating rule.
상기 제2 난수는 하기의 수학식을 이용하여 생성되는 것을 특징으로 하는 제1 장비와 제2 장비간의 인증방법.
여기서, 는 추정 ACK 전송 시간, 는 SYN-ACK 전송 시간, 는 ACK 수신 시간, 는 제2 전송 시간, MOD는 나머지 함수, Ac는 상기 시각 동기화 오차, 는 제2 전송시간을 시각 동기화 오차로 나눈 정수 값, 는 제2 난수, fn()은 난수 생성 함수, F는 난수 생성 규칙을 각각 의미함.6. The method of claim 5,
Wherein the second random number is generated using the following equation.
here, The estimated ACK transmission time, SYN-ACK transmission time, ACK reception time, , MOD is the remaining function, Ac is the time synchronization error, Is an integer value obtained by dividing the second transmission time by the time synchronization error, Is a second random number, fn () is a random number generating function, and F is a random number generating rule.
상기 인증정보는 상기 제1 장비에 포함되는 별도의 인증 모듈에 저장되는 것을 특징으로 하는 제1 장비와 제2 장비간의 인증방법.3. The method of claim 2,
Wherein the authentication information is stored in a separate authentication module included in the first device.
상기 인증 모듈은 별도의 전원과 IC 칩을 포함할 수 있으며, 상기 인증 모듈이 상기 제1 장비에 장착될 시 상기 IC 칩에 저장된 난수 생성 인수를 이용하여 생성된 난수와 상기 제1 장비에서 저장된 난수 생성 인수를 이용하여 생성된 난수가 동일한 경우 상기 제1 장비는 상기 인증 모듈을 인증하는 것을 특징으로 하는 제1 장비와 제2 장비간의 인증방법.9. The method of claim 8,
The authentication module may include a separate power source and an IC chip. When the authentication module is mounted on the first device, a random number generated using the random number generation factor stored in the IC chip and a random number stored in the first device Wherein the first device authenticates the authentication module when the generated random number is equal to the generated random number.
상기 인증모듈은 전원과 통신이 공급되는 인증모듈 장착용 장비에서 장착되어 시간 동기화 서버를 통해 시각 동기화가 된 상태에서, 상기 인증모듈 장착용 장비로부터 분리되어 상기 제1 장비에 장착될 수 있으며, 상기 인증모듈과 상기 제1 장비는 시간 정보를 더 이용하여 각각 생성된 난수를 비교하여 인증을 수행하는 것을 특징으로 하는 제1 장비와 제2 장비간의 인증방법.10. The method of claim 9,
The authentication module may be mounted on the authentication module mounting equipment supplied with communication with the power source and may be mounted on the first device separated from the authentication module mounting equipment in a state in which the time synchronization is performed through the time synchronization server, Wherein the authentication module and the first device compare the generated random numbers by further using time information to perform authentication.
상기 제2 장비와 통신하는 상기 제1 장비가 적어도 둘 이상인 경우,
상기 인증 정보는 상기 제1 장비의 장비 식별번호를 더 포함하며,
상기 단계(a)에서 상기 제2 장비에는 상기 제1 장비들 각각에 대한 인증정보가 저장되며,
상기 단계(d)는 상기 장비 ID 암호키를 전송한 제1 장비의 장비 식별번호를 추출하고, 상기 추출된 장비 식별번호에 대응되는 난수 생성 인수를 이용하여 상기 제2 난수를 생성하는 것을 특징으로 하는 제1 장비와 제2 장비간의 인증방법.The method according to claim 1,
And if the first equipment in communication with the second equipment is at least two,
Wherein the authentication information further includes a device identification number of the first device,
In the step (a), authentication information for each of the first devices is stored in the second device,
Wherein the step (d) extracts a device identification number of the first device that transmitted the device ID encryption key, and generates the second random number by using a random number generation factor corresponding to the extracted device identification number The authentication method between the first device and the second device.
상기 제1 장비들과 상기 제2 장비간의 통신이 TCP-IP 프로토콜을 통해 수행되는 경우, 상기 추출된 장비 식별번호는 상기 제1 장비의 물리적인 하드웨어 정보인 것을 특징으로 하는 제1 장비와 제2 장비간의 인증방법.12. The method of claim 11,
Wherein when the communication between the first devices and the second device is performed through the TCP-IP protocol, the extracted device identification number is physical hardware information of the first device. Authentication method between equipment.
상기 제1 장비들과 상기 제2 장비간의 통신이 무선 통신을 통해 수행되는 경우, 상기 추출된 장비 식별번호는 상기 제1 장비의 통신 모뎀 정보인 것을 특징으로 하는 제1 장비와 제2 장비간의 인증방법.12. The method of claim 11,
Wherein when the communication between the first devices and the second device is performed through wireless communication, the extracted device identification number is the communication modem information of the first device, and the authentication between the first device and the second device Way.
상기 제2 장비와 통신하는 상기 제1 장비가 적어도 둘 이상인 경우,
상기 인증 정보는 상기 제1 장비의 장비 식별번호를 더 포함하며,
상기 단계(a)에서 상기 제2 장비에는 상기 제1 장비들 각각에 대한 인증정보가 저장되며,
상기 단계(c)는 상기 제1 장비들 중 인증을 요청하는 제1 장비의 장비 식별번호를 상기 제2 장비로 더 전송하며,
상기 단계(d)는 상기 수신된 장비 식별번호에 대응되는 난수 생성 인수 및 상기 난수 생성 함수를 이용하여 상기 제2 난수를 생성하는 것을 특징으로 하는 제1 장비와 제2 장비간의 인증방법.The method according to claim 1,
And if the first equipment in communication with the second equipment is at least two,
Wherein the authentication information further includes a device identification number of the first device,
In the step (a), authentication information for each of the first devices is stored in the second device,
Wherein the step (c) further transmits, to the second device, the device identification number of the first device requesting authentication among the first devices,
Wherein the step (d) generates the second random number using a random number generation factor corresponding to the received equipment identification number and the random number generation function.
상기 단계(f) 이후에,
상기 제1 장비는 상기 제1 난수를 재 생성하며, 이전에 생성된 난수, 상기 재 생성된 난수 및 상기 제1 키 값 중 적어도 하나를 이용하여 데이터를 암호화하여 상기 제2 장비로 전송하며,
상기 제2 장비는 상기 제2 난수를 재 생성하며, 이전에 생성된 제2 난수, 상기 재 생성된 난수 및 상기 제2 키 값 중 적어도 하나를 이용하여 상기 데이터를 복호화하는 것을 특징으로 하는 제1 장비와 제2 장비간의 인증방법.The method according to claim 1,
After the step (f)
Wherein the first device regenerates the first random number and transmits data to the second device by encrypting the data using at least one of the previously generated random number, the regenerated random number, and the first key value,
Wherein the second device recovers the second random number and decrypts the data using at least one of a previously generated second random number, the regenerated random number, and the second key value. Authentication method between the device and the second device.
상기 제1 장비와 상기 제2 장비간의 데이터 전송 중 통신이 실패하는 경우, 최종 통신 성공에 사용된 난수를 사용하여 통신을 복원하는 것을 특징으로 하는 제1 장비와 제2 장비간의 인증방법.16. The method of claim 15,
Wherein the communication is restored by using a random number used for success in the final communication if communication fails during data transmission between the first device and the second device.
상기 제1 장비 및 상기 제2 장비 각각의 장비 ID, 인증코드, 난수 생성 인수, 장비 식별번호와 난수 생성 함수 및 키 생성 함수 중 적어도 하나를 포함하는 인증정보를 상기 인증서버에 등록하며, 상기 제1 장비의 인증정보를 상기 제1 장비에 등록하며, 상기 제2 장비의 인증정보를 상기 제2 장비에 등록하는 단계(a);
상기 제1 장비는 상기 제1 장비의 난수 생성 인수 및 상기 난수 생성 함수를 이용하여 생성된 제1 난수 및 상기 키 생성 함수를 이용하여 제1 키 값을 생성하며, 상기 제1 키 값을 이용하여 상기 제1 장비의 장비 ID를 암호화한 제1 장비 ID 암호키 및 상기 제1 장비의 장비 식별번호를 상기 제2 장비로 전송하는 단계(b);
상기 제2 장비는 상기 암호화된 제1 장비 ID 암호키 및 상기 제1 장비의 장비 식별번호를 상기 인증서버로 전송하는 단계(c);
상기 인증 서버는 상기 제1 장비의 장비 식별번호에 대응되는 난수 생성 인수를 이용하여 생성된 제2 난수와 상기 키 생성 함수를 이용하여 제2 키 값을 생성하며, 상기 제2 키 값을 이용하여 상기 제1 장비 ID 암호키를 복호화하여 제1 장비 ID를 추출하며, 상기 제2 키 값을 이용하여 상기 추출된 제1 장비 ID에 대응되는 인증코드를 암호화한 제1 인증코드 암호키를 상기 제2 장비로 전송하는 단계(d);
상기 제2 장비는 상기 제1 인증코드 암호키를 상기 제1 장비로 전송하는 단계(e); 및
상기 제1 장비가 상기 제1 키 값을 이용하여 상기 제1 인증코드 암호키를 복호화하여 제1 인증코드를 추출하고, 상기 추출된 제1 인증코드 및 상기 제1 장비에 등록된 인증코드를 비교하여 상기 제2 장비와의 인증을 수행하는 단계(f)를 포함하되,
상기 제1 장비에서 생성된 상기 인증 서버에서 생성된 제2 난수는 동일하며, 상기 제1 장비와 상기 제2 장비간의 데이터 통신이 시도될 때마다 상기 단계(b) 내지 단계(f)를 재 수행하며, 상기 제1 장비 및 상기 인증 서버에서 생성되는 난수는 이전 인증단계에서 생성된 난수와 다른 값을 가지는 것을 특징으로 하는 인증서버를 이용한 제1 장비와 제2 장비간의 인증방법.An authentication method between a first device and a second device using an authentication server,
And registers authentication information including at least one of a device ID, an authentication code, a random number generation factor, an equipment identification number, a random number generation function, and a key generation function of each of the first device and the second device in the authentication server, (A) registering the authentication information of the first device in the first device and the authentication information of the second device in the second device;
Wherein the first device generates a first key value using the first random number generated using the random number generation factor of the first device and the random number generation function and the key generation function, (B) transmitting a first equipment ID encryption key obtained by encrypting the equipment ID of the first equipment and an equipment identification number of the first equipment to the second equipment;
(C) transmitting, by the second device, the encrypted first device ID encryption key and the device identification number of the first device to the authentication server;
Wherein the authentication server generates a second key value using a second random number generated using a random number generation factor corresponding to the device identification number of the first device and the key generation function, Extracting a first device ID by decrypting the first device ID cryptographic key and generating a first authentication code cryptographic key by encrypting an authentication code corresponding to the extracted first device ID using the second key value, (D) transmitting to the second equipment;
(E) sending the first authentication code encryption key to the first device; And
The first device decrypts the first authentication code encryption key using the first key value to extract a first authentication code, and compares the extracted first authentication code and the authentication code registered in the first device (F) performing authentication with the second device,
The second random number generated by the authentication server generated by the first device is the same and the step (b) to step (f) are re-performed each time data communication between the first device and the second device is attempted Wherein the first device and the authentication server generate a random number different from the random number generated in the previous authentication step.
상기 단계(b) 이전에,
상기 제2 장비는 상기 제2 장비의 난수 생성 인수 및 상기 난수 생성 함수를 이용하여 생성된 제3 난수 및 상기 키 생성 함수를 이용하여 제3 키 값을 생성하며, 상기 제3 키 값을 이용하여 상기 제2 장비의 장비 ID를 암호화한 제3 장비 ID 암호키 및 상기 제2 장비의 장비 식별번호를 상기 인증서버로 전송하는 단계;
상기 인증 서버는 상기 제2 장비의 장비 식별번호에 대응되는 난수 생성 인수를 이용하여 생성된 제4 난수와 상기 키 생성 함수를 이용하여 제4 키 값을 생성하며, 상기 제4 키 값을 이용하여 상기 제2 장비 ID 암호키를 복호화하여 제2 장비 ID를 추출하며, 상기 제4 키 값을 이용하여 추출된 제2 장비 ID에 대응되는 인증코드를 암호화한 제2 인증코드 암호키를 상기 제2 장비로 전송하는 단계;
상기 제2 장비가 상기 제3 키 값을 이용하여 상기 제2 인증코드 암호키를 복호화하여 제2 인증코드를 추출하고, 상기 추출된 제2 인증코드 및 상기 제2 장비에 등록된 인증코드를 비교하여 상기 인증서버와의 인증을 수행하는 단계를 더 포함하는 것을 특징으로 하는 인증서버를 이용한 제1 장비와 제2 장비간의 인증방법.18. The method of claim 17,
Prior to step (b) above,
Wherein the second device generates a third key value using the third random number generated using the random number generation factor of the second device and the random number generation function and the key generation function, Transmitting a third equipment ID encryption key obtained by encrypting the equipment ID of the second equipment and an equipment identification number of the second equipment to the authentication server;
The authentication server generates a fourth key value using the fourth random number generated using the random number generation factor corresponding to the device identification number of the second device and the key generation function, Extracting a second device ID by decrypting the second device ID encryption key, and encrypting a second authentication code encryption key obtained by encrypting an authentication code corresponding to the extracted second device ID using the fourth key value, Transmitting to the equipment;
The second device decrypts the second authentication code encryption key using the third key value to extract a second authentication code, and compares the extracted second authentication code and the authentication code registered in the second device And performing authentication with the authentication server by using the authentication server.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140175248A KR101645705B1 (en) | 2014-12-08 | 2014-12-08 | Method for authentication between devices |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140175248A KR101645705B1 (en) | 2014-12-08 | 2014-12-08 | Method for authentication between devices |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20160069612A KR20160069612A (en) | 2016-06-17 |
KR101645705B1 true KR101645705B1 (en) | 2016-08-08 |
Family
ID=56343697
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140175248A KR101645705B1 (en) | 2014-12-08 | 2014-12-08 | Method for authentication between devices |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101645705B1 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102380822B1 (en) * | 2017-09-21 | 2022-04-01 | 삼성전자주식회사 | Method for operating internet-of-things system |
US11074335B2 (en) | 2017-09-21 | 2021-07-27 | Samsung Electronics Co., Ltd. | Method for operating an internet-of-things system |
CN116418509A (en) * | 2021-12-31 | 2023-07-11 | 圣邦微电子(北京)股份有限公司 | Sequence number generation circuit and method for authenticating external equipment by terminal |
CN116668203B (en) * | 2023-08-02 | 2023-10-20 | 浙江大华技术股份有限公司 | Device authentication method, internet of things device, authentication platform and readable storage medium |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050021999A1 (en) * | 2003-03-03 | 2005-01-27 | Riverhead Networks Inc. | Using TCP to authenticate IP source addresses |
KR101452124B1 (en) * | 2013-08-01 | 2014-10-16 | 덕성여자대학교 산학협력단 | Method for Device Authentication and Session Key Generation Based on Encryption in Internet of Things |
-
2014
- 2014-12-08 KR KR1020140175248A patent/KR101645705B1/en active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050021999A1 (en) * | 2003-03-03 | 2005-01-27 | Riverhead Networks Inc. | Using TCP to authenticate IP source addresses |
KR101452124B1 (en) * | 2013-08-01 | 2014-10-16 | 덕성여자대학교 산학협력단 | Method for Device Authentication and Session Key Generation Based on Encryption in Internet of Things |
Also Published As
Publication number | Publication date |
---|---|
KR20160069612A (en) | 2016-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6168415B2 (en) | Terminal authentication system, server device, and terminal authentication method | |
EP3318043B1 (en) | Mutual authentication of confidential communication | |
KR102015201B1 (en) | Efficient start-up for secured connections and related services | |
CN104219228B (en) | A kind of user's registration, user identification method and system | |
CN105162772B (en) | A kind of internet of things equipment certifiede-mail protocol method and apparatus | |
US9621545B2 (en) | System and method for connecting client devices to a network | |
US9647994B2 (en) | System and method for grid based cyber security | |
CN111835752A (en) | Lightweight authentication method based on equipment identity and gateway | |
CN111435913B (en) | Identity authentication method and device for terminal of Internet of things and storage medium | |
JP6548172B2 (en) | Terminal authentication system, server device, and terminal authentication method | |
US20150341178A1 (en) | Certificate issuing system, client terminal, server device, certificate acquisition method, and certificate issuing method | |
CN103763356A (en) | Establishment method, device and system for connection of secure sockets layers | |
CN103685323A (en) | Method for realizing intelligent home security networking based on intelligent cloud television gateway | |
CN111614621B (en) | Internet of things communication method and system | |
CN108809633B (en) | Identity authentication method, device and system | |
US11070537B2 (en) | Stateless method for securing and authenticating a telecommunication | |
JP6167990B2 (en) | Signature verification system, verification device, and signature verification method | |
KR101645705B1 (en) | Method for authentication between devices | |
KR100668446B1 (en) | Safe --method for transferring digital certificate | |
EP2905717A1 (en) | Device and method for device and user authentication | |
KR102415628B1 (en) | Method and apparatus for authenticating drone using dim | |
CN116318637A (en) | Method and system for secure network access communication of equipment | |
CN114531235B (en) | Communication method and system for end-to-end encryption | |
CN111641539B (en) | Safety interaction method for household electrical appliance | |
CN114255530B (en) | Communication security guarantee method and system for intelligent lockset of power supply equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
FPAY | Annual fee payment |
Payment date: 20190627 Year of fee payment: 4 |