KR102452717B1 - Apparatus and Method for User Authentication - Google Patents

Apparatus and Method for User Authentication Download PDF

Info

Publication number
KR102452717B1
KR102452717B1 KR1020210044764A KR20210044764A KR102452717B1 KR 102452717 B1 KR102452717 B1 KR 102452717B1 KR 1020210044764 A KR1020210044764 A KR 1020210044764A KR 20210044764 A KR20210044764 A KR 20210044764A KR 102452717 B1 KR102452717 B1 KR 102452717B1
Authority
KR
South Korea
Prior art keywords
user
authentication
password
upwd
uid
Prior art date
Application number
KR1020210044764A
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 KR1020210044764A priority Critical patent/KR102452717B1/en
Application granted granted Critical
Publication of KR102452717B1 publication Critical patent/KR102452717B1/en

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/083Network architectures or network communication protocols for network security for authentication of entities using 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
    • 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/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • 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/0861Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • 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/082Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying multi-factor authentication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)

Abstract

A user authentication device and method are disclosed. A user authentication method according to an embodiment of the present invention may include the steps of: determining whether a user ID (USER ID, UID) and password (Rememberable Password, RPWD) have been entered according to a login request from the user; if only a user ID (USER ID, UID) is entered, performing biometric authentication using a password (Authenticator Password, APWD) stored in advance in an authentication device owned by the user; and logging in to a specific service based on the user password (User Password, UPWD) restored from the password (Authenticator Password, APWD) output from the authentication device. Vulnerabilities of password-based user authentication can be remedied.

Description

사용자 인증 장치 및 방법{Apparatus and Method for User Authentication} Apparatus and Method for User Authentication}

기재된 실시예는 사용자 인증 기술에 관한 것이다.The described embodiments relate to user authentication techniques.

70년대 초반, UNIX에서 처음 사용되기 시작한 아이디/패스워드 인증(이하, 패스워드 인증)은 50년이 지난 현재까지도 여전히 가장 많이 사용되는 사용자 인증 방식이다. ID/password authentication (hereafter, password authentication), which was first used in UNIX in the early 1970s, is still the most used user authentication method 50 years later.

패스워드 인증은 사용자가 기억하고 직접 입력해야 하는 특성상 경우의 수가 적기 때문에, 무차별 대입 공격(Brute-force attack)에 취약하다. 특히,'password','123456','asdf1234'와 같은 널리 알려진 패스워드들이 빈번히 사용됨으로 인해, 이를 이용한 사전공격(Dictionary attack)에 더욱 용이하게 패스워드가 해킹될 수 있다.Password authentication is vulnerable to a brute-force attack because the number of cases is small due to the characteristic that the user must remember and manually input it. In particular, since well-known passwords such as 'password', '123456', and 'asdf1234' are frequently used, passwords can be more easily hacked in a dictionary attack using them.

IT 기술이 인터넷에서 스마트폰, 더 나아가 IoT까지 급속히 발전하면서 사용자 1인당 가입한 서비스들이 급증하고, 이와 함께 사용자가 관리해야 하는 계정정보 또한 증가한다. 이에 사용의 편의를 위해서 사용자는 보통 대부분의 가입 서비스에서 동일한 아이디와 패스워드를 사용하는데, 이는 하나의 서버 또는 계정 해킹 시에 파급력을 증폭시키는 원인이 된다.As IT technology rapidly develops from the Internet to smartphones and even IoT, the number of services subscribed per user increases rapidly, along with the increase in account information that users need to manage. Therefore, for convenience of use, users usually use the same ID and password in most subscription services, which amplifies the ripple effect when one server or account is hacked.

최근, 이러한 취약한 패스워드 사용을 막기 위해 서버 측에서 패스워드 생성 정책, 예컨대, 0자리 이상 사용, 영어/특수문자/숫자 각 1자 포함 및 6개월마다 교체 등을 강제하고 있다. Recently, in order to prevent the use of such a weak password, the server side is forcing a password generation policy, for example, the use of zero or more characters, including one English/special character/numeric character, and replacing it every 6 months.

따라서, 사용자는 복잡하고 자주 변경해야 하는 패스워드를 기억하는 것이 쉽지 않아, 패스워드를 적어놓거나, 파일로 저장해놓거나 또는 정책에 위배되지 않는 패턴화된 패스워드, 예컨대 '일월@01', '이월@02', '삼월@03'등을 사용하는 방식으로 우회하면서 오히려 패스워드 보안성을 더 저하시킨다.Therefore, it is not easy for users to remember complex and frequently changed passwords, so write down passwords, save them in a file, or pattern passwords that do not violate policy, such as 'January@01', 'February@02' , 'Samwol@03', etc. are bypassed, and on the contrary, it further lowers the password security.

전술한 바와 같은 패스워드의 취약점을 개선하기 위한 기술로 크게 두 가지가 존재한다. There are two major techniques for improving password weakness as described above.

첫 번째는 패스워드를 사용자 대신 관리해주는 소프트웨어를 사용하는 것이다. 예컨대, LastPass, 알패스, 크롬 비밀번호 자동완성 등과 같은 패스워드 관리 도구로, 이는 사용자의 패스워드를 대신 저장하고, 사용자가 필요할 때 대신 입력해주는 도구들로 2010년 전후로 개발되어 사용 중이다.The first is to use software that manages passwords for you. For example, password management tools such as LastPass, RPass, Chrome password autocomplete, etc., are tools that store the user's password instead and input it when the user needs it.

그런데, 이러한 패스워드 관리 도구는 다음과 같은 문제점이 있다.However, these password management tools have the following problems.

우선, 사용자가 저장된 패스워드를 사용할 때, 사용자 인증이 필요한데 이 사용자 인증 역시 패스워드 인증이라는 점이다. 즉, 마스터 패스워드로 다른 패스워드를 암호화하게 된다. 따라서, 마스터 패스워드 유출 시, 사용자의 모든 계정 정보가 유출될 위험이 있다. 실제로 2017년 9월에 알패스가 해킹되어 이슈가 된 바 있다. First, when a user uses a stored password, user authentication is required, and this user authentication is also password authentication. That is, another password is encrypted with the master password. Therefore, when the master password is leaked, there is a risk that all account information of the user is leaked. In fact, in September 2017, Alpass was hacked and became an issue.

또한, 항상 인터넷에 연결되어 있어야 하므로 서버 장애 시에는 서비스가 되지 않을 수 있고, 기업/기관의 사내 사설망에서 사용하기에 한계가 있다. In addition, since it must always be connected to the Internet, the service may not be available in the event of a server failure, and there is a limit to use in the private network of a company/organization.

또한, 사용자의 모든 계정정보가 서버에 저장되기 때문에 데이터에 대한 소유권 등이 보장되지 않으며, 서비스 사업자를 전적으로 신뢰해야 한다.In addition, since all user account information is stored on the server, ownership of data is not guaranteed, and the service provider must be fully trusted.

두 번째는 패스워드 대신에 지문, 홍채와 같은 생체정보를 이용해 사용자를 인증하는 방식이다. 이러한 생체인증 시장표준인 FIDO(Fast Identity Online)는 기존 인증 기술인 패스워드, 공인인증서 등을 대체하는 차세대 인증 기술로 2014년 12월 FIDO Alliance에서 제정되었으며, FIDO의 규격 중 일부(CTAP)가 국제표준인 W3C의'WebAuthn'으로 발표된 바 있다. The second method is to authenticate the user using biometric information such as fingerprint and iris instead of password. This biometric market standard FIDO (Fast Identity Online) is a next-generation authentication technology that replaces existing authentication technologies such as passwords and public certificates. It was established by the FIDO Alliance in December 2014. has been announced

그런데, FIDO는 다음과 같은 문제점이 있다. However, FIDO has the following problems.

이는 기존 패스워드 인증 방식과 호환이 불가능하기 때문에 이미 개발된 시스템에 적용하기 위해서는 많은 비용과 시간, 사용자의 협조가 요구된다. 또한, FIDO에서는 별도의 인증장치가 요구되므로, 사용자가 인증장치를 분실하거나 인증장치가 고장난 경우, 사용자의 개인키를 사용할 수 없기 때문에 패스워드의 복원이나 복구가 불가능하다. 이러한 상황에 대비하여 복원/복구를 위해 개인키를 백업해 놓을 수는 있으나, 이로 인해 기존 공인인증서와 동일한 문제가 발생한다. Since this is not compatible with the existing password authentication method, it requires a lot of money, time, and user cooperation to apply it to an already developed system. In addition, since a separate authentication device is required in FIDO, if the user loses the authentication device or the authentication device breaks down, the user's private key cannot be used, so password restoration or recovery is impossible. In preparation for such a situation, it is possible to back up the private key for restoration/recovery, but this causes the same problem as the existing public certificate.

기재된 실시예는 패스워드 기반의 사용자 인증의 취약점을 개선할 수 있다. The described embodiment can improve the vulnerability of password-based user authentication.

기재된 실시예는 패스워드 기반의 인증 방식에서 패스워드 유출과 같은 문제를 해결하는 데 그 목적이 있다. The described embodiment aims to solve a problem such as password leakage in a password-based authentication method.

기재된 실시예는 인터넷에 항상 연결되어야 인증 정보의 획득이 가능한 문제를 해결하는 데 그 목적이 있다. The described embodiment aims to solve a problem that authentication information can be obtained only when always connected to the Internet.

기재된 실시예는 외부 사업자를 전적으로 신뢰해야 하는 의존성을 제거하는데 그 목적이 있다. The described embodiment aims to eliminate the dependency of having to completely trust an external operator.

기재된 실시예는 FIDO 표준을 준수하면서 기존 패스워드 인증과 호환이 가능하도록 하는데 그 목적이 있다.The described embodiment has the purpose of making it compatible with the existing password authentication while complying with the FIDO standard.

기재된 실시예는 FIDO에서의 인증 장치가 분실 또는 고장이 발생하더라도 패스워드의 복원 및 복구가 가능하도록 하는데 그 목적이 있다. The described embodiment aims to enable the restoration and recovery of passwords even if the authentication device in the FIDO is lost or broken.

실시예에 따른 사용자 인증 방법은, 사용자로부터 로그인 요청됨에 따라, 사용자 아이디(USER ID, UID) 및 패스워드(Rememberable Password, RPWD) 입력 여부를 판단하는 단계, 사용자 아이디(USER ID, UID)만 입력된 경우, 해당 사용자가 소유한 인증장치에 미리 저장된 패스워드(Authenticator Password, APWD)를 사용하여 생체 인증을 수행하는 단계 및 인증장치로부터 출력된 패스워드(Authenticator Password, APWD)로부터 복원된 사용자 패스워드(User Password, UPWD)를 기반으로 특정 서비스에 로그인하는 단계를 포함할 수 있다. The user authentication method according to the embodiment is a step of determining whether to input a user ID (USER ID, UID) and a password (Rememberable Password, RPWD) in response to a login request from a user, only the user ID (USER ID, UID) is input In this case, the step of performing biometric authentication using a password (Authenticator Password, APWD) stored in advance in the authentication device owned by the user and the user password restored from the password (Authenticator Password, APWD) output from the authentication device (User Password, UPWD) to log in to a specific service.

이때, 생체 인증을 수행하는 단계는, FIDO 표준 프로토콜을 기반으로 수행되되, APWD는, FIDO CTAP2 프로토콜의 확장 필드(Extension Field)를 사용하여 인증 장치에 입력되거나, 인증장치로부터 출력될 수 있다. In this case, the step of performing biometric authentication is performed based on the FIDO standard protocol, and APWD may be input to or output from the authentication device using an extension field of the FIDO CTAP2 protocol.

이때, 실시예에 따른 사용자 인증 방법은, 상기 단계들을 수행하기 이전에, 현재 UPWD(User Password)를 RPWD(Rememberable Password)로 변경하여 인증 등록하는 단계 및 RPWD로부터 기존 UPWD를 복원하고, 신규 UPWD와 APWD(Authenticator Password)를 생성하여 사용자의 인증장치를 등록하는 단계를 더 포함할 수 있다. At this time, the user authentication method according to the embodiment, before performing the above steps, changing the current UPWD (User Password) to RPWD (Rememberable Password) and registering the authentication and restoring the existing UPWD from the RPWD, and the new UPWD and The method may further include generating an Authenticator Password (APWD) and registering the user's authentication device.

이때, 인증 등록하는 단계는, 사용자로부터 인증 최초 등록 요청됨에 따라, 사용자에게 UID, 현재 UPWD 및 등록할 RPWP를 입력 요청하는 단계, 사용자로부터 UID, 현재 UPWD 및 등록할 RPWP가 입력됨에 따라, 카멜레온 해시 함수를 기반으로 신규 UPWD 및 사용자 파라미터를 생성 및 저장하는 단계 및 접속 타겟의 응용 서버에 접속하여 UID, 현재 UPWD 및 신규 UPWD를 기반으로 패스워드 변경 요청하는 단계를 포함할 수 있다. At this time, the step of registering for authentication is a step of requesting the user to input the UID, the current UPWD, and the RPWP to be registered, as the initial registration request for authentication is requested from the user, the UID, the current UPWD and the RPWP to be registered from the user As input is received, chameleon hash It may include the steps of generating and storing a new UPWD and user parameters based on the function, and requesting a password change based on the UID, the current UPWD, and the new UPWD by accessing the application server of the connection target.

이때, 인증 장치를 등록하는 단계는, 사용자로부터 인증 장치 등록 요청됨에 따라, 사용자에게 UID 및 RPWP를 입력 요청하는 단계, 사용자로부터 UID 및 RPWP가 입력됨에 따라, 기존 UPWP를 복원하고 미리 저장된 해당 사용자의 파라미터를 이용하여 카멜레온 해시 함수를 기반으로 신규 UPWD, APWD 및 사용자 파라미터를 생성 및 갱신하는 단계, FIDO 표준을 기반 인증을 통해 사용자의 인증장치에 APWD를 저장하는 단계 및 접속 타겟의 응용 서버에 접속하여 UID, 기존 UPWD 및 신규 UPWD를 기반으로 패스워드 변경 요청하는 단계를 포함할 수 있다. At this time, the step of registering the authentication device is a step of requesting the user to input the UID and RPWP, as the user requests to register the authentication device, and as the UID and RPWP are input from the user, restore the existing UPWP and store the user's in advance Creating and updating new UPWD, APWD and user parameters based on the chameleon hash function using parameters, storing the APWD in the user's authentication device through authentication based on the FIDO standard, and accessing the application server of the connection target It may include the step of requesting a password change based on the UID, the existing UPWD, and the new UPWD.

이때, 생체 인증을 수행하는 단계는, 인증 프로바이더로부터 제공된 랜덤한 값인 challenge를 인증 장치에 전달하여 인증(Credential) 요청하는 단계, 인증 대상인 사용자의 생체 인증을 완료한 인증 장치로부터 challenge 전자서명 값 및 APWD를 포함하는 인증(Credential) 응답을 인증 프로바이더에게 전달하는 단계 및 전자서명 값을 검증한 결과를 수신하는 단계를 포함할 수 있다. In this case, the step of performing biometric authentication includes the step of transmitting the challenge, which is a random value provided from the authentication provider, to the authentication device and requesting authentication (credential), the digital signature value of the challenge from the authentication device that has completed the biometric authentication of the user who is the authentication target, and It may include transmitting a credential response including the APWD to the authentication provider and receiving a result of verifying the digital signature value.

이때, 실시예에 따른 사용자 인증 방법은, 사용자(USER ID, UID) 및 패스워드(Rememberable Password, RPWD) 입력 여부를 판단한 결과, UID 및 RPWD가 입력됨에 따라, 상기 생체 인증을 수행하는 단계 및 로그인하는 단계 대신에, RPWD를 이용하여 카멜레온 해시 함수를 기반으로 기존 UPWD를 복원하여 특정 서비스에 로그인을 수행하는 단계를 수행할 수 있다. At this time, in the user authentication method according to the embodiment, as a result of determining whether a user (USER ID, UID) and a password (Rememberable Password, RPWD) are input, as the UID and RPWD are input, performing the biometric authentication and logging in Instead of the step, it is possible to perform a step of logging in to a specific service by restoring the existing UPWD based on the chameleon hash function using the RPWD.

이때, 실시예에 따른 사용자 인증 방법은, 인증 장치 해제 요청된 경우, 사용자가 RPWD로 사용자 인증을 수행하고, 등록된 인증장치를 해제하는 단계를 더 포함할 수 있다. In this case, the user authentication method according to the embodiment may further include, when a request to release the authentication device is requested, the user performs user authentication using the RPWD, and releases the registered authentication device.

이때, 해제하는 단계는, 사용자가 UID 및 RPWD 입력한 후, 인증장치 분실 버튼을 선택함에 따라, RPWD를 이용하여 카멜레온 해시 함수를 기반으로 기존 UPWD를 복원하는 단계, 접속 타겟의 응용 서버에 접속하여 UID 및 복원된 UPWD를 기반으로 로그인하는 단계 및 인증 프로바이더에 FIDO 파라미터 삭제를 요청하는 단계를 포함할 수 있다. At this time, the step of releasing is the step of restoring the existing UPWD based on the chameleon hash function using the RPWD as the user inputs the UID and RPWD and selects the button for losing the authentication device, accessing the application server of the access target It may include logging in based on the UID and the restored UPWD and requesting the authentication provider to delete the FIDO parameter.

실시예에 따른 사용자 인증 장치는, 적어도 하나의 프로그램이 기록된 메모리 및 프로그램을 실행하는 프로세서를 포함하며, 프로그램은, 사용자로부터 로그인 요청됨에 따라, 사용자 아이디(USER ID, UID) 및 패스워드(Rememberable Password, RPWD) 입력 여부를 판단하는 단계, UID만 입력된 경우, 해당 사용자가 소유한 인증장치에 미리 저장된 패스워드(Authenticator Password, APWD)를 사용하여 생체 인증을 수행하는 단계 및 인증장치로부터 출력된 패스워드(Authenticator Password, APWD)로부터 복원된 사용자 패스워드(User Password, UPWD)를 기반으로 특정 서비스에 로그인하는 단계를 수행할 수 있다. A user authentication apparatus according to an embodiment includes a memory in which at least one program is recorded and a processor for executing the program, and the program, as a login request is requested from the user, a user ID (USER ID, UID) and a password (Rememberable Password) , RPWD) is inputted, if only UID is input, performing biometric authentication using a password (Authenticator Password, APWD) stored in advance in the authentication device owned by the user, and the password output from the authentication device ( A step of logging in to a specific service may be performed based on the user password (User Password, UPWD) restored from the Authenticator Password (APWD).

이때, 생체 인증을 수행하는 단계는, FIDO 표준 프로토콜을 기반으로 수행되되, APWD는, FIDO CTAP2 프로토콜의 확장 필드(Extension Field)를 사용하여 인증 장치에 입력되거나, 인증장치로부터 출력될 수 있다. In this case, the step of performing biometric authentication is performed based on the FIDO standard protocol, and APWD may be input to or output from the authentication device using an extension field of the FIDO CTAP2 protocol.

이때, 프로그램은, 상기 단계들을 수행하기 이전에, 현재 UPWD(User Password)를 RPWD(Rememberable Password)로 변경하여 인증 등록하는 단계 및 RPWD로부터 기존 UPWD를 복원하고, 신규 UPWD와 APWD(Authenticator Password)를 생성하여 사용자의 인증장치를 등록하는 단계를 더 수행할 수 있다. At this time, the program, before performing the above steps, changing the current UPWD (User Password) to RPWD (Rememberable Password) to register for authentication and restore the existing UPWD from the RPWD, and a new UPWD and APWD (Authenticator Password) The step of creating and registering the user's authentication device may be further performed.

이때, 인증 등록하는 단계는, 사용자로부터 인증 최초 등록 요청됨에 따라, 사용자에게 UID, 현재 UPWD 및 등록할 RPWP를 입력 요청하는 단계, 사용자로부터 UID, 현재 UPWD 및 등록할 RPWP가 입력됨에 따라, 카멜레온 해시 함수를 기반으로 신규 UPWD 및 사용자 파라미터를 생성 및 저장하는 단계 및 접속 타겟의 응용 서버에 접속하여 UID, 현재 UPWD 및 신규 UPWD를 기반으로 패스워드 변경 요청하는 단계를 포함할 수 있다. At this time, the step of registering for authentication is a step of requesting the user to input the UID, the current UPWD, and the RPWP to be registered, as the initial registration request for authentication is requested from the user, the UID, the current UPWD and the RPWP to be registered from the user As input is received, chameleon hash It may include the steps of generating and storing a new UPWD and user parameters based on the function, and requesting a password change based on the UID, the current UPWD, and the new UPWD by accessing the application server of the connection target.

이때, 인증장치를 등록하는 단계는, 사용자로부터 인증 장치 등록 요청됨에 따라, 사용자에게 UID 및 RPWP를 입력 요청하는 단계, 사용자로부터 UID 및 RPWP가 입력됨에 따라, 기존 UPWP를 복원하고 미리 저장된 해당 사용자의 파라미터를 이용하여 카멜레온 해시 함수를 기반으로 신규 UPWD, APWD 및 사용자 파라미터를 생성 및 갱신하는 단계, FIDO 표준을 기반 인증을 통해 사용자의 인증장치에 APWD를 저장하는 단계 및 접속 타겟의 응용 서버에 접속하여 UID, 기존 UPWD 및 신규 UPWD를 기반으로 패스워드 변경 요청하는 단계를 포함할 수 있다. At this time, the step of registering the authentication device is a step of requesting the user to input the UID and RPWP, as the user requests to register the authentication device, and as the UID and RPWP are input from the user, restore the existing UPWP and store the user's in advance Creating and updating new UPWD, APWD and user parameters based on the chameleon hash function using parameters, storing the APWD in the user's authentication device through authentication based on the FIDO standard, and accessing the application server of the connection target It may include the step of requesting a password change based on the UID, the existing UPWD, and the new UPWD.

이때, 생체 인증을 수행하는 단계는, 인증 프로바이더로부터 제공된 랜덤한 값인 challenge를 인증 장치에 전달하여 인증(Credential) 요청하는 단계, 인증 대상인 사용자의 생체 인증을 완료한 인증 장치로부터 challenge 전자서명 값 및 APWD를 포함하는 인증(Credential) 응답을 인증 프로바이더에게 전달하는 단계 및 전자서명 값을 검증한 결과를 수신하는 단계를 포함할 수 있다. In this case, the step of performing biometric authentication includes the step of transmitting the challenge, which is a random value provided from the authentication provider, to the authentication device and requesting authentication (credential), the digital signature value of the challenge from the authentication device that has completed the biometric authentication of the user who is the authentication target, and It may include transmitting a credential response including the APWD to the authentication provider and receiving a result of verifying the digital signature value.

이때, 프로그램은, 사용자 아이디(USER ID, UID) 및 패스워드(Rememberable Password, RPWD) 입력 여부를 판단한 결과, UID 및 RPWD가 입력됨에 따라, 상기 생체 인증을 수행하는 단계 및 로그인하는 단계 대신에, RPWD를 이용하여 카멜레온 해시 함수를 기반으로 기존 UPWD를 복원하여 특정 서비스에 로그인을 수행하는 단계를 더 수행할 수 있다. At this time, the program determines whether a user ID (USER ID, UID) and a password (Rememberable Password, RPWD) are input, and as a result of determining whether the UID and RPWD are input, instead of performing the biometric authentication and logging in, RPWD can be used to restore the existing UPWD based on the chameleon hash function to further perform the step of logging in to a specific service.

이때, 프로그램은, 인증 장치 해제 요청된 경우, 사용자가 RPWD로 사용자 인증을 수행하고, 등록된 인증장치를 해제하는 단계를 더 수행할 수 있다. In this case, the program may further perform the steps of, when a request to release the authentication device is requested, the user performs user authentication with the RPWD, and releases the registered authentication device.

이때, 해제하는 단계는, 사용자가 UID 및 RPWD 입력한 후, 인증장치 분실 버튼을 선택함에 따라, RPWD를 이용하여 카멜레온 해시 함수를 기반으로 기존 UPWD를 복원하는 단계, 접속 타겟의 응용 서버에 접속하여 UID 및 복원된 UPWD를 기반으로 로그인하는 단계 및 인증 프로바이더에 FIDO 파라미터 삭제를 요청하는 단계를 포함할 수 있다. At this time, the step of releasing is the step of restoring the existing UPWD based on the chameleon hash function using the RPWD as the user inputs the UID and RPWD and selects the button for losing the authentication device, accessing the application server of the access target It may include logging in based on the UID and the restored UPWD and requesting the authentication provider to delete the FIDO parameter.

실시예에 따른 사용자 인증 방법은, 현재 UPWD(User Password)를 RPWD(Rememberable Password)로 변경하여 인증 등록하는 단계, RPWD로부터 기존 UPWD를 복원하고, 신규 UPWD와 APWD(Authenticator Password)를 생성하여 사용자의 인증장치를 등록하는 단계, 사용자로부터 로그인 요청됨에 따라, 사용자 아이디(USER ID, UID) 및 RPWD 입력 여부를 판단하는 단계, 및 RPWD 입력 여부에 따라, 선택적으로 생체 인증 기반 로그인 단계 또는 패스워드 기반 로그인 단계를 수행하되, 생체 인증 기반 로그인 단계는, UID가 입력됨에 따라, 해당 사용자가 소유한 인증장치에 미리 저장된 패스워드(Authenticator Password, APWD)를 사용하여 생체 인증을 수행하는 단계 및 인증장치로부터 출력된 패스워드(Authenticator Password, APWD)로부터 복원된 사용자 패스워드(User Password, UPWD)를 기반으로 특정 서비스에 로그인하는 단계를 포함하고, 패스워드 기반 로그인 단계는, UID 및 RPWD가 입력됨에 따라, RPWD를 이용하여 카멜레온 해시 함수를 기반으로 기존 UPWD를 복원하여 특정 서비스에 로그인을 수행할 수 있다. The user authentication method according to the embodiment includes the steps of registering authentication by changing the current UPWD (User Password) to a RPWD (Rememberable Password), restoring the existing UPWD from the RPWD, and generating a new UPWD and APWD (Authenticator Password) of the user A step of registering an authentication device, a step of determining whether a user ID (USER ID, UID) and RPWD are input according to a login request from a user, and optionally a biometric authentication-based login step or a password-based login step depending on whether RPWD is input However, in the biometric authentication-based login step, as the UID is input, biometric authentication is performed using a password (Authenticator Password, APWD) previously stored in the authentication device owned by the user and the password output from the authentication device (Authenticator Password, APWD), including the step of logging in to a specific service based on the restored user password (User Password, UPWD), the password-based login step, as UID and RPWD are input, using RPWD chameleon hash It is possible to perform login to a specific service by restoring the existing UPWD based on the function.

이때, 생체 인증을 수행하는 단계는, FIDO 표준 프로토콜을 기반으로 수행되되, APWD는, FIDO CTAP2 프로토콜의 확장 필드(Extension Field)를 사용하여 인증 장치에 입력되거나, 인증장치로부터 출력될 수 있다. In this case, the step of performing biometric authentication is performed based on the FIDO standard protocol, and APWD may be input to or output from the authentication device using an extension field of the FIDO CTAP2 protocol.

기재된 실시예에 따라, 패스워드 기반의 사용자 인증의 취약점을 개선할 수 있다. According to the described embodiment, it is possible to improve the vulnerability of password-based user authentication.

기재된 실시예에 따라, 패스워드 뿐만 아니라 생체정보로도 인증하기 때문에 보안성 강화시킬 수 있다. According to the described embodiment, since authentication is performed not only with a password but also with biometric information, security can be enhanced.

기재된 실시예에 따라, 계정정보가 인증장치에 저장되기 때문에 인터넷 연결이 필요 없다. According to the described embodiment, no internet connection is required since the account information is stored in the authentication device.

기재된 실시예에 따라, 서비스 사업자에 대한 의존성을 낮출 수 있다. 즉, 종래에는 서비스 사업자를 신뢰하고 사용자 계정 정보를 맡겨야 하므로 서비스 사업자에게 의존적인 데 반해, 기재된 실시예에 따라 FIDO 인증에 사용되는 인증장치에 사용자의 계정정보를 저장하므로 이러한 서비스 사업자의 의존성이 낮아질 수 있다. According to the described embodiment, it is possible to lower the dependency on the service provider. That is, in the prior art, the service provider must trust the service provider and entrust the user account information, so it is dependent on the service provider, but according to the described embodiment, since the user's account information is stored in the authentication device used for FIDO authentication, the dependence of the service provider will be lowered. can

기재된 실시예에 따라, FIDO 표준을 준수하면서 기존 패스워드 인증과 호환될 수 있다. 즉, 인증장치를 통한 사용자 계정정보의 입출력이 가능하기 때문에 FIDO의 단점인 기존 패스워드 인증을 호환할 수 있고, 따라서 기존 시스템에서 FIDO 생체인증 적용 시 비용을 절감할 수 있다.According to the described embodiment, it can be compatible with existing password authentication while complying with the FIDO standard. That is, since input and output of user account information through the authentication device is possible, the existing password authentication, which is a disadvantage of FIDO, can be compatible, and thus the cost can be reduced when applying FIDO biometric authentication in the existing system.

기재된 실시예에 따라, FIDO에서의 인증 장치가 분실 또는 고장이 발생하더라도 패스워드가 복원 및 복구될 수 있다. According to the described embodiment, even if the authentication device in the FIDO is lost or broken, the password can be restored and recovered.

도 1는 FIDO 표준 생체 인증 기반의 사용자 인증 동작 개념을 설명하기 위한 도면이다.
도 2는 FIDO 표준 기반의 사용자 인증 과정을 설명하기 위한 도면이다.
도 3은 실시예에 따른 FIDO 표준 기반의 사용자 인증 동작 개념을 설명하기 위한 도면이다.
도 3은 실시예에 따른 FIDO 표준 기반의 사용자 인증 동작 개념을 설명하기 위한 도면이다.
도 4는 실시예에 따른 FIDO 표준 기반의 사용자 인증 프레임워크의 구조도이다.
도 5는 실시예에 따른 카멜레온 해시 함수를 기반으로 하는 패스워드 생성 개념도이다.
도 6은 실시예에 따른 사용자 인증 방법을 설명하기 위한 순서도이다.
도 7은 실시예에 따른 인증 최초 등록 단계(S100)의 시퀀스 다이어그램이다.
도 8 내지 10은 실시예에 따른 인증장치의 등록 단계(S200)의 시퀀스 다이어그램이다.
도 11 내지 13은 실시예에 따른 FIDO 기반 사용자 인증 단계(S300)의 시퀀스 다이어그램이다.
도 14는 실시예에 따른 패스워드 기반 사용자 인증 단계(S400)의 시퀀스 다이어그램이다.
도 15는 실시예에 따른 사용자 인증 장치 해제 단계(S500)의 시퀀스 다이어그램이다.
도 16은 실시예에 따른 컴퓨터 시스템 구성을 나타낸 도면이다.
1 is a diagram for explaining the concept of user authentication operation based on FIDO standard biometric authentication.
2 is a diagram for explaining a user authentication process based on the FIDO standard.
3 is a diagram for explaining a concept of a user authentication operation based on a FIDO standard according to an embodiment.
3 is a diagram for explaining a concept of a user authentication operation based on a FIDO standard according to an embodiment.
4 is a structural diagram of a FIDO standard-based user authentication framework according to an embodiment.
5 is a conceptual diagram of password generation based on a chameleon hash function according to an embodiment.
6 is a flowchart illustrating a user authentication method according to an embodiment.
7 is a sequence diagram of an authentication initial registration step ( S100 ) according to an embodiment.
8 to 10 are sequence diagrams of the registration step (S200) of the authentication device according to the embodiment.
11 to 13 are sequence diagrams of the FIDO-based user authentication step S300 according to the embodiment.
14 is a sequence diagram of a password-based user authentication step S400 according to an embodiment.
15 is a sequence diagram of a user authentication device release step S500 according to an embodiment.
16 is a diagram showing the configuration of a computer system according to an embodiment.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.Advantages and features of the present invention and methods of achieving them will become apparent with reference to the embodiments described below in detail in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but will be implemented in a variety of different forms, only these embodiments allow the disclosure of the present invention to be complete, and common knowledge in the technical field to which the present invention belongs It is provided to fully inform the possessor of the scope of the invention, and the present invention is only defined by the scope of the claims. Like reference numerals refer to like elements throughout.

비록 "제1" 또는 "제2" 등이 다양한 구성요소를 서술하기 위해서 사용되나, 이러한 구성요소는 상기와 같은 용어에 의해 제한되지 않는다. 상기와 같은 용어는 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용될 수 있다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있다.Although "first" or "second" is used to describe various elements, these elements are not limited by the above terms. Such terms may only be used to distinguish one component from another. Accordingly, the first component mentioned below may be the second component within the spirit of the present invention.

본 명세서에서 사용된 용어는 실시예를 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 또는 "포함하는(comprising)"은 언급된 구성요소 또는 단계가 하나 이상의 다른 구성요소 또는 단계의 존재 또는 추가를 배제하지 않는다는 의미를 내포한다.The terminology used herein is for the purpose of describing the embodiment and is not intended to limit the present invention. In this specification, the singular also includes the plural, unless specifically stated otherwise in the phrase. As used herein, “comprises” or “comprising” implies that the stated component or step does not exclude the presence or addition of one or more other components or steps.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 해석될 수 있다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless otherwise defined, all terms used herein may be interpreted with meanings commonly understood by those of ordinary skill in the art to which the present invention pertains. In addition, terms defined in a commonly used dictionary are not to be interpreted ideally or excessively unless clearly specifically defined.

이하에서는, 도 1 내지 도 16을 참조하여 실시예에 따른 장치 및 방법이 상세히 설명된다.Hereinafter, an apparatus and method according to an embodiment will be described in detail with reference to FIGS. 1 to 16 .

본 발명은 종래의 패스워드 기반 인증의 취약점을 개선하기 위해 FIDO 표준 기반으로 생체정보를 이용해 사용자를 인증하는 방식을 적용한다. 우선, FIDO 표준 기반의 사용자 인증에 대해 살펴보기로 한다. The present invention applies a method of authenticating a user using biometric information based on the FIDO standard in order to improve the weakness of the conventional password-based authentication. First, we will look at user authentication based on the FIDO standard.

도 1은 FIDO 표준 기반의 사용자 인증 과정을 설명하기 위한 도면이다. 1 is a diagram for explaining a user authentication process based on the FIDO standard.

즉, 도 1을 참조하면, 사용자가 어떤 서비스에 접속하여 로그인과 같은 인증을 요청(1)하면, 인증주체인 서비스 제공자가 랜덤한 값인 challenge를 사용자의 인증 장치로 전송한다(2). That is, referring to FIG. 1, when a user accesses a service and requests authentication such as login (1), the service provider, which is the authentication subject, transmits a random value challenge to the user's authentication device (2).

그러면, 인증대상인 사용자는 생체 인증장치를 이용하여, 1차 인증으로 생체 인증을 수행한다(3). 이때, 생체 인증으로, 지문, 홍채 및 안면 인식 등이 포함될 수 있다. Then, the user who is the authentication target performs biometric authentication as the primary authentication using the biometric authentication device (3). In this case, as biometric authentication, fingerprint, iris, and facial recognition may be included.

그러면, 인증장치는 저장되어 있는 사용자의 개인키를 사용 가능한 상태로 만든(4) 후, challenge 값을 전자 서명하여 서비스 제공자에게 반환한다(5).Then, after making the stored user's private key usable (4), the authentication device digitally signs the challenge value and returns it to the service provider (5).

서비스 제공자는 사용자의 공개키를 가지고 있으며, 이를 이용해 전자서명 값을 검증하고(6), 자신이 보냈던 challenge 값을 확인함으로써 2차 인증으로 서명 인증을 수행한다(6). 최종적으로 인증결과가 인증 장치에 전달(7)되어, 사용자에게 표시된다.The service provider has the user's public key, uses it to verify the digital signature value (6), and performs signature authentication with secondary authentication by verifying the challenge value sent by itself (6). Finally, the authentication result is transmitted (7) to the authentication device and displayed to the user.

전술한 바와 같은 FIDO는 다음과 같은 장점이 있다. FIDO as described above has the following advantages.

서버에는 사용자의 공개키만 보관되기 때문에 서버 해킹으로 인한 개인정보 유출 문제에 안전하다.Because only the public key of the user is stored in the server, it is safe from the problem of personal information leakage due to server hacking.

공인인증서는 패스워드로 암호화되어 PC에 저장되는데 반해, FIDO에서는 사용자의 개인키는 인증장치 내부에 암호화되어 생체인증이 성공한 이후에만 사용이 가능하다. While the public certificate is encrypted with a password and stored in the PC, in FIDO, the user's private key is encrypted inside the authentication device and can be used only after successful biometric authentication.

그러나, 이는 생체 인증만 사용하는 방식으로 기존 패스워드 인증 방식과 호환이 불가능하기 때문에 이미 개발된 시스템에 적용하기 위해서는 많은 비용과 시간, 사용자의 협조가 요구된다. However, since this is a method that uses only biometric authentication and is incompatible with the existing password authentication method, a lot of money, time, and user cooperation are required to apply it to an already developed system.

또한, FIDO에서는 별도의 인증장치가 요구되므로, 사용자가 인증장치를 분실하거나 인증장치가 고장난 경우, 사용자의 개인키를 사용할 수 없기 때문에 패스워드의 복원이나 복구가 불가능하다. 이러한 상황에 대비하여 복원/복구를 위해 개인키를 백업해 놓을 수는 있으나, 이로 인해 기존 공인인증서와 동일한 문제가 발생한다. In addition, since a separate authentication device is required in FIDO, if the user loses the authentication device or the authentication device breaks down, the user's private key cannot be used, so password restoration or recovery is impossible. In preparation for such a situation, it is possible to back up the private key for restoration/recovery, but this causes the same problem as the existing public certificate.

따라서, 실시예에서는 FIDO 표준을 준수하되 기존 패스워드 기반 인증 방식과 호환되면서, 인증 장치의 분실 및 고장시에도 복구가 가능한 사용자 인증 기술을 제안한다. Therefore, the embodiment proposes a user authentication technology that complies with the FIDO standard but is compatible with the existing password-based authentication method, and can recover even when the authentication device is lost or broken.

도 2 및 3은 실시예에 따른 FIDO 표준 기반의 사용자 인증 동작 개념을 설명하기 위한 도면이고, 도 4는 실시예에 따른 FIDO 표준 기반의 사용자 인증 프레임워크의 구조도이고, 도 5는 실시예에 따른 카멜레온 해시 함수를 기반으로 하는 패스워드 생성 개념도이다. 그런데, 실시예에는 생체 인증을 위해 FIDO 표준을 기반으로 하나, 본 발명은 이에 한정되는 것은 아니다. 즉, 생체 인증 및 패스워드 기반 인증을 복합적으로 사용할 수 있는 다른 형태의 구현도 본 발명의 범위에 포함됨을 밝혀둔다. 2 and 3 are diagrams for explaining the concept of a FIDO standard-based user authentication operation according to an embodiment, FIG. 4 is a structural diagram of a FIDO standard-based user authentication framework according to the embodiment, and FIG. It is a conceptual diagram of password generation based on chameleon hash function. However, the embodiment is based on the FIDO standard for biometric authentication, but the present invention is not limited thereto. That is, it is pointed out that other types of implementations that can use biometric authentication and password-based authentication in combination are also included in the scope of the present invention.

도 2를 참조하면, 실시예에서는 FIDO 표준 기반의 사용자 인증은 기존 패스워드 기반의 로그인을 유지하되, FIDO 표준 기반으로 생체 인증됨에 따라 인증 장치(10)에 저장된 계정 정보인 ID 및 Password가 로그인을 위해 사용자 단말(20)에 자동 입력되어 인증되도록 한다. 또한, 도 3을 참조하면, 실시예에서는 FIDO 표준 기반의 생체 인증만 수행될 수도 있다. Referring to FIG. 2 , in the embodiment, the FIDO standard-based user authentication maintains the existing password-based login, but as the biometric authentication is performed based on the FIDO standard, the ID and Password, which are account information stored in the authentication device 10, are used for login. It is automatically input into the user terminal 20 to be authenticated. Also, referring to FIG. 3 , in the embodiment, only biometric authentication based on the FIDO standard may be performed.

따라서, 도 4를 참조하면, 사용자 단말(20)은, FIDO 표준 기반의 생체 인증을 수행하고, 그에 따른 사용자 계정을 기존 응용 SW(24)에 전달해주는 인증 모듈(21)을 포함할 수 있다. Accordingly, referring to FIG. 4 , the user terminal 20 may include an authentication module 21 that performs biometric authentication based on the FIDO standard and delivers a user account according to the biometric authentication to the existing application SW 24 .

이때, 인증 모듈(21)은, FIDO API 및 카멜레온 해쉬 함수(Cameleon Hash Function, CHF) API를 포함할 수 있다. In this case, the authentication module 21 may include a FIDO API and a Cameleon Hash Function (CHF) API.

FIDO API는, 인증 장치(10)와 연동하여 FIDO 표준 기반의 생체 인증을 수행하고, 생체 인증 결과에 따른 인증 장치(10)로부터 출력되는 사용자의 계정 정보, 즉 패스워드(Authenticator Password, APWD)를 CHF API에 전달한다. The FIDO API works with the authentication device 10 to perform FIDO standard-based biometric authentication, and uses the user's account information output from the authentication device 10 according to the biometric authentication result, that is, the password (Authenticator Password, APWD) to CHF. pass it to the API.

이때, 인증 장치(10)의 계정 정보의 입출력은 FIDO CTAP2 프로토콜의 확장 필드(Extension Field)를 활용하여 구현이 가능하며, 기존 프로토콜의 변형이 없기 때문에 표준을 준수할 수 있다. 여기서, 확장 필드(Extension Field)는 인증장치 개발사에서 정의 가능하도록 한 예비필드이다. In this case, the input/output of account information of the authentication device 10 can be implemented by utilizing the extension field of the FIDO CTAP2 protocol, and the standard can be complied with because there is no modification of the existing protocol. Here, the extension field is a preliminary field that can be defined by the authentication device developer.

CHF API는 카멜레온 해시 알고리즘을 이용한 패스워드 생성 및 복원을 수행하여, 서버(30)에 저장되는 사용자 패스워드(User Password, UPWD)와 인증장치(20)에 저장되는 패스워드(Authenticator Password, APWD) 및 복원용 패스워드(Rememberable Password, RPWD)를 서로 다르게 사용할 수 있다.CHF API performs password generation and restoration using a chameleon hash algorithm, and a user password (User Password, UPWD) stored in the server 30 and a password (Authenticator Password, APWD) stored in the authentication device 20 and for restoration You can use different passwords (Rememberable Password, RPWD).

여기서, 해시 알고리즘은 입력값이 다르면 항상 출력값이 다른 충돌저항성의 특징을 갖는데, 카멜레온 해시 알고리즘은 충돌이 발생하는 입력값을 의도적으로 만들 수 있는 알고리즘이다.Here, the hash algorithm has the characteristic of collision resistance with always different output values when the input values are different. The chameleon hash algorithm is an algorithm that can intentionally create input values in which collision occurs.

즉, 도 5에 도시된 바와 같이, 카멜레온 해시 알고리즘을 사용하면, 사용자(1)가 기억/입력할 수 있는 RPWD로부터 인증장치(10)에 저장될 APWD 및 서버의 DB(30)에 저장되는 UPWD가 계산될 수 있다. That is, as shown in FIG. 5 , if the chameleon hash algorithm is used, the APWD to be stored in the authentication device 10 from the RPWD that the user 1 can memorize / input and the UPWD to be stored in the DB 30 of the server can be calculated.

여기서, APWD와 UPWD는 해시의 결과 값으로 난수의 특성을 가진다. 따라서, 패스워드 자체의 복잡도가 증가하여 보안성이 향상된다. Here, APWD and UPWD are random numbers as result values of hashes. Accordingly, the complexity of the password itself increases, thereby improving security.

또한, 서버 해킹으로 UPWD가 유출되더라도, 일방향의 특징을 갖기 때문에 RPWD 및 APWD를 유추될 수 없다. In addition, even if UPWD is leaked due to server hacking, RPWD and APWD cannot be inferred because they have a one-way feature.

또한, CHF API는 이러한 카멜레온 해시 기반의 패스워드 생성 및 복원을 수행하여, 인증 장치의 분실 또는 고장 시에 RPWD를 이용해 사용자 계정의 복원 및 복구가 가능하도록 할 수 있다. 따라서, 인증장치를 보유하지 않은 사용자는 RPWD로 인증이 가능하기 때문에 기존 패스워드 인증과 함께 운용함으로써 사업자 입장에서 서비스 운영을 유연하게 할 수 있다.In addition, the CHF API may generate and restore such a chameleon hash-based password to enable restoration and recovery of a user account using RPWD in case of loss or failure of the authentication device. Therefore, since users who do not have an authentication device can be authenticated by RPWD, service operation can be flexibly operated from the operator's point of view by operating with the existing password authentication.

따라서, 실시예에 따라, 도 4에 도시된 (a)에서와 같이, 인증모듈(21)의 FIDO API를 이용한 표준 프로토콜을 기반으로 FIDO 인증이 완료되면 인증장치(10)에 확장필드로 저장되어 있던 APWD가 카멜레온 해시 API로 전달되고, UPWD가 복원되어 인증을 요청한 기존응용 SW(24)에서 로그인에 사용된다.Therefore, according to the embodiment, as shown in (a) shown in FIG. 4, when FIDO authentication is completed based on the standard protocol using the FIDO API of the authentication module 21, it is stored as an extension field in the authentication device 10. The existing APWD is transferred to the chameleon hash API, and the UPWD is restored and used for login in the existing application SW 24 that requested authentication.

또한, 도 4에 도시된 (b)에서와 같이, 기존 패스워드 인증 호환 및 인증장치 분실/고장 시에, 사용자(1)가 직접 RPWD를 입력하면, 이 값이 카멜레온 해시 API를 통해 UPWD가 복원되고, 인증을 요청한 기존 응용 SW(24)에서 로그인에 사용된다.In addition, as in (b) shown in Figure 4, when the existing password authentication compatible and authentication device is lost / broken, if the user 1 directly inputs the RPWD, the UPWD is restored through the chameleon hash API, and , is used for login in the existing application SW 24 that has requested authentication.

도 6은 실시예에 따른 사용자 인증 방법을 설명하기 위한 순서도이다. 6 is a flowchart illustrating a user authentication method according to an embodiment.

도 6을 참조하면, 실시예에 따른 사용자 인증 방법은, 우선 기존에 사용하던 패스워드 인증의 UPWD(User Password)를 RPWD(Rememberable Password)로 변경하는 인증 최초 등록 과정이 수행된다(S100). 이에 대한 상세한 설명은 도 7을 참조하여 후술하기로 한다. Referring to FIG. 6 , in the user authentication method according to the embodiment, first, an authentication initial registration process of changing the UPWD (User Password) of the previously used password authentication to a RPWD (Rememberable Password) is performed (S100). A detailed description thereof will be described later with reference to FIG. 7 .

그런 후, 사용자의 인증장치를 등록(S200)할 수 있으며, 인증장치의 등록 과정은 RPWD로부터 기존 UPWD를 복원하고, 신규 UPWD와 APWD(Authenticator Password)를 생성한 다음 저장/설정하는 것을 제외하면, FIDO2 표준 프로토콜과 동일하게 동작한다. 이에 대한 상세한 설명은 도 8 내지 도 10을 참조하여 후술하기로 한다. After that, the user's authentication device can be registered (S200), and the registration process of the authentication device restores the existing UPWD from the RPWD, creates a new UPWD and APWD (Authenticator Password), and then saves/sets it. It works the same as the FIDO2 standard protocol. A detailed description thereof will be described later with reference to FIGS. 8 to 10 .

전술한 바와 같이 인증장치 등록이 완료된 이후에, 사용자 인증 요청(S250)에 따라 인증 장치가 사용 가능한 환경일 경우(S260), 인증장치를 기반으로 사용자 인증이 수행될 수 있다(S300). 이때, FIDO2 표준 프로토콜을 기반으로 사용자 인증이 수행되고, 인증장치에 저장되어 있던 APWD로부터 복원된 기존 UPWD를 기반으로 특정 서비스에 로그인될 수 있다. 이에 대한 상세한 설명은 도 11 내지 도 13을 참조하여 후술하기로 한다. As described above, after the authentication device registration is completed, when the authentication device is available according to the user authentication request (S250) (S260), user authentication may be performed based on the authentication device (S300). In this case, user authentication is performed based on the FIDO2 standard protocol, and a user can log in to a specific service based on the existing UPWD restored from the APWD stored in the authentication device. A detailed description thereof will be described later with reference to FIGS. 11 to 13 .

한편, 인증장치를 사용할 수 없는 경우(S260), 기존 UPWD 인증과 동일한 사용자 인증 과정이 수행될 수 있다(S400). 이때, 사용자가 직접 RPWD를 입력하고, 이로부터 기존 UPWD를 복원하여 특정 서비스에 로그인될 수 있다(S400). 이에 대한 상세한 설명은 도 14를 참조하여 후술하기로 한다. Meanwhile, when the authentication device cannot be used (S260), the same user authentication process as the existing UPWD authentication may be performed (S400). At this time, the user may directly input the RPWD, restore the existing UPWD therefrom, and log in to a specific service (S400). A detailed description thereof will be described later with reference to FIG. 14 .

한편, 인증장치를 분실하여 인증 장치 해제 요청(S250)된 경우, 사용자가 RPWD로 사용자 인증을 수행하고, 등록된 인증장치를 해제할 수 있다(S500). 이에 대한 상세한 설명은 도 15를 참조하여 후술하기로 한다. On the other hand, when the authentication device release request is requested (S250) due to the loss of the authentication device, the user may perform user authentication with the RPWD and release the registered authentication device (S500). A detailed description thereof will be described later with reference to FIG. 15 .

도 7은 실시예에 따른 인증 최초 등록 단계(S100)의 시퀀스 다이어그램이다. 7 is a sequence diagram of an authentication initial registration step ( S100 ) according to an embodiment.

도 7을 참조하면, 사용자(1)로부터 인증 최초 등록 버튼이 선택됨(S101)에 따라, 사용자 단말(20)의 기존 응용(24)은 SID와 함께 인증 최초 등록 시작을 인증 클라이언트 (23)에 요청한다(S102).Referring to FIG. 7 , as the authentication initial registration button is selected from the user 1 ( S101 ), the existing application 24 of the user terminal 20 requests the authentication client 23 to start authentication initial registration together with the SID. do (S102).

그러면, 인증 클라이언트(23)는 사용자 아이디(User ID, UID), 현재 UPWD 및 등록할 RPWP에 대한 입력창을 표시한다(S103). Then, the authentication client 23 displays an input window for the user ID (User ID, UID), the current UPWD, and the RPWP to be registered (S103).

사용자(1)로부터 UID, 현재 UPWD 및 등록할 RPWP가 입력됨(S104)에 따라, 인증 클라이언트(23)는 대체 패스워드를 생성한다(S105). 즉, 카멜레온 해시 함수를 기반으로 신규 UPWD를 생성함과 아울러, RK 생성하고, RPWD를 암호화한다. As the UID, the current UPWD, and the RPWP to be registered are input from the user 1 (S104), the authentication client 23 generates an alternate password (S105). That is, based on the chameleon hash function, a new UPWD is generated, RK is generated, and the RPWD is encrypted.

그런 후, 인증 클라이언트(23)가 인증 프로바이더 (22)에 사용자 파라미터 저장 요청함(S106)에 따라, 인증 프로바이더(22)는 파라미터를 데이터베이스에 저장(S107)한 후, 성공 또는 실패인지의 결과를 반환한다(S108).Then, as the authentication client 23 requests the authentication provider 22 to store the user parameters (S106), the authentication provider 22 stores the parameters in the database (S107) and then determines whether success or failure. A result is returned (S108).

한편, 인증 클라이언트(23)는 UID, SID, 현재 UPWD 및 신규 UPWD를 기존 응용(24)에 반환한다(S109). Meanwhile, the authentication client 23 returns the UID, SID, current UPWD, and new UPWD to the existing application 24 (S109).

그러면, 기존 응용(24)은 접속 타겟(30)의 응용 서버(31)에 접속하여 UID, 현재 UPWD 및 신규 UPWD를 기반으로 패스워드 변경 요청한다(S110).Then, the existing application 24 accesses the application server 31 of the connection target 30 and requests a password change based on the UID, the current UPWD, and the new UPWD (S110).

그러면, 응용 서버(31)는 UID에 상응하는 현재 UPWD를 신규 UPWD로 변경(S111)하고, 변경된 신규 UPWD를 UID와 매핑하여 DB(31)에 저장한다(S112). Then, the application server 31 changes the current UPWD corresponding to the UID to the new UPWD (S111), maps the changed new UPWD to the UID, and stores it in the DB 31 (S112).

응용 서버(31)로부터 패스워드 변경 결과가 반환(S113)됨에 따라, 기존 응용(24)은 패스워드 변경 결과를 인증 클라이언트(23)에 전달한다(S114). As the password change result is returned from the application server 31 (S113), the existing application 24 transmits the password change result to the authentication client 23 (S114).

그러면, 인증 클라이언트(23)는 패스 워드 변경 결과를 인증 프로바이더(22)에 전달(S115)하여 DB commit이 수행(S116)되도록 한다.Then, the authentication client 23 transmits the password change result to the authentication provider 22 (S115) so that the DB commit is performed (S116).

아울러, 기존 응용(24)은 인증 최초 등록 결과를 사용자가 확인할 수 있도록 표시한다(S117). In addition, the existing application 24 displays the authentication initial registration result so that the user can check (S117).

도 8 내지 10은 실시예에 따른 인증장치의 등록 단계(S200)의 시퀀스 다이어그램이다.8 to 10 are sequence diagrams of the registration step (S200) of the authentication device according to the embodiment.

도 8을 참조하면, 사용자(1)로부터 인증 장치 등록 버튼이 선택됨(S201)에 따라, 기존 응용(24)은 인증 장치 등록 시작을 인증 클라이언트(23)에 요청한다(S202).Referring to FIG. 8 , as the authentication device registration button is selected by the user 1 ( S201 ), the existing application 24 requests the authentication client 23 to start registering the authentication device ( S202 ).

그러면, 인증 클라이언트(23)는 UID 및 RPWP에 대한 입력창을 표시한다(S203). Then, the authentication client 23 displays an input window for UID and RPWP (S203).

사용자(1)로부터 UID 및 RPWP가 입력됨(S204)에 따라, 인증 클라이언트(23)는 인증 프로바이더(22)에 사용자 파라미터 요청(S205)하고, 인증 프로바이더(22)는 파라미터를 데이터베이스에 검출(S206)한 후, 인증 클라이언트(23)에 반환한다(S207).As the UID and RPWP are input from the user 1 (S204), the authentication client 23 requests the user parameters to the authentication provider 22 (S205), and the authentication provider 22 detects the parameters in the database. After (S206), it returns to the authentication client 23 (S207).

인증 클라이언트(23)는 파라미터를 이용하여 카멜레온 해시 함수를 기반으로 기존 UPWD를 복원(S208)하고, 대체 패스워드를 생성한다(S209). 즉, 카멜레온 해시 함수를 기반으로 신규 UPWD 및 APWD를 생성함과 아울러, RK 생성하고, RPWD를 암호화한다. The authentication client 23 restores the existing UPWD based on the chameleon hash function using the parameters (S208), and generates a replacement password (S209). That is, based on the chameleon hash function, new UPWD and APWD are generated, RK is generated, and RPWD is encrypted.

그런 후, 인증 클라이언트(23)는 인증 프로바이더(22)에 사용자 파라미터 갱신을 요청(S210)하고, 인증 프로바이더(22)는 파라미터로 데이터베이스를 갱신(S210)한 후, 성공 또는 실패인지의 결과를 반환한다(S212). Then, the authentication client 23 requests the authentication provider 22 to update the user parameters (S210), and the authentication provider 22 updates the database with the parameters (S210), and the result of success or failure returns (S212).

이어서, 도 9를 참조하면, FIDO2 표준 프로토콜을 기반으로 인증 장치(10) 등록 과정이 수행된다. Next, referring to FIG. 9 , the authentication device 10 registration process is performed based on the FIDO2 standard protocol.

즉, 인증 클라이언트(23)가 FIDO 등록 요청(FIDO REGISTRATION REQUEST)(S213)함에 따라, 인증 프로바이더(22)는 랜덤한 값인 challenge를 인증 클라이언트(23)에 전달하고(S214), 인증 클라이언트(23)는 challenge를 인증 장치(10)에 전달하여 인증(Credential) 요청한다(S215). 이때, 실시예에 따라, 인증(Credential) 요청에는 APWD가 FIDO CTAP2 프로토콜의 확장 필드(Extension Field)를 활용하여 전달될 수 있다. That is, as the authentication client 23 requests a FIDO REGISTRATION REQUEST (S213), the authentication provider 22 transmits a random value challenge to the authentication client 23 (S214), and the authentication client 23 ) transmits the challenge to the authentication device 10 to request authentication (Credential) (S215). In this case, according to an embodiment, the APWD may be transmitted to the credential request by utilizing an extension field of the FIDO CTAP2 protocol.

그러면, 인증장치(10)는 인증대상인 사용자(1)에게 생체인증 요청하는 메시지를 표시(S216)하고, 사용자(1)는 인증장치(10)를 이용하여 생체 인증을 수행한다(S217). 이때, 생체 인증으로, 지문, 홍채 및 안면 인식 등이 포함될 수 있다. Then, the authentication device 10 displays a biometric authentication request message to the authentication target user 1 ( S216 ), and the user 1 performs biometric authentication using the authentication device 10 ( S217 ). In this case, as biometric authentication, fingerprint, iris, and facial recognition may be included.

그런 후, 인증장치(10)는 FIDO 파라미터 및 APWD를 저장(S218)하고, challenge 값을 전자 서명하여 인증 클라이언트(23)에게 인증(Credential) 응답한다(S219).Then, the authentication device 10 stores the FIDO parameter and the APWD (S218), digitally signs the challenge value, and responds with a credential to the authentication client 23 (S219).

인증 클라이언트(23)는 인증 프로바이더(22)에게 FIDO 등록 응답(S220)하고, 인증 프로바이더(22)는 사용자의 공개키를 가지고 있으므로, 이를 이용해 전자서명 값을 검증(S221)하고, FIDO 등록 결과를 반환한다(S222).The authentication client 23 responds to the FIDO registration to the authentication provider 22 (S220), and the authentication provider 22 has the user's public key, so it verifies the digital signature value (S221) and registers the FIDO A result is returned (S222).

이어서 도 10을 참조하면, 인증 클라이언트(23)는 인증 프로바이더(22)에게 FIDO 파라미터 추가 요청(S223)하고, 인증 프로바이더(22)는 추가 요청된 파라미터로 DB를 업데이트한다(S224). Next, referring to FIG. 10 , the authentication client 23 requests the authentication provider 22 to add the FIDO parameter ( S223 ), and the authentication provider 22 updates the DB with the additional requested parameter ( S224 ).

한편, 인증 클라이언트(23)는 기존 응용(24)에 UID, SID, 기존 UPWD 및 신규 UPWD를 반환한다(S225). Meanwhile, the authentication client 23 returns the UID, SID, existing UPWD, and new UPWD to the existing application 24 (S225).

그러면, 기존 응용(24)은 접속 타겟(30)의 응용 서버(31)에 접속하여 UID, 현재 UPWD 및 신규 UPWD를 기반으로 패스워드 변경 요청한다(S226).Then, the existing application 24 accesses the application server 31 of the connection target 30 and requests a password change based on the UID, the current UPWD, and the new UPWD (S226).

그러면, 응용 서버(31)는 UID에 상응하는 현재 UPWD를 신규 UPWD로 변경(S227)하고, 변경된 신규 UPWD를 UID와 매핑하여 DB(31)에 저장한다(S228). Then, the application server 31 changes the current UPWD corresponding to the UID to the new UPWD (S227), maps the changed new UPWD to the UID, and stores it in the DB 31 (S228).

응용 서버(31)로부터 패스워드 변경 결과가 반환(S229)됨에 따라, 기존 응용(24)은 패스워드 변경 결과를 인증 클라이언트(23)에 전달한다(S230). As the password change result is returned from the application server 31 (S229), the existing application 24 transmits the password change result to the authentication client 23 (S230).

그러면, 인증 클라이언트(23)는 패스 워드 변경 결과를 인증 프로바이더(22)에 전달(S231)하여 DB commit이 수행(S232)되도록 한다.Then, the authentication client 23 transfers the password change result to the authentication provider 22 (S231) so that the DB commit is performed (S232).

아울러, 기존 응용(24)은 인증 최초 등록 결과를 사용자가 확인할 수 있도록 표시한다(S233). In addition, the existing application 24 displays the authentication initial registration result so that the user can check (S233).

도 11 내지 13은 실시예에 따른 FIDO 기반 사용자 인증 단계(S300)의 시퀀스 다이어그램이다.11 to 13 are sequence diagrams of the FIDO-based user authentication step S300 according to the embodiment.

도 11을 참조하면, 사용자(1)로부터 로그인 화면 실행 요청(S301)에 따라, 기존 응용(24)은 UID 및 RPWP에 대한 입력창을 표시한다(S302). Referring to FIG. 11 , in response to a login screen execution request from the user 1 ( S301 ), the existing application 24 displays an input window for UID and RPWP ( S302 ).

그러면, 사용자(1)는 UID만 입력한 후, 로그인 버튼을 선택함(S204)에 따라, 기존 응용(24)는 인증 클라이언트(23)에 UID 및 SID를 전송하여 로그인 시작을 요청한다(S304). Then, after the user 1 inputs only the UID and selects the login button (S204), the existing application 24 transmits the UID and SID to the authentication client 23 to request a login start (S304) .

그러면, 인증 클라이언트(23)는 인증 프로바이더(22)에 사용자 파라미터를 요청(S305)하고, 인증 프로바이더(24)는 파라미터를 데이터베이스에 검출(S306)한 후, 인증 클라이언트(23)에 반환한다(S307). Then, the authentication client 23 requests the user parameter from the authentication provider 22 (S305), and the authentication provider 24 detects the parameter in the database (S306) and returns it to the authentication client 23 (S307).

이어서, 도 12를 참조하면, FIDO2 표준 프로토콜을 기반으로 인증 장치(10)에 의한 생체 인증 과정이 수행된다. Next, referring to FIG. 12 , a biometric authentication process by the authentication device 10 is performed based on the FIDO2 standard protocol.

즉, 인증 클라이언트(23)가 FIDO 인증 요청(FIDO AUTHENTICATION REQUEST)(S308)함에 따라, 인증 프로바이더(22)는 랜덤한 값인 challenge를 인증 클라이언트(23)에 전달하고(S309), 인증 클라이언트(23)는 challenge를 인증 장치(10)에 전달하여 인증(Credential) 요청한다(S310). That is, as the authentication client 23 requests a FIDO AUTHENTICATION REQUEST (S308), the authentication provider 22 transmits a random value challenge to the authentication client 23 (S309), and the authentication client 23 ) transmits the challenge to the authentication device 10 to request authentication (Credential) (S310).

그러면, 인증장치(10)는 인증 대상인 사용자(1)에게 생체인증 요청하는 메시지를 표시(S311)하고, 인증대상인 사용자(1)는 인증장치(10)를 이용하여 생체 인증을 수행한다(S312). 이때, 생체 인증으로, 지문, 홍채 및 안면 인식 등이 포함될 수 있다. Then, the authentication device 10 displays a biometric authentication request message to the authentication target user 1 (S311), and the authentication target user 1 performs biometric authentication using the authentication device 10 (S312) . In this case, as biometric authentication, fingerprint, iris, and facial recognition may be included.

그러면, 인증장치(10)는 FIDO 파라미터 및 APWD를 검색(S313)하고, challenge 값을 전자 서명하여 인증 클라이언트(23)에게 인증(Credential) 응답한다(S219). 이때, 실시예에 따라, 인증(Credential) 응답에는 APWD가 FIDO CTAP2 프로토콜의 확장 필드(Extension Field)를 활용하여 응답될 수 있다. Then, the authentication device 10 searches for the FIDO parameter and the APWD (S313), digitally signs the challenge value, and responds with a credential to the authentication client 23 (S219). In this case, depending on the embodiment, the APWD may respond to the Credential response by utilizing the Extension Field of the FIDO CTAP2 protocol.

인증 클라이언트(23)는 인증 프로바이더(22)에게 FIDO 인증 응답(FIDO REQUEST RESPONSE)(S315)하고, 인증 프로바이더(22)는 사용자의 공개키를 가지고 있으므로, 이를 이용해 전자서명 값을 검증(S316)하고, FIDO 인증 결과(FIDO REQUEST RESULT)를 반환한다(S317).The authentication client 23 makes a FIDO authentication response (FIDO REQUEST RESPONSE) to the authentication provider 22 (S315), and since the authentication provider 22 has the user's public key, it verifies the digital signature value using it (S316) ) and returns a FIDO authentication result (FIDO REQUEST RESULT) (S317).

이어서 도 13을 참조하면, 인증 클라이언트(23)는 APWD를 이용하여 카멜레온 해시 함수를 기반으로 기존 UPWD를 복원하고(S318), 기존 응용(24)에 UID, SID 및 UPWD를 포함하는 결과를 반환한다(S319). 13, the authentication client 23 restores the existing UPWD based on the chameleon hash function using the APWD (S318), and returns a result including the UID, SID and UPWD to the existing application 24. (S319).

그러면, 기존 응용(24)은 접속 타겟(30)의 응용 서버(31)에 접속하여 UID 및 복원된 UPWD를 기반으로 로그인한다(S320).Then, the existing application 24 accesses the application server 31 of the connection target 30 and logs in based on the UID and the restored UPWD (S320).

그러면, 응용 서버(31)는 UID 및 UPWD로 로그인 실행(S321)시키고, UPWD를 UID와 매핑하여 DB(31)에 저장한다(S322). Then, the application server 31 executes a login using the UID and UPWD (S321), maps the UPWD with the UID, and stores it in the DB 31 (S322).

응용 서버(31)로부터 로그인 결과가 반환(S323)됨에 따라, 기존 응용(24)은 로그인 결과를 사용자가 확인할 수 있도록 표시한다(S324). As the login result is returned from the application server 31 (S323), the existing application 24 displays the login result so that the user can check it (S324).

전술한 바와 같이 사용자가 패스워드 입력없이 UID만 입력하더라도, 기존 패스워드 기반 서비스에 동일하게 로그인할 수 있다. 아울러, 생체 인증을 수행하므로, 보안성은 더 강화될 수 있다. As described above, even if the user inputs only the UID without entering the password, the user can log in to the existing password-based service in the same way. In addition, since biometric authentication is performed, security can be further strengthened.

도 14는 실시예에 따른 패스워드 기반 사용자 인증 단계(S400)의 시퀀스 다이어그램이다.14 is a sequence diagram of a password-based user authentication step S400 according to an embodiment.

도 14를 참조하면, 사용자(1)로부터 로그인 화면 실행 요청(S401)에 따라, 기존 응용(24)은 UID 및 RPWP에 대한 입력창을 표시한다(S402). Referring to FIG. 14 , in response to a login screen execution request from the user 1 ( S401 ), the existing application 24 displays an input window for UID and RPWP ( S402 ).

그러면, 사용자(1)가 UID 및 RPWD 입력한 후, 로그인 버튼을 선택함(S403)에 따라, 기존 응용(24)은 인증 클라이언트(23)에 로그인 시작을 요청한다(S404). Then, after the user 1 inputs the UID and RPWD and selects the login button (S403), the existing application 24 requests the authentication client 23 to start logging in (S404).

그러면, 인증 클라이언트(23)는 인증 프로바이더(22)에 사용자 파라미터 요청(S405)하고, 인증 프로바이더(22)는 파라미터를 데이터베이스에 검출(S406)한 후, 인증 클라이언트(23)에 반환한다(S407). Then, the authentication client 23 requests the user parameter to the authentication provider 22 (S405), and the authentication provider 22 detects the parameter in the database (S406) and returns it to the authentication client 23 (S406) ( S407).

인증 클라이언트(23)는 RPWD를 이용하여 카멜레온 해시 함수를 기반으로 기존 UPWD를 복원하고(S408), 기존 응용(24)에 UID, SID 및 UPWD를 포함하는 결과를 반환한다(S409). The authentication client 23 restores the existing UPWD based on the chameleon hash function using the RPWD (S408), and returns a result including the UID, SID, and UPWD to the existing application 24 (S409).

그러면, 기존 응용(24)은 접속 타겟(30)의 응용 서버(31)에 접속하여 UID 및 복원된 UPWD를 기반으로 로그인한다(S410).Then, the existing application 24 accesses the application server 31 of the connection target 30 and logs in based on the UID and the restored UPWD (S410).

그러면, 응용 서버(31)는 UID 및 UPWD로 로그인 실행(S411)시키고, UPWD를 UID와 매핑하여 DB(31)에 저장한다(S412). Then, the application server 31 executes a login using the UID and UPWD (S411), maps the UPWD with the UID, and stores it in the DB 31 (S412).

응용 서버(31)로부터 로그인 결과가 반환(S413)됨에 따라, 기존 응용(24)은 로그인 결과를 사용자가 확인할 수 있도록 표시한다(S414). As the login result is returned from the application server 31 (S413), the existing application 24 displays the login result so that the user can check it (S414).

전술한 바와 같이 사용자가 RPWP 및 UID를 입력하면, 기존 패스워드 로그인이 수행되되, RPWP로부터 해시 함수 기반으로 UPWP가 복원되므로, 보안성이 강화될 수 있다. As described above, when the user inputs the RPWP and UID, the existing password login is performed, but since the UPWP is restored from the RPWP based on a hash function, security can be enhanced.

도 15는 실시예에 따른 사용자 인증 장치 해제 단계(S500)의 시퀀스 다이어그램이다.15 is a sequence diagram of a user authentication device release step S500 according to an embodiment.

도 15를 참조하면, 사용자(1)로부터 로그인 화면 실행 요청(S501)에 따라, 기존 응용(24)은 UID 및 RPWP에 대한 입력창을 표시한다(S502). Referring to FIG. 15 , in response to a login screen execution request from the user 1 ( S501 ), the existing application 24 displays an input window for UID and RPWP ( S502 ).

그러면, 사용자(1)가 UID 및 RPWD 입력한 후, 인증장치 분실 버튼을 선택함(S503)에 따라, 기존 응용(24)은 인증 클라이언트(23)에 로그인 시작을 요청한다(S504). Then, after the user 1 inputs the UID and RPWD, and selects the button for losing the authentication device (S503), the existing application 24 requests the authentication client 23 to start logging in (S504).

그러면, 인증 클라이언트(23)는 인증 프로바이더(22)에 사용자 파라미터 요청(S505)하고, 인증 프로바이더(22)는 파라미터를 데이터베이스에 검출(S506)한 후, 인증 클라이언트(23)에 반환한다(S507). Then, the authentication client 23 requests the user parameter to the authentication provider 22 (S505), and the authentication provider 22 detects the parameter in the database (S506) and returns it to the authentication client 23 (S506) ( S507).

인증 클라이언트(23)는 RPWD를 이용하여 카멜레온 해시 함수를 기반으로 기존 UPWD를 복원하고(S508), 기존 응용(24)에 UID, SID 및 UPWD를 포함하는 결과를 반환한다(S509). The authentication client 23 restores the existing UPWD based on the chameleon hash function using the RPWD (S508), and returns a result including the UID, SID, and UPWD to the existing application 24 (S509).

그러면, 기존 응용(24)은 접속 타겟(30)의 응용 서버(31)에 접속하여 UID 및 복원된 UPWD를 기반으로 로그인한다(S510).Then, the existing application 24 accesses the application server 31 of the access target 30 and logs in based on the UID and the restored UPWD (S510).

그러면, 응용 서버(31)는 UID 및 UPWD로 로그인 실행(S511)시키고, UPWD를 UID와 매핑하여 DB(31)에 저장한다(S512). Then, the application server 31 executes a login using the UID and UPWD (S511), maps the UPWD with the UID, and stores it in the DB 31 (S512).

응용 서버(31)로부터 로그인 결과가 반환(S513)됨에 따라, 로그인 결과는 기존 응용(24)을 거쳐 인증 클라이언트(23)에 반환된다(S514).As the login result is returned from the application server 31 (S513), the login result is returned to the authentication client 23 via the existing application 24 (S514).

그러면, 인증 클라이언트(23)는 인증 프로바이더(22)에 FIDO 파라미터 삭제를 요청(S515)하고, 인증 프로바이더(22)는 DB에서 파라미터를 삭제(S516)하고 결과를 반환한다(S517). Then, the authentication client 23 requests the authentication provider 22 to delete the FIDO parameter (S515), and the authentication provider 22 deletes the parameter from the DB (S516) and returns the result (S517).

파라미터를 삭제 결과는 기존 응용에 반환되고(S518), 기존 응용(24)은 인증 장치 분실 처리 결과를 사용자가 확인할 수 있도록 표시한다(S519). The result of deleting the parameter is returned to the existing application (S518), and the existing application 24 displays the authentication device loss processing result so that the user can check it (S519).

도 16은 실시예에 따른 컴퓨터 시스템 구성을 나타낸 도면이다.16 is a diagram showing the configuration of a computer system according to an embodiment.

실시예에 따른 사용자 단말(20)은 컴퓨터로 읽을 수 있는 기록매체와 같은 컴퓨터 시스템(1000)에서 구현될 수 있다.The user terminal 20 according to the embodiment may be implemented in the computer system 1000 such as a computer-readable recording medium.

컴퓨터 시스템(1000)은 버스(1020)를 통하여 서로 통신하는 하나 이상의 프로세서(1010), 메모리(1030), 사용자 인터페이스 입력 장치(1040), 사용자 인터페이스 출력 장치(1050) 및 스토리지(1060)를 포함할 수 있다. 또한, 컴퓨터 시스템(1000)은 네트워크(1080)에 연결되는 네트워크 인터페이스(1070)를 더 포함할 수 있다. 프로세서(1010)는 중앙 처리 장치 또는 메모리(1030)나 스토리지(1060)에 저장된 프로그램 또는 프로세싱 인스트럭션들을 실행하는 반도체 장치일 수 있다. 메모리(1030) 및 스토리지(1060)는 휘발성 매체, 비휘발성 매체, 분리형 매체, 비분리형 매체, 통신 매체, 또는 정보 전달 매체 중에서 적어도 하나 이상을 포함하는 저장 매체일 수 있다. 예를 들어, 메모리(1030)는 ROM(1031)이나 RAM(1032)을 포함할 수 있다.Computer system 1000 may include one or more processors 1010 , memory 1030 , user interface input device 1040 , user interface output device 1050 , and storage 1060 that communicate with each other via bus 1020 . can In addition, the computer system 1000 may further include a network interface 1070 coupled to the network 1080 . The processor 1010 may be a central processing unit or a semiconductor device that executes programs or processing instructions stored in the memory 1030 or storage 1060 . The memory 1030 and the storage 1060 may be a storage medium including at least one of a volatile medium, a non-volatile medium, a removable medium, a non-removable medium, a communication medium, and an information delivery medium. For example, the memory 1030 may include a ROM 1031 or a RAM 1032 .

이상에서 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.Although embodiments of the present invention have been described above with reference to the accompanying drawings, those of ordinary skill in the art to which the present invention pertains can practice the present invention in other specific forms without changing its technical spirit or essential features. You will understand that there is Therefore, it should be understood that the embodiments described above are illustrative in all respects and not restrictive.

10 : 인증 장치 20 : 사용자 단말
21 : 인증 모듈 24 : 기존 응용 SW
30 : 서버 DB
10: authentication device 20: user terminal
21: authentication module 24: existing application SW
30 : Server DB

Claims (20)

사용자로부터 로그인 요청됨에 따라, 사용자 아이디(USER ID, UID) 및 패스워드(Rememberable Password, RPWD) 입력 여부를 판단하는 단계;
사용자 아이디(USER ID, UID)만 입력된 경우, 해당 사용자가 소유한 인증장치에 미리 저장된 패스워드(Authenticator Password, APWD)를 사용하여 생체 인증을 수행하는 단계; 및
인증장치로부터 출력된 패스워드(Authenticator Password, APWD)로부터 복원된 사용자 패스워드(User Password, UPWD)를 기반으로 특정 서비스에 로그인하는 단계를 포함하는, 사용자 인증 방법.
determining whether to input a user ID (USER ID, UID) and a password (Rememberable Password, RPWD) in response to a login request from the user;
performing biometric authentication using a password (Authenticator Password, APWD) previously stored in an authentication device owned by the user when only a user ID (USER ID, UID) is input; and
A user authentication method comprising logging in to a specific service based on a user password (UPWD) restored from a password (Authenticator Password, APWD) output from an authentication device.
제1 항에 있어서, 생체 인증을 수행하는 단계는,
FIDO 표준 프로토콜을 기반으로 수행되되,
APWD는,
FIDO CTAP2 프로토콜의 확장 필드(Extension Field)를 사용하여 인증 장치에 입력되거나, 인증장치로부터 출력되는, 사용자 인증 방법.
The method of claim 1, wherein performing biometric authentication comprises:
It is performed based on the FIDO standard protocol,
APWD,
A user authentication method that is input to or output from an authentication device using an extension field of the FIDO CTAP2 protocol.
제1 항에 있어서,
상기 단계들을 수행하기 이전에, 현재 UPWD(User Password)를 RPWD(Rememberable Password)로 변경하여 인증 등록하는 단계; 및
RPWD로부터 기존 UPWD를 복원하고, 신규 UPWD와 APWD(Authenticator Password)를 생성하여 사용자의 인증장치를 등록하는 단계를 더 포함하는, 사용자 인증 방법.
The method of claim 1,
Before performing the above steps, changing the current UPWD (User Password) to RPWD (Rememberable Password) and registering authentication; and
Restoring the existing UPWD from the RPWD, generating a new UPWD and APWD (Authenticator Password) further comprising the step of registering the user's authentication device, user authentication method.
제3 항에 있어서, 인증 등록하는 단계는,
사용자로부터 인증 최초 등록 요청됨에 따라, 사용자에게 UID, 현재 UPWD 및 등록할 RPWP를 입력 요청하는 단계;
사용자로부터 UID, 현재 UPWD 및 등록할 RPWP가 입력됨에 따라, 카멜레온 해시 함수를 기반으로 신규 UPWD 및 사용자 파라미터를 생성 및 저장하는 단계; 및
접속 타겟의 응용 서버에 접속하여 UID, 현재 UPWD 및 신규 UPWD를 기반으로 패스워드 변경 요청하는 단계를 포함하는, 사용자 인증 방법.
The method of claim 3, wherein the step of registering for authentication comprises:
requesting the user to input a UID, a current UPWD, and an RPWP to be registered in response to an initial registration request from the user;
As UID, current UPWD and RPWP to be registered are input from the user, generating and storing a new UPWD and user parameters based on the chameleon hash function; and
A user authentication method comprising the step of accessing an application server of a connection target and requesting a password change based on the UID, the current UPWD, and the new UPWD.
제4 항에 있어서, 인증장치를 등록하는 단계는,
사용자로부터 인증 장치 등록 요청됨에 따라, 사용자에게 UID 및 RPWP를 입력 요청하는 단계;
사용자로부터 UID 및 RPWP가 입력됨에 따라, 기존 UPWP를 복원하고 미리 저장된 해당 사용자의 파라미터를 이용하여 카멜레온 해시 함수를 기반으로 신규 UPWD, APWD 및 사용자 파라미터를 생성 및 갱신하는 단계;
FIDO 표준을 기반 인증을 통해 사용자의 인증장치에 APWD를 저장하는 단계; 및
접속 타겟의 응용 서버에 접속하여 UID, 기존 UPWD 및 신규 UPWD를 기반으로 패스워드 변경 요청하는 단계를 포함하는, 사용자 인증 방법.
The method of claim 4, wherein the step of registering the authentication device comprises:
requesting the user to input a UID and RPWP in response to a request for authentication device registration from the user;
As UID and RPWP are input from the user, restoring the existing UPWP and generating and updating new UPWD, APWD and user parameters based on the chameleon hash function using the pre-stored parameters of the user;
Storing the APWD in the user's authentication device through authentication based on the FIDO standard; and
A user authentication method comprising the step of accessing an application server of a connection target and requesting a password change based on the UID, the existing UPWD, and the new UPWD.
제2 항에 있어서, 생체 인증을 수행하는 단계는,
인증 프로바이더로부터 제공된 랜덤한 값인 challenge를 인증 장치에 전달하여 인증(Credential) 요청하는 단계;
인증 대상인 사용자의 생체 인증을 완료한 인증 장치로부터 challenge 전자서명 값 및 APWD를 포함하는 인증(Credential) 응답을 인증 프로바이더에게 전달하는 단계; 및
전자서명 값을 검증한 결과를 수신하는 단계를 포함하는, 사용자 인증 방법.
The method of claim 2, wherein performing biometric authentication comprises:
transmitting a challenge, which is a random value provided from an authentication provider, to an authentication device to request authentication;
transmitting a credential response including a challenge digital signature value and APWD from an authentication device that has completed biometric authentication of a user who is an authentication target to an authentication provider; and
A user authentication method comprising the step of receiving a result of verifying the digital signature value.
제1 항에 있어서,
사용자(USER ID, UID) 및 패스워드(Rememberable Password, RPWD) 입력 여부를 판단한 결과, UID 및 RPWD가 입력됨에 따라,
상기 생체 인증을 수행하는 단계 및 로그인하는 단계 대신에,
RPWD를 이용하여 카멜레온 해시 함수를 기반으로 기존 UPWD를 복원하여 특정 서비스에 로그인을 수행하는 단계를 수행하는, 사용자 인증 방법.
The method of claim 1,
As a result of determining whether a user (USER ID, UID) and password (Rememberable Password, RPWD) are input, as UID and RPWD are input,
Instead of performing the biometric authentication and logging in,
A user authentication method that uses RPWD to restore an existing UPWD based on a chameleon hash function to perform a log-in to a specific service.
제1 항에 있어서,
인증 장치 해제 요청된 경우, 사용자가 RPWD로 사용자 인증을 수행하고, 등록된 인증장치를 해제하는 단계를 더 포함하는, 사용자 인증 방법.
The method of claim 1,
When the authentication device release is requested, the user performs user authentication by RPWD, and further comprising the step of releasing the registered authentication device, the user authentication method.
제8 항에 있어서, 해제하는 단계는,
사용자가 UID 및 RPWD 입력한 후, 인증장치 분실 버튼을 선택함에 따라, RPWD를 이용하여 카멜레온 해시 함수를 기반으로 기존 UPWD를 복원하는 단계;
접속 타겟의 응용 서버에 접속하여 UID 및 복원된 UPWD를 기반으로 로그인하는 단계; 및
인증 프로바이더에 FIDO 파라미터 삭제를 요청하는 단계를 포함하는, 사용자 인증 방법.
The method of claim 8, wherein the releasing comprises:
After the user enters the UID and RPWD and selects the authentication device lost button, restoring the existing UPWD based on the chameleon hash function using the RPWD;
accessing the application server of the access target and logging in based on the UID and the restored UPWD; and
A user authentication method comprising the step of requesting an authentication provider to delete the FIDO parameter.
적어도 하나의 프로그램이 기록된 메모리; 및
프로그램을 실행하는 프로세서를 포함하며,
프로그램은,
사용자로부터 로그인 요청됨에 따라, 사용자 아이디(USER ID, UID) 및 패스워드(Rememberable Password, RPWD) 입력 여부를 판단하는 단계;
사용자 아이디(USER ID, UID)만 입력된 경우, 해당 사용자가 소유한 인증장치에 미리 저장된 패스워드(Authenticator Password, APWD)를 사용하여 생체 인증을 수행하는 단계; 및
인증장치로부터 출력된 패스워드(Authenticator Password, APWD)로부터 복원된 사용자 패스워드(User Password, UPWD)를 기반으로 특정 서비스에 로그인하는 단계를 수행하는, 사용자 인증 장치.
a memory in which at least one program is recorded; and
a processor for executing a program;
program,
determining whether to input a user ID (USER ID, UID) and a password (Rememberable Password, RPWD) in response to a login request from the user;
performing biometric authentication using a password (Authenticator Password, APWD) previously stored in an authentication device owned by the user when only a user ID (USER ID, UID) is input; and
A user authentication device that performs the step of logging in to a specific service based on a user password (UPWD) restored from a password (Authenticator Password, APWD) output from the authentication device.
제10 항에 있어서, 생체 인증을 수행하는 단계는,
FIDO 표준 프로토콜을 기반으로 수행되되,
APWD는,
FIDO CTAP2 프로토콜의 확장 필드(Extension Field)를 사용하여 인증 장치에 입력되거나, 인증장치로부터 출력되는, 사용자 인증 장치.
The method of claim 10, wherein performing biometric authentication comprises:
It is performed based on the FIDO standard protocol,
APWD,
A user authentication device that is input to or output from an authentication device using an extension field of the FIDO CTAP2 protocol.
제10 항에 있어서, 프로그램은,
상기 단계들을 수행하기 이전에, 현재 UPWD(User Password)를 RPWD(Rememberable Password)로 변경하여 인증 등록하는 단계; 및
RPWD로부터 기존 UPWD를 복원하고, 신규 UPWD와 APWD(Authenticator Password)를 생성하여 사용자의 인증장치를 등록하는 단계를 더 수행하는, 사용자 인증 장치.
11. The method of claim 10, wherein the program,
Before performing the above steps, changing the current UPWD (User Password) to RPWD (Rememberable Password) and registering authentication; and
Restoring the existing UPWD from the RPWD, generating a new UPWD and APWD (Authenticator Password) to further perform the steps of registering the user's authentication device, the user authentication device.
제12 항에 있어서, 인증 등록하는 단계는,
사용자로부터 최초 인증 등록 요청됨에 따라, 사용자에게 UID, 현재 UPWD 및 등록할 RPWP를 입력 요청하는 단계;
사용자로부터 UID, 현재 UPWD 및 등록할 RPWP가 입력됨에 따라, 카멜레온 해시 함수를 기반으로 신규 UPWD 및 사용자 파라미터를 생성 및 저장하는 단계; 및
접속 타겟의 응용 서버에 접속하여 UID, 현재 UPWD 및 신규 UPWD를 기반으로 패스워드 변경 요청하는 단계를 포함하는, 사용자 인증 장치.
The method of claim 12, wherein the step of registering for authentication comprises:
requesting the user to input a UID, a current UPWD, and an RPWP to be registered in response to the initial authentication registration request from the user;
As UID, current UPWD and RPWP to be registered are input from the user, generating and storing a new UPWD and user parameters based on the chameleon hash function; and
Accessing an application server of a connection target and requesting a password change based on the UID, the current UPWD and the new UPWD, the user authentication device.
제13 항에 있어서, 인증장치를 등록하는 단계는,
사용자로부터 인증 장치 등록 요청됨에 따라, 사용자에게 UID 및 RPWP를 입력 요청하는 단계;
사용자로부터 UID 및 RPWP가 입력됨에 따라, 기존 UPWP를 복원하고 미리 저장된 해당 사용자의 파라미터를 이용하여 카멜레온 해시 함수를 기반으로 신규 UPWD, APWD 및 사용자 파라미터를 생성 및 갱신하는 단계;
FIDO 표준을 기반 인증을 통해 사용자의 인증장치에 APWD를 저장하는 단계; 및
접속 타겟의 응용 서버에 접속하여 UID, 기존 UPWD 및 신규 UPWD를 기반으로 패스워드 변경 요청하는 단계를 포함하는, 사용자 인증 장치.
14. The method of claim 13, wherein the step of registering the authentication device comprises:
requesting the user to input a UID and RPWP in response to a request for authentication device registration from the user;
As UID and RPWP are input from the user, restoring the existing UPWP and generating and updating new UPWD, APWD and user parameters based on the chameleon hash function using the pre-stored parameters of the user;
Storing the APWD in the user's authentication device through authentication based on the FIDO standard; and
A user authentication device comprising the step of accessing an application server of a connection target and requesting a password change based on the UID, the existing UPWD, and the new UPWD.
제11 항에 있어서, 생체 인증을 수행하는 단계는,
인증 프로바이더로부터 제공된 랜덤한 값인 challenge를 인증 장치에 전달하여 인증(Credential) 요청하는 단계;
인증 대상인 사용자의 생체 인증을 완료한 인증 장치로부터 challenge 전자서명 값 및 APWD를 포함하는 인증(Credential) 응답을 인증 프로바이더에게 전달하는 단계; 및
전자서명 값을 검증한 결과를 수신하는 단계를 포함하는, 사용자 인증 장치.
The method of claim 11, wherein performing biometric authentication comprises:
transmitting a challenge, which is a random value provided from an authentication provider, to an authentication device to request authentication;
transmitting a credential response including a challenge digital signature value and APWD from an authentication device that has completed biometric authentication of a user who is an authentication target to an authentication provider; and
A user authentication device comprising the step of receiving a result of verifying the digital signature value.
제10 항에 있어서, 프로그램은,
사용자(USER ID, UID) 및 패스워드(Rememberable Password, RPWD) 입력 여부를 판단한 결과, UID 및 RPWD가 입력됨에 따라,
상기 생체 인증을 수행하는 단계 및 로그인하는 단계 대신에,
RPWD를 이용하여 카멜레온 해시 함수를 기반으로 기존 UPWD를 복원하여 특정 서비스에 로그인을 수행하는 단계를 더 수행하는, 사용자 인증 장치.
11. The method of claim 10, wherein the program,
As a result of determining whether a user (USER ID, UID) and password (Rememberable Password, RPWD) are input, as UID and RPWD are input,
Instead of performing the biometric authentication and logging in,
A user authentication device that further performs the step of logging in to a specific service by restoring the existing UPWD based on the chameleon hash function using the RPWD.
제10 항에 있어서, 프로그램은,
인증 장치 해제 요청된 경우, 사용자가 RPWD로 사용자 인증을 수행하고, 등록된 인증장치를 해제하는 단계를 더 수행하는, 사용자 인증 장치.
11. The method of claim 10, wherein the program,
When the authentication device release is requested, the user performs user authentication with RPWD, and further performs the steps of releasing the registered authentication device.
제17 항에 있어서, 해제하는 단계는,
사용자가 UID 및 RPWD 입력한 후, 인증장치 분실 버튼을 선택함에 따라, RPWD를 이용하여 카멜레온 해시 함수를 기반으로 기존 UPWD를 복원하는 단계;
접속 타겟의 응용 서버에 접속하여 UID 및 복원된 UPWD를 기반으로 로그인하는 단계; 및
인증 프로바이더에 FIDO 파라미터 삭제를 요청하는 단계를 포함하는, 사용자 인증 장치.
18. The method of claim 17, wherein the releasing comprises:
After the user enters the UID and RPWD and selects the authentication device lost button, restoring the existing UPWD based on the chameleon hash function using the RPWD;
accessing the application server of the access target and logging in based on the UID and the restored UPWD; and
A user authentication device comprising the step of requesting an authentication provider to delete the FIDO parameter.
현재 UPWD(User Password)를 RPWD(Rememberable Password)로 변경하여 인증 등록하는 단계;
RPWD로부터 기존 UPWD를 복원하고, 신규 UPWD와 APWD(Authenticator Password)를 생성하여 사용자의 인증장치를 등록하는 단계;
사용자로부터 로그인 요청됨에 따라, 사용자 아이디(USER ID, UID) 및 RPWD 입력 여부를 판단하는 단계;
RPWD 입력 여부에 따라, 선택적으로 생체 인증 기반 로그인 단계 또는 패스워드 기반 로그인 단계를 수행하되,
생체 인증 기반 로그인 단계는,
UID가 입력됨에 따라, 해당 사용자가 소유한 인증장치에 미리 저장된 패스워드(Authenticator Password, APWD)를 사용하여 생체 인증을 수행하는 단계; 및
인증장치로부터 출력된 패스워드(Authenticator Password, APWD)로부터 복원된 사용자 패스워드(User Password, UPWD)를 기반으로 특정 서비스에 로그인하는 단계를 포함하고,
패스워드 기반 로그인 단계는,
UID 및 RPWD가 입력됨에 따라, RPWD를 이용하여 카멜레온 해시 함수를 기반으로 기존 UPWD를 복원하여 특정 서비스에 로그인을 수행하는, 사용자 인증 방법.
Changing the current UPWD (User Password) to RPWD (Rememberable Password) and registering for authentication;
Restoring the existing UPWD from the RPWD, generating a new UPWD and APWD (Authenticator Password) to register the user's authentication device;
determining whether to input a user ID (USER ID, UID) and RPWD in response to a login request from the user;
Depending on whether RPWD is entered or not, optionally perform a biometric authentication-based login step or a password-based login step,
The biometric authentication-based login step is,
performing biometric authentication using a password (Authenticator Password, APWD) previously stored in an authentication device owned by the user in response to the UID being input; and
Logging in to a specific service based on a user password (User Password, UPWD) restored from a password (Authenticator Password, APWD) output from an authentication device,
Password-based login steps,
As UID and RPWD are input, using RPWD to restore the existing UPWD based on the chameleon hash function to log in to a specific service, a user authentication method.
제19 항에 있어서, 생체 인증을 수행하는 단계는,
FIDO 표준 프로토콜을 기반으로 수행되되,
APWD는,
FIDO CTAP2 프로토콜의 확장 필드(Extension Field)를 사용하여 인증 장치에 입력되거나, 인증장치로부터 출력되는, 사용자 인증 방법.
The method of claim 19, wherein performing biometric authentication comprises:
It is performed based on the FIDO standard protocol,
APWD,
A user authentication method that is input to or output from an authentication device using an extension field of the FIDO CTAP2 protocol.
KR1020210044764A 2021-04-06 2021-04-06 Apparatus and Method for User Authentication KR102452717B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210044764A KR102452717B1 (en) 2021-04-06 2021-04-06 Apparatus and Method for User Authentication

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210044764A KR102452717B1 (en) 2021-04-06 2021-04-06 Apparatus and Method for User Authentication

Publications (1)

Publication Number Publication Date
KR102452717B1 true KR102452717B1 (en) 2022-10-12

Family

ID=83597931

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210044764A KR102452717B1 (en) 2021-04-06 2021-04-06 Apparatus and Method for User Authentication

Country Status (1)

Country Link
KR (1) KR102452717B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024118128A1 (en) * 2022-11-28 2024-06-06 Mastercard International Incorporated Device certification based on device capabilities

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101941227B1 (en) * 2017-01-25 2019-01-22 주식회사 하이마루 A FIDO authentication device capable of identity confirmation or non-repudiation and the method thereof
JP2019515368A (en) * 2016-03-15 2019-06-06 アリババ グループ ホウルディング リミテッド Website login method and apparatus
KR101966379B1 (en) * 2015-12-23 2019-08-13 주식회사 케이티 Authentication apparatus based on biometric information, control server and application server, and method for data management based on biometric information thereof
JP2019219993A (en) * 2018-06-21 2019-12-26 Intelligence Design株式会社 Authentication system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101966379B1 (en) * 2015-12-23 2019-08-13 주식회사 케이티 Authentication apparatus based on biometric information, control server and application server, and method for data management based on biometric information thereof
JP2019515368A (en) * 2016-03-15 2019-06-06 アリババ グループ ホウルディング リミテッド Website login method and apparatus
KR101941227B1 (en) * 2017-01-25 2019-01-22 주식회사 하이마루 A FIDO authentication device capable of identity confirmation or non-repudiation and the method thereof
JP2019219993A (en) * 2018-06-21 2019-12-26 Intelligence Design株式会社 Authentication system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024118128A1 (en) * 2022-11-28 2024-06-06 Mastercard International Incorporated Device certification based on device capabilities

Similar Documents

Publication Publication Date Title
CN108880822B (en) Identity authentication method, device and system and intelligent wireless equipment
US9166966B2 (en) Apparatus and method for handling transaction tokens
US8572689B2 (en) Apparatus and method for making access decision using exceptions
US8726339B2 (en) Method and apparatus for emergency session validation
US8572686B2 (en) Method and apparatus for object transaction session validation
US8752123B2 (en) Apparatus and method for performing data tokenization
US8752124B2 (en) Apparatus and method for performing real-time authentication using subject token combinations
US8806602B2 (en) Apparatus and method for performing end-to-end encryption
CN110569658A (en) User information processing method and device based on block chain network, electronic equipment and storage medium
US8572690B2 (en) Apparatus and method for performing session validation to access confidential resources
US20130047259A1 (en) Method and apparatus for token-based virtual machine recycling
US20130047203A1 (en) Method and Apparatus for Third Party Session Validation
US11792184B2 (en) Autopilot re-enrollment of managed devices
US8572724B2 (en) Method and apparatus for network session validation
KR102118947B1 (en) Method and server for managing user identity using blockchain network, and method and terminal for verifying user using user identity based on blockchain network
CN107437996B (en) Identity authentication method, device and terminal
KR102452717B1 (en) Apparatus and Method for User Authentication
US8584202B2 (en) Apparatus and method for determining environment integrity levels
US7779452B2 (en) Computer access security
US8850515B2 (en) Method and apparatus for subject recognition session validation
US11936651B2 (en) Automated account recovery using trusted devices
US11177958B2 (en) Protection of authentication tokens
WO2019234801A1 (en) Service provision system and service provision method
US8572688B2 (en) Method and apparatus for session validation to access third party resources
US8584201B2 (en) Method and apparatus for session validation to access from uncontrolled devices

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant