KR101769861B1 - User biometric authentication method and system using HSM smart card without password exposure - Google Patents

User biometric authentication method and system using HSM smart card without password exposure Download PDF

Info

Publication number
KR101769861B1
KR101769861B1 KR1020170060990A KR20170060990A KR101769861B1 KR 101769861 B1 KR101769861 B1 KR 101769861B1 KR 1020170060990 A KR1020170060990 A KR 1020170060990A KR 20170060990 A KR20170060990 A KR 20170060990A KR 101769861 B1 KR101769861 B1 KR 101769861B1
Authority
KR
South Korea
Prior art keywords
user
control module
access control
hsm
smart card
Prior art date
Application number
KR1020170060990A
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 KR1020170060990A priority Critical patent/KR101769861B1/en
Application granted granted Critical
Publication of KR101769861B1 publication Critical patent/KR101769861B1/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/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • 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
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06187Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with magnetically detectable marking
    • G06K9/0004
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/12Fingerprints or palmprints
    • G06V40/13Sensors therefor
    • G06V40/1318Sensors therefor using electro-optical elements or layers, e.g. electroluminescent sensing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0877Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
    • 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/3231Biological data, e.g. fingerprint, voice or retina

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Storage Device Security (AREA)

Abstract

The present invention provides a user biometric authentication method and a system thereof, using an HSM smart card without password exposure, which may load a second HSM access control module for a user PC to the user PC when user fingerprint authentication (biometric authentication) is successful via a first HSM access control module of a fingerprint smart card, select a web service which a user wants to access via the second HSM access module executed in the user PC, and perform automatic log-in. The present invention, if the user fingerprint authentication is successful via the fingerprint smart card, may load the second HSM access control module within the smart card to the user PC, perform the automatic log-in for the web service which the user wants to newly subscribe to and access without exposing a user ID and password via the second HSM access control module loaded in the user PC, store a private key at a storage space within the fingerprint smart card, and store and manage the user ID and password in a storage space procured by the second HSM access control module loaded in the user PC, thereby providing more perfect security via dual management.

Description

패스워드 노출 없는 HSM 스마트 카드를 이용한 사용자 바이오 인증 방법 및 시스템{User biometric authentication method and system using HSM smart card without password exposure}Technical Field [0001] The present invention relates to a user biometric authentication method and system using a HSM smart card,

본 발명은 패스워드 노출 없는 HSM 스마트 카드를 이용한 사용자 바이오 인증 방법 및 시스템에 관한 것으로, 웹 서비스 패스워드를 안전하게 보호하기 위해 지문 스마트 카드를 이용하여 지문 인증 후 스마트 카드에 내장된 소프트웨어 방식의 하드웨어 보안 모듈(Hardware Security Module)을 사용자 PC에 로딩하여 웹 서비스에 접속하는 사용자 바이오 인증 방법 및 시스템에 관한 것이다.The present invention relates to a method and system for authenticating a user using a HSM smart card without exposing a password, and in order to safely protect a web service password, a software-based hardware security module Hardware security module) to a user's PC to access a web service.

정보보호 및 인증기술에 있어서, 개인의 인증정보를 하드웨어적으로 또한 암호학적으로 안전하게 관리하는 장치 및 시스템의 개발기술 필요성은 인터넷의 보급과 함께 제기되어 왔다.In the field of information security and authentication technology, the necessity of development technology for devices and systems for securely managing cryptographically and securely the authentication information of individuals has been raised with the spread of the Internet.

특히, 인증서 기반의 온라인서비스(예를 들어, 인터넷 뱅킹, 인터넷 쇼핑, 인터넷 관공서 업무)가 일반 개인에게 폭 넓게 제공되어 일반화되면서 인증서 및 관련 보안정보를 안전하게 관리하고자 하는 요구가 커지고 있다.In particular, there is a growing demand for secure management of certificates and related security information as certificate-based online services (for example, Internet banking, Internet shopping, and Internet office services) are widely available to general individuals and become generalized.

최근에는 사용자의 비밀정보를 안전하게 보호하여 높은 보안수준을 유지할 수 있는 하드웨어 보안 모듈(Hardware Security Module; HSM)을 이용하여 사용자의 비밀정보를 보호하고 있는 추세이다.In recent years, there is a tendency to protect the confidential information of a user by using a hardware security module (HSM) that can safely protect user's secret information and maintain high security level.

하드웨어 보안 모듈(HSM)은 소정의 연산 기능이 구비된 프로세서 및 메모리를 구비하여 대용량의 정보를 보관할 수 있을 뿐만 아니라 처리할 수도 있는 모듈로서, IC 카드 또는 USB로 구현되고 있다. 내부에 저장된 비밀 정보가 유출되지 않는다는 장점으로 인해서 HSM은 결제 수단으로서 전세계적으로 널리 활용되고 있다.The hardware security module (HSM) includes a processor and a memory provided with a predetermined computation function and is capable of storing and processing a large amount of information, and is implemented as an IC card or USB. Due to the advantage that secret information stored inside is not leaked, HSM is widely used worldwide as a payment method.

공개특허 제10-2017-0003124호(지문 인증을 통한 서비스 제공 방법 및 이를 수행하는 스마트 카드)에 의하면, 스마트카드(200)는 서비스 제공 서버(300)와 직접 통신이 가능한 통신 모듈을 별도로 구비할 수도 있다. 이 경우, 카드 리더기(100)에 의하지 않고, 스마트카드(200) 자체적으로 서비스 제공 서버(300)와 통신이 가능하므로, 스마트카드(200)를 통한 지문 인증 과정 수행시, 카드 리더기(100)는 생략될 수 있다. According to Japanese Laid-Open Patent Application No. 10-2017-0003124 (a method of providing a service through fingerprint authentication and a smart card performing the same), the smart card 200 includes a communication module capable of directly communicating with the service providing server 300 It is possible. In this case, since the smart card 200 itself can communicate with the service providing server 300 without the card reader 100, when the fingerprint authentication process is performed through the smart card 200, the card reader 100 Can be omitted.

서비스 제공 서버(300)는 사용자가 제공받고자 하는 서비스를 제공하는 서버로서, 상기 서비스의 제공 과정에서 사용자 인증을 필요로 할 수 있다. 사용자 인증은 지문 인증 방식으로 구현될 수 있는데, 스마트카드(200) 내에 구비되는 지문 센서를 통한 지문 인식 및 인식된 지문에 대한 인증 과정이 수행될 수 있다.The service providing server 300 is a server that provides a service to be provided by a user, and may require user authentication in the process of providing the service. The user authentication can be implemented by a fingerprint authentication method. The fingerprint recognition through the fingerprint sensor provided in the smart card 200 and the authentication process for the recognized fingerprint can be performed.

그리고, 서비스 제공 서버(300)가 제공하는 서비스는, 특정 장소 출입 등의 접근 제어, 신분 인증, 신용카드 사용, 전자 상거래, 금융 거래 등의 다양한 분야의 서비스를 포함한다.The service provided by the service providing server 300 includes services in various fields such as access control such as access to specific places, identity authentication, credit card use, electronic commerce, and financial transactions.

상기의 검토와 같이 공개특허 제10-2017-0003124호는 카드 리더기, 스마트 카드 및 서비스 제공 서버를 포함하여 구성되는 것으로서, 특정 장소 출입 등의 접근 제어, 신분 인증에는 적합할지 모르나, PC를 사용하는 사용자가 자신의 등록된 웹 서비스 목록 중에서 접속을 원하는 특정 웹 서비스를 선택하고 해당 웹 서비스에 자동 로그인하여 웹 서비스를 이용할 수 있도록 하는 환경을 제공하지는 못하는 문제가 있다.Open No. 10-2017-0003124, as described above, is composed of a card reader, a smart card, and a service providing server, and may be suitable for access control such as access to a specific place, identification, There is a problem that the user can not provide an environment for selecting a particular web service to be accessed from his / her registered web service list and automatically logging in to the web service to use the web service.

공개특허 제10-2017-0003124호(지문 인증을 통한 서비스 제공 방법 및 이를 수행하는 스마트 카드)Japanese Patent Application Laid-Open No. 10-2017-0003124 (a method of providing a service through fingerprint authentication and a smart card for performing the service)

본 발명은 상기와 같은 문제점을 개선하기 위하여 발명된 것으로, 악성 코드에 의한 키보드 후킹, 엿보기 공격(Shoulder Attack) 등을 통해 유출될 수 있는 웹 서비스 패스워드를 노출하지 않으면서, 종래의 스마트카드 칩과 같은 하드웨어 방식이 아닌 소프트웨어 모듈로 구현하고, 스마트 카드를 이용하여 HSM 기능을 수행하는 패스워드 노출 없는 HSM 스마트 카드를 이용한 사용자 바이오 인증 방법 및 시스템을 제공하기 위한 것이다.SUMMARY OF THE INVENTION The present invention has been made in order to solve the above problem, and it is an object of the present invention to provide a smart card chip which does not expose a web service password that can be leaked through a keyboard hooking or a shoulder attack by a malicious code, The present invention is to provide a method and system for authenticating a user using a HSM smart card without a password exposing the smart card to implement the HSM function using the smart card.

또한, 지문 스마트 카드의 제1 HSM 접근 제어 모듈을 통해 사용자 지문 인증(바이오 인증)에 성공하는 경우 스마트 카드에서 사용자 PC 용 제2 HSM 접근 제어 모듈을 사용자 PC로 로딩하고, 사용자 PC에서 실행되는 제2 HSM 접근 제어 모듈을 통해 접속을 원하는 웹 서비스를 선택하고, 자동 로그인 할 수 있는 패스워드 노출 없는 HSM 스마트 카드를 이용한 사용자 바이오 인증 방법 및 시스템을 제공하기 위한 것이다.When the user fingerprint authentication (biometric authentication) is successful through the first HSM access control module of the fingerprint smart card, the second HSM access control module for the user PC is loaded from the smart card to the user PC, 2 HSM access control module, and to provide a user biometric authentication method and system using an HSM smart card without a password exposing function capable of automatically logging in.

결국, 지문 스마트 카드에서 실행되는 제1 HSM 접근 제어 모듈은 개인키를 이용한 암호화 및 복호화 기능을 수행하며, 사용자 PC에서 실행되는 제2 HSM 접근 제어 모듈은 사용자 아이디와 패스워드를 관리하면서 사용자 인증 기능을 수행하는 패스워드 노출 없는 HSM 스마트 카드를 이용한 사용자 바이오 인증 방법 및 시스템을 제공하기 위한 것이다.As a result, the first HSM access control module executed in the fingerprint smart card performs the encryption and decryption functions using the private key, and the second HSM access control module executed in the user PC controls the user authentication function The present invention provides a method and system for authenticating a user using an HSM smart card without exposing a password.

상기와 같은 목적을 달성하기 위하여, 본 발명은 스마트 카드에 저장된 HSM(Hardware Security Module) 기능의 소프트웨어를 사용자 PC에 로딩시킨 후 인증 절차를 진행하는 HSM 스마트 카드를 이용한 사용자 바이오 인증 방법으로서, 제1 HSM 접근 제어 모듈과 제2 HSM 접근 제어 모듈을 저장하는 지문 스마트 카드를 카드 리더기의 USB 인터페이스를 통해 사용자 PC에 연결하고, 지문 스마트 카드에 사용자의 지문을 입력하여 사용자 인증에 성공하면, 지문 스마트 카드의 제2 HSM 접근 제어 모듈을 사용자 PC에 로딩하는 단계(S100); 사용자 PC의 제2 HSM 접근 제어 모듈은 자동 로그인 기능을 사용할 웹 서비스 정보의 입력을 사용자 PC에 요청하고, 사용자 PC로부터 웹 서비스 정보, 사용자 아이디 및 패스워드를 입력 받아 보안 저장 공간에 해당 내용을 저장하는 단계(S110); 지문 스마트 카드의 제1 HSM 접근 제어 모듈은 신규 등록이 필요한 해당 웹 서비스 정보, 사용자 아이디 및 패스워드를 사용자 PC의 제2 HSM 접근 제어 모듈로부터 전달 받으면, 지문 스마트 카드의 HSM 저장공간에 저장된 개인키(Private Key)로 해당 내용을 암호화하여 관리 서버에 전송하는 단계(S120); 관리 서버는 사용자 정보에 기반하여 2차 인증을 수행 후 지문 스마트 카드의 공개키(Public Key)로 해당 내용을 복호화하여, 해당 사용자의 새롭게 추가된 웹 서비스 정보를 계정 관리 DB에 저장하고, 신규 등록 결과 확인 메시지를 사용자 PC에 전송하는 단계(S130); 사용자 PC의 제2 HSM 접근 제어 모듈은 사용자 PC로부터 로그인 가능한 웹 서비스 목록 조회를 요청 받으면, 관리 서버에 제2 HSM 접근 제어 모듈의 아이디를 전송하여 해당 사용자의 로그인 가능한 웹 서비스 목록을 요청하는 단계(S210); 관리 서버는 수신한 제2 HSM 접근 제어 모듈의 아이디를 이용하여 등록된 사용자인지 확인 후 솔트값을 생성하여 해당 사용자의 웹 서비스 정보, 서비스 별 아이디, 패스워드 및 해시 함수 반복 회수와 함께 지문 스마트 카드의 공개키로 암호화해서 사용자 PC의 제2 HSM 접근 제어 모듈로 전송하는 단계(S220); 지문 스마트 카드의 제1 HSM 접근 제어 모듈은 사용자 PC의 제2 HSM 접근 제어 모듈로부터 지문 스마트 카드의 공개키 기반 암호화된 내용을 전송받으면, 지문 스마트 카드 의 HSM 저장공간에 저장된 개인키를 이용하여 해당 내용을 복호화하고, 복호화된 사용자 웹 서비스 정보, 서비스 별 아이디, 패스워드, 솔트값, 해시 함수 반복 횟수를 사용자 PC의 제2 HSM 접근 제어 모듈로 전송하는 단계(S230); 사용자 PC의 제2 HSM 접근 제어 모듈은 사용자 PC의 보안 저장 공간에 사용자 웹 서비스 정보, 서비스 별 아이디, 패스워드, 솔트값 및 해시 함수 반복 횟수를 저장하고, 사용자 PC로부터 접속을 원하는 웹 서비스를 선택받으면, 사용자 PC의 보안 저장 공간에 저장된 해당 웹 서비스 정보, 사용자 아이디, 패스워드 정보와 솔트값 및 해시 함수 반복 횟수를 적용하여 솔팅(Salting)과 키 스트레칭(key stretching)을 반복 수행함으로써 다이제스트(Digest)를 생성한 후 생성된 다이제스트를 관리 서버로 전송하는 단계(S240); 관리 서버는 계정 관리 DB에 저장되어 있는 웹 서비스 정보, 사용자 아이디, 패스워드 정보와 서버에서 생성한 솔트값 및 해시 함수 반복 횟수를 적용하여 솔팅과 키 스트레칭을 반복 수행함으로써 다이제스트를 생성한 후 사용자 PC의 제2 HSM 접근 제어 모듈로부터 수신한 다이제스트와 비교하여 사용자 인증을 수행하는 단계(S250); 및 관리 서버는 사용자 인증에 성공하면, 웹 서비스 서버가 사용자 PC로 해당 웹 서비스를 제공하도록 하는 단계(S260)를 포함하는 것을 특징으로 하는 패스워드 노출 없는 HSM 스마트 카드를 이용한 사용자 바이오 인증 방법을 제공한다.According to an aspect of the present invention, there is provided a method of authenticating a user using an HSM smart card for loading an HSM (Hardware Security Module) function software stored in a smart card on a user PC and then performing an authentication procedure, The fingerprint smart card storing the HSM access control module and the second HSM access control module is connected to the user PC through the USB interface of the card reader and if the user authentication is successful by inputting the fingerprint of the user on the fingerprint smart card, Loading the second HSM access control module of the second HSM access control module into the user PC (S100); The second HSM access control module of the user PC requests the user PC to input the web service information to use the automatic login function, receives the web service information, the user ID and the password from the user PC, and stores the contents in the secure storage space Step S110: When the first HSM access control module of the fingerprint smart card receives the corresponding web service information, user ID, and password required for new registration from the second HSM access control module of the user PC, the first HSM access control module of the fingerprint smart card stores the private key Encrypting the content with a private key and transmitting the encrypted content to a management server (S120); The management server performs the secondary authentication based on the user information, decrypts the corresponding content using the public key of the fingerprint smart card, stores the newly added web service information of the user in the account management DB, Transmitting a result confirmation message to the user PC (S130); When the second HSM access control module of the user PC requests the log-inable web service list inquiry from the user PC, the second HSM access control module transmits the ID of the second HSM access control module to the management server and requests the log- S210); The management server checks whether the user is a registered user by using the ID of the received second HSM access control module, generates a salt value, and generates a salt value of the second fingerprint of the fingerprint smart card together with the web service information of the user, ID, password, Encrypting the encrypted data using the public key and transmitting the encrypted data to the second HSM access control module of the user PC (S220); When the first HSM access control module of the fingerprint smart card receives the public key based encrypted contents of the fingerprint smart card from the second HSM access control module of the user PC, the first HSM access control module of the fingerprint smart card uses the private key stored in the HSM storage space of the fingerprint smart card (S230) of decrypting the decrypted user web service information, the ID for each service, the password, the salt value, and the number of repetitions of the hash function to the second HSM access control module of the user PC; The second HSM access control module of the user PC stores the user web service information, the ID for each service, the password, the salt value, and the number of iterations of the hash function in the secure storage space of the user PC. When the user selects a web service to access from the user PC , Digesting is performed by repeating salting and key stretching by applying corresponding web service information, user ID, password information, salt value and hash function repetition number stored in the secure storage space of the user PC Transmitting the created digest to the management server (S240); The management server generates the digest by repeatedly performing the salting and the key stretching by applying the web service information, the user ID and the password information stored in the account management DB, the salt value generated by the server, and the iteration number of the hash function, Performing a user authentication by comparing with a digest received from the second HSM access control module (S250); And a step (S260) of causing the web service server to provide the corresponding web service to the user PC when the user authentication is successfully performed by the management server, and the management server provides the user biometric authentication method using the HSM smart card without the password exposure .

한편, 상기와 같은 목적을 달성하기 위하여, 본 발명은 스마트 카드에 저장된 HSM(Hardware Security Module) 기능의 소프트웨어를 사용자 PC에 로딩시킨 후 인증 절차를 진행하는 HSM 스마트 카드를 이용한 사용자 바이오 인증 시스템으로서, 개인키(Private Key)를 저장하는 HSM 저장공간(110)과, 지문 일치 여부를 확인하여 사용자 인증에 성공하면 사용자 PC(200)에 제2 HSM 접근 제어 모듈(230)을 로딩시키며, 상기 HSM 저장공간(110)에 저장된 개인키를 이용하여 하기 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)로부터 전달 받은 정보를 암호화 및 복호화를 수행하는 제1 HSM 접근 제어 모듈(120)을 구비하는 지문 스마트 카드(100) - 지문 스마트 카드(100)는 카드 리더기의 USB 인터페이스를 통해 하기의 사용자 PC(200)에 연결되며, 지문 스마트 카드(100)에는 사전에 제1 HSM 접근 제어 모듈(120)과 제2 HSM 접근 제어 모듈(230)이 저장되어 있고, 제2 HSM 접근 제어 모듈(230)은 사용자 PC(200)로 로딩되어 동작함 -; 하기의 관리 서버(300)와 SSL(Secure Sockets Layer) 통신을 수행하는 사용자 인증 모듈(210)과, 자동 로그인 기능을 사용할 웹 서비스 정보와 사용자 아이디 및 패스워드를 저장하는 보안 저장 공간(220)과, 사용자로부터 상기 자동 로그인 기능을 사용할 웹 서비스 정보와 사용자 아이디 및 패스워드를 입력 받으면 상기 보안 저장 공간(220)에 저장하고, 상기 지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)로 전송하는 제2 HSM 접근 제어 모듈(230)을 구비하는 사용자 PC(200) - 제2 HSM 접근 제어 모듈(230)은 상기 지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)이 실행되면 카드 리더기의 USB 인터페이스를 통해 사용자 PC(200)로 로딩되어 실행되는 것으로, 로딩 된 후 지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)과 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)은 각각 별개로 실행됨 -; 상기 사용자 PC(200)의 사용자 인증 모듈(210)과 SSL 통신을 수행하고, 웹 서비스 서버(400)와 SSL 통신을 수행하는 웹 서비스 서버 접근 모듈(310)과, 상기 지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)이 개인키를 이용해 암호화하여 전송하는 자동 로그인 기능을 사용할 웹 서비스 정보와 사용자 아이디 및 패스워드를 전송받으면, 지문 스마트 카드의 공개키(Public Key)를 이용해 복호화하여 새로 추가된 웹 서비스 정보를 하기의 계정 관리 DB(330)에 저장하는 인증 모듈(320)과, 상기 인증 모듈(320)로부터 전달 받은 정보를 저장하는 계정 관리 DB(330)를 구비하는 관리 서버(300); 및 상기 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)과 상기 관리 서버(300)의 인증 모듈(320) 간에 사용자 인증이 성공하면 상기 사용자 PC(200)로 웹 서비스를 제공하는 웹 서비스 서버(400)를 포함하는 것을 특징으로 하는 패스워드 노출 없는 HSM 스마트 카드를 이용한 사용자 바이오 인증 시스템을 제공한다.According to another aspect of the present invention, there is provided a user bio-authentication system using an HSM smart card for loading an HSM (Hardware Security Module) function software loaded on a smart card into a user PC and then performing an authentication procedure, The second HSM access control module 230 is loaded in the user PC 200 when the user authentication is successful by confirming whether or not the fingerprint matches with the fingerprint and storing the private key in the HSM storage space 110, And a first HSM access control module 120 for encrypting and decrypting information received from the second HSM access control module 230 of the user PC 200 using the private key stored in the space 110 The fingerprint smart card 100 is connected to the user PC 200 through the USB interface of the card reader 100 and the first HSM access control Module 120 and the second access control module also HSM 230 is stored, a second HSM access control module 230 is operatively loaded into the user PC (200) -; A user authentication module 210 for performing SSL (Secure Sockets Layer) communication with the following management server 300, a secure storage space 220 for storing Web service information, a user ID and a password to be used for the automatic login function, When the web service information and the user ID and password to use the automatic login function are inputted from the user, the user ID and the password are stored in the secure storage space 220 and transmitted to the first HSM access control module 120 of the fingerprint smart card 100 When the first HSM access control module 120 of the fingerprint smart card 100 is executed, the user PC 200 having the second HSM access control module 230 - the second HSM access control module 230 - The first HSM access control module 120 of the fingerprint smart card 100 and the second HSM access control module of the user PC 200 after being loaded into the user PC 200 via the USB interface of the user PC 200 230) Run separately; A web service server access module 310 for performing SSL communication with the user authentication module 210 of the user PC 200 and performing SSL communication with the web service server 400, When the first HSM access control module 120 receives the web service information and the user ID and the password to use the automatic login function for encrypting and transmitting using the private key, the first HSM access control module 120 decrypts using the public key of the fingerprint smart card, A management server 300 having an authentication module 320 for storing the added web service information in an account management DB 330 and an account management DB 330 for storing information received from the authentication module 320, ); And a web service providing web service to the user PC 200 when the user authentication is successful between the second HSM access control module 230 of the user PC 200 and the authentication module 320 of the management server 300. [ And a server (400). The user biometric authentication system using the HSM smart card without password exposures is provided.

상기와 같은 구성의 본 발명에 따르면, 다음과 같은 효과를 도모할 수 있다. According to the present invention having the above-described configuration, the following effects can be achieved.

지문 스마트 카드의 제1 HSM 접근 제어 모듈을 통해 사용자 지문 인증에 성공하면 스마트 카드 내에 있는 사용자 PC 용 제2 HSM 접근 제어 모듈을 사용자 PC로 로딩하고, 사용자 PC에 로딩된 제2 HSM 접근 제어 모듈을 통해 사용자의 아이디와 패스워드를 노출하지 않으면서 웹 서비스 신규 등록 및 접속을 원하는 웹 서비스에 자동 로그인을 할 수가 있다.If the user fingerprint authentication is successful through the first HSM access control module of the fingerprint smart card, the second HSM access control module for the user PC in the smart card is loaded into the user PC, and the second HSM access control module loaded in the user PC It is possible to automatically log in to the web service to register and access the web service without exposing the user's ID and password.

또한, 지문 스마트 카드 내의 저장공간에는 개인키(Private Key)를 저장하고, 사용자 PC에 로딩된 제2 HSM 접근 제어 모듈에 의해 확보된 저장공간에는 사용자 아이디 및 패스워드를 저장하여 관리함으로써 이원화된 관리를 통해 보다 완벽한 보안을 제공한다.In addition, a private key is stored in the storage space of the fingerprint smart card, and a user ID and a password are stored and managed in the storage space secured by the second HSM access control module loaded in the user PC, To provide more complete security.

나아가, 해시 함수를 이용하여 다이제스트를 생성할 때 솔팅과 키 스트레칭을 반복하며, 솔트와 패스워드 외에도 입력 값을 추가함으로써, 공격자가 다이제스트를 쉽게 유추할 수 없도록 하였다.Furthermore, when creating a digest using a hash function, it repeats the solving and key stretching, and adds an input value in addition to a salt and a password, thereby preventing an attacker from easily digesting the digest.

도 1은 본 발명에 따른 자동 로그인 기능을 사용할 웹 서비스 신규 등록 과정을 나타내는 순서도이다.
도 2는 본 발명에 따른 웹 서비스 서버 사용자 바이오 인증 과정을 나타내는 순서도이다.
도 3은 본 발명에 따른 사전 등록된 웹 서비스 패스워드를 갱신하는 과정을 나타내는 순서도이다.
도 4는 본 발명에 따른 사용자 바이오 인증 시스템의 구성도이다.
FIG. 1 is a flowchart illustrating a process of newly registering a web service using the automatic login function according to the present invention.
FIG. 2 is a flowchart illustrating a process of authenticating a user of a web service server according to the present invention.
3 is a flowchart illustrating a process of updating a pre-registered web service password according to the present invention.
4 is a configuration diagram of a user biometric authentication system according to the present invention.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되는 실시 예를 참조하면 명확해질 것이다.BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention, and how to accomplish them, will become apparent by reference to the embodiments described in detail below with reference to the accompanying drawings.

그러나, 본 발명은 이하에서 개시되는 실시 예로 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이다.However, the present invention is not limited to the embodiments disclosed below, but may be embodied in various forms.

본 명세서에서 본 실시 예는 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다.The present embodiments are provided so that the disclosure of the present invention is thoroughly disclosed and that those skilled in the art will fully understand the scope of the present invention.

그리고 본 발명은 청구항의 범주에 의해 정의될 뿐이다.And the present invention is only defined by the scope of the claims.

따라서, 몇몇 실시 예에서, 잘 알려진 구성 요소, 잘 알려진 동작 및 잘 알려진 기술들은 본 발명이 모호하게 해석되는 것을 피하기 위하여 구체적으로 설명되지 않는다.Thus, in some embodiments, well known components, well known operations, and well-known techniques are not specifically described to avoid an undesirable interpretation of the present invention.

또한, 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭하고, 본 명세서에서 사용된(언급된) 용어들은 실시 예를 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다.In addition, throughout the specification, like reference numerals refer to like elements, and the terms (mentioned) used herein are intended to illustrate the embodiments and not to limit the invention.

본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함하며, '포함(또는, 구비)한다'로 언급된 구성 요소 및 동작은 하나 이상의 다른 구성요소 및 동작의 존재 또는 추가를 배제하지 않는다.In this specification, the singular forms include plural forms unless the context clearly dictates otherwise, and the constituents and acts referred to as " comprising (or comprising) " do not exclude the presence or addition of one or more other constituents and actions .

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다.Unless defined otherwise, all terms (including technical and scientific terms) used herein may be used in a sense commonly understood by one of ordinary skill in the art to which this invention belongs.

또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 정의되어 있지 않은 한 이상적으로 또는 과도하게 해석되지 않는다.Also, commonly used predefined terms are not ideally or excessively interpreted unless they are defined.

이하, 첨부된 도면을 참고로 본 발명의 바람직한 실시 예에 대하여 설명한다.Hereinafter, preferred embodiments of the present invention will be described with reference to the accompanying drawings.

도 1 내지 도 4를 참고하면, 본 발명의 패스워드 노출 없는 HSM 스마트 카드를 이용한 사용자 바이오 인증 방법은, 지문 스마트 카드(100)를 통해 사용자 지문 인증에 성공하면, 지문 스마트 카드(100)에 저장된 사용자 PC(200)용 제2 HSM(Hardware Security Module) 기능의 소프트웨어를 사용자 PC(200)에 로딩시킨다.1 to 4, a user biometric authentication method using an HSM smart card without password exposing according to the present invention is a method for authenticating a user stored in a fingerprint smart card 100, And loads the software of the second HSM (Hardware Security Module) function for the PC 200 into the user PC 200.

지문 스마트 카드(100) 내에는 스마트 카드(100)에서 동작하는 제1 HSM 접근 제어 모듈(120)과 지문 스마트 카드(100)에서 사용자 PC(200)로 로딩되어 실행되는 제2 HSM 접근 제어 모듈(230)이 각각 저장되어 있다.A first HSM access control module 120 operated in the smart card 100 and a second HSM access control module 120 loaded in the user PC 200 in the fingerprint smart card 100 are executed in the fingerprint smart card 100 230 are stored.

사용자 PC(200)로부터 지문 스마트 카드(100)에 제2 HSM 접근 제어 모듈(230)의 실행을 요청하면, 먼저 지문 스마트 카드(100) 내에서 제1 HSM 접근 제어 모듈(120)이 실행되어 지문 인증 과정을 수행한다. When the user PC 200 requests the fingerprint smart card 100 to execute the second HSM access control module 230, the first HSM access control module 120 is executed in the fingerprint smart card 100, And performs the authentication process.

사용자 지문 인증에 성공하면, 제2 HSM 접근 제어 모듈(230)을 사용자 PC(200)로 로딩시키게 되는 것이다.If the user fingerprint authentication is successful, the second HSM access control module 230 is loaded into the user PC 200.

물론, 지문 스마트 카드(100) 내의 제1 HSM 접근 제어 모듈(120)과 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)은 서로 다른 기능을 수행하며, 독립적으로 수행된다.Of course, the first HSM access control module 120 in the fingerprint smart card 100 and the second HSM access control module 230 in the user PC 200 perform different functions and are performed independently.

스마트 카드(100)의 HSM 저장공간(110)은 암호화 및 복호화를 위한 키(Private Key)만 관리하고, 사용자 PC(200)의 보안 저장 공간(220)은 사용자 정보(아이디, 패스워드 등)를 관리한다.The HSM storage space 110 of the smart card 100 manages only a private key for encryption and decryption and the secure storage space 220 of the user PC 200 manages user information (ID, password, etc.) do.

먼저, 본 발명은 다음의 네 가지 사항이 전제된다. ① 도 1에 해당하는 자동 로그인 기능을 사용할 웹 서비스 신규 등록 과정에서 사용자는 웹 서비스에 이미 가입된 사람이다. ② 사용자 PC와 관리 서버 그리고 웹 서비스 서버 사이의 통신 구간은 SSL(Secure Sockets Layer) 등에 의해 암호화되어 보호된다. ③ 관리 서버는 도 1에 해당하는 웹 서비스 신규 등록을 위해 사용자 아이디와 패스워드 외에 본인 확인을 위한 2차 인증 수단(휴대폰, 이메일 등)을 이용한다. ④ 지문 스마트 카드를 사용할 사용자들의 신원확인 및 관련 정보를 사전에 수집하여 관리 서버에 등록하고, 사용자들은 본인의 지문이 등록된 스마트 카드를 수령한다.First, the present invention has the following four points. (1) In the process of newly registering the Web service using the automatic login function corresponding to FIG. 1, the user is a person already subscribed to the Web service. ② The communication section between the user PC and the management server and the web service server is encrypted and protected by SSL (Secure Sockets Layer). (3) The management server uses a secondary authentication means (mobile phone, e-mail, etc.) for identifying the user in addition to the user ID and password for newly registering the web service corresponding to Fig. ④ Fingerprint The identity verification and related information of the users who use the smart card are collected in advance and registered in the management server, and users receive the smart card in which the fingerprint of the user is registered.

[자동 로그인 기능을 사용할 웹 서비스 신규 등록][New registration of web service to use automatic login function]

도 1 및 도 4를 참고하면, 제1 HSM 접근 제어 모듈(120)과 제2 HSM 접근 제어 모듈(230)을 저장하는 지문 스마트 카드(100)를 카드 리더기의 USB 인터페이스를 통해 사용자 PC(200)에 연결하고, 지문 스마트 카드(100)에 사용자의 지문을 입력하여 사용자 인증에 성공하면, 지문 스마트 카드(100)의 제2 HSM 접근 제어 모듈(230)을 사용자 PC(200)에 로딩한다(S100).1 and 4, the fingerprint smart card 100 storing the first HSM access control module 120 and the second HSM access control module 230 is connected to the user PC 200 through the USB interface of the card reader, If the user authentication is successful by inputting the fingerprint of the user to the fingerprint smart card 100, the second HSM access control module 230 of the fingerprint smart card 100 is loaded into the user PC 200 (S100 ).

구체적으로, 단계(S100)는 다음과 같이 구성된다.Specifically, step S100 is configured as follows.

먼저, 지문 스마트 카드(100)를 카드 리더기의 USB 인터페이스를 통해 사용자 PC(200)에 연결한다(S101).First, the fingerprint smart card 100 is connected to the user PC 200 through the USB interface of the card reader (S101).

지문 스마트 카드(100)의 제2 HSM 접근 제어 모듈(230)을 사용자 PC(200)에 로딩시키기 위한 실행 요청 메시지를 사용자 PC(200)에서 지문 스마트 카드(100)의 MCU(Micro Controller Unit)로 전송한다(S102).An execution request message for loading the second HSM access control module 230 of the fingerprint smart card 100 into the user PC 200 is transmitted from the user PC 200 to the microcontroller unit (MCU) of the fingerprint smart card 100 (S102).

지문 스마트 카드(100)의 MCU가 제1 HSM 접근 제어 모듈(120)을 실행시킨다(S103).The MCU of the fingerprint smart card 100 executes the first HSM access control module 120 (S103).

지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)은 사용자 PC(200)로 사용자의 지문 입력을 요청한다(S104).The first HSM access control module 120 of the fingerprint smart card 100 requests the user PC 200 to input a fingerprint of the user (S104).

사용자는 지문 스마트 카드(100)에 본인의 지문을 직접 입력한다(S105).The user directly inputs his or her fingerprint to the fingerprint smart card 100 (S105).

지문 스마트 카드(100)의 MCU는 입력된 사용자의 지문을 지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)에 전달한다(S106).The MCU of the fingerprint smart card 100 transmits the input fingerprint of the user to the first HSM access control module 120 of the fingerprint smart card 100 (S106).

지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)은 지문 일치 여부를 확인하여, 불일치하면 사용자 PC(200)에 지문을 다시 입력할 것을 요청한다(S107).The first HSM access control module 120 of the fingerprint smart card 100 checks whether or not the fingerprint is matched and requests the user PC 200 to input the fingerprint again if there is an inconsistency (S107).

지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)은 지문이 일치하면, 사용자 인증에 성공한 것으로 판단한다(S108).If the fingerprint matches, the first HSM access control module 120 of the fingerprint smart card 100 determines that the user authentication is successful (S108).

사용자 인증에 성공한 것으로 판단되면, 지문 스마트 카드(100)의 제2 HSM 접근 제어 모듈(230)을 사용자 PC(200)에 로딩한다(S109). 제2 HSM 접근 제어 모듈(230)은 사용자 PC(200)에서 실행된다.If it is determined that the user authentication is successful, the second HSM access control module 230 of the fingerprint smart card 100 is loaded into the user PC 200 (S109). The second HSM access control module 230 is executed in the user PC 200.

상기와 같이 사용자 PC(200)에 제2 HSM 접근 제어 모듈(230)이 로딩되면, 사용자 PC(200)를 통해 웹 서비스 신규 등록 메뉴를 선택한다.When the second HSM access control module 230 is loaded into the user PC 200 as described above, a new web service registration menu is selected through the user PC 200.

사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)은 자동 로그인 기능을 사용할 웹 서비스 정보의 입력을 사용자 PC(200)에 요청하고, 사용자 PC(200)로부터 웹 서비스 정보, 사용자 아이디 및 패스워드를 입력 받아 보안 저장 공간(220)에 해당 내용을 저장한다(S110). The second HSM access control module 230 of the user PC 200 requests the user PC 200 to input the web service information to be used for the automatic login function and receives the web service information, And stores the content in the secure storage space 220 (S110).

예를 들어, 사용자가 본 서비스를 이용할 웹 서비스의 신규 등록을 위해 G마켓, 11번가 등의 웹 사이트 주소와 사용자 아이디 및 패스워드를 입력 받아 보안 저장 공간(220)에 저장하는 것이다. For example, in order to newly register a web service to be used by the user, the user inputs a web site address, a user ID, and a password of the G-market, 11th avenue, and the like, and stores the web site address and the user ID and password in the secure storage space 220.

보안 저장 공간(220)은 제2 HSM 접근 제어 모듈(230)이 사용자 PC(200)에 로딩되어 실행되면, 별도로 확보되어 사용자 인증을 위해 사용되는 보안 공간이다.When the second HSM access control module 230 is loaded into the user PC 200 and executed, the secure storage space 220 is secured and used for user authentication.

지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)은 신규 등록이 필요한 해당 웹 서비스 정보, 사용자 아이디 및 패스워드를 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)로부터 전달 받으면, 지문 스마트 카드(100)의 HSM 저장공간(110)에 저장된 개인키(Private Key)로 해당 내용을 암호화하여 관리 서버(300)에 전송한다(S120).When the first HSM access control module 120 of the fingerprint smart card 100 receives the corresponding web service information, a user ID, and a password required for the new registration from the second HSM access control module 230 of the user PC 200, The content is encrypted with the private key stored in the HSM storage space 110 of the fingerprint smart card 100 and transmitted to the management server 300 at step S120.

관리 서버(300)는 사용자 정보에 기반하여 2차 인증을 수행하여, 인증에 실패하면 등록 거부 메시지를 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)로 전송한다. The management server 300 performs the secondary authentication based on the user information. If the authentication fails, the management server 300 transmits a registration rejection message to the second HSM access control module 230 of the user PC 200.

2차 인증에 성공하면, 지문 스마트 카드(100)의 공개키(Public Key)로 해당 내용을 복호화하여, 해당 사용자의 새롭게 추가된 웹 서비스 정보를 계정 관리 DB(330)에 저장하고, 신규 등록 결과 확인 메시지를 사용자 PC(200)에 전송한다(S130). 여기서, 사용자 정보에 기반한 2차 인증은, 본인 확인을 위한 2차 인증으로 휴대폰이나 이메일 등을 통한 인증 방법을 말한다.If the secondary authentication is successful, the content is decrypted by the public key of the fingerprint smart card 100, the newly added web service information of the user is stored in the account management DB 330, And transmits a confirmation message to the user PC 200 (S130). Here, the secondary authentication based on the user information is a secondary authentication for identifying the user, and refers to an authentication method through a mobile phone or an e-mail.

상기의 절차를 통해 자동 로그인 기능을 사용할 웹 서비스 신규 등록을 마치게 된다. The new registration of the web service to be used for the automatic login function is completed through the above procedure.

본 발명에서는 2 개의 암호키(공개키와 개인키)를 사용하는 공개키 암호화 방식을 사용하고 있다. 공개키 암호화는 한 쪽의 암호키(공개키)로 암호화한 데이터는 다른 한쪽의 키(개인키)로만 복호화 할 수 있게 되어 있는 것이다. 당업자라면 잘 알 수 있는 내용이므로 자세한 설명은 생략한다.In the present invention, a public key encryption method using two cryptographic keys (a public key and a private key) is used. In public key encryption, data encrypted with one encryption key (public key) can be decrypted only with the other key (private key). Those skilled in the art will understand that the detailed description is omitted.

[웹 서비스 서버 사용자 바이오(지문) 인증][Web service server user biometric (fingerprint) authentication]

도 2 및 도 4를 참고하면, 자동 로그인 기능을 사용할 웹 서비스 신규 등록을 마친 다음, 사용자는 바이오(지문) 인증을 통해 웹 서비스 서버에 접속하여 웹 서비스를 제공받게 된다.Referring to FIG. 2 and FIG. 4, after finishing the new registration of the web service using the automatic login function, the user accesses the web service server through bio (fingerprint) authentication and receives the web service.

도 2를 참고하면, 이때에도 제일 먼저 지문 스마트 카드(100)의 제2 HSM 접근 제어 모듈(230)을 사용자 PC(200)에 로딩시킨 후 지문을 입력 받아 사용자 인증을 거치게 된다(S200). S200은 상기의 도 1에서 살펴본 S100의 과정과 동일하다.Referring to FIG. 2, first, the second HSM access control module 230 of the fingerprint smart card 100 is loaded in the user PC 200, and then the fingerprint is inputted and the user authentication is performed (S200). S200 is the same as the process of S100 shown in FIG.

사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)은 사용자 PC(200)로부터 로그인 가능한 웹 서비스 목록 조회를 요청 받으면, 관리 서버(300)에 제2 HSM 접근 제어 모듈(230)의 아이디를 전송하여 해당 사용자의 로그인 가능한 웹 서비스 목록을 요청한다(S210).The second HSM access control module 230 of the user PC 200 requests the management server 300 to inquire the list of loginable web services from the user PC 200 and transmits the ID of the second HSM access control module 230 to the management server 300 And requests a log-inable web service list of the corresponding user (S210).

관리 서버(300)는 수신한 제2 HSM 접근 제어 모듈(230)의 아이디를 이용하여 등록된 사용자인지 확인하여, 등록되지 않은 사용자이면 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)로 거절 메시지를 전송한다.The management server 300 determines whether the user is a registered user by using the ID of the received second HSM access control module 230. If the user is an unregistered user, the second HSM access control module 230 of the user PC 200 And sends a rejection message.

등록된 사용자라면, 관리 서버(300)는 솔트값을 생성하여 해당 사용자의 웹 서비스 정보, 서비스 별 아이디, 패스워드 및 해시 함수 반복 회수와 함께 지문 스마트 카드(100)의 공개키(Public Key)로 암호화해서 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)로 전송한다(S220).If the user is a registered user, the management server 300 generates a salt value and encrypts the salt value using the public key of the fingerprint smart card 100 together with the Web service information of the user, the ID, password, To the second HSM access control module 230 of the user PC 200 (S220).

솔트(Salt)는 단방향 해시 함수에서 다이제스트(Digest)를 생성할 때 추가되는 바이트 단위의 임의의 문자열이다. 그리고 패스워드에 임의의 문자열에 해당하는 솔트를 추가하여 다이제스트를 생성하는 것을 솔팅(salting)이라 한다.Salt is an arbitrary string in bytes that is added when generating a digest from a one-way hash function. And adding a salt to a password to generate a digest is called salting.

솔트와 패스워드의 다이제스트를 관리 서버(300)의 계정 관리 DB(330)에 저장하고, 사용자가 로그인 할 때 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)이 전송한 패스워드를 해시하여 일치 여부를 확인할 수 있다. 이 방법을 사용할 때는 모든 패스워드가 고유의 솔트를 갖고 솔트의 길이는 32바이트 이상이어야 공격자가 솔트와 다이제스트를 추측하기가 어렵다.The digest of the salt and the password is stored in the account management DB 330 of the management server 300 and the password transmitted by the second HSM access control module 230 of the user PC 200 is hashed Can be confirmed. When using this method, it is difficult for an attacker to guess salt and digest if all passwords have their own salt and the length of the salt must be at least 32 bytes.

솔트 계산은 pbkdf2, bcrypt, scrypt 중 하나를 사용하여 계산한다. 해시 함수 반복 횟수는 관리 서버(300)에서 설정 가능하다.Calculate the salt using one of pbkdf2, bcrypt, scrypt. The number of iterations of the hash function can be set in the management server 300.

지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)은 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)로부터 지문 스마트 카드(100)의 공개키 기반 암호화된 내용을 전송받으면, 지문 스마트 카드(100) 의 HSM 저장공간(110)에 저장된 개인키를 이용하여 해당 내용을 복호화하고, 복호화된 사용자 웹 서비스 정보, 서비스 별 아이디, 패스워드, 솔트값, 해시 함수 반복 횟수를 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)로 전송한다(S230).When the first HSM access control module 120 of the fingerprint smart card 100 receives the public key based encrypted contents of the fingerprint smart card 100 from the second HSM access control module 230 of the user PC 200, The corresponding contents are decrypted using the private key stored in the HSM storage space 110 of the fingerprint smart card 100 and the decrypted user web service information, ID for each service, password, salt value, 200 to the second HSM access control module 230 in step S230.

사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)은 사용자 PC(200)의 보안 저장 공간(220)에 사용자 웹 서비스 정보, 서비스 별 아이디, 패스워드, 솔트값 및 해시 함수 반복 횟수를 저장한다.The second HSM access control module 230 of the user PC 200 stores the user web service information, the service ID, the password, the salt value, and the number of hash function repetition times in the secure storage space 220 of the user PC 200 .

사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)은 사용자 PC(200)로 웹 서비스 목록 중에서 어느 하나를 선택할 것을 요청한다.The second HSM access control module 230 of the user PC 200 requests the user PC 200 to select one of the web services list.

사용자 PC(200)로부터 접속을 원하는 웹 서비스를 선택받으면, 사용자 PC(200)의 보안 저장 공간(220)에 저장된 해당 웹 서비스 정보, 사용자 아이디, 패스워드 정보와 솔트값 및 해시 함수 반복 횟수를 적용하여 솔팅(Salting)과 키 스트레칭(key stretching)을 반복 수행함으로써 다이제스트(α)를 생성한 후 생성된 다이제스트(α)를 관리 서버(300)로 전송한다(S240).The web service information, the user ID, the password information, the salt value, and the number of hash function repetition times stored in the secure storage space 220 of the user PC 200 are applied to the user PC 200 The digest alpha is generated by repeating salting and key stretching to send the generated digest alpha to the management server 300 in operation S240.

이와 같이 다이제스트를 생성할 때 솔팅과 키 스트레칭을 반복하며, 솔트와 패스워드 외에도 입력 값을 추가하여 공격자가 쉽게 다이제스트를 유추할 수 없도록 하는 기술을 Adaptive Key Derivation Functions 이라 한다. 즉, 해싱을 반복하여 수행하는 것이다.This technique is called Adaptive Key Derivation Functions, which is a technique that prevents the attacker from easily digesting by adding input values in addition to the salt and password, and repeating the solving and keystroke when creating the digest. That is, hashing is repeatedly performed.

다이제스트(α) = Hash(사용자 PC(200)의 보안 저장 공간(220)에 저장된 웹 서비스 사용자 아이디, 패스워드, 웹 서비스 정보, 관리 서버(300)에서 수신한 일회용 솔트값, 해시 함수 반복 횟수) A digest alpha = Hash (web service user ID, password, web service information stored in the secure storage space 220 of the user PC 200, disposable salt value received from the management server 300,

즉, 상기와 같은 값들을 해시 함수에 적용하고, 해시 함수 반복 횟수만큼 해싱을 반복하여 다이제스트(α)를 구하는 것이다.That is, the above-described values are applied to the hash function, and hashing is repeated for the number of repetitions of the hash function to obtain the digest (?).

관리 서버(300)는 계정 관리 DB(330)에 저장되어 있는 웹 서비스 정보, 사용자 아이디, 패스워드 정보와 서버에서 생성한 솔트값 및 해시 함수 반복 횟수를 적용하여 솔팅과 키 스트레칭을 반복 수행함으로써 다이제스트(β)를 생성한 후 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)로부터 수신한 다이제스트(α)와 비교하여 사용자 인증을 수행한다(S250).The management server 300 applies the web service information, user ID, and password information stored in the account management DB 330, the salt value generated by the server, and the iteration count of the hash function repeatedly to perform digesting and key stretching, and then performs user authentication by comparing the digest alpha with the digest alpha received from the second HSM access control module 230 of the user PC 200 in operation S250.

다이제스트(β) = Hash(관리 서버(300)에 저장되어 있는 웹 서비스 사용자 아이디, 패스워드, 웹 서비스 정보, 관리 서버(300)에서 생성한 일회용 솔트값, 해시 함수 반복 횟수) The digest (?) = Hash (Web service user ID, password, web service information, disposable salt value, and hash function repetition number stored in the management server 300)

즉, 상기와 같은 값들을 해시 함수에 적용하고, 해시 함수 반복 횟수만큼 해싱을 반복하여 다이제스트(β)를 구하는 것이다.That is, the above values are applied to a hash function, and hashing is repeated for the number of repetitions of the hash function to obtain a digest ().

관리 서버(300)는 다이제스트(α)와 다이제스트(β)가 일치하는지 확인하여, 불일치하면 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)로 다이제스트(α)의 재전송을 요청한다.The management server 300 checks whether the digest alpha and the digest alpha are identical to each other and requests the second HSM access control module 230 of the user PC 200 to retransmit the digest alpha.

관리 서버(300)는 사용자 인증에 성공하면, 웹 서비스 서버(400)가 사용자 PC(200)로 해당 웹 서비스를 제공하도록 한다(S260).If the user authentication is successful, the management server 300 causes the web service server 400 to provide the corresponding web service to the user PC 200 (S260).

상기와 같은 자동 로그인 절차를 통하여 직접적인 아이디와 패스워드의 입력 없이도 웹 서비스를 제공받게 되는 것이다.The web service is provided without directly inputting the ID and password through the automatic login procedure.

[사전 등록된 웹 서비스 패스워드 갱신 과정][Pre-registered web service password renewal process]

도 3 및 도 4를 참고하면, 자동 로그인 기능을 이용하여 웹 서비스 서버 사용자 바이오 인증을 하다가, 추후 웹 서비스 패스워드를 갱신하는 방법을 설명한다.Referring to FIG. 3 and FIG. 4, a method for renewing a web service password while performing a user authentication of a web service server using an automatic login function will be described.

사전에 사용자 패스워드 갱신이 필요한 해당 웹 서비스에 대한 '인증과정'을 수행한 상태에서 아래의 절차를 진행하게 된다.The following procedure is performed in the state that the 'authentication process' for the corresponding web service requiring the user password update is performed in advance.

사용자 PC(200)를 통해 웹 서비스 서버(400)에 접속하여 사용자 패스워드를 갱신한다(S300). 구체적으로, 사용자 PC(200)는 웹 서비스 서버(400)에 해당 웹 서비스의 사용자 패스워드 갱신을 요청한다. 웹 서비스 서버(400)는 패스워드 관리 모듈을 실행하여, 사용자 패스워드를 갱신한다. 그리고, 사용자 PC(200)로 사용자 패스워드 갱신 완료 메시지를 전송한다. And accesses the web service server 400 through the user PC 200 to update the user password (S300). Specifically, the user PC 200 requests the web service server 400 to update the user password of the corresponding web service. The web service server 400 executes the password management module to update the user password. Then, the user PC 200 transmits a user password update completion message.

사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)은 사용자 PC(200)로부터 갱신된 패스워드를 전달 받아, 기존의 패스워드를 파기하고 사용자 PC(200)의 보안 저장 공간(220)에 변경된 패스워드를 저장한다(S310).The second HSM access control module 230 of the user PC 200 receives the updated password from the user PC 200 and discards the existing password and stores the changed password in the secure storage space 220 of the user PC 200 (S310).

구체적으로, 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)로 해당 웹 서비스 선택 및 사용자 패스워드 갱신 실행을 요청한다(S311).Specifically, the second HSM access control module 230 of the user PC 200 requests the web service selection and the user password update execution (S311).

사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)은 갱신이 필요한 사용자 패스워드를 사용자 PC(200)에 요청한다(S312).The second HSM access control module 230 of the user PC 200 requests the user PC 200 for a user password that needs to be updated (S312).

사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)은 사용자 PC(200)로부터 갱신된 사용자 패스워드를 입력 받는다(S313).The second HSM access control module 230 of the user PC 200 receives the updated user password from the user PC 200 (S313).

사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)은 보안 저장 공간(220)에서 기존 패스워드를 파기한다(S314).The second HSM access control module 230 of the user PC 200 discards the existing password in the secure storage space 220 (S314).

사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)은 보안 저장 공간(220)에 변경된 패스워드를 저장한다(S315).The second HSM access control module 230 of the user PC 200 stores the changed password in the secure storage area 220 (S315).

지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)은 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)로부터 패스워드 갱신이 필요한 해당 웹 서비스 정보, 사용자 아이디 및 변경된 패스워드를 전달 받으면, 지문 스마트 카드(100)의 HSM 저장공간(110)에 저장된 개인키를 이용하여 해당 정보들을 암호화해서 관리 서버(300)로 전송한다(S320).When the first HSM access control module 120 of the fingerprint smart card 100 receives the corresponding web service information, the user ID, and the changed password that require password update from the second HSM access control module 230 of the user PC 200 , Encrypts the corresponding information using the private key stored in the HSM storage space 110 of the fingerprint smart card 100, and transmits the information to the management server 300 at step S320.

관리 서버(300)는 지문 스마트 카드(100)의 공개키를 이용하여 해당 내용을 복호화하고, 기존의 패스워드는 파기하며 갱신된 사용자 패스워드를 계정 관리 DB(330)에 저장 후 패스워드 변경 결과 메시지를 사용자 PC(200)로 전송한다(S330).The management server 300 decrypts the content using the public key of the fingerprint smart card 100, discards the existing password, stores the updated user password in the account management DB 330, To the PC 200 (S330).

상기와 같은 절차를 통해 사전에 등록된 웹 서비스의 패스워드를 안전하게 갱신할 수 있다.The password of the web service registered in advance can be securely updated through the above procedure.

본 발명의 실시 예인 패스워드 노출 없는 HSM 스마트 카드를 이용한 사용자 바이오 인증 시스템에 대해서 설명한다. 상기에서 설명한 내용과 중복되는 부분은 구체적인 설명을 생략한다.A user biometric authentication system using an HSM smart card without a password exposure according to an embodiment of the present invention will be described. A detailed description of the parts overlapping with those described above will be omitted.

도 4를 참고하면, 패스워드 노출 없는 HSM 스마트 카드를 이용한 사용자 바이오 인증 시스템은, 스마트 카드(100)에 저장된 HSM(Hardware Security Module) 기능의 소프트웨어를 사용자 PC(200)에 로딩시킨 후 인증 절차를 진행하는 HSM 스마트 카드를 이용한 사용자 바이오 인증 시스템으로서, 지문 스마트 카드(100), 사용자 PC(200), 관리 서버(300) 및 웹 서비스 서버(400)를 포함한다.Referring to FIG. 4, the user biometric authentication system using the HSM smart card without a password exposes the software of the HSM (Hardware Security Module) function stored in the smart card 100 to the user PC 200, A user PC 200, a management server 300 and a web service server 400. The fingerprint smart card 100 is a user authentication system using an HSM smart card.

이미 상기에서 살펴본 바와 같이 지문 스마트 카드(100)에는 제1 HSM 접근 제어 모듈(120)과 제2 HSM 접근 제어 모듈(230)이 저장되어 있으며, 제1 HSM 접근 제어 모듈(120)은 지문 스마트 카드(100)에서 동작하고, 제2 HSM 접근 제어 모듈(230)은 사용자 PC(200)에 로딩되어 동작한다.The first HSM access control module 120 and the second HSM access control module 230 are stored in the fingerprint smart card 100. The first HSM access control module 120 is a fingerprint smart card And the second HSM access control module 230 is loaded into the user PC 200 and operates.

[자동 로그인 기능을 사용할 웹 서비스 신규 등록 기능][Web service new registration function to use automatic login function]

지문 스마트 카드(100)는 HSM 저장공간(110)과 제1 HSM 접근 제어 모듈(120)을 구비한다. 물론, 제2 HSM 접근 제어 모듈(230)도 저장되어 있으나, 사용자 PC(200)로 로딩되어 사용자 PC(200)에서 동작한다.The fingerprint smart card 100 includes an HSM storage space 110 and a first HSM access control module 120. Of course, although the second HSM access control module 230 is stored, the second HSM access control module 230 is loaded into the user PC 200 and operates in the user PC 200.

HSM 저장공간(110)은 개인키(Private Key)를 저장하는 공간이다.The HSM storage space 110 is a space for storing a private key.

제1 HSM 접근 제어 모듈(120)은 지문 일치 여부를 확인하여 사용자 인증에 성공하면 사용자 PC(200)에 제2 HSM 접근 제어 모듈(230)을 로딩시키며, 상기 HSM 저장공간(110)에 저장된 개인키를 이용하여 하기 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)로부터 전달 받은 정보를 암호화 및 복호화를 수행한다.The first HSM access control module 120 loads the second HSM access control module 230 to the user PC 200 when the user authentication is successful by confirming whether the fingerprint matches or not, And encrypts and decrypts information received from the second HSM access control module 230 of the user PC 200 using the key.

여기서, 지문 스마트 카드(100)는 카드 리더기의 USB 인터페이스를 통해 하기의 사용자 PC(200)에 연결된다.Here, the fingerprint smart card 100 is connected to the following user PC 200 through the USB interface of the card reader.

사용자 PC(200)는 사용자 인증 모듈(210), 보안 저장 공간(220) 및 제2 HSM 접근 제어 모듈(230)을 구비한다.The user PC 200 includes a user authentication module 210, a secure storage area 220, and a second HSM access control module 230.

사용자 인증 모듈(210)은 관리 서버(300)와 SSL(Secure Sockets Layer) 통신을 수행한다. 즉, SSL를 통해 사용자 인증 모듈(210)과 웹 서비스 서버 접근 모듈(310) 간에 암호화된 데이터를 전송할 수 있다. 이를 통해 솔트(salt)의 유출을 방지할 수 있다.The user authentication module 210 performs SSL (Secure Sockets Layer) communication with the management server 300. That is, encrypted data can be transmitted between the user authentication module 210 and the web service server access module 310 through SSL. This can prevent salt spills.

보안 저장 공간(220)은 자동 로그인 기능을 사용할 웹 서비스 정보와 사용자 아이디 및 패스워드를 저장한다.The secure storage area 220 stores web service information and a user ID and a password to be used for the automatic login function.

제2 HSM 접근 제어 모듈(230)은 사용자로부터 상기 자동 로그인 기능을 사용할 웹 서비스 정보와 사용자 아이디 및 패스워드를 입력 받으면 상기 보안 저장 공간(220)에 저장하고, 지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)로 전송한다.When the second HSM access control module 230 receives the web service information and the user ID and password to use the automatic login function from the user, the second HSM access control module 230 stores the user ID and the password in the secure storage space 220, To the access control module 120.

여기서, 제2 HSM 접근 제어 모듈(230)은 지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)이 실행되고 사용자 지문 인증에 성공하면, 카드 리더기의 USB 인터페이스를 통해 사용자 PC(200)로 로딩되어 실행된다.If the first HSM access control module 120 of the fingerprint smart card 100 is executed and the user fingerprint authentication is successfully performed, the second HSM access control module 230 may access the user PC 200 through the USB interface of the card reader, Lt; / RTI >

로딩 된 후 지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)과 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)은 각각 별개로 실행된다.The first HSM access control module 120 of the loaded fingerprint smart card 100 and the second HSM access control module 230 of the user PC 200 are executed separately.

관리 서버(300)는 웹 서비스 서버 접근 모듈(310), 인증 모듈(320) 및 계정 관리 DB(330)를 구비한다.The management server 300 includes a web service server access module 310, an authentication module 320, and an account management DB 330.

웹 서비스 서버 접근 모듈(310)은 사용자 PC(200)의 사용자 인증 모듈(210)과 SSL 통신을 수행하고, 웹 서비스 서버(400)와 SSL 통신을 수행한다.The web service server access module 310 performs SSL communication with the user authentication module 210 of the user PC 200 and performs SSL communication with the web service server 400.

인증 모듈(330)은 지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)이 개인키를 이용해 암호화하여 전송하는 자동 로그인 기능을 사용할 웹 서비스 정보와 사용자 아이디 및 패스워드를 전송받으면, 지문 스마트 카드의 공개키(Public Key)를 이용해 복호화하여 새로 추가된 웹 서비스 정보를 하기의 계정 관리 DB(330)에 저장한다.When the first HSM access control module 120 of the fingerprint smart card 100 encrypts and transmits the web service information and the user ID and the password to use the automatic login function, the authentication module 330 receives the user ID and the password, And stores the newly added web service information in the following account management DB 330. [

계정 관리 DB(330)는 인증 모듈(320)로부터 전달 받은 정보를 저장한다.The account management DB 330 stores information received from the authentication module 320.

웹 서비스 서버(400)는 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)과 상기 관리 서버(300)의 인증 모듈(320) 간에 사용자 인증이 성공하면 상기 사용자 PC(200)로 웹 서비스를 제공한다.The web service server 400 transmits the web service to the user PC 200 when the user authentication is successful between the second HSM access control module 230 of the user PC 200 and the authentication module 320 of the management server 300. [ Lt; / RTI >

지문 스마트 카드(100)의 MCU(Micro Controller Unit)는 사용자 PC(200)로부터 HSM 접근 제어 모듈의 실행 요청을 수신하면, 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)을 실행시키며, 제1 HSM 접근 제어 모듈(120)은 사용자 PC(200)에 사용자의 지문 인증을 요청하는 메시지를 전송한다. MCU는 도면에 도시하지 않았으나, 지문 스마트 카드(100) 내에서 각종 기능 제어를 수행하는 것으로, 당업자에게 자명한 사항이다.The microcontroller unit (MCU) of the fingerprint smart card 100 executes the first HSM access control module 120 of the smart card 100 upon receiving the execution request of the HSM access control module from the user PC 200, The first HSM access control module 120 transmits a message requesting the user's fingerprint authentication to the user PC 200. [ Although not shown in the drawing, the MCU performs various functions in the fingerprint smart card 100 and is obvious to those skilled in the art.

제1 HSM 접근 제어 모듈(120)은 사용자가 지문 스마트 카드(100)을 통해 입력한 지문을 전달 받으면, 지문 스마트 카드(100)에 등록된 지문과 비교하여 일치 여부를 확인하고, 지문이 일치하는 경우 제2 HSM 접근 제어 모듈(230)을 사용자 PC(200)에 로딩시킨다.The first HSM access control module 120 receives a fingerprint inputted by the user through the fingerprint smart card 100 and verifies whether or not the fingerprint matches the fingerprint registered in the fingerprint smart card 100, The second HSM access control module 230 is loaded into the user PC 200.

사용자 PC(200)에 로딩된 제2 HSM 접근 제어 모듈(230)은 상기 보안 저장 공간(220)에 저장된 자동 로그인 기능을 사용할 웹 서비스 정보와 사용자 아이디 및 패스워드를 지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)로 전송한다.The second HSM access control module 230 loaded in the user PC 200 transmits the web service information and the user ID and password to be used in the automatic log-in function stored in the secure storage space 220 to the first To the HSM access control module 120.

지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)은 상기 HSM 저장공간(110)에 저장된 개인키를 이용하여 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)로부터 전달 받은 내용을 암호화하고, 암호화 한 내용을 상기 관리 서버(300)로 전송한다.The first HSM access control module 120 of the fingerprint smart card 100 transmits the contents received from the second HSM access control module 230 of the user PC 200 using the private key stored in the HSM storage space 110 And transmits the encrypted content to the management server 300. [

관리 서버(300)의 인증 모듈(320)은 사용자 정보 기반 인증을 수행하여, 인증에 성공하면 지문 스마트 카드(100)의 공개키를 이용하여 복호화하고, 계정 관리 DB(330)에 자동 로그인 기능을 사용할 새롭게 추가된 웹 서비스 정보를 저장한 후 사용자 PC(200)로 신규 등록 결과 확인 메시지를 전송한다.The authentication module 320 of the management server 300 performs user information based authentication and if the authentication is successful, the authentication module 320 decrypts the user information using the public key of the fingerprint smart card 100, And transmits a new registration result confirmation message to the user PC 200 after storing the newly added web service information to be used.

[웹 서비스 서버 사용자 바이오 인증 기능][Web service server user biometric authentication function]

사용자 PC(200)에 로딩된 제2 HSM 접근 제어 모듈(230)은 상기 관리 서버(300)로 제2 HSM 접근 제어 모듈 아이디를 전송하여 사용자의 로그인 가능한 웹 서비스 목록을 요청한다.The second HSM access control module 230 loaded in the user PC 200 transmits the second HSM access control module ID to the management server 300 to request the user's loginable web service list.

관리 서버(300)의 인증 모듈(320)은 제2 HSM 접근 제어 모듈 아이디를 확인하여 등록된 사용자인지 판단 후, 등록되지 않은 사용자이면 상기 제2 HSM 접근 제어 모듈(230)로 거절 메시지를 전송한다.The authentication module 320 of the management server 300 determines whether the user is a registered user by checking the second HSM access control module ID and transmits a reject message to the second HSM access control module 230 if the user is an unregistered user .

등록된 사용자이면 계정 관리 DB(330)에서 사용자의 웹 서비스 정보 및 아이디를 조회하고 솔트값을 생성하며, 사용자 웹 서비스 정보, 서비스 별 아이디, 패스워드, 솔트값, 해시 함수 반복 횟수를 지문 스마트 카드(100)의 공개키로 암호화 한 후 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)로 전송한다.If the user is a registered user, the web service information and the ID of the user are inquired in the account management DB 330 to generate a salt value, and the user web service information, ID, password, salt value, 100 and transmits the encrypted data to the second HSM access control module 230 of the user PC 200.

지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)은 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)로부터 상기 관리 서버(300)가 전송한 암호화 된 내용을 수신하면, HSM 저장공간(110)에 저장된 개인키를 이용하여 해당 내용을 복호화하고, 복호화된 사용자 별 웹 서비스 정보, 서비스 별 아이디, 패스워드, 솔트값, 해시 함수 반복 횟수를 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)로 전송한다.When the first HSM access control module 120 of the fingerprint smart card 100 receives the encrypted contents transmitted from the second HSM access control module 230 of the user PC 200 by the management server 300, And decrypts the decrypted content by using the private key stored in the storage space 110 and transmits the decrypted web service information for each user, the ID, password, salt value, and hash function repetition number for each service to the second HSM access To the control module (230).

사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)은 보안 저장 공간(220)에 사용자 별 웹 서비스 정보, 서비스 별 아이디 및 패스워드를 저장한 후 사용자 PC(200)로 웹 서비스 선택을 요청하고, 사용자 PC(200)로부터 접속을 원하는 웹 서비스를 선택받으면, 해당 웹 서비스 정보, 사용자 아이디, 패스워드 정보와 솔트값 및 해시 함수 반복 횟수를 적용하여 솔팅(Salting)과 키 스트레칭(key stretching)을 반복 수행함으로써 다이제스트(Digest)를 생성한 후 생성된 다이제스트를 관리 서버(300)로 전송한다.The second HSM access control module 230 of the user PC 200 stores the web service information for each user and the ID and password for each service in the secure storage space 220 and then requests the user PC 200 to select a web service , Salting and key stretching are repeated by applying the web service information, the user ID, the password information, the salt value, and the hash function repetition times when the web service desired to access is selected from the user PC 200 And transmits the digest generated to the management server 300. [

관리 서버(300)는 계정 관리 DB(330)에 저장되어 있는 웹 서비스 정보, 사용자 아이디, 패스워드 정보와 서버에서 생성한 솔트값 및 해시 함수 반복 횟수를 적용하여 솔팅과 키 스트레칭을 반복 수행함으로써 다이제스트를 생성한 후 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)로부터 수신한 다이제스트와 비교하여 사용자 인증을 수행한다.The management server 300 applies the digesting and key stretching by repeatedly applying the web service information, the user ID and the password information stored in the account management DB 330, the salt value generated by the server, and the repetition frequency of the hash function, And performs a user authentication by comparing with the digest received from the second HSM access control module 230 of the user PC 200. [

사용자 인증에 성공하면, 관리 서버(300)는 웹 서비스 서버(400)가 사용자 PC(200)로 해당 웹 서비스를 제공하도록 한다.If the user authentication is successful, the management server 300 causes the web service server 400 to provide the corresponding web service to the user PC 200.

[사전 등록된 웹 서비스 패스워드 갱신 기능][Pre-registered Web service password update function]

사용자 PC(200)에 로딩된 제2 HSM 접근 제어 모듈(230)은 사용자 PC(200)에 갱신이 필요한 사용자 패스워드를 요청하여 사용자 PC(200)로부터 갱신된 사용자 패스워드를 전송 받으면, 기존의 패스워드를 파기하고 보안 저장 공간(220)에 변경된 패스워드를 저장한다.The second HSM access control module 230 loaded in the user PC 200 requests the user PC 200 for a user password to be updated and receives the updated user password from the user PC 200, And stores the changed password in the secure storage space 220. [

그런 다음, 제2 HSM 접근 제어 모듈(230)은 상기 지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)로 패스워드 갱신이 필요한 해당 웹 서비스 정보, 사용자 아이디 및 변경된 패스워드를 전송한다.Then, the second HSM access control module 230 transmits corresponding web service information, a user ID, and a changed password that require password update to the first HSM access control module 120 of the fingerprint smart card 100.

지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)은 HSM 저장공간(110)에 저장된 개인키로 해당 웹 서비스 정보, 사용자 아이디 및 변경된 패스워드를 암호화하여 상기 관리 서버(300)로 전송한다.The first HSM access control module 120 of the fingerprint smart card 100 encrypts the corresponding web service information, the user ID, and the changed password with the private key stored in the HSM storage space 110, and transmits the encrypted web service information, the user ID and the changed password to the management server 300.

관리 서버(300)는 지문 스마트 카드(100)의 공개키를 이용하여 해당 내용을 복호화하고, 기존의 패스워드를 파기한 후 갱신된 사용자 패스워드를 계정 관리 DB(330)에 저장하며, 사용자 PC(200)로 패스워드 변경 결과 메시지를 전송한다.The management server 300 decrypts the content using the public key of the fingerprint smart card 100, discards the existing password, stores the updated user password in the account management DB 330, ) To send the password change result message.

이상과 같이 본 발명은 지문 스마트 카드의 제1 HSM 접근 제어 모듈을 통해 사용자 지문 인증에 성공하면 스마트 카드 내에 있는 제2 HSM 접근 제어 모듈을 사용자 PC로 로딩하고, 사용자 PC에 로딩된 제2 HSM 접근 제어 모듈을 통해 사용자의 아이디와 패스워드를 노출하지 않으면서 웹 서비스 신규 등록 및 접속을 원하는 웹 서비스에 자동 로그인을 할 수가 있다.As described above, according to the present invention, when the user fingerprint authentication is successfully performed through the first HSM access control module of the fingerprint smart card, the second HSM access control module in the smart card is loaded into the user PC, and the second HSM access It is possible to automatically log in to the web service to register and access the web service without exposing the user's ID and password through the control module.

본 발명은 상기한 특정의 바람직한 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형 실시가 가능한 것은 물론이고, 그와 같은 변경은 청구범위 기재의 범위 내에 있게 되는 것임은 자명하다.It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims and their equivalents. Obviously, such modifications are intended to be within the scope of the claims.

100...스마트 카드
110...HSM 저장 공간
120...제1 HSM 접근 제어 모듈
200...사용자 PC
210...사용자 인증 모듈
220...보안 저장 공간
230...제2 HSM 접근 제어 모듈
300...관리 서버
310...웹 서비스 서버 접근 모듈
320...인증 모듈
330...계정 관리 DB
400...웹 서비스 서버
100 ... smart card
110 ... HSM storage space
120 ... first HSM access control module
200 ... User PC
210 ... user authentication module
220 ... secure storage space
230 ... second HSM access control module
300 ... management server
310 ... Web Services Server Access Module
320 ... authentication module
330 ... Account Management DB
400 ... Web Services Server

Claims (9)

스마트 카드에 저장된 HSM(Hardware Security Module) 기능의 소프트웨어를 사용자 PC에 로딩시킨 후 인증 절차를 진행하는 HSM 스마트 카드를 이용한 사용자 바이오 인증 방법으로서,
제1 HSM 접근 제어 모듈과 제2 HSM 접근 제어 모듈을 저장하는 지문 스마트 카드를 카드 리더기의 USB 인터페이스를 통해 사용자 PC에 연결하고, 지문 스마트 카드에 사용자의 지문을 입력하여 사용자 인증에 성공하면, 지문 스마트 카드의 제2 HSM 접근 제어 모듈을 사용자 PC에 로딩하는 단계(S100);
사용자 PC의 제2 HSM 접근 제어 모듈은 자동 로그인 기능을 사용할 웹 서비스 정보의 입력을 사용자 PC에 요청하고, 사용자 PC로부터 웹 서비스 정보, 사용자 아이디 및 패스워드를 입력 받아 보안 저장 공간에 해당 내용을 저장하는 단계(S110);
지문 스마트 카드의 제1 HSM 접근 제어 모듈은 신규 등록이 필요한 해당 웹 서비스 정보, 사용자 아이디 및 패스워드를 사용자 PC의 제2 HSM 접근 제어 모듈로부터 전달 받으면, 지문 스마트 카드의 HSM 저장공간에 저장된 개인키(Private Key)로 해당 내용을 암호화하여 관리 서버에 전송하는 단계(S120);
관리 서버는 사용자 정보에 기반하여 2차 인증을 수행 후 지문 스마트 카드의 공개키(Public Key)로 해당 내용을 복호화하여, 해당 사용자의 새롭게 추가된 웹 서비스 정보를 계정 관리 DB에 저장하고, 신규 등록 결과 확인 메시지를 사용자 PC에 전송하는 단계(S130);
사용자 PC의 제2 HSM 접근 제어 모듈은 사용자 PC로부터 로그인 가능한 웹 서비스 목록 조회를 요청 받으면, 관리 서버에 제2 HSM 접근 제어 모듈의 아이디를 전송하여 해당 사용자의 로그인 가능한 웹 서비스 목록을 요청하는 단계(S210);
관리 서버는 수신한 제2 HSM 접근 제어 모듈의 아이디를 이용하여 등록된 사용자인지 확인 후 솔트값을 생성하여 해당 사용자의 웹 서비스 정보, 서비스 별 아이디, 패스워드 및 해시 함수 반복 회수와 함께 지문 스마트 카드의 공개키로 암호화해서 사용자 PC의 제2 HSM 접근 제어 모듈로 전송하는 단계(S220);
지문 스마트 카드의 제1 HSM 접근 제어 모듈은 사용자 PC의 제2 HSM 접근 제어 모듈로부터 지문 스마트 카드의 공개키 기반 암호화된 내용을 전송받으면, 지문 스마트 카드 의 HSM 저장공간에 저장된 개인키를 이용하여 해당 내용을 복호화하고, 복호화된 사용자 웹 서비스 정보, 서비스 별 아이디, 패스워드, 솔트값, 해시 함수 반복 횟수를 사용자 PC의 제2 HSM 접근 제어 모듈로 전송하는 단계(S230);
사용자 PC의 제2 HSM 접근 제어 모듈은 사용자 PC의 보안 저장 공간에 사용자 웹 서비스 정보, 서비스 별 아이디, 패스워드, 솔트값 및 해시 함수 반복 횟수를 저장하고, 사용자 PC로부터 접속을 원하는 웹 서비스를 선택받으면, 사용자 PC의 보안 저장 공간에 저장된 해당 웹 서비스 정보, 사용자 아이디, 패스워드 정보와 솔트값 및 해시 함수 반복 횟수를 적용하여 솔팅(Salting)과 키 스트레칭(key stretching)을 반복 수행함으로써 다이제스트(Digest)를 생성한 후 생성된 다이제스트를 관리 서버로 전송하는 단계(S240);
관리 서버는 계정 관리 DB에 저장되어 있는 웹 서비스 정보, 사용자 아이디, 패스워드 정보와 서버에서 생성한 솔트값 및 해시 함수 반복 횟수를 적용하여 솔팅과 키 스트레칭을 반복 수행함으로써 다이제스트를 생성한 후 사용자 PC의 제2 HSM 접근 제어 모듈로부터 수신한 다이제스트와 비교하여 사용자 인증을 수행하는 단계(S250); 및
관리 서버는 사용자 인증에 성공하면, 웹 서비스 서버가 사용자 PC로 해당 웹 서비스를 제공하도록 하는 단계(S260)를 포함하는 것을 특징으로 하는 패스워드 노출 없는 HSM 스마트 카드를 이용한 사용자 바이오 인증 방법.
1. A method for authenticating a user using an HSM smart card for loading an HSM (Hardware Security Module) function software stored in a smart card into a user PC,
The fingerprint smart card storing the first HSM access control module and the second HSM access control module is connected to the user PC through the USB interface of the card reader and if the user authentication is successful by inputting the fingerprint of the user to the fingerprint smart card, Loading the second HSM access control module of the smart card into the user PC (S100);
The second HSM access control module of the user PC requests the user PC to input the web service information to use the automatic login function, receives the web service information, the user ID and the password from the user PC, and stores the contents in the secure storage space Step S110:
When the first HSM access control module of the fingerprint smart card receives the corresponding web service information, user ID, and password required for new registration from the second HSM access control module of the user PC, the first HSM access control module of the fingerprint smart card stores the private key Encrypting the content with a private key and transmitting the encrypted content to a management server (S120);
The management server performs the secondary authentication based on the user information, decrypts the corresponding content using the public key of the fingerprint smart card, stores the newly added web service information of the user in the account management DB, Transmitting a result confirmation message to the user PC (S130);
When the second HSM access control module of the user PC requests the log-inable web service list inquiry from the user PC, the second HSM access control module transmits the ID of the second HSM access control module to the management server and requests the log- S210);
The management server checks whether the user is a registered user by using the ID of the received second HSM access control module, generates a salt value, and generates a salt value of the second fingerprint of the fingerprint smart card together with the web service information of the user, ID, password, Encrypting the encrypted data using the public key and transmitting the encrypted data to the second HSM access control module of the user PC (S220);
When the first HSM access control module of the fingerprint smart card receives the public key based encrypted contents of the fingerprint smart card from the second HSM access control module of the user PC, the first HSM access control module of the fingerprint smart card uses the private key stored in the HSM storage space of the fingerprint smart card (S230) of decrypting the decrypted user web service information, the ID for each service, the password, the salt value, and the number of repetitions of the hash function to the second HSM access control module of the user PC;
The second HSM access control module of the user PC stores the user web service information, the ID for each service, the password, the salt value, and the number of iterations of the hash function in the secure storage space of the user PC. When the user selects a web service to access from the user PC , Digesting is performed by repeating salting and key stretching by applying corresponding web service information, user ID, password information, salt value and hash function repetition number stored in the secure storage space of the user PC Transmitting the created digest to the management server (S240);
The management server generates the digest by repeatedly performing the salting and the key stretching by applying the web service information, the user ID and the password information stored in the account management DB, the salt value generated by the server, and the iteration number of the hash function, Performing a user authentication by comparing with a digest received from the second HSM access control module (S250); And
And a step (S260) of causing the web service server to provide the corresponding web service to the user PC when the user authentication is successfully performed by the management server.
청구항 1에 있어서,
상기 단계(S100)는,
지문 스마트 카드를 카드 리더기의 USB 인터페이스를 통해 사용자 PC에 연결하는 단계(S101);
지문 스마트 카드의 제2 HSM 접근 제어 모듈을 사용자 PC에 로딩시키기 위한 실행 요청 메시지를 사용자 PC에서 지문 스마트 카드의 MCU(Micro Controller Unit)로 전송하는 단계(S102);
지문 스마트 카드의 MCU가 제1 HSM 접근 제어 모듈을 실행시키는 단계(S103);
지문 스마트 카드의 제1 HSM 접근 제어 모듈은 사용자 PC로 사용자의 지문 입력을 요청하는 단계(S104);
사용자는 지문 스마트 카드에 본인의 지문을 직접 입력하는 단계(S105);
지문 스마트 카드의 MCU는 입력된 사용자의 지문을 지문 스마트 카드의 제1 HSM 접근 제어 모듈에 전달하는 단계(S106);
지문 스마트 카드의 제1 HSM 접근 제어 모듈은 지문 일치 여부를 확인하여, 불일치하면 사용자 PC에 지문을 다시 입력할 것을 요청하는 단계(S107);
지문 스마트 카드의 제1 HSM 접근 제어 모듈은 지문이 일치하면, 사용자 인증에 성공한 것으로 판단하는 단계(S108); 및
사용자 인증에 성공한 것으로 판단되면, 지문 스마트 카드의 제2 HSM 접근 제어 모듈을 사용자 PC에 로딩하는 단계(S109)로 구성되는 것을 특징으로 하는 패스워드 노출 없는 HSM 스마트 카드를 이용한 사용자 바이오 인증 방법.
The method according to claim 1,
In the step S100,
Connecting the fingerprint smart card to the user PC through the USB interface of the card reader (S101);
Transmitting an execution request message for loading the second HSM access control module of the fingerprint smart card to the user PC from the user PC to the MCU (Micro Controller Unit) of the fingerprint smart card (S102);
(S103) the MCU of the fingerprint smart card executing the first HSM access control module;
The first HSM access control module of the fingerprint smart card requests the user's fingerprint input to the user PC (S104);
The user directly inputs his / her fingerprint to the fingerprint smart card (S105);
The MCU of the fingerprint smart card transmits the fingerprint of the inputted user to the first HSM access control module of the fingerprint smart card (S 106);
The first HSM access control module of the fingerprint smart card checks whether the fingerprint is matched, and if the fingerprint does not match, requesting the user to input the fingerprint again (S107);
The first HSM access control module of the fingerprint smart card determines that the user authentication is successful (S108) if the fingerprint matches; And
And loading the second HSM access control module of the fingerprint smart card into the user PC if it is determined that the user authentication is successful (S109).
청구항 1에 있어서,
상기 단계(S260) 이후,
사용자 PC를 통해 웹 서비스 서버에 접속하여 사용자 패스워드를 갱신하는 단계(S300);
사용자 PC의 제2 HSM 접근 제어 모듈은 사용자 PC로부터 갱신된 패스워드를 전달 받아, 기존의 패스워드를 파기하고 사용자 PC의 보안 저장 공간에 변경된 패스워드를 저장하는 단계(S310);
지문 스마트 카드의 제1 HSM 접근 제어 모듈은 사용자 PC의 제2 HSM 접근 제어 모듈로부터 패스워드 갱신이 필요한 해당 웹 서비스 정보, 사용자 아이디 및 변경된 패스워드를 전달 받으면, 지문 스마트 카드의 HSM 저장공간에 저장된 개인키를 이용하여 해당 정보들을 암호화해서 관리 서버로 전송하는 단계(S320); 및
관리 서버는 지문 스마트 카드의 공개키를 이용하여 해당 내용을 복호화하고, 기존의 패스워드는 파기하며 갱신된 사용자 패스워드를 저장 후 패스워드 변경 결과 메시지를 사용자 PC로 전송하는 단계(S330)를 더 포함하는 것을 특징으로 하는 패스워드 노출 없는 HSM 스마트 카드를 이용한 사용자 바이오 인증 방법.
The method according to claim 1,
After the step S260,
A step S300 of accessing the web service server through the user PC and updating the user password;
The second HSM access control module of the user PC receives the updated password from the user PC, discards the existing password, and stores the changed password in the secure storage space of the user PC (S310);
When the first HSM access control module of the fingerprint smart card receives the corresponding web service information, the user ID, and the changed password that require password update from the second HSM access control module of the user PC, the first HSM access control module transmits the private key stored in the HSM storage space of the fingerprint smart card (S320) encrypting the corresponding information using the server and transmitting the encrypted information to the management server. And
The management server further includes a step (S330) of decrypting the content using the public key of the fingerprint smart card, discarding the existing password, storing the updated user password, and transmitting the password change result message to the user PC User biometric authentication method using HSM smart card without password exposure.
청구항 3에 있어서,
상기 단계(S310)는,
사용자 PC의 제2 HSM 접근 제어 모듈로 해당 웹 서비스 선택 및 사용자 패스워드 갱신 실행을 요청하는 단계(S311);
사용자 PC의 제2 HSM 접근 제어 모듈은 갱신이 필요한 사용자 패스워드를 사용자 PC에 요청하는 단계(S312);
사용자 PC의 제2 HSM 접근 제어 모듈은 사용자 PC로부터 갱신된 사용자 패스워드를 입력 받는 단계(S313);
사용자 PC의 제2 HSM 접근 제어 모듈은 보안 저장 공간에서 기존 패스워드를 파기하는 단계(S314); 및
사용자 PC의 제2 HSM 접근 제어 모듈은 보안 저장 공간에 변경된 패스워드를 저장하는 단계(S315)로 구성되는 것을 특징으로 하는 패스워드 노출 없는 HSM 스마트 카드를 이용한 사용자 바이오 인증 방법.
The method of claim 3,
In the step S310,
Requesting the second HSM access control module of the user PC to select a corresponding web service and execute a user password update (S311);
The second HSM access control module of the user PC requests the user PC to update the user password (S312);
The second HSM access control module of the user PC receives the updated user password from the user PC (S313);
The second HSM access control module of the user PC destroys the existing password in the secure storage space (S314); And
And the second HSM access control module of the user PC stores the changed password in the secure storage space (S315).
스마트 카드에 저장된 HSM(Hardware Security Module) 기능의 소프트웨어를 사용자 PC에 로딩시킨 후 인증 절차를 진행하는 HSM 스마트 카드를 이용한 사용자 바이오 인증 시스템으로서,
개인키(Private Key)를 저장하는 HSM 저장공간(110)과, 지문 일치 여부를 확인하여 사용자 인증에 성공하면 사용자 PC(200)에 제2 HSM 접근 제어 모듈(230)을 로딩시키며, 상기 HSM 저장공간(110)에 저장된 개인키를 이용하여 하기 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)로부터 전달 받은 정보를 암호화 및 복호화를 수행하는 제1 HSM 접근 제어 모듈(120)을 구비하는 지문 스마트 카드(100) - 지문 스마트 카드(100)는 카드 리더기의 USB 인터페이스를 통해 하기의 사용자 PC(200)에 연결되며, 지문 스마트 카드(100)에는 사전에 제1 HSM 접근 제어 모듈(120)과 제2 HSM 접근 제어 모듈(230)이 저장되어 있고, 제2 HSM 접근 제어 모듈(230)은 사용자 PC(200)로 로딩되어 동작함 -;
하기의 관리 서버(300)와 SSL(Secure Sockets Layer) 통신을 수행하는 사용자 인증 모듈(210)과, 자동 로그인 기능을 사용할 웹 서비스 정보와 사용자 아이디 및 패스워드를 저장하는 보안 저장 공간(220)과, 사용자로부터 상기 자동 로그인 기능을 사용할 웹 서비스 정보와 사용자 아이디 및 패스워드를 입력 받으면 상기 보안 저장 공간(220)에 저장하고, 상기 지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)로 전송하는 제2 HSM 접근 제어 모듈(230)을 구비하는 사용자 PC(200) - 제2 HSM 접근 제어 모듈(230)은 상기 지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)이 실행되면 카드 리더기의 USB 인터페이스를 통해 사용자 PC(200)로 로딩되어 실행되는 것으로, 로딩 된 후 지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)과 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)은 각각 별개로 실행됨 -;
상기 사용자 PC(200)의 사용자 인증 모듈(210)과 SSL 통신을 수행하고, 웹 서비스 서버(400)와 SSL 통신을 수행하는 웹 서비스 서버 접근 모듈(310)과, 상기 지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)이 개인키를 이용해 암호화하여 전송하는 자동 로그인 기능을 사용할 웹 서비스 정보와 사용자 아이디 및 패스워드를 전송받으면, 지문 스마트 카드의 공개키(Public Key)를 이용해 복호화하여 새로 추가된 웹 서비스 정보를 하기의 계정 관리 DB(330)에 저장하는 인증 모듈(320)과, 상기 인증 모듈(320)로부터 전달 받은 정보를 저장하는 계정 관리 DB(330)를 구비하는 관리 서버(300); 및
상기 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)과 상기 관리 서버(300)의 인증 모듈(320) 간에 사용자 인증이 성공하면 상기 사용자 PC(200)로 웹 서비스를 제공하는 웹 서비스 서버(400)를 포함하는 것을 특징으로 하는 패스워드 노출 없는 HSM 스마트 카드를 이용한 사용자 바이오 인증 시스템.
A user biometric authentication system using an HSM smart card that loads software of a HSM (Hardware Security Module) function stored in a smart card on a user PC and then performs an authentication procedure,
The second HSM access control module 230 is loaded in the user PC 200 when the user authentication is successful by confirming whether or not the fingerprint matches with the fingerprint and storing the private key in the HSM storage space 110, And a first HSM access control module 120 for encrypting and decrypting information received from the second HSM access control module 230 of the user PC 200 using the private key stored in the space 110 The fingerprint smart card 100 is connected to the user PC 200 through the USB interface of the card reader and the first HSM access control module 120 is connected to the fingerprint smart card 100 in advance. The second HSM access control module 230 is loaded into the user PC 200, and the second HSM access control module 230 is loaded into the user PC 200;
A user authentication module 210 for performing SSL (Secure Sockets Layer) communication with the following management server 300, a secure storage space 220 for storing Web service information, a user ID and a password to be used for the automatic login function, When the web service information and the user ID and password to use the automatic login function are inputted from the user, the user ID and the password are stored in the secure storage space 220 and transmitted to the first HSM access control module 120 of the fingerprint smart card 100 When the first HSM access control module 120 of the fingerprint smart card 100 is executed, the user PC 200 having the second HSM access control module 230 - the second HSM access control module 230 - The first HSM access control module 120 of the fingerprint smart card 100 and the second HSM access control module of the user PC 200 after being loaded into the user PC 200 via the USB interface of the user PC 200 230) Run separately;
A web service server access module 310 for performing SSL communication with the user authentication module 210 of the user PC 200 and performing SSL communication with the web service server 400, When the first HSM access control module 120 receives the web service information and the user ID and the password to use the automatic login function for encrypting and transmitting using the private key, the first HSM access control module 120 decrypts using the public key of the fingerprint smart card, A management server 300 having an authentication module 320 for storing the added web service information in an account management DB 330 and an account management DB 330 for storing information received from the authentication module 320, ); And
If the user authentication is successful between the second HSM access control module 230 of the user PC 200 and the authentication module 320 of the management server 300, the web service server providing the web service to the user PC 200 (400). The user biometric authentication system using the HSM smart card without password exposures.
청구항 5에 있어서,
상기 지문 스마트 카드(100)의 MCU(Micro Controller Unit)는 사용자 PC(200)로부터 제2 HSM 접근 제어 모듈(230)의 실행 요청을 수신하면, 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)을 실행시키며, 제1 HSM 접근 제어 모듈(120)은 사용자 PC(200)에 사용자의 지문 인증을 요청하는 메시지를 전송하고,
제1 HSM 접근 제어 모듈(120)은 사용자가 지문 스마트 카드(100)을 통해 입력한 지문을 전달 받으면, 지문 스마트 카드(100)에 등록된 지문과 비교하여 일치 여부를 확인하고, 지문이 일치하는 경우 제2 HSM 접근 제어 모듈(230)을 사용자 PC(200)에 로딩시키는 것을 특징으로 하는 패스워드 노출 없는 HSM 스마트 카드를 이용한 사용자 바이오 인증 시스템.
The method of claim 5,
The microcontroller unit of the fingerprint smart card 100 receives a request for execution of the second HSM access control module 230 from the user PC 200 and transmits the request to the first HSM access control module of the smart card 100 120, and the first HSM access control module 120 transmits a message requesting the user's fingerprint authentication to the user PC 200,
The first HSM access control module 120 receives a fingerprint inputted by the user through the fingerprint smart card 100 and verifies whether or not the fingerprint matches the fingerprint registered in the fingerprint smart card 100, , The second HSM access control module (230) is loaded into the user PC (200).
청구항 6에 있어서,
상기 사용자 PC(200)에 로딩된 제2 HSM 접근 제어 모듈(230)은 상기 보안 저장 공간(220)에 저장된 자동 로그인 기능을 사용할 웹 서비스 정보와 사용자 아이디 및 패스워드를 지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)로 전송하고,
상기 지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)은 상기 HSM 저장공간(110)에 저장된 개인키를 이용하여 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)로부터 전달 받은 내용을 암호화하고, 암호화 한 내용을 상기 관리 서버(300)로 전송하며,
상기 관리 서버(300)의 인증 모듈(320)은 사용자 정보 기반 인증을 수행하여, 인증에 성공하면 지문 스마트 카드(100)의 공개키를 이용하여 복호화하고, 계정 관리 DB(330)에 자동 로그인 기능을 사용할 새롭게 추가된 웹 서비스 정보를 저장한 후 사용자 PC(200)로 신규 등록 결과 확인 메시지를 전송하는 것을 특징으로 하는 패스워드 노출 없는 HSM 스마트 카드를 이용한 사용자 바이오 인증 시스템.
The method of claim 6,
The second HSM access control module 230 loaded in the user PC 200 transmits the web service information and the user ID and password to be used in the automatic log-in function stored in the secure storage space 220 to the smart card 100 1 HSM access control module 120,
The first HSM access control module 120 of the fingerprint smart card 100 receives the first HSM access control module 230 from the second HSM access control module 230 of the user PC 200 using the private key stored in the HSM storage space 110 Encrypts the content, transmits the encrypted content to the management server 300,
The authentication module 320 of the management server 300 performs user information based authentication and decrypts the encrypted content using the public key of the fingerprint smart card 100 when the authentication is successful, And transmits a new registration result confirmation message to the user PC 200 after storing the newly added web service information to use the HSM smart card.
청구항 6에 있어서,
상기 사용자 PC(200)에 로딩된 제2 HSM 접근 제어 모듈(230)은 상기 관리 서버(300)로 제2 HSM 접근 제어 모듈 아이디를 전송하여 사용자의 로그인 가능한 웹 서비스 목록을 요청하고,
상기 관리 서버(300)의 인증 모듈(320)은 제2 HSM 접근 제어 모듈 아이디를 확인하여 등록된 사용자인지 판단 후, 등록되지 않은 사용자이면 상기 제2 HSM 접근 제어 모듈(230)로 거절 메시지를 전송하고, 등록된 사용자이면 계정 관리 DB(330)에서 사용자의 웹 서비스 정보 및 아이디를 조회하고 솔트값을 생성하며, 사용자 웹 서비스 정보, 서비스 별 아이디, 패스워드, 솔트값, 해시 함수 반복 횟수를 지문 스마트 카드(100)의 공개키로 암호화 한 후 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)로 전송하고,
상기 지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)은 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)로부터 상기 관리 서버(300)가 전송한 암호화 된 내용을 수신하면, HSM 저장공간(110)에 저장된 개인키를 이용하여 해당 내용을 복호화하고, 복호화된 사용자 별 웹 서비스 정보, 서비스 별 아이디, 패스워드, 솔트값, 해시 함수 반복 횟수를 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)로 전송하고,
상기 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)은 보안 저장 공간(220)에 사용자 별 웹 서비스 정보, 서비스 별 아이디 및 패스워드를 저장한 후 사용자 PC(200)로 웹 서비스 선택을 요청하고, 사용자 PC(200)로부터 접속을 원하는 웹 서비스를 선택받으면, 해당 웹 서비스 정보, 사용자 아이디, 패스워드 정보와 솔트값 및 해시 함수 반복 횟수를 적용하여 솔팅(Salting)과 키 스트레칭(key stretching)을 반복 수행함으로써 다이제스트(Digest)를 생성한 후 생성된 다이제스트를 관리 서버(300)로 전송하고,
상기 관리 서버(300)는 계정 관리 DB(330)에 저장되어 있는 웹 서비스 정보, 사용자 아이디, 패스워드 정보와 서버에서 생성한 솔트값 및 해시 함수 반복 횟수를 적용하여 솔팅과 키 스트레칭을 반복 수행함으로써 다이제스트를 생성한 후 사용자 PC(200)의 제2 HSM 접근 제어 모듈(230)로부터 수신한 다이제스트와 비교하여 사용자 인증을 수행하여, 사용자 인증에 성공하면, 웹 서비스 서버(400)가 사용자 PC(200)로 해당 웹 서비스를 제공하도록 하는 것을 특징으로 하는 패스워드 노출 없는 HSM 스마트 카드를 이용한 사용자 바이오 인증 시스템.
The method of claim 6,
The second HSM access control module 230 loaded in the user PC 200 transmits a second HSM access control module ID to the management server 300 to request a user's loginable web service list,
The authentication module 320 of the management server 300 determines whether the user is a registered user by confirming the second HSM access control module ID and transmits a reject message to the second HSM access control module 230 if the user is an unregistered user If the user is a registered user, the web service information and ID of the user are inquired in the account management DB 330 to generate a salt value, and the user web service information, ID, password, salt value, Encrypted with the public key of the card 100, and transmitted to the second HSM access control module 230 of the user PC 200,
When the first HSM access control module 120 of the fingerprint smart card 100 receives the encrypted contents transmitted from the second HSM access control module 230 of the user PC 200 by the management server 300, The ID of the service, the password, the salt value, and the number of hash function iterations of the decrypted user are stored in the second HSM of the user PC 200, Access control module 230,
The second HSM access control module 230 of the user PC 200 stores the web service information for each user and the ID and password for each service in the secure storage space 220 and then requests the user PC 200 to select the web service And selects a web service to be accessed from the user PC 200, salting and key stretching are performed by applying the corresponding web service information, user ID, password information, salt value and hash function repetition number And transmits the generated digest to the management server 300 after the digest is generated,
The management server 300 repeatedly performs the sorting and the key stretching by applying the web service information, the user ID and the password information stored in the account management DB 330, the salt value generated by the server, and the repetition frequency of the hash function, And then performs user authentication by comparing with the digest received from the second HSM access control module 230 of the user PC 200. If the user authentication is successful, And the web service is provided by the HSM smart card.
청구항 6에 있어서,
상기 사용자 PC(200)에 로딩된 제2 HSM 접근 제어 모듈(230)은 사용자 PC(200)에 갱신이 필요한 사용자 패스워드를 요청하여 사용자 PC(200)로부터 갱신된 사용자 패스워드를 전송 받으면, 기존의 패스워드를 파기하고 보안 저장 공간(220)에 변경된 패스워드를 저장하고, 상기 지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)로 패스워드 갱신이 필요한 해당 웹 서비스 정보, 사용자 아이디 및 변경된 패스워드를 전송하며,
상기 지문 스마트 카드(100)의 제1 HSM 접근 제어 모듈(120)은 HSM 저장공간(110)에 저장된 개인키로 해당 웹 서비스 정보, 사용자 아이디 및 변경된 패스워드를 암호화하여 상기 관리 서버(300)로 전송하고,
상기 관리 서버(300)는 지문 스마트 카드(100)의 공개키를 이용하여 해당 내용을 복호화하고, 기존의 패스워드를 파기한 후 갱신된 사용자 패스워드를 계정 관리 DB(330)에 저장하며, 사용자 PC(200)로 패스워드 변경 결과 메시지를 전송하는 것을 특징으로 하는 패스워드 노출 없는 HSM 스마트 카드를 이용한 사용자 바이오 인증 시스템.
The method of claim 6,
The second HSM access control module 230 loaded in the user PC 200 requests the user PC 200 to update the user password and receives the updated user password from the user PC 200, Stores the changed password in the secure storage space 220 and transmits corresponding web service information, a user ID, and a changed password that require password update to the first HSM access control module 120 of the fingerprint smart card 100 In addition,
The first HSM access control module 120 of the fingerprint smart card 100 encrypts the corresponding web service information, the user ID, and the changed password with the private key stored in the HSM storage space 110, and transmits the encrypted web service information, the user ID and the changed password to the management server 300 ,
The management server 300 decrypts the content using the public key of the fingerprint smart card 100, discards the existing password, stores the updated user password in the account management DB 330, 200), and transmits the password change result message to the user authentication system using the HSM smart card without exposing the password.
KR1020170060990A 2017-05-17 2017-05-17 User biometric authentication method and system using HSM smart card without password exposure KR101769861B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170060990A KR101769861B1 (en) 2017-05-17 2017-05-17 User biometric authentication method and system using HSM smart card without password exposure

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170060990A KR101769861B1 (en) 2017-05-17 2017-05-17 User biometric authentication method and system using HSM smart card without password exposure

Publications (1)

Publication Number Publication Date
KR101769861B1 true KR101769861B1 (en) 2017-08-21

Family

ID=59757454

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170060990A KR101769861B1 (en) 2017-05-17 2017-05-17 User biometric authentication method and system using HSM smart card without password exposure

Country Status (1)

Country Link
KR (1) KR101769861B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190044738A (en) * 2017-10-23 2019-05-02 조현준 The convenient and safe method to authenticate real name protecting personal information
KR101967380B1 (en) * 2017-10-31 2019-08-13 삼성에스디에스 주식회사 Key management system
US11405386B2 (en) 2018-05-31 2022-08-02 Samsung Electronics Co., Ltd. Electronic device for authenticating user and operating method thereof

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190044738A (en) * 2017-10-23 2019-05-02 조현준 The convenient and safe method to authenticate real name protecting personal information
KR102437187B1 (en) * 2017-10-23 2022-08-29 조현준 The convenient and safe method to authenticate real name protecting personal information
KR101967380B1 (en) * 2017-10-31 2019-08-13 삼성에스디에스 주식회사 Key management system
US11405386B2 (en) 2018-05-31 2022-08-02 Samsung Electronics Co., Ltd. Electronic device for authenticating user and operating method thereof

Similar Documents

Publication Publication Date Title
CN109951489B (en) Digital identity authentication method, equipment, device, system and storage medium
US10475273B2 (en) Architecture for access management
US10205711B2 (en) Multi-user strong authentication token
TWI667585B (en) Method and device for safety authentication based on biological characteristics
CN108809659B (en) Dynamic password generation method, dynamic password verification method, dynamic password system and dynamic password verification system
CN204948095U (en) Authenticate device and the mutual system guaranteeing between application program and user
JP5619007B2 (en) Apparatus, system and computer program for authorizing server operation
KR100786551B1 (en) Method for registering and certificating user of one time password by a plurality of mode and computer-readable recording medium where program executing the same method is recorded
US20170093920A1 (en) User authentication
JP2019508763A (en) Local device authentication
KR20180026508A (en) A security verification method based on biometric characteristics, a client terminal, and a server
EP2817934A1 (en) Controlling access
JP2006294035A (en) Method and system for authentication service using mobile device
KR101769861B1 (en) User biometric authentication method and system using HSM smart card without password exposure
US9977886B2 (en) Methods, apparatus and computer programs for entity authentication
KR101745919B1 (en) User authentication method and system using software-based HSM without password exposure
US20120005169A1 (en) Method and system for securing data
KR20120019916A (en) The certification process server and the method for graphic otp certification
KR101545897B1 (en) A server access control system by periodic authentification of the smart card
KR102117871B1 (en) A method and system for simple authentication through distributed storage of public key and private key elements
JP5919497B2 (en) User authentication system
KR20050070381A (en) Authentication system based on one-time password
JP2006277471A (en) Pseudo-biometrics authentication system, pseudo-biometrics authentication method and pseudo-biometrics authentication program
US11954672B1 (en) Systems and methods for cryptocurrency pool management
KR20110005611A (en) System and method for managing otp using user's media, otp device and recording medium

Legal Events

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