KR20210123575A - Termimal, server, lightweight authentication method using the same - Google Patents

Termimal, server, lightweight authentication method using the same Download PDF

Info

Publication number
KR20210123575A
KR20210123575A KR1020200040854A KR20200040854A KR20210123575A KR 20210123575 A KR20210123575 A KR 20210123575A KR 1020200040854 A KR1020200040854 A KR 1020200040854A KR 20200040854 A KR20200040854 A KR 20200040854A KR 20210123575 A KR20210123575 A KR 20210123575A
Authority
KR
South Korea
Prior art keywords
authentication
parameters
central management
management server
calculating
Prior art date
Legal status (The legal status 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 status listed.)
Withdrawn
Application number
KR1020200040854A
Other languages
Korean (ko)
Inventor
박기성
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020200040854A priority Critical patent/KR20210123575A/en
Publication of KR20210123575A publication Critical patent/KR20210123575A/en
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/062Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • 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/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/122Hardware reduction or efficient architectures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/121Timestamp

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

The present invention relates to a method for a central management server including at least one processor to authenticate a device in conjunction with the device, which includes the steps of: receiving, from the device, identification information and a password, and ID information including a pseudo identifier generated by a first random number, and the first random number to calculate authentication parameters for authenticating the device; transmitting the calculated authentication parameters to the device without storing them in a memory; authenticating the device based on received authentication request information when receiving, from the device, authentication request information including at least one of the pseudo identifier, a specific authentication parameter, and a plurality of verification parameters calculated based on the authentication parameters; and updating the authentication parameters and transmits them to the device, if authentication is successful.

Description

디바이스 및 이를 이용한 경량 인증 방법{TERMIMAL, SERVER, LIGHTWEIGHT AUTHENTICATION METHOD USING THE SAME}Device and lightweight authentication method using the same {TERMIMAL, SERVER, LIGHTWEIGHT AUTHENTICATION METHOD USING THE SAME}

본 발명은 디바이스 및 이를 이용한 경량 인증 방법에 관한 것이다.The present invention relates to a device and a lightweight authentication method using the same.

사용자와 사용자 간, 사용자와 디바이스 간, 디바이스와 디바이스 간 안전한 통신과 데이터 교환을 위하여 다양한 인증(Authentication) 방식들이 사용되고 있다. Various authentication methods are used for secure communication and data exchange between a user and a user, between a user and a device, and between a device and a device.

일반적인 인증 방식은 사용자가 사전에 신뢰하는 중앙 관리 시스템에 사용자 자신의 신원정보 및 주요 비밀 파라미터들을 등록한다. 중앙 관리 시스템은 사용자에 의해 등록된 정보들을 검증 테이블(verification table)로 관리하여, 사용자와 디바이스를 인증한다. A general authentication method registers the user's own identity information and key secret parameters in a central management system that the user trusts in advance. The central management system manages information registered by the user as a verification table, and authenticates the user and the device.

그러나 일반적인 인증 방식을 사용하는 경우, 중요한 정보들을 중앙 관리 시스템의 검증 테이블에서 일괄 관리하고 있다. 따라서 검증 테이블이 악의적인 공격자에게 노출되면, 사용자 개인의 프라이버시뿐만 아니라 시스템 전체의 안전성이 침해될 수 있다. However, when a general authentication method is used, important information is collectively managed in the verification table of the central management system. Therefore, if the verification table is exposed to a malicious attacker, not only the privacy of the user but also the safety of the entire system may be violated.

이러한 문제점을 해결하기 위하여, 중앙 관리 시스템에 검증 테이블을 저장하지 않는 다양한 인증 기법들이 연구되고 있다. In order to solve this problem, various authentication techniques that do not store the verification table in the central management system are being studied.

안전하다고 가정하는 최상위 TTP(Trusted Third Party) 인증 기관에 중앙 관리 시스템들을 사전에 등록하고, TTP가 사용자의 데이터를 보관/관리하거나, 공개키 기반으로 인증 서비스를 제공하고 있다. 그러나 이러한 방식들도 최상위 TTP의 검증 테이블이 내부자에 의해 노출될 경우, 중앙 관리 시스템에서의 문제점과 같은 문제점이 발생할 수 있다. Central management systems are pre-registered with a top-level Trusted Third Party (TTP) certification authority that is assumed to be secure, and TTP stores/manages user data or provides authentication services based on public keys. However, even in these methods, when the verification table of the highest TTP is exposed by an insider, problems such as problems in the central management system may occur.

또한, 공개키 기반 인증 방식은 센서와 같은 저사양 디바이스에서 효율적으로 동작할 수 없는 문제점이 있다. 따라서, 디바이스의 연산량을 고려하여, 사용자의 신원정보 및 주요 비밀 파라미터들을 디바이스에서 스스로 관리하여 인증에 효율적으로 활용할 수 있어야 한다. In addition, the public key-based authentication method has a problem in that it cannot operate efficiently in a low-spec device such as a sensor. Therefore, in consideration of the amount of computation of the device, the device should manage the user's identity information and key secret parameters by itself to be efficiently utilized for authentication.

본 발명이 해결하고자 하는 과제는, 중앙 관리 시스템에 사용자의 신원정보 및 중요 파라미터들을 저장하지 않고, 디바이스가 직접 중요 정보들을 관리하는 디바이스 및 이를 이용한 경량 인증 방법을 제공하는 것이다.An object of the present invention is to provide a device in which the device directly manages important information without storing user identity information and important parameters in a central management system, and a lightweight authentication method using the same.

상기 본 발명의 기술적 과제를 달성하기 위한 본 발명의 하나의 특징인 중앙 관리 서버가 디바이스와 연동하여 상기 디바이스를 인증하는 방법으로서,As a method in which a central management server, which is a feature of the present invention for achieving the technical problem of the present invention, works with the device to authenticate the device,

상기 디바이스로부터 의사 식별자와 제1 랜덤 넘버를 포함하는 신원 정보를 수신하면, 상기 디바이스를 인증하기 위한 복수의 인증 파라미터들을 계산하는 단계, 상기 계산한 복수의 인증 파라미터들을 메모리에 저장하지 않고 상기 디바이스로 전달하는 단계, 상기 디바이스로부터 상기 의사 식별자, 상기 복수의 인증 파라미터들 중 어느 하나의 인증 파라미터, 복수의 검증 파라미터들 중 적어도 하나를 포함하는 인증 요청 정보를 수신하면, 수신한 인증 요청 정보를 토대로 상기 디바이스를 인증하는 단계, 그리고 인증 후 상기 인증 파라미터들을 갱신하여 상기 디바이스로 전송하는 단계를 포함한다.Calculating a plurality of authentication parameters for authenticating the device upon receiving identity information including a pseudo identifier and a first random number from the device; transmitting, upon receiving from the device authentication request information including the pseudo identifier, any one of the plurality of authentication parameters, and at least one of the plurality of verification parameters, based on the received authentication request information authenticating the device, and updating and transmitting the authentication parameters to the device after authentication.

상기 인증 파라미터를 계산하는 단계 이전에, 상기 복수의 인증 파라미터들을 생성하거나 처리하기 위한 마스터 키를 생성하는 단계를 포함할 수 있다.Before calculating the authentication parameter, the method may include generating a master key for generating or processing the plurality of authentication parameters.

상기 복수의 인증 파라미터들은 각각, 상기 디바이스로부터 수신한 상기 의사 식별자와 제1 랜덤 넘버, 그리고 상기 마스터 키 중 적어도 하나의 정보를 해시 연산과 배타적 논리 합 연산으로 계산할 수 있다.Each of the plurality of authentication parameters may be calculated by performing a hash operation and an exclusive-OR operation on at least one of the pseudo identifier, the first random number, and the master key received from the device.

상기 인증 파라미터들을 계산하는 단계는, 상기 의사 식별자와 상기 마스터 키를 이용하여 제1 인증 파라미터를 계산하고, 상기 제1 인증 파라미터와 상기 제1 랜덤 넘버를 이용하여 제2 인증 파라미터를 계산하며, 상기 제1 랜덤 넘버와 상기 의사 식별자, 그리고 상기 마스터 키를 이용하여 제3 인증 파라미터를 계산할 수 있다.The calculating of the authentication parameters includes calculating a first authentication parameter using the pseudo-identifier and the master key, calculating a second authentication parameter using the first authentication parameter and the first random number, A third authentication parameter may be calculated using the first random number, the pseudo identifier, and the master key.

상기 인증 요청 정보는 상기 디바이스에서 생성한 타임 스탬프를 포함하고,The authentication request information includes a time stamp generated by the device,

상기 디바이스를 인증하는 단계는, 상기 타임 스탬프의 유효성을 평가하는 단계, 상기 제2 인증 파라미터로부터 상기 제1 랜덤 넘버를 확인하는 단계, 상기 마스터 키, 상기 의사 식별자, 상기 확인한 제1 랜덤 넘버를 토대로 제4 인증 파라미터를 계산하는 단계, 그리고 상기 디바이스로부터 수신한 인증 요청 정보에 포함된 특정 검증 파라미터와 상기 제4 인증 파라미터가 일치하면, 상기 디바이스와의 세션을 유지하는 단계를 포함할 수 있다.The authenticating of the device may include evaluating the validity of the time stamp, verifying the first random number from the second authentication parameter, based on the master key, the pseudo identifier, and the confirmed first random number. The method may include calculating a fourth authentication parameter, and maintaining a session with the device when a specific verification parameter included in the authentication request information received from the device matches the fourth authentication parameter.

상기 디바이스로 전송하는 단계는, 인증 파라미터를 갱신하기 위한 복수의 랜덤 넘버들을 계산하는 단계, 상기 랜덤 넘버들을 이용하여 상기 인증 파라미터들을 갱신하는 단계, 그리고 갱신한 인증 파라미터들을 토대로 계산된 복수의 검증 값들을 상기 디바이스로 전송하는 단계를 포함할 수 있다.The transmitting to the device may include calculating a plurality of random numbers for updating an authentication parameter, updating the authentication parameters using the random numbers, and a plurality of verification values calculated based on the updated authentication parameters. and transmitting them to the device.

상기 본 발명의 기술적 과제를 달성하기 위한 본 발명의 또 다른 특징인 적어도 하나의 프로세서를 포함하는 디바이스가 중앙 관리 서버와 연동하여 인증하는 방법으로서,As a method for authenticating a device including at least one processor, which is another feature of the present invention for achieving the technical problem of the present invention, in conjunction with a central management server,

신원 정보를 생성하여 상기 중앙 관리 서버에 디바이스 자신을 등록하는 단계, 상기 중앙 관리 서버로부터 인증을 위한 복수의 인증 파라미터들을 수신하면, 상기 복수의 인증 파라미터들을 재 연산하여 메모리에 저장하는 단계, 상기 생성한 신원 정보를 이용하여 상기 메모리에 저장한 인증 파라미터들을 읽어들여 검증 파라미터를 계산하는 단계, 상기 검증 파라미터와 인증 파라미터 중 적어도 하나를 포함하는 인증 요청 신호를 상기 중앙 관리 서버로 전송하는 단계, 그리고 상기 중앙 관리 서버로부터 인증 여부에 따라, 갱신된 인증 파라미터들을 수신하면 재 연산하여 저장하는 단계를 포함한다.Generating identity information and registering the device itself in the central management server, when receiving a plurality of authentication parameters for authentication from the central management server, recalculating the plurality of authentication parameters and storing the authentication parameters in a memory, the generation Reading authentication parameters stored in the memory by using one identity information to calculate a verification parameter, transmitting an authentication request signal including at least one of the verification parameter and the authentication parameter to the central management server, and the and re-calculating and storing the updated authentication parameters according to whether authentication is performed from the central management server.

상기 중앙 관리 서버에 등록하는 단계는, 신원 식별자와 비밀번호를 생성하는 단계, 제1 랜덤 넘버 및 제2 랜덤 넘버를 생성하는 단계, 상기 신원 식별자와 비밀번호 그리고 상기 제1 랜덤 넘버를 이용하여 의사 식별자를 계산하는 단계, 그리고 상기 의사 식별자와 상기 제1 랜덤 넘버를 포함하는 상기 신원 정보를 상기 중앙 관리 서버로 전송하는 단계를 포함할 수 있다.The step of registering with the central management server includes generating an identity identifier and password, generating a first random number and a second random number, and generating a pseudo identifier using the identity identifier and password and the first random number. Calculating, and transmitting the identity information including the pseudo identifier and the first random number to the central management server.

상기 의사 식별자는 해시 연산과 배타적 논리 합 연산으로 계산될 수 있다.The pseudo identifier may be calculated by a hash operation and an exclusive OR operation.

상기 메모리에 저장하는 단계는, 상기 중앙 관리 서버로부터 상기 의사 식별자, 상기 중앙 관리 서버에서 생성한 마스터 키, 그리고 상기 제1 랜덤 넘버 중 적어도 하나를 이용하여 계산된 상기 복수의 인증 파라미터들을 수신하는 단계, 그리고 상기 복수의 인증 파라미터들을 상기 제2 랜덤 넘버, 상기 신원 식별자, 패스워드 중 적어도 하나를 이용하여 재 연산하는 단계를 포함할 수 있다.The storing in the memory may include: receiving the plurality of authentication parameters calculated using at least one of the pseudo identifier, the master key generated by the central management server, and the first random number from the central management server and re-calculating the plurality of authentication parameters using at least one of the second random number, the identity identifier, and the password.

상기 검증 파라미터를 계산하는 단계는, 신원 정보를 수신하는 단계, 상기 신원 식별자, 패스워드, 그리고 상기 제2 랜덤 넘버를 이용하여 사용자 정보 검증 파라미터를 계산하는 단계, 그리고 상기 계산한 사용자 정보 검증 파라미터를 토대로 상기 수신한 신원 정보를 검증하는 단계를 포함할 수 있다.The calculating of the verification parameter may include: receiving identification information; calculating a user information verification parameter using the identification identifier, the password, and the second random number; and based on the calculated user information verification parameter It may include verifying the received identity information.

상기 중앙 관리 서버로 전송하는 단계는, 상기 복수의 인증 파라미터들 중 적어도 하나, 신원 식별자, 비밀번호, 그리고 상기 제2 랜덤 넘버 중 적어도 하나를 이용하여 검증 정보를 계산하는 단계를 포함할 수 있다.The transmitting to the central management server may include calculating verification information using at least one of the plurality of authentication parameters, an identity identifier, a password, and at least one of the second random number.

상기 재 연산하여 저장하는 단계는, 미리 설정한 기간 동안 사용할 세션 키를 계산하여, 키 합의를 수행하는 단계를 포함할 수 있다.The re-calculating and storing may include calculating a session key to be used for a preset period and performing key agreement.

상기 본 발명의 기술적 과제를 달성하기 위한 본 발명의 또 다른 특징인 중앙 관리 서버와 연동하여 인증 절차를 수행하는 디바이스로서,As a device for performing an authentication procedure in conjunction with a central management server, which is another feature of the present invention for achieving the technical problem of the present invention,

프로세서, 그리고 상기 프로세서에 의해 수행되는 컴퓨터 프로그램을 로드(load)하고, 상기 중앙 관리 서버에서 생성된 복수의 인증 파라미터들과 상기 프로세서에서 생성한 신원 정보를 저장하는 메모리를 포함하고, 상기 프로세서는, 상기 중앙 관리 서버로 전송할 신원 식별자와 비밀번호를 생성하고, 상기 중앙 관리 서버로부터 수신한 인증 파라미터들을 재 연산하여 재 연산된 인증 파라미터들을 상기 메모리에 저장한다.A processor, and a memory for loading a computer program executed by the processor and storing a plurality of authentication parameters generated by the central management server and identity information generated by the processor, the processor comprising: An identity identifier and password to be transmitted to the central management server are generated, the authentication parameters received from the central management server are re-calculated, and the re-calculated authentication parameters are stored in the memory.

상기 프로세서는, 해시 연산과 배타적 논리 합 연산으로 상기 인증 파라미터들을 재연산할 수 있다. The processor may recalculate the authentication parameters using a hash operation and an exclusive-OR operation.

본 발명의 실시예에 따르면, 디바이스는 사용자 또는 디바이스 자체의 신원정보 및 인증을 위한 중요 파라미터들을 중앙 관리 시스템에 저장하지 않고, 스스로 관리하여 인증 서비스를 이용할 수 있다. According to an embodiment of the present invention, the device may use the authentication service by managing the identity information of the user or the device itself and important parameters for authentication in the central management system, without storing in the central management system.

또한, 해시 및 XOR 연산을 사용하여 인증하기 때문에, 사물 인터넷 등과 같은 저사양 디바이스를 사용하는 환경에서 효율적으로 활용될 수 있다. In addition, since authentication is performed using hash and XOR operations, it can be efficiently utilized in environments using low-spec devices such as the Internet of Things.

또한, 디바이스는 스스로 인증 파라미터들을 관리하기 때문에, 다양한 환경에 적용되어 프라이버시 보장, 보안성 및 효율성을 향상하는데 활용될 수 있다.In addition, since the device manages authentication parameters by itself, it can be applied to various environments and utilized to guarantee privacy, improve security and efficiency.

도 1은 본 발명의 실시예에 따른 경량 인증 방법을 적용할 수 있는 환경의 예시도이다.
도 2는 본 발명의 실시예에 따른 디바이스 등록 방법에 대한 흐름도이다.
도 3은 본 발명의 실시예에 따른 인증 방법에 대한 흐름도이다.
도 4는 본 발명의 실시예에 따른 컴퓨터 시스템을 나타내는 도면이다.
1 is an exemplary diagram of an environment to which a lightweight authentication method according to an embodiment of the present invention can be applied.
2 is a flowchart of a device registration method according to an embodiment of the present invention.
3 is a flowchart of an authentication method according to an embodiment of the present invention.
4 is a diagram illustrating a computer system according to an embodiment of the present invention.

아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, with reference to the accompanying drawings, the embodiments of the present invention will be described in detail so that those of ordinary skill in the art to which the present invention pertains can easily implement them. However, the present invention may be embodied in many different forms and is not limited to the embodiments described herein. And in order to clearly explain the present invention in the drawings, parts irrelevant to the description are omitted, and similar reference numerals are attached to similar parts throughout the specification.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. Throughout the specification, when a part is "connected" with another part, this includes not only the case of being "directly connected" but also the case of being "electrically connected" with another element interposed therebetween. . In addition, when a part "includes" a certain component, this means that other components may be further included, rather than excluding other components, unless otherwise stated.

이하, 도면을 참조로 하여, 본 발명의 실시예에 따른 디바이스, 이를 이용한 경량 인증 방법 및 키 합의 방법에 대해 상세히 설명한다.Hereinafter, with reference to the drawings, a device according to an embodiment of the present invention, a light-weight authentication method using the same, and a key agreement method will be described in detail.

도 1은 본 발명의 실시예에 따른 경량 인증 방법을 적용할 수 있는 환경의 예시도이다. 1 is an exemplary diagram of an environment to which a lightweight authentication method according to an embodiment of the present invention can be applied.

도 1에 도시된 바와 같이, 본 발명의 실시예에 따른 인터넷 환경에는 다양한 디바이스들과 센서들(10-1 ~ 10-3)이 게이트웨이(20)를 통해 인터넷(30)에 연결된다. 또한, 사물 인터넷 디바이스(예를 들어, 스마트폰, IP 카메라 등)는 유선 또는 무선망을 통해 인터넷(20)에 직접 연결되고, 서비스 제공 서버(또는, 클라우드 서버 등)(40)와의 연동을 통해 다양한 형태의 서비스를 사용자에게 제공한다.As shown in FIG. 1 , in the Internet environment according to an embodiment of the present invention, various devices and sensors 10 - 1 to 10 - 3 are connected to the Internet 30 through a gateway 20 . In addition, the IoT device (eg, a smartphone, an IP camera, etc.) is directly connected to the Internet 20 through a wired or wireless network, and through interworking with a service providing server (or cloud server, etc.) 40 . Various types of services are provided to users.

사용자에게 사물 인터넷 환경 기반 서비스를 안전하게 제공하기 위하여, 사물 인터넷 디바이스는 중앙 관리 시스템과 연동하여 인증을 수행한다. 본 발명의 실시예에서는 중앙 관리 시스템을 '중앙 관리 서버(100)'라 지칭하며, 설명의 편의를 위하여 사물 인터넷 디바이스와 중앙 관리 서버(100) 사이의 인증을 예로 하여 설명한다. 그리고, 중앙 관리 서버(100)를 독립된 구성 요소로 도시하였으나, 서비스 제공 서버(40) 내에 인증을 위한 중앙 관리 서버(100)가 포함될 수도 있다.In order to safely provide an Internet of Things environment-based service to a user, the Internet of Things device performs authentication in conjunction with a central management system. In the embodiment of the present invention, the central management system is referred to as a 'central management server 100', and for convenience of description, authentication between the IoT device and the central management server 100 will be described as an example. In addition, although the central management server 100 is illustrated as an independent component, the central management server 100 for authentication may be included in the service providing server 40 .

중앙 관리 서버(100)와 사물 인터넷 디바이스(200) 간 인증이 성공적으로 완료되면, 서비스 제공 서버(40)와 사물 인터넷 디바이스(200) 사이에 안전한 세션이 생성된다. 그리고 세션키를 이용하여 송수신하는 데이터를 암호화함으로써, 데이터에 기밀성을 부여할 수 있다.When authentication between the central management server 100 and the IoT device 200 is successfully completed, a secure session is created between the service providing server 40 and the IoT device 200 . And, by encrypting the data transmitted and received using the session key, confidentiality can be imparted to the data.

여기서, 중앙 관리 서버(100)는 인증 시스템(도면 미도시)에 포함되어 있는 서버로서, 복수의 사물 인터넷 디바이스(200)들이 네트워크를 통해 연결된다. Here, the central management server 100 is a server included in the authentication system (not shown), and a plurality of Internet of Things devices 200 are connected through a network.

중앙 관리 서버(100)는 인증 파라미터들을 처리하기 위한 마스터 키(Kser)를 정의하고, 복수의 사물 인터넷 디바이스(200)들이 연결되도록 초기 설정 절차를 수행한다. 여기서, 중앙 관리 서버(100)가 수행하는 초기 설정 절차는 이미 알려진 것으로, 본 발명의 실시예에서는 상세한 설명을 생략한다.The central management server 100 defines a master key (K ser ) for processing authentication parameters, and performs an initial setting procedure so that a plurality of IoT devices 200 are connected. Here, the initial setting procedure performed by the central management server 100 is already known, and detailed description will be omitted in the embodiment of the present invention.

중앙 관리 서버(100)는 인증을 위한 중요 파라미터들을 계산하고, 사물 인터넷 디바이스(200)에 전송한다. 이때, 계산한 중요 파라미터들을 중앙 관리 서버(100) 내에 저장하지 않는다.The central management server 100 calculates important parameters for authentication and transmits them to the IoT device 200 . At this time, the calculated important parameters are not stored in the central management server 100 .

사물 인터넷 디바이스(200)들은 자신들을 식별하기 위한 신원 식별자(IDU)와 비밀번호(PW), 그리고 두 개의 랜덤 넘버인 제1 랜덤 넘버(r)와 제2 랜덤 넘버(k)를 생성한다. 또한, 각 사물 인터넷 디바이스(200)들은 의사 식별자(PID: Pseudo ID)를 생성하고, 제1 랜덤 넘버(r)와 함께 중앙 관리 서버(100)로 전달한다.The IoT devices 200 generate an identity identifier (ID U ) and a password (PW) for identifying themselves, and a first random number (r) and a second random number (k) that are two random numbers. In addition, each IoT device 200 generates a pseudo ID (PID) and transmits it to the central management server 100 together with the first random number r.

사물 인터넷 디바이스(200)들은 입력되는 신원 정보를 검증하기 위한 시원 정보 검증 파라미터들(V, C)을 계산한 후 메모리에 저장한다. 그리고, 사물 인터넷 디바이스(200)는 중앙 관리 서버(100)에서 전송되는 인증 파라미터들(S,Asn, Bsn)이 외부로 노출되지 않도록 재 연산한 후, 메모리에 저장한다. 그리고, 메모리에 저장한 인증 파라미터들을 이용하여 공개된 채널을 통해 중앙 관리 서버(100)와 인증을 수행하거나 키 합의를 실행한다.The IoT devices 200 calculate the original information verification parameters (V, C) for verifying the input identity information and store the calculated parameters in the memory. Then, the IoT device 200 recalculates the authentication parameters (S, A sn , B sn ) transmitted from the central management server 100 so that they are not exposed to the outside, and then stores them in the memory. Then, by using the authentication parameters stored in the memory, authentication is performed with the central management server 100 through an open channel or key agreement is executed.

이러한 통신 환경에서, 중앙 관리 서버(100)에 사물 인터넷 디바이스(200)를 등록하고, 등록된 사물 인터넷 디바이스(200)와 중앙 관리 서버(100) 사이에 인증 절차가 수행되는 방법에 대해 도 2 및 도 3을 참조로 상세히 설명한다.In such a communication environment, the method of registering the Internet of Things device 200 to the central management server 100 and performing an authentication procedure between the registered Internet of Things device 200 and the central management server 100 is illustrated in FIG. 2 and It will be described in detail with reference to FIG. 3 .

도 2는 본 발명의 실시예에 따른 디바이스 등록 방법에 대한 흐름도이다. 2 is a flowchart of a device registration method according to an embodiment of the present invention.

도 2에 도시된 바와 같이, 중앙 관리 서버(100)는 인증 파라미터들을 생성하거나 처리하기 위한 마스터 키(Kser)를 정의하고, 초기 설정 작업을 수행한다(S100). 여기서, 중앙 관리 서버(100)가 마스터 키를 정의하는 방법, 그리고 초기 설정 작업을 수행하는 방법은 이미 알려진 것으로, 본 발명의 실시예에서는 상세한 설명을 생략한다.2, the central management server 100 defines a master key (K ser ) for generating or processing authentication parameters, and performs an initial setting operation (S100). Here, a method for the central management server 100 to define a master key and a method for performing an initial setting operation are already known, and detailed description thereof will be omitted in the embodiment of the present invention.

사물 인터넷 디바이스(200)는 신원 식별자(IDU)와 비밀번호(PWU)를 생성한다. 신원 식별자와 비밀번호는 사물 인터넷 디바이스(200)에서 생성할 수도 있고, 외부로부터 입력으로 수신할 수도 있다. 본 발명의 실시예에서는 사물 인터넷 디바이스(200)에서 신원 식별자와 비밀번호를 포함하는 신원 정보를 생성하는 것을 예로 하여 설명한다.The IoT device 200 generates an identity identifier (ID U ) and a password (PW U ). The identity identifier and password may be generated by the IoT device 200 or may be received as input from the outside. In the embodiment of the present invention, the generation of identity information including an identity identifier and a password in the IoT device 200 will be described as an example.

신원 정보를 생성하면, 사물 인터넷 디바이스(200)는 두 개의 랜덤 넘버인 제1 랜덤 넘버(r)와 제2 랜덤 넘버(k)를 생성한다(S110). 두 개의 랜덤 넘버 중 제1 랜덤 넘버는 의사 식별자를 계산하는데 사용된다. 그리고, 제2 랜덤 넘버는 이후 설명할 중앙 관리 서버(100)로부터 수신한 인증 파라미터들을 재 연산하는 데 사용된다. When the identity information is generated, the IoT device 200 generates two random numbers, a first random number (r) and a second random number (k) ( S110 ). The first of the two random numbers is used to calculate the pseudo-identifier. And, the second random number is used to re-calculate the authentication parameters received from the central management server 100, which will be described later.

사물 인터넷 디바이스(200)는 신원 식별자와 비밀번호, 그리고 제1 랜덤 넘버를 이용하여 의사 식별자(PID: Pusedo ID)를 계산한다(S120). 사물 인터넷 디바이스(200)가 S120 단계에서 의사 식별자(PID)를 계산하기 위해, 다음 수학식 1을 이용한다.The IoT device 200 calculates a pseudo identifier (PID: Pusedo ID) using the identity identifier, the password, and the first random number ( S120 ). In order for the IoT device 200 to calculate a pseudo identifier (PID) in step S120, the following Equation 1 is used.

Figure pat00001
Figure pat00001

사물 인터넷 디바이스(200)는 S120 단계에서 계산한 의사 식별자, 그리고 의사 식별자를 계산하기 위해 사용한 제1 랜덤 넘버(r)를 포함하는 디바이스 신원 정보를 안전한 통신 채널을 통해 중앙 관리 서버(100)로 전송한다(S130). 여기서, 안전한 통신 채널은 서버의 정책에 따라 결정되며, 다양한 방식(예를 들어, 서면 제출, 또는 TLS 프로토콜을 통한 데이터 제출 등) 중 하나를 선택하여 사용할 수 있다.The IoT device 200 transmits device identity information including the pseudo identifier calculated in step S120 and the first random number r used to calculate the pseudo identifier to the central management server 100 through a secure communication channel. do (S130). Here, the secure communication channel is determined according to the server's policy, and one of various methods (eg, written submission or data submission through TLS protocol) may be selected and used.

중앙 관리 서버(100)는 S130 단계에서 수신한 디바이스 신원 정보를 토대로 사물 인터넷 디바이스(200)를 인증하기 위한 복수의 인증 파라미터들을 계산한다(S140). 본 발명의 실시예에서는 다음 수학식 2를 통해 세 개의 인증 파라미터들을 계산하는 것을 예로 하여 설명한다.The central management server 100 calculates a plurality of authentication parameters for authenticating the IoT device 200 based on the device identity information received in step S130 (S140). In the embodiment of the present invention, calculation of three authentication parameters through Equation 2 will be described as an example.

Figure pat00002
Figure pat00002

중앙 관리 서버(100)는 의사 식별자와 마스터 키를 연결 연산한 후 해시 연산하여 제1 인증 파라미터(S)를 구한다. 그리고 중앙 관리 서버(100)는 사물 인터넷 디바이스(200)에서 생성한 제1 랜덤 넘버(r)와 제1 인증 파라미터(S)를 배타적 논리합 연산하여 제2 인증 파라미터인 ASN를 구한다. The central management server 100 obtains the first authentication parameter (S) by performing a hash operation after concatenating the pseudo identifier and the master key. Then, the central management server 100 obtains the second authentication parameter A SN by performing an exclusive OR operation on the first random number r and the first authentication parameter S generated by the IoT device 200 .

중앙 관리 서버(100)는 제1 랜덤 넘버(r), 의사 식별자(PID), 그리고 마스터 키(Kser)를 연결 연산 후 해시 연산하여 제3 인증 파라미터인 BSN을 구한다. 여기서, SN은 인증을 요청한 사물 인터넷 디바이스(200)를 의미한다.The central management server 100 obtains the third authentication parameter, B SN, by performing a hash operation on the first random number (r), the pseudo identifier (PID), and the master key (K ser ) after the concatenation operation. Here, the SN refers to the IoT device 200 that has requested authentication.

이와 같이 복수의 인증 파라미터들이 계산되면, 중앙 관리 서버(100)는 계산한 복수의 인증 파라미터들을 사물 인터넷 디바이스(200)로 전달한다(S150). 이때, 중앙 관리 서버(100)는 어떠한 인증 파라미터도 중앙 관리 서버(100) 내 메모리에 저장하지 않는다.When the plurality of authentication parameters are calculated in this way, the central management server 100 transmits the calculated plurality of authentication parameters to the IoT device 200 (S150). At this time, the central management server 100 does not store any authentication parameters in the memory in the central management server 100 .

사물 인터넷 디바이스(200)는 추후 신원 정보가 제대로 생성되거나 입력되었는지 여부를 검증하는 검증 파라미터를 생성하기 위하여, 신원 정보 검증 파라미터 V와 C를 계산한다. 계산된 신원 정보 검증 파라미터는 사물 인터넷 디바이스(200)내의 메모리에 저장된다(S160). 사물 인터넷 디바이스(200)가 신원 정보 검증 파라미터를 계산할 때 다음 수학식 3을 이용한다.The IoT device 200 calculates the identity information verification parameters V and C in order to generate a verification parameter that verifies whether the identity information is properly generated or input later. The calculated identity information verification parameter is stored in a memory in the IoT device 200 (S160). When the IoT device 200 calculates the identity information verification parameter, the following Equation 3 is used.

Figure pat00003
Figure pat00003

사물 인터넷 디바이스(200)는 신원 식별자와 비밀번호, 그리고 S110 단계에서 생성한 제2 랜덤 넘버(k)를 연결 연산과 해시 연산하여 제1 신원 정보 검증 파라미터인 V를 계산한다. 그리고 사물 인터넷 디바이스(200)는 연결 연산된 신원 식별자와 비밀번호의 해시 값과 제2 랜덤 넘버(k)를 배타적 논리 합 연산하여, 제2 신원 정보 검증 파라미터인 C를 계산한다.The IoT device 200 calculates a first identity information verification parameter, V, by performing a concatenation operation and a hash operation on the identity identifier, the password, and the second random number (k) generated in step S110. Then, the IoT device 200 calculates C, which is a second identity information verification parameter, by performing an exclusive-OR operation on the hash value of the connection-calculated identity identifier and password and the second random number (k).

사물 인터넷 디바이스(200)는 S160 단계에서 신원 정보 검증 파라미터를 계산한 후, S150 단계에서 중앙 관리 서버(100)로부터 수신한 복수의 인증 파라미터들을 재 연산하여 메모리에 저장하다(S170). 이때, 사물 인터넷 디바이스(200)는 다음 수학식 4를 이용하여 인증 파라미터들을 재 연산한다.After calculating the identity information verification parameters in step S160, the IoT device 200 recalculates the plurality of authentication parameters received from the central management server 100 in step S150 and stores them in the memory (S170). In this case, the IoT device 200 recalculates the authentication parameters using Equation 4 below.

Figure pat00004
Figure pat00004

여기서,

Figure pat00005
이고,
Figure pat00006
이다. here,
Figure pat00005
ego,
Figure pat00006
am.

여기서, SPW는 사용자의 패스워드를 메모리에 그대로 저장하지 않기 위하여 생성한 파라미터이고, S’는 서버가 생성한 검증 파라미터 S를 그대로 저장하지 않기 위하여 생성한 파라미터이다. S’의 경우 보안을 위하여 추후 매 세션마다 갱신된다.Here, SPW is a parameter created not to store the user's password in the memory as it is, and S' is a parameter created not to store the verification parameter S generated by the server as it is. In the case of S', it is updated every subsequent session for security.

이상에서 설명한 바와 같이 중앙 관리 서버(100)가 초기 설정되고 사물 인터넷 디바이스(200)가 중앙 관리 서버(100)에 등록되면, 다음 도 3의 절차에 따라 공개된 채널로 인증과 키 합의를 수행한다. As described above, when the central management server 100 is initially set and the IoT device 200 is registered with the central management server 100, authentication and key agreement are performed through the open channel according to the procedure of FIG. 3 . .

도 3은 본 발명의 실시예에 따른 인증 방법에 대한 흐름도이다.3 is a flowchart of an authentication method according to an embodiment of the present invention.

도 3에 도시된 바와 같이, 사물 인터넷 디바이스(200)는 신원 식별자(IDU)와 비밀번호(PWU)를 입력하면(S200), 임시 비밀 파라미터(n1)와 타임 스탬프(t1)를 생성한다(S201). 사물 인터넷 디바이스(200)가 임시 비밀 파라미터와 타임 스탬프를 생성하는 방법은 다양한 방법으로 실행될 수 있으므로, 본 발명의 실시예에서는 상세한 설명을 생략한다.As shown in FIG. 3 , the IoT device 200 generates an identity identifier (ID U ) and a password (PW U ) when inputting (S200), a temporary secret parameter (n1) and a time stamp (t1) ( S201). Since the method of generating the temporary secret parameter and the time stamp by the IoT device 200 may be performed in various ways, a detailed description thereof will be omitted in the embodiment of the present invention.

사물 인터넷 디바이스(200)는 제2 랜덤 넘버(k)와 SPW, 그리고 두 개의 해시값을 다음 수학식 5와 같이 계산한다(S202).The IoT device 200 calculates the second random number k, SPW, and two hash values as shown in Equation 5 below (S202).

Figure pat00007
Figure pat00007

사물 인터넷 디바이스(200)는 상기 도 2의 등록 절차에서 메모리에 저장해 둔 재연산 파라미터들 즉, 의사 식별자, BSN, ASN을 확인하고(S203), 복수의 검증 파라미터(S1, S2)들과 신원 정보 검증 파라미터(V')를 계산한다(S204). 여기서, 검증 파라미터들 S1, S2와 이후 설명할 S3 내지 S6은, 중앙 관리 서버(100)와 사물 인터넷 디바이스(200)가 서로 올바른 값을 생성하고 있는지 등을 검증하기 위한 파라미터들이다.The IoT device 200 checks the re-computation parameters stored in the memory in the registration procedure of FIG. 2 , that is, the pseudo identifier, B SN , and A SN ( S203 ), and includes a plurality of verification parameters ( S1 and S2 ) and The identity information verification parameter (V') is calculated (S204). Here, the verification parameters S1 and S2 and S3 to S6 to be described later are parameters for verifying whether the central management server 100 and the IoT device 200 are generating correct values with each other.

S204 단계에서 검증 파라미터들과 신원 정보 검증 파라미터는 다음 수학식 6과 같이 계산한다.In step S204, the verification parameters and the identity information verification parameters are calculated as in Equation 6 below.

Figure pat00008
Figure pat00008

사물 인터넷 디바이스(200)는 S204 단계에서 계산한 신원 정보 검증 파라미터(V')와 저장되어 있는 신원 정보 검증 파라미터(V)를 비교하여, S200 단계에서 입력된 신원 정보가 올바른 정보인지 검증한다(S205). 만약, 두 파라미터가 일치하지 않으면, 사물 인터넷 디바이스(200)는 인증 절차를 종료한다.The IoT device 200 compares the identity information verification parameter (V') calculated in step S204 with the stored identity information verification parameter (V) and verifies whether the identity information input in step S200 is correct information (S205). ). If the two parameters do not match, the IoT device 200 terminates the authentication procedure.

그러나, 두 파라미터가 일치하면, 사물 인터넷 디바이스(200)는 중앙 관리 서버(100)로 복수의 검증 파라미터(S1, S2)들, 의사 식별자(PID), 그리고 제2 인증 파라미터 ASN과 타임 스탬프(t1)를 포함하는 인증 요청 신호를 전송한다(S206).However, if the two parameters match, the IoT device 200 sends a plurality of verification parameters S1 and S2 to the central management server 100, a pseudo identifier (PID), and a second authentication parameter A SN and a time stamp ( t1) and transmits an authentication request signal (S206).

중앙 관리 서버(100)는 S206 단계에서 수신한 타임 스탬프의 유효성을 검증한다(S207). 중앙 관리 서버(100)가 타임 스탬프의 유효성을 검증하는 방법은 다양하며, 본 발명의 실시예에서는 현재 시각에서 206 단계에서 수신한 시각에서 타임 스탬프의 시각을 뺀 차이 값이, 미리 설정한 임계 시간보다 짧은 경우(

Figure pat00009
) 유효성 검증에 성공한 것으로 확인한다.The central management server 100 verifies the validity of the time stamp received in step S206 (S207). There are various methods for the central management server 100 to verify the validity of the time stamp, and in an embodiment of the present invention, the difference value obtained by subtracting the time of the time stamp from the time received in step 206 from the current time is a preset threshold time If shorter (
Figure pat00009
) to confirm that the validation was successful.

중앙 관리 서버(100)는 자신의 마스터 키를 이용하여 사물 인터넷 디바이스(200)의 제1 인증 파라미터(S)를 계산한다(S208). 그리고 제1 랜덤 넘버(r)를 제2 인증 파라미터 ASN으로부터 확인한다(S209). 중앙 관리 서버(100)는 다음 수학식 7과 수학식 8을 이용하여 제1 인증 파라미터 S를 계산하고 제1 랜덤 넘버(r)를 확인한다.The central management server 100 calculates the first authentication parameter S of the IoT device 200 using its master key (S208). Then, the first random number r is checked from the second authentication parameter A SN (S209). The central management server 100 calculates the first authentication parameter S using the following Equations 7 and 8 and confirms the first random number r.

Figure pat00010
Figure pat00010

Figure pat00011
Figure pat00011

중앙 관리 서버(100)는 복수의 파라미터들(BSN, n1, S2)을 계산하고(S210), 사물 인터넷 디바이스(200)로부터 받은 제2 검증 파라미터 S2와 계산한 복수의 파라미터들 중 S2가 일치하는지 확인한다(S211). 만약 일치하지 않으면 세션을 종료한다(S212). 여기서, 중앙 관리 서버(100)는 다음 수학식 9를 이용하여 복수의 파라미터들을 계산한다.The central management server 100 calculates a plurality of parameters B SN , n1 , S2 ( S210 ), and the second verification parameter S2 received from the IoT device 200 matches S2 among the plurality of calculated parameters It is checked whether or not (S211). If they do not match, the session is terminated (S212). Here, the central management server 100 calculates a plurality of parameters using the following Equation (9).

Figure pat00012
Figure pat00012

중앙 관리 서버(100)는 타임 스탬프(t2)를 생성하고 두 랜덤 넘버 n2, r+를 계산하며, 두 랜덤 넘버를 이용하여 기존의 사물 인터넷 디바이스(200)의 인증 파라미터 ASN, BSN, S, 그리고 의사 식별자를 갱신한다(S213). 이때, 두 랜덤 넘버 중 r+

Figure pat00013
로 계산된다.The central management server 100 generates a timestamp t2 , calculates two random numbers n2, r + , and uses the two random numbers to authenticate the existing IoT device 200 A SN , B SN , S , and the pseudo identifier is updated (S213). At this time, of the two random numbers, r + is
Figure pat00013
is calculated as

여기서, *가 있는 파라미터는 사물 인터넷 디바이스(200)가 전송해온 랜덤 넘버이며, +는 파라미터는 중앙 관리 서버(100)가 업데이트를 위하여 새롭게 생성해 낸 파라미터를 의미한다. 즉, +가 있는 파라미터들은 업데이트된 값을 의미한다.Here, a parameter with * is a random number transmitted by the IoT device 200 , and a parameter + means a parameter newly generated by the central management server 100 for update. That is, parameters with + mean updated values.

그리고, 이후 설명할 **가 있는 파라미터들의 값은, 중앙 관리 서버(100)가 사물 인터넷 디바이스(200)에 전송한 값으로, 사물 인터넷 디바이스(200)에서 검증해야 하는 값을 의미한다. 예를 들어, 만약 중앙 관리 서버(100)가 전송한 r** 값이 올바르지 않다면, S6 검증 파라미터가 일치하지 않으므로 잘못된 값이 전송되었음을 확인할 수 있다.And, the values of parameters with **, which will be described later, are values transmitted by the central management server 100 to the IoT device 200 and mean values to be verified by the IoT device 200 . For example, if the r** value transmitted by the central management server 100 is not correct, it may be confirmed that the wrong value is transmitted because the S6 verification parameter does not match.

그리고 중앙 관리 서버(100)는 다음 파라미터들을 수학식 10을 통해 계산한 후, 계산 값 S3, S4, S5, S6, t2를 전송한다(S213). Then, the central management server 100 calculates the following parameters through Equation 10, and then transmits the calculated values S3, S4, S5, S6, and t2 (S213).

Figure pat00014
Figure pat00014

사물 인터넷 디바이스(200)는 S213 단계에서 수신한 타임 스탬프(t2)의 유효 성을 검증하고(S215), n2, BSN, y, 의사 식별자를 계산한다. 그리고 메모리에 저장된 S, BSN을 확인한 후, S6를

Figure pat00015
와 같이 계산하여 올바른 값이 전송되었는지 확인한다(S216, S217). 사물 인터넷 디바이스(200)는 수신한 파라미터(S3, S4, S5, S6, t2)로부터 갱신된 인증 파라미터
Figure pat00016
를 찾아온다(S218). 즉, 사물 인터넷 디바이스(200)가 올바른 디바이스라면, 중앙 관리 서버(100)가 전송한 파라미터 S4, S5로부터 S+, BSN+값을 계산하고, ASN+, PID+ 값을 생성할 수 있다.The IoT device 200 verifies the validity of the time stamp t2 received in step S213 (S215), and calculates n2, B SN , y, and a pseudo-identifier. And after checking the S, B SN stored in the memory,
Figure pat00015
It is calculated as shown and checked whether the correct value is transmitted (S216, S217). The IoT device 200 receives an authentication parameter updated from the received parameters (S3, S4, S5, S6, t2).
Figure pat00016
comes to (S218). That is, if the IoT device 200 is a correct device, S+ and B SN + values may be calculated from the parameters S4 and S5 transmitted by the central management server 100, and A SN + and PID+ values may be generated.

사물 인터넷 디바이스(200)는 갱신된 인증 파라미터를 재연산하고, 재연산된 갱신 인증 파라미터들(

Figure pat00017
)을 저장한다(S219). 여기서, 갱신된 인증 파라미터는 다음 수학식 11과 같이 재연산된다.The IoT device 200 recalculates the updated authentication parameters, and recalculates the recalculated updated authentication parameters (
Figure pat00017
) is stored (S219). Here, the updated authentication parameter is recalculated as shown in Equation 11 below.

Figure pat00018
Figure pat00018

최종적으로 사물 인터넷 디바이스(200)와 중앙 관리 서버(100)는 일정 기간 동안 사용할 세션 키(Ks)를 계산하여(

Figure pat00019
), 키 합의를 수행한다(S220). 이와 같이 중앙 관리 서버(100)가 생성하는 모든 사용자의 파라미터들은 단계 마지막에 갱신되므로, 불추적성이 보장된다.Finally, the IoT device 200 and the central management server 100 calculate a session key (Ks) to be used for a certain period of time (
Figure pat00019
), perform key agreement (S220). In this way, all user parameters generated by the central management server 100 are updated at the end of the step, so traceability is guaranteed.

도 4는 본 발명의 실시예에 따른 컴퓨터 시스템을 나타내는 도면이다. 4 is a diagram illustrating a computer system according to an embodiment of the present invention.

본 발명의 실시예에 따른 중앙 관리 서버(100)는 도 4와 같은 컴퓨터 시스템(300)으로 구현될 수 있다. 그리고 사물 인터넷 디바이스(200)의 각 구성 요소도 도 4와 같은 컴퓨터 시스템(300)으로 구현될 수 있다. The central management server 100 according to an embodiment of the present invention may be implemented as a computer system 300 as shown in FIG. 4 . In addition, each component of the IoT device 200 may be implemented as the computer system 300 shown in FIG. 4 .

컴퓨터 시스템(300)은 버스(320)를 통해 통신하는 프로세서(310), 메모리(330), 사용자 인터페이스 입력 장치(340), 사용자 인터페이스 출력 장치(350), 그리고 저장 장치(360) 중 적어도 하나를 포함할 수 있다. The computer system 300 includes at least one of a processor 310 , a memory 330 , a user interface input device 340 , a user interface output device 350 , and a storage device 360 communicating via a bus 320 . may include

프로세서(310)는 중앙 처리 장치(central processing unit, CPU)이거나, 또는 메모리(330) 또는 저장 장치(360)에 저장된 명령을 실행하는 반도체 장치일 수 있다. 프로세서(310)는 상기 도 1 내지 도 3에서 설명한 기능들 및 방법을 구현하도록 구성될 수 있다. The processor 310 may be a central processing unit (CPU) or a semiconductor device that executes instructions stored in the memory 330 or the storage device 360 . The processor 310 may be configured to implement the functions and methods described with reference to FIGS. 1 to 3 .

메모리(330) 및 저장 장치(360)는 다양한 형태의 휘발성 또는 비휘발성 저장 매체를 포함할 수 있다. 예를 들어, 메모리(330)는 ROM(read only memory)(331) 및 RAM(random access memory)(332)를 포함할 수 있다. 본 발명의 실시예에서 메모리(330)는 프로세서(310)의 내부 또는 외부에 위치할 수 있고, 메모리(330)는 이미 알려진 다양한 수단을 통해 프로세서(310)와 연결될 수 있다.The memory 330 and the storage device 360 may include various types of volatile or non-volatile storage media. For example, the memory 330 may include a read only memory (ROM) 331 and a random access memory (RAM) 332 . In an embodiment of the present invention, the memory 330 may be located inside or outside the processor 310 , and the memory 330 may be connected to the processor 310 through various known means.

이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.Although the embodiments of the present invention have been described in detail above, the scope of the present invention is not limited thereto, and various modifications and improved forms of the present invention are also provided by those skilled in the art using the basic concept of the present invention as defined in the following claims. is within the scope of the right.

Claims (15)

중앙 관리 서버가 디바이스와 연동하여 상기 디바이스를 인증하는 방법으로서,
상기 디바이스로부터 의사 식별자와 제1 랜덤 넘버를 포함하는 신원 정보를 수신하면, 상기 디바이스를 인증하기 위한 복수의 인증 파라미터들을 계산하는 단계,
상기 계산한 복수의 인증 파라미터들을 메모리에 저장하지 않고 상기 디바이스로 전달하는 단계,
상기 디바이스로부터 상기 의사 식별자, 상기 복수의 인증 파라미터들 중 어느 하나의 인증 파라미터, 복수의 검증 파라미터들 중 적어도 하나를 포함하는 인증 요청 정보를 수신하면, 수신한 인증 요청 정보를 토대로 상기 디바이스를 인증하는 단계, 그리고
인증 후 상기 인증 파라미터들을 갱신하여 상기 디바이스로 전송하는 단계
를 포함하는, 인증 방법.
As a method for the central management server to authenticate the device in conjunction with the device,
upon receiving identity information including a pseudo identifier and a first random number from the device, calculating a plurality of authentication parameters for authenticating the device;
transmitting the calculated plurality of authentication parameters to the device without storing it in a memory;
When authentication request information including at least one of the pseudo identifier, any one of the plurality of authentication parameters, and at least one of the plurality of verification parameters is received from the device, the device is authenticated based on the received authentication request information step, and
After authentication, updating the authentication parameters and transmitting them to the device
Including, authentication method.
제1항에 있어서,
상기 인증 파라미터를 계산하는 단계 이전에,
상기 복수의 인증 파라미터들을 생성하거나 처리하기 위한 마스터 키를 생성하는 단계
를 포함하는, 인증 방법.
According to claim 1,
Before calculating the authentication parameter,
generating a master key for generating or processing the plurality of authentication parameters;
Including, authentication method.
제1항에 있어서,
상기 복수의 인증 파라미터들은 각각, 상기 디바이스로부터 수신한 상기 의사 식별자와 제1 랜덤 넘버, 그리고 상기 마스터 키 중 적어도 하나의 정보를 해시 연산과 배타적 논리 합 연산으로 계산하는, 인증 방법.
According to claim 1,
Each of the plurality of authentication parameters calculates at least one of the pseudo identifier, the first random number, and the master key received from the device by a hash operation and an exclusive-OR operation.
제3항에 있어서,
상기 인증 파라미터들을 계산하는 단계는,
상기 의사 식별자와 상기 마스터 키를 이용하여 제1 인증 파라미터를 계산하고,
상기 제1 인증 파라미터와 상기 제1 랜덤 넘버를 이용하여 제2 인증 파라미터를 계산하며,
상기 제1 랜덤 넘버와 상기 의사 식별자, 그리고 상기 마스터 키를 이용하여 제3 인증 파라미터를 계산하는, 인증 방법.
4. The method of claim 3,
Calculating the authentication parameters comprises:
calculating a first authentication parameter using the pseudo identifier and the master key;
calculating a second authentication parameter using the first authentication parameter and the first random number;
and calculating a third authentication parameter by using the first random number, the pseudo identifier, and the master key.
제4항에 있어서,
상기 인증 요청 정보는 상기 디바이스에서 생성한 타임 스탬프를 포함하고,
상기 디바이스를 인증하는 단계는,
상기 타임 스탬프의 유효성을 평가하는 단계,
상기 제2 인증 파라미터로부터 상기 제1 랜덤 넘버를 확인하는 단계,
상기 마스터 키, 상기 의사 식별자, 상기 확인한 제1 랜덤 넘버를 토대로 제4 인증 파라미터를 계산하는 단계, 그리고
상기 디바이스로부터 수신한 인증 요청 정보에 포함된 특정 검증 파라미터와 상기 제4 인증 파라미터가 일치하면, 상기 디바이스와의 세션을 유지하는 단계
를 포함하는, 인증 방법.
5. The method of claim 4,
The authentication request information includes a time stamp generated by the device,
The step of authenticating the device,
evaluating the validity of the timestamp;
identifying the first random number from the second authentication parameter;
calculating a fourth authentication parameter based on the master key, the pseudo identifier, and the confirmed first random number; and
maintaining a session with the device when a specific verification parameter included in the authentication request information received from the device matches the fourth authentication parameter;
Including, authentication method.
제1항에 있어서,
상기 디바이스로 전송하는 단계는,
인증 파라미터를 갱신하기 위한 복수의 랜덤 넘버들을 계산하는 단계,
상기 랜덤 넘버들을 이용하여 상기 인증 파라미터들을 갱신하는 단계, 그리고
갱신한 인증 파라미터들을 토대로 계산된 복수의 검증 값들을 상기 디바이스로 전송하는 단계
를 포함하는, 인증 방법.
According to claim 1,
Transmitting to the device comprises:
calculating a plurality of random numbers for updating the authentication parameter;
updating the authentication parameters using the random numbers; and
Transmitting a plurality of verification values calculated based on the updated authentication parameters to the device
Including, authentication method.
적어도 하나의 프로세서를 포함하는 디바이스가 중앙 관리 서버와 연동하여 인증하는 방법으로서,
신원 정보를 생성하여 상기 중앙 관리 서버에 디바이스 자신을 등록하는 단계,
상기 중앙 관리 서버로부터 인증을 위한 복수의 인증 파라미터들을 수신하면, 상기 복수의 인증 파라미터들을 재 연산하여 메모리에 저장하는 단계,
상기 생성한 신원 정보를 이용하여 상기 메모리에 저장한 인증 파라미터들을 읽어들여 검증 파라미터를 계산하는 단계,
상기 검증 파라미터와 인증 파라미터 중 적어도 하나를 포함하는 인증 요청 신호를 상기 중앙 관리 서버로 전송하는 단계, 그리고
상기 중앙 관리 서버로부터 인증 여부에 따라, 갱신된 인증 파라미터들을 수신하면 재 연산하여 저장하는 단계
를 포함하는, 인증 방법.
As a method for authenticating a device including at least one processor in conjunction with a central management server,
generating identity information and registering the device itself in the central management server;
Upon receiving a plurality of authentication parameters for authentication from the central management server, recalculating the plurality of authentication parameters and storing the plurality of authentication parameters in a memory;
Calculating verification parameters by reading authentication parameters stored in the memory using the generated identity information;
transmitting an authentication request signal including at least one of the verification parameter and the authentication parameter to the central management server; and
Re-calculating and storing the updated authentication parameters according to whether the authentication is performed from the central management server
Including, authentication method.
제7항에 있어서,
상기 중앙 관리 서버에 등록하는 단계는,
신원 식별자와 비밀번호를 생성하는 단계,
제1 랜덤 넘버 및 제2 랜덤 넘버를 생성하는 단계,
상기 신원 식별자와 비밀번호 그리고 상기 제1 랜덤 넘버를 이용하여 의사 식별자를 계산하는 단계, 그리고
상기 의사 식별자와 상기 제1 랜덤 넘버를 포함하는 상기 신원 정보를 상기 중앙 관리 서버로 전송하는 단계
를 포함하는, 인증 방법.
8. The method of claim 7,
The step of registering with the central management server,
generating an identity identifier and password;
generating a first random number and a second random number;
calculating a pseudo-identifier using the identity identifier and password and the first random number; and
transmitting the identity information including the pseudo identifier and the first random number to the central management server
Including, authentication method.
제8항에 있어서,
상기 의사 식별자는 해시 연산과 배타적 논리 합 연산으로 계산되는, 인증 방법.
9. The method of claim 8,
and the pseudo-identifier is calculated by a hash operation and an exclusive-OR operation.
제9항에 있어서,
상기 메모리에 저장하는 단계는,
상기 중앙 관리 서버로부터 상기 의사 식별자, 상기 중앙 관리 서버에서 생성한 마스터 키, 그리고 상기 제1 랜덤 넘버 중 적어도 하나를 이용하여 계산된 상기 복수의 인증 파라미터들을 수신하는 단계, 그리고
상기 복수의 인증 파라미터들을 상기 제2 랜덤 넘버, 상기 신원 식별자, 패스워드 중 적어도 하나를 이용하여 재 연산하는 단계
를 포함하는, 인증 방법.
10. The method of claim 9,
The step of storing in the memory,
Receiving the plurality of authentication parameters calculated using at least one of the pseudo identifier, the master key generated by the central management server, and the first random number from the central management server, and
re-calculating the plurality of authentication parameters using at least one of the second random number, the identity identifier, and a password
Including, authentication method.
제10항에 있어서,
상기 검증 파라미터를 계산하는 단계는,
신원 정보를 수신하는 단계,
상기 신원 식별자, 패스워드, 그리고 상기 제2 랜덤 넘버를 이용하여 사용자 정보 검증 파라미터를 계산하는 단계, 그리고
상기 계산한 사용자 정보 검증 파라미터를 토대로 상기 수신한 신원 정보를 검증하는 단계
를 포함하는, 인증 방법.
11. The method of claim 10,
Calculating the verification parameter comprises:
receiving identification information;
calculating a user information verification parameter using the identity identifier, the password, and the second random number; and
verifying the received identity information based on the calculated user information verification parameter
Including, authentication method.
제11항에 있어서,
상기 중앙 관리 서버로 전송하는 단계는,
상기 복수의 인증 파라미터들 중 적어도 하나, 신원 식별자, 비밀번호, 그리고 상기 제2 랜덤 넘버 중 적어도 하나를 이용하여 검증 정보를 계산하는 단계
를 포함하는, 인증 방법.
12. The method of claim 11,
The step of transmitting to the central management server,
calculating verification information using at least one of the plurality of authentication parameters, an identity identifier, a password, and at least one of the second random number;
Including, authentication method.
제12항에 있어서,
상기 재 연산하여 저장하는 단계는,
미리 설정한 기간 동안 사용할 세션 키를 계산하여, 키 합의를 수행하는 단계
를 포함하는, 인증 방법.
13. The method of claim 12,
The step of re-calculating and storing is,
Performing key agreement by calculating a session key to be used for a preset period
Including, authentication method.
중앙 관리 서버와 연동하여 인증 절차를 수행하는 디바이스로서,
프로세서, 그리고
상기 프로세서에 의해 수행되는 컴퓨터 프로그램을 로드(load)하고, 상기 중앙 관리 서버에서 생성된 복수의 인증 파라미터들과 상기 프로세서에서 생성한 신원 정보를 저장하는 메모리
를 포함하고,
상기 프로세서는,
상기 중앙 관리 서버로 전송할 신원 식별자와 비밀번호를 생성하고, 상기 중앙 관리 서버로부터 수신한 인증 파라미터들을 재 연산하여 재 연산된 인증 파라미터들을 상기 메모리에 저장하는, 디바이스.
A device that performs an authentication procedure in conjunction with a central management server, comprising:
processor, and
A memory for loading a computer program executed by the processor and storing a plurality of authentication parameters generated by the central management server and identity information generated by the processor
including,
The processor is
A device for generating an identity identifier and password to be transmitted to the central management server, re-calculating the authentication parameters received from the central management server, and storing the re-calculated authentication parameters in the memory.
제14항에 있어서,
상기 프로세서는,
해시 연산과 배타적 논리 합 연산으로 상기 인증 파라미터들을 재연산하는, 디바이스.
15. The method of claim 14,
The processor is
A device for recomputing the authentication parameters with a hash operation and an exclusive-OR operation.
KR1020200040854A 2020-04-03 2020-04-03 Termimal, server, lightweight authentication method using the same Withdrawn KR20210123575A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200040854A KR20210123575A (en) 2020-04-03 2020-04-03 Termimal, server, lightweight authentication method using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200040854A KR20210123575A (en) 2020-04-03 2020-04-03 Termimal, server, lightweight authentication method using the same

Publications (1)

Publication Number Publication Date
KR20210123575A true KR20210123575A (en) 2021-10-14

Family

ID=78116204

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200040854A Withdrawn KR20210123575A (en) 2020-04-03 2020-04-03 Termimal, server, lightweight authentication method using the same

Country Status (1)

Country Link
KR (1) KR20210123575A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114785615A (en) * 2022-05-23 2022-07-22 科大天工智能装备技术(天津)有限公司 Lightweight authentication method for Internet of things system in cloud computing environment
CN116321147A (en) * 2023-02-01 2023-06-23 西安电子科技大学 Multi-attribute terminal identity authentication method and system based on zero trust

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114785615A (en) * 2022-05-23 2022-07-22 科大天工智能装备技术(天津)有限公司 Lightweight authentication method for Internet of things system in cloud computing environment
CN114785615B (en) * 2022-05-23 2023-07-25 北京科技大学 Lightweight authentication method for Internet of things system in cloud computing environment
CN116321147A (en) * 2023-02-01 2023-06-23 西安电子科技大学 Multi-attribute terminal identity authentication method and system based on zero trust

Similar Documents

Publication Publication Date Title
US12143476B2 (en) Method of data transfer, a method of controlling use of data and cryptographic device
US11088853B2 (en) Methods and systems for PKI-based authentication
JP6684930B2 (en) Blockchain-based identity authentication method, device, node and system
US11811739B2 (en) Web encryption for web messages and application programming interfaces
CN108616504B (en) A sensor node identity authentication system and method based on the Internet of Things
US10291567B2 (en) System and method for resetting passwords on electronic devices
US12457097B2 (en) Zero trust authentication
EP2905719A1 (en) Device and method certificate generation
KR102591826B1 (en) Apparatus and method for authenticating device based on certificate using physical unclonable function
KR102278808B1 (en) System for single packet authentication using tcp packet and method thereof
WO2019061076A1 (en) Authentication protocol based on trusted execution environment
US9398024B2 (en) System and method for reliably authenticating an appliance
US20250016145A1 (en) End-to-end verifiable multi-factor authentication service
CN113647080B (en) Providing digital certificates in a cryptographically secure manner
CN116707983A (en) Authorization authentication method and device, access authentication method and device, equipment, medium
JP2024513521A (en) Secure origin of trust registration and identification management of embedded devices
KR102416561B1 (en) Blockchain-based authenticaton and revocation method for the internet of things gateway
KR20210123575A (en) Termimal, server, lightweight authentication method using the same
CN113424488B (en) Method for proving the origin of a digital key pair
KR20170111809A (en) Bidirectional authentication method using security token based on symmetric key
JP2024513526A (en) Root of trust registration and device-bound public key registration
US20240152599A1 (en) Systems and methods for managing multiple valid one time password (otp) for a single identity
JP2024077561A (en) Personal authentication method and system
US9882891B2 (en) Identity verification
CN112637122B (en) Test method, response method and system for access control of communication unit master station

Legal Events

Date Code Title Description
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

P22-X000 Classification modified

St.27 status event code: A-2-2-P10-P22-nap-X000

R17-X000 Change to representative recorded

St.27 status event code: A-3-3-R10-R17-oth-X000

PC1203 Withdrawal of no request for examination

St.27 status event code: N-1-6-B10-B12-nap-PC1203