KR101745919B1 - User authentication method and system using software-based HSM without password exposure - Google Patents

User authentication method and system using software-based HSM without password exposure Download PDF

Info

Publication number
KR101745919B1
KR101745919B1 KR1020170041723A KR20170041723A KR101745919B1 KR 101745919 B1 KR101745919 B1 KR 101745919B1 KR 1020170041723 A KR1020170041723 A KR 1020170041723A KR 20170041723 A KR20170041723 A KR 20170041723A KR 101745919 B1 KR101745919 B1 KR 101745919B1
Authority
KR
South Korea
Prior art keywords
user
hsm
password
access control
control module
Prior art date
Application number
KR1020170041723A
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 KR1020170041723A priority Critical patent/KR101745919B1/en
Application granted granted Critical
Publication of KR101745919B1 publication Critical patent/KR101745919B1/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/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • 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
    • 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/3244
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2139Recurrent verification

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 악성 코드에 의한 키보드 후킹, 엿보기 공격(Shoulder Attack) 등을 통해 유출될 수 있는 웹 서비스 패스워드를 노출하지 않으면서, 종래의 스마트카드 칩과 같은 하드웨어 방식이 아닌 소프트웨어 모듈로 구현하고 일반 이동식 매체를 이용하여 HSM 기능을 수행하는 패스워드 노출 없는 소프트웨어 방식의 HSM을 이용한 사용자 인증 방법 및 시스템을 제공하기 위한 것이다.
본 발명에 의하면, 이동식 매체는 CPU를 갖지 않는 종래의 것을 그대로 사용하고, 이동식 매체 내에 저장된 소프트웨어 방식의 HSM 모듈이 사용자 PC에 로딩되면, 사용자 PC에서 실행되는 소프트웨어 방식의 HSM 모듈이 이동식 매체 내에 암호화된 패스워드와 각종 정보를 저장하는 저장공간에 대한 접근을 제어하는 구조를 적용함으로써, 종래의 하드웨어 방식의 보안토큰에 비해 가격이 상당히 저렴하다.
The present invention can be implemented as a software module rather than a hardware method like a conventional smart card chip without exposing a web service password that can be leaked through a keyboard hooking or a shoulder attack by a malicious code, And to provide a method and system for authenticating a user using HSM of a software type that does not expose a password for performing an HSM function using a removable medium.
According to the present invention, when a software-based HSM module stored in a removable medium is loaded on a user PC, a software-based HSM module running on a user PC is encrypted in a removable medium By applying a structure that controls access to the storage space storing the password and various information, the price is considerably lower than the conventional hardware type security token.

Figure R1020170041723
Figure R1020170041723

Description

패스워드 노출 없는 소프트웨어 방식의 HSM을 이용한 사용자 인증 방법 및 시스템{User authentication method and system using software-based HSM without password exposure}Technical Field [0001] The present invention relates to a user authentication method and system using a HSM

본 발명은 패스워드 노출 없는 소프트웨어 방식의 HSM을 이용한 사용자 인증 방법 및 시스템에 관한 것으로, 웹 서비스 패스워드를 안전하게 보호하기 위해 소프트웨어 방식의 하드웨어 보안 모듈(Hardware Security Module)을 이용한 사용자 인증 방법 및 시스템에 관한 것이다.The present invention relates to a method and system for authenticating a user using a software-based HSM without password exposures, and a user authentication method and system using a software-based hardware security module to safely secure a web service password .

정보보호 및 인증기술에 있어서, 개인의 인증정보를 하드웨어적으로 또한 암호학적으로 안전하게 관리하는 장치 및 시스템의 개발기술 필요성은 인터넷의 보급과 함께 제기되어 왔다.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.

종래의 IC 카드 또는 USB 타입의 하드웨어 보안 모듈은 자체적으로 CPU와 메모리 등이 포함된 스마트카드 칩을 탑재하고 있어, 가격이 비싼 것이 흠이었다.Conventional IC cards or USB type hardware security modules are equipped with a smart card chip including a CPU and a memory, which is expensive.

등록특허 제10-1070766호는 종래 방식에 따른 USB 복합장치에 관한 것으로서, USB 메모리부와, 사용자 인증 및 보안 인증 기능을 수행하는 USB 보안토큰부로 구성되는 메모리 기능과 보안토큰 기능을 구비하며, USB 메모리부는 메모리 CPU와 코드 메모리부 및 데이터 메모리부를 포함하여 구성되는 것을 특징으로 한다.Japanese Patent Application No. 10-1070766 discloses a USB composite apparatus according to a conventional system. The USB composite apparatus includes a USB memory unit, a USB security token unit for performing user authentication and security authentication functions, and a memory function and a security token function. The memory unit includes a memory CPU, a code memory unit, and a data memory unit.

상기와 같이 종래 방식에 따른 하드웨어 보안 모듈은 하드웨어 구성이 복잡하고, 가격이 비쌀 수 밖에 없어 대중들에 의해서 범용적으로 사용되기에는 한계를 가지고 있다.As described above, the hardware security module according to the conventional method has a complicated hardware configuration, and is expensive, so that it is limited to be universally used by the public.

등록특허 제10-1070766호(메모리 기능과 보안토큰 기능을 구비한 USB 복합장치)Registration No. 10-1070766 (USB composite device with memory function and security token function) 공개특허 제10-2005-0099106호(휴대용 HSM 장치와 그 장치의 사용자 등록 및 인증방법)Japanese Patent Application Laid-Open No. 10-2005-0099106 (Portable HSM Device and User Registration and Authentication Method of the Device)

본 발명은 상기와 같은 문제점을 개선하기 위하여 발명된 것으로, 악성 코드에 의한 키보드 후킹, 엿보기 공격(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 user authentication method and system using a HSM of a software type that does not expose a password and performs an HSM function using a general mobile medium.

상기와 같은 목적을 달성하기 위하여, 본 발명은 일반 이동식 매체에 저장된 HSM(Hardware Security Module) 기능의 소프트웨어를 사용자 PC에 로딩시킨 후 인증 절차를 진행하는 HSM을 이용한 사용자 인증 방법으로서, HSM 기반 접근 제어 모듈을 저장하는 이동식 매체를 USB 인터페이스를 통해 사용자 PC에 연결하는 단계(S105); 상기 이동식 매체의 HSM 기반 접근 제어 모듈을 사용자 PC에 로딩시키기 위해 실행하는 단계(S110); 상기 이동식 매체의 HSM 기반 접근 제어 모듈을 사용자 PC에 로딩시키는 단계(S115); 사용자 PC에 입력된 프로그램 패스워드를 사용자 PC의 HSM 기반 접근 제어 모듈로 전달하는 단계(S120); 사용자 PC의 HSM 기반 접근 제어 모듈은 전달받은 프로그램 패스워드를 이동식 매체 내의 저장공간에 저장되어 있는 프로그램 패스워드와 비교하여 일치 여부를 확인하는 단계(S125); 상기 비교 결과, 프로그램 패스워드가 불일치하면 상기 사용자 PC의 HSM 기반 접근 제어 모듈은 프로그램 패스워드의 입력을 다시 요청하는 단계(S130); 상기 비교 결과, 프로그램 패스워드가 일치하면 상기 사용자 PC의 HSM 기반 접근 제어 모듈은 로그인이 성공한 것으로 판단하는 단계(S135); 사용자 PC의 사용자 인증 모듈을 통해 이동식 매체를 등록 또는 갱신하는 메뉴를 선택하는 단계(S140); 사용자 PC의 사용자 인증 모듈을 통해 해당 웹 서비스의 주소와 사용자 아이디 및 패스워드를 입력하는 단계(S145); 사용자 PC의 사용자 인증 모듈은 사용자 PC가 로그인 되어 있는 해당 웹 서비스 서버의 사용자 아이디 및 패스워드와 상기 사용자 PC에 연결된 이동식 매체를 등록 또는 갱신 요청하는 메시지를 해당 웹 서비스 서버로 전송하는 단계(S150); 웹 서비스 서버는 이동식 매체 등록 및 등록확인 모듈을 통해 사용자 PC에 연결된 이동식 매체를 등록 또는 갱신 요청 메시지를 확인하는 단계(S155); 웹 서비스 서버는 수신한 사용자 아이디와 패스워드를 이용하여 저장공간에서 해당 사용자의 정보를 검색 후 본인 확인을 위한 2차 인증을 수행하는 단계(S160); 2차 인증에 성공하면, 사용자 PC의 사용자 인증 모듈에 이동식 매체 고유정보를 요청하는 단계(S165); 사용자 PC의 HSM 기반 접근 제어 모듈은 사용자 인증 모듈로부터 이동식 매체 고유정보 요청 메시지를 전달 받은 후 상기 이동식 매체 저장공간의 이동식 매체 고유정보를 읽는 단계(S170); 이동식 매체의 저장공간에서 사용자 PC의 HSM 기반 접근 제어 모듈로 이동식 매체 고유정보를 전송하는 단계(S175); 사용자 PC의 HSM 기반 접근 제어 모듈은 이동식 매체 고유정보를 상기 웹 서비스 서버로 전송하는 단계(S180); 웹 서비스 서버의 이동식 매체 등록 및 등록확인 모듈은 수신한 이동식 매체 고유정보를 이용하여 이동식 매체 등록 또는 갱신을 수행하고, 이동식 매체 등록 또는 갱신 완료 메시지를 사용자 PC의 사용자 인증 모듈에 전송하는 단계(S185); 사용자 PC의 사용자 인증 모듈이 해당 웹 서비스 사용자 등록 또는 갱신이 정상적으로 완료된 것을 확인하는 단계(S190); 사용자 PC의 HSM 기반 접근 제어 모듈은 해당 웹 서비스의 사용자 아이디, 패스워드, 웹 서비스 정보를 암호화하여 이동식 매체 내의 저장공간에 암호화된 내용을 저장하는 단계(S193) - 상기의 패스워드, 즉 사용자 패스워드는 해당 웹 서비스 서버의 사용자 패스워드임 -; 사용자는 사용자 PC의 HSM 기반 접근 제어 모듈로부터 이동식 매체 등록 또는 갱신이 완료되었음을 확인하는 단계(S195); 사용자가 사용자 PC의 HSM 기반 접근 제어 모듈로 사용자 인증 수행을 요청하는 단계(S220); 사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈이 상기 사용자에게 프로그램 패스워드의 입력을 요청하는 단계(S225) - 상기 프로그램 패스워드는 사용자 PC에 로드 된 HSM 기반 접근 제어 모듈의 패스워드로서, 허가된 사용자가 HSM 기반 접근 제어 모듈을 사용하기 위해 필요한 것임 -; 사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈이 사용자로부터 프로그램 패스워드를 입력 받는 단계(S230); 사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈이 전달받은 프로그램 패스워드를 이동식 매체 내의 저장공간에 저장되어 있는 프로그램 패스워드와 비교하여 일치 여부를 확인하는 단계(S235); 상기 비교 결과, 프로그램 패스워드가 불일치하면 사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈이 상기 사용자에게 프로그램 패스워드의 입력을 다시 요청하는 단계(S240); 상기 비교 결과, 프로그램 패스워드가 일치하면 상기 사용자 PC의 HSM 기반 접근 제어 모듈은 사용자가 로그인에 성공한 것으로 판단하는 단계(S245); 사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈이 이동식 매체 에 저장되어 있는 하나 이상의 웹 서비스 목록 중에서 사용자의 선택을 요청하는 단계(S250); 사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈은 사용자로부터 웹 서비스 정보를 수신하면, 해당 웹 서비스 서버로 이동식 매체에 저장된 이동식 매체의 고유 정보를 전송하고, 해당 웹 서비스 서버의 솔트(Salt)값을 요청하는 사용자 인증 요청 메시지를 전송하는 단계(S255);웹 서비스 서버의 이동식 매체 등록 및 등록확인 모듈은 수신한 이동식 매체의 고유 정보를 가지고 등록된 사용자인지 확인하여, 등록되지 않은 사용자이면 사용자 PC의 HSM 기반 접근 제어 모듈로 거절 메시지를 전송하는 단계(S260); 확인 결과, 등록된 사용자이면 웹 서비스 서버는 일회용 솔트값을 생성하여 해시 함수 반복 횟수와 함께 사용자 PC의 HSM 기반 접근 제어 모듈로 전송하는 단계(S265); 사용자 PC의 HSM 기반 접근 제어 모듈은 이동식 매체의 저장공간에 암호화되어 저장된 해당 웹 서비스 사용자 아이디, 패스워드, 웹 서비스 정보와, 웹 서비스 서버로부터 수신한 일회용 솔트값 및 해시 함수 반복 횟수를 적용하여 솔팅(Salting)과 키 스트레칭(key stretching)을 반복 수행함으로써, 다이제스트(Digest)를 생성하는 단계(S270); 사용자 PC의 HSM 기반 접근 제어 모듈은 상기 생성된 다이제스트를 웹 서비스 서버로 전송하는 단계(S275); 웹 서비스 서버는 서버에 저장되어 있는 웹 서비스 사용자 아이디, 패스워드, 웹 서비스 정보와, 상기에서 생성한 일회용 솔트값 및 해시 함수 반복 횟수를 적용하여 솔팅(Salting)과 키 스트레칭(key stretching)을 반복 수행함으로써, 다이제스트(Digest)를 생성하는 단계(S280); 및 웹 서비스 서버는 사용자 PC로부터 수신한 다이제스트와 자신이 생성한 다이제스트를 비교하여 일치 여부를 확인하고, 불일치하면 사용자 PC의 사용자 인증 모듈로 다이제스트의 재전송을 요청하고, 일치하면 사용자 인증에 성공한 것으로 판단하여 사용자 PC로 웹 서비스를 제공하는 단계(S285)를 포함하는 것을 특징으로 하는 패스워드 노출 없는 소프트웨어 방식의 HSM을 이용한 사용자 인증 방법을 제공한다.According to an aspect of the present invention, there is provided a method for authenticating a user using an HSM (Hyper Text Markup Language) based on HSM (Hardware Security Module) Connecting the removable medium storing the module to the user PC via the USB interface (S105); Executing (S110) an HSM-based access control module of the removable medium to load the user's PC; Loading the HSM-based access control module of the removable medium into the user PC (S115); A step S120 of transmitting the program password input to the user PC to the HSM-based access control module of the user PC; The HSM-based access control module of the user PC compares the received program password with the program password stored in the storage medium in the removable medium to confirm whether or not the program password is identical (S125); As a result of the comparison, when the program password is inconsistent, the HSM-based access control module of the user PC requests the input of the program password again (S 130); If it is determined that the program passwords match, the HSM-based access control module of the user PC determines that the login is successful (S135); Selecting (S140) a menu for registering or updating the removable medium through the user authentication module of the user PC; A step (S145) of inputting an address and a user ID and a password of the corresponding web service through the user authentication module of the user PC; The user authentication module of the user PC transmits the user ID and password of the corresponding web service server in which the user PC is logged in and a message requesting registration or update of the removable medium connected to the user PC to the corresponding web service server in operation S150. (S155) the web service server confirms the registration or update request message of the removable medium connected to the user PC through the removable media registration and registration confirmation module; The web service server performs a secondary authentication for identifying the user after retrieving the information of the user in the storage space using the received user ID and password (S160); If the secondary authentication is successful, requesting the user authentication module of the user PC for the mobile medium specific information (S165); The HSM-based access control module of the user PC receives the mobile medium specific information request message from the user authentication module and then reads the mobile medium specific information of the mobile medium storage space (S170); Transmitting mobile media specific information from the storage space of the removable medium to the HSM based access control module of the user PC (S175); The HSM-based access control module of the user PC transmits the mobile medium specific information to the web service server (S180); The mobile media registration and registration confirmation module of the web service server performs registration or update of the mobile media using the received mobile media specific information and transmits the mobile media registration or update completion message to the user authentication module of the user PC ); A step (S190) of confirming that the user authentication module of the user PC has normally completed the corresponding Web service user registration or update; The HSM-based access control module of the user PC encrypts the user ID, the password, and the web service information of the corresponding web service to store the encrypted content in the storage space in the mobile medium (S193) The user password of the web service server; The user confirms (S195) that the portable media registration or update is completed from the HSM-based access control module of the user PC. A step S220 of requesting the user to perform user authentication with the HSM-based access control module of the user PC; (S225) the HSM-based access control module executing in the user PC requests input of the program password to the user, the program password being a password of the HSM-based access control module loaded in the user PC, What is needed to use the access control module; A step (S230) of receiving a program password from the user by the HSM-based access control module executed in the user PC; (S235) comparing the received program password with the program password stored in the storage medium in the removable medium by the HSM-based access control module running on the user PC, and checking whether the program password matches with the program password stored in the storage space of the removable medium; If it is determined that the program passwords do not coincide with each other, the HSM-based access control module executed in the user PC requests the user to input the program password again (S240). As a result of the comparison, if the program passwords match, the HSM-based access control module of the user PC judges that the user has succeeded in logging in (S245); A step (S250) of requesting a selection of one or more web services stored in the mobile medium by the HSM-based access control module running on the user PC; Upon receiving the web service information from the user, the HSM-based access control module executing in the user PC transmits the unique information of the removable medium stored in the removable medium to the web service server and requests the salt value of the web service server (S255), the mobile media registration and registration confirmation module of the web service server confirms whether the user is registered with the unique information of the received removable medium, and if the user is not registered, the HSM Based access control module (S260); If it is determined that the user is a registered user, the web service server generates a disposable salt value and transmits the disposable salt value to the HSM-based access control module of the user PC together with the hash function repetition number (S265). The HSM-based access control module of the user's PC uses the corresponding web service user ID, password, web service information encrypted in the storage space of the removable media, and disposable salt value and hash function repetition number received from the web service server, Salting) and key stretching to generate a digest (S270); The HSM-based access control module of the user PC transmits the generated digest to the web service server (S275); The web service server repeatedly performs salting and key stretching by applying the web service user ID, password, web service information, and the disposable salt value and hash function repetition number stored in the server. Thereby generating a digest (S280); And the web service server compares the digest received from the user PC with the digest generated by the user and confirms whether the digest is matched. If the mismatch occurs, the digest is requested to be retransmitted to the user authentication module of the user PC, And providing a web service to the user's PC (S285). The present invention provides a method for authenticating a user using HSM of a password-free software type.

한편, 상기와 같은 목적을 달성하기 위하여, 본 발명은 일반 이동식 매체에 저장된 HSM(Hardware Security Module) 기능의 소프트웨어를 사용자 PC에 로딩시킨 후 인증 절차를 진행하는 HSM을 이용한 사용자 인증 시스템으로서, HSM 기반 접근 제어 모듈과 암호화된 내용을 저장하는 저장공간을 가지고 있으며, 사용자로부터 실행 요청이 있으면 HSM 기반 접근 제어 모듈을 사용자 PC에 로딩시키고, 사용자 PC의 HSM 기반 접근 제어 모듈로부터 상기 저장공간의 이동식 매체 고유정보 읽기 요청을 수신하면, 저장공간에서 사용자 PC의 HSM 기반 접근 제어 모듈로 이동식 매체 고유정보를 전송하는 이동식 매체; 상기 이동식 매체로부터 로딩된 HSM 기반 접근 제어 모듈과 하기의 웹 서비스 서버와 SSL(Secure Sockets Layer) 통신을 수행하는 사용자 인증 모듈을 포함하고, 상기 이동식 매체의 HSM 기반 접근 제어 모듈이 사용자 PC에 로딩된 후 사용자 PC에 로딩된 HSM 기반 접근 제어 모듈은 사용자 PC를 통해 사용자로부터 입력된 프로그램 패스워드를 이동식 매체 내의 저장공간에 저장되어 있는 프로그램 패스워드와 비교하여 일치 여부를 확인하여, 프로그램 패스워드가 불일치하면 프로그램 패스워드의 입력을 다시 요청하고, 프로그램 패스워드가 일치하면 로그인이 성공한 것으로 판단하며, 상기 사용자 인증 모듈을 통해 이동식 매체를 등록 또는 갱신하는 메뉴를 선택하고, 사용자 인증 모듈을 통해 해당 웹 서비스의 주소와 사용자 아이디 및 패스워드를 입력하고, 사용자 인증 모듈은 사용자 PC가 로그인 되어 있는 해당 웹 서비스 서버의 사용자 아이디 및 패스워드와 상기 사용자 PC에 연결된 이동식 매체를 등록 또는 갱신 요청하는 메시지를 해당 웹 서비스 서버로 전송하고, 웹 서비스 서버에서 본인 확인을 위한 2차 인증 후 사용자 PC의 사용자 인증 모듈이 이동식 매체 고유정보를 요청하는 메시지를 수신하면 HSM 기반 접근 제어 모듈은 이동식 매체 고유정보를 요청하는 메시지를 이동식 매체에 전송하여 이동식 매체의 저장공간에서 이동식 매체 고유정보를 읽어오고, 사용자 PC의 HSM 기반 접근 제어 모듈이 이동식 매체 고유정보를 상기 웹 서비스 서버로 전송하며, 사용자 인증 모듈이 상기 웹 서비스 서버로부터 이동식 매체 등록 또는 갱신 완료 메시지를 수신하면 해당 웹 서비스 사용자 등록 또는 갱신이 정상적으로 완료된 것으로 확인하고, 사용자 PC의 HSM 기반 접근 제어 모듈은 해당 웹 서비스의 사용자 아이디, 패스워드, 웹 서비스 정보를 암호화하여 이동식 매체 내의 저장공간에 암호화된 내용을 저장하며, 이동식 매체 계정 등록 결과 확인 메시지를 사용자에게 표시하는 사용자 PC; 및 상기 사용자 PC의 사용자 인증 모듈과 SSL 통신을 수행하고, 사용자 PC의 사용자 인증 모듈로부터 이동식 매체를 등록 또는 갱신 요청하는 메시지를 수신하면 사용자 아이디와 패스워드를 이용하여 저장공간에서 해당 사용자의 정보를 검색 후 본인 확인을 위한 2차 인증을 수행하며, 2차 인증에 성공하면 사용자 PC의 사용자 인증 모듈에 이동식 매체 고유정보를 요청하고, 사용자 PC의 HSM 기반 접근 제어 모듈로부터 이동식 매체 고유정보를 수신하면, 이동식 매체 등록 및 등록확인 모듈은 수신한 이동식 매체 고유정보를 이용하여 이동식 매체 등록 또는 갱신을 수행하고, 이동식 매체 등록 또는 갱신 완료 메시지를 사용자 PC의 사용자 인증 모듈에 전송하는 웹 서비스 서버를 포함하되 - 상기의 패스워드, 즉 사용자 패스워드는 해당 웹 서비스 서버의 사용자 패스워드임 -, 상기 이동식 매체는 저장공간에 하나 이상의 웹 서비스 목록을 저장하고, 사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈의 요청에 따라 웹 서비스 목록을 제공하고, 저장공간에 웹 서비스 사용자 아이디, 패스워드 및 웹 서비스 정보를 암호화하여 저장하며, 상기 사용자 PC는 이동식 매체로부터 로딩된 HSM 기반 접근 제어 모듈이 상기 사용자 PC로부터 사용자 인증 수행 요청 메시지를 수신하면 상기 사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈은 사용자에게 프로그램 패스워드의 입력을 요청하고, 사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈이 사용자로부터 프로그램 패스워드를 입력 받으면, 프로그램 패스워드를 이동식 매체 내의 저장공간에 저장되어 있는 프로그램 패스워드와 비교하여 일치 여부를 확인하고, 비교 결과 프로그램 패스워드가 불일치하면 사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈이 상기 사용자에게 프로그램 패스워드의 입력을 다시 요청하며, 프로그램 패스워드가 일치하면 상기 사용자 PC의 HSM 기반 접근 제어 모듈은 사용자가 로그인에 성공한 것으로 판단하고, 사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈은 이동식 매체 내의 저장공간에 저장되어 있는 하나 이상의 웹 서비스 목록 중에서 사용자의 선택을 요청하며, 사용자 PC의 HSM 기반 접근 제어 모듈은 사용자로부터 웹 서비스 정보를 수신하면, 해당 웹 서비스 서버로 이동식 매체에 저장된 이동식 매체의 고유 정보를 전송하고, 해당 웹 서비스 서버의 솔트(salt)값을 요청하는 사용자 인증 메시지를 전송하며, 사용자 PC의 HSM 기반 접근 제어 모듈은 이동식 매체의 저장공간에 암호화되어 저장된 해당 웹 서비스 사용자 아이디, 패스워드, 웹 서비스 정보와, 상기 웹 서비스 서버로부터 수신한 일회용 솔트값 및 해시 함수 반복 횟수를 적용하여 솔팅(Salting)과 키 스트레칭(key stretching)을 반복 수행함으로써 다이제스트(Digest)를 생성하고, 생성된 다이제스트를 웹 서비스 서버로 전송하며 - 상기 프로그램 패스워드는 사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈의 패스워드임 -, 상기 웹 서비스 서버의 이동식 매체 등록 및 등록확인 모듈은 사용자 PC의 HSM 기반 접근 제어 모듈로부터 수신한 이동식 매체의 고유 정보를 계정 관리 DB에 기 저장된 이동식 매체의 고유 정보와 비교를 통해 등록된 사용자인지 확인하여, 등록되지 않은 사용자이면 사용자 PC의 HSM 기반 접근 제어 모듈로 거절 메시지를 전송하고, 등록된 사용자이면 일회용 솔트값을 생성하여 해시 함수 반복 횟수와 함께 사용자 PC의 HSM 기반 접근 제어 모듈로 전송하며, 생성된 일회용 솔트값은 계정 관리 DB에 해당 이동식 매체의 고유 정보와 매칭하여 저장하고, 상기 사용자 PC의 HSM 기반 접근 제어 모듈에서 생성된 다이제스트를 수신하면 서버에 저장되어 있는 웹 서비스 사용자 아이디, 패스워드, 웹 서비스 정보와, 상기의 일회용 솔트값 및 해시 함수 반복 횟수를 적용하여 솔팅과 키 스트레칭을 반복 수행함으로써 다이제스트를 생성하고, 사용자 PC로부터 수신한 다이제스트와 서버 자신이 생성한 다이제스트를 비교하여 일치 여부를 확인하고, 불일치하면 상기 사용자 PC의 사용자 인증 모듈로 다이제스트의 재전송을 요청하고, 일치하면 사용자 인증에 성공한 것으로 판단하여 사용자 PC로 웹 서비스를 제공하는 것을 특징으로 하는 패스워드 노출 없는 소프트웨어 방식의 HSM을 이용한 사용자 인증 시스템을 제공한다.In order to achieve the above object, the present invention provides a user authentication system using an HSM that loads an HSM (Hardware Security Module) function software loaded on a general mobile medium into a user PC and performs an authentication procedure, The access control module and the storage space for storing the encrypted contents. If there is an execution request from the user, the access control module loads the HSM-based access control module into the user PC, and acquires from the HSM- Upon receipt of the information read request, removable media specific information from the storage space to the HSM based access control module of the user PC; Based access control module loaded from the mobile medium and a user authentication module for performing SSL (Secure Sockets Layer) communication with the web service server, wherein the HSM-based access control module of the mobile medium is loaded in a user PC The HSM-based access control module loaded in the user PC compares the program password inputted from the user through the user PC with the program password stored in the storage medium in the removable medium to check whether or not the program password matches the program password. If the program password is inconsistent, And if the program passwords match, it is determined that the login is successful, and a menu for registering or updating the removable medium is selected through the user authentication module, and the address of the corresponding web service and the user ID And a password. The user authentication module transmits to the corresponding web service server a message for requesting registration or update of the user ID and password of the corresponding web service server in which the user PC is logged in and a removable medium connected to the user PC, The HSM-based access control module transmits a message requesting the mobile medium-specific information to the mobile medium and transmits the message requesting the mobile medium-specific information to the mobile medium in the storage area of the mobile medium. The HSM-based access control module of the user PC transmits the mobile medium specific information to the web service server. When the user authentication module receives the mobile media registration or update completion message from the web service server, Service user registration or renewal is normal The HSM-based access control module of the user PC encrypts the user ID, the password, and the web service information of the corresponding web service to store the encrypted content in the storage space in the removable medium, and confirms the result of the registration of the removable medium account A user PC displaying the message to the user; And performs SSL communication with the user authentication module of the user PC. Upon receiving a message requesting registration or update of the removable medium from the user authentication module of the user PC, the information of the corresponding user is retrieved from the storage space using the user ID and password If the secondary authentication is successful, the mobile communication terminal requests unique information of the mobile medium to the user authentication module of the user PC and receives the mobile medium specific information from the HSM based access control module of the user PC, The mobile media registration and registration confirmation module includes a web service server that performs a mobile media registration or update using the received mobile medium specific information and transmits a mobile media registration or update completion message to a user authentication module of the user PC, The password, i.e., the user password, The portable medium stores one or more web service lists in a storage space, provides a list of web services according to a request of an HSM-based access control module executed in a user PC, and stores a web service user ID, The HSM-based access control module, which is executed in the user PC when the HSM-based access control module loaded from the mobile medium receives the user authentication execution request message from the user PC, encrypts and stores the password and the web service information, When the HSM-based access control module executed in the user PC receives the program password from the user, the program password is compared with the program password stored in the storage medium in the removable medium, , And the comparison result If the program passwords do not coincide with each other, the HSM-based access control module executed by the user PC requests the user to input the program password again. If the program passwords match, the HSM-based access control module of the user PC judges that the user has succeeded in logging in The HSM-based access control module, which is executed in the user PC, requests the user's selection from one or more web service lists stored in the storage space in the mobile medium. The HSM- The HSM-based access control module of the user PC transmits the unique information of the removable medium stored in the removable medium to the corresponding web service server and transmits a user authentication message requesting a salt value of the corresponding web service server, Encrypted on removable media storage Salting and key stretching are repeated by applying the corresponding web service user ID, password, web service information, disposable salt value received from the web service server, and hash function repeat number, ), And transmits the generated digest to the web service server, wherein the program password is a password of an HSM-based access control module executed in the user PC, the removable media registration and registration confirmation module of the web service server includes a user PC Based access control module received from the HSM-based access control module is compared with unique information of the removable medium stored in the account management DB to determine whether the user is a registered user. If the user is an unregistered user, the HSM- And if the user is a registered user, the disposable salt value And transmits the generated disposable salt value to the HSM-based access control module of the user PC together with the number of iterations of the hash function. The generated disposable salt value is stored in the account management database by matching with the unique information of the corresponding removable medium, When a digest generated by the module is received, a digest is generated by repeating the solving and key stretching by applying the web service user ID, password, web service information, and the disposable salt value and the hash function repetition number stored in the server , It compares the digest received from the user PC with the digest generated by the server itself and confirms whether the digest is matched. If the digest is not matched, the digest is requested to the user authentication module of the user PC, It features web service to PC A user authentication system using a software-based HSM without a password exposure.

상기와 같은 구성의 본 발명에 따르면, 다음과 같은 효과를 도모할 수 있다. USB와 같은 일반 이동식 매체에 소프트웨어 방식의 HSM 모듈을 저장함으로써 종래의 하드웨어 방식의 보안토큰에 비해 가격이 저렴하여 범용적으로 사용될 수가 있다.According to the present invention having the above-described configuration, the following effects can be achieved. By storing software-based HSM modules in general removable media such as USB, it can be used for general purpose because it is cheaper than conventional hardware-based security tokens.

즉, USB는 CPU를 갖지 않는 종래의 것을 그대로 사용하고, USB 내에 저장된 소프트웨어 방식의 HSM 모듈이 사용자 PC에 로딩되면 사용자 PC에서 실행되는 소프트웨어 방식의 HSM 모듈이 USB 내에 암호화된 패스워드와 각종 정보를 저장하는 저장공간에 대한 접근을 제어하는 구조를 적용함으로써, 종래의 하드웨어 방식의 보안토큰에 비해 가격이 상당히 저렴하다.That is, USB uses a conventional one without a CPU, and when the software-based HSM module stored in the USB is loaded in the user's PC, the software-based HSM module executed in the user PC stores the encrypted password and various information in the USB By applying a structure that controls access to the storage space of a conventional hardware-based security token.

또한, 다수 사이트의 다양한 패스워드를 기억할 필요 없이, 이동식 매체만 소지하고 있으면 편리하고 안전하게 웹 서비스를 이용할 수가 있다.In addition, it is possible to conveniently and safely use the web service if only portable media is possessed, without having to memorize various passwords of a plurality of sites.

나아가, 해시 함수를 이용하여 다이제스트를 생성할 때 솔팅과 키 스트레칭을 반복하며, 솔트와 패스워드 외에도 입력 값을 추가함으로써, 공격자가 다이제스트를 쉽게 유추할 수 없도록 하였다.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은 본 발명에 따른 사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈의 프로그램 패스워드를 설정하는 과정을 나타내는 순서도이다.
도 4는 본 발명에 따른 웹 서비스의 사용자 패스워드를 갱신하는 과정을 나타내는 순서도이다.
도 5는 본 발명에 따른 사용자 인증 시스템의 구성도이다.
1 is a flowchart showing a process for newly registering and updating a mobile medium according to the present invention.
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 setting a program password of an HSM-based access control module executed in a user PC according to the present invention.
4 is a flowchart illustrating a process of updating a user password of a web service according to the present invention.
5 is a configuration diagram of a user 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 having) " 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 내지 도 5를 참고하면, 본 발명의 패스워드 노출 없는 소프트웨어 방식의 HSM을 이용한 사용자 인증 방법은, 일반 이동식 매체(100)에 저장된 HSM(Hardware Security Module) 기능의 소프트웨어를 사용자 PC(200)에 로딩시킨 후 사용자 PC(200)에서 실행되는 HSM 기반 접근 제어 모듈(210)이 이동식 매체(100)의 저장공간(110)에 저장된 암호화된 패스워드, 사용자 아이디 및 웹 서비스 정보 등에 대한 접근을 제어하는 방식으로 인증 절차를 진행한다.1 to 5, a method for authenticating a user using a password-free software-based HSM according to the present invention includes the steps of: (i) transmitting, by a user PC 200, software of an HSM (Hardware Security Module) function stored in a general mobile medium 100 The HSM-based access control module 210 executing in the user PC 200 controls access to the encrypted password, user ID, and web service information stored in the storage space 110 of the mobile medium 100 .

먼저, 본 발명은 다음의 네 가지 사항이 전제된다. ① 도 1에 해당하는 이동식 매체 신규 등록 과정에서 사용자는 웹 서비스에 이미 가입된 사람이다. ② 사용자 PC와 웹 서비스 서버 사이의 통신 구간은 SSL(Secure Sockets Layer) 등에 의해 암호화되어 보호된다. ③ 웹 서비스 서버는 도 1에 해당하는 이동식 매체 신규 등록을 위해 사용자 아이디와 패스워드 외에 본인 확인을 위한 2차 인증 수단(휴대폰, 이메일 등)을 이용한다. ④ 웹 서비스 서버에는 ⅰ) 신규 이동식 매체 등록 요청, ⅱ) 이동식 매체 갱신 요청, ⅲ) 사용자 인증 요청을 처리를 하는 '이동식 매체 등록 및 등록확인 모듈'이 사전에 구축되어 있다.First, the present invention has the following four points. (1) In the mobile media new registration process corresponding to FIG. 1, the user is a person already subscribed to the Web service. ② The communication section between the user PC and the web service server is encrypted and protected by SSL (Secure Sockets Layer). (3) The web service 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 removable medium corresponding to Fig. (4) The web service server is pre-built with a 'removable media registration and registration confirmation module' that processes i) a new removable media registration request, ii) a removable media update request, and iii) a user authentication request.

[이동식 매체 신규 등록 및 갱신][New registration and renewal of removable media]

도 1을 참고하면, HSM 기반 접근 제어 모듈(110)을 저장하는 이동식 매체(100)를 USB 인터페이스를 통해 사용자 PC(200)에 연결한다(S105).Referring to FIG. 1, a mobile medium 100 storing an HSM-based access control module 110 is connected to a user PC 200 through a USB interface (S105).

이동식 매체(100)는 USB와 같은 일반 이동식 매체를 사용하며, HSM 기반 접근 제어 모듈(110)은 이동식 매체(100)에 저장되고, 실행 요청을 수신하면 사용자 PC(200)에 로딩되어 실행된다. HSM 기반 접근 제어 모듈(110)은 하기에서 구체적으로 살펴볼 암호화 연산, 자체보호 및 접근제어 기능, 저장공간 관리 등을 수행한다.The mobile medium 100 uses a general removable medium such as USB, and the HSM-based access control module 110 is stored in the removable medium 100, and when the execution request is received, the HSM-based access control module 110 is loaded into the user PC 200 and executed. The HSM-based access control module 110 performs cryptographic computation, self-protection and access control functions, and storage space management, which will be specifically described below.

이동식 매체(100)의 HSM 기반 접근 제어 모듈(110)을 사용자 PC(200)에 로딩시키기 위해 클릭 등을 통해 실행한다(S110).Based access control module 110 of the mobile medium 100 to the user PC 200 via a click or the like (S110).

이동식 매체(100)의 HSM 기반 접근 제어 모듈(110)을 사용자 PC(200)에 로딩시킨다(S115).The HSM-based access control module 110 of the mobile medium 100 is loaded into the user PC 200 (S115).

사용자 PC(200)에 입력된 프로그램 패스워드를 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)로 전달한다(S120).And transmits the program password input to the user PC 200 to the HSM-based access control module 210 of the user PC 200 (S120).

사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)은 전달받은 프로그램 패스워드를 이동식 매체(100) 내의 저장공간(120)에 저장되어 있는 프로그램 패스워드와 비교하여 일치 여부를 확인한다(S125).The HSM-based access control module 210 of the user PC 200 compares the received program password with the program password stored in the storage space 120 in the mobile medium 100 (S125).

비교 결과, 프로그램 패스워드가 불일치하면 상기 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)은 프로그램 패스워드의 입력을 다시 요청하고(S130), 비교 결과, 프로그램 패스워드가 일치하면 상기 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)은 로그인이 성공한 것으로 판단한다(S135).As a result of the comparison, if the program passwords do not match, the HSM-based access control module 210 of the user PC 200 requests the input of the program password again (S130) The HSM-based access control module 210 determines that the login is successful (S135).

사용자 PC(200)의 사용자 인증 모듈(220)을 통해 이동식 매체(100)를 등록 또는 갱신하는 메뉴를 선택한다(S140).A menu for registering or updating the removable medium 100 is selected through the user authentication module 220 of the user PC 200 (S140).

사용자 PC(200)의 사용자 인증 모듈(220)을 통해 해당 웹 서비스의 주소와 사용자 아이디 및 패스워드를 입력한다(S145).The user ID and the password of the corresponding web service are inputted through the user authentication module 220 of the user PC 200 (S145).

사용자 PC(200)의 사용자 인증 모듈(220)은 사용자 PC(200)가 로그인 되어 있는 해당 웹 서비스 서버(300)의 사용자 아이디 및 패스워드와 상기 사용자 PC(200)에 연결된 이동식 매체(100)를 등록 또는 갱신 요청하는 메시지를 해당 웹 서비스 서버(300)로 전송한다(S150).The user authentication module 220 of the user PC 200 registers the user ID and password of the web service server 300 in which the user PC 200 is logged in and the portable medium 100 connected to the user PC 200 Or transmits a message requesting update to the corresponding web service server 300 (S150).

사용자 인증 모듈(220)과 웹 서비스 서버(300)는 SSL(Secure Sockets Layer) 통신을 수행한다. 즉, SSL를 통해 사용자 인증 모듈(220)과 웹 서비스 서버(300) 간에 암호화된 데이터를 전송할 수 있다. 이를 통해 하기에서 살펴볼 솔트(salt)의 유출을 방지할 수 있다.The user authentication module 220 and the web service server 300 perform SSL (Secure Sockets Layer) communication. That is, encrypted data can be transmitted between the user authentication module 220 and the web service server 300 through SSL. This can prevent the outflow of salt to be discussed below.

웹 서비스 서버(300)는 이동식 매체 등록 및 등록확인 모듈(310)을 통해 사용자 PC(200)에 연결된 이동식 매체(100)를 등록 또는 갱신 요청 메시지를 확인한다(S155).The web service server 300 confirms the registration or update request message of the mobile medium 100 connected to the user PC 200 through the mobile media registration and registration confirmation module 310 at step S155.

이동식 매체 등록 및 등록확인 모듈(310)은 웹 서비스 서버(300)에 사전에 구축되어 있는 것으로서, ⅰ) 신규 이동식 매체 등록 요청, ⅱ) 이동식 매체 갱신 요청, ⅲ) 사용자 인증 요청을 처리한다.The removable media registration and registration confirmation module 310 is pre-built in the web service server 300 and processes i) a new removable media registration request, ii) a removable media update request, and iii) a user authentication request.

웹 서비스 서버(300)는 수신한 사용자 아이디와 패스워드를 이용하여 저장공간, 즉 계정 관리 DB(320)에서 해당 사용자의 정보를 검색 후 본인 확인을 위한 2차 인증을 수행한다(S160). 2차 인증에 실패하면 등록을 거부한다. 2차 인증은 전화, 문자 인증을 포함한다. In operation S160, the web service server 300 retrieves information of the user from the account management DB 320 using the received user ID and password, and performs secondary authentication for identifying the user. If the secondary authentication fails, the registration is rejected. Secondary authentication includes telephone and text authentication.

2차 인증에 성공하면, 사용자 PC(200)의 사용자 인증 모듈(220)에 이동식 매체(100) 고유정보를 요청한다(S165). 이동식 매체 고유정보는 이동식 매체의 아이디나 시리얼 넘버 등이 해당된다.If the secondary authentication is successful, the user authentication module 220 of the user PC 200 requests the unique information of the mobile medium 100 (S165). The removable medium specific information corresponds to the ID or serial number of the removable medium.

사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)은 사용자 인증 모듈(220)로부터 이동식 매체 고유정보 요청 메시지를 전달 받은 후 상기 이동식 매체(100) 저장공간(120)의 이동식 매체 고유정보를 읽어온다(S170).The HSM-based access control module 210 of the user PC 200 receives the mobile medium specific information request message from the user authentication module 220 and then reads the mobile medium specific information of the mobile medium 100 storage space 120 (S170).

사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)은 이동식 매체 고유정보를 상기 웹 서비스 서버(300)로 전송한다(S180).The HSM-based access control module 210 of the user PC 200 transmits the mobile medium specific information to the web service server 300 (S180).

웹 서비스 서버(300)의 이동식 매체 등록 및 등록확인 모듈(310)은 수신한 이동식 매체 고유정보를 이용하여 이동식 매체(100) 등록 또는 갱신을 수행하고, 이동식 매체(100) 등록 또는 갱신 완료 메시지를 사용자 PC(200)의 사용자 인증 모듈(220)에 전송한다(S185).The mobile media registration and registration confirmation module 310 of the web service server 300 performs registration or update of the mobile media 100 using the received mobile media unique information and transmits a registration or update completion message of the mobile media 100 To the user authentication module 220 of the user PC 200 (S185).

사용자 PC(200)의 사용자 인증 모듈(220)이 해당 웹 서비스 사용자 등록 또는 갱신이 정상적으로 완료된 것을 확인한다(S190). 웹 서비스 정보는 웹 사이트 명칭, 웹 사이트 URL 등을 포함한다.The user authentication module 220 of the user PC 200 confirms that the corresponding web service user registration or update is normally completed (S190). The web service information includes a website name, a website URL, and the like.

사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)은 해당 웹 서비스의 사용자 아이디, 패스워드, 웹 서비스 정보를 암호화하여 이동식 매체(100) 내의 저장공간(120)에 암호화된 내용을 저장한다(S193). 여기서 패스워드, 즉 사용자 패스워드는 해당 웹 서비스 서버의 사용자 패스워드를 말한다. '사용자 패스워드'는 하기에서 살펴볼 '프로그램 패스워드'와는 다른 것이다. 암호화 알고리즘은 pbkdf2, bcrypt, scrypt 중 하나를 사용하는 것이 바람직하다.The HSM-based access control module 210 of the user PC 200 encrypts the user ID, password, and web service information of the corresponding web service and stores the encrypted content in the storage space 120 in the mobile medium 100 (S193 ). Here, the password, that is, the user password, refers to the user password of the corresponding web service server. The 'user password' is different from the 'program password' to be discussed below. It is desirable to use one of encryption algorithms pbkdf2, bcrypt, scrypt.

사용자는 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)로부터 이동식 매체 등록 또는 갱신이 완료되었음을 확인한다(S195). 이로써 이동식 매체(100)의 신규 등록 또는 갱신을 완료하게 된다. The user confirms that the portable media registration or update is completed from the HSM-based access control module 210 of the user PC 200 (S195). Thereby completing a new registration or update of the mobile medium 100.

[웹 서비스 서버 사용자 인증][Web Service Server User Authentication]

사용자가 위와 같이 이동식 매체(100)의 신규 등록을 마치면, 등록된 이동식 매체(100)를 웹 서비스 서버(300) 인증에 사용할 수 있다. 웹 서비스 서버 인증 과정은 도 2를 참조하여 하기에서 구체적으로 살펴본다.When the user completes the registration of the mobile medium 100 as described above, the registered mobile medium 100 can be used for authentication of the web service server 300. [ The web service server authentication process will be described in detail with reference to FIG.

도 2를 참조하면, 사용자가 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)로 사용자 인증 수행을 요청한다(S220).Referring to FIG. 2, the user requests the HSM-based access control module 210 of the user PC 200 to perform user authentication (S220).

사용자 PC(200)에서 실행되는 HSM 기반 접근 제어 모듈(210)이 상기 사용자에게 프로그램 패스워드의 입력을 요청한다(S225). 여기서 '프로그램 패스워드'는 사용자 PC(200)에 로드된 HSM 기반 접근 제어 모듈(210)의 패스워드로서, 허가된 사용자가 HSM 기반 접근 제어 모듈(210)을 사용하기 위해 필요한 것이다.The HSM-based access control module 210 executed in the user PC 200 requests the user to input a program password (S225). The 'program password' is a password of the HSM-based access control module 210 loaded in the user PC 200, which is necessary for an authorized user to use the HSM-based access control module 210.

사용자 PC(200)에서 실행되는 HSM 기반 접근 제어 모듈(210)이 사용자로부터 프로그램 패스워드를 입력 받는다(S230).The HSM-based access control module 210 executed in the user PC 200 receives the program password from the user (S230).

사용자 PC(200)에서 실행되는 HSM 기반 접근 제어 모듈(210)은 전달받은 프로그램 패스워드를 이동식 매체(100) 내의 저장공간(120)에 저장되어 있는 프로그램 패스워드와 비교하여 일치 여부를 확인한다(S235).The HSM-based access control module 210 executed in the user PC 200 compares the received program password with the program password stored in the storage space 120 in the mobile medium 100 (S235) .

상기 비교 결과, 프로그램 패스워드가 불일치하면 사용자 PC(200)에서 실행되는 HSM 기반 접근 제어 모듈(210)이 상기 사용자에게 프로그램 패스워드의 입력을 다시 요청한다(S240).As a result of the comparison, if the program passwords do not coincide with each other, the HSM-based access control module 210 executed in the user PC 200 requests the user to input the program password again in step S240.

상기 비교 결과, 프로그램 패스워드가 일치하면 상기 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)은 사용자가 로그인에 성공한 것으로 판단한다(S245).As a result of the comparison, if the program passwords match, the HSM-based access control module 210 of the user PC 200 determines that the user has succeeded in logging in (S245).

사용자 PC(200)에서 실행되는 HSM 기반 접근 제어 모듈(210)이 이동식 매체(100) 내의 저장공간(120)에 저장되어 있는 하나 이상의 웹 서비스 목록 중에서 사용자의 선택을 요청한다(S250). The HSM-based access control module 210 executing in the user PC 200 requests the user's selection from one or more web service lists stored in the storage space 120 in the mobile medium 100 in operation S250.

사용자 PC(200)에서 실행되는 HSM 기반 접근 제어 모듈(210)은 웹 서비스 목록 정보를 팝업 창 형태로 디스플레이하여 사용자의 선택을 요청할 수 있다. 사용자 PC(200)에서 실행되는 HSM 기반 접근 제어 모듈(210)은 사용자로부터 웹 서비스 정보를 수신하면, 이동식 매체(100)의 저장공간(120)에 저장된 이동식 매체 고유 정보를 조회하여 해당 웹 서비스 서버(300)로 이동식 매체의 고유 정보를 전송하고, 해당 웹 서비스 서버의 솔트(Salt)값을 요청하는 사용자 인증 요청 메시지를 전송한다(S255).The HSM-based access control module 210 executing in the user PC 200 may display the web service list information in the form of a pop-up window to request the user's selection. Upon receiving the web service information from the user, the HSM-based access control module 210 executing in the user PC 200 inquires the mobile medium specific information stored in the storage space 120 of the mobile medium 100, Transmits the unique information of the mobile medium to the server 300, and transmits a user authentication request message requesting a salt value of the web service server (S255).

솔트(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.

솔트와 패스워드의 다이제스트를 데이터베이스에 저장하고, 사용자가 로그인 할 때 입력한 패스워드를 해시하여 일치 여부를 확인할 수 있다. 이 방법을 사용할 때는 모든 패스워드가 고유의 솔트를 갖고 솔트의 길이는 32바이트 이상이어야 공격자가 솔트와 다이제스트를 추측하기가 어렵다.You can store the digest of the salt and password in the database, and you can verify the match by hashing the password you entered when you logged in. 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.

웹 서비스 서버(300)의 이동식 매체 등록 및 등록확인 모듈(310)은 수신한 이동식 매체(100)의 고유 정보를 가지고 등록된 사용자인지 확인하여, 등록되지 않은 사용자이면 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)로 거절 메시지를 전송한다(S260).The portable media registration and registration confirmation module 310 of the web service server 300 confirms whether the user is registered with the unique information of the received portable medium 100. If the user is an unregistered user, The access control module 210 transmits a reject message (S260).

확인 결과, 등록된 사용자이면 웹 서비스 서버(300)는 일회용 솔트값을 생성하여 해시 함수 반복 횟수와 함께 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)로 전송한다(S265). 일회용 솔트값은 사용자마다 다르게 생성하여 계정 관리 DB(320)에 저장한다. As a result, if the user is a registered user, the web service server 300 generates a disposable salt value and transmits the disposable salt value to the HSM-based access control module 210 of the user PC 200 together with the hash function repetition count (S265). The disposable salt value is generated differently for each user and stored in the account management DB 320.

솔트 계산은 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 web service server 300.

사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)은 이동식 매체(100)의 저장공간(120)에 암호화되어 저장된 해당 웹 서비스 사용자 아이디, 패스워드, 웹 서비스 정보와, 웹 서비스 서버(300)로부터 수신한 일회용 솔트값 및 해시 함수 반복 횟수를 적용하여 솔팅(Salting)과 키 스트레칭(key stretching)을 반복 수행함으로써, 다이제스트(α)를 생성한다(S270). The HSM-based access control module 210 of the user PC 200 accesses the corresponding web service user ID, password, and web service information encrypted and stored in the storage space 120 of the mobile medium 100, Salting and key stretching are repeatedly performed by applying the received disposable salt value and the hash function repetition number to generate a digest alpha (S270).

이와 같이 다이제스트를 생성할 때 솔팅과 키 스트레칭을 반복하며, 솔트와 패스워드 외에도 입력 값을 추가하여 공격자가 쉽게 다이제스트를 유추할 수 없도록 하는 기술을 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(이동식 매체에 암호화되어 저장된 웹 서비스 사용자 아이디, 패스워드, 웹 서비스 정보, 웹 서비스 서버에서 수신한 일회용 솔트값, 해시 함수 반복 횟수) Digest (α) = Hash (web service user ID, password, web service information encrypted in mobile media, disposable salt value received from web service server, hash function repetition number)

즉, 상기와 같은 값들을 해시 함수에 적용하고, 해시 함수 반복 횟수만큼 해싱을 반복하여 다이제스트(α)를 구하는 것이다.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 (?).

사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)은 상기 생성된 다이제스트(α)를 웹 서비스 서버(300)로 전송한다(S275).The HSM-based access control module 210 of the user PC 200 transmits the generated digest alpha to the web service server 300 (S275).

웹 서비스 서버(300)는 서버에 저장되어 있는 웹 서비스 사용자 아이디, 패스워드, 웹 서비스 정보와, 상기에서 생성한 일회용 솔트값 및 해시 함수 반복 횟수를 적용하여 솔팅(Salting)과 키 스트레칭(key stretching)을 반복 수행함으로써, 다이제스트(β)를 생성한다(S280).The web service server 300 applies salting and key stretching by applying the web service user ID, password, web service information, and the disposable salt value and the hash function repetition count generated in the server, To generate a digest (?) (S280).

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

즉, 상기와 같은 값들을 해시 함수에 적용하고, 해시 함수 반복 횟수만큼 해싱을 반복하여 다이제스트(β)를 구하는 것이다.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)로부터 수신한 다이제스트(α)와 자신이 생성한 다이제스트(β)를 비교하여 일치 여부를 확인하고, 불일치하면 사용자 PC(200)의 사용자 인증 모듈(220)로 다이제스트(α)의 재전송을 요청하고, 일치하면 사용자 인증에 성공한 것으로 판단하여 사용자 PC(200)로 웹 서비스를 제공한다(S285).The web service server 300 compares the digest? Received from the user PC 200 with the digest? Generated by the user PC 200 and confirms whether the digest? (Step S285). If it is determined that the user authentication is successful, the user PC 200 is provided with a web service (S285).

[사용자 PC HSM 기반 접근 제어 모듈의 프로그램 패스워드 설정][Program password setting of HSM-based access control module of user PC]

사용자 PC(200)에 로딩된 HSM 기반 접근 제어 모듈(210)의 프로그램 패스워드는 사용자가 이동식 매체(100) 내에 저장된 HSM 기반 접근 제어 모듈(110)을 최초 실행 시에만 설정이 가능하다.The program password of the HSM-based access control module 210 loaded in the user PC 200 can be set only at the time of initial execution of the HSM-based access control module 110 stored in the mobile medium 100 by the user.

도 3을 참고하면, 프로그램 패스워드를 설정하기 위해서는 먼저, 이동식 매체(100)를 사용자 PC(200)에 연결하고(S305), 이동식 매체(100)의 HSM 기반 접근 제어 모듈(110)을 사용자 PC(200)에 로딩하기 위해 실행시켜야 한다(S310). HSM 기반 접근 제어 모듈(110)을 실행시키면 사용자 PC(200)에 로딩된다(S315).3, in order to set the program password, the mobile medium 100 is connected to the user PC 200 (S305), and the HSM-based access control module 110 of the mobile medium 100 is connected to the user PC 200) (S310). When the HSM-based access control module 110 is executed, the HSM-based access control module 110 is loaded into the user PC 200 (S315).

이동식 매체(100)에 있는 HSM 기반 접근 제어 모듈(110)을 사용자 PC(200)에 로딩하는 단계(S315) 이후, 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)의 패스워드를 설정하는 과정을 거치게 된다. 이를 프로그램 패스워드라고 한다.The process of setting the password of the HSM-based access control module 210 of the user PC 200 after the step S315 of loading the HSM-based access control module 110 in the mobile medium 100 to the user PC 200 . This is called the program password.

사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)은 사용자에게 HSM 기반 접근 제어 모듈(210)의 프로그램 패스워드를 설정할 것을 요청하는 메시지를 전송한다(S320).The HSM-based access control module 210 of the user PC 200 transmits a message requesting the user to set the program password of the HSM-based access control module 210 at step S320.

사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)은 사용자로부터 프로그램 패스워드를 입력 받는다(S325).The HSM-based access control module 210 of the user PC 200 receives the program password from the user (S325).

사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)은 수신한 프로그램 패스워드를 암호화하고, 이동식 매체(100) 내의 저장공간(120)에 암호화된 프로그램 패스워드를 저장한다(S330).The HSM-based access control module 210 of the user PC 200 encrypts the received program password and stores the encrypted program password in the storage space 120 in the mobile medium 100 (S330).

사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)은 사용자에게 프로그램 패스워드가 등록 완료되었다는 메시지를 전송한다(S335).The HSM-based access control module 210 of the user PC 200 transmits a message indicating that the program password is registered to the user (S335).

[웹 서비스 패스워드 갱신 과정][Web Service Password Renewal Process]

도 4를 참고하면, 웹 서비스 인증 과정을 수행 후 웹 서비스 패스워드를 갱신하는 경우, 다음의 과정을 거친다.Referring to FIG. 4, when a web service password is updated after performing a web service authentication process, the following process is performed.

상기 단계(S285) 이후, 즉, 웹 서비스 인증 절차를 거친 후 웹 서비스 서버(300)에 로그인 되어 있는 상태에서 다음의 과정을 수행한다.After the step S285, that is, after the web service authentication process, the web service server 300 performs the following process while logged in.

먼저, 사용자 PC(200)에서 웹 서비스 서버(300)로 접속하여 해당 웹 서비스 서버(300)의 사용자 패스워드를 갱신한다(S410).First, the user PC 200 accesses the web service server 300 and updates the user password of the corresponding web service server 300 (S410).

웹 서비스 서버(300)는 패스워드 관리 모듈(미도시)을 실행하여 사용자 패스워드를 갱신하고, 사용자 PC(200)로 웹 서비스 서버(300)의 사용자 패스워드가 갱신 완료되었다는 메시지를 전송한다(S420).The web service server 300 executes a password management module (not shown) to update the user password and transmits a message indicating that the user password of the web service server 300 has been updated to the user PC 200 (S420).

사용자는 사용자 PC(200)를 통해 웹 서비스 서버(300)의 사용자 패스워드 갱신 완료를 확인한 후, 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)에서 해당 웹 서비스 선택 및 사용자 패스워드 갱신 메뉴를 선택한다(S430).The user confirms completion of updating the user password of the web service server 300 through the user PC 200 and then selects the web service selection and the user password update menu in the HSM based access control module 210 of the user PC 200 (S430).

사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)은 사용자에게 갱신이 필요한 사용자 패스워드를 요청한다(S440).The HSM-based access control module 210 of the user PC 200 requests the user for a user password to be updated (S440).

사용자는 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)로 갱신된 사용자 패스워드를 전송한다(S450).The user transmits the updated user password to the HSM-based access control module 210 of the user PC 200 (S450).

사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)은 이동식 매체(100)의 저장공간(120)에서 기존에 암호화된 사용자 패스워드를 파기하고, 갱신된 사용자 패스워드를 암호화하여 저장한다(S460).The HSM-based access control module 210 of the user PC 200 discards the encrypted user password in the storage space 120 of the removable medium 100 and encrypts and stores the updated user password in operation S460.

사용자는 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)로부터 사용자 패스워드가 갱신 완료되었음을 확인한다(S470).The user confirms that the user password is updated from the HSM-based access control module 210 of the user PC 200 (S470).

본 발명의 실시 예인 패스워드 노출 없는 소프트웨어 방식의 HSM을 이용한 사용자 인증 시스템에 대해서 설명한다. 상기에서 설명한 내용과 중복되는 부분은 구체적인 설명을 생략한다.A user authentication system using HSM of a password-free software type, which is an embodiment of the present invention, will be described. A detailed description of the parts overlapping with those described above will be omitted.

도 5를 참고하면, 패스워드 노출 없는 소프트웨어 방식의 HSM을 이용한 사용자 인증 시스템은, 일반 이동식 매체에 저장된 HSM(Hardware Security Module) 기능의 소프트웨어를 사용자 PC에 로딩시킨 후 인증 절차를 진행하는 시스템으로서, 이동식 매체(100), 사용자 PC(200) 및 웹 서비스 서버(300)를 포함한다.Referring to FIG. 5, a user authentication system using a software-based HSM with no password exposure is a system for loading an HSM (Hardware Security Module) function software stored in a general mobile medium into a user PC, A medium 100, a user PC 200, and a web service server 300.

이동식 매체(100)는 HSM 기반 접근 제어 모듈(110)과 저장공간(120)을 구비하고, 사용자 PC(200)는 HSM 기반 접근 제어 모듈(210)과 사용자 인증 모듈(220)을 구비한다. 그리고 웹 서비스 서버(300)는 이동식 매체 등록 및 등록확인 모듈(310)과 계정 관리 DB(320)를 구비한다.The mobile medium 100 includes an HSM based access control module 110 and a storage space 120. The user PC 200 includes an HSM based access control module 210 and a user authentication module 220. The web service server 300 includes a mobile media registration and registration confirmation module 310 and an account management DB 320.

이동식 매체(100)는 HSM 기반 접근 제어 모듈(110)과 암호화된 내용을 저장하는 저장공간(120)을 가지고 있다.The mobile medium 100 has an HSM-based access control module 110 and a storage space 120 for storing encrypted contents.

이동식 매체(100)는 사용자로부터 실행 요청이 있으면 HSM 기반 접근 제어 모듈(110)을 사용자 PC(200)에 로딩시키고, 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)로부터 상기 저장공간(120)의 이동식 매체 고유정보 읽기 요청을 수신하면, 저장공간(120)에서 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)로 이동식 매체 고유정보를 전송한다.The mobile medium 100 loads the HSM-based access control module 110 into the user PC 200 when an execution request is received from the user and transfers the HSM-based access control module 110 from the HSM- based access control module 210 of the user PC 200 to the storage space 120 The MS 200 transmits the removable medium specific information to the HSM-based access control module 210 of the user PC 200 in the storage space 120.

사용자 PC(200)는 상기 이동식 매체(100)로부터 로딩된 HSM 기반 접근 제어 모듈(210)과 하기의 웹 서비스 서버(300)와 SSL(Secure Sockets Layer) 통신을 수행하는 사용자 인증 모듈(220)을 포함한다.The user PC 200 includes a HSM-based access control module 210 loaded from the mobile medium 100 and a user authentication module 220 for performing SSL (Secure Sockets Layer) communication with the web service server 300 .

이동식 매체(100)의 HSM 기반 접근 제어 모듈(110)이 사용자 PC(200)에 로딩된 후 사용자 PC(200)에 로딩된 HSM 기반 접근 제어 모듈(210)은 사용자 PC(200)를 통해 사용자로부터 입력된 프로그램 패스워드를 이동식 매체(100) 내의 저장공간(120)에 저장되어 있는 프로그램 패스워드와 비교하여 일치 여부를 확인한다.The HSM-based access control module 210 loaded on the user PC 200 after the HSM-based access control module 110 of the mobile medium 100 is loaded on the user PC 200 is accessed from the user via the user PC 200 The inputted program password is compared with the program password stored in the storage space 120 in the mobile medium 100 to check whether or not the program password is matched.

HSM 기반 접근 제어 모듈(210)은 프로그램 패스워드가 불일치하면 프로그램 패스워드의 입력을 다시 요청하고, 프로그램 패스워드가 일치하면 로그인이 성공한 것으로 판단한다.The HSM-based access control module 210 requests input of the program password again if the program passwords do not match, and determines that the login is successful when the program passwords match.

사용자는 상기 사용자 인증 모듈(220)을 통해 이동식 매체(100)를 등록 또는 갱신하는 메뉴를 선택하고, 사용자 인증 모듈(220)을 통해 해당 웹 서비스의 주소와 사용자 아이디 및 패스워드를 입력한다.The user selects a menu for registering or updating the mobile medium 100 through the user authentication module 220 and inputs the address and the user ID and password of the corresponding web service through the user authentication module 220.

상기 사용자 인증 모듈(220)은 사용자 PC(200)가 로그인 되어 있는 해당 웹 서비스 서버(300)의 사용자 아이디 및 패스워드와 상기 사용자 PC(200)에 연결된 이동식 매체(100)를 등록 또는 갱신 요청하는 메시지를 해당 웹 서비스 서버(300)로 전송한다.The user authentication module 220 transmits a message requesting registration or renewal of the user ID and password of the web service server 300 in which the user PC 200 is logged in and the portable medium 100 connected to the user PC 200 To the corresponding web service server 300.

웹 서비스 서버(300)에서 본인 확인을 위한 2차 인증 후 사용자 PC(200)의 사용자 인증 모듈(220)이 이동식 매체 고유정보를 요청하는 메시지를 수신하면 HSM 기반 접근 제어 모듈(210)은 이동식 매체 고유정보를 요청하는 메시지를 이동식 매체(100)에 전송하여 이동식 매체(100)의 저장공간(120)에서 이동식 매체 고유정보를 읽어오고, 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)이 이동식 매체 고유정보를 상기 웹 서비스 서버(300)로 전송한다.When the user authentication module 220 of the user PC 200 receives the message requesting the mobile medium specific information after the second authentication for confirming the identity in the web service server 300, the HSM- The HSM-based access control module 210 of the user PC 200 reads the mobile medium specific information from the storage space 120 of the mobile medium 100 by transmitting a message requesting the unique information to the mobile medium 100, And transmits the mobile medium specific information to the web service server 300.

사용자 인증 모듈(220)이 상기 웹 서비스 서버(300)로부터 이동식 매체 등록 또는 갱신 완료 메시지를 수신하면 해당 웹 서비스 사용자 등록 또는 갱신이 정상적으로 완료된 것으로 확인하고, 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)은 해당 웹 서비스의 사용자 아이디, 패스워드, 웹 서비스 정보를 암호화하여 이동식 매체(100) 내의 저장공간(120)에 암호화된 내용을 저장하며, 이동식 매체 계정 등록 결과 확인 메시지를 사용자에게 표시한다.When the user authentication module 220 receives the mobile media registration or update completion message from the web service server 300, it confirms that the corresponding web service user registration or update is completed normally, (210) encrypts the user ID, password, and web service information of the web service, stores the encrypted content in the storage space (120) in the mobile medium (100), and displays the confirmation message of the mobile medium account registration result to the user .

웹 서비스 서버(300)는 상기 사용자 PC(200)의 사용자 인증 모듈(220)과 SSL 통신을 수행하고, 사용자 PC(200)의 사용자 인증 모듈(220)로부터 이동식 매체를 등록 또는 갱신 요청하는 메시지를 수신하면 사용자 아이디와 패스워드를 이용하여 저장공간에서 해당 사용자의 정보를 검색 후 본인 확인을 위한 2차 인증을 수행한다.The web service server 300 performs SSL communication with the user authentication module 220 of the user PC 200 and transmits a message requesting registration or update of the removable medium from the user authentication module 220 of the user PC 200 Upon receiving the information, the information of the user is retrieved from the storage space using the user ID and the password, and the secondary authentication for confirming the identity is performed.

2차 인증에 성공하면 사용자 PC(200)의 사용자 인증 모듈(220)에 이동식 매체 고유정보를 요청하고, 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)로부터 이동식 매체 고유정보를 수신하면, 이동식 매체 등록 및 등록확인 모듈(310)은 수신한 이동식 매체 고유정보를 이용하여 이동식 매체 등록 또는 갱신을 수행하고, 이동식 매체 등록 또는 갱신 완료 메시지를 사용자 PC(200)의 사용자 인증 모듈(220)에 전송한다. If the secondary authentication is successful, the mobile communication terminal requests the mobile communication medium specific information to the user authentication module 220 of the user PC 200 and receives the mobile medium specific information from the HSM based access control module 210 of the user PC 200, The mobile media registration and registration confirmation module 310 performs a mobile media registration or update using the received mobile medium specific information and transmits a mobile media registration or update completion message to the user authentication module 220 of the user PC 200 send.

여기서 패스워드, 즉 사용자 패스워드는 해당 웹 서비스 서버의 사용자 패스워드이다.Here, the password, i.e., the user password, is the user password of the corresponding web service server.

상기 이동식 매체(100)는 저장공간(120)에 하나 이상의 웹 서비스 목록을 저장하고, 사용자 PC(200)에서 실행되는 HSM 기반 접근 제어 모듈(210)의 요청에 따라 웹 서비스 목록을 제공하고, 저장공간(120)에 웹 서비스 사용자 아이디, 패스워드 및 웹 서비스 정보를 암호화하여 저장한다.The mobile medium 100 stores one or more web services list in the storage space 120 and provides a web service list according to a request of the HSM based access control module 210 executed in the user PC 200, And encrypts and stores the web service user ID, password, and web service information in the space 120.

상기 사용자 PC(200)는 이동식 매체(100)로부터 로딩된 HSM 기반 접근 제어 모듈(210)이 상기 사용자 PC(200)로부터 사용자 인증 수행 요청 메시지를 수신하면 상기 사용자 PC(200)에서 실행되는 HSM 기반 접근 제어 모듈(210)은 사용자에게 프로그램 패스워드의 입력을 요청한다. When the HSM-based access control module 210 loaded from the mobile medium 100 receives the user authentication execution request message from the user PC 200, the user PC 200 accesses the HSM- The access control module 210 requests the user to input a program password.

사용자 PC(200)에서 실행되는 HSM 기반 접근 제어 모듈(210)이 사용자로부터 프로그램 패스워드를 입력 받으면, 프로그램 패스워드를 이동식 매체(100) 내의 저장공간(120)에 저장되어 있는 프로그램 패스워드와 비교하여 일치 여부를 확인한다.When the HSM-based access control module 210 executed in the user PC 200 receives the program password from the user, the program password is compared with the program password stored in the storage space 120 in the mobile medium 100, .

비교 결과 프로그램 패스워드가 불일치하면 사용자 PC(200)에서 실행되는 HSM 기반 접근 제어 모듈(210)이 상기 사용자에게 프로그램 패스워드의 입력을 다시 요청한다.As a result of the comparison, if the program passwords do not coincide with each other, the HSM-based access control module 210 executed in the user PC 200 requests the user to input the program password again.

프로그램 패스워드가 일치하면 상기 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)은 사용자가 로그인에 성공한 것으로 판단하고, 사용자 PC(200)에서 실행되는 HSM 기반 접근 제어 모듈(210)은 이동식 매체(100) 내의 저장공간(120)에 저장되어 있는 하나 이상의 웹 서비스 목록 중에서 사용자의 선택을 요청한다.When the program passwords match, the HSM-based access control module 210 of the user PC 200 determines that the user has succeeded in logging in, and the HSM-based access control module 210, which is executed in the user PC 200, 100 from the one or more web service lists stored in the storage space 120. [

사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)은 사용자로부터 웹 서비스 정보를 수신하면, 해당 웹 서비스 서버(300)로 이동식 매체(100)에 저장된 이동식 매체의 고유 정보를 전송하고, 해당 웹 서비스 서버(300)의 솔트(salt)값을 요청하는 사용자 인증 메시지를 전송한다.Upon receiving the web service information from the user, the HSM-based access control module 210 of the user PC 200 transmits unique information of the removable medium stored in the removable medium 100 to the web service server 300, And transmits a user authentication message requesting a salt value of the service server 300.

사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)은 이동식 매체(100)의 저장공간(120)에 암호화되어 저장된 해당 웹 서비스 사용자 아이디, 패스워드, 웹 서비스 정보와, 상기 웹 서비스 서버(300)로부터 수신한 일회용 솔트값 및 해시 함수 반복 횟수를 적용하여 솔팅(Salting)과 키 스트레칭(key stretching)을 반복 수행함으로써 다이제스트(α)를 생성하고, 생성된 다이제스트(α)를 웹 서비스 서버(300)로 전송한다. The HSM-based access control module 210 of the user PC 200 accesses the corresponding web service user ID, password, and web service information encrypted and stored in the storage space 120 of the mobile medium 100, And generates the digest alpha by repeating the salting and the key stretching by applying the disposable salt value and the hash function repetition count received from the web service server 300 to the web service server 300, Lt; / RTI >

여기서 프로그램 패스워드는 사용자 PC(200)에서 실행되는 HSM 기반 접근 제어 모듈(210)의 패스워드로서, HSM 기반 접근 제어 모듈(210)을 통해 이동식 매체(100)의 저장공간(120)에 접근하기 위해 필요한 것이다.Herein, the program password is a password of the HSM-based access control module 210 executed in the user PC 200, and is required to access the storage space 120 of the removable medium 100 through the HSM-based access control module 210 will be.

상기 웹 서비스 서버(300)의 이동식 매체 등록 및 등록확인 모듈(310)은 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)로부터 수신한 이동식 매체의 고유 정보를 계정 관리 DB(320)에 기 저장된 이동식 매체의 고유 정보와 비교를 통해 등록된 사용자인지 확인한다.The mobile media registration and registration confirmation module 310 of the web service server 300 transmits unique information of the removable media received from the HSM based access control module 210 of the user PC 200 to the account management DB 320 And verifies that the user is a registered user by comparing with the unique information of the stored removable medium.

등록되지 않은 사용자이면 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)로 거절 메시지를 전송하고, 등록된 사용자이면 일회용 솔트값을 생성하여 해시 함수 반복 횟수와 함께 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)로 전송한다.If the user is an unregistered user, the rejection message is transmitted to the HSM-based access control module 210 of the user PC 200. If the user is a registered user, the disposable salt value is generated, and the HSM- To the access control module 210.

생성된 일회용 솔트값은 계정 관리 DB(320)에 해당 이동식 매체(100)의 고유 정보와 매칭하여 저장하고, 상기 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)에서 생성된 다이제스트(α)를 수신하면 서버에 저장되어 있는 웹 서비스 사용자 아이디, 패스워드, 웹 서비스 정보와, 상기의 일회용 솔트값 및 해시 함수 반복 횟수를 적용하여 솔팅과 키 스트레칭을 반복 수행함으로써 다이제스트(β)를 생성한다.The generated disposable salt value is stored in the account management DB 320 in a manner matching with the unique information of the removable medium 100 and stored in the account management DB 320. The digest alpha generated by the HSM based access control module 210 of the user PC 200, The web service user ID, password, web service information, and the disposable salt value and the hash function repetition number stored in the server are repeatedly subjected to the solving and key stretching to generate a digest.

이동식 매체(100)로부터 수신한 다이제스트(α)와 서버 자신이 생성한 다이제스트(β)를 비교하여 일치 여부를 확인하고, 불일치하면 상기 사용자 PC(200)의 사용자 인증 모듈(210)로 다이제스트(α)의 재전송을 요청하고, 일치하면 사용자 인증에 성공한 것으로 판단하여 사용자 PC(200)로 웹 서비스를 제공한다.The digest α received from the mobile medium 100 is compared with the digest β generated by the server itself to check whether or not the digest α matches the digest α. If the digest α is not matched, the user authentication module 210 of the user PC 200 generates a digest α If it is determined that the user authentication is successful, it is determined that the user authentication is successful and the web service is provided to the user PC 200.

구체적으로, 상기 이동식 매체(100)는 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)로부터 수신한 암호화된 프로그램 패스워드를 이동식 매체(100) 내의 저장공간(120)에 저장한다.Specifically, the mobile medium 100 stores the encrypted program password received from the HSM-based access control module 210 of the user PC 200 in the storage space 120 in the mobile medium 100.

상기 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)은 사용자에게 HSM 기반 접근 제어 모듈(210)의 프로그램 패스워드를 설정할 것을 요청하는 메시지를 전송한다.The HSM-based access control module 210 of the user PC 200 transmits a message requesting the user to set the program password of the HSM-based access control module 210.

사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)은 사용자로부터 프로그램 패스워드를 수신하면, 수신한 프로그램 패스워드를 암호화하여 이동식 매체(100) 내의 저장공간(120)에 암호화된 프로그램 패스워드를 저장하고, 사용자에게 프로그램 패스워드가 등록 완료되었다는 메시지를 전송한다.When the HSM-based access control module 210 of the user PC 200 receives the program password from the user, the HSM-based access control module 210 encrypts the received program password to store the encrypted program password in the storage space 120 in the mobile medium 100, And sends a message to the user that the program password has been registered.

그리고, 상기 사용자 PC(200)는 웹 서비스 서버(300)로 해당 웹 서비스 서버(300)의 사용자 패스워드를 갱신 요청하고, 웹 서비스 서버(300)로부터 사용자 패스워드가 갱신 완료되었다는 메시지를 수신하면, 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)에서 해당 웹 서비스 선택 및 사용자 패스워드 갱신 메뉴를 선택한다.When the user PC 200 requests the web service server 300 to update the user password of the web service server 300 and receives a message indicating that the user password has been updated from the web service server 300, The HSM-based access control module 210 of the PC 200 selects the web service selection and the user password update menu.

사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)은 사용자에게 갱신이 필요한 사용자 패스워드를 요청하고, 사용자는 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)로 갱신된 사용자 패스워드를 전송한다.The HSM-based access control module 210 of the user PC 200 requests a user password to be updated, and the user transmits the updated user password to the HSM-based access control module 210 of the user PC 200 .

그리고, 상기 웹 서비스 서버(300)는 사용자 PC(200)로부터 사용자 패스워드 갱신 요청을 수신하면, 패스워드 관리 모듈(미도시)을 실행하여 사용자 패스워드를 갱신하고, 사용자 PC(200)의 사용자 인증 모듈(220)로 웹 서비스 서버(300)의 사용자 패스워드가 갱신 완료되었다는 메시지를 전송한다.When the web service server 300 receives the user password update request from the user PC 200, the web service server 300 executes a password management module (not shown) to update the user password, 220 transmits a message indicating that the user password of the web service server 300 has been updated.

상기 사용자 PC(200)의 HSM 기반 접근 제어 모듈(210)은 사용자로부터 해당 웹 서비스 선택 및 사용자 패스워드 갱신 메뉴를 선택 받으면, 사용자에게 갱신이 필요한 사용자 패스워드를 요청한다.When the HSM-based access control module 210 of the user PC 200 selects the web service selection and the user password update menu from the user, the HSM-based access control module 210 requests the user to request a user password to be updated.

사용자로부터 갱신된 사용자 패스워드를 수신하면, 저장공간(120)에 기존에 암호화된 사용자 패스워드를 파기하고, 갱신된 사용자 패스워드를 암호화하여 저장한다. Upon receiving the updated user password from the user, the encrypted user password is discarded in the storage space 120, and the updated user password is encrypted and stored.

그리고 사용자 패스워드 갱신 완료 메시지를 사용자 PC(200)로 전송한다.And transmits a user password update completion message to the user PC 200.

이상과 같이 본 발명은 USB와 같은 일반 이동식 매체에 소프트웨어 방식의 HSM 모듈을 저장함으로써 종래의 하드웨어 방식의 보안토큰에 비해 가격이 저렴하여 범용적으로 사용될 수가 있으며, 다수 사이트의 다양한 패스워드를 기억할 필요 없이, 이동식 매체만 소지하고 있으면 편리하고 안전하게 웹 서비스를 이용할 수가 있다.As described above, according to the present invention, a software type HSM module is stored in a general removable medium such as a USB, so that it can be used for general purposes because it is less expensive than a conventional hardware type security token. , You can use web services conveniently and safely if you have only mobile media.

그리고, 본 발명의 기본적인 기술적 사상의 범주 내에서 당해 업계 통상의 지식을 가진 자에게 있어서는 다른 많은 변형 및 응용 또한 가능함은 물론이다.It will be apparent to those skilled in the art that many other modifications and applications are possible within the scope of the basic technical idea of the present invention.

100...이동식 매체
110...HSM 기반 접근 제어 모듈
120...저장공간
200...사용자 PC
210...HSM 기반 접근 제어 모듈
220...사용자 인증 모듈
300...웹 서비스 서버
310...이동식 매체 등록 및 등록확인 모듈
320...계정 관리 DB
100 ... portable media
110 ... HSM-based access control module
120 ... storage space
200 ... User PC
210 ... HSM-based access control module
220 ... user authentication module
300 ... web service server
310 ... removable media registration and registration confirmation module
320 ... Account Management DB

Claims (6)

일반 이동식 매체에 저장된 HSM(Hardware Security Module) 기능의 소프트웨어를 사용자 PC에 로딩시킨 후 인증 절차를 진행하는 HSM을 이용한 사용자 인증 방법으로서,
HSM 기반 접근 제어 모듈을 저장하는 이동식 매체를 USB 인터페이스를 통해 사용자 PC에 연결하는 단계(S105);
상기 이동식 매체의 HSM 기반 접근 제어 모듈을 사용자 PC에 로딩시키기 위해 실행하는 단계(S110);
상기 이동식 매체의 HSM 기반 접근 제어 모듈을 사용자 PC에 로딩시키는 단계(S115);
사용자 PC에 입력된 프로그램 패스워드를 사용자 PC의 HSM 기반 접근 제어 모듈로 전달하는 단계(S120);
사용자 PC의 HSM 기반 접근 제어 모듈은 전달받은 프로그램 패스워드를 이동식 매체 내의 저장공간에 저장되어 있는 프로그램 패스워드와 비교하여 일치 여부를 확인하는 단계(S125);
비교 결과, 프로그램 패스워드가 불일치하면 상기 사용자 PC의 HSM 기반 접근 제어 모듈은 프로그램 패스워드의 입력을 다시 요청하는 단계(S130);
상기 비교 결과, 프로그램 패스워드가 일치하면 상기 사용자 PC의 HSM 기반 접근 제어 모듈은 로그인이 성공한 것으로 판단하는 단계(S135);
사용자 PC의 사용자 인증 모듈을 통해 이동식 매체를 등록 또는 갱신하는 메뉴를 선택하는 단계(S140);
사용자 PC의 사용자 인증 모듈을 통해 해당 웹 서비스의 주소와 사용자 아이디 및 패스워드를 입력하는 단계(S145);
사용자 PC의 사용자 인증 모듈은 사용자 PC가 로그인 되어 있는 해당 웹 서비스 서버의 사용자 아이디 및 패스워드와 상기 사용자 PC에 연결된 이동식 매체를 등록 또는 갱신 요청하는 메시지를 해당 웹 서비스 서버로 전송하는 단계(S150);
웹 서비스 서버는 이동식 매체 등록 및 등록확인 모듈을 통해 사용자 PC에 연결된 이동식 매체를 등록 또는 갱신 요청 메시지를 확인하는 단계(S155);
웹 서비스 서버는 수신한 사용자 아이디와 패스워드를 이용하여 저장공간에서 해당 사용자의 정보를 검색 후 본인 확인을 위한 2차 인증을 수행하는 단계(S160);
2차 인증에 성공하면, 사용자 PC의 사용자 인증 모듈에 이동식 매체 고유정보를 요청하는 단계(S165);
사용자 PC의 HSM 기반 접근 제어 모듈은 사용자 인증 모듈로부터 이동식 매체 고유정보 요청 메시지를 전달 받은 후 상기 이동식 매체 저장공간의 이동식 매체 고유정보를 읽는 단계(S170);
이동식 매체의 저장공간에서 사용자 PC의 HSM 기반 접근 제어 모듈로 이동식 매체 고유정보를 전송하는 단계(S175);
사용자 PC의 HSM 기반 접근 제어 모듈은 이동식 매체 고유정보를 상기 웹 서비스 서버로 전송하는 단계(S180);
웹 서비스 서버의 이동식 매체 등록 및 등록확인 모듈은 수신한 이동식 매체 고유정보를 이용하여 이동식 매체 등록 또는 갱신을 수행하고, 이동식 매체 등록 또는 갱신 완료 메시지를 사용자 PC의 사용자 인증 모듈에 전송하는 단계(S185);
사용자 PC의 사용자 인증 모듈이 해당 웹 서비스 사용자 등록 또는 갱신이 정상적으로 완료된 것을 확인하는 단계(S190);
사용자 PC의 HSM 기반 접근 제어 모듈은 해당 웹 서비스의 사용자 아이디, 패스워드, 웹 서비스 정보를 암호화하여 이동식 매체 내의 저장공간에 암호화된 내용을 저장하는 단계(S193) - 상기의 패스워드, 즉 사용자 패스워드는 해당 웹 서비스 서버의 사용자 패스워드임 -;
사용자는 사용자 PC의 HSM 기반 접근 제어 모듈로부터 이동식 매체 등록 또는 갱신이 완료되었음을 확인하는 단계(S195);
사용자가 사용자 PC의 HSM 기반 접근 제어 모듈로 사용자 인증 수행을 요청하는 단계(S220);
사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈이 상기 사용자에게 프로그램 패스워드의 입력을 요청하는 단계(S225) - 상기 프로그램 패스워드는 사용자 PC에 로드 된 HSM 기반 접근 제어 모듈의 패스워드로서, 허가된 사용자가 HSM 기반 접근 제어 모듈을 사용하기 위해 필요한 것임 -;
사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈이 사용자로부터 프로그램 패스워드를 입력 받는 단계(S230);
사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈이 전달받은 프로그램 패스워드를 이동식 매체 내의 저장공간에 저장되어 있는 프로그램 패스워드와 비교하여 일치 여부를 확인하는 단계(S235);
비교 결과, 프로그램 패스워드가 불일치하면 사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈이 상기 사용자에게 프로그램 패스워드의 입력을 다시 요청하는 단계(S240);
상기 비교 결과, 프로그램 패스워드가 일치하면 상기 사용자 PC의 HSM 기반 접근 제어 모듈은 사용자가 로그인에 성공한 것으로 판단하는 단계(S245);
사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈이 이동식 매체 에 저장되어 있는 하나 이상의 웹 서비스 목록 중에서 사용자의 선택을 요청하는 단계(S250);
사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈은 사용자로부터 웹 서비스 정보를 수신하면, 해당 웹 서비스 서버로 이동식 매체에 저장된 이동식 매체의 고유 정보를 전송하고, 해당 웹 서비스 서버의 솔트(Salt)값을 요청하는 사용자 인증 요청 메시지를 전송하는 단계(S255);
웹 서비스 서버의 이동식 매체 등록 및 등록확인 모듈은 수신한 이동식 매체의 고유 정보를 가지고 등록된 사용자인지 확인하여, 등록되지 않은 사용자이면 사용자 PC의 HSM 기반 접근 제어 모듈로 거절 메시지를 전송하는 단계(S260);
확인 결과, 등록된 사용자이면 웹 서비스 서버는 일회용 솔트값을 생성하여 해시 함수 반복 횟수와 함께 사용자 PC의 HSM 기반 접근 제어 모듈로 전송하는 단계(S265);
사용자 PC의 HSM 기반 접근 제어 모듈은 이동식 매체의 저장공간에 암호화되어 저장된 해당 웹 서비스 사용자 아이디, 패스워드, 웹 서비스 정보와, 웹 서비스 서버로부터 수신한 일회용 솔트값 및 해시 함수 반복 횟수를 적용하여 솔팅(Salting)과 키 스트레칭(key stretching)을 반복 수행함으로써, 다이제스트(Digest)를 생성하는 단계(S270);
사용자 PC의 HSM 기반 접근 제어 모듈은 상기 생성된 다이제스트를 웹 서비스 서버로 전송하는 단계(S275);
웹 서비스 서버는 서버에 저장되어 있는 웹 서비스 사용자 아이디, 패스워드, 웹 서비스 정보와, 상기에서 생성한 일회용 솔트값 및 해시 함수 반복 횟수를 적용하여 솔팅(Salting)과 키 스트레칭(key stretching)을 반복 수행함으로써, 다이제스트(Digest)를 생성하는 단계(S280); 및
웹 서비스 서버는 사용자 PC로부터 수신한 다이제스트와 자신이 생성한 다이제스트를 비교하여 일치 여부를 확인하고, 불일치하면 사용자 PC의 사용자 인증 모듈로 다이제스트의 재전송을 요청하고, 일치하면 사용자 인증에 성공한 것으로 판단하여 사용자 PC로 웹 서비스를 제공하는 단계(S285)를 포함하는 것을 특징으로 하는 패스워드 노출 없는 소프트웨어 방식의 HSM을 이용한 사용자 인증 방법.
1. A method for authenticating a user using an HSM for loading an HSM (Hardware Security Module) function software stored in a general mobile medium onto a user PC and then performing an authentication procedure,
Connecting the removable medium storing the HSM-based access control module to the user PC through the USB interface (S105);
Executing (S110) an HSM-based access control module of the removable medium to load the user's PC;
Loading the HSM-based access control module of the removable medium into the user PC (S115);
A step S120 of transmitting the program password input to the user PC to the HSM-based access control module of the user PC;
The HSM-based access control module of the user PC compares the received program password with the program password stored in the storage medium in the removable medium to confirm whether or not the program password is identical (S125);
If the result of the comparison shows that the program passwords do not coincide with each other, the HSM-based access control module of the user PC requests the input of the program password again (S 130);
If it is determined that the program passwords match, the HSM-based access control module of the user PC determines that the login is successful (S135);
Selecting (S140) a menu for registering or updating the removable medium through the user authentication module of the user PC;
A step (S145) of inputting an address and a user ID and a password of the corresponding web service through the user authentication module of the user PC;
The user authentication module of the user PC transmits the user ID and password of the corresponding web service server in which the user PC is logged in and a message requesting registration or update of the removable medium connected to the user PC to the corresponding web service server in operation S150.
(S155) the web service server confirms the registration or update request message of the removable medium connected to the user PC through the removable media registration and registration confirmation module;
The web service server performs a secondary authentication for identifying the user after retrieving the information of the user in the storage space using the received user ID and password (S160);
If the secondary authentication is successful, requesting the user authentication module of the user PC for the mobile medium specific information (S165);
The HSM-based access control module of the user PC receives the mobile medium specific information request message from the user authentication module and then reads the mobile medium specific information of the mobile medium storage space (S170);
Transmitting mobile media specific information from the storage space of the removable medium to the HSM based access control module of the user PC (S175);
The HSM-based access control module of the user PC transmits the mobile medium specific information to the web service server (S180);
The mobile media registration and registration confirmation module of the web service server performs registration or update of the mobile media using the received mobile media specific information and transmits the mobile media registration or update completion message to the user authentication module of the user PC );
A step (S190) of confirming that the user authentication module of the user PC has normally completed the corresponding Web service user registration or update;
The HSM-based access control module of the user PC encrypts the user ID, the password, and the web service information of the corresponding web service to store the encrypted content in the storage space in the mobile medium (S193) The user password of the web service server;
The user confirms (S195) that the portable media registration or update is completed from the HSM-based access control module of the user PC.
A step S220 of requesting the user to perform user authentication with the HSM-based access control module of the user PC;
(S225) the HSM-based access control module executing in the user PC requests input of the program password to the user, the program password being a password of the HSM-based access control module loaded in the user PC, What is needed to use the access control module;
A step (S230) of receiving a program password from the user by the HSM-based access control module executed in the user PC;
(S235) comparing the received program password with the program password stored in the storage medium in the removable medium by the HSM-based access control module running on the user PC, and checking whether the program password matches with the program password stored in the storage space of the removable medium;
As a result of the comparison, when the program password is inconsistent, the HSM-based access control module executed in the user PC requests the user to input the program password again (S240);
As a result of the comparison, if the program passwords match, the HSM-based access control module of the user PC judges that the user has succeeded in logging in (S245);
A step (S250) of requesting a selection of one or more web services stored in the mobile medium by the HSM-based access control module running on the user PC;
Upon receiving the web service information from the user, the HSM-based access control module executing in the user PC transmits the unique information of the removable medium stored in the removable medium to the web service server and requests the salt value of the web service server Transmitting a user authentication request message (S255);
The portable media registration and registration confirmation module of the web service server confirms whether the registered user is the registered user with the unique information of the received removable medium and transmits a reject message to the HSM based access control module of the user PC );
If it is determined that the user is a registered user, the web service server generates a disposable salt value and transmits the disposable salt value to the HSM-based access control module of the user PC together with the hash function repetition number (S265).
The HSM-based access control module of the user's PC uses the corresponding web service user ID, password, web service information encrypted in the storage space of the removable media, and disposable salt value and hash function repetition number received from the web service server, Salting) and key stretching to generate a digest (S270);
The HSM-based access control module of the user PC transmits the generated digest to the web service server (S275);
The web service server repeatedly performs salting and key stretching by applying the web service user ID, password, web service information, and the disposable salt value and hash function repetition number stored in the server. Thereby generating a digest (S280); And
The web service server compares the digest received from the user PC with the digest generated by the user and confirms whether or not the digest is matched. If the mismatch is found, the web service server requests the user authentication module of the user PC to retransmit the digest. And providing a web service to the user's PC (S285).
청구항 1에 있어서,
상기 단계(S115) 이후,
사용자 PC의 HSM 기반 접근 제어 모듈은 사용자에게 HSM 기반 접근 제어 모듈의 프로그램 패스워드를 설정할 것을 요청하는 메시지를 전송하는 단계(S320);
사용자 PC의 HSM 기반 접근 제어 모듈은 사용자로부터 프로그램 패스워드를 입력 받는 단계(S325);
사용자 PC의 HSM 기반 접근 제어 모듈은 수신한 프로그램 패스워드를 암호화하고, 이동식 매체 내의 저장공간에 암호화된 프로그램 패스워드를 저장하는 단계(S330); 및
사용자 PC의 HSM 기반 접근 제어 모듈은 사용자에게 프로그램 패스워드가 등록 완료되었다는 메시지를 전송하는 단계(S335)를 더 포함하는 것을 특징으로 하는 패스워드 노출 없는 소프트웨어 방식의 HSM을 이용한 사용자 인증 방법.
The method according to claim 1,
After the step S115,
The HSM-based access control module of the user PC transmits (S320) a message requesting the user to set the program password of the HSM-based access control module;
The HSM-based access control module of the user PC receives the program password from the user (S325);
The HSM-based access control module of the user PC encrypts the received program password and stores the encrypted program password in the storage space in the removable medium (S330); And
The HSM-based access control module of the user PC further includes a step S335 of transmitting a message indicating that the program password is registered to the user (S335).
청구항 2에 있어서,
상기 단계(S285) 이후,
사용자 PC에서 웹 서비스 서버로 접속하여 해당 웹 서비스 서버의 사용자 패스워드를 갱신하는 단계(S410);
웹 서비스 서버는 패스워드 관리 모듈을 실행하여 사용자 패스워드를 갱신하고, 사용자 PC로 웹 서비스 서버의 사용자 패스워드가 갱신 완료되었다는 메시지를 전송하는 단계(S420);
사용자는 사용자 PC를 통해 웹 서비스 서버의 사용자 패스워드 갱신 완료를 확인한 후, 사용자 PC의 HSM 기반 접근 제어 모듈에서 해당 웹 서비스 선택 및 사용자 패스워드 갱신 메뉴를 선택하는 단계(S430);
사용자 PC의 HSM 기반 접근 제어 모듈은 사용자에게 갱신이 필요한 사용자 패스워드를 요청하는 단계(S440);
사용자는 사용자 PC의 HSM 기반 접근 제어 모듈로 갱신된 사용자 패스워드를 전송하는 단계(S450);
사용자 PC의 HSM 기반 접근 제어 모듈은 이동식 매체의 저장공간에서 기존에 암호화된 사용자 패스워드를 파기하고, 갱신된 사용자 패스워드를 암호화하여 저장하는 단계(S460); 및
사용자는 사용자 PC의 HSM 기반 접근 제어 모듈로부터 사용자 패스워드가 갱신 완료되었음을 확인하는 단계(S470)를 더 포함하는 것을 특징으로 하는 패스워드 노출 없는 소프트웨어 방식의 HSM을 이용한 사용자 인증 방법.
The method of claim 2,
After the step S285,
A step S410 of accessing the web service server from the user PC and updating the user password of the web service server;
The web service server executes the password management module to update the user password, and transmits a message indicating that the user password of the web service server has been updated to the user PC (S420);
The user confirms completion of updating the user password of the web service server through the user PC, and then selects the web service selection and the user password update menu in the HSM-based access control module of the user PC (S430);
The HSM-based access control module of the user PC requests the user for a user password to be updated (S440);
The user transmits the updated user password to the HSM-based access control module of the user PC (S450).
The HSM-based access control module of the user PC discards the encrypted user password in the storage space of the removable medium, encrypts and stores the updated user password (S460); And
The method further comprises a step S470 of confirming that the user password is updated from the HSM-based access control module of the user PC (S470).
일반 이동식 매체에 저장된 HSM(Hardware Security Module) 기능의 소프트웨어를 사용자 PC에 로딩시킨 후 인증 절차를 진행하는 HSM을 이용한 사용자 인증 시스템으로서,
HSM 기반 접근 제어 모듈과 암호화된 내용을 저장하는 저장공간을 가지고 있으며, 사용자로부터 실행 요청이 있으면 HSM 기반 접근 제어 모듈을 사용자 PC에 로딩시키고, 사용자 PC의 HSM 기반 접근 제어 모듈로부터 상기 저장공간의 이동식 매체 고유정보 읽기 요청을 수신하면, 저장공간에서 사용자 PC의 HSM 기반 접근 제어 모듈로 이동식 매체 고유정보를 전송하는 이동식 매체;
상기 이동식 매체로부터 로딩된 HSM 기반 접근 제어 모듈과 하기의 웹 서비스 서버와 SSL(Secure Sockets Layer) 통신을 수행하는 사용자 인증 모듈을 포함하고, 상기 이동식 매체의 HSM 기반 접근 제어 모듈이 사용자 PC에 로딩된 후 사용자 PC에 로딩된 HSM 기반 접근 제어 모듈은 사용자 PC를 통해 사용자로부터 입력된 프로그램 패스워드를 이동식 매체 내의 저장공간에 저장되어 있는 프로그램 패스워드와 비교하여 일치 여부를 확인하여, 프로그램 패스워드가 불일치하면 프로그램 패스워드의 입력을 다시 요청하고, 프로그램 패스워드가 일치하면 로그인이 성공한 것으로 판단하며, 상기 사용자 인증 모듈을 통해 이동식 매체를 등록 또는 갱신하는 메뉴를 선택하고, 사용자 인증 모듈을 통해 해당 웹 서비스의 주소와 사용자 아이디 및 패스워드를 입력하고, 사용자 인증 모듈은 사용자 PC가 로그인 되어 있는 해당 웹 서비스 서버의 사용자 아이디 및 패스워드와 상기 사용자 PC에 연결된 이동식 매체를 등록 또는 갱신 요청하는 메시지를 해당 웹 서비스 서버로 전송하고, 웹 서비스 서버에서 본인 확인을 위한 2차 인증 후 사용자 PC의 사용자 인증 모듈이 이동식 매체 고유정보를 요청하는 메시지를 수신하면 HSM 기반 접근 제어 모듈은 이동식 매체 고유정보를 요청하는 메시지를 이동식 매체에 전송하여 이동식 매체의 저장공간에서 이동식 매체 고유정보를 읽어오고, 사용자 PC의 HSM 기반 접근 제어 모듈이 이동식 매체 고유정보를 상기 웹 서비스 서버로 전송하며, 사용자 인증 모듈이 상기 웹 서비스 서버로부터 이동식 매체 등록 또는 갱신 완료 메시지를 수신하면 해당 웹 서비스 사용자 등록 또는 갱신이 정상적으로 완료된 것으로 확인하고, 사용자 PC의 HSM 기반 접근 제어 모듈은 해당 웹 서비스의 사용자 아이디, 패스워드, 웹 서비스 정보를 암호화하여 이동식 매체 내의 저장공간에 암호화된 내용을 저장하며, 이동식 매체 계정 등록 결과 확인 메시지를 사용자에게 표시하는 사용자 PC; 및
상기 사용자 PC의 사용자 인증 모듈과 SSL 통신을 수행하고, 사용자 PC의 사용자 인증 모듈로부터 이동식 매체를 등록 또는 갱신 요청하는 메시지를 수신하면 사용자 아이디와 패스워드를 이용하여 저장공간에서 해당 사용자의 정보를 검색 후 본인 확인을 위한 2차 인증을 수행하며, 2차 인증에 성공하면 사용자 PC의 사용자 인증 모듈에 이동식 매체 고유정보를 요청하고, 사용자 PC의 HSM 기반 접근 제어 모듈로부터 이동식 매체 고유정보를 수신하면, 이동식 매체 등록 및 등록확인 모듈은 수신한 이동식 매체 고유정보를 이용하여 이동식 매체 등록 또는 갱신을 수행하고, 이동식 매체 등록 또는 갱신 완료 메시지를 사용자 PC의 사용자 인증 모듈에 전송하는 웹 서비스 서버를 포함하되 - 상기의 패스워드, 즉 사용자 패스워드는 해당 웹 서비스 서버의 사용자 패스워드임 -,
상기 이동식 매체는 저장공간에 하나 이상의 웹 서비스 목록을 저장하고, 사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈의 요청에 따라 웹 서비스 목록을 제공하고, 저장공간에 웹 서비스 사용자 아이디, 패스워드 및 웹 서비스 정보를 암호화하여 저장하며,
상기 사용자 PC는 이동식 매체로부터 로딩된 HSM 기반 접근 제어 모듈이 상기 사용자 PC로부터 사용자 인증 수행 요청 메시지를 수신하면 상기 사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈은 사용자에게 프로그램 패스워드의 입력을 요청하고, 사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈이 사용자로부터 프로그램 패스워드를 입력 받으면, 프로그램 패스워드를 이동식 매체 내의 저장공간에 저장되어 있는 프로그램 패스워드와 비교하여 일치 여부를 확인하고, 비교 결과 프로그램 패스워드가 불일치하면 사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈이 상기 사용자에게 프로그램 패스워드의 입력을 다시 요청하며, 프로그램 패스워드가 일치하면 상기 사용자 PC의 HSM 기반 접근 제어 모듈은 사용자가 로그인에 성공한 것으로 판단하고, 사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈은 이동식 매체 내의 저장공간에 저장되어 있는 하나 이상의 웹 서비스 목록 중에서 사용자의 선택을 요청하며, 사용자 PC의 HSM 기반 접근 제어 모듈은 사용자로부터 웹 서비스 정보를 수신하면, 해당 웹 서비스 서버로 이동식 매체에 저장된 이동식 매체의 고유 정보를 전송하고, 해당 웹 서비스 서버의 솔트(salt)값을 요청하는 사용자 인증 메시지를 전송하며, 사용자 PC의 HSM 기반 접근 제어 모듈은 이동식 매체의 저장공간에 암호화되어 저장된 해당 웹 서비스 사용자 아이디, 패스워드, 웹 서비스 정보와, 상기 웹 서비스 서버로부터 수신한 일회용 솔트값 및 해시 함수 반복 횟수를 적용하여 솔팅(Salting)과 키 스트레칭(key stretching)을 반복 수행함으로써 다이제스트(Digest)를 생성하고, 생성된 다이제스트를 웹 서비스 서버로 전송하며 - 상기 프로그램 패스워드는 사용자 PC에서 실행되는 HSM 기반 접근 제어 모듈의 패스워드임 -,
상기 웹 서비스 서버의 이동식 매체 등록 및 등록확인 모듈은 사용자 PC의 HSM 기반 접근 제어 모듈로부터 수신한 이동식 매체의 고유 정보를 계정 관리 DB에 기 저장된 이동식 매체의 고유 정보와 비교를 통해 등록된 사용자인지 확인하여, 등록되지 않은 사용자이면 사용자 PC의 HSM 기반 접근 제어 모듈로 거절 메시지를 전송하고, 등록된 사용자이면 일회용 솔트값을 생성하여 해시 함수 반복 횟수와 함께 사용자 PC의 HSM 기반 접근 제어 모듈로 전송하며, 생성된 일회용 솔트값은 계정 관리 DB에 해당 이동식 매체의 고유 정보와 매칭하여 저장하고, 상기 사용자 PC의 HSM 기반 접근 제어 모듈에서 생성된 다이제스트를 수신하면 서버에 저장되어 있는 웹 서비스 사용자 아이디, 패스워드, 웹 서비스 정보와, 상기의 일회용 솔트값 및 해시 함수 반복 횟수를 적용하여 솔팅과 키 스트레칭을 반복 수행함으로써 다이제스트를 생성하고, 사용자 PC로부터 수신한 다이제스트와 서버 자신이 생성한 다이제스트를 비교하여 일치 여부를 확인하고, 불일치하면 상기 사용자 PC의 사용자 인증 모듈로 다이제스트의 재전송을 요청하고, 일치하면 사용자 인증에 성공한 것으로 판단하여 사용자 PC로 웹 서비스를 제공하는 것을 특징으로 하는 패스워드 노출 없는 소프트웨어 방식의 HSM을 이용한 사용자 인증 시스템.
A system for authenticating a user using an HSM for loading an HSM (Hardware Security Module) function software stored on a general mobile medium into a user PC and then performing an authentication procedure,
Based access control module and a storage space for storing the encrypted contents. When the HSM-based access control module and the HSM-based access control module of the user PC have an execution request, the HSM- A removable medium for transferring the removable medium specific information from the storage space to the HSM based access control module of the user PC upon receiving the medium unique information reading request;
Based access control module loaded from the mobile medium and a user authentication module for performing SSL (Secure Sockets Layer) communication with the web service server, wherein the HSM-based access control module of the mobile medium is loaded in a user PC The HSM-based access control module loaded in the user PC compares the program password inputted from the user through the user PC with the program password stored in the storage medium in the removable medium to check whether or not the program password matches the program password. If the program password is inconsistent, And if the program passwords match, it is determined that the login is successful, and a menu for registering or updating the removable medium is selected through the user authentication module, and the address of the corresponding web service and the user ID And a password. The user authentication module transmits to the corresponding web service server a message for requesting registration or update of the user ID and password of the corresponding web service server in which the user PC is logged in and a removable medium connected to the user PC, The HSM-based access control module transmits a message requesting the mobile medium-specific information to the mobile medium and transmits the message requesting the mobile medium-specific information to the mobile medium in the storage area of the mobile medium. The HSM-based access control module of the user PC transmits the mobile medium specific information to the web service server. When the user authentication module receives the mobile media registration or update completion message from the web service server, Service user registration or renewal is normal The HSM-based access control module of the user PC encrypts the user ID, the password, and the web service information of the corresponding web service to store the encrypted content in the storage space in the removable medium, and confirms the result of the registration of the removable medium account A user PC displaying the message to the user; And
And performs SSL communication with the user authentication module of the user PC. Upon receiving a message requesting registration or update of the removable medium from the user authentication module of the user PC, the information of the user is retrieved from the storage space using the user ID and password If the secondary authentication is successful, the mobile communication terminal requests unique information of the mobile medium to the user authentication module of the user PC. Upon receiving the mobile medium specific information from the HSM-based access control module of the user PC, The media registration and registration confirmation module includes a web service server that performs registration or update of the mobile media using the received mobile medium specific information and transmits the mobile media registration or update completion message to the user authentication module of the user PC, The password of the web service server, that is, the user password, Password -,
The removable medium stores one or more web service lists in a storage space, provides a web service list according to a request of an HSM-based access control module executed in a user PC, and stores a web service user ID, a password, And then,
When the HSM-based access control module loaded from the mobile medium receives the user authentication execution request message from the user PC, the HSM-based access control module executed in the user PC requests the user to input the program password, When the HSM-based access control module running on the PC receives the program password from the user, the program password is compared with the program password stored in the storage medium in the removable medium to check whether or not the program password matches. The HSM-based access control module of the user PC determines that the user has succeeded in logging in. If the program password agrees, the HSM- The HSM-based access control module of the user PC requests the selection of one or more web services stored in the storage space in the portable medium. When the HSM-based access control module of the user PC receives the web service information from the user, The HSM-based access control module of the user PC transmits the unique information of the removable medium stored in the removable medium to the web service server and transmits a user authentication message requesting a salt value of the corresponding web service server, Salting and key stretching are repeated by applying the corresponding web service user ID, password, web service information, and disposable salt value and hash function repetition number received from the web service server, To generate a digest, and transmits the generated digest to the web service And the program password is a password of an HSM-based access control module executed in a user PC,
The portable media registration and registration confirmation module of the web service server compares the unique information of the portable media received from the HSM based access control module of the user PC with the unique information of the portable media stored in the account management DB If the user is an unregistered user, the reject message is transmitted to the HSM-based access control module of the user PC. If the user is a registered user, the disposable salt value is generated and transmitted to the HSM- The generated disposable salt value is stored in the account management DB in correspondence with the corresponding unique information of the removable medium. When the digest generated by the HSM-based access control module of the user PC is received, the web service user ID, password, Web service information, the disposable salt value, and the number of iterations of the hash function The digest received from the user PC is compared with the digest generated by the server itself to check whether or not the digest is matched. If the digest is not matched, the digest is retransmitted to the user authentication module of the user PC And if it matches, it is determined that the user authentication is successful, and the web service is provided to the user PC.
청구항 4에 있어서,
상기 이동식 매체는,
사용자 PC의 HSM 기반 접근 제어 모듈로부터 수신한 암호화된 프로그램 패스워드를 이동식 매체 내의 저장공간에 저장하고,
상기 사용자 PC의 HSM 기반 접근 제어 모듈은,
사용자에게 HSM 기반 접근 제어 모듈의 프로그램 패스워드를 설정할 것을 요청하는 메시지를 전송하고, 사용자로부터 프로그램 패스워드를 수신하면, 수신한 프로그램 패스워드를 암호화하여 이동식 매체 내의 저장공간에 암호화된 프로그램 패스워드를 저장하고, 사용자에게 프로그램 패스워드가 등록 완료되었다는 메시지를 전송하는 것을 특징으로 하는 패스워드 노출 없는 소프트웨어 방식의 HSM을 이용한 사용자 인증 시스템.
The method of claim 4,
Wherein the removable medium comprises:
Storing the encrypted program password received from the HSM-based access control module of the user PC in a storage space in the removable medium,
Wherein the HSM-based access control module of the user PC comprises:
And transmits a message requesting the user to set the program password of the HSM-based access control module. When the program password is received from the user, the encrypted program password is stored in the storage space in the removable medium by encrypting the received program password. And a message indicating that the program password is registered is transmitted to the user authentication system using the HSM.
청구항 5에 있어서,
상기 사용자 PC는 웹 서비스 서버로 해당 웹 서비스 서버의 사용자 패스워드를 갱신 요청하고, 웹 서비스 서버로부터 사용자 패스워드가 갱신 완료되었다는 메시지를 수신하면, 사용자 PC의 HSM 기반 접근 제어 모듈에서 해당 웹 서비스 선택 및 사용자 패스워드 갱신 메뉴를 선택하고, 사용자 PC의 HSM 기반 접근 제어 모듈은 사용자에게 갱신이 필요한 사용자 패스워드를 요청하고, 사용자는 사용자 PC의 HSM 기반 접근 제어 모듈로 갱신된 사용자 패스워드를 전송하며,
상기 웹 서비스 서버는 사용자 PC로부터 사용자 패스워드 갱신 요청을 수신하면, 패스워드 관리 모듈을 실행하여 사용자 패스워드를 갱신하고, 사용자 PC의 사용자 인증 모듈로 웹 서비스 서버의 사용자 패스워드가 갱신 완료되었다는 메시지를 전송하고,
상기 사용자 PC의 HSM 기반 접근 제어 모듈은 사용자로부터 해당 웹 서비스 선택 및 사용자 패스워드 갱신 메뉴를 선택 받으면, 사용자에게 갱신이 필요한 사용자 패스워드를 요청하며, 사용자로부터 갱신된 사용자 패스워드를 수신하면, 저장공간에 기존에 암호화된 사용자 패스워드를 파기하고, 갱신된 사용자 패스워드를 암호화하여 저장하며, 사용자 패스워드 갱신 완료 메시지를 사용자 PC로 전송하는 것을 특징으로 하는 패스워드 노출 없는 소프트웨어 방식의 HSM을 이용한 사용자 인증 시스템.
The method of claim 5,
When the user PC requests the update of the user password of the corresponding web service server as a web service server and receives a message indicating that the user password has been updated from the web service server, The HSM-based access control module of the user PC requests the user password to be updated, the user transmits the updated user password to the HSM-based access control module of the user PC,
The web service server updates the user password by executing the password management module and transmits a message indicating that the user password of the web service server has been updated to the user authentication module of the user PC,
When the HSM-based access control module of the user PC selects a corresponding web service and a user password update menu from the user, it requests a user password to be updated, and upon receiving the updated user password from the user, And encrypts and stores the updated user password, and transmits the user password update completion message to the user PC. The user authentication system using the HSM of the password-free software type.
KR1020170041723A 2017-03-31 2017-03-31 User authentication method and system using software-based HSM without password exposure KR101745919B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170041723A KR101745919B1 (en) 2017-03-31 2017-03-31 User authentication method and system using software-based HSM without password exposure

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170041723A KR101745919B1 (en) 2017-03-31 2017-03-31 User authentication method and system using software-based HSM without password exposure

Publications (1)

Publication Number Publication Date
KR101745919B1 true KR101745919B1 (en) 2017-06-27

Family

ID=59514925

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170041723A KR101745919B1 (en) 2017-03-31 2017-03-31 User authentication method and system using software-based HSM without password exposure

Country Status (1)

Country Link
KR (1) KR101745919B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101964757B1 (en) 2017-10-26 2019-04-03 주식회사 한줌 Certification system and method using OTP
KR102048534B1 (en) * 2018-05-31 2020-01-08 주식회사 핀업 Apparatus and method of authentication

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101964757B1 (en) 2017-10-26 2019-04-03 주식회사 한줌 Certification system and method using OTP
KR102048534B1 (en) * 2018-05-31 2020-01-08 주식회사 핀업 Apparatus and method of authentication

Similar Documents

Publication Publication Date Title
JP5719871B2 (en) Method and apparatus for preventing phishing attacks
US7490242B2 (en) Secure management of authentication information
US7496751B2 (en) Privacy and identification in a data communications network
KR101851686B1 (en) Abstracted and randomized one-time passwords for transactional authentication
US7085840B2 (en) Enhanced quality of identification in a data communications network
US7275260B2 (en) Enhanced privacy protection in identification in a data communications network
US8819787B2 (en) Securing asynchronous client server transactions
US8990906B2 (en) Methods and systems for replacing shared secrets over networks
JP5462021B2 (en) Authentication system, authentication method, and authentication program
CN111092899B (en) Information acquisition method, device, equipment and medium
CN106878250B (en) Cross-application single-state login method and device
JP2011215753A (en) Authentication system and authentication method
JP2008027222A (en) Authentication system, authentication method, and authentication program
JP2007109122A (en) Authentication system, authentication method and authentication program
MX2007013310A (en) Method, system, and program product for connecting a client to a network.
KR101745919B1 (en) User authentication method and system using software-based HSM without password exposure
CN109842616B (en) Account binding method and device and server
KR101769861B1 (en) User biometric authentication method and system using HSM smart card without password exposure
US20230006844A1 (en) Dynamic value appended to cookie data for fraud detection and step-up authentication
US20200110868A1 (en) Augmented push authentication
CN103559430B (en) application account management method and device based on Android system
CN115021995B (en) Multi-channel login method, device, equipment and storage medium
JP2000057097A (en) Image processor
CN112732676B (en) Block chain-based data migration method, device, equipment and storage medium
KR101221728B1 (en) The certification process server and the method for graphic OTP certification

Legal Events

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