KR20130077171A - Authentication method between server and device - Google Patents

Authentication method between server and device Download PDF

Info

Publication number
KR20130077171A
KR20130077171A KR1020110145742A KR20110145742A KR20130077171A KR 20130077171 A KR20130077171 A KR 20130077171A KR 1020110145742 A KR1020110145742 A KR 1020110145742A KR 20110145742 A KR20110145742 A KR 20110145742A KR 20130077171 A KR20130077171 A KR 20130077171A
Authority
KR
South Korea
Prior art keywords
server
parameter
key
secret
authentication
Prior art date
Application number
KR1020110145742A
Other languages
Korean (ko)
Other versions
KR101297648B1 (en
Inventor
최진영
김영진
이송희
Original Assignee
고려대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 고려대학교 산학협력단 filed Critical 고려대학교 산학협력단
Priority to KR1020110145742A priority Critical patent/KR101297648B1/en
Publication of KR20130077171A publication Critical patent/KR20130077171A/en
Application granted granted Critical
Publication of KR101297648B1 publication Critical patent/KR101297648B1/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/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/3013Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the discrete logarithm problem, e.g. ElGamal or Diffie-Hellman systems
    • 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/3297Cryptographic 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 involving time stamps, e.g. generation of time stamps

Landscapes

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

Abstract

PURPOSE: An authentication method between a server and a device is provided to prevent an identification value of the device from being exposed even when the server is attacked from the outside. CONSTITUTION: A server (110) receives an ID as a unique identification value of a device (120) and a hashed password from the device, which is an encryption key, generating the encryption key and transmitting the generated encryption key to the device (S210). The device transmits a communication request message to the server to establish a communication channel with the server (S220). The server generates a secret first random key to certify the device requesting the communication, generates a public key based on a Diffie-Hellman algorithm (S230), and transmits the generated public key to the device (S240). The device generates a secret second random key and generates a private key using the generated secret second random key and the public key (S250). The device generates a parameter for authentication using the private key and transmits the parameter to the server (S260,S270). The server verifies the device by obtaining the ID of the device from the received parameter (S280). [Reference numerals] (110) Server; (120) Device; (S210) Transmit an encryption key generated by coding an ID of the device and a hashed password; (S220) Transmit a communication request message; (S230) Generate a first secret random key and a first public key; (S240) Transmit the first public key; (S250) Generate a secret second random key and generate a private key using the generated secret second random key and the first public key; (S260) Generate at least one parameter by using the private key; (S270) Transmit at least one parameter; (S280) Verify the device by obtaining the ID of the device from the parameter; (S290) Obtain a time stamp value from the parameter and generate a separate parameter by coding the obtained time stamp value; (S300) Transmit the generated parameter; (S310) Obtain a time stamp value by decoding the received parameter; (S320) Verify the server by comparing the obtained time stamp value with the pre-generated time stamp value

Description

서버와 디바이스간 인증방법{Authentication method between server and device}Authentication method between server and device}

본 발명은 서버와 디바이스간 인증방법에 관한 것으로, 특히 서버가 공격자에 의해 공격을 받더라도 서버와 디바이스간 통신채널 구축을 위한 상호 인증을 안전하게 수행할 수 있는 서버와 디바이스간 인증방법에 관한 것이다.
The present invention relates to an authentication method between a server and a device, and more particularly, to an authentication method between a server and a device that can securely perform mutual authentication for establishing a communication channel between a server and a device even when the server is attacked by an attacker.

최근 들어, 디지털 기술의 발달로 인하여 인터넷, 컴퓨터 등의 기기들이 인간의 생활에 영향을 많이 미치고 있다. 또한 네트워크의 발달로 인하여 컴퓨터, 스마트 폰 등의 디바이스들 간의 통신을 위한 기술들도 관심을 많이 받고 있다.Recently, due to the development of digital technology, devices such as the Internet, computers, and the like have much influence on human life. Also, due to the development of networks, technologies for communication between devices such as computers and smart phones are also receiving much attention.

이러한 기술 중 대표적인 기술이 장치 대 장치(M2M: Machine to Machine) 통신이다. 장치 대 장치 통신은 유무선 통신 방식을 이용하여 디바이스와 서버 사이의 데이터 전송을 위한 통신을 지원하는 원격 관리 및 제어 솔루션을 나타낸다. 예를 들어, 장치 대 장치 통신은 일련의 기구들을 컴퓨터의 본체에서부터 가전제품 등의 일상제품들까지 연결하고 사용이 가능하도록 해준다. 이러한 개념은 기계들이나 기기들이 원격지에서 이동 통신망을 통해서 자신의 데이터를 전송하는 것이 가능하다. 또한 점차적으로 장치 대 장치 통신의 개념은 단순한 이동 통신망의 개념을 넘어 유무선 네트워크를 활용하는 개념으로 확장되고 있는 것이 현재 추세이다. A representative of these technologies is machine to machine (M2M) communication. Device-to-device communication represents a remote management and control solution that supports communication for data transfer between device and server using wired or wireless communication. For example, device-to-device communication allows a series of devices to be connected and used from the computer's main body to everyday products such as home appliances. This concept allows machines or devices to transmit their data remotely over mobile networks. In addition, the concept of device-to-device communication is gradually being extended to the concept of using a wired or wireless network beyond the concept of a mobile communication network.

하지만 이러한 종래의 장치 대 장치 통신기술은 통신채널 구축을 위한 상호 인증 시, 장치에 대한 고유의 식별값을 서버에 저장하도록 하는데, 이때 상기 서버가 공격자 또는 악의적인 목적을 가진 장치에 의해 공격을 받는 경우, 상기 장치의 고유한 식별값이 서버 공격에 의해 외부로 노출되어, 악용되는 문제점이 발생했다. However, such a conventional device-to-device communication technology, when mutual authentication for establishing a communication channel, stores a unique identification value of a device in a server, where the server is attacked by an attacker or a device having a malicious purpose. In this case, a unique identification value of the device is exposed to the outside by a server attack, thereby causing a problem of exploitation.

상술한 바와 같이, 서버와 디바이스간 인증방법에 대한 선행기술을 살펴보면 다음과 같다. As described above, the prior art of the authentication method between the server and the device is as follows.

선행기술 1은 한국공개특허공보 제2011-0117564호(2011.10.27)로서, 장치 대 장치 서비스를 제공하기 위해 디바이스를 활성화시키는 방법 및 시스템에 관한 것이다. 이러한 선행기술 1은 핸드폰과 달리 항상 네트워크에서 디바이스의 연결 및 이동성을 관리하고 있지 않은 카메라, 전자책(eBook), Home Appliance 등에게 네트워크 초기화 서비스를 제공하기 위해 필요한 디바이스의 접근성을 보장하기 위한 장치 대 장치 서비스를 제공하기 위해 디바이스를 활성화시킨다. Prior art 1 relates to Korean Patent Laid-Open No. 2011-0117564 (October 27, 2011), which relates to a method and a system for activating a device to provide a device to device service. This prior art 1, unlike a mobile phone, is a device for ensuring accessibility of a device required to provide a network initialization service to a camera, an ebook, a home appliance, etc. that do not always manage the connection and mobility of a device in a network. Activate the device to provide device services.

선행기술 2는 한국등록특허공보 제1029366호(2011.04.07)로서, M2M 장치에서의 가입자 인증 정보 저장 방법 및 이를 위한 구조에 관한 것이다. 이러한 선행기술 2는 스마트카드 형태로 제공되던 가입자 인증 정보를 M2M 장치에 저장시켜, M2M장치의 크기를 감소시킬 뿐만 아니라, M2M 장치의 가입자 인증 정보 확인을 위하여, 스마트 카드를 삽입할 필요가 없으므로, M2M 장치의 크기를 줄여 휴대성을 증가시킬 수 있다. 또한, 스마트 카드가 삽입되던 공간을 다른 부가 기능을 제공하는 회로의 구현 공간으로서 확보할 수 있게 됨에 따라, M2M 장치에 다양한 기능을 추가적으로 부가할 수 있다.
Prior art 2 relates to a method for storing subscriber authentication information in M2M device and a structure therefor as Korean Patent Publication No. 1029366 (2011.04.07). The prior art 2 stores the subscriber authentication information provided in the form of a smart card in the M2M device, not only reduces the size of the M2M device, but also does not need to insert a smart card to check the subscriber authentication information of the M2M device. Portability can be increased by reducing the size of the M2M device. In addition, as the space where the smart card is inserted can be secured as an implementation space of a circuit providing other additional functions, various functions can be added to the M2M device.

상기와 같은 종래 기술의 문제점을 해결하기 위해, 본 발명은 서버와 디바이스간 통신 채널 구축을 위한 인증 시, 상기 디바이스의 고유한 식별값을 상기 서버에 저장하지 않고, 키교환을 통해 상기 서버와 디바이스간에 상호 인증을 안전하게 수행할 수 있는 서버와 디바이스간 인증방법을 제공하고자 한다.
In order to solve the problems of the prior art as described above, the present invention does not store a unique identification value of the device in the server, when the authentication for establishing a communication channel between the server and the device, the server and the device through a key exchange To provide a method of authentication between a server and a device that can securely perform mutual authentication.

위와 같은 과제를 해결하기 위한 본 발명의 한 실시 예에 따른 서버와 디바이스간 통신채널 구축을 위해 수행되는 서버와 디바이스간 인증 방법은 상기 서버가 상기 디바이스로부터 수신한 상기 디바이스의 ID 및 해시된 패스워드를 암호화하여 생성한 암호화키를 상기 디바이스로 전송하는 암호화키전송단계; 상기 디바이스가 상기 서버로 통신채널을 구축하기 위한 통신요청메시지를 전송하는 통신요청단계; 상기 서버가 제1 비밀랜덤키를 생성하고, 디피헬만(Diffie-Hellman) 알고리즘을 이용하여 제1 공개키를 생성한 후, 생성한 제1 공개키를 상기 디바이스로 전송하는 공개키전송단계; 상기 디바이스가 제2 비밀랜덤키를 생성하고, 상기 제2 비밀랜덤키 및 제1 공개키를 이용하여 상기 디바이스와 서버간에 상호 공유되는 비밀키를 생성하는 비밀키생성단계; 상기 디바이스가 상기 비밀키를 이용하여 상기 서버와의 인증을 위해 사용되는 적어도 하나의 파라미터를 생성한 후, 생성된 적어도 하나의 파라미터를 상기 서버로 전송하는 파라미터전송단계; 상기 서버가 상기 적어도 하나의 파라미터로부터 암호화키를 획득하고, 자신의 서버비밀키를 이용해 상기 암호화키를 복호화한 후, 상기 디바이스의 ID를 획득하여 상기 디바이스에 대한 인증을 수행하고, 상기 적어도 하나의 파라미터로부터 타임스탬프값을 획득하고, 획득한 타임스탬프값을 암호화하여 파라미터를 생성하여 상기 디바이스로 전송하는 디바이스인증단계; 및 상기 디바이스가 상기 타임스탬프값을 암호화하여 생성된 파라미터를 복호화하여 타임스탬프값을 획득하고, 획득한 타임스탬프값을 기생성된 타임스탬프값과 비교하여 상기 서버를 인증하는 서버인증단계;를 포함하는 것을 특징으로 한다.In order to solve the above problems, a server and device authentication method performed for establishing a communication channel between a server and a device according to an embodiment of the present invention includes an ID and a hashed password of the device received by the server from the device. An encryption key transmission step of transmitting an encryption key generated by encryption to the device; A communication request step of transmitting, by the device, a communication request message for establishing a communication channel to the server; A public key transmission step of generating, by the server, a first secret random key, generating a first public key using a Diffie-Hellman algorithm, and then transmitting the generated first public key to the device; A secret key generation step of generating, by the device, a second secret random key and a secret key shared between the device and the server using the second secret random key and the first public key; A parameter transmission step of generating, by the device, at least one parameter used for authentication with the server using the secret key, and then transmitting the generated at least one parameter to the server; The server obtains an encryption key from the at least one parameter, decrypts the encryption key using its server secret key, obtains an ID of the device, performs authentication on the device, and at least one of A device authentication step of obtaining a time stamp value from a parameter, encrypting the obtained time stamp value, generating a parameter, and transmitting the generated parameter to the device; And a server authentication step in which the device decrypts the parameter generated by encrypting the time stamp value to obtain a time stamp value, and authenticates the server by comparing the obtained time stamp value with a pre-generated time stamp value. Characterized in that.

보다 바람직하게는 상기 서버가 상기 디바이스로부터 상기 디바이스의 ID 및 해시된 패스워드를 수신하는 ID패스워드수신과정; 상기 서버가 수신한 상기 디바이스의 ID 및 해시된 패스워드를 자신의 서버비밀키를 이용하여 암호화하는 암호화과정; 및 상기 서버가 상기 디바이스의 ID 및 해시된 패스워드를 자신의 서버비밀키를 이용해 암호화하여 생성된 암호화키를 상기 디바이스로 전송하는 암호화키전송과정;을 포함하는 암호화키전송단계를 포함할 수 있다. More preferably, the ID password receiving process for the server to receive the ID and the hashed password of the device from the device; Encrypting the ID and the hashed password of the device received by the server using its server secret key; And an encryption key transmission step of transmitting, by the server, the encryption key generated by encrypting the ID and the hashed password of the device by using the server secret key to the device.

특히, 상기 디바이스가 상기 서버로부터 수신한 상기 암호화키를 저장하는 암호화키저장과정;을 더 포함하는 암호화키전송단계를 포함할 수 있다. In particular, an encryption key transmission step of storing the encryption key received by the device from the server; may further include an encryption key transmission step.

보다 바람직하게는 상기 디바이스가 자신만이 알고 있는 제2 비밀랜덤키를 생성하는 비밀랜덤키생성과정; 상기 디바이스가 상기 제2 비밀랜덤키를 디피헬만 알고리즘에 기초하여 제1 파라미터를 생성하는 제1파라미터생성과정; 및 상기 디바이스가 상기 제1 파라미터 및 상기 제1 공개키를 이용하여 비밀키를 생성하는 비밀키생성과정;을 포함하는 비밀키생성단계를 포함할 수 있다. More preferably, the device generates a secret random key generating a second secret random key that only the device knows; A first parameter generation process for the device to generate the second secret random key based on a Diffelmann algorithm; And a secret key generation process, wherein the device generates a secret key using the first parameter and the first public key.

보다 바람직하게는 상기 디바이스가 상기 암호화키를 상기 비밀키를 이용해 암호화하여 제2 파라미터를 생성하는 제2파라미터생성과정; 상기 디바이스가 자신의 패스워드를 해시하여 해시된 패스워드를 생성하는 패스워드해시과정; 상기 디바이스가 랜덤값 및 타임스탬프값을 생성하는 랜덤값타임스탬프값생성과정; 상기 디바이스가 자신의 ID와, 상기 랜덤값 및 타임스탬프값을 스트링결합한 후, 상기 해시된 패스워드를 이용해 암호화하여 제3 파라미터를 생성하는 제3파라미터생성과정; 및 상기 디바이스가 상기 제1 내지 제3 파라미터를 상기 서버로 전송하는 파라미터전송과정; 을 포함하는 파라미터전송단계를 포함할 수 있다. More preferably, the device for generating a second parameter by encrypting the encryption key using the secret key to generate a second parameter; A password hashing process of the device hashing its own password to generate a hashed password; A random value timestamp value generating step of the device generating a random value and a timestamp value; A third parameter generation process of generating, by the device, a string parameter combination of its ID, the random value and the timestamp value, and then encrypting using the hashed password to generate a third parameter; And a parameter transmitting step of transmitting, by the device, the first to third parameters to the server. It may include a parameter transmission step comprising a.

보다 바람직하게는 상기 서버가 상기 디바이스로부터 수신한 적어도 하나의 파라미터 중 제1 파라미터를 이용하여 비밀키를 생성하는 비밀키생성과정; 상기 서버가 상기 비밀키를 이용해 상기 디바이스로부터 수신한 적어도 하나의 파라미터 중 제2 파라미터를 복호화하여 암호화키를 획득하는 암호화키획득과정; 상기 서버가 상기 암호화키를 통해 자신의 서버비밀키를 이용한 암호화여부를 확인하여 상기 디바이스에 대한 인증을 수행하는 제1 디바이스인증과정; 상기 서버가 자신의 서버비밀키를 이용해 상기 암호화키를 복호화하여 상기 디바이스의 ID 및 해시된 패스워드를 획득하는 디바이스정보획득과정; 상기 서버가 해시된 패스워드를 이용해 상기 디바이스로부터 수신한 제3 파라미터를 복호화하여 상기 디바이스에 대한 ID를 획득하는 ID획득과정; 상기 서버가 상기 암호화키로부터 획득한 ID와, 상기 제3 파라미터로부터 획득한 ID간 동일여부를 확인하여 상기 디바이스를 인증하는 제2 디바이스인증과정; 및 상기 서버가 상기 디바이스로부터 수신한 제3 파라미터 중 상기 랜덤값과, 상기 타임스탬프값에 1을 더한 값을 스트링결합한 후, 상기 제2 파라미터를 이용해 암호화하여 제4 파라미터를 생성하고, 생성된 상기 제4 파라미터를 상기 디바이스로 전송하는 제4 파라미터전송과정;을 포함하는 디바이스인증단계를 포함할 수 있다. More preferably, the server generates a secret key using the first parameter of the at least one parameter received from the device; An encryption key acquiring process, wherein the server acquires an encryption key by decrypting a second parameter among at least one parameter received from the device using the secret key; A first device authentication process in which the server performs authentication on the device by checking whether the server uses an encryption key of the server through the encryption key; A device information acquisition process, wherein the server acquires the ID and the hashed password of the device by decrypting the encryption key using its server secret key; Obtaining an ID for the device by the server decrypting the third parameter received from the device using the hashed password; A second device authentication process of authenticating the device by the server confirming whether the ID obtained from the encryption key and the ID obtained from the third parameter are the same; And string combining the random value from the third parameter received from the device with the time stamp value plus 1, and then encrypting the second parameter to generate a fourth parameter. And a fourth parameter transmitting step of transmitting a fourth parameter to the device.

보다 바람직하게는 상기 디바이스가 상기 서버로부터 수신한 제4 파라미터를 복호화하여 랜덤값 및 타임스탬프값을 획득하는 랜덤값타임스탬프값획득과정; 및 상기 디바이스가 상기 제4 파라미터를 복호화하여 획득한 상기 랜덤값 및 타임스탬프값에 대하여, 상기 서버로 전송한 제3 파라미터에 포함된 랜덤값 및 타임스탬프값과 동일한지 여부를 비교하여 상기 서버의 인증을 수행하는 서버인증과정;을 포함하는 서버인증단계를 포함할 수 있다.
More preferably, a random value timestamp value acquisition process of obtaining a random value and a timestamp value by decoding the fourth parameter received by the device from the server; And comparing the random value and the timestamp value obtained by decoding the fourth parameter by the device to be equal to the random value and the timestamp value included in the third parameter transmitted to the server. It may include a server authentication step including; server authentication process for performing the authentication.

본 발명의 서버와 디바이스간 인증방법은 디바이스의 고유한 식별값을 서버에 저장하지 않고, 서버와 디바이스간 키 교환을 통해 상호 인증을 수행됨에 따라 상기 서버가 외부로부터 공격을 받더라도 상기 디바이스의 식별값이 노출되는 것을 방지할 수 있는 효과가 있다. The authentication method between the server and the device of the present invention does not store the unique identification value of the device in the server, and as the mutual authentication is performed through the key exchange between the device and the device, even if the server is attacked from the outside, the identification value of the device This has the effect of preventing exposure.

또한, 본 발명의 서버와 디바이스간 인증방법은 서버에 디바이스의 고유한 식별값인 ID 및 패스워드를 저장하지 않고, 서버와 디바이스간에 키교환을 수행하기 때문에, 상기 서버가 공격을 받더라도 디바이스의 고유한 식별값이 외부로 노출되는 것을 방지함에 따라, 스푸핑 공격 및 도스 공격 등의 발생을 사전에 방지할 수 있는 효과가 있다. In addition, the authentication method between the server and the device of the present invention performs a key exchange between the server and the device without storing the ID and password, which are unique identification values of the device, in the server. As the identification value is prevented from being exposed to the outside, the spoofing attack and the DOS attack can be prevented from occurring in advance.

더불어, 본 발명의 서버와 디바이스간 인증방법은 서버와 디바이스간에 키교환이 이루어짐에 따라, 직접적인 데이터 송수신이 발생하기 전, 상호간에 인증을 수행하여 보다 안전한 데이터 송수신이 이루어지도록 하는 효과가 있다.
In addition, the authentication method between the server and the device of the present invention, as a key exchange between the server and the device, there is an effect that more secure data transmission and reception by performing authentication between each other, before direct data transmission and reception occurs.

도 1은 본 발명의 일 실시 예에 따른 서버와 디바이스간 인증 방법의 순서도이다.
도 2는 본 발명의 암호화키전송단계의 세부과정을 나타낸 순서도이다.
도 3은 본 발명의 비밀키생성단계의 세부과정을 나타낸 순서도이다.
도 4는 본 발명의 파라미터전송단계의 세부과정을 나타낸 순서도이다.
도 5는 본 발명의 디바이스인증단계의 세부과정을 나타낸 순서도이다.
1 is a flowchart illustrating an authentication method between a server and a device according to an embodiment of the present invention.
2 is a flow chart showing the detailed process of the encryption key transmission step of the present invention.
3 is a flow chart showing the detailed process of the secret key generation step of the present invention.
4 is a flowchart illustrating a detailed process of the parameter transmission step of the present invention.
5 is a flowchart showing the detailed process of the device authentication step of the present invention.

이하, 본 발명을 바람직한 실시 예와 첨부한 도면을 참고로 하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며, 여기에서 설명하는 실시 예에 한정되는 것은 아니다. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT Hereinafter, the present invention will be described in detail with reference to preferred embodiments and accompanying drawings, which will be easily understood by those skilled in the art. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein.

특히, 본 발명에서 사용되는 디바이스란, 개별적인 고유의 기능을 가진 장치로서, 휴대폰, PDA(Personal Digital Assistant), 컴퓨터, 노트북, MP3 플레이어, 카메라, 텔레메틱스기, 게임기, 헬스기, 스마트 단말 등을 나타낸다.In particular, the device used in the present invention is a device having an individual unique function, and represents a mobile phone, a personal digital assistant (PDA), a computer, a notebook computer, an MP3 player, a camera, a telematics machine, a game machine, a fitness device, a smart terminal, and the like. .

이하, 도 1을 참조하여, 본 발명의 서버와 디바이스간 인증 방법에 대하여 자세히 살펴보도록 한다. Hereinafter, the authentication method between the server and the device of the present invention will be described in detail with reference to FIG. 1.

도 1은 본 발명의 일 실시 예에 따른 서버와 디바이스간 인증 방법의 순서도이다. 1 is a flowchart illustrating an authentication method between a server and a device according to an embodiment of the present invention.

도 1에 도시된 바와 같이, 본 발명의 서버와 디바이스간 인증 방법은 본격적인 인증과정을 수행하기에 앞서, 암호화키를 생성하는 사전과정이 먼저 수행된다. 이러한 사전과정을 살펴보면, 서버(110)가 디바이스(120)로부터 상기 디바이스(120)에 대한 고유한 식별값인 ID 및 해시된 패스워드 H(pwd)를 수신하고, 이를 암호화하여 암호화키 s를 생성한 후, 생성된 암호화키 s를 상기 디바이스(120)로 전송한다(S210). As shown in FIG. 1, in the authentication method between the server and the device of the present invention, prior to performing an authentic authentication process, a preliminary process of generating an encryption key is first performed. Looking at this preliminary process, the server 110 receives an ID and a hashed password H (pwd) which is a unique identification value for the device 120 from the device 120, and encrypts it to generate an encryption key s. Thereafter, the generated encryption key s is transmitted to the device 120 (S210).

이러한 과정 S210을 도 2을 참조하여 보다 자세히 살펴보도록 한다. This process S210 will be described in more detail with reference to FIG. 2.

도 2는 본 발명의 암호화키전송단계의 세부과정을 나타낸 순서도이다. 2 is a flow chart showing the detailed process of the encryption key transmission step of the present invention.

도 2에 도시된 바와 같이, 먼저, 상기 디바이스(120)가 자신의 고유한 식별값인 ID와, 패스워드 pwd를 해시하여 생성되는 해시된 패스워드 H(pwd)를 상기 서버(110)로 전송함으로써, 상기 서버(110)가 상기 디바이스(120)의 ID 및 해시된 패스워드 H(pwd)를 수신한다(S211). As shown in FIG. 2, first, the device 120 transmits an ID, which is its own identification value, and a hashed password H (pwd) generated by hashing a password pwd, to the server 110. The server 110 receives the ID of the device 120 and the hashed password H (pwd) (S211).

이어서, 상기 서버(110)가 상기 디바이스(120)로부터 앞서 과정 S211을 통해 수신한 상기 디바이스(120)의 ID 및 해시된 패스워드 H(pwd)를 자신의 서버비밀키 N을 이용해 암호화하여 암호화키 s 를 생성한다(S212). 이때, 생성된 암호화키 s를 수식으로 표현하면 s = {ID∥H(pwd)N} 와 같다. Subsequently, the server 110 encrypts the ID and the hashed password H (pwd) of the device 120 received from the device 120 through the process S211 using its server secret key N to encrypt the encryption key s. To generate (S212). In this case, when the generated encryption key s is expressed by a formula, it is equal to s = {ID ∥H (pwd) N}.

이에 따라, 상기 서버(110)는 이와 같이 생성된 암호화키 s를 상기 디바이스(120)로 전송한다(S213). Accordingly, the server 110 transmits the encryption key s generated as described above to the device 120 (S213).

이와 같이, 상기 서버(110)로부터 암호화키 s를 수신한 상기 디바이스(120)는 수신한 상기 암호화키 s를 내부 메모리에 저장한다(S214). In this way, the device 120 receiving the encryption key s from the server 110 stores the received encryption key s in the internal memory (S214).

다시 도 1로 돌아가서, 상기 서버(110)로부터 암호화키 s를 수신한 상기 디바이스(120)는 상기 서버(110)와의 통신채널 구축을 위해 통신요청 메시지 request를 상기 서버(110)로 전송한다(S220). 1 again, the device 120 receiving the encryption key s from the server 110 transmits a communication request message request to the server 110 to establish a communication channel with the server 110 (S220). ).

이에 따라, 상기 서버(110)는 통신을 요청한 상기 디바이스(120)을 인증하기 위하여, 제1 비밀랜덤키 rs를 생성하고, 디피헬만(Diffie-Hellman) 알고리즘에 기초하여 공개키 Y를 생성하고(S230), 생성된 상기 공개키 Y를 상기 디바이스(120)로 전송한다(S240). 이때, 상기 공개키 Y는 grsmod p를 통해 생성될 수 있다. 또한, 여기서 사용되는 상기 디피헬만 알고리즘은 두 사용자가 사전에 어떠한 비밀 교환 없이도 공중 통신망 환경에서 공통키를 교환하게 해주는 알고리즘을 나타내는 것으로, 가장 오래된 공개키 암호화시스템으로 이산 구조의 복잡함을 활용하는 것을 특징으로 한다. Accordingly, the server 110 generates a first secret random key rs to authenticate the device 120 requesting communication, and generates a public key Y based on a Diffie-Hellman algorithm ( S230) and transmits the generated public key Y to the device 120 (S240). In this case, the public key Y may be generated through g rs mod p. In addition, the Diffelmann algorithm used herein represents an algorithm that allows two users to exchange a common key in a public communication network environment without any secret exchange in advance, and utilizes the complexity of the discrete structure as the oldest public key encryption system. It is done.

이후, 상기 디바이스(120)가 제2 비밀랜덤키 rd를 생성하고, 생성된 상기 제2 비밀랜덤키 rd 및 공개키 Y를 이용하여 비밀키 Z를 생성한다(S250). 이때, 상기 비밀키 Z를 수식으로 표현하면 Z = H((B)rd mod P)이며, 이러한 비밀키 Z는 상기 서버(110)와 디바이스(120) 사이에 서로 공유된다. Thereafter, the device 120 generates a second secret random key rd and generates a secret key Z using the generated second secret random key rd and the public key Y (S250). In this case, when the secret key Z is expressed by a formula, Z = H ((B) rd mod P), and the secret key Z is shared between the server 110 and the device 120.

이하, 도 3을 참조하여 상기 S250과정에 대하여 보다 자세히 살펴보도록 한다. Hereinafter, the S250 process will be described in more detail with reference to FIG. 3.

도 3은 본 발명의 비밀키생성단계의 세부과정을 나타낸 순서도이다.3 is a flow chart showing the detailed process of the secret key generation step of the present invention.

도 3에 도시된 바와 같이, 디바이스(120)가 자신만이 알고 있는 제2 비밀랜덤키 rd를 먼저 생성하고(S251), 생성된 상기 제2 비밀랜덤키 rd를 디피헬만(Diffie-Hellman) 알고리즘을 통해 제1 파라미터 X를 생성한다(S252). 이때, 상기 제1 파라미터 X는 grdmod P를 통해 생성될 수 있다. As shown in FIG. 3, the device 120 first generates a second secret random key rd that only it knows (S251), and uses the Diffie-Hellman algorithm to generate the second secret random key rd. Through the first parameter X is generated (S252). In this case, the first parameter X may be generated through g rd mod P.

이후, 상기 디바이스(120)는 앞서 과정 S252를 통해 생성한 제1 파라미터 X 및 과정 S230을 통해 생성된 공개키 Y를 이용하여 비밀키 Z를 생성한다(S253). Thereafter, the device 120 generates a secret key Z by using the first parameter X generated in step S252 and the public key Y generated in step S230 (S253).

다시 도 1로 돌아가서, 상기 디바이스(120)는 앞서 과정 S253을 통해 생성한 상기 비밀키 Z를 이용하여 서버(110)와의 인증을 위해 사용되는 적어도 하나의 파라미터 D, G를 생성한다(S260). 1 again, the device 120 generates at least one parameter D and G used for authentication with the server 110 using the secret key Z generated in step S253 (S260).

이하, 도 4를 참조하여, 과정 S260에 대하여 보다 자세히 살펴보도록 한다. Hereinafter, the process S260 will be described in more detail with reference to FIG. 4.

도 4는 본 발명의 파라미터전송단계의 세부과정을 나타낸 순서도이다.4 is a flowchart illustrating a detailed process of the parameter transmission step of the present invention.

도 4에 도시된 바와 같이, 디바이스(120)가 앞서 과정 S210을 통해 상기 서버(110)로부터 수신하여 내부 메모리에 저장한 암호화키 s를 과정 S250을 통해 생성한 비밀키 Z를 이용해 암호화하여 제2 파라미터 D를 생성하고(S261), D = {s}Z와 같이 나타낼 수 있다. As shown in FIG. 4, the device 120 encrypts the encryption key s received from the server 110 through the step S210 and stored in the internal memory by using the secret key Z generated through the step S250. The parameter D may be generated (S261) and expressed as D = {s} Z.

이어서, 상기 디바이스(120)는 자신의 패스워드 pwd를 해시하여 해시된 패스워드 C를 생성하고, C = H(pwd)와 같이 나타낼 수 있다(S262). Subsequently, the device 120 may hash its own password pwd to generate a hashed password C, and may be expressed as C = H (pwd) (S262).

이에 더하여, 상기 디바이스(120)는 서버(110)와의 세션이 정상적으로 이루어졌는지 확인하기 위한 랜덤값 rdr 및 재사용공격으로부터 안전한 키교환을 위한 타임스탬프값 td을 각각 생성한다(S263).In addition, the device 120 generates a random value rdr for checking whether the session with the server 110 is normally performed and a time stamp value td for secure key exchange from the reuse attack (S263).

이후, 상기 디바이스(120)가 자신의 ID와, 앞서 생성된 상기 랜덤값 rdr 및 타임스탬프값 td을 스트링결합하고, 그 스트링결합결과를 앞서 과정 S262를 통해 생성한 해시된 패스워드 C를 이용해 암호화하여 제3 파라미터 G를 생성한다(S264). 이때, 상기 제3 파라미터 G를 수식으로 나타내면, G = {rdr∥ID∥td}C 와 같다. Thereafter, the device 120 string-combines its ID, the random value rdr and the timestamp value td previously generated, and encrypts the string-combination result using the hashed password C generated through the step S262. A third parameter G is generated (S264). At this time, when the third parameter G is expressed by a formula, it is equal to G = {rdr | ID |

이에 따라, 상기 디바이스(120)는 앞서 과정 S252를 통해 생성한 제1 파라미터 X 와, 상기 과정 S261을 통해 생성한 제2 파라미터 D 및 상기 과정 S264를 통해 생성한 제3 파라미터 G를 서버(110)로 전송한다(S270).Accordingly, the device 120 may generate the first parameter X generated through the process S252, the second parameter D generated through the process S261, and the third parameter G generated through the process S264. Transfer to (S270).

다시 도 1로 돌아가서, 상기 서버(110)는 상기 디바이스(120)로부터 수신한 적어도 하나의 파라미터 X, D, G 로부터 디바이스(120)의 ID를 획득하여 상기 디바이스(120)에 대한 인증을 수행한다(S280). 1, the server 110 obtains an ID of the device 120 from at least one parameter X, D, or G received from the device 120 to perform authentication on the device 120. (S280).

이하 도 5를 참조하여, 상기 과정 S280에 대하여 보다 자세히 살펴보도록 한다. Hereinafter, the process S280 will be described in more detail with reference to FIG. 5.

도 5는 본 발명의 디바이스인증단계의 세부과정을 나타낸 순서도이다.5 is a flowchart showing the detailed process of the device authentication step of the present invention.

도 5에 도시된 바와 같이, 서버(110)가 디바이스(120)로부터 수신한 파라미터 X, D, G 중 제1 파라미터 X를 이용하여 비밀키 Z를 생성한다(S281). 이때, 상기 비밀키 Z를 수식으로 나타내면 Z = H((X) rs mod P)와 같다. 이러한 상기 서버(110)의 비밀키 Z 생성과정을 통해, 상기 비밀키 Z가 서버(110)와 디바이스(120) 사이에서 공유되는 것을 알 수 있다. As shown in FIG. 5, the server 110 generates a secret key Z using the first parameter X among the parameters X, D, and G received from the device 120 (S281). In this case, the secret key Z is expressed by a formula equal to Z = H ((X) rs mod P). Through the process of generating the secret key Z of the server 110, it can be seen that the secret key Z is shared between the server 110 and the device 120.

이후, 상기 서버(110)는 상기 디바이스(120)로부터 수신한 파라미터 X, D, G 중 제2 파라미터 D를 앞서 과정 S281을 통해 생성한 비밀키 Z를 이용해 복호화하여 암호화키 s를 획득한다(S282). Thereafter, the server 110 obtains the encryption key s by decrypting the second parameter D among the parameters X, D, and G received from the device 120 using the secret key Z generated through the process S281 (S282). ).

또한, 상기 서버(110)는 앞서 과정 S281을 통해 획득한 상기 암호화키 s가 자신의 서버비밀키 N으로 암호화되었는지 여부를 확인하고, 이를 통해 디바이스(120)에 대한 1차인증을 수행한다(S283). In addition, the server 110 checks whether the encryption key s obtained through the process S281 is encrypted with its own server secret key N, and performs the first authentication of the device 120 through this (S283). ).

상기 디바이스(120)에 대한 1차인증을 수행한 상기 서버(110)가 상기 암호화키 s를 자신의 서버비밀키 N을 이용해 복호화하여, 상기 디바이스(120)의 ID 및 해시된 패스워드 C를 획득한다(S284). The server 110, which has performed the first authentication of the device 120, decrypts the encryption key s using its own server secret key N to obtain the ID of the device 120 and the hashed password C. (S284).

이후, 상기 서버(110)는 앞서 과정 S270을 통해 수신한 제3 파라미터 G에 대하여, 앞서 과정 S284를 통해 획득한 해시된 패스워드 C를 이용해 복호화하여 상기 디바이스(120)에 대한 ID를 획득한다(S285). Thereafter, the server 110 acquires an ID for the device 120 by decrypting the third parameter G received through the process S270 using the hashed password C obtained through the process S284 (S285). ).

이에 따라, 상기 서버(110)는 과정 S284를 통해 나타난 바와 같이, 상기 암호화키s로부터 획득한 디바이스의 ID 및 과정 S285를 통해 나타난 바와 같이, 상기 제3 파라미터 G로부터 획득한 ID를 각각 얻게 된다. Accordingly, the server 110 obtains the ID of the device obtained from the encryption key s as shown in step S284 and the ID obtained from the third parameter G as shown in step S285.

이러한, 상기 서버(110)는 상기 암호화키 s 로부터 획득한 디바이스(120)의 ID와, 상기 제3 파라미터 G로부터 획득한 디바이스(120)의 ID를 상호 비교하여 동일여부를 확인하고, 동일한 경우에 상기 디바이스(120)에 대한 2차인증을 완료한다(S286). In this case, the server 110 compares the ID of the device 120 obtained from the encryption key s with the ID of the device 120 obtained from the third parameter G and confirms whether they are the same. The second authentication for the device 120 is completed (S286).

이후, 상기 서버(110)가 {rdr∥ID∥td}C로 이루어진 상기 제3 파라미터 G에 포함된 랜덤값 rdr 과, 타임스탬프값 td에 1을 더한 값을 상호 스트링결합하고, 그 스트링결합결과를 상기 제2 파라미터 D를 이용해 암호화하여 제4 파라미터 K를 생성한다(S290). 이때, 생성된 상기 제4 파라미터 K를 수식으로 나타내면, K = {rdr∥td+1}D 와 같다. Subsequently, the server 110 string-combines a random value rdr included in the third parameter G including {rdr∥ID∥td} C and a value obtained by adding 1 to the timestamp value td, and the string combination result. Is encrypted using the second parameter D to generate a fourth parameter K (S290). In this case, when the generated fourth parameter K is expressed by a formula, K = {rdr∥td + 1} D.

상기 서버(110)는 이와 같이 생성된 상기 제4 파라미터 K를 디바이스(120)로 전송한다(S300).The server 110 transmits the fourth parameter K generated as described above to the device 120 (S300).

이후, 상기 디바이스(120)는 상기 서버(110)로부터 수신한 상기 제4 파라미터 K를 앞서 과정 S261을 통해 생성한 상기 제2 파라미터 D를 이용해 복호화하여 랜덤값 rdr 및 타임스탬프값 td를 획득한다(S310). Thereafter, the device 120 decodes the fourth parameter K received from the server 110 by using the second parameter D generated in step S261 to obtain a random value rdr and a timestamp value td ( S310).

이에 따라, 상기 디바이스(120)는 앞서 과정 S310을 통해 상기 제4 파라미터 K 로부터 획득한 랜덤값 rdr 및 타임스탬프값 td가 앞서 과정 S270을 통해 서버(110)로 전송된 제3 파라미터 G 에 포함된 랜덤값 rdr 및 타임스탬프값 td 와 동일한지 여부를 확인함으로써, 서버(110)에 대한 인증을 수행한다(S320).Accordingly, the device 120 includes the random value rdr and the timestamp value td obtained from the fourth parameter K in step S310 in the third parameter G previously transmitted to the server 110 through step S270. By checking whether the random value rdr and the timestamp value td are the same, authentication is performed on the server 110 (S320).

이러한 과정을 통해 상기 서버(110)와 디바이스(120)간에 상호 인증이 완료되고, 인증이 완료된 서버와 디바이스 사이에 통신채널이 구축되어, 이후 서버와 디바이스가 데이터 송수신을 안전하게 수행하게 된다.Through this process, mutual authentication is completed between the server 110 and the device 120, and a communication channel is established between the server and the device where the authentication is completed, and then the server and the device perform data transmission and reception safely.

또한 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 장치의 예로는 ROM, RAM, CD-ROM, DVD±ROM, DVD-RAM, 자기 테이프, 플로피 디스크, 하드 디스크(hard disk), 광데이터 저장장치 등이 있다. 더불어, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 장치에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The computer readable recording medium also includes any type of recording device that stores data that can be read by a computer system. Examples of the computer readable recording medium include ROM, RAM, CD-ROM, DVD 占 ROM, DVD-RAM, magnetic tape, floppy disk, hard disk, optical data storage, and the like. In addition, the computer-readable recording medium can be distributed over network coupled computer devices so that the computer-readable code is stored and executed in a distributed fashion.

본 발명의 서버와 디바이스간 인증방법은 디바이스의 고유한 식별값을 서버에 저장하지 않고, 서버와 디바이스간 키 교환을 통해 상호 인증을 수행됨에 따라 상기 서버가 외부로부터 공격을 받더라도 상기 디바이스의 식별값이 노출되는 것을 방지할 수 있는 효과가 있다. The authentication method between the server and the device of the present invention does not store the unique identification value of the device in the server, and as the mutual authentication is performed through the key exchange between the device and the device, even if the server is attacked from the outside, the identification value of the device This has the effect of preventing exposure.

또한, 본 발명의 서버와 디바이스간 인증방법은 서버에 디바이스의 고유한 식별값인 ID 및 패스워드를 저장하지 않고, 서버와 디바이스간에 키교환을 수행하기 때문에, 상기 서버가 공격을 받더라도 디바이스의 고유한 식별값이 외부로 노출되는 것을 방지함에 따라, 스푸핑 공격 및 도스 공격 등의 발생을 사전에 방지할 수 있는 효과가 있다. In addition, the authentication method between the server and the device of the present invention performs a key exchange between the server and the device without storing the ID and password, which are unique identification values of the device, in the server. As the identification value is prevented from being exposed to the outside, the spoofing attack and the DOS attack can be prevented from occurring in advance.

더불어, 본 발명의 서버와 디바이스간 인증방법은 서버와 디바이스간에 키교환이 이루어짐에 따라, 직접적인 데이터 송수신이 발생하기 전, 상호간에 인증을 수행하여 보다 안전한 데이터 송수신이 이루어지도록 하는 효과가 있다.In addition, the authentication method between the server and the device of the present invention, as a key exchange between the server and the device, there is an effect that more secure data transmission and reception by performing authentication between each other, before direct data transmission and reception occurs.

상기에서는 본 발명의 바람직한 실시 예에 대하여 설명하였지만, 본 발명은 이에 한정되는 것이 아니고 본 발명의 기술 사상 범위 내에서 여러 가지로 변형하여 실시하는 것이 가능하고 이 또한 첨부된 특허청구범위에 속하는 것은 당연하다.
While the present invention has been described in connection with what is presently considered to be practical exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, Do.

110: 서버 120: 디바이스110: server 120: device

Claims (8)

서버와 디바이스간 통신채널 구축을 위해 수행되는 서버와 디바이스간 인증 방법에 있어서,
상기 서버가 상기 디바이스로부터 수신한 상기 디바이스의 ID 및 해시된 패스워드를 암호화하여 생성한 암호화키를 상기 디바이스로 전송하는 암호화키전송단계;
상기 디바이스가 상기 서버로 통신채널을 구축하기 위한 통신요청메시지를 전송하는 통신요청단계;
상기 서버가 제1 비밀랜덤키를 생성하고, 디피헬만(Diffie-Hellman) 알고리즘에 기초하여 제1 공개키를 생성한 후, 생성한 제1 공개키를 상기 디바이스로 전송하는 공개키전송단계;
상기 디바이스가 제2 비밀랜덤키를 생성하고, 상기 제2 비밀랜덤키 및 제1 공개키를 이용하여 상기 디바이스와 서버간에 상호 공유되는 비밀키를 생성하는 비밀키생성단계;
상기 디바이스가 상기 비밀키를 이용하여 상기 서버와의 인증을 위해 사용되는 적어도 하나의 파라미터를 생성한 후, 생성된 적어도 하나의 파라미터를 상기 서버로 전송하는 파라미터전송단계;
상기 서버가 상기 적어도 하나의 파라미터로부터 암호화키를 획득하고, 자신의 서버비밀키를 이용해 상기 암호화키를 복호화한 후, 상기 디바이스의 ID를 획득하여 상기 디바이스에 대한 인증을 수행하고, 상기 적어도 하나의 파라미터로부터 타임스탬프값을 획득하고, 획득한 타임스탬프값을 암호화하여 파라미터를 생성하여 상기 디바이스로 전송하는 디바이스인증단계; 및
상기 디바이스가 상기 타임스탬프값을 암호화하여 생성된 파라미터를 복호화하여 타임스탬프값을 획득하고, 획득한 타임스탬프값을 기생성된 타임스탬프값과 비교하여 상기 서버를 인증하는 서버인증단계;
를 포함하는 것을 특징으로 하는 서버와 디바이스간 인증 방법.
In the authentication method between the server and the device performed for establishing a communication channel between the server and the device,
An encryption key transmission step of transmitting, by the server, an encryption key generated by encrypting the ID and the hashed password of the device received from the device to the device;
A communication request step of transmitting, by the device, a communication request message for establishing a communication channel to the server;
A public key transmission step of the server generating a first secret random key, generating a first public key based on a Diffie-Hellman algorithm, and then transmitting the generated first public key to the device;
A secret key generation step of generating, by the device, a second secret random key and a secret key shared between the device and the server using the second secret random key and the first public key;
A parameter transmission step of generating, by the device, at least one parameter used for authentication with the server using the secret key, and then transmitting the generated at least one parameter to the server;
The server obtains an encryption key from the at least one parameter, decrypts the encryption key using its server secret key, obtains an ID of the device, performs authentication on the device, and at least one of A device authentication step of obtaining a time stamp value from a parameter, encrypting the obtained time stamp value, generating a parameter, and transmitting the generated parameter to the device; And
A server authentication step in which the device decrypts the parameter generated by encrypting the time stamp value to obtain a time stamp value, and authenticates the server by comparing the obtained time stamp value with a pre-generated time stamp value;
Authentication method between the server and the device comprising a.
제1항에 있어서,
상기 암호화키전송단계는
상기 서버가 상기 디바이스로부터 상기 디바이스의 ID 및 해시된 패스워드를 수신하는 ID패스워드수신과정;
상기 서버가 수신한 상기 디바이스의 ID 및 해시된 패스워드를 자신의 서버비밀키를 이용하여 암호화하는 암호화과정; 및
상기 서버가 상기 디바이스의 ID 및 해시된 패스워드를 자신의 서버비밀키를 이용해 암호화하여 생성된 암호화키를 상기 디바이스로 전송하는 암호화키전송과정;
을 포함하는 것을 특징으로 하는 서버와 디바이스간 인증 방법.
The method of claim 1,
The encryption key transmission step
An ID password receiving process, wherein the server receives an ID and a hashed password of the device from the device;
Encrypting the ID and the hashed password of the device received by the server using its server secret key; And
Transmitting an encryption key generated by the server to encrypt the ID and the hashed password of the device using its server secret key to the device;
Authentication method between the server and the device, characterized in that it comprises a.
제2항에 있어서,
상기 암호화키전송단계는
상기 디바이스가 상기 서버로부터 수신한 상기 암호화키를 저장하는 암호화키저장과정;
을 더 포함하는 것을 특징으로 하는 서버와 디바이스간 인증 방법.
The method of claim 2,
The encryption key transmission step
An encryption key storage process of storing, by the device, the encryption key received from the server;
Authentication method between the server and the device, characterized in that it further comprises.
제1항에 있어서,
상기 비밀키생성단계는
상기 디바이스가 자신만이 알고 있는 제2 비밀랜덤키를 생성하는 비밀랜덤키생성과정;
상기 디바이스가 상기 제2 비밀랜덤키를 디피헬만 알고리즘에 기초하여 제1 파라미터를 생성하는 제1파라미터생성과정; 및
상기 디바이스가 상기 제1 파라미터 및 상기 제1 공개키를 이용하여 비밀키를 생성하는 비밀키생성과정;
을 포함하는 것을 특징으로 하는 서버와 디바이스간 인증방법.
The method of claim 1,
The secret key generation step
Secret random key generation process for generating a second secret random key that the device only knows;
A first parameter generation process for the device to generate the second secret random key based on a Diffelmann algorithm; And
A secret key generation process, wherein the device generates a secret key using the first parameter and the first public key;
Authentication method between the server and the device comprising a.
제4항에 있어서,
상기 파라미터전송단계는
상기 디바이스가 상기 암호화키를 상기 비밀키를 이용해 암호화하여 제2 파라미터를 생성하는 제2파라미터생성과정;
상기 디바이스가 자신의 패스워드를 해시하여 해시된 패스워드를 생성하는 패스워드해시과정;
상기 디바이스가 랜덤값 및 타임스탬프값을 생성하는 랜덤값타임스탬프값생성과정;
상기 디바이스가 자신의 ID와, 상기 랜덤값 및 타임스탬프값을 스트링결합한 후, 상기 해시된 패스워드를 이용해 암호화하여 제3 파라미터를 생성하는 제3파라미터생성과정; 및
상기 디바이스가 상기 제1 내지 제3 파라미터를 상기 서버로 전송하는 파라미터전송과정;
을 포함하는 것을 특징으로 하는 서버와 디바이스간 인증방법.
5. The method of claim 4,
The parameter transmission step
Generating a second parameter by the device to encrypt the encryption key using the secret key;
A password hashing process of the device hashing its own password to generate a hashed password;
A random value timestamp value generating step of the device generating a random value and a timestamp value;
A third parameter generation process of generating, by the device, a string parameter combination of its ID, the random value and the timestamp value, and then encrypting using the hashed password to generate a third parameter; And
A parameter transmitting step of transmitting, by the device, the first to third parameters to the server;
Authentication method between the server and the device comprising a.
제5항에 있어서,
상기 디바이스인증단계는
상기 서버가 상기 디바이스로부터 수신한 적어도 하나의 파라미터 중 제1 파라미터를 이용하여 비밀키를 생성하는 비밀키생성과정;
상기 서버가 상기 비밀키를 이용해 상기 디바이스로부터 수신한 적어도 하나의 파라미터 중 제2 파라미터를 복호화하여 암호화키를 획득하는 암호화키획득과정;
상기 서버가 상기 암호화키를 통해 자신의 서버비밀키를 이용한 암호화여부를 확인하여 상기 디바이스에 대한 인증을 수행하는 제1 디바이스인증과정;
상기 서버가 자신의 서버비밀키를 이용해 상기 암호화키를 복호화하여 상기 디바이스의 ID 및 해시된 패스워드를 획득하는 디바이스정보획득과정;
상기 서버가 해시된 패스워드를 이용해 상기 디바이스로부터 수신한 제3 파라미터를 복호화하여 상기 디바이스에 대한 ID를 획득하는 ID획득과정;
상기 서버가 상기 암호화키로부터 획득한 ID와, 상기 제3 파라미터로부터 획득한 ID간 동일여부를 확인하여 상기 디바이스를 인증하는 제2 디바이스인증과정; 및
상기 서버가 상기 디바이스로부터 수신한 제3 파라미터 중 상기 랜덤값과, 상기 타임스탬프값에 1을 더한 값을 스트링결합한 후, 상기 제2 파라미터를 이용해 암호화하여 제4 파라미터를 생성하고, 생성된 상기 제4 파라미터를 상기 디바이스로 전송하는 제4 파라미터전송과정;
을 포함하는 것을 특징으로 하는 서버와 디바이스간 인증방법.
The method of claim 5,
The device authentication step
A secret key generation process of generating, by the server, a secret key using a first parameter among at least one parameter received from the device;
An encryption key acquiring process, wherein the server acquires an encryption key by decrypting a second parameter among at least one parameter received from the device using the secret key;
A first device authentication process in which the server performs authentication on the device by checking whether the server uses an encryption key of the server through the encryption key;
A device information acquisition process, wherein the server acquires the ID and the hashed password of the device by decrypting the encryption key using its server secret key;
Obtaining an ID for the device by the server decrypting the third parameter received from the device using the hashed password;
A second device authentication process of authenticating the device by the server confirming whether the ID obtained from the encryption key and the ID obtained from the third parameter are the same; And
After the server string-combines the random value among the third parameters received from the device and the time stamp value plus 1, the server generates the fourth parameter by encrypting the second parameter and generates the fourth parameter. A fourth parameter transmitting step of transmitting a four parameter to the device;
Authentication method between the server and the device comprising a.
제6항에 있어서,
상기 서버인증단계는
상기 디바이스가 상기 서버로부터 수신한 제4 파라미터를 복호화하여 랜덤값 및 타임스탬프값을 획득하는 랜덤값타임스탬프값획득과정; 및
상기 디바이스가 상기 제4 파라미터를 복호화하여 획득한 상기 랜덤값 및 타임스탬프값에 대하여, 상기 서버로 전송한 제3 파라미터에 포함된 랜덤값 및 타임스탬프값과 동일한지 여부를 비교하여 상기 서버의 인증을 수행하는 서버인증과정;
을 포함하는 것을 특징으로 하는 서버와 디바이스간 인증 방법.
The method according to claim 6,
The server authentication step
Obtaining a random value timestamp value by the device decoding a fourth parameter received from the server to obtain a random value and a timestamp value; And
Authentication of the server by comparing the random value and the timestamp value obtained by decoding the fourth parameter by the device to be equal to the random value and the timestamp value included in the third parameter transmitted to the server. Server authentication process to perform;
Authentication method between the server and the device, characterized in that it comprises a.
제1항 내지 제7항 중 어느 한 항에 따른 방법을 컴퓨터로 실행하기 위한 프로그램이 기록된 컴퓨터 판독가능 기록매체.
A computer-readable recording medium having recorded thereon a program for executing a method according to any one of claims 1 to 7 with a computer.
KR1020110145742A 2011-12-29 2011-12-29 Authentication method between server and device KR101297648B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110145742A KR101297648B1 (en) 2011-12-29 2011-12-29 Authentication method between server and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110145742A KR101297648B1 (en) 2011-12-29 2011-12-29 Authentication method between server and device

Publications (2)

Publication Number Publication Date
KR20130077171A true KR20130077171A (en) 2013-07-09
KR101297648B1 KR101297648B1 (en) 2013-08-19

Family

ID=48990475

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110145742A KR101297648B1 (en) 2011-12-29 2011-12-29 Authentication method between server and device

Country Status (1)

Country Link
KR (1) KR101297648B1 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101464724B1 (en) * 2013-10-15 2014-11-27 순천향대학교 산학협력단 OpenID Based User Authentication Scheme for Multi-clouds Environment
KR20160015636A (en) * 2014-07-31 2016-02-15 디바이스디자인(주) System and method for wireless communications using MAC address authentication
WO2018004114A3 (en) * 2016-06-30 2018-09-07 (주)넷비젼텔레콤 Proxy authentication system and authentication method for providing proxy service
CN109831457A (en) * 2019-03-15 2019-05-31 四川长虹电器股份有限公司 A kind of iOS application data transmission method
KR20190070691A (en) * 2017-12-13 2019-06-21 (주)네오와인 Program executing authority authentication method and system
CN111444499A (en) * 2020-03-31 2020-07-24 中国人民解放军海军潜艇学院 User identity authentication method and system
WO2020197221A1 (en) * 2019-03-22 2020-10-01 삼성전자 주식회사 Communication method and communication device
KR102328896B1 (en) * 2020-11-10 2021-11-22 주식회사 아톰릭스랩 Crypto Key distribution and recovery method for 3rd party managed system
KR102329580B1 (en) * 2020-11-10 2021-11-23 주식회사 아톰릭스랩 Crypto Key distribution and recovery method for multiple 3rd parties managed systems

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11381388B2 (en) 2018-11-27 2022-07-05 Samsung Electronics Co., Ltd. Storage device sharing data encryption key as encrypted and operating method of storage device

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5633929A (en) 1995-09-15 1997-05-27 Rsa Data Security, Inc Cryptographic key escrow system having reduced vulnerability to harvesting attacks
KR20020040378A (en) * 2000-11-24 2002-05-30 구자홍 Method for Authentication without Password Transmission on the basis of Public Key
KR100872817B1 (en) * 2006-12-07 2008-12-09 인하대학교 산학협력단 Method for Key Exchange Based on Varient of the Diffie Hellman
KR100957044B1 (en) * 2007-07-26 2010-05-18 성균관대학교산학협력단 Method and system for providing mutual authentication using kerberos

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101464724B1 (en) * 2013-10-15 2014-11-27 순천향대학교 산학협력단 OpenID Based User Authentication Scheme for Multi-clouds Environment
KR20160015636A (en) * 2014-07-31 2016-02-15 디바이스디자인(주) System and method for wireless communications using MAC address authentication
WO2018004114A3 (en) * 2016-06-30 2018-09-07 (주)넷비젼텔레콤 Proxy authentication system and authentication method for providing proxy service
KR20190070691A (en) * 2017-12-13 2019-06-21 (주)네오와인 Program executing authority authentication method and system
CN109831457A (en) * 2019-03-15 2019-05-31 四川长虹电器股份有限公司 A kind of iOS application data transmission method
CN109831457B (en) * 2019-03-15 2020-03-17 四川长虹电器股份有限公司 iOS application data transmission method
WO2020197221A1 (en) * 2019-03-22 2020-10-01 삼성전자 주식회사 Communication method and communication device
US11991527B2 (en) 2019-03-22 2024-05-21 Samsung Electronics Co., Ltd. Communication method and communication device
CN111444499A (en) * 2020-03-31 2020-07-24 中国人民解放军海军潜艇学院 User identity authentication method and system
CN111444499B (en) * 2020-03-31 2022-12-06 中国人民解放军海军潜艇学院 User identity authentication method and system
KR102328896B1 (en) * 2020-11-10 2021-11-22 주식회사 아톰릭스랩 Crypto Key distribution and recovery method for 3rd party managed system
KR102329580B1 (en) * 2020-11-10 2021-11-23 주식회사 아톰릭스랩 Crypto Key distribution and recovery method for multiple 3rd parties managed systems

Also Published As

Publication number Publication date
KR101297648B1 (en) 2013-08-19

Similar Documents

Publication Publication Date Title
KR101297648B1 (en) Authentication method between server and device
US10693848B2 (en) Installation of a terminal in a secure system
CN103596173B (en) Wireless network authentication method, client and service end wireless network authentication device
US8285994B2 (en) Two-way authentication between two communication endpoints using a one-way out-of-band (OOB) channel
CN102577230B (en) Low-latency peer session establishment
US10594479B2 (en) Method for managing smart home environment, method for joining smart home environment and method for connecting communication session with smart device
Liu et al. A novel asymmetric three-party based authentication scheme in wearable devices environment
JP2016540462A (en) Key configuration method, system, and apparatus
KR20150035971A (en) A secure Data Communication protocol between IoT smart devices or sensors and a Network gateway under Internet of Thing environment
CA2879910C (en) Terminal identity verification and service authentication method, system and terminal
CN103873487A (en) Method for achieving home credible networking based on safety pendent of smart home device
US20170310665A1 (en) Method and system for establishing a secure communication channel
CN114553590B (en) Data transmission method and related equipment
US20170293768A1 (en) Security through authentication tokens
WO2014127751A1 (en) Wireless terminal configuration method, apparatus and wireless terminal
CN111654481B (en) Identity authentication method, identity authentication device and storage medium
WO2010023506A1 (en) Methods, apparatuses, computer program products, and systems for providing secure pairing and association for wireless devices
CN114696999A (en) Identity authentication method and device
CN117041956A (en) Communication authentication method, device, computer equipment and storage medium
Wu et al. Efficient authentication for Internet of Things devices in information management systems
KR101785382B1 (en) Method for authenticating client, operation method of client, server enabling the method, and communication software enabling the operation method
Lu et al. A mutual authentication scheme with user anonymity for cyber-physical and internet of things
CA3203440A1 (en) Identity authentication method and apparatus, device, chip, storage medium, and program
Ananthanarayanan et al. Space: Secure protocol for address-book based connection establishment
CN113556736A (en) Access method, server, terminal to be accessed, electronic device and storage medium

Legal Events

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

Payment date: 20160615

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170707

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180723

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190808

Year of fee payment: 7