+

KR101480889B1 - Virtual keyboard generating device and method for user authentication - Google Patents

Virtual keyboard generating device and method for user authentication Download PDF

Info

Publication number
KR101480889B1
KR101480889B1 KR20140045932A KR20140045932A KR101480889B1 KR 101480889 B1 KR101480889 B1 KR 101480889B1 KR 20140045932 A KR20140045932 A KR 20140045932A KR 20140045932 A KR20140045932 A KR 20140045932A KR 101480889 B1 KR101480889 B1 KR 101480889B1
Authority
KR
South Korea
Prior art keywords
virtual keyboard
text
client terminal
keypads
generating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
KR20140045932A
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 KR20140045932A priority Critical patent/KR101480889B1/en
Application granted granted Critical
Publication of KR101480889B1 publication Critical patent/KR101480889B1/en
Priority to PCT/KR2015/003801 priority patent/WO2015160190A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Input From Keyboards Or The Like (AREA)

Abstract

사용자 인증용 가상 키보드 생성 장치 및 방법이 개시된다. 본 발명의 실시예들은 클라이언트 단말로부터 사용자 인증을 위한 가상 키보드 호출 요청이 전송되면, 가상 키보드를 구성하는 복수의 키패드들에 대응되는 복수의 평문 텍스트 값들을 생성한 후 상기 복수의 평문 텍스트 값들에 대해 소정의 데이터 스크램블링과 암호화를 수행하여 가상 키보드 데이터를 생성한 후 상기 가상 키보드 데이터를 상기 클라이언트 단말로 전송해 줌으로써, 가상 키보드를 이용한 사용자 인증 과정에서 보안을 강화할 수 있다.An apparatus and method for generating a virtual keyboard for user authentication are disclosed. In the embodiments of the present invention, when a virtual keyboard call request for user authentication is transmitted from a client terminal, a plurality of plain text values corresponding to a plurality of keypads constituting a virtual keyboard are generated, The virtual keyboard data is generated by performing predetermined data scrambling and encryption, and the virtual keyboard data is transmitted to the client terminal, thereby enhancing security in the user authentication process using the virtual keyboard.

Description

사용자 인증용 가상 키보드 생성 장치 및 방법{VIRTUAL KEYBOARD GENERATING DEVICE AND METHOD FOR USER AUTHENTICATION}TECHNICAL FIELD [0001] The present invention relates to a virtual keyboard generating apparatus and method for authenticating a user,

본 발명의 실시예들은 사용자 인증에 사용되는 가상 키보드를 생성하여 이를 클라이언트 단말로 전송해 주는 기법에 대한 기술들과 관련된다.Embodiments of the present invention relate to techniques for generating a virtual keyboard used for user authentication and transmitting it to a client terminal.

최근, 데스크탑 컴퓨터나 스마트폰 또는 태블릿 PC 등과 같은 마이크로 프로세서 기반의 다양한 단말기기가 보급되고 있어서, 이러한 단말기기에서 활용할 수 있는 다양한 기능들이 제안되고 있다.2. Description of the Related Art In recent years, a variety of microprocessor-based terminal devices such as a desktop computer, a smart phone, and a tablet PC have become popular, and various functions that can be utilized in such terminal devices have been proposed.

특히, 최근에는 어디에서든지 인터넷이 가능하게 하는 통신 환경이 구축됨에 따라, 단말기기에서 온라인을 통해 사용자의 편의를 제공할 수 있도록 하는 서비스들이 출시되고 있다.In particular, recently, as a communication environment enabling the Internet anywhere has been established, services are being launched that allow the terminal to provide convenience of the user online.

이렇게, 다양한 단말기기가 보급되고 있고, 온라인 환경이 구축됨에 따라, 사용자들이 단말기기를 이용하여 인터넷 뱅킹을 수행하거나 온라인 결제 등을 수행할 수 있도록 지원하는 서비스가 출시되고 있고, 이러한 서비스의 사용빈도도 점차 증가하고 있다.As a variety of terminal equipments are being widely used and online environments are being established, services for supporting users to perform internet banking or online settlement using terminal equipments are being released, .

이러한, 온라인 기반의 인터넷 뱅킹이나 결제 서비스에서는 무엇보다도 사용자 인증 과정이 가장 중요한 이슈 중 하나이고, 일반적으로 사용자 인증을 수행하는 과정에서는 사용자가 미리 등록해 둔 비밀번호를 단말기기에 입력하도록 하는 절차가 포함되어 있다.In the online-based Internet banking or payment service, the user authentication process is one of the most important issues. In general, in the process of performing the user authentication, a procedure for allowing the user to input a password registered in advance in the terminal machine is included have.

이러한 사용자 인증 과정은 보통, 사용자가 사용자 인증을 위해 자신의 단말기기에 비밀번호를 입력하면, 상기 단말기기가 상기 비밀번호를 사용자 인증을 위한 서버로 전송하고, 상기 서버에서 상기 비밀번호가 기 등록되어 있는 비밀번호와 일치하는 것으로 판단되면, 상기 사용자가 정당한 사용자인 것으로 확인하는 과정으로 구성된다.Such a user authentication process is normally performed when the user inputs a password to his terminal device for user authentication, the terminal device transmits the password to the server for user authentication, and the password is matched with the registered password in the server It is determined that the user is an authorized user.

이때, 상기 서버는 상기 사용자의 단말기기로부터 비밀번호를 획득하는 과정에서 상기 비밀번호가 제3자에게 노출되는 것을 방지하기 위해, 상기 사용자의 단말기기에 대해 비밀번호 입력을 위한 가상 키보드 데이터를 전송해 주고, 상기 사용자의 단말기기는 상기 가상 키보드 데이터가 수신되면, 상기 가상 키보드 데이터를 기초로 비밀번호 입력용 가상 키보드를 화면상에 출력함으로써, 상기 사용자가 상기 가상 키보드 상의 키패드를 눌러서 비밀번호를 입력할 수 있도록 지원한다.At this time, in order to prevent the password from being exposed to a third party in the process of obtaining a password from the terminal, the server transmits virtual keyboard data for inputting a password to the terminal of the user, When the virtual keyboard data is received, the user's terminal machine outputs a virtual keyboard for inputting a password on the screen based on the virtual keyboard data, so that the user can input the password by pressing the keypad on the virtual keyboard.

하지만, 이러한 가상 키보드에 대해서 상기 가상 키보드 상의 키패드들에 매핑되어 있는 텍스트 값들에 대해 별도로 암호화를 해두는 등 소정의 보안 처리가 되어 있지 않으면, 사용자의 단말기기로부터 서버로 비밀번호가 전송되는 과정에서 상기 비밀번호가 해커에 의해 그대로 노출될 위험이 있다.However, if a predetermined security process is not performed on the virtual keyboard, such as encrypting text values mapped to keypads on the virtual keyboard, the password is transmitted from the terminal to the server, There is a risk that the password will be exposed by hackers.

따라서, 사용자 인증을 위한 가상 키보드와 관련하여, 상기 가상 키보드를 이용한 데이터 입력 및 전송 과정에서 정보가 노출되는 것을 최소화할 수 있도록 하는 방안에 대한 연구가 필요하다.Therefore, in connection with a virtual keyboard for user authentication, there is a need for research on minimizing information exposure during data input and transmission using the virtual keyboard.

본 발명의 실시예들은 클라이언트 단말로부터 사용자 인증을 위한 가상 키보드 호출 요청이 전송되면, 가상 키보드를 구성하는 복수의 키패드들에 대응되는 복수의 평문 텍스트 값들을 생성한 후 상기 복수의 평문 텍스트 값들에 대해 소정의 데이터 스크램블링과 암호화를 수행하여 가상 키보드 데이터를 생성한 후 상기 가상 키보드 데이터를 상기 클라이언트 단말로 전송해 줌으로써, 가상 키보드를 이용한 사용자 인증 과정에서 보안을 강화할 수 있도록 한다.In the embodiments of the present invention, when a virtual keyboard call request for user authentication is transmitted from a client terminal, a plurality of plain text values corresponding to a plurality of keypads constituting a virtual keyboard are generated, The virtual keyboard data is generated by performing predetermined data scrambling and encryption, and the virtual keyboard data is transmitted to the client terminal, thereby enhancing security in the user authentication process using the virtual keyboard.

본 발명의 일실시예에 따른 사용자 인증용 가상 키보드 생성 장치는 클라이언트 단말로부터 사용자 인증용 데이터 입력을 위한 가상 키보드 호출 요청이 전송되면, 상기 가상 키보드 호출 요청에 대응하여 가상 키보드를 구성하는 복수의 키패드들에 대응되는 복수의 평문 텍스트 값들을 생성하는 생성부, 복수의 랜덤 값들로 구성된 텍스트 배열을 생성하고, 상기 복수의 평문 텍스트 값들 각각을 상기 텍스트 배열 상의 제1 위치에 삽입하여 복수의 혼합 텍스트 배열들을 생성하는 혼합부, 데이터 암호화를 위한 암호화키를 생성하여 상기 복수의 혼합 텍스트 배열들을 상기 암호화키로 암호화하는 암호화부, 상기 복수의 키패드들을 표현하기 위한 가상 키보드 이미지를 생성하고, 상기 복수의 키패드들과 상기 복수의 평문 텍스트 값들 사이의 대응 관계에 따라 상기 가상 키보드 이미지 상에서 상기 복수의 키패드들과 상기 암호화된 복수의 혼합 텍스트 배열들을 매핑하는 매핑부 및 상기 암호화된 복수의 혼합 텍스트 배열들과 상기 가상 키보드 이미지, 및 상기 복수의 키패드들과 상기 암호화된 복수의 혼합 텍스트 배열들 사이의 매핑 정보로 구성된 가상 키보드 데이터를 생성하여 상기 가상 키보드 데이터를 상기 클라이언트 단말로 전송하는 전송부를 포함한다.The apparatus for generating a virtual keyboard for user authentication according to an embodiment of the present invention includes a plurality of keypads configuring a virtual keyboard in response to the virtual keyboard call request when a virtual keyboard call request for inputting data for user authentication is transmitted from a client terminal, Generating a plurality of plaintext text values corresponding to a plurality of plaintext text values, generating a textual array composed of a plurality of random values, inserting each of the plaintext text values at a first position on the textual array, An encryption unit for generating an encryption key for data encryption and encrypting the plurality of mixed text arrays with the encryption key, a virtual keyboard image for expressing the plurality of keypads, And the corresponding plaintext text values A mapping unit for mapping the plurality of keypads and the encrypted plurality of mixed text arrangements on the virtual keyboard image according to a plurality of keypads and a plurality of mixed text arrangements and the virtual keyboard image, And a transmitting unit for transmitting the virtual keyboard data to the client terminal by generating virtual keyboard data including mapping information between the encrypted plurality of mixed text arrays.

또한, 본 발명의 일실시예에 따른 사용자 인증용 가상 키보드 생성 방법은 클라이언트 단말로부터 사용자 인증용 데이터 입력을 위한 가상 키보드 호출 요청이 전송되면, 상기 가상 키보드 호출 요청에 대응하여 가상 키보드를 구성하는 복수의 키패드들에 대응되는 복수의 평문 텍스트 값들을 생성하는 단계, 복수의 랜덤 값들로 구성된 텍스트 배열을 생성하고, 상기 복수의 평문 텍스트 값들 각각을 상기 텍스트 배열 상의 제1 위치에 삽입하여 복수의 혼합 텍스트 배열들을 생성하는 단계, 데이터 암호화를 위한 암호화키를 생성하여 상기 복수의 혼합 텍스트 배열들을 상기 암호화키로 암호화하는 단계, 상기 복수의 키패드들을 표현하기 위한 가상 키보드 이미지를 생성하고, 상기 복수의 키패드들과 상기 복수의 평문 텍스트 값들 사이의 대응 관계에 따라 상기 가상 키보드 이미지 상에서 상기 복수의 키패드들과 상기 암호화된 복수의 혼합 텍스트 배열들을 매핑하는 단계 및 상기 암호화된 복수의 혼합 텍스트 배열들과 상기 가상 키보드 이미지, 및 상기 복수의 키패드들과 상기 암호화된 복수의 혼합 텍스트 배열들 사이의 매핑 정보로 구성된 가상 키보드 데이터를 생성하여 상기 가상 키보드 데이터를 상기 클라이언트 단말로 전송하는 단계를 포함한다.A method for generating a virtual keyboard for user authentication according to an exemplary embodiment of the present invention is a method for generating a virtual keyboard in response to a virtual keyboard call request for inputting data for user authentication from a client terminal, Generating a plurality of plaintext text values corresponding to keypads of the plurality of random text values, generating a textual array composed of a plurality of random values, inserting each of the plurality of plaintext text values at a first location on the textual array, Generating an encryption key for data encryption, encrypting the plurality of mixed text arrays with the encryption key, generating a virtual keyboard image for expressing the plurality of keypads, A correspondence relationship between the plurality of plaintext text values Mapping the encrypted plurality of mixed text arrangements to the plurality of keypads and the encrypted plurality of text arrangements on the virtual keyboard image, and transmitting the encrypted plurality of mixed text arrangements and the virtual keyboard image, Generating virtual keyboard data composed of mapping information between a plurality of mixed text arrays, and transmitting the virtual keyboard data to the client terminal.

본 발명의 실시예들은 클라이언트 단말로부터 사용자 인증을 위한 가상 키보드 호출 요청이 전송되면, 가상 키보드를 구성하는 복수의 키패드들에 대응되는 복수의 평문 텍스트 값들을 생성한 후 상기 복수의 평문 텍스트 값들에 대해 소정의 데이터 스크램블링과 암호화를 수행하여 가상 키보드 데이터를 생성한 후 상기 가상 키보드 데이터를 상기 클라이언트 단말로 전송해 줌으로써, 가상 키보드를 이용한 사용자 인증 과정에서 보안을 강화할 수 있다.In the embodiments of the present invention, when a virtual keyboard call request for user authentication is transmitted from a client terminal, a plurality of plain text values corresponding to a plurality of keypads constituting a virtual keyboard are generated, The virtual keyboard data is generated by performing predetermined data scrambling and encryption, and the virtual keyboard data is transmitted to the client terminal, thereby enhancing security in the user authentication process using the virtual keyboard.

도 1은 본 발명의 일실시예에 따른 사용자 인증용 가상 키보드 생성 장치를 설명하기 위한 전체 시스템을 개략적으로 도시한 시스템 개념도이다.
도 2와 도 3은 본 발명의 일실시예에 따른 사용자 인증용 가상 키보드 생성 장치를 설명하기 위한 가상 키보드의 일례를 도시한 도면이다.
도 4는 본 발명의 일실시예에 따른 사용자 인증용 가상 키보드 생성 장치의 구조를 도시한 도면이다.
도 5는 본 발명의 일실시예에 따른 사용자 인증용 가상 키보드 생성 방법을 도시한 순서도이다.
1 is a system conceptual diagram schematically showing an overall system for explaining a virtual keyboard generating apparatus for user authentication according to an embodiment of the present invention.
FIG. 2 and FIG. 3 are views showing an example of a virtual keyboard for explaining a virtual keyboard generating apparatus for user authentication according to an embodiment of the present invention.
FIG. 4 is a block diagram of a virtual keyboard generating apparatus for user authentication according to an embodiment of the present invention. Referring to FIG.
5 is a flowchart illustrating a method of generating a virtual keyboard for user authentication according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals are used for like elements in describing each drawing.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used in this application is used only to describe a specific embodiment and is not intended to limit the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In the present application, the terms "comprises" or "having" and the like are used to specify that there is a feature, a number, a step, an operation, an element, a component or a combination thereof described in the specification, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as either ideal or overly formal in the sense of the present application Do not.

이하에서, 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, embodiments according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일실시예에 따른 사용자 인증용 가상 키보드 생성 장치를 설명하기 위한 전체 시스템을 개략적으로 도시한 시스템 개념도이다.1 is a system conceptual diagram schematically showing an overall system for explaining a virtual keyboard generating apparatus for user authentication according to an embodiment of the present invention.

도 1에는 사용자 인증용 가상 키보드 생성 장치(110)와 클라이언트 단말(120)이 도시되어 있다.FIG. 1 shows a virtual keyboard generating apparatus 110 for user authentication and a client terminal 120.

먼저, 클라이언트 단말(120)의 사용자가 클라이언트 단말(120)을 이용하여 온라인 결제 등을 수행하기 위해서 비밀번호를 입력하고자 하면, 클라이언트 단말(120)은 사용자 인증용 가상 키보드 생성 장치(110)에 대해 사용자 인증용 데이터 입력을 위한 가상 키보드 호출 요청을 전송할 수 있다.First, when a user of the client terminal 120 attempts to input a password to perform online settlement using the client terminal 120, the client terminal 120 transmits a password to the virtual keyboard generating device 110 for user authentication, A virtual keyboard call request for data input for authentication can be transmitted.

이때, 사용자 인증용 가상 키보드 생성 장치(110)는 클라이언트 단말(120)로부터 상기 가상 키보드 호출 요청이 전송되면, 상기 가상 키보드 호출 요청에 대응하여 가상 키보드를 구성하는 복수의 키패드들에 대응되는 복수의 평문 텍스트 값들을 생성할 수 있다.In this case, when the virtual keyboard call request is transmitted from the client terminal 120, the virtual keyboard generating device for user authentication 110 generates a plurality of virtual keyboards corresponding to the plurality of keypads constituting the virtual keyboard You can generate plain text values.

그리고 나서, 사용자 인증용 가상 키보드 생성 장치(110)는 복수의 랜덤 값들로 구성된 텍스트 배열을 생성하고, 상기 복수의 평문 텍스트 값들 각각을 상기 텍스트 배열 상의 제1 위치에 삽입하여 복수의 혼합 텍스트 배열들을 생성할 수 있다.Then, the user authentication virtual keyboard generating apparatus 110 generates a text array composed of a plurality of random values, inserts each of the plurality of plain text values into a first position on the text arrangement, Can be generated.

예컨대, 사용자 인증용 가상 키보드 생성 장치(110)는 상기 복수의 랜덤 값들로 구성된 텍스트 배열로 '20140306QWEADF'라고 하는 텍스트 배열을 생성할 수 있고, 상기 복수의 평문 텍스트 값들 중 어느 하나의 평문 텍스트 값을 '1'이라고 하고, 상기 제1 위치를 상기 텍스트 배열에서 5번째 자리라고 하는 경우, 사용자 인증용 가상 키보드 생성 장치(110)는 상기 어느 하나의 평문 텍스트 값인 '1'을 상기 텍스트 배열인 '20140306QWEADF'에서 상기 5번째 자리에 삽입하여 '201410306QWEADF'라고 하는 혼합 텍스트 배열을 생성할 수 있다.For example, the virtual keyboard generating device for user authentication 110 may generate a text array of '20140306QWEADF' as a text array composed of the plurality of random values, and may generate a plain text value of any one of the plurality of plain text values Quot; 1 ", and the first position is referred to as the fifth digit in the text arrangement, the virtual keyboard generating device 110 for user authentication converts one of the plaintext text values' 1 'into the text array' 20140306QWEADF 'To generate a mixed text array called' 201410306QWEADF '.

이러한 방식으로 사용자 인증용 가상 키보드 생성 장치(110)는 상기 복수의 평문 텍스트 값들 각각을 상기 텍스트 배열에서 5번째 자리에 삽입함으로써, 복수의 혼합 텍스트 배열들을 생성할 수 있다.In this manner, the virtual keyboard generating device for user authentication 110 can generate a plurality of mixed text arrays by inserting each of the plurality of plain text values into the fifth place in the text arrangement.

이렇게, 상기 복수의 혼합 텍스트 배열들이 생성되면, 사용자 인증용 가상 키보드 생성 장치(110)는 데이터 암호화를 위한 암호화키를 생성하여 상기 복수의 혼합 텍스트 배열들 각각을 상기 암호화키로 암호화할 수 있다.When the plurality of mixed text arrays are generated, the virtual keyboard generating device for user authentication 110 may generate an encryption key for data encryption and encrypt each of the plurality of mixed text arrays with the encryption key.

그리고 나서, 사용자 인증용 가상 키보드 생성 장치(110)는 상기 복수의 키패드들을 표현하기 위한 가상 키보드 이미지를 생성하고, 상기 복수의 키패드들과 상기 복수의 평문 텍스트 값들 사이의 대응 관계에 따라 상기 가상 키보드 이미지 상에서 상기 복수의 키패드들과 상기 암호화된 복수의 혼합 텍스트 배열들을 매핑할 수 있다.Then, the virtual keyboard generating device 110 for user authentication generates a virtual keyboard image for expressing the plurality of keypads, and generates a virtual keyboard image for expressing the plurality of keypads and the plurality of plain text values according to a correspondence relationship between the plurality of keypads and the plurality of plain- And map the encrypted plurality of mixed text arrangements to the plurality of keypads on the image.

예컨대, 가상 키보드 상에 '1'이라는 키패드와 대응되는 평문 텍스트 값으로 '1'이라고 하는 평문 텍스트 값이 생성되었고, 상기 '1'이라는 평문 텍스트 값이 복수의 랜덤 값으로 구성된 텍스트 배열인 '20140306QWEADF' 상의 5번째 자리에 삽입된 후 상기 암호화키로 암호화됨으로써 생성된 혼합 텍스트 배열이 'ADFSAASDFCVDSAFE'라고 하는 경우, 사용자 인증용 가상 키보드 생성 장치(110)는 상기 가상 키보드 이미지 상에서 '1'이라는 키패드에 대해 'ADFSAASDFCVDSAFE'라고 하는 암호화된 혼합 텍스트 배열을 매핑시킬 수 있다.For example, a plaintext text value of '1' is generated as a plaintext text value corresponding to a keypad of '1' on a virtual keyboard, and '20140306QWEADF', which is a text array of plaintext text values of ' 'Is inserted into the fifth digit of the virtual keyboard, and the mixed text array generated by encrypting with the encryption key is' ADFSAASDFCVDSAFE', the virtual keyboard generating device for user authentication 110 generates a virtual keyboard for the keypad '1' You can map an encrypted mixed text array called 'ADFSAASDFCVDSAFE'.

이렇게, 상기 가상 키보드 이미지 상에서 상기 복수의 키패드들과 상기 암호화된 복수의 혼합 텍스트 배열들이 매핑되면, 사용자 인증용 가상 키보드 생성 장치(110)는 상기 암호화된 복수의 혼합 텍스트 배열들과 상기 가상 키보드 이미지, 및 상기 복수의 키패드들과 상기 암호화된 복수의 혼합 텍스트 배열들 사이의 매핑 정보로 구성된 가상 키보드 데이터를 생성하여 상기 가상 키보드 데이터를 클라이언트 단말(120)로 전송할 수 있다.When the plurality of keypads and the encrypted plurality of mixed text arrays are mapped on the virtual keyboard image, the virtual keyboard generating device for user authentication 110 generates a plurality of mixed text arrays and the virtual keyboard image And virtual keyboard data composed of the mapping information between the plurality of keypads and the plurality of encrypted mixed text arrays, and transmit the virtual keyboard data to the client terminal 120. [

이때, 클라이언트 단말(120)은 상기 가상 키보드 데이터가 수신되면, 상기 가상 키보드 데이터를 기초로 화면 상에 가상 키보드를 출력함으로써, 사용자가 비밀번호 등을 입력할 수 있도록 지원할 수 있다.At this time, when the virtual keyboard data is received, the client terminal 120 can support a user to input a password or the like by outputting a virtual keyboard on the screen based on the virtual keyboard data.

관련하여, 도 2에는 클라이언트 단말(120)을 통해 출력되는 가상 키보드의 일례가 도시되어 있다.2 shows an example of a virtual keyboard that is output through the client terminal 120. In FIG.

도 2에 도시된 바와 같이, 클라이언트 단말(120) 상에 가상 키보드(210)가 출력되면, 클라이언트 단말(120)의 사용자는 가상 키보드(210) 상에 터치 입력을 인가하거나 마우스 포인터 입력을 인가함으로써, 비밀번호 등을 입력할 수 있다.2, when the virtual keyboard 210 is displayed on the client terminal 120, the user of the client terminal 120 may apply a touch input or a mouse pointer input on the virtual keyboard 210 , A password, and the like.

이때, 사용자가 가상 키보드(210)를 통해 출력되고 있는 복수의 키패드들 중 '1'이라는 키패드(211)에 가상 키보드 입력을 인가하게 되면, 클라이언트 단말(120)은 상기 가상 키보드 데이터를 참조하여 '1'이라는 키패드(211)에 매핑되어 있는 암호화된 혼합 텍스트 배열인 'ADFSAASDFCVDSAFE'을 사용자 인증용 가상 키보드 생성 장치(110)로 전송할 수 있다.At this time, when the user applies the virtual keyboard input to the keypad 211 of '1' among the plurality of keypads outputted through the virtual keyboard 210, the client terminal 120 refers to the virtual keyboard data, ADFSAASDFCVDSAFE ', which is an encrypted mixed text array mapped to the keypad 211 of' 1 ', to the virtual keyboard generating device 110 for user authentication.

이때, 사용자 인증용 가상 키보드 생성 장치(110)는 클라이언트 단말(120)로부터 상기 'ADFSAASDFCVDSAFE'라고 하는 암호화된 혼합 텍스트 배열이 전송되면, 그 즉시, 가상 키보드(210) 상의 복수의 키패드들 중 적어도 하나의 키패드를 랜덤하게 선택하여 가상 키보드(210) 이미지 상에서 상기 랜덤하게 선택된 적어도 하나의 키패드가 선택되는 애니메이션 이벤트를 발생시키기 위한 이벤트 발생 명령을 생성할 수 있다.At this time, when the encrypted mixed text array called 'ADFSAASDFCVDSAFE' is transmitted from the client terminal 120, the virtual keyboard generating device for user authentication 110 transmits at least one of a plurality of keypads on the virtual keyboard 210 May generate an event generation command for generating an animation event in which the randomly selected at least one keypad is selected on the virtual keyboard 210 image at random.

그리고 나서, 사용자 인증용 가상 키보드 생성 장치(110)는 상기 이벤트 발생 명령을 클라이언트 단말(120)로 전송할 수 있고, 이때, 클라이언트 단말(120)은 가상 키보드(210) 이미지 상에서 상기 랜덤하게 선택된 적어도 하나의 키패드가 선택되는 애니메이션 이벤트를 출력할 수 있다.The virtual keyboard generating device 110 for user authentication may then send the event generating command to the client terminal 120 at which time the client terminal 120 may receive the randomly selected at least one An animation event in which the keypad of the keypad is selected can be output.

관련하여, 도 3에 도시된 바와 같이, 클라이언트 단말(120)이 사용자 인증용 가상 키보드 생성 장치(110)에 대해 '1'이라는 키패드(211)에 매핑되어 있는 상기 'ADFSAASDFCVDSAFE'라고 하는 암호화된 혼합 텍스트 배열을 전송하면, 사용자 인증용 가상 키보드 생성 장치(110)는 '2', 'D', 'H', 'C'라고 하는 키패드를 랜덤하게 선택한 후 가상 키보드(210) 이미지 상에서 '2', 'D', 'H', 'C'라고 하는 키패드가 선택되는 애니메이션 이벤트를 발생시키기 위한 이벤트 발생 명령을 생성하여 클라이언트 단말(120)로 전송할 수 있고, 클라이언트 단말(120)은 상기 이벤트 발생 명령에 기초하여 도 3에 도시된 바와 같이, 가상 키보드(210) 이미지 상에서 '2', 'D', 'H', 'C'라고 하는 키패드가 선택되는 애니메이션 이벤트를 발생시킬 수 있다.3, the client terminal 120 transmits an encrypted mixture of 'ADFSAASDFCVDSAFE', which is mapped to the keypad 211 '1' to the virtual keyboard generating device 110 for user authentication, The virtual keyboard generating device 110 for user authentication randomly selects a keypad of '2', 'D', 'H', and 'C' The client terminal 120 may generate an event generation command for generating an animation event in which a keypad called 'D', 'H', or 'C' is selected and transmit the event generation command to the client terminal 120, An animation event may be generated in which a keypad of '2', 'D', 'H', and 'C' is selected on the virtual keyboard 210 image as shown in FIG.

이를 통해, 클라이언트 단말(120)의 사용자가 가상 키보드(210) 상에서 '1'이라는 키패드에 대해 가상 키보드 입력을 인가하더라도 실제 화면을 통해 출력되는 애니메이션 이벤트는 '2', 'D', 'H', 'C'라고 하는 키패드가 선택되는 애니메이션 이벤트가 더미(dummy) 이벤트로 출력되기 때문에, 사용자가 입력하는 가상 키보드(210) 상의 실제 키패드는 제3자에게 손쉽게 노출되지 않을 수 있다.Accordingly, even if the user of the client terminal 120 applies a virtual keyboard input to the keypad of '1' on the virtual keyboard 210, the animation events output through the actual screen are '2', 'D' , And 'C' are selected as dummy events, the actual keypad on the virtual keyboard 210 input by the user may not be easily exposed to the third party.

관련하여, 사용자 인증용 가상 키보드 생성 장치(110)는 사용자가 클라이언트 단말(120)에 가상 키보드 입력을 하나씩 인가할 때마다 상기 더미 이벤트를 발생시키기 위한 동작을 수행함으로써, 사용자가 입력하는 비밀번호 등이 제3자에게 노출되는 것을 방지할 수 있다.The virtual keyboard generating device 110 for user authentication performs an operation for generating the dummy event each time a user applies one virtual keyboard input to the client terminal 120, It is possible to prevent exposure to a third party.

사용자 인증용 가상 키보드 생성 장치(110)는 클라이언트 단말(120)로부터 상기 'ADFSAASDFCVDSAFE'라고 하는 암호화된 혼합 텍스트 배열이 수신되면, 앞서 더미 이벤트를 발생시키기 위한 동작을 수행하는 것과 별도로, 상기 복수의 랜덤 값들을 재생성하여 상기 재생성된 복수의 랜덤 값들로 구성된 텍스트 배열을 재생성할 수 있다.In addition to performing an operation for generating a dummy event in advance when an encrypted mixed text array such as 'ADFSAASDFCVDSAFE' is received from the client terminal 120, the virtual keyboard generating apparatus for user authentication 110, Values can be regenerated to regenerate a text array composed of the regenerated plurality of random values.

예컨대, 사용자 인증용 가상 키보드 생성 장치(110)는 앞서, 생성하였던 텍스트 배열인 '20140306QWEADF'와 다른, 별도의 복수의 랜덤 값들을 재생성한 후 상기 재생성된 복수의 랜덤 값들로 구성된 텍스트 배열인 '20140306QWERTY'을 재생성할 수 있다.For example, the virtual-keyboard generating apparatus for user authentication 110 reproduces a plurality of separate random values different from '20140306QWEADF', which is the text array that was generated previously, and generates a text array '20140306QWERTY' Can be regenerated.

그리고 나서, 사용자 인증용 가상 키보드 생성 장치(110)는 가상 키보드(210)를 구성하는 복수의 키패드들에 대응되는 상기 복수의 평문 텍스트 값들을 상기 재생성된 텍스트 배열인 '20140306QWERTY' 상의 제1 위치에 삽입하여 복수의 혼합 텍스트 배열들을 재생성할 수 있다.Then, the virtual keyboard generating device for user authentication 110 transmits the plurality of plain text values corresponding to the plurality of keypads constituting the virtual keyboard 210 to the first position on the regenerated text array '20140306QWERTY' To reproduce a plurality of mixed text arrays.

이때, 사용자 인증용 가상 키보드 생성 장치(110)는 상기 제1 위치도 앞서 사용하였던 5번째 자리가 아닌, 다른 위치로 변경한 후 상기 복수의 평문 텍스트 값들을 상기 재생성된 텍스트 배열인 '20140306QWERTY' 상의 변경된 위치에 삽입할 수 있다.At this time, the virtual keyboard generating apparatus for user authentication 110 changes the first position to another position other than the fifth position used before, and then converts the plurality of plain text values into the regenerated text array '20140306QWERTY' It can be inserted at the changed position.

관련하여, 상기 제1 위치가 3번째 자리로 변경된 경우, 상기 복수의 평문 텍스트 값들 중 '1'이라는 평문 텍스트 값에 대한 혼합 텍스트 배열은 '20140306QWERTY' 상의 3번째 자리에 삽입되기 때문에, '201140306QWERTY'가 될 수 있다.In this case, when the first position is changed to the third digit, the mixed text array for the plaintext text value of '1' among the plurality of plain text values is inserted at the third digit of '20140306QWERTY', so '201140306QWERTY' .

이렇게, 상기 복수의 혼합 텍스트 배열들이 재생성되면, 사용자 인증용 가상 키보드 생성 장치(110)는 상기 재생성된 복수의 혼합 텍스트 배열들을 상기 암호화키로 재암호화할 수 있다.Thus, when the plurality of mixed text arrays are regenerated, the virtual keyboard generating device for user authentication 110 can re-encrypt the regenerated plurality of mixed text arrays with the encryption key.

예컨대, 상기 복수의 평문 텍스트 값들 중 '1'이라는 평문 텍스트 값에 대한 혼합 텍스트 배열인 '201140306QWERTY'에 대해 상기 암호화키를 기초로 재암호화한 결과 값은 'TDASADFASDFASDFA'가 될 수 있다.For example, a result value obtained by re-encrypting '201140306QWERTY', which is a mixed text array for plain text value '1' among the plurality of plain text values, based on the encryption key may be 'TDASADFASDFASDFA'.

이렇게, 상기 재생성된 복수의 혼합 텍스트 배열들에 대한 재암호화가 완료되면, 사용자 인증용 가상 키보드 생성 장치(110)는 상기 복수의 키패드들과 상기 복수의 평문 텍스트 값들 사이의 대응 관계에 따라 가상 키보드(210) 이미지 상에서 상기 복수의 키패드들과 상기 재암호화된 복수의 혼합 텍스트 배열들을 매핑할 수 있다.When the re-encryption of the regenerated plurality of mixed text arrays is completed, the virtual keyboard generating device for user authentication 110 generates a virtual keyboard for user authentication based on the correspondence between the plurality of keypads and the plurality of plain text values, And may map the plurality of re-encrypted mixed text arrangements with the plurality of keypads on the image.

그리고 나서, 사용자 인증용 가상 키보드 생성 장치(110)는 상기 재암호화된 복수의 혼합 텍스트 배열들, 및 상기 복수의 키패드들과 상기 재암호화된 복수의 혼합 텍스트 배열들 사이의 매핑 정보로 구성된 가상 키보드 갱신 데이터를 생성하여 상기 가상 키보드 갱신 데이터를 클라이언트 단말(120)로 전송할 수 있다.Then, the virtual keyboard generating device 110 for user authentication is configured to generate a plurality of virtual keyboards, each of which is composed of a plurality of the re-encrypted mixed text arrays, and a mapping information between the plurality of keypads and the re- Update data may be generated and the virtual keyboard update data may be transmitted to the client terminal 120.

이때, 클라이언트 단말(120)은 상기 가상 키보드 갱신 데이터가 수신되면, 상기 가상 키보드 갱신 데이터를 기초로 클라이언트 단말(120) 내에 저장되어 있는 상기 가상 키보드 데이터를 갱신한 후 상기 갱신된 가상 키보드 데이터를 기초로 가상 키보드(210)를 재생성할 수 있다.At this time, when the virtual keyboard update data is received, the client terminal 120 updates the virtual keyboard data stored in the client terminal 120 based on the virtual keyboard update data, The virtual keyboard 210 can be regenerated.

이를 통해, 클라이언트 단말(120) 상에서 출력되는 가상 키보드(210) 상의 복수의 키패드들 중 '1'이라는 키패드(211)에 매핑되어 있던 암호화된 혼합 텍스트 배열은 최초에 'ADFSAASDFCVDSAFE'이었지만, 사용자가 가상 키보드(210) 상에서 '1'이라는 키패드(211)에 가상 키보드 입력을 인가함으로써, 사용자 인증용 가상 키보드 생성 장치(110)로부터 상기 가상 키보드 갱신 데이터가 수신되었기 때문에 '1'이라는 키패드(211)에 매핑되어 있던 암호화된 혼합 텍스트 배열은 'TDASADFASDFASDFA'로 변경될 수 있다.Accordingly, the encrypted mixed text array mapped to the keypad 211 of '1' among the plurality of keypads on the virtual keyboard 210 output on the client terminal 120 was initially 'ADFSAASDFCVDSAFE' Since the virtual keyboard update data is received from the virtual keyboard generating device 110 for user authentication by applying the virtual keyboard input to the keypad 211 of '1' on the keyboard 210, The encrypted mixed text array that was mapped can be changed to 'TDASADFASDFASDFA'.

즉, 사용자 인증용 가상 키보드 생성 장치(110)는 클라이언트 단말(120)로부터 가상 키보드 입력에 기초한 가상 키보드 입력 데이터가 하나씩 전송될 때마다, 가상 키보드(210) 상의 복수의 키패드들에 매핑되어 있던 암호화된 혼합 텍스트 배열들을 새롭게 구성하여 이를 클라이언트 단말로(120) 전송해 줌으로써, 결국, 클라이언트 단말(120)로부터 사용자 인증용 가상 키보드 생성 장치(110)로 전송되는 가상 키보드 입력 데이터가 매번 변경되기 때문에 해커에 의해 중간에 가상 키보드 입력 데이터가 노출되더라도, 해커가 손쉽게 가상 키보드 입력 데이터로부터 평문 텍스트 값을 추출하지 못하도록 할 수 있다.That is, each time the virtual keyboard input data based on the virtual keyboard input is transmitted one by one from the client terminal 120 to the virtual keyboard generating device 110 for user authentication, the virtual keyboard generating device 110 for encrypting, which is mapped to the plurality of keypads on the virtual keyboard 210, The virtual keyboard input data transmitted from the client terminal 120 to the virtual keyboard generating device 110 for user authentication is changed each time the hacker 120 is changed, Even if the virtual keyboard input data is exposed in the middle, the hacker can not easily extract the plain text value from the virtual keyboard input data.

지금까지는 사용자 인증용 가상 키보드 생성 장치(110)가 클라이언트 단말(120)에 대해 가상 키보드 데이터를 생성하여 이를 전송해 주는 과정에 대해 설명하였다.Up to now, a process of generating virtual keyboard data for the client terminal 120 by the virtual keyboard generating device 110 for user authentication has been described.

이하에서는 클라이언트 단말(120)로부터 전송된 가상 키보드 입력 데이터를 기초로 사용자 인증용 가상 키보드 생성 장치(110)가 사용자 인증을 수행하는 과정에 대해 설명하기로 한다.Hereinafter, a process of performing user authentication by the virtual keyboard generating device 110 for user authentication based on the virtual keyboard input data transmitted from the client terminal 120 will be described.

전술한 실시예에서와 같이, 사용자 인증용 가상 키보드 생성 장치(110)가 클라이언트 단말(120)로 상기 가상 키보드 데이터를 최초로 전송해 준 이후, 클라이언트 단말(120)이 가상 키보드(210) 상의 복수의 키패드들 중 '1'이라는 키패드(211)에 매핑되어 있는 'ADFSAASDFCVDSAFE'라고 하는 암호화된 혼합 텍스트 배열을 사용자 인증용 가상 키보드 생성 장치(110)로 전송하면, 사용자 인증용 가상 키보드 생성 장치(110)는 상기 암호화키를 기초로 'ADFSAASDFCVDSAFE'라고 하는 암호화된 혼합 텍스트 배열을 복호화하여 '201410306QWEADF'를 생성할 수 있다.After the virtual keyboard generating device 110 for user authentication first transmits the virtual keyboard data to the client terminal 120 as in the above embodiment, The virtual keyboard generating device 110 for user authentication transmits an encrypted mixed text array called 'ADFSAASDFCVDSAFE' which is mapped to the keypad 211 of '1' among the keypads to the virtual keyboard generating device 110 for user authentication, May generate '201410306QWEADF' by decrypting an encrypted mixed text array called 'ADFSAASDFCVDSAFE' based on the encryption key.

그리고 나서, 사용자 인증용 가상 키보드 생성 장치(110)는 상기 복호화된 혼합 텍스트 배열인 '201410306QWEADF'로부터 상기 제1 위치인 5번째 자리에 삽입되어 있던 '1'이라는 평문 텍스트 값을 추출할 수 있다.Then, the virtual keyboard generating apparatus 110 for user authentication can extract a plaintext text value '1' inserted at the fifth position from the decoded mixed text array '201410306QWEADF'.

이렇게 '1'이라는 평문 텍스트 값이 추출되고, 사용자 인증용 가상 키보드 생성 장치(110)가 클라이언트 단말(120)로 상기 가상 키보드 갱신 데이터를 전송한 이후, 클라이언트 단말(120)의 사용자가 가상 키보드(210) 상의 복수의 키패드들 중 '1'이라는 키패드(211)에 가상 키보드 입력을 재인가함으로써, 클라이언트 단말(120)로부터 '1'이라는 키패드(211)에 매핑되어 있는 'TDASADFASDFASDFA'라고 하는 암호화된 혼합 텍스트 배열이 사용자 인증용 가상 키보드 생성 장치(110)로 전송되면, 사용자 인증용 가상 키보드 생성 장치(110)는 상기 암호화키를 기초로 'TDASADFASDFASDFA'라고 하는 암호화된 혼합 텍스트 배열을 복호화하여 '201140306QWERTY'를 생성할 수 있다.After the plaintext text value of '1' is extracted and the virtual keyboard generating device for user authentication 110 transmits the virtual keyboard update data to the client terminal 120, Referred to as " TDASADFASDFASDFA ", which is mapped from the client terminal 120 to the keypad 211 of '1', by re-applying the virtual keyboard input to the keypad 211 of the plurality of keypads on the keypad 210 When the mixed text array is transmitted to the virtual keyboard generating device 110 for user authentication, the virtual keyboard generating device for user authentication 110 decrypts the encrypted mixed text array called 'TDASADFASDFASDFA' based on the encryption key, and generates' 201140306QWERTY Can be generated.

그리고 나서, 사용자 인증용 가상 키보드 생성 장치(110)는 상기 복호화된 혼합 텍스트 배열인 '201140306QWERTY'로부터 상기 변경된 제1 위치인 3번째 자리에 삽입되어 있던 '1'이라는 평문 텍스트 값을 추출할 수 있다.Then, the virtual keyboard generating device 110 for user authentication can extract a plaintext text value of '1' inserted at the third position, which is the changed first position, from the decoded mixed text array '201140306QWERTY' .

이러한 방식으로, 사용자 인증용 가상 키보드 생성 장치(110)는 클라이언트 단말(120)로부터 가상 키보드 입력 데이터가 하나씩 전송될 때마다, 상기 가상 키보드 입력 데이터로부터 평문 텍스트 값을 하나씩 추출할 수 있고, 평문 텍스트 값의 추출이 완료되면, 추출이 완료된 평문 텍스트 값을 기초로 클라이언트 단말(120)에 대한 사용자 인증을 수행할 수 있다.In this manner, the virtual keyboard generating device 110 for user authentication can extract the plain text value one by one from the virtual keyboard input data, one by one, each time the virtual keyboard input data is transmitted from the client terminal 120, When the extraction of the value is completed, the user terminal 120 can perform user authentication based on the extracted plain text value.

도 4는 본 발명의 일실시예에 따른 사용자 인증용 가상 키보드 생성 장치의 구조를 도시한 도면이다.FIG. 4 is a block diagram of a virtual keyboard generating apparatus for user authentication according to an embodiment of the present invention. Referring to FIG.

도 4를 참조하면, 본 발명의 일실시예에 따른 사용자 인증용 가상 키보드 생성 장치(410)는 생성부(411), 혼합부(412), 암호화부(413), 매핑부(414) 및 전송부(415)를 포함한다.4, an apparatus for generating a virtual keyboard 410 for user authentication according to an embodiment of the present invention includes a generating unit 411, a mixing unit 412, an encryption unit 413, a mapping unit 414, (415).

생성부(411)는 클라이언트 단말(430)로부터 사용자 인증용 데이터 입력을 위한 가상 키보드 호출 요청이 전송되면, 상기 가상 키보드 호출 요청에 대응하여 가상 키보드를 구성하는 복수의 키패드들에 대응되는 복수의 평문 텍스트 값들을 생성한다.When a virtual keyboard call request for inputting data for user authentication is transmitted from the client terminal 430, the generation unit 411 generates a plurality of plaintexts corresponding to a plurality of keypads constituting a virtual keyboard in response to the virtual keyboard call request Create text values.

혼합부(412)는 복수의 랜덤 값들로 구성된 텍스트 배열을 생성하고, 상기 복수의 평문 텍스트 값들 각각을 상기 텍스트 배열 상의 제1 위치에 삽입하여 복수의 혼합 텍스트 배열들을 생성한다.The mixing unit 412 generates a text array composed of a plurality of random values and inserts each of the plurality of plain text values into a first position on the text array to generate a plurality of mixed text arrays.

암호화부(413)는 데이터 암호화를 위한 암호화키를 생성하여 상기 복수의 혼합 텍스트 배열들을 상기 암호화키로 암호화한다.The encryption unit 413 generates an encryption key for data encryption and encrypts the plurality of mixed text arrays with the encryption key.

매핑부(414)는 상기 복수의 키패드들을 표현하기 위한 가상 키보드 이미지를 생성하고, 상기 복수의 키패드들과 상기 복수의 평문 텍스트 값들 사이의 대응 관계에 따라 상기 가상 키보드 이미지 상에서 상기 복수의 키패드들과 상기 암호화된 복수의 혼합 텍스트 배열들을 매핑한다.The mapping unit 414 generates a virtual keyboard image for expressing the plurality of keypads, and displays the virtual keyboard image on the virtual keyboard image according to a correspondence between the plurality of keypads and the plurality of plain text values. And maps the plurality of encrypted mixed text arrays.

전송부(415)는 상기 암호화된 복수의 혼합 텍스트 배열들과 상기 가상 키보드 이미지, 및 상기 복수의 키패드들과 상기 암호화된 복수의 혼합 텍스트 배열들 사이의 매핑 정보로 구성된 가상 키보드 데이터를 생성하여 상기 가상 키보드 데이터를 클라이언트 단말(430)로 전송한다.The transmitting unit 415 generates virtual keyboard data composed of the encrypted plurality of mixed text sequences, the virtual keyboard image, and mapping information between the plurality of keypads and the encrypted plurality of mixed text sequences, And transmits the virtual keyboard data to the client terminal 430.

이때, 본 발명의 일실시예에 따르면, 사용자 인증용 가상 키보드 생성 장치(410)는 복호화부(416), 추출부(417) 및 사용자 인증부(418)를 더 포함할 수 있다.According to an embodiment of the present invention, the apparatus for generating a virtual keyboard 410 for user authentication may further include a decryption unit 416, an extraction unit 417, and a user authentication unit 418.

복호화부(416)는 클라이언트 단말(430)로부터, 클라이언트 단말(430)의 사용자의 가상 키보드 입력에 기초하여 상기 복수의 키패드들에 매핑되어 있는 상기 암호화된 복수의 혼합 텍스트 배열들 중 적어도 하나의 혼합 텍스트 배열이 가상 키보드 입력 데이터로 전송되면, 상기 암호화키를 기초로 상기 적어도 하나의 혼합 텍스트 배열을 복호화한다.The decryption unit 416 receives at least one of the encrypted plurality of mixed text arrays mapped to the plurality of keypads based on the virtual keyboard input of the user of the client terminal 430 from the client terminal 430 When the text arrangement is transmitted as virtual keyboard input data, the at least one mixed text arrangement is decoded based on the encryption key.

추출부(417)는 상기 복호화된 적어도 하나의 혼합 텍스트 배열로부터 상기 제1 위치에 삽입되어 있는 적어도 하나의 평문 텍스트 값을 추출한다.The extraction unit 417 extracts at least one plaintext text value inserted in the first position from the decoded mixed text array.

사용자 인증부(418)는 상기 추출된 적어도 하나의 평문 텍스트 값을 기초로 상기 클라이언트 단말에 대한 사용자 인증을 수행한다.The user authentication unit 418 performs user authentication on the client terminal based on the extracted at least one plaintext text value.

또한, 본 발명의 일실시예에 따르면, 혼합부(412)는 클라이언트 단말(430)로부터, 클라이언트 단말(430)의 사용자의 가상 키보드 입력에 기초하여 상기 복수의 키패드들에 매핑되어 있는 상기 암호화된 복수의 혼합 텍스트 배열들 중 어느 하나의 혼합 텍스트 배열이 가상 키보드 입력 데이터로 전송될 때마다, 상기 복수의 랜덤 값들을 재생성하여 상기 재생성된 복수의 랜덤 값들로 구성된 상기 텍스트 배열을 재생성한 후 상기 복수의 평문 텍스트 값들 각각을 상기 재생성된 텍스트 배열 상의 상기 제1 위치에 삽입하여 상기 복수의 혼합 텍스트 배열들을 재생성할 수 있다.In addition, according to an embodiment of the present invention, the mixing unit 412 receives, from the client terminal 430, the encrypted (encrypted) keypad mapped to the plurality of keypads based on the virtual keyboard input of the user of the client terminal 430 Each time a mixed text array of a plurality of mixed text arrays is transmitted as virtual keyboard input data, the plurality of random values are regenerated to regenerate the text array composed of the regenerated plurality of random values, The plaintext text values of each of the plurality of mixed text arrangements may be inserted at the first position on the regenerated text arrangement to regenerate the plurality of mixed text arrangements.

이때, 본 발명의 일실시예에 따르면, 혼합부(412)는 클라이언트 단말(430)로부터 상기 어느 하나의 혼합 텍스트 배열이 상기 가상 키보드 입력 데이터로 전송될 때마다, 상기 제1 위치를 변경하여 상기 복수의 평문 텍스트 값들 각각을 상기 재생성된 텍스트 배열 상의 상기 변경된 제1 위치에 삽입할 수 있다.According to an embodiment of the present invention, the mixing unit 412 may change the first position every time the one mixed text array is transmitted from the client terminal 430 as the virtual keyboard input data, Each of the plurality of plaintext text values may be inserted into the modified first location on the regenerated text arrangement.

이때, 암호화부(413)는 상기 재생성된 복수의 혼합 텍스트 배열들을 상기 암호화키로 재암호화할 수 있고, 매핑부(414)는 상기 복수의 키패드들과 상기 복수의 평문 텍스트 값들 사이의 대응 관계에 따라 상기 가상 키보드 이미지 상에서 상기 복수의 키패드들과 상기 재암호화된 복수의 혼합 텍스트 배열들을 매핑할 수 있다.The encryption unit 413 may re-encrypt the regenerated plurality of mixed text arrays with the encryption key, and the mapping unit 414 may re-encrypt the plurality of regenerated mixed text arrays according to the correspondence between the plurality of keypads and the plurality of plaintext text values. And may map the plurality of re-encrypted mixed text arrangements to the plurality of keypads on the virtual keyboard image.

그리고 나서, 전송부(415)는 상기 재암호화된 복수의 혼합 텍스트 배열들, 및 상기 복수의 키패드들과 상기 재암호화된 복수의 혼합 텍스트 배열들 사이의 매핑 정보로 구성된 가상 키보드 갱신 데이터를 생성하여 상기 가상 키보드 갱신 데이터를 클라이언트 단말(430)로 전송할 수 있다.Then, the transmitting unit 415 generates virtual keyboard update data composed of the re-encrypted plurality of mixed text arrays and the mapping information between the plurality of keypads and the re-encrypted plurality of mixed text arrays And transmit the virtual keyboard update data to the client terminal 430. [

이때, 본 발명의 일실시예에 따르면, 클라이언트 단말(430)은 상기 가상 키보드 갱신 데이터가 수신되면, 상기 가상 키보드 갱신 데이터를 기초로 클라이언트 단말(430) 내에 저장되어 있는 상기 가상 키보드 데이터를 갱신한 후 상기 갱신된 가상 키보드 데이터를 기초로 상기 가상 키보드를 생성할 수 있다.At this time, according to an embodiment of the present invention, when the virtual keyboard update data is received, the client terminal 430 updates the virtual keyboard data stored in the client terminal 430 based on the virtual keyboard update data And then generate the virtual keyboard based on the updated virtual keyboard data.

본 발명의 일실시예에 따르면, 사용자 인증용 가상 키보드 생성 장치(410)는 이벤트 명령 생성부(419) 및 이벤트 명령 전송부(420)를 더 포함할 수 있다.According to an embodiment of the present invention, the virtual keyboard generating device 410 for user authentication may further include an event command generating unit 419 and an event command transmitting unit 420.

이벤트 명령 생성부(419)는 클라이언트 단말(430)로부터, 클라이언트 단말(430)의 사용자의 가상 키보드 입력에 기초하여 상기 복수의 키패드들에 매핑되어 있는 상기 암호화된 복수의 혼합 텍스트 배열들 중 어느 하나의 혼합 텍스트 배열이 가상 키보드 입력 데이터로 전송될 때마다, 상기 복수의 키패드들 중 적어도 하나의 키패드를 랜덤하게 선택하여 상기 가상 키보드 이미지 상에서 상기 랜덤하게 선택된 적어도 하나의 키패드가 선택되는 애니메이션 이벤트를 발생시키기 위한 이벤트 발생 명령을 생성한다.The event command generation unit 419 generates an event command from the client terminal 430 based on the virtual keyboard input of the user of the client terminal 430 Generates at least one randomly selected keypad of the plurality of keypads each time a mixed text array of virtual keyboard input data is transmitted as virtual keyboard input data to generate an animation event in which at least one randomly selected keypad is selected on the virtual keyboard image And generates an event generation command for instructing the generation of the event.

이벤트 명령 전송부(420)는 상기 이벤트 발생 명령을 클라이언트 단말(430)로 전송하여 클라이언트 단말(430)이 상기 가상 키보드 이미지 상에서 상기 랜덤하게 선택된 적어도 하나의 키패드가 선택되는 애니메이션 이벤트를 출력하도록 제어한다.The event command transmission unit 420 transmits the event generation command to the client terminal 430 and controls the client terminal 430 to output an animation event in which at least one randomly selected keypad is selected on the virtual keyboard image .

이상, 도 4를 참조하여 본 발명의 일실시예에 따른 사용자 인증용 가상 키보드 생성 장치(410)에 대해 설명하였다. 여기서, 본 발명의 일실시예에 따른 사용자 인증용 가상 키보드 생성 장치(410)는 도 1을 이용하여 설명한 사용자 인증용 가상 키보드 생성 장치(110)에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.The virtual keyboard generating device 410 for user authentication according to an embodiment of the present invention has been described above with reference to FIG. Here, the virtual keyboard generating device 410 for user authentication according to an embodiment of the present invention may correspond to the configuration of the virtual keyboard generating device 110 for user authentication described with reference to FIG. 1, A description thereof will be omitted.

도 5는 본 발명의 일실시예에 따른 사용자 인증용 가상 키보드 생성 방법을 도시한 순서도이다.5 is a flowchart illustrating a method of generating a virtual keyboard for user authentication according to an embodiment of the present invention.

단계(S510)에서는 클라이언트 단말로부터 사용자 인증용 데이터 입력을 위한 가상 키보드 호출 요청이 전송되면, 상기 가상 키보드 호출 요청에 대응하여 가상 키보드를 구성하는 복수의 키패드들에 대응되는 복수의 평문 텍스트 값들을 생성한다.In step S510, when a virtual keyboard call request for data input for user authentication is transmitted from the client terminal, a plurality of plain text values corresponding to a plurality of keypads constituting the virtual keyboard are generated in response to the virtual keyboard call request do.

단계(S520)에서는 복수의 랜덤 값들로 구성된 텍스트 배열을 생성하고, 상기 복수의 평문 텍스트 값들 각각을 상기 텍스트 배열 상의 제1 위치에 삽입하여 복수의 혼합 텍스트 배열들을 생성한다.In step S520, a text array composed of a plurality of random values is generated, and each of the plurality of plain text values is inserted into a first position on the text arrangement to generate a plurality of mixed text arrangements.

단계(S530)에서는 데이터 암호화를 위한 암호화키를 생성하여 상기 복수의 혼합 텍스트 배열들을 상기 암호화키로 암호화한다.In step S530, an encryption key for data encryption is generated and the plurality of mixed text arrays are encrypted with the encryption key.

단계(S540)에서는 상기 복수의 키패드들을 표현하기 위한 가상 키보드 이미지를 생성하고, 상기 복수의 키패드들과 상기 복수의 평문 텍스트 값들 사이의 대응 관계에 따라 상기 가상 키보드 이미지 상에서 상기 복수의 키패드들과 상기 암호화된 복수의 혼합 텍스트 배열들을 매핑한다.In step S540, a virtual keyboard image for expressing the plurality of keypads is generated, and the plurality of keypads and the plurality of keypads are displayed on the virtual keyboard image according to the correspondence between the plurality of keypads and the plurality of plain text values. And maps a plurality of encrypted mixed text arrays.

단계(S550)에서는 상기 암호화된 복수의 혼합 텍스트 배열들과 상기 가상 키보드 이미지, 및 상기 복수의 키패드들과 상기 암호화된 복수의 혼합 텍스트 배열들 사이의 매핑 정보로 구성된 가상 키보드 데이터를 생성하여 상기 가상 키보드 데이터를 상기 클라이언트 단말로 전송한다.In step S550, virtual keyboard data including the encrypted plurality of mixed text arrays, the virtual keyboard image, and the mapping information between the plurality of keypads and the encrypted plurality of mixed text arrays is generated, And transmits the keyboard data to the client terminal.

이때, 본 발명의 일실시예에 따르면, 상기 사용자 인증용 가상 키보드 생성 방법은 단계(S550)이후에 상기 클라이언트 단말로부터, 상기 클라이언트 단말의 사용자의 가상 키보드 입력에 기초하여 상기 복수의 키패드들에 매핑되어 있는 상기 암호화된 복수의 혼합 텍스트 배열들 중 적어도 하나의 혼합 텍스트 배열이 가상 키보드 입력 데이터로 전송되면, 상기 암호화키를 기초로 상기 적어도 하나의 혼합 텍스트 배열을 복호화하는 단계, 상기 복호화된 적어도 하나의 혼합 텍스트 배열로부터 상기 제1 위치에 삽입되어 있는 적어도 하나의 평문 텍스트 값을 추출하는 단계 및 상기 추출된 적어도 하나의 평문 텍스트 값을 기초로 상기 클라이언트 단말에 대한 사용자 인증을 수행하는 단계를 더 포함할 수 있다.According to an embodiment of the present invention, the method for generating a virtual keyboard for user authentication further comprises the step of, after step S550, mapping the virtual keyboard to the plurality of keypads based on a virtual keyboard input of the user of the client terminal, Decrypting the at least one mixed text array based on the encryption key if at least one mixed text array of the encrypted plurality of mixed text arrangements is transmitted as virtual keyboard input data, Extracting at least one plaintext text value inserted at the first location from the mixed text array of the at least one plaintext text value and performing user authentication for the client terminal based on the extracted plaintext text value can do.

또한, 본 발명의 일실시예에 따르면, 상기 사용자 인증용 가상 키보드 생성 방법은 단계(S550)이후에 상기 클라이언트 단말로부터, 상기 클라이언트 단말의 사용자의 가상 키보드 입력에 기초하여 상기 복수의 키패드들에 매핑되어 있는 상기 암호화된 복수의 혼합 텍스트 배열들 중 어느 하나의 혼합 텍스트 배열이 가상 키보드 입력 데이터로 전송될 때마다, 상기 복수의 랜덤 값들을 재생성하여 상기 재생성된 복수의 랜덤 값들로 구성된 상기 텍스트 배열을 재생성한 후 상기 복수의 평문 텍스트 값들 각각을 상기 재생성된 텍스트 배열 상의 상기 제1 위치에 삽입하여 상기 복수의 혼합 텍스트 배열들을 재생성하는 단계, 상기 재생성된 복수의 혼합 텍스트 배열들을 상기 암호화키로 재암호화하는 단계, 상기 복수의 키패드들과 상기 복수의 평문 텍스트 값들 사이의 대응 관계에 따라 상기 가상 키보드 이미지 상에서 상기 복수의 키패드들과 상기 재암호화된 복수의 혼합 텍스트 배열들을 매핑하는 단계 및 상기 재암호화된 복수의 혼합 텍스트 배열들, 및 상기 복수의 키패드들과 상기 재암호화된 복수의 혼합 텍스트 배열들 사이의 매핑 정보로 구성된 가상 키보드 갱신 데이터를 생성하여 상기 가상 키보드 갱신 데이터를 상기 클라이언트 단말로 전송하는 단계를 더 포함할 수 있다.According to an embodiment of the present invention, the method for generating a virtual keyboard for user authentication may further include, after step S550, mapping the virtual keyboard to the plurality of keypads based on a virtual keyboard input of the user of the client terminal, Each time a mixed text array of the encrypted plurality of mixed text arrays is transmitted as virtual keyboard input data, the plurality of random values are regenerated to generate the text array composed of the regenerated plurality of random values Re-encrypting the plurality of mixed text arrangements with the encryption key by inserting each of the plurality of plaintext text values into the first location on the regenerated text array after regenerating the plurality of mixed text arrangements; Wherein the plurality of keypads and the plurality of plaintexts Mapping the re-encrypted plurality of mixed text arrangements to the plurality of keypads on the virtual keyboard image according to a correspondence between values of the plurality of keypads and the plurality of mixed text arrangements, Generating virtual keyboard update data including mapping information between the plurality of re-encrypted mixed text arrays, and transmitting the virtual keyboard update data to the client terminal.

이때, 본 발명의 일실시예에 따르면, 상기 클라이언트 단말은 상기 가상 키보드 갱신 데이터가 수신되면, 상기 가상 키보드 갱신 데이터를 기초로 상기 클라이언트 단말 내에 저장되어 있는 상기 가상 키보드 데이터를 갱신한 후 상기 갱신된 가상 키보드 데이터를 기초로 상기 가상 키보드를 생성할 수 있다.According to an embodiment of the present invention, when the virtual keyboard update data is received, the client terminal updates the virtual keyboard data stored in the client terminal based on the virtual keyboard update data, The virtual keyboard can be generated based on the virtual keyboard data.

이때, 본 발명의 일실시예에 따르면, 상기 복수의 혼합 텍스트 배열들을 재생성하는 단계는 상기 클라이언트 단말로부터 상기 어느 하나의 혼합 텍스트 배열이 상기 가상 키보드 입력 데이터로 전송될 때마다, 상기 제1 위치를 변경하여 상기 복수의 평문 텍스트 값들 각각을 상기 재생성된 텍스트 배열 상의 상기 변경된 제1 위치에 삽입할 수 있다.In this case, according to an embodiment of the present invention, the step of regenerating the plurality of mixed text arrangements may include the step of, when each of the mixed text arrays is transmitted from the client terminal to the virtual keyboard input data, To insert each of the plurality of plaintext text values into the modified first location on the regenerated text arrangement.

또한, 본 발명의 일실시예에 따르면, 상기 사용자 인증용 가상 키보드 생성 방법은 단계(S550)이후에 상기 클라이언트 단말로부터, 상기 클라이언트 단말의 사용자의 가상 키보드 입력에 기초하여 상기 복수의 키패드들에 매핑되어 있는 상기 암호화된 복수의 혼합 텍스트 배열들 중 어느 하나의 혼합 텍스트 배열이 가상 키보드 입력 데이터로 전송될 때마다, 상기 복수의 키패드들 중 적어도 하나의 키패드를 랜덤하게 선택하여 상기 가상 키보드 이미지 상에서 상기 랜덤하게 선택된 적어도 하나의 키패드가 선택되는 애니메이션 이벤트를 발생시키기 위한 이벤트 발생 명령을 생성하는 단계 및 상기 이벤트 발생 명령을 상기 클라이언트 단말로 전송하여 상기 클라이언트 단말이 상기 가상 키보드 이미지 상에서 상기 랜덤하게 선택된 적어도 하나의 키패드가 선택되는 애니메이션 이벤트를 출력하도록 제어하는 단계를 더 포함할 수 있다.According to an embodiment of the present invention, the method for generating a virtual keyboard for user authentication may further include, after step S550, mapping the virtual keyboard to the plurality of keypads based on a virtual keyboard input of the user of the client terminal, Wherein each time a mixed text array of the encrypted plurality of mixed text arrays is transmitted as virtual keyboard input data, at least one of the plurality of keypads is randomly selected, Generating an event generation command for generating an animation event in which at least one randomly selected keypad is selected and transmitting the event generation command to the client terminal so that the client terminal displays the randomly selected at least one Key of And controlling the pad to output the selected animation event.

이상, 도 5를 참조하여 본 발명의 일실시예에 따른 사용자 인증용 가상 키보드 생성 방법에 대해 설명하였다. 여기서, 본 발명의 일실시예에 따른 사용자 인증용 가상 키보드 생성 방법은 도 1 내지 도 4를 이용하여 설명한 사용자 인증용 가상 키보드 생성 장치(110, 410)의 동작에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.The method for generating a virtual keyboard for user authentication according to an embodiment of the present invention has been described above with reference to FIG. Here, the method for generating a virtual keyboard for user authentication according to an embodiment of the present invention may correspond to the configuration of operations of the virtual keyboard generating apparatuses 110 and 410 for user authentication described with reference to FIGS. 1 to 4, A detailed description thereof will be omitted.

본 발명의 일실시예에 따른 사용자 인증용 가상 키보드 생성 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method for generating a virtual keyboard for user authentication according to an embodiment of the present invention may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions recorded on the medium may be those specially designed and constructed for the present invention or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. As described above, the present invention has been described with reference to particular embodiments, such as specific elements, and specific embodiments and drawings. However, it should be understood that the present invention is not limited to the above- And various modifications and changes may be made thereto by those skilled in the art to which the present invention pertains.

따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.Accordingly, the spirit of the present invention should not be construed as being limited to the embodiments described, and all of the equivalents or equivalents of the claims, as well as the following claims, belong to the scope of the present invention .

110: 사용자 인증용 가상 키보드 생성 장치
120: 클라이언트 단말
410: 사용자 인증용 가상 키보드 생성 장치
411: 생성부 412: 혼합부
413: 암호화부 414: 매핑부
415: 전송부 416: 복호화부
417: 추출부 418: 사용자 인증부
419: 이벤트 명령 생성부 420: 이벤트 명령 전송부
430: 클라이언트 단말
110: Virtual keyboard generating device for user authentication
120:
410: Virtual keyboard generating device for user authentication
411: Generator 412: Mixer
413: Encryption unit 414:
415: Transmitting unit 416: Decoding unit
417 extracting unit 418 user authentication unit
419: Event command generation unit 420: Event command transmission unit
430:

Claims (13)

클라이언트 단말로부터 사용자 인증용 데이터 입력을 위한 가상 키보드 호출 요청이 전송되면, 상기 가상 키보드 호출 요청에 대응하여 가상 키보드를 구성하는 복수의 키패드들에 대응되는 복수의 평문 텍스트 값들을 생성하는 생성부;
복수의 랜덤 값들로 구성된 텍스트 배열을 생성하고, 상기 복수의 평문 텍스트 값들 각각을 상기 텍스트 배열 상의 제1 위치에 삽입하여 복수의 혼합 텍스트 배열들을 생성하는 혼합부;
데이터 암호화를 위한 암호화키를 생성하여 상기 복수의 혼합 텍스트 배열들을 상기 암호화키로 암호화하는 암호화부;
상기 복수의 키패드들을 표현하기 위한 가상 키보드 이미지를 생성하고, 상기 복수의 키패드들과 상기 복수의 평문 텍스트 값들 사이의 대응 관계에 따라 상기 가상 키보드 이미지 상에서 상기 복수의 키패드들과 상기 암호화된 복수의 혼합 텍스트 배열들을 매핑하는 매핑부;
상기 암호화된 복수의 혼합 텍스트 배열들과 상기 가상 키보드 이미지, 및 상기 복수의 키패드들과 상기 암호화된 복수의 혼합 텍스트 배열들 사이의 매핑 정보로 구성된 가상 키보드 데이터를 생성하여 상기 가상 키보드 데이터를 상기 클라이언트 단말로 전송하는 전송부;
상기 클라이언트 단말로부터, 상기 클라이언트 단말의 사용자의 가상 키보드 입력에 기초하여 상기 복수의 키패드들에 매핑되어 있는 상기 암호화된 복수의 혼합 텍스트 배열들 중 적어도 하나의 혼합 텍스트 배열이 가상 키보드 입력 데이터로 전송되면, 상기 암호화키를 기초로 상기 적어도 하나의 혼합 텍스트 배열을 복호화하는 복호화부;
상기 복호화된 적어도 하나의 혼합 텍스트 배열로부터 상기 제1 위치에 삽입되어 있는 적어도 하나의 평문 텍스트 값을 추출하는 추출부; 및
상기 추출된 적어도 하나의 평문 텍스트 값을 기초로 상기 클라이언트 단말에 대한 사용자 인증을 수행하는 사용자 인증부
를 포함하는 사용자 인증용 가상 키보드 생성 장치.
A generating unit for generating a plurality of plaintext text values corresponding to a plurality of keypads constituting a virtual keyboard in response to the virtual keyboard calling request, when a virtual keyboard calling request for inputting data for user authentication is transmitted from a client terminal;
A mixing unit for generating a text array composed of a plurality of random values and inserting each of the plurality of plain text values into a first position on the text arrangement to generate a plurality of mixed text arrangements;
An encryption unit for generating an encryption key for data encryption and encrypting the plurality of mixed text arrays with the encryption key;
Generating a virtual keyboard image for expressing the plurality of keypads, and generating a virtual keyboard image for representing the plurality of keypads and the encrypted plurality of blends on the virtual keyboard image according to a correspondence between the plurality of keypads and the plurality of plain- A mapping unit for mapping text arrays;
Generating virtual keyboard data composed of the encrypted plurality of mixed text sequences, the virtual keyboard image, and mapping information between the plurality of keypads and the encrypted plurality of text arrangements, A transmitting unit for transmitting to the terminal;
When at least one mixed text array of the encrypted plurality of mixed text arrays mapped to the plurality of keypads based on the virtual keyboard input of the user of the client terminal is transmitted from the client terminal to the virtual keyboard input data A decryption unit for decrypting the at least one mixed text array based on the encryption key;
An extraction unit for extracting at least one plaintext text value inserted at the first location from the decoded mixed text arrangement; And
A user authentication unit for performing user authentication for the client terminal based on the extracted at least one plaintext text value,
And a virtual keyboard for user authentication.
삭제delete 제1항에 있어서,
상기 혼합부는
상기 클라이언트 단말로부터, 상기 클라이언트 단말의 사용자의 가상 키보드 입력에 기초하여 상기 복수의 키패드들에 매핑되어 있는 상기 암호화된 복수의 혼합 텍스트 배열들 중 어느 하나의 혼합 텍스트 배열이 가상 키보드 입력 데이터로 전송될 때마다, 상기 복수의 랜덤 값들을 재생성하여 상기 재생성된 복수의 랜덤 값들로 구성된 상기 텍스트 배열을 재생성한 후 상기 복수의 평문 텍스트 값들 각각을 상기 재생성된 텍스트 배열 상의 상기 제1 위치에 삽입하여 상기 복수의 혼합 텍스트 배열들을 재생성하고,
상기 암호화부는
상기 재생성된 복수의 혼합 텍스트 배열들을 상기 암호화키로 재암호화하며,
상기 매핑부는
상기 복수의 키패드들과 상기 복수의 평문 텍스트 값들 사이의 대응 관계에 따라 상기 가상 키보드 이미지 상에서 상기 복수의 키패드들과 상기 재암호화된 복수의 혼합 텍스트 배열들을 매핑하고,
상기 전송부는
상기 재암호화된 복수의 혼합 텍스트 배열들, 및 상기 복수의 키패드들과 상기 재암호화된 복수의 혼합 텍스트 배열들 사이의 매핑 정보로 구성된 가상 키보드 갱신 데이터를 생성하여 상기 가상 키보드 갱신 데이터를 상기 클라이언트 단말로 전송하는 사용자 인증용 가상 키보드 생성 장치.
The method according to claim 1,
The mixing section
Wherein a mixed text array of the encrypted plurality of mixed text arrays mapped to the plurality of keypads based on the virtual keyboard input of the user of the client terminal is transmitted from the client terminal to the virtual keyboard input data Each of the plurality of plain text values is inserted into the first position on the regenerated text array to regenerate the plurality of random values to regenerate the text arrangement comprising the regenerated plurality of random values, Lt; RTI ID = 0.0 > text < / RTI &
The encryption unit
Encrypting the regenerated plurality of mixed text sequences with the encryption key,
The mapping unit
Mapping the re-encrypted plurality of mixed text arrays with the plurality of keypads on the virtual keyboard image according to a correspondence between the plurality of keypads and the plurality of plain text values,
The transmitter
And generates virtual keyboard update data composed of the re-encrypted plurality of mixed text arrays and mapping information between the plurality of keypads and the plurality of re-encrypted mixed text arrays, A virtual keyboard generating unit for generating a virtual keyboard;
제3항에 있어서,
상기 클라이언트 단말은
상기 가상 키보드 갱신 데이터가 수신되면, 상기 가상 키보드 갱신 데이터를 기초로 상기 클라이언트 단말 내에 저장되어 있는 상기 가상 키보드 데이터를 갱신한 후 상기 갱신된 가상 키보드 데이터를 기초로 상기 가상 키보드를 생성하는 사용자 인증용 가상 키보드 생성 장치.
The method of claim 3,
The client terminal
Wherein the virtual keyboard data updating unit updates the virtual keyboard data stored in the client terminal based on the virtual keyboard update data and generates the virtual keyboard based on the updated virtual keyboard data, A virtual keyboard generating device.
제3항에 있어서,
상기 혼합부는
상기 클라이언트 단말로부터 상기 어느 하나의 혼합 텍스트 배열이 상기 가상 키보드 입력 데이터로 전송될 때마다, 상기 제1 위치를 변경하여 상기 복수의 평문 텍스트 값들 각각을 상기 재생성된 텍스트 배열 상의 상기 변경된 제1 위치에 삽입하는 사용자 인증용 가상 키보드 생성 장치.
The method of claim 3,
The mixing section
Each time the mixed text array is transmitted from the client terminal to the virtual keyboard input data, the first position is changed so that each of the plurality of plain text values is changed to the changed first position on the regenerated text array A virtual keyboard generating device for user authentication to be inserted.
제1항에 있어서,
상기 클라이언트 단말로부터, 상기 클라이언트 단말의 사용자의 가상 키보드 입력에 기초하여 상기 복수의 키패드들에 매핑되어 있는 상기 암호화된 복수의 혼합 텍스트 배열들 중 어느 하나의 혼합 텍스트 배열이 가상 키보드 입력 데이터로 전송될 때마다, 상기 복수의 키패드들 중 적어도 하나의 키패드를 랜덤하게 선택하여 상기 가상 키보드 이미지 상에서 상기 랜덤하게 선택된 적어도 하나의 키패드가 선택되는 애니메이션 이벤트를 발생시키기 위한 이벤트 발생 명령을 생성하는 이벤트 명령 생성부; 및
상기 이벤트 발생 명령을 상기 클라이언트 단말로 전송하여 상기 클라이언트 단말이 상기 가상 키보드 이미지 상에서 상기 랜덤하게 선택된 적어도 하나의 키패드가 선택되는 애니메이션 이벤트를 출력하도록 제어하는 이벤트 명령 전송부
를 더 포함하는 사용자 인증용 가상 키보드 생성 장치.
The method according to claim 1,
Wherein a mixed text array of the encrypted plurality of mixed text arrays mapped to the plurality of keypads based on the virtual keyboard input of the user of the client terminal is transmitted from the client terminal to the virtual keyboard input data Generating an event generation command for randomly selecting at least one keypad among the plurality of keypads at a time to generate an animation event in which at least one randomly selected keypad is selected on the virtual keyboard image, ; And
And an event command transmission unit for transmitting the event generation command to the client terminal and controlling the client terminal to output an animation event in which the randomly selected at least one keypad is selected on the virtual keyboard image,
Wherein the virtual keyboard is a virtual keyboard.
클라이언트 단말로부터 사용자 인증용 데이터 입력을 위한 가상 키보드 호출 요청이 전송되면, 상기 가상 키보드 호출 요청에 대응하여 가상 키보드를 구성하는 복수의 키패드들에 대응되는 복수의 평문 텍스트 값들을 생성하는 단계;
복수의 랜덤 값들로 구성된 텍스트 배열을 생성하고, 상기 복수의 평문 텍스트 값들 각각을 상기 텍스트 배열 상의 제1 위치에 삽입하여 복수의 혼합 텍스트 배열들을 생성하는 단계;
데이터 암호화를 위한 암호화키를 생성하여 상기 복수의 혼합 텍스트 배열들을 상기 암호화키로 암호화하는 단계;
상기 복수의 키패드들을 표현하기 위한 가상 키보드 이미지를 생성하고, 상기 복수의 키패드들과 상기 복수의 평문 텍스트 값들 사이의 대응 관계에 따라 상기 가상 키보드 이미지 상에서 상기 복수의 키패드들과 상기 암호화된 복수의 혼합 텍스트 배열들을 매핑하는 단계;
상기 암호화된 복수의 혼합 텍스트 배열들과 상기 가상 키보드 이미지, 및 상기 복수의 키패드들과 상기 암호화된 복수의 혼합 텍스트 배열들 사이의 매핑 정보로 구성된 가상 키보드 데이터를 생성하여 상기 가상 키보드 데이터를 상기 클라이언트 단말로 전송하는 단계;
상기 클라이언트 단말로부터, 상기 클라이언트 단말의 사용자의 가상 키보드 입력에 기초하여 상기 복수의 키패드들에 매핑되어 있는 상기 암호화된 복수의 혼합 텍스트 배열들 중 적어도 하나의 혼합 텍스트 배열이 가상 키보드 입력 데이터로 전송되면, 상기 암호화키를 기초로 상기 적어도 하나의 혼합 텍스트 배열을 복호화하는 단계;
상기 복호화된 적어도 하나의 혼합 텍스트 배열로부터 상기 제1 위치에 삽입되어 있는 적어도 하나의 평문 텍스트 값을 추출하는 단계; 및
상기 추출된 적어도 하나의 평문 텍스트 값을 기초로 상기 클라이언트 단말에 대한 사용자 인증을 수행하는 단계
를 포함하는 사용자 인증용 가상 키보드 생성 방법.
Generating a plurality of plaintext text values corresponding to a plurality of keypads constituting a virtual keyboard in response to the virtual keyboard calling request, when a virtual keyboard calling request for data input for user authentication is transmitted from the client terminal;
Creating a text array comprising a plurality of random values and inserting each of the plurality of plaintext text values at a first location on the text arrangement to generate a plurality of mixed text arrangements;
Encrypting the plurality of mixed text arrays with the encryption key by generating an encryption key for data encryption;
Generating a virtual keyboard image for expressing the plurality of keypads, and generating a virtual keyboard image for representing the plurality of keypads and the encrypted plurality of blends on the virtual keyboard image according to a correspondence between the plurality of keypads and the plurality of plain- Mapping textual arrays;
Generating virtual keyboard data composed of the encrypted plurality of mixed text sequences, the virtual keyboard image, and mapping information between the plurality of keypads and the encrypted plurality of text arrangements, To a terminal;
When at least one mixed text array of the encrypted plurality of mixed text arrays mapped to the plurality of keypads based on the virtual keyboard input of the user of the client terminal is transmitted from the client terminal to the virtual keyboard input data Decrypting the at least one mixed text array based on the encryption key;
Extracting at least one plaintext text value inserted at the first location from the decoded at least one mixed text array; And
Performing user authentication on the client terminal based on the extracted at least one plaintext text value
And generating a virtual keyboard for user authentication.
삭제delete 제7항에 있어서,
상기 클라이언트 단말로부터, 상기 클라이언트 단말의 사용자의 가상 키보드 입력에 기초하여 상기 복수의 키패드들에 매핑되어 있는 상기 암호화된 복수의 혼합 텍스트 배열들 중 어느 하나의 혼합 텍스트 배열이 가상 키보드 입력 데이터로 전송될 때마다, 상기 복수의 랜덤 값들을 재생성하여 상기 재생성된 복수의 랜덤 값들로 구성된 상기 텍스트 배열을 재생성한 후 상기 복수의 평문 텍스트 값들 각각을 상기 재생성된 텍스트 배열 상의 상기 제1 위치에 삽입하여 상기 복수의 혼합 텍스트 배열들을 재생성하는 단계;
상기 재생성된 복수의 혼합 텍스트 배열들을 상기 암호화키로 재암호화하는 단계;
상기 복수의 키패드들과 상기 복수의 평문 텍스트 값들 사이의 대응 관계에 따라 상기 가상 키보드 이미지 상에서 상기 복수의 키패드들과 상기 재암호화된 복수의 혼합 텍스트 배열들을 매핑하는 단계; 및
상기 재암호화된 복수의 혼합 텍스트 배열들, 및 상기 복수의 키패드들과 상기 재암호화된 복수의 혼합 텍스트 배열들 사이의 매핑 정보로 구성된 가상 키보드 갱신 데이터를 생성하여 상기 가상 키보드 갱신 데이터를 상기 클라이언트 단말로 전송하는 단계
를 더 포함하는 사용자 인증용 가상 키보드 생성 방법.
8. The method of claim 7,
Wherein a mixed text array of the encrypted plurality of mixed text arrays mapped to the plurality of keypads based on the virtual keyboard input of the user of the client terminal is transmitted from the client terminal to the virtual keyboard input data Each of the plurality of plain text values is inserted into the first position on the regenerated text array to regenerate the plurality of random values to regenerate the text arrangement comprising the regenerated plurality of random values, Regenerating the mixed text arrangements of;
Re-encrypting the regenerated plurality of mixed text sequences with the encryption key;
Mapping the re-encrypted plurality of mixed text arrays with the plurality of keypads on the virtual keyboard image according to a correspondence between the plurality of keypads and the plurality of plain text values; And
And generates virtual keyboard update data composed of the re-encrypted plurality of mixed text arrays and mapping information between the plurality of keypads and the plurality of re-encrypted mixed text arrays, ≪ / RTI >
And generating a virtual keyboard for user authentication.
제9항에 있어서,
상기 클라이언트 단말은
상기 가상 키보드 갱신 데이터가 수신되면, 상기 가상 키보드 갱신 데이터를 기초로 상기 클라이언트 단말 내에 저장되어 있는 상기 가상 키보드 데이터를 갱신한 후 상기 갱신된 가상 키보드 데이터를 기초로 상기 가상 키보드를 생성하는 사용자 인증용 가상 키보드 생성 방법.
10. The method of claim 9,
The client terminal
Wherein the virtual keyboard data updating unit updates the virtual keyboard data stored in the client terminal based on the virtual keyboard update data and generates the virtual keyboard based on the updated virtual keyboard data, How to create a virtual keyboard.
제9항에 있어서,
상기 복수의 혼합 텍스트 배열들을 재생성하는 단계는
상기 클라이언트 단말로부터 상기 어느 하나의 혼합 텍스트 배열이 상기 가상 키보드 입력 데이터로 전송될 때마다, 상기 제1 위치를 변경하여 상기 복수의 평문 텍스트 값들 각각을 상기 재생성된 텍스트 배열 상의 상기 변경된 제1 위치에 삽입하는 사용자 인증용 가상 키보드 생성 방법.
10. The method of claim 9,
Wherein regenerating the plurality of mixed text arrangements comprises:
Each time the mixed text array is transmitted from the client terminal to the virtual keyboard input data, the first position is changed so that each of the plurality of plain text values is changed to the changed first position on the regenerated text array A method for creating a virtual keyboard for user authentication to be inserted.
제7항에 있어서,
상기 클라이언트 단말로부터, 상기 클라이언트 단말의 사용자의 가상 키보드 입력에 기초하여 상기 복수의 키패드들에 매핑되어 있는 상기 암호화된 복수의 혼합 텍스트 배열들 중 어느 하나의 혼합 텍스트 배열이 가상 키보드 입력 데이터로 전송될 때마다, 상기 복수의 키패드들 중 적어도 하나의 키패드를 랜덤하게 선택하여 상기 가상 키보드 이미지 상에서 상기 랜덤하게 선택된 적어도 하나의 키패드가 선택되는 애니메이션 이벤트를 발생시키기 위한 이벤트 발생 명령을 생성하는 단계; 및
상기 이벤트 발생 명령을 상기 클라이언트 단말로 전송하여 상기 클라이언트 단말이 상기 가상 키보드 이미지 상에서 상기 랜덤하게 선택된 적어도 하나의 키패드가 선택되는 애니메이션 이벤트를 출력하도록 제어하는 단계
를 더 포함하는 사용자 인증용 가상 키보드 생성 방법.
8. The method of claim 7,
Wherein a mixed text array of the encrypted plurality of mixed text arrays mapped to the plurality of keypads based on the virtual keyboard input of the user of the client terminal is transmitted from the client terminal to the virtual keyboard input data Generating an event generation command for randomly selecting at least one keypad of the plurality of keypads each time to generate an animation event in which the randomly selected at least one keypad is selected on the virtual keyboard image; And
Transmitting the event generation command to the client terminal and controlling the client terminal to output an animation event in which the randomly selected at least one keypad is selected on the virtual keyboard image
And generating a virtual keyboard for user authentication.
제7항, 제9항 내지 제12항 중 어느 한 항의 방법을 수행하는 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.A computer-readable recording medium storing a program for performing the method of any one of claims 7 to 9.
KR20140045932A 2014-04-17 2014-04-17 Virtual keyboard generating device and method for user authentication Active KR101480889B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR20140045932A KR101480889B1 (en) 2014-04-17 2014-04-17 Virtual keyboard generating device and method for user authentication
PCT/KR2015/003801 WO2015160190A1 (en) 2014-04-17 2015-04-15 Device and method for generating virtual keyboard for user authentication

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20140045932A KR101480889B1 (en) 2014-04-17 2014-04-17 Virtual keyboard generating device and method for user authentication

Publications (1)

Publication Number Publication Date
KR101480889B1 true KR101480889B1 (en) 2015-01-13

Family

ID=52588595

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20140045932A Active KR101480889B1 (en) 2014-04-17 2014-04-17 Virtual keyboard generating device and method for user authentication

Country Status (2)

Country Link
KR (1) KR101480889B1 (en)
WO (1) WO2015160190A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101742265B1 (en) * 2015-01-21 2017-06-01 류창화 Input device and method
KR102600593B1 (en) 2022-12-22 2023-11-09 장준 Apparatus and method for encrypting data using a virtual keyboard
WO2025009666A1 (en) * 2023-07-04 2025-01-09 주식회사 락인컴퍼니 Method for securing input data by using random number data for security keypad

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101975638B1 (en) * 2016-08-24 2019-05-07 유동근 Method for generation encrypted program or file

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050069955A (en) * 2005-06-04 2005-07-05 원광대학교산학협력단 Mixed encryption system
KR20070109775A (en) * 2006-05-09 2007-11-15 황조윤 Authentication security method using randomly mapped variable password

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100745489B1 (en) * 2005-07-19 2007-08-02 소프트포럼 주식회사 Key input hacking prevention method
KR100996955B1 (en) * 2008-08-22 2010-11-26 (주)이스트소프트 Security method using virtual keyboard

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050069955A (en) * 2005-06-04 2005-07-05 원광대학교산학협력단 Mixed encryption system
KR20070109775A (en) * 2006-05-09 2007-11-15 황조윤 Authentication security method using randomly mapped variable password

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101742265B1 (en) * 2015-01-21 2017-06-01 류창화 Input device and method
KR102600593B1 (en) 2022-12-22 2023-11-09 장준 Apparatus and method for encrypting data using a virtual keyboard
WO2025009666A1 (en) * 2023-07-04 2025-01-09 주식회사 락인컴퍼니 Method for securing input data by using random number data for security keypad

Also Published As

Publication number Publication date
WO2015160190A1 (en) 2015-10-22

Similar Documents

Publication Publication Date Title
CN101340279B (en) Method, system and apparatus for data ciphering and deciphering
KR101776635B1 (en) Apparatus for performing on behalf an electronic signature for client terminal and operating method thereof
US9729540B2 (en) System and method for user authentication
CN106878245B (en) Graphic code information providing and obtaining method, device and terminal
CN204360381U (en) mobile device
CN102231744B (en) media file protection method, system, media file server and terminal
EP3198498B1 (en) A challenge-response method and associated computing device
CN102325026A (en) Account password secure encryption system
CN103716330A (en) Method and device for encryption and decryption of digital content
KR102055625B1 (en) Authentication server device, program, and authentication method
CN108199847B (en) Digital security processing method, computer device, and storage medium
CN105426790A (en) Touch screen based password security input method and apparatus
KR101480889B1 (en) Virtual keyboard generating device and method for user authentication
CN103853943A (en) Program protection method and device
CN109936546A (en) Data encryption storage method and device and calculating equipment
KR20170124953A (en) Method and system for automating user authentication with decrypting encrypted OTP using fingerprint in mobile phone
JPWO2018043466A1 (en) Data extraction system, data extraction method, registration device and program
CN103036852A (en) Method and device for achieving network login
KR100931986B1 (en) Terminal and message transmission and reception method
CN110750326B (en) Disk encryption and decryption method and system for virtual machine
KR101797571B1 (en) Client terminal device for generating digital signature and digital signature generation method of the client terminal device, computer readable recording medium and computer program stored in the storage medium
JP2013162360A (en) Information terminal device, information terminal system, information terminal control method, and program
CN101833618A (en) A content-based encryption and decryption method and security protection system
CN100561913C (en) A kind of method of access code equipment
JP2005208841A (en) Communication system, portable terminal and program

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20140417

PA0201 Request for examination
PA0302 Request for accelerated examination

Patent event date: 20140417

Patent event code: PA03022R01D

Comment text: Request for Accelerated Examination

PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20140910

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20141216

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20150105

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20150105

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
FPAY Annual fee payment

Payment date: 20171226

Year of fee payment: 4

PR1001 Payment of annual fee

Payment date: 20171226

Start annual number: 4

End annual number: 4

FPAY Annual fee payment

Payment date: 20181231

Year of fee payment: 5

PR1001 Payment of annual fee

Payment date: 20181231

Start annual number: 5

End annual number: 5

FPAY Annual fee payment

Payment date: 20191231

Year of fee payment: 6

PR1001 Payment of annual fee

Payment date: 20191231

Start annual number: 6

End annual number: 6

PR1001 Payment of annual fee

Payment date: 20201231

Start annual number: 7

End annual number: 7

点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载