KR102424873B1 - System and method for multi-factor authentication using password and behavior pattern - Google Patents

System and method for multi-factor authentication using password and behavior pattern Download PDF

Info

Publication number
KR102424873B1
KR102424873B1 KR1020200102207A KR20200102207A KR102424873B1 KR 102424873 B1 KR102424873 B1 KR 102424873B1 KR 1020200102207 A KR1020200102207 A KR 1020200102207A KR 20200102207 A KR20200102207 A KR 20200102207A KR 102424873 B1 KR102424873 B1 KR 102424873B1
Authority
KR
South Korea
Prior art keywords
authentication
behavior pattern
authentication server
terminal
password
Prior art date
Application number
KR1020200102207A
Other languages
Korean (ko)
Other versions
KR20220021543A (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 KR1020200102207A priority Critical patent/KR102424873B1/en
Publication of KR20220021543A publication Critical patent/KR20220021543A/en
Application granted granted Critical
Publication of KR102424873B1 publication Critical patent/KR102424873B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/45Structures or tools for the administration of authentication
    • G06F21/46Structures or tools for the administration of authentication by designing passwords or checking the strength of passwords
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/316User authentication by observing the pattern of computer usage, e.g. typical user behaviour
    • 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/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3228One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2113Multi-level security, e.g. mandatory access control
    • 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/062Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying encryption of the keys

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Social Psychology (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Telephonic Communication Services (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

비밀번호 및 행동 패턴을 이용한 멀티 팩터 인증 시스템 및 방법이 개시된다. 일 실시예에 따른 멀티 팩터 인증 시스템은 단말 및 인증 서버를 포함하며, 상기 단말은, 상기 인증 서버와 사전 공유된 패스워드 기반 인증 정보를 이용하여 단말 사용자의 1차 인증을 수행하고, 상기 1차 인증 과정에서 생성된 단말측 세션키를 이용하여 상기 단말 사용자로부터 획득된 인증 대상 행동 패턴을 암호화하여 상기 인증 서버로 송신하며, 상기 인증 서버는, 상기 1차 인증 과정에서 생성된 서버측 세션키를 이용하여 상기 암호화된 인증 대상 행동 패턴을 복호화하고, 복호화된 인증 대상 행동 패턴을 상기 사용자의 행동 패턴 모델과 비교하여 상기 단말 사용자의 2차 인증을 수행한다.A multi-factor authentication system and method using passwords and behavior patterns are disclosed. A multi-factor authentication system according to an embodiment includes a terminal and an authentication server, wherein the terminal performs primary authentication of a terminal user using password-based authentication information previously shared with the authentication server, and the primary authentication The authentication target behavior pattern obtained from the terminal user is encrypted using the terminal-side session key generated in the process and transmitted to the authentication server, and the authentication server uses the server-side session key generated in the first authentication process. to decrypt the encrypted authentication target behavior pattern, and compare the decrypted authentication target behavior pattern with the user behavior pattern model to perform secondary authentication of the terminal user.

Description

비밀번호 및 행동 패턴을 이용한 멀티 팩터 인증 시스템 및 방법{SYSTEM AND METHOD FOR MULTI-FACTOR AUTHENTICATION USING PASSWORD AND BEHAVIOR PATTERN}SYSTEM AND METHOD FOR MULTI-FACTOR AUTHENTICATION USING PASSWORD AND BEHAVIOR PATTERN}

개시되는 실시예들은 비밀번호 및 행동 패턴을 이용한 인증 기술과 관련된다.Disclosed embodiments relate to authentication techniques using passwords and behavioral patterns.

인터넷 및 모바일 네트워크 등이 보편화되면서 온라인을 통해 대부분의 정보가 유통됨에 따라, 온라인상에서 사용자를 인증하기 위한 기술의 중요성 또한 점점 높아지고 있다. 인증 기술은 크게 암호 기반 인증, 생체 인증, OTP 등으로 대표되는 소지 기반 인증 등으로 나눌 수 있으며, 최근에는 사용자의 행동 패턴(behavior pattern)을 이용한 인증 기술이 개발되고 있다.As most information is distributed online as the Internet and mobile networks become common, the importance of technology for authenticating users online is also increasing. Authentication technology can be largely divided into password-based authentication, biometric authentication, possession-based authentication represented by OTP, and the like. Recently, authentication technology using a user's behavior pattern has been developed.

사용자의 행동 패턴 기반 인증을 위해서는 사전에 사용자로부터 행동 패턴을 수집하고 이로부터 사용자별 행동 패턴 모델(behavior pattern model)을 구성하여야 한다. 행동 패턴 모델은 사용자가 임의로 설정한 것이 아닌 사용자의 자연스러운 행동 패턴을 반영하여 구성된다. 따라서 행동 패턴 모델은 그 자체로 개인정보의 성격을 갖고 있을 뿐 아니라, 임의로 변경 가능한 패스워드 등과 달리 제3자에게 노출되더라도 이를 변경하는 것이 불가능하거나 매우 어렵다. 이에 따라 기존의 행동 패턴 기반 인증은 주로 행동 패턴 모델을 전송할 필요가 없는 로컬 인증 등에만 제한적으로 사용되어 오고 있는 실정이다.For user behavior pattern-based authentication, it is necessary to collect behavior patterns from users in advance and construct a behavior pattern model for each user from them. The behavior pattern model is constructed by reflecting the user's natural behavior pattern, not the user's arbitrarily set behavior pattern. Therefore, the behavior pattern model itself has the characteristics of personal information, and unlike passwords that can be changed arbitrarily, it is impossible or very difficult to change it even if it is exposed to a third party. Accordingly, the existing behavior pattern-based authentication has been limitedly used mainly for local authentication that does not need to transmit a behavior pattern model.

대한민국 등록특허공보 제10-1990454호 (2019. 10. 01)Republic of Korea Patent Publication No. 10-1990454 (2019. 10. 01)

개시되는 실시예들은 비밀번호 및 행동 패턴을 이용한 멀티 팩터 인증을 통해 사용자 인증의 보안성을 강화하며, 특히 로컬이 아닌 원격(remote) 환경에서도 행동 기반 인증의 보안성을 보장하기 위한 기술적인 수단을 제공하기 위한 것이다.The disclosed embodiments enhance the security of user authentication through multi-factor authentication using passwords and behavior patterns, and in particular provide technical means for ensuring the security of behavior-based authentication even in a remote environment rather than a local environment. it is to do

예시적인 실시예에 따르면, 단말 및 인증 서버를 포함하는 멀티 팩터 인증 시스템으로서, 상기 단말은, 상기 인증 서버와 사전 공유된 패스워드 기반 인증 정보를 이용하여 단말 사용자의 1차 인증을 수행하고, 상기 1차 인증 과정에서 생성된 단말측 세션키를 이용하여 상기 단말 사용자로부터 획득된 인증 대상 행동 패턴을 암호화하여 상기 인증 서버로 송신하며, 상기 인증 서버는, 상기 1차 인증 과정에서 생성된 서버측 세션키를 이용하여 상기 암호화된 인증 대상 행동 패턴을 복호화하고, 복호화된 인증 대상 행동 패턴을 상기 사용자의 행동 패턴 모델과 비교하여 상기 단말 사용자의 2차 인증을 수행하는, 멀티 팩터 인증 시스템이 제공된다.According to an exemplary embodiment, as a multi-factor authentication system including a terminal and an authentication server, the terminal performs primary authentication of a terminal user using password-based authentication information previously shared with the authentication server, and The authentication target behavior pattern obtained from the terminal user is encrypted using the terminal-side session key generated in the secondary authentication process and transmitted to the authentication server, wherein the authentication server includes the server-side session key generated in the primary authentication process. A multi-factor authentication system is provided that decrypts the encrypted authentication target behavior pattern using

상기 패스워드 기반 인증 정보는, 상기 단말 사용자의 패스워드 또는 상기 패스워드의 해시값일 수 있다.The password-based authentication information may be a password of the terminal user or a hash value of the password.

상기 단말은, 상기 사용자로부터 수집된 행동 패턴으로부터 상기 행동 패턴 모델을 생성하고, 생성된 상기 행동 패턴 모델을 상기 인증 서버에 등록할 수 있다.The terminal may generate the behavior pattern model from the behavior patterns collected from the user, and register the generated behavior pattern model in the authentication server.

상기 단말은, 랜덤하게 설정된 변환 함수(transformation function)를 이용하여 상기 수집된 행동 패턴을 변환하고, 변환된 행동 패턴을 이용하여 상기 행동 패턴 모델을 생성할 수 있다.The terminal may transform the collected behavior pattern using a randomly set transformation function, and generate the behavior pattern model using the transformed behavior pattern.

상기 단말은, 상기 변환 함수를 이용하여 인증 대상 행동 패턴을 변환한 뒤 상기 인증 서버로 송신할 수 있다.The terminal may convert the authentication target behavior pattern using the transformation function and then transmit it to the authentication server.

상기 단말은, 상기 인증 서버에 등록된 상기 행동 패턴 모델이 외부로 노출된 것으로 판단되는 경우, 새로운 변환 함수를 이용하여 상기 수집된 행동 패턴을 재변환하여 상기 행동 패턴 모델을 재구성하고, 재구성된 상기 행동 패턴 모델을 상기 인증 서버에 재등록할 수 있다.When it is determined that the behavior pattern model registered in the authentication server is exposed to the outside, the terminal reconverts the collected behavior pattern using a new transformation function to reconstruct the behavior pattern model, and the reconstructed The behavior pattern model may be re-registered in the authentication server.

상기 인증 서버는, 상기 2차 인증에 성공한 경우 상기 인증 대상 행동 패턴을 이용하여 상기 행동 패턴 모델을 갱신할 수 있다.When the second authentication is successful, the authentication server may update the behavior pattern model by using the authentication target behavior pattern.

상기 인증 서버는, 상기 2차 인증에 성공한 경우 상기 인증 대상 행동 패턴을 저장하고, 상기 행동 패턴 모델이 손상된 경우, 기 저장된 상기 인증 대상 행동 패턴을 이용하여 상기 행동 패턴 모델을 재생성할 수 있다.The authentication server may store the authentication target behavior pattern when the second authentication is successful, and regenerate the behavior pattern model using the previously stored authentication target behavior pattern when the behavior pattern model is damaged.

다른 예시적인 실시예에 따르면, 사용자로부터 수집된 행동 패턴으로부터 행동 패턴 모델을 생성하고, 생성된 상기 행동 패턴 모델을 인증 서버에 등록하는 행동 패턴 수집 모듈; 상기 인증 서버와 사전 공유된 패스워드 기반 인증 정보를 이용하여 상기 인증 서버와 1차 인증을 수행하고, 상기 인증 서버와 공유되는 세션키를 생성하는 제1 인증 모듈; 및 상기 사용자로부터 획득된 인증 대상 행동 패턴을 상기 세션키로 암호화하여 상기 인증 서버로 송신함으로써 상기 인증 서버와 2차 인증을 수행하는 제2 인증 모듈을 포함하는, 단말 장치가 제공된다.According to another exemplary embodiment, a behavior pattern collection module that generates a behavior pattern model from behavior patterns collected from a user, and registers the generated behavior pattern model in an authentication server; a first authentication module for performing primary authentication with the authentication server using the password-based authentication information previously shared with the authentication server, and generating a session key shared with the authentication server; and a second authentication module for performing secondary authentication with the authentication server by encrypting the behavior pattern to be authenticated obtained from the user with the session key and transmitting it to the authentication server.

상기 패스워드 기반 인증 정보는, 상기 사용자의 패스워드 또는 상기 패스워드의 해시값일 수 있다.The password-based authentication information may be a password of the user or a hash value of the password.

상기 행동 패턴 수집 모듈은, 랜덤하게 설정된 변환 함수(transformation function)를 이용하여 상기 수집된 행동 패턴을 변환하고, 변환된 행동 패턴을 이용하여 상기 행동 패턴 모델을 생성할 수 있다.The behavior pattern collection module may transform the collected behavior pattern using a randomly set transformation function, and generate the behavior pattern model using the transformed behavior pattern.

상기 제2 인증 모듈은, 상기 변환 함수를 이용하여 인증 대상 행동 패턴을 변환한 뒤 상기 인증 서버로 송신할 수 있다.The second authentication module may convert the behavior pattern to be authenticated by using the transformation function and then transmit it to the authentication server.

상기 행동 패턴 수집 모듈은, 상기 인증 서버에 등록된 상기 행동 패턴 모델이 외부로 노출된 것으로 판단되는 경우, 새로운 변환 함수를 이용하여 상기 수집된 행동 패턴을 재변환하여 상기 행동 패턴 모델을 재구성하고, 재구성된 상기 행동 패턴 모델을 상기 인증 서버에 재등록할 수 있다.When it is determined that the behavior pattern model registered in the authentication server is exposed to the outside, the behavior pattern collection module reconverts the collected behavior pattern using a new transformation function to reconstruct the behavior pattern model, The reconfigured behavior pattern model may be re-registered in the authentication server.

다른 예시적인 실시예에 따르면, 하나 이상의 프로세서들, 및 상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 단말 장치에서 수행되는 방법으로서, 사용자로부터 수집된 행동 패턴으로부터 행동 패턴 모델을 생성하고, 생성된 상기 행동 패턴 모델을 인증 서버에 등록하는 단계; 상기 인증 서버와 사전 공유된 패스워드 기반 인증 정보를 이용하여 상기 인증 서버와 1차 인증을 수행하고, 상기 인증 서버와 공유되는 세션키를 생성하는 제1 인증 단계; 및 상기 사용자로부터 획득된 인증 대상 행동 패턴을 상기 세션키로 암호화하여 상기 인증 서버로 송신함으로써 상기 인증 서버와 2차 인증을 수행하는 제2 인증 단계를 포함하는, 방법이 제공된다.According to another exemplary embodiment, as a method performed in a terminal device having one or more processors and a memory for storing one or more programs executed by the one or more processors, a behavior pattern from a behavior pattern collected from a user generating a model and registering the generated behavior pattern model in an authentication server; a first authentication step of performing primary authentication with the authentication server using password-based authentication information previously shared with the authentication server, and generating a session key shared with the authentication server; and a second authentication step of performing secondary authentication with the authentication server by encrypting the authentication target behavior pattern obtained from the user with the session key and transmitting it to the authentication server.

상기 패스워드 기반 인증 정보는, 상기 사용자의 패스워드 또는 상기 패스워드의 해시값일 수 있다.The password-based authentication information may be a password of the user or a hash value of the password.

상기 행동 패턴 모델을 인증 서버에 등록하는 단계는, 랜덤하게 설정된 변환 함수(transformation function)를 이용하여 상기 수집된 행동 패턴을 변환하고, 변환된 행동 패턴을 이용하여 상기 행동 패턴 모델을 생성하도록 구성될 수 있다.The step of registering the behavior pattern model with the authentication server may be configured to transform the collected behavior pattern using a randomly set transformation function, and generate the behavior pattern model using the transformed behavior pattern. can

상기 제2 인증 단계는, 상기 변환 함수를 이용하여 인증 대상 행동 패턴을 변환한 뒤 상기 인증 서버로 송신하도록 구성될 수 있다.The second authentication step may be configured to convert the authentication target behavior pattern using the transformation function and then transmit it to the authentication server.

상기 행동 패턴 모델을 인증 서버에 등록하는 단계는, 상기 인증 서버에 등록된 상기 행동 패턴 모델이 외부로 노출된 것으로 판단되는 경우, 새로운 변환 함수를 이용하여 상기 수집된 행동 패턴을 재변환하여 상기 행동 패턴 모델을 재구성하고, 재구성된 상기 행동 패턴 모델을 상기 인증 서버에 재등록할 수 있다.In the step of registering the behavior pattern model in the authentication server, when it is determined that the behavior pattern model registered in the authentication server is exposed to the outside, the collected behavior pattern is reconverted using a new transformation function to reconvert the behavior The pattern model may be reconfigured, and the reconfigured behavior pattern model may be re-registered in the authentication server.

개시되는 실시예들에 따르면, 비밀번호 인증 및 행동 패턴 기반의 인증을 포함하는 멀티 팩터 인증을 통하여 사용자 인증의 보안성을 강화할 수 있다. 특히 상대적으로 노출되기 쉬운 비밀번호가 공격자(attacker)에게 노출되었을 경우에도, 행동 기반 인증으로 이를 보완할 수 있다.According to the disclosed embodiments, security of user authentication may be strengthened through multi-factor authentication including password authentication and behavior pattern-based authentication. In particular, even when a relatively easy-to-expose password is exposed to an attacker, behavior-based authentication can compensate for this.

또한 개시되는 실시예들에 따르면 비밀번호 기반의 인증을 통해 생성된 세션키를 이용하여 행동 패턴 관련 정보를 안정하게 전송함으로써 로컬이 아닌 리모트 환경에서도 행동 기반 인증을 안전하게 사용할 수 있다.Also, according to the disclosed embodiments, behavior-based authentication can be safely used in a remote environment rather than a local environment by stably transmitting behavior pattern-related information using a session key generated through password-based authentication.

도 1은 일 실시예에 따른 멀티 팩터 인증 시스템(100)을 설명하기 위한 블록도
도 2는 일 실시예에 따른 멀티 팩터 인증 시스템(100)에서의 인증 과정(200)을 좀 더 상세히 설명하기 위한 흐름도
도 3은 일 실시예에 따른 단말(102)을 설명하기 위한 블록도
도 4는 일 실시예에 따른 인증 서버(104)를 설명하기 위한 블록도
도 5는 일 실시예에 따른 단말(102)의 멀티 팩터 인증 과정(500)을 설명하기 위한 흐름도
도 6은 일 실시예에 따른 인증 서버(104)의 멀티 팩터 인증 과정(600)을 설명하기 위한 흐름도
도 7은 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경(10)을 예시하여 설명하기 위한 블록도
1 is a block diagram illustrating a multi-factor authentication system 100 according to an embodiment.
2 is a flowchart for explaining the authentication process 200 in the multi-factor authentication system 100 according to an embodiment in more detail.
3 is a block diagram illustrating the terminal 102 according to an embodiment.
4 is a block diagram illustrating an authentication server 104 according to an embodiment.
5 is a flowchart illustrating a multi-factor authentication process 500 of the terminal 102 according to an embodiment.
6 is a flowchart illustrating a multi-factor authentication process 600 of the authentication server 104 according to an embodiment.
7 is a block diagram illustrating and describing a computing environment 10 including a computing device suitable for use in example embodiments.

이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.Hereinafter, specific embodiments of the present invention will be described with reference to the drawings. The following detailed description is provided to provide a comprehensive understanding of the methods, apparatus, and/or systems described herein. However, this is merely an example and the present invention is not limited thereto.

본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.In describing the embodiments of the present invention, if it is determined that the detailed description of the known technology related to the present invention may unnecessarily obscure the gist of the present invention, the detailed description thereof will be omitted. And, the terms to be described later are terms defined in consideration of functions in the present invention, which may vary according to intentions or customs of users and operators. Therefore, the definition should be made based on the content throughout this specification. The terminology used in the detailed description is for the purpose of describing embodiments of the present invention only, and should in no way be limiting. Unless explicitly used otherwise, expressions in the singular include the meaning of the plural. In this description, expressions such as “comprising” or “comprising” are intended to indicate certain features, numbers, steps, acts, elements, some or a combination thereof, one or more other than those described. It should not be construed to exclude the presence or possibility of other features, numbers, steps, acts, elements, or any part or combination thereof.

도 1은 일 실시예에 따른 멀티 팩터 인증 시스템(100)을 설명하기 위한 블록도이다. 도시된 바와 같이, 일 실시예에 따른 멀티 팩터 인증 시스템(100)은 단말(102) 및 인증 서버(104)를 포함한다.1 is a block diagram illustrating a multi-factor authentication system 100 according to an embodiment. As shown, the multi-factor authentication system 100 according to an embodiment includes a terminal 102 and an authentication server 104 .

단말(102)은 인증 서버(104)와 네트워크(106)를 통해 연결되며, 인증 서버(104)와 멀티 팩터 인증을 수행한다. 개시되는 실시예들에서 멀티 팩터 인증(multi-factor authentication)이란, 패스워드 기반의 인증 및 단말(102) 사용자의 행동 패턴 기반 인증 등 둘 이상의 서로 다른 인증 수단을 이용한 다중 인증을 의미할 수 있다. 여기서 행동 패턴 기반 인증은 키스트로크 다이내믹스(keystroke dynamics) 등 사용자로부터 획득 가능한 행동 패턴 외에 지문 등의 바이오메트릭 데이터(biometric data) 등 퍼지 기반으로 머신러닝에서 활용 가능한 모든 종류의 데이터를 포함할 수 있다. The terminal 102 is connected to the authentication server 104 through the network 106 , and performs multi-factor authentication with the authentication server 104 . In the disclosed embodiments, multi-factor authentication may mean multi-factor authentication using two or more different authentication means, such as password-based authentication and behavior pattern-based authentication of the terminal 102 user. Here, behavior pattern-based authentication may include all kinds of data that can be used in machine learning based on fuzzy, such as biometric data such as fingerprints, in addition to behavior patterns obtainable from a user such as keystroke dynamics.

개시되는 실시예들에서 행동 패턴 기반 인증의 경우 패스워드 기반 인증 과정에서 생성된 세션키를 이용하여 수행되는 바, 원격 행동 패턴 기반 인증에서 발생할 수 있는 행동 패턴 정보 전송의 보안성을 강화할 수 있다. 일 실시예에서, 단말(102)은 스마트폰, 태블릿, 데스크탑 컴퓨터, 랩탑 컴퓨터, IoT 디바이스, 웨어러블 디바이스 등의 네트워크 통신이 가능한 다양한 종류의 사용자 기기를 포함할 수 있다.In the disclosed embodiments, behavior pattern-based authentication is performed using a session key generated in a password-based authentication process, so that the security of behavior pattern information transmission that may occur in remote behavior pattern-based authentication can be strengthened. In an embodiment, the terminal 102 may include various types of user equipment capable of network communication, such as a smart phone, a tablet, a desktop computer, a laptop computer, an IoT device, a wearable device, and the like.

인증 서버(104)는 단말(102)로부터 패스워드 기반 인증 정보 및 사용자의 행동 패턴 모델을 수신하여 저장한다. 이때 상기 패스워드 기반 인증 정보는 단말(102)의 사용자로부터 설정된 패스워드 또는 상기 패스워드의 해시값일 수 있다. The authentication server 104 receives and stores the password-based authentication information and the user's behavior pattern model from the terminal 102 . In this case, the password-based authentication information may be a password set by the user of the terminal 102 or a hash value of the password.

일 실시예에서, 단말(102)은 인증 서버(104)와 사전 공유된 패스워드 기반 인증 정보를 이용하여 단말 사용자의 1차 인증을 요청한다. 그러면 인증 서버(104)는 기 등록된 상기 패스워드 기반 인증 정보를 이용하여 상기 단말(102)과 1차 인증을 수행한다. In one embodiment, the terminal 102 requests the first authentication of the terminal user by using the password-based authentication information pre-shared with the authentication server 104 . Then, the authentication server 104 performs primary authentication with the terminal 102 using the previously registered password-based authentication information.

이후 단말(102)은 상기 1차 인증 과정에서 생성된 단말측 세션키를 이용하여 상기 단말 사용자로부터 획득된 인증 대상 행동 패턴을 암호화하여 인증 서버(104)로 송신하여 2차 인증을 요청한다. 인증 서버(104)는 단말(102)로부터 암호화된 인증 대상 행동 패턴을 수신하고, 상기 1차 인증 과정에서 생성된 서버측 세션키를 이용하여 암호화된 인증 대상 행동 패턴을 복호화한다. 이후 인증 서버(104)는 복호화된 인증 대상 행동 패턴을 상기 사용자의 행동 패턴 모델과 비교하여 단말(102) 사용자의 2차 인증을 수행하고 인증 결과를 단말(102)로 송신한다.Thereafter, the terminal 102 encrypts the authentication target behavior pattern obtained from the terminal user using the terminal-side session key generated in the first authentication process and transmits it to the authentication server 104 to request secondary authentication. The authentication server 104 receives the encrypted authentication target behavior pattern from the terminal 102, and decrypts the encrypted authentication target behavior pattern using the server-side session key generated in the first authentication process. Thereafter, the authentication server 104 compares the decrypted behavior pattern to be authenticated with the behavior pattern model of the user, performs secondary authentication of the user of the terminal 102 , and transmits the authentication result to the terminal 102 .

앞서 기술한 바와 같이, 단말(102)은 인증 서버(104)와 네트워크(106)를 통해 연결될 수 있다. 몇몇 실시예들에서, 네트워크는 인터넷, 하나 이상의 로컬 영역 네트워크(local area networks), 광역 네트워크(wire area networks), 셀룰러 네트워크, 모바일 네트워크, 그 밖에 다른 종류의 네트워크들, 또는 이러한 네트워크들의 조합을 포함할 수 있다.As described above, the terminal 102 may be connected to the authentication server 104 through the network 106 . In some embodiments, the network comprises the Internet, one or more local area networks, wire area networks, cellular networks, mobile networks, other types of networks, or a combination of these networks. can do.

도 2는 일 실시예에 따른 멀티 팩터 인증 시스템(100)에서의 인증 과정(200)을 좀 더 상세히 설명하기 위한 흐름도이다. 도시된 흐름도에서는 상기 방법 또는 과정을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.2 is a flowchart for explaining the authentication process 200 in the multi-factor authentication system 100 according to an embodiment in more detail. In the illustrated flowchart, the method or process is described by dividing the method or process into a plurality of steps, but at least some of the steps are performed in a different order, are performed in combination with other steps, are omitted, are performed in sub-steps, or are shown. One or more steps not included may be added and performed.

단계 202에서, 단말(102)은 인증 서버(104)로 자신의 계정 및 패스워드 기반 인증 정보를 등록한다. 일 실시예에서, 상기 패스워드 기반의 인증 정보는 단말(102) 사용자의 패스워드 또는 상기 패스워드의 해시값일 수 있다. In step 202 , the terminal 102 registers its own account and password-based authentication information with the authentication server 104 . In an embodiment, the password-based authentication information may be a password of the terminal 102 user or a hash value of the password.

또한 본 단계에서 단말(102)은 사용자의 행동 패턴 모델(M)을 인증 서버(104)에 등록할 수 있다. 일 실시예에서, 단말(102)은 행동 패턴 모델 생성 알고리즘을 결정하고, 결정된 알고리즘에 따라 사용자로부터 수집된 행동 패턴 정보를 학습하여 행동 패턴 모델을 생성할 수 있다. 이때 상기 행동 패턴 생성 모델은 머신 러닝 또는 딥 러닝 기반의 알고리즘일 수 있다.In addition, in this step, the terminal 102 may register the user's behavior pattern model M with the authentication server 104 . In an embodiment, the terminal 102 may determine a behavior pattern model generation algorithm, and generate the behavior pattern model by learning the behavior pattern information collected from the user according to the determined algorithm. In this case, the behavior pattern generation model may be an algorithm based on machine learning or deep learning.

단계 204에서, 단말(102)은 인증 서버(104)와 패스워드 기반의 1차 인증을 수행할 수 있다. 예를 들어, 단말(102)과 인증 서버(104) 간에 동일한 패스워드를 공유할 경우, 단말(102)과 인증 서버(104)는 PAKE(Password-based Authenticated Key Exchange)를 이용하여 인증을 수행할 수 있다. 만약 인증 서버(104)가 패스워드 자체가 아닌 패스워드의 해시값만을 알고 있을 경우, 단말(102)과 인증 서버(104)는 Asymmetric PAKE(Password-based Authenticated Key Exchange)를 이용하여 인증을 수행할 수 있다. 그러나 이는 예시적인 것으로서, 개시적인 실시예들에서 단말(102)과 인증 서버(104) 사이의 1차 인증은 다양한 패스워드 기반 인증 알고리즘에 의해 수행될 수 있다.In step 204 , the terminal 102 may perform password-based primary authentication with the authentication server 104 . For example, when the same password is shared between the terminal 102 and the authentication server 104, the terminal 102 and the authentication server 104 may perform authentication using PAKE (Password-based Authenticated Key Exchange). have. If the authentication server 104 knows only the hash value of the password, not the password itself, the terminal 102 and the authentication server 104 can perform authentication using Asymmetric PAKE (Password-based Authenticated Key Exchange). . However, this is only an example, and in the disclosed embodiments, the primary authentication between the terminal 102 and the authentication server 104 may be performed by various password-based authentication algorithms.

단계 206에서, 단말(102)은 상기 204 단계의 패스워드 인증 결과로 획득한 정보를 이용하여 단말측 세션키(SKA)를 생성한다. 전술한 PAKE 또는 Assymetric PAKE는 단말(102)과 인증 서버(104) 사이에 공유된 패스워드를 기반으로 랜덤한 세션키를 상호 공유할 수 있도록 구성된다. 따라서 이를 이용할 경우 단말(102)은 안전하게 단말측 세션키(SKA)를 생성할 수 있다.In step 206, the terminal 102 generates a terminal-side session key (SK A ) using the information obtained as a result of the password authentication in step 204. The aforementioned PAKE or Asymetric PAKE is configured to mutually share a random session key based on a password shared between the terminal 102 and the authentication server 104 . Therefore, when using this, the terminal 102 can safely generate the terminal-side session key (SK A ).

단계 208에서, 인증 서버(104)는 단말(102)과 마찬가지로 상기 204 단계의 패스워드 인증 결과로 획득한 정보를 이용하여 서버측 세션키(SKB)를 생성한다. 본 단계에서 생성되는 서버측 세션키(SKB)는 단말측 세션키(SKA)와 동일하다.In step 208, the authentication server 104 generates a server-side session key (SK B ) using the information obtained as a result of the password authentication in step 204, similarly to the terminal 102. The server-side session key (SK B ) generated in this step is the same as the terminal-side session key (SK A ).

단계 210에서, 단말(102)은 사용자의 행동 패턴을 획득하고 이로부터 행동 패턴 벡터(V)를 생성한다. 일 실시예에서, 단말(102)은 1차 인증 과정에서 사용자로부터 수집된 키스트로크 다이내믹스 등의 행동 패턴을 이용하여 행동 패턴 벡터(V)를 생성할 수 있다.In step 210, the terminal 102 acquires the user's behavior pattern and generates a behavior pattern vector V from it. In an embodiment, the terminal 102 may generate a behavior pattern vector V by using a behavior pattern such as keystroke dynamics collected from a user in the primary authentication process.

단계 212에서, 단말(102)은 생성된 행동 패턴 벡터(V)를 단말측 세션키(SKA)로 암호화하고, 암호화된 행동 패턴 벡터(C)를 인증 서버(104)로 송신한다. 이를 수식으로 나타내면 다음과 같다.In step 212 , the terminal 102 encrypts the generated behavior pattern vector V with the terminal-side session key SK A , and transmits the encrypted behavior pattern vector C to the authentication server 104 . This can be expressed as a formula as follows.

[수학식 1][Equation 1]

Figure 112020085637612-pat00001
Figure 112020085637612-pat00001

단계 214에서, 인증 서버(104)는 단말(102)로부터 암호화된 행동 패턴 벡터(C)를 수신하고, 이를 복호화하여 행동 패턴 벡터(V)를 획득한다. 이를 수식으로 나타내면 다음과 같다.In step 214, the authentication server 104 receives the encrypted behavior pattern vector (C) from the terminal 102, and decrypts it to obtain the behavior pattern vector (V). This can be expressed as a formula as follows.

[수학식 2][Equation 2]

Figure 112020085637612-pat00002
Figure 112020085637612-pat00002

단계 216에서, 인증 서버(104)는 상기 행동 패턴 벡터(V)를 기 저장된 행동 패턴 모델(M)과 비교하여 단말(102)에 대한 행동 패턴 기반의 2차 인증을 수행하고, 인증 결과를 단말(102)에 제공한다. 만약 상기 행동 패턴 벡터(V)가 기 저장된 행동 패턴 모델(M)과 매칭되는 경우, 인증 서버(104)는 2차 인증에 성공한 것으로 판단할 수 있다. 그러나 이와 달리 만약 상기 행동 패턴 벡터(V)가 기 저장된 행동 패턴 모델(M)과 매칭되지 않는 경우, 인증 서버(104)는 2차 인증에 실패한 것으로 판단할 수 있다.In step 216, the authentication server 104 compares the behavior pattern vector (V) with a pre-stored behavior pattern model (M) to perform a behavior pattern-based secondary authentication for the terminal 102, and returns the authentication result to the terminal (102). If the behavior pattern vector (V) matches the previously stored behavior pattern model (M), the authentication server 104 may determine that the secondary authentication is successful. However, in contrast to this, if the behavior pattern vector V does not match the previously stored behavior pattern model M, the authentication server 104 may determine that the secondary authentication has failed.

한편, 일 실시예에서 단말(102)은 랜덤하게 설정된 변환 함수(transformation function)를 이용하여 사용자로부터 수집된 행동 패턴을 변환하고, 변환된 행동 패턴을 이용하여 행동 패턴 모델(M)을 생성할 수 있다. 예를 들어, 단말(102)은 길이 보전 암호화(length preserving encryption) 방식 또는 길이 보전 선형 변환(length preserving linear transformation) 방식 등을 이용하여 상기 행동 패턴을 변환할 수 있다. 이때 상기 방식에 따른 변환 함수는 랜덤하게 설정될 수 있다.On the other hand, in an embodiment, the terminal 102 transforms a behavior pattern collected from the user using a randomly set transformation function, and generates a behavior pattern model M using the transformed behavior pattern. have. For example, the terminal 102 may transform the behavior pattern using a length preserving encryption method or a length preserving linear transformation method. In this case, the conversion function according to the above method may be randomly set.

일 실시예에서, 단말(102)은 사용자의 행동 패턴에 랜덤한 값을 더하거나 빼는 방식으로 상기 행동 패턴을 변환할 수 있다. 예를 들어 사용자로부터 수집된 행동 패턴이 (x, y, z)이고, 변환 함수가 (a, b, c)일 경우, 변환된 행동 패턴은 (x+a, y+b, z+c)일 수 있다. 이때 상기 a, b, c는 랜덤하게 정해질 수 있다. 다른 실시예에서, 상기 변환 함수는 랜덤하게 선택된 행렬일 수 있다. 예를 들어, 사용자로부터 수집된 행동 패턴이 n차원 벡터일 경우, 단말(102)은 랜덤하게 선택된 m x n 행렬(A)을 이용하여 T(x) = Ax 와 같이 행동 패턴을 m차원 벡터로 변환할 수 있다. In an embodiment, the terminal 102 may transform the behavior pattern by adding or subtracting a random value to the behavior pattern of the user. For example, if the behavior pattern collected from the user is (x, y, z) and the transformation function is (a, b, c), the transformed behavior pattern is (x+a, y+b, z+c) can be In this case, a, b, and c may be randomly determined. In another embodiment, the transform function may be a randomly selected matrix. For example, when the behavior pattern collected from the user is an n-dimensional vector, the terminal 102 converts the behavior pattern into an m-dimensional vector as T(x) = Ax using a randomly selected m x n matrix A. can

이와 같이 행동 패턴 모델(M)이 변환된 행동 패턴에 기반하여 생성될 경우, 상기 210 단계에서 단말(102)은 행동 패턴 벡터(V)에 행동 패턴 모델을 생성한 것과 동일한 변환 함수를 적용하여 행동 패턴 벡터(V)를 변환하고, 변환된 행동 패턴 벡터(V')를 암호화하여 인증 서버(104)로 송신할 수 있다.When the behavior pattern model M is generated based on the transformed behavior pattern as described above, in step 210, the terminal 102 applies the same transformation function to the behavior pattern vector V to the behavior pattern vector V to generate the behavior. The pattern vector (V) may be converted, and the converted behavior pattern vector (V') may be encrypted and transmitted to the authentication server 104 .

만약 인증 서버(104)에 등록된 행동 패턴 모델(M)이 외부로 노출된 것으로 판단되는 경우, 단말(102)은 이전과는 다른 새로운 변환 함수를 이용하여 상기 수집된 행동 패턴을 재변환함으로써 행동 패턴 모델을 재구성하고, 재구성된 행동 패턴 모델(M')을 인증 서버(104)에 재등록할 수 있다. 이와 같이 랜덤한 변환 함수를 이용할 경우 행동 패턴 모델(M)이 악의적인 공격자에게 노출된 경우에도 변환 함수를 교체하는 것 만으로 행동 패턴 모델을 재생성할 수 있게 되므로 행동 패턴 모델의 보안성을 높일 수 있다.If it is determined that the behavior pattern model M registered in the authentication server 104 is exposed to the outside, the terminal 102 acts by re-converting the collected behavior pattern using a new transformation function different from the previous one. The pattern model may be reconstructed, and the reconstructed behavior pattern model M' may be re-registered in the authentication server 104 . If such a random transformation function is used, even when the behavior pattern model (M) is exposed to a malicious attacker, the behavior pattern model can be regenerated just by replacing the transformation function, thereby increasing the security of the behavior pattern model. .

한편, 일 실시예에서 인증 서버(104)는, 216 단계에서 2차 인증에 성공한 경우, 214 단계에서 획득된 인증 대상 행동 패턴을 이용하여 행동 패턴 모델(M)을 갱신할 수 있다. 이와 같이 인증 성공시의 행동 패턴으로 행동 패턴 모델(M)을 지속적으로 갱신할 경우, 행동 패턴 모델(M)의 성능을 높일 수 있다.Meanwhile, in an embodiment, when the second authentication is successful in step 216 , the authentication server 104 may update the behavior pattern model M by using the authentication target behavior pattern obtained in step 214 . In this way, when the behavior pattern model M is continuously updated with the behavior pattern upon successful authentication, the performance of the behavior pattern model M can be improved.

또한, 일 실시예에서 인증 서버(104)는 216 단계에서 2차 인증에 성공한 경우, 214 단계에서 획득된 인증 대상 행동 패턴을 저장해 둘 수 있다. 이후 만약 어떤 이유로든 인증 서버(104)에 저장된 행동 패턴 모델(M)이 손상된 경우, 인증 서버(104)는 기 저장된 상기 인증 대상 행동 패턴을 이용하여 재학습을 수행함으로써 상기 행동 패턴 모델을 재생성할 수 있다. 이 경우, 개인정보보호 및 보안성 강화를 위하여 인증 서버(104) 저장되는 행동 패턴은 단말(102)에 의해 변환(transformation)된 행동 패턴인 것이 바람직하다.Also, in an embodiment, when the second authentication is successful in step 216 , the authentication server 104 may store the authentication target behavior pattern obtained in step 214 . Afterwards, if the behavior pattern model M stored in the authentication server 104 is damaged for any reason, the authentication server 104 regenerates the behavior pattern model by performing re-learning using the previously stored authentication target behavior pattern. can In this case, it is preferable that the behavior pattern stored in the authentication server 104 is a behavior pattern transformed by the terminal 102 for personal information protection and security enhancement.

도 3은 일 실시예에 따른 단말(102)을 설명하기 위한 블록도이다. 도시된 바와 같이, 일 실시예에 따른 단말(102)은 행동 패턴 수집 모듈(302), 단말측 제1 인증 모듈(304) 및 단말측 제2 인증 모듈(306)을 포함한다.3 is a block diagram illustrating the terminal 102 according to an embodiment. As shown, the terminal 102 according to an embodiment includes a behavior pattern collection module 302 , a terminal-side first authentication module 304 , and a terminal-side second authentication module 306 .

행동 패턴 수집 모듈(302)은 사용자로부터 수집된 행동 패턴으로부터 행동 패턴 모델을 생성하고, 생성된 상기 행동 패턴 모델을 인증 서버(104)에 등록한다.The behavior pattern collection module 302 generates a behavior pattern model from behavior patterns collected from the user, and registers the generated behavior pattern model in the authentication server 104 .

단말측 제1 인증 모듈(304)은 인증 서버(104)와 사전 공유된 패스워드 기반 인증 정보를 이용하여 인증 서버(104)와 1차 인증을 수행하고, 인증 서버(104)와 공유되는 단말측 세션키(SKA)를 생성한다. 앞서 설명한 바와 같이, 인증 서버(104)와 사전 공유된 패스워드 기반 인증 정보는, 상기 사용자의 패스워드 또는 상기 패스워드의 해시값일 수 있다.The terminal-side first authentication module 304 performs primary authentication with the authentication server 104 using the password-based authentication information previously shared with the authentication server 104 , and a terminal-side session shared with the authentication server 104 . Generate a key (SK A ). As described above, the password-based authentication information pre-shared with the authentication server 104 may be the user's password or a hash value of the password.

단말측 제2 인증 모듈(306)은 상기 사용자로부터 획득된 인증 대상 행동 패턴을 상기 단말측 세션키(SKA)로 암호화하여 인증 서버(104)로 송신함으로써 인증 서버(104)와 2차 인증을 수행한다.The terminal-side second authentication module 306 performs secondary authentication with the authentication server 104 by encrypting the authentication target behavior pattern obtained from the user with the terminal-side session key SK A and transmitting it to the authentication server 104 . carry out

일 실시예에서, 행동 패턴 수집 모듈(302)은 랜덤하게 설정된 변환 함수(transformation function)를 이용하여 상기 수집된 행동 패턴을 변환하고, 변환된 행동 패턴을 이용하여 상기 행동 패턴 모델을 생성할 수 있다. 이 경우 단말측 제2 인증 모듈(306)은, 행동 패턴 수집 모듈(302)과 동일한 변환 함수를 이용하여 인증 대상 행동 패턴을 변환한 뒤 인증 서버(104)로 송신할 수 있다.In an embodiment, the behavior pattern collection module 302 may transform the collected behavior pattern using a randomly set transformation function, and generate the behavior pattern model using the transformed behavior pattern. . In this case, the terminal-side second authentication module 306 may use the same transformation function as the behavior pattern collection module 302 to convert the authentication target behavior pattern and then transmit it to the authentication server 104 .

또한 행동 패턴 수집 모듈(302)은, 인증 서버(104)에 등록된 상기 행동 패턴 모델이 외부로 노출된 것으로 판단되는 경우, 새로운 변환 함수를 이용하여 상기 수집된 행동 패턴을 재변환하여 행동 패턴 모델을 재구성하고, 재구성된 행동 패턴 모델을 인증 서버(104)에 재등록할 수 있다.In addition, when it is determined that the behavior pattern model registered in the authentication server 104 is exposed to the outside, the behavior pattern collection module 302 reconverts the collected behavior pattern using a new transformation function to model the behavior pattern model. can be reconfigured, and the reconfigured behavior pattern model can be re-registered in the authentication server 104 .

도 4는 일 실시예에 따른 인증 서버(104)를 설명하기 위한 블록도이다. 도시된 바와 같이, 일 실시예에 따른 인증 서버(104)는 저장 모듈(402), 서버측 제1 인증 모듈(404) 및 서버측 제2 인증 모듈(406)을 포함한다.4 is a block diagram for explaining the authentication server 104 according to an embodiment. As shown, the authentication server 104 according to an embodiment includes a storage module 402 , a server-side first authentication module 404 , and a server-side second authentication module 406 .

저장 모듈(402)은 단말(102)로부터 등록된 패스워드 기반 인증 정보 및 사용자의 행동 패턴 모델(M)을 저장한다.The storage module 402 stores the password-based authentication information registered from the terminal 102 and the user's behavior pattern model (M).

서버측 제1 인증 모듈(404)은 단말(102)의 요청에 따라 패스워드 기반의 1차 인증을 수행하고, 이로부터 서버측 세션키(SKB)를 생성한다. 본 단계에서 생성되는 서버측 세션키(SKB)는 단말측 세션키(SKA)와 동일하다.The server-side first authentication module 404 performs password-based primary authentication according to the request of the terminal 102, and generates a server-side session key (SK B ) therefrom. The server-side session key (SK B ) generated in this step is the same as the terminal-side session key (SK A ).

서버측 제2 인증 모듈(406)은 단말(102)로부터 암호화된 행동 패턴 벡터(C)를 수신하고, 이를 복호화하여 인증 대상 행동 패턴 벡터(V)를 획득한다. 이후 제2 인증 모듈(406)은 상기 행동 패턴 벡터(V)를 기 저장된 행동 패턴 모델(M)과 비교하여 단말(102)에 대한 행동 패턴 기반의 2차 인증을 수행하고, 인증 결과를 단말(102)에 제공한다. The server-side second authentication module 406 receives the encrypted behavior pattern vector C from the terminal 102 and decrypts it to obtain the authentication target behavior pattern vector V. Thereafter, the second authentication module 406 compares the behavior pattern vector (V) with a pre-stored behavior pattern model (M) to perform second authentication based on the behavior pattern for the terminal 102, and returns the authentication result to the terminal ( 102) is provided.

일 실시예에서 서버측 제2 인증 모듈(406)은 2차 인증에 성공한 인증 대상 행동 패턴을 이용하여 행동 패턴 모델(M)을 갱신할 수 있다. 이와 같이 인증 성공시의 행동 패턴으로 행동 패턴 모델(M)을 지속적으로 갱신할 경우, 행동 패턴 모델(M)의 성능을 높일 수 있다. 또한, 일 실시예에서 서버측 제2 인증 모듈(406)은 2차 인증에 성공한 인증 대상 행동 패턴을 저장해 두었다가, 이후 만약 어떤 이유로든 인증 서버(104)에 저장된 행동 패턴 모델(M)이 손상된 경우 기 저장된 상기 인증 대상 행동 패턴을 이용하여 재학습을 수행함으로써 상기 행동 패턴 모델을 재생성할 수 있다. In an embodiment, the server-side second authentication module 406 may update the behavior pattern model M by using the authentication target behavior pattern that has succeeded in the secondary authentication. In this way, when the behavior pattern model M is continuously updated with the behavior pattern upon successful authentication, the performance of the behavior pattern model M can be improved. In addition, in an embodiment, the server-side second authentication module 406 stores an authentication target behavior pattern that has succeeded in secondary authentication, and then if the behavior pattern model M stored in the authentication server 104 is damaged for any reason. The behavior pattern model may be regenerated by performing re-learning using the pre-stored authentication target behavior pattern.

도 5는 일 실시예에 따른 단말(102)의 멀티 팩터 인증 과정(500)을 설명하기 위한 흐름도이다. 도시된 흐름도에서는 상기 방법 또는 과정을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.5 is a flowchart illustrating a multi-factor authentication process 500 of the terminal 102 according to an embodiment. In the illustrated flowchart, the method or process is described by dividing the method or process into a plurality of steps, but at least some of the steps are performed in a different order, are performed in combination with other steps, are omitted, are performed in sub-steps, or are shown. One or more steps not included may be added and performed.

단계 502에서, 단말(102)은 사용자로부터 수집된 행동 패턴으로부터 행동 패턴 모델을 생성하고, 생성된 상기 행동 패턴 모델을 인증 서버(104)에 등록한다.In step 502 , the terminal 102 generates a behavior pattern model from the behavior patterns collected from the user, and registers the generated behavior pattern model in the authentication server 104 .

단계 504에서, 단말(102)은 인증 서버(104)와 사전 공유된 패스워드 기반 인증 정보를 이용하여 인증 서버(104)와 1차 인증을 수행하고, 인증 서버(104)와 공유되는 단말측 세션키(SKA)를 생성한다.In step 504 , the terminal 102 performs primary authentication with the authentication server 104 using the password-based authentication information previously shared with the authentication server 104 , and a terminal-side session key shared with the authentication server 104 . (SK A ) is created.

단계 506에서, 단말(102)은 상기 사용자로부터 획득된 인증 대상 행동 패턴(V)을 단말측 세션키(SKA)로 암호화하여 인증 서버(104)로 송신함으로써 인증 서버(104)와 2차 인증을 수행한다.In step 506, the terminal 102 encrypts the authentication target behavior pattern (V) obtained from the user with the terminal-side session key (SK A ) and transmits it to the authentication server 104, thereby performing secondary authentication with the authentication server 104. carry out

도 6은 일 실시예에 따른 인증 서버(104)의 멀티 팩터 인증 과정(600)을 설명하기 위한 흐름도이다. 도시된 흐름도에서는 상기 방법 또는 과정을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.6 is a flowchart illustrating a multi-factor authentication process 600 of the authentication server 104 according to an embodiment. In the illustrated flowchart, the method or process is described by dividing the method or process into a plurality of steps, but at least some of the steps are performed in a different order, are performed in combination with other steps, are omitted, are performed in sub-steps, or are shown. One or more steps not included may be added and performed.

단계 602에서, 인증 서버(104)는 단말(102)로부터 등록된 패스워드 기반 인증 정보 및 사용자의 행동 패턴 모델(M)을 저장한다.In step 602, the authentication server 104 stores the password-based authentication information registered from the terminal 102 and the user's behavior pattern model (M).

단계 604에서, 인증 서버(104)는 단말(102)의 요청에 따라 패스워드 기반의 1차 인증을 수행하고, 이로부터 서버측 세션키(SKB)를 생성한다. 본 단계에서 생성되는 서버측 세션키(SKB)는 단말측 세션키(SKA)와 동일하다.In step 604, the authentication server 104 performs password-based primary authentication according to the request of the terminal 102, and generates a server-side session key (SK B ) therefrom. The server-side session key (SK B ) generated in this step is the same as the terminal-side session key (SK A ).

단계 606에서, 인증 서버(104)는 단말(102)로부터 암호화된 행동 패턴 벡터(C)를 수신하고, 이를 복호화하여 인증 대상 행동 패턴 벡터(V)를 획득한다.In step 606, the authentication server 104 receives the encrypted behavior pattern vector (C) from the terminal 102, and decrypts it to obtain the authentication target behavior pattern vector (V).

단계 608에서, 인증 서버(104)는 상기 행동 패턴 벡터(V)를 기 저장된 행동 패턴 모델(M)과 비교하여 단말(102)에 대한 행동 패턴 기반의 2차 인증을 수행하고, 인증 결과를 단말(102)에 제공한다. In step 608, the authentication server 104 compares the behavior pattern vector (V) with a pre-stored behavior pattern model (M) to perform a behavior pattern-based secondary authentication for the terminal 102, and returns the authentication result to the terminal (102).

도 7은 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경(10)을 예시하여 설명하기 위한 블록도이다. 도시된 실시예에서, 각 컴포넌트들은 이하에 기술된 것 이외에 상이한 기능 및 능력을 가질 수 있고, 이하에 기술되지 것 이외에도 추가적인 컴포넌트를 포함할 수 있다.7 is a block diagram illustrating and describing a computing environment 10 including a computing device suitable for use in example embodiments. In the illustrated embodiment, each component may have different functions and capabilities other than those described below, and may include additional components other than those described below.

도시된 컴퓨팅 환경(10)은 컴퓨팅 장치(12)를 포함한다. 일 실시예에서, 컴퓨팅 장치(12)는 본 발명의 실시예들에 따른 인증 기관(102), 인증 요청자(104) 및 검증자(106)일 수 있다. 컴퓨팅 장치(12)는 적어도 하나의 프로세서(14), 컴퓨터 판독 가능 저장 매체(16) 및 통신 버스(18)를 포함한다. 프로세서(14)는 컴퓨팅 장치(12)로 하여금 앞서 언급된 예시적인 실시예에 따라 동작하도록 할 수 있다. 예컨대, 프로세서(14)는 컴퓨터 판독 가능 저장 매체(16)에 저장된 하나 이상의 프로그램들을 실행할 수 있다. 상기 하나 이상의 프로그램들은 하나 이상의 컴퓨터 실행 가능 명령어를 포함할 수 있으며, 상기 컴퓨터 실행 가능 명령어는 프로세서(14)에 의해 실행되는 경우 컴퓨팅 장치(12)로 하여금 예시적인 실시예에 따른 동작들을 수행하도록 구성될 수 있다.The illustrated computing environment 10 includes a computing device 12 . In one embodiment, computing device 12 may be certificate authority 102 , certificate requestor 104 and verifier 106 in accordance with embodiments of the present invention. Computing device 12 includes at least one processor 14 , computer readable storage medium 16 , and communication bus 18 . The processor 14 may cause the computing device 12 to operate in accordance with the exemplary embodiments discussed above. For example, the processor 14 may execute one or more programs stored in the computer-readable storage medium 16 . The one or more programs may include one or more computer-executable instructions that, when executed by the processor 14, configure the computing device 12 to perform operations in accordance with the exemplary embodiment. can be

컴퓨터 판독 가능 저장 매체(16)는 컴퓨터 실행 가능 명령어 내지 프로그램 코드, 프로그램 데이터 및/또는 다른 적합한 형태의 정보를 저장하도록 구성된다. 컴퓨터 판독 가능 저장 매체(16)에 저장된 프로그램(20)은 프로세서(14)에 의해 실행 가능한 명령어의 집합을 포함한다. 일 실시예에서, 컴퓨터 판독 가능 저장 매체(16)는 메모리(랜덤 액세스 메모리와 같은 휘발성 메모리, 비휘발성 메모리, 또는 이들의 적절한 조합), 하나 이상의 자기 디스크 저장 디바이스들, 광학 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 그 밖에 컴퓨팅 장치(12)에 의해 액세스되고 원하는 정보를 저장할 수 있는 다른 형태의 저장 매체, 또는 이들의 적합한 조합일 수 있다.Computer-readable storage medium 16 is configured to store computer-executable instructions or program code, program data, and/or other suitable form of information. The program 20 stored in the computer readable storage medium 16 includes a set of instructions executable by the processor 14 . In one embodiment, computer-readable storage medium 16 includes memory (volatile memory, such as random access memory, non-volatile memory, or a suitable combination thereof), one or more magnetic disk storage devices, optical disk storage devices, flash It may be memory devices, other forms of storage medium that can be accessed by computing device 12 and store desired information, or a suitable combination thereof.

통신 버스(18)는 프로세서(14), 컴퓨터 판독 가능 저장 매체(16)를 포함하여 컴퓨팅 장치(12)의 다른 다양한 컴포넌트들을 상호 연결한다.Communication bus 18 interconnects various other components of computing device 12 , including processor 14 and computer readable storage medium 16 .

컴퓨팅 장치(12)는 또한 하나 이상의 입출력 장치(24)를 위한 인터페이스를 제공하는 하나 이상의 입출력 인터페이스(22) 및 하나 이상의 네트워크 통신 인터페이스(26)를 포함할 수 있다. 입출력 인터페이스(22) 및 네트워크 통신 인터페이스(26)는 통신 버스(18)에 연결된다. 입출력 장치(24)는 입출력 인터페이스(22)를 통해 컴퓨팅 장치(12)의 다른 컴포넌트들에 연결될 수 있다. 예시적인 입출력 장치(24)는 포인팅 장치(마우스 또는 트랙패드 등), 키보드, 터치 입력 장치(터치패드 또는 터치스크린 등), 음성 또는 소리 입력 장치, 다양한 종류의 센서 장치 및/또는 촬영 장치와 같은 입력 장치, 및/또는 디스플레이 장치, 프린터, 스피커 및/또는 네트워크 카드와 같은 출력 장치를 포함할 수 있다. 예시적인 입출력 장치(24)는 컴퓨팅 장치(12)를 구성하는 일 컴포넌트로서 컴퓨팅 장치(12)의 내부에 포함될 수도 있고, 컴퓨팅 장치(12)와는 구별되는 별개의 장치로 컴퓨팅 장치(102)와 연결될 수도 있다.Computing device 12 may also include one or more input/output interfaces 22 and one or more network communication interfaces 26 that provide interfaces for one or more input/output devices 24 . The input/output interface 22 and the network communication interface 26 are coupled to the communication bus 18 . Input/output device 24 may be coupled to other components of computing device 12 via input/output interface 22 . Exemplary input/output device 24 may include a pointing device (such as a mouse or trackpad), a keyboard, a touch input device (such as a touchpad or touchscreen), a voice or sound input device, various types of sensor devices, and/or imaging devices. input devices and/or output devices such as display devices, printers, speakers and/or network cards. The exemplary input/output device 24 may be included in the computing device 12 as a component constituting the computing device 12 , and may be connected to the computing device 102 as a separate device distinct from the computing device 12 . may be

한편, 본 발명의 실시예는 본 명세서에서 기술한 방법들을 컴퓨터상에서 수행하기 위한 프로그램, 및 상기 프로그램을 포함하는 컴퓨터 판독 가능 기록매체를 포함할 수 있다. 상기 컴퓨터 판독 가능 기록매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나, 또는 컴퓨터 소프트웨어 분야에서 통상적으로 사용 가능한 것일 수 있다. 컴퓨터 판독 가능 기록매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광 기록 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 프로그램의 예는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다.Meanwhile, an embodiment of the present invention may include a program for performing the methods described in this specification on a computer, and a computer-readable recording medium including the program. The computer-readable recording medium may include program instructions, local data files, local data structures, etc. alone or in combination. The medium may be specially designed and configured for the present invention, or may be commonly used in the field of computer software. Examples of computer-readable recording media include hard disks, magnetic media such as floppy disks and magnetic tapes, optical recording media such as CD-ROMs and DVDs, and program instructions specially configured to store and execute program instructions such as ROMs, RAMs, flash memories, and the like. Hardware devices are included. Examples of the program may include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like.

이상에서 본 발명의 대표적인 실시예들을 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Although representative embodiments of the present invention have been described in detail above, those of ordinary skill in the art to which the present invention pertains will understand that various modifications are possible within the limits without departing from the scope of the present invention with respect to the above-described embodiments. . Therefore, the scope of the present invention should not be limited to the described embodiments, and should be defined by the claims described below as well as the claims and equivalents.

100: 멀티 팩터 인증 시스템
102: 단말
104: 인증 서버
302: 행동 패턴 수집 모듈
304: 제1 인증 모듈
306: 제2 인증 모듈
402: 저장 모듈
404: 제1 인증 모듈
406: 제2 인증 모듈
100: multi-factor authentication system
102: terminal
104: authentication server
302: behavior pattern collection module
304: first authentication module
306: second authentication module
402: storage module
404: first authentication module
406: second authentication module

Claims (18)

단말 및 인증 서버를 포함하는 멀티 팩터 인증 시스템으로서,
상기 단말은, 상기 인증 서버와 사전 공유된 패스워드 기반 인증 정보를 이용하여 단말 사용자의 1차 인증을 수행하고, 상기 1차 인증 과정에서 생성된 단말측 세션키를 이용하여 상기 1차 인증 과정에서 상기 단말 사용자로부터 획득된 인증 대상 행동 패턴을 암호화하여 상기 인증 서버로 송신하며,
상기 인증 서버는, 상기 1차 인증 과정에서 생성된 서버측 세션키를 이용하여 상기 암호화된 인증 대상 행동 패턴을 복호화하고, 복호화된 인증 대상 행동 패턴을 상기 사용자의 행동 패턴 모델과 비교하여 상기 단말 사용자의 2차 인증을 수행하고,
상기 단말은, 랜덤하게 설정된 변환 함수(transformation function)를 이용하여 상기 사용자로부터 수집된 행동 패턴을 변환하고, 변환된 행동 패턴을 이용하여 상기 행동 패턴 모델을 생성하며, 생성된 상기 행동 패턴 모델을 상기 인증 서버에 등록하되, 상기 인증 서버에 등록된 상기 행동 패턴 모델이 외부로 노출된 것으로 판단되는 경우, 새로운 변환 함수를 이용하여 상기 수집된 행동 패턴을 재변환하여 상기 행동 패턴 모델을 재구성하고, 재구성된 상기 행동 패턴 모델을 상기 인증 서버에 재등록하는, 멀티 팩터 인증 시스템.
A multi-factor authentication system comprising a terminal and an authentication server, comprising:
The terminal performs primary authentication of the terminal user using the password-based authentication information shared in advance with the authentication server, and uses the terminal-side session key generated in the primary authentication process in the primary authentication process. The authentication target behavior pattern obtained from the terminal user is encrypted and transmitted to the authentication server,
The authentication server decrypts the encrypted authentication target behavior pattern using the server-side session key generated in the first authentication process, and compares the decrypted authentication target behavior pattern with the user's behavior pattern model to compare the terminal user 2nd authentication of
The terminal transforms the behavior pattern collected from the user using a randomly set transformation function, generates the behavior pattern model using the transformed behavior pattern, and uses the generated behavior pattern model to However, when it is determined that the behavior pattern model registered in the authentication server is exposed to the outside, the collected behavior pattern is reconverted using a new transformation function to reconstruct the behavior pattern model, and reconfigure A multi-factor authentication system that re-registers the behavior pattern model that has been made to the authentication server.
청구항 1에 있어서,
상기 패스워드 기반 인증 정보는, 상기 단말 사용자의 패스워드 또는 상기 패스워드의 해시값인, 멀티 팩터 인증 시스템.
The method according to claim 1,
The password-based authentication information is a password of the terminal user or a hash value of the password, a multi-factor authentication system.
삭제delete 삭제delete 청구항 1에 있어서,
상기 단말은, 상기 변환 함수를 이용하여 인증 대상 행동 패턴을 변환한 뒤 상기 인증 서버로 송신하는, 멀티 팩터 인증 시스템.
The method according to claim 1,
The terminal converts the behavior pattern to be authenticated by using the transformation function and then transmits it to the authentication server.
삭제delete 청구항 1에 있어서,
상기 인증 서버는, 상기 2차 인증에 성공한 경우 상기 인증 대상 행동 패턴을 이용하여 상기 행동 패턴 모델을 갱신하는, 멀티 팩터 인증 시스템.
The method according to claim 1,
The authentication server, when the secondary authentication is successful, updates the behavior pattern model by using the authentication target behavior pattern, a multi-factor authentication system.
청구항 1에 있어서,
상기 인증 서버는, 상기 2차 인증에 성공한 경우 상기 인증 대상 행동 패턴을 저장하고,
상기 행동 패턴 모델이 손상된 경우, 기 저장된 상기 인증 대상 행동 패턴을 이용하여 상기 행동 패턴 모델을 재생성하는, 멀티 팩터 인증 시스템.
The method according to claim 1,
The authentication server stores the authentication target behavior pattern when the secondary authentication is successful,
When the behavior pattern model is damaged, the multi-factor authentication system for regenerating the behavior pattern model by using the previously stored authentication target behavior pattern.
사용자로부터 수집된 행동 패턴으로부터 행동 패턴 모델을 생성하고, 생성된 상기 행동 패턴 모델을 인증 서버에 등록하는 행동 패턴 수집 모듈;
상기 인증 서버와 사전 공유된 패스워드 기반 인증 정보를 이용하여 상기 인증 서버와 1차 인증을 수행하고, 상기 인증 서버와 공유되는 세션키를 생성하는 제1 인증 모듈; 및
상기 1차 인증 과정에서 상기 사용자로부터 획득된 인증 대상 행동 패턴을 상기 세션키로 암호화하여 상기 인증 서버로 송신함으로써 상기 인증 서버와 2차 인증을 수행하는 제2 인증 모듈을 포함하고,
상기 행동 패턴 수집 모듈은, 랜덤하게 설정된 변환 함수(transformation function)를 이용하여 상기 수집된 행동 패턴을 변환하고, 변환된 행동 패턴을 이용하여 상기 행동 패턴 모델을 생성하며, 상기 인증 서버에 등록된 상기 행동 패턴 모델이 외부로 노출된 것으로 판단되는 경우, 새로운 변환 함수를 이용하여 상기 수집된 행동 패턴을 재변환하여 상기 행동 패턴 모델을 재구성하고, 재구성된 상기 행동 패턴 모델을 상기 인증 서버에 재등록하는, 단말 장치.
a behavior pattern collection module for generating a behavior pattern model from behavior patterns collected from a user, and registering the generated behavior pattern model in an authentication server;
a first authentication module for performing primary authentication with the authentication server using the password-based authentication information previously shared with the authentication server, and generating a session key shared with the authentication server; and
a second authentication module for performing secondary authentication with the authentication server by encrypting the authentication target behavior pattern obtained from the user in the primary authentication process with the session key and transmitting it to the authentication server,
The behavior pattern collection module transforms the collected behavior pattern using a randomly set transformation function, generates the behavior pattern model using the transformed behavior pattern, and registers the When it is determined that the behavior pattern model is exposed to the outside, reconverting the collected behavior pattern using a new transformation function to reconstruct the behavior pattern model, and re-registering the reconfigured behavior pattern model to the authentication server , terminal devices.
청구항 9에 있어서,
상기 패스워드 기반 인증 정보는, 상기 사용자의 패스워드 또는 상기 패스워드의 해시값인, 단말 장치.
10. The method of claim 9,
The password-based authentication information is a password of the user or a hash value of the password.
삭제delete 청구항 9에 있어서,
상기 제2 인증 모듈은, 상기 변환 함수를 이용하여 인증 대상 행동 패턴을 변환한 뒤 상기 인증 서버로 송신하는, 단말 장치.
10. The method of claim 9,
wherein the second authentication module converts the behavior pattern to be authenticated by using the transformation function and transmits it to the authentication server.
삭제delete 하나 이상의 프로세서들, 및
상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 단말 장치에서 수행되는 방법으로서,
사용자로부터 수집된 행동 패턴으로부터 행동 패턴 모델을 생성하고, 생성된 상기 행동 패턴 모델을 인증 서버에 등록하는 단계;
상기 인증 서버와 사전 공유된 패스워드 기반 인증 정보를 이용하여 상기 인증 서버와 1차 인증을 수행하고, 상기 인증 서버와 공유되는 세션키를 생성하는 제1 인증 단계; 및
상기 1차 인증 과정에서 상기 사용자로부터 획득된 인증 대상 행동 패턴을 상기 세션키로 암호화하여 상기 인증 서버로 송신함으로써 상기 인증 서버와 2차 인증을 수행하는 제2 인증 단계를 포함하고,
상기 행동 패턴 모델을 인증 서버에 등록하는 단계는,
랜덤하게 설정된 변환 함수(transformation function)를 이용하여 상기 수집된 행동 패턴을 변환하고, 변환된 행동 패턴을 이용하여 상기 행동 패턴 모델을 생성하며, 생성된 상기 행동 패턴 모델을 상기 인증 서버에 등록하는 단계; 및
상기 인증 서버에 등록된 상기 행동 패턴 모델이 외부로 노출된 것으로 판단되는 경우, 새로운 변환 함수를 이용하여 상기 수집된 행동 패턴을 재변환하여 상기 행동 패턴 모델을 재구성하고, 재구성된 상기 행동 패턴 모델을 상기 인증 서버에 재등록하는 단계를 포함하는, 방법.
one or more processors, and
A method performed in a terminal device having a memory for storing one or more programs executed by the one or more processors,
generating a behavior pattern model from behavior patterns collected from a user, and registering the generated behavior pattern model in an authentication server;
a first authentication step of performing primary authentication with the authentication server using password-based authentication information previously shared with the authentication server, and generating a session key shared with the authentication server; and
a second authentication step of performing secondary authentication with the authentication server by encrypting an authentication target behavior pattern obtained from the user in the primary authentication process with the session key and transmitting it to the authentication server,
The step of registering the behavior pattern model to the authentication server,
Transforming the collected behavior pattern using a randomly set transformation function, generating the behavior pattern model using the transformed behavior pattern, and registering the generated behavior pattern model with the authentication server ; and
When it is determined that the behavior pattern model registered in the authentication server is exposed to the outside, the collected behavior pattern is reconverted using a new transformation function to reconstruct the behavior pattern model, and the reconstructed behavior pattern model and re-registering with the authentication server.
청구항 14에 있어서,
상기 패스워드 기반 인증 정보는, 상기 사용자의 패스워드 또는 상기 패스워드의 해시값인, 방법.
15. The method of claim 14,
The password-based authentication information is a password of the user or a hash value of the password.
삭제delete 청구항 14에 있어서,
상기 제2 인증 단계는, 상기 변환 함수를 이용하여 인증 대상 행동 패턴을 변환한 뒤 상기 인증 서버로 송신하는, 방법.
15. The method of claim 14,
In the second authentication step, the authentication target behavior pattern is transformed using the transformation function and then transmitted to the authentication server.
삭제delete
KR1020200102207A 2020-08-14 2020-08-14 System and method for multi-factor authentication using password and behavior pattern KR102424873B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200102207A KR102424873B1 (en) 2020-08-14 2020-08-14 System and method for multi-factor authentication using password and behavior pattern

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200102207A KR102424873B1 (en) 2020-08-14 2020-08-14 System and method for multi-factor authentication using password and behavior pattern

Publications (2)

Publication Number Publication Date
KR20220021543A KR20220021543A (en) 2022-02-22
KR102424873B1 true KR102424873B1 (en) 2022-07-22

Family

ID=80494118

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200102207A KR102424873B1 (en) 2020-08-14 2020-08-14 System and method for multi-factor authentication using password and behavior pattern

Country Status (1)

Country Link
KR (1) KR102424873B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024002490A1 (en) * 2022-06-30 2024-01-04 Telefonaktiebolaget Lm Ericsson (Publ) Methods and devices for supporting authentication

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020052605A (en) * 2018-09-26 2020-04-02 株式会社日立製作所 Authentication system and authentication method

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105721153B (en) * 2014-09-05 2020-03-27 三星Sds株式会社 Key exchange system and method based on authentication information
KR101990454B1 (en) 2017-08-14 2019-10-01 인터리젠 주식회사 Method and apparatus for user authentication using keystroke pattern data
KR20200089971A (en) * 2019-01-18 2020-07-28 삼성전자주식회사 Electronic device and operating method for authenticating a user

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020052605A (en) * 2018-09-26 2020-04-02 株式会社日立製作所 Authentication system and authentication method

Also Published As

Publication number Publication date
KR20220021543A (en) 2022-02-22

Similar Documents

Publication Publication Date Title
US11128471B2 (en) Accessibility controls in distributed data systems
US11108753B2 (en) Securing files using per-file key encryption
US11683187B2 (en) User authentication with self-signed certificate and identity verification and migration
US20220191012A1 (en) Methods For Splitting and Recovering Key, Program Product, Storage Medium, and System
US9646161B2 (en) Relational database fingerprinting method and system
US20220014367A1 (en) Decentralized computing systems and methods for performing actions using stored private data
US20160112413A1 (en) Method for controlling security of cloud storage
JP6123353B2 (en) Document authority management system, terminal device, document authority management method, and program
KR20200031803A (en) System and method for registration
US11663318B2 (en) Decentralized password vault
KR20220092811A (en) Method and device for storing encrypted data
CN114500069A (en) Method and system for storing and sharing electronic contract
US11120120B2 (en) Method and system for secure password storage
Khan et al. A brief review on cloud computing authentication frameworks
KR102035249B1 (en) Apparatus and method for generating cryptographic key using biometric information
KR102424873B1 (en) System and method for multi-factor authentication using password and behavior pattern
Şahan et al. A multi-factor authentication framework for secure access to blockchain
US11750391B2 (en) System and method for performing a secure online and offline login process
KR101593675B1 (en) User data integrity verification method and apparatus
US11528134B2 (en) Authentication using transformation verification
WO2022212396A1 (en) Systems and methods of protecting secrets in use with containerized applications
KR102526114B1 (en) Apparatus and method for encryption and decryption
US11991168B2 (en) Authentication bypass infrastructure
WO2022162884A1 (en) Biometric authentication system, template update method therefor, recoding medium, biometric authentication client device, and biometric authentication server device
KR102644153B1 (en) Apparatus and method for data security

Legal Events

Date Code Title Description
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant