KR102428409B1 - User authentication device, user authentication method using security code and computer program - Google Patents
User authentication device, user authentication method using security code and computer program Download PDFInfo
- Publication number
- KR102428409B1 KR102428409B1 KR1020200048316A KR20200048316A KR102428409B1 KR 102428409 B1 KR102428409 B1 KR 102428409B1 KR 1020200048316 A KR1020200048316 A KR 1020200048316A KR 20200048316 A KR20200048316 A KR 20200048316A KR 102428409 B1 KR102428409 B1 KR 102428409B1
- Authority
- KR
- South Korea
- Prior art keywords
- security code
- input data
- login
- user terminal
- login input
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
- H04L63/0846—Network architectures or network communication protocols for network security for authentication of entities using passwords using time-dependent-passwords, e.g. periodically changing passwords
Abstract
본 개시는 단말로부터 아이디 및 아이디와 대응되는 패스워드를 포함하는 로그인 입력 데이터를 수신하는 로그인 입력 수신부; 상기 로그인 입력 데이터의 아이디, 및 입력 시점을 기초로 제1 보안 코드를 생성하는 보안 코드 생성부; 및 상기 단말로부터 제2 보안 코드를 수신하고, 상기 사용자 인증 장치가 상기 제1 보안 코드 및 상기 제2 보안 코드 사이의 일치 여부를 판단하고, 상기 일치 여부를 고려하여 상기 로그인 입력 데이터를 처리하는 보안 코드 처리부;를 포함하는, 보안 코드를 이용하여 사용자를 인증하는 사용자 인증 장치를 개시한다. The present disclosure provides a login input receiving unit for receiving login input data including an ID and a password corresponding to the ID from a terminal; a security code generator for generating a first security code based on the ID of the login input data and the input time; and receiving a second security code from the terminal, determining whether the user authentication device matches the first security code and the second security code, and processing the login input data in consideration of the match Disclosed is a user authentication device for authenticating a user using a security code, including; code processing unit.
Description
본 개시는 사용자 인증 장치, 보안 코드를 이용한 사용자 인증 방법 및 컴퓨터 프로그램에 관한 것이다. The present disclosure relates to a user authentication device, a user authentication method using a security code, and a computer program.
일반적으로 통신망에 연결되어 일정한 서비스를 제공하는 패스워드 로그인 장치(통신망에 연결되어 패스워드로 로그인 접속하며, 일정한 리소스를 사용할 수 있도록 서비스를 제공하는 서버 장치를 통칭하며, 예를들어 인터넷 포털 사이트 서버, 이메일 서버, SNS 사이트 서버, 인터넷 웹 하드디스크 서버 등)에 접속하기 위해서는 서비스 허용 인증을 위한 패스워드가 필요하다. 경우에 따라서는 아이디와 패스워드를 동시에 입력하는 것이 필요하다. 이 때 패스워드(또는 아이디와 패스워드)는 한 개인에게만 제공된 것이 보통이나, 패스워드 로그인 장치에서 제공하는 서비스 리소스 자원을 다른 사람들과 공유하여 사용할 수 있는 경우에, 소유자나 관리자 이외의 다른 사람에게 해당 패스워드 로그인 장치의 패스워드(또는 아이디와 패스워드)를 함께 공유할 필요가 있다.In general, a password login device that is connected to a communication network and provides a certain service Server, SNS site server, Internet web hard disk server, etc.) requires a password for service permission authentication. In some cases, it is necessary to enter the ID and password at the same time. At this time, the password (or ID and password) is usually provided only to one individual, but if the service resource resource provided by the password login device can be shared with others, the password is logged in to someone other than the owner or administrator. You need to share the device's password (or ID and password) together.
본 발명은 상기 기술의 문제점을 극복하기 위해 안출된 것으로, 로그인 입력 데이터와 대응되는 보안 코드를 추가적으로 입력 받아 로그인 입력에 대한 최종적인 인증 여부를 결정하는 사용자 인증 장치, 보안 코드를 이용한 사용자 인증 방법 및 컴퓨터 프로그램을 제공할 수 있다. The present invention has been devised to overcome the problems of the above technology, and includes a user authentication device that additionally receives a security code corresponding to login input data to determine whether to finally authenticate the login input, a user authentication method using a security code, and A computer program may be provided.
본 발명의 실시예들에 따른 보안 코드를 이용한 사용자 인증 방법은 사용자 인증 장치가 단말로부터 아이디 및 아이디와 대응되는 패스워드를 포함하는 로그인 입력 데이터를 수신하는 단계, 상기 사용자 인증 장치가 상기 로그인 입력 데이터의 아이디, 및 입력 시점을 기초로 제1 보안 코드를 생성하는 단계, 상기 사용자 인증 장치가 상기 단말로부터 제2 보안 코드를 수신하는 단계, 및 상기 사용자 인증 장치가 상기 제1 보안 코드 및 상기 제2 보안 코드 사이의 일치 여부를 판단하고, 상기 일치 여부를 고려하여 상기 로그인 입력 데이터를 처리하는 단계;를 포함할 수 있다. A user authentication method using a security code according to embodiments of the present invention comprises the steps of: receiving, by a user authentication device, login input data including an ID and a password corresponding to the ID from a terminal; generating a first security code based on an ID and an input time point; receiving, by the user authentication device, a second security code from the terminal; and, by the user authentication device, the first security code and the second security code and determining whether codes match, and processing the login input data in consideration of whether the codes match.
상기 제1 보안 코드는 상기 로그인 입력 데이터의 아이디에 포함된 하나 이상의 입력 단위들을 보안 코드 생성 규칙으로 변환하여 포함할 수 있다. The first security code may include one or more input units included in the ID of the login input data converted into a security code generation rule.
상기 제2 보안 코드를 수신하는 단계 이전에 보안 코드 생성 규칙을 제공하는 출력 데이터를 상기 단말로 전송하는 단계를 더 포함할 수 있다. The method may further include transmitting output data providing a security code generation rule to the terminal before receiving the second security code.
상기 제1 보안 코드는 상기 로그인 입력 데이터가 입력되는 입력 시점과 대응되는 타임값을 기초로 변환된 타임 변환 코드를 더 포함할 수 있다. The first security code may further include a time conversion code converted based on a time value corresponding to an input time point at which the login input data is input.
상기 제1 보안 코드를 생성하는 단계 이전에, 상기 단말로부터 보안 코드 생성과 관련된 사용자 코드를 전송하는 단계를 더 포함하고, 상기 제1 보안 코드를 생성하는 단계는 상기 로그인 입력 데이터의 아이디, 및 입력 시점을 기초로 제1 보안 코드를 생성하고, 상기 제1 보안 코드에 상기 사용자 코드를 더 포함하여 생성할 수 있다. Prior to generating the first security code, the method further includes transmitting a user code related to generation of a security code from the terminal, wherein the step of generating the first security code includes an ID of the login input data, and input A first security code may be generated based on a time point, and the first security code may be generated by further including the user code.
본 발명의 실시예들에 따른 사용자 인증 장치는 단말로부터 아이디 및 아이디와 대응되는 패스워드를 포함하는 로그인 입력 데이터를 수신하는 로그인 입력 수신부; 상기 로그인 입력 데이터의 아이디, 및 입력 시점을 기초로 제1 보안 코드를 생성하는 보안 코드 생성부; 및 상기 단말로부터 제2 보안 코드를 수신하고, 상기 사용자 인증 장치가 상기 제1 보안 코드 및 상기 제2 보안 코드 사이의 일치 여부를 판단하고, 상기 일치 여부를 고려하여 상기 로그인 입력 데이터를 처리하는 보안 코드 처리부;를 포함하는, 보안 코드를 이용하여 사용자를 인증할 수 있다. A user authentication apparatus according to embodiments of the present invention includes: a login input receiving unit for receiving login input data including an ID and a password corresponding to the ID from a terminal; a security code generator for generating a first security code based on the ID of the login input data and the input time; and receiving a second security code from the terminal, determining whether the user authentication device matches the first security code and the second security code, and processing the login input data in consideration of the match The user may be authenticated using a security code, including a code processing unit.
본 발명의 실시예에 따른 컴퓨터 프로그램은 컴퓨터를 이용하여 본 발명의 실시예에 따른 방법 중 어느 하나의 방법을 실행시키기 위하여 매체에 저장될 수 있다. A computer program according to an embodiment of the present invention may be stored in a medium to execute any one of the methods according to an embodiment of the present invention using a computer.
이 외에도, 본 발명을 구현하기 위한 다른 방법, 다른 시스템 및 상기 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 컴퓨터 판독 가능한 기록 매체가 더 제공된다. In addition to this, another method for implementing the present invention, another system, and a computer-readable recording medium for recording a computer program for executing the method are further provided.
전술한 것 외의 다른 측면, 특징, 이점이 이하의 도면, 특허청구범위 및 발명의 상세한 설명으로부터 명확해 질 것이다. Other aspects, features and advantages other than those described above will become apparent from the following drawings, claims, and detailed description of the invention.
본 발명에 따르면, 로그인 입력 데이터와 대응되는 보안 코드를 추가적으로 입력 받아 로그인 입력에 대한 최종적인 인증 여부를 결정할 수 있다. According to the present invention, it is possible to additionally receive a security code corresponding to the log-in input data to determine whether to finally authenticate the log-in input.
도 1 및 도 2는 본 발명의 실시예들에 따른 로그인 처리 시스템의 네트워크 환경에 대한 도면들이다.
도 3은 본 발명의 실시예들에 따른 TTP 서버(100)의 블록도이다.
도 4 내지 도 6은 본 발명의 실시예들에 따른 보안 코드를 이용한 사용자 인증 방법의 흐름도들이다. 1 and 2 are diagrams of a network environment of a login processing system according to embodiments of the present invention.
3 is a block diagram of a
4 to 6 are flowcharts of a user authentication method using a security code according to embodiments of the present invention.
이하 첨부된 도면들에 도시된 본 발명에 관한 실시예를 참조하여 본 발명의 구성 및 작용을 상세히 설명한다.Hereinafter, the configuration and operation of the present invention will be described in detail with reference to the embodiments of the present invention shown in the accompanying drawings.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 본 발명의 효과 및 특징, 그리고 그것들을 달성하는 방법은 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 다양한 형태로 구현될 수 있다. Since the present invention can apply various transformations and can have various embodiments, specific embodiments are illustrated in the drawings and described in detail in the detailed description. Effects and features of the present invention, and a method for achieving them, will become apparent with reference to the embodiments described below in detail in conjunction with the drawings. However, the present invention is not limited to the embodiments disclosed below and may be implemented in various forms.
이하, 첨부된 도면을 참조하여 본 발명의 실시예들을 상세히 설명하기로 하며, 도면을 참조하여 설명할 때 동일하거나 대응하는 구성 요소는 동일한 도면부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings, and when described with reference to the drawings, the same or corresponding components are given the same reference numerals, and the overlapping description thereof will be omitted. .
이하의 실시예에서, 제1, 제2 등의 용어는 한정적인 의미가 아니라 하나의 구성 요소를 다른 구성 요소와 구별하는 목적으로 사용되었다. In the following embodiments, terms such as first, second, etc. are used for the purpose of distinguishing one component from another, not in a limiting sense.
이하의 실시예에서, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. In the following examples, the singular expression includes the plural expression unless the context clearly dictates otherwise.
이하의 실시예에서, 포함하다 또는 가지다 등의 용어는 명세서상에 기재된 특징, 또는 구성요소가 존재함을 의미하는 것이고, 하나 이상의 다른 특징들 또는 구성요소가 부가될 가능성을 미리 배제하는 것은 아니다. In the following embodiments, terms such as include or have means that the features or components described in the specification are present, and the possibility that one or more other features or components may be added is not excluded in advance.
도면에서는 설명의 편의를 위하여 구성 요소들이 그 크기가 과장 또는 축소될 수 있다. 예컨대, 도면에서 나타난 각 구성의 크기 및 두께는 설명의 편의를 위해 임의로 나타내었으므로, 본 발명이 반드시 도시된 바에 한정되지 않는다. In the drawings, the size of the components may be exaggerated or reduced for convenience of description. For example, since the size and thickness of each component shown in the drawings are arbitrarily indicated for convenience of description, the present invention is not necessarily limited to the illustrated bar.
이하의 실시예에서, x축, y축 및 z축은 직교 좌표계 상의 세 축으로 한정되지 않고, 이를 포함하는 넓은 의미로 해석될 수 있다. 예를 들어, x축, y축 및 z축은 서로 직교할 수도 있지만, 서로 직교하지 않는 서로 다른 방향을 지칭할 수도 있다. In the following embodiments, the x-axis, the y-axis, and the z-axis are not limited to three axes on the Cartesian coordinate system, and may be interpreted in a broad sense including them. For example, the x-axis, y-axis, and z-axis may be orthogonal to each other, but may refer to different directions that are not orthogonal to each other.
어떤 실시예가 달리 구현 가능한 경우에 특정한 공정 순서는 설명되는 순서와 다르게 수행될 수도 있다. 예를 들어, 연속하여 설명되는 두 공정이 실질적으로 동시에 수행될 수도 있고, 설명되는 순서와 반대의 순서로 진행될 수 있다.In cases where certain embodiments are otherwise practicable, a specific process sequence may be performed different from the described sequence. For example, two processes described in succession may be performed substantially simultaneously, or may be performed in an order opposite to the order described.
이해의 설명에서 동일한 식별 기호는 동일한 구성을 의미하며, 불필요한 중복적인 설명 및 공지 기술에 대한 설명은 생략하기로 한다. In the description of understanding, the same identification symbol means the same configuration, and unnecessary redundant descriptions and descriptions of well-known technologies will be omitted.
본 발명의 실시예에서, '통신', '통신망' 및 '네트워크'는 동일한 의미로 사용될 수 있다. 상기 세 용어들은 파일을 사용자 단말, 다른 사용자들의 단말 및 다운로드 서버 사이에 송수신할 수 있는 유무선의 근거리 및 광역 데이터 송수신망을 의미한다. In an embodiment of the present invention, 'communication', 'communication network' and 'network' may be used with the same meaning. The above three terms refer to a wired/wireless short-distance and wide-area data transmission/reception network capable of transmitting and receiving files between a user terminal, terminals of other users, and a download server.
본 명세서에서, TTP(Term Time Password)는 정해진 시간 동안 패스워드(보안 코드)로 동작되도록 설정된 패스워드(보안 코드)로서, 정해진 시간이 만료되면 이전 TTP 패스워드 대신에 다른 TTP 패스워드로 변경되도록 동작될 수 있다. In the present specification, a Term Time Password (TTP) is a password (security code) set to operate as a password (security code) for a predetermined time, and may be operated to be changed to another TTP password instead of the previous TTP password when a predetermined time expires. .
도 1 및 도 2는 본 발명의 실시예들에 따른 로그인 처리 시스템의 네트워크 환경에 대한 도면들이다. 1 and 2 are diagrams of a network environment of a login processing system according to embodiments of the present invention.
로그인 처리 시스템은 TTP서버(100), 사용자 단말들(201, 202, 203), 데이터베이스(300)를 포함할 수 있다. The login processing system may include a
TTP 서버(100)는 사용자 단말(201, 202, 203)로부터의 로그인 입력 데이터들을 처리하여 로그인 입력 데이터에 대해서 인증 여부를 처리할 수 있다. TTP 서버(100)는 타 서비스 서버(400)를 통해 사용자 단말(201, 202, 203)로부터의 로그인 입력 데이터를 전달 받고 로그인 입력 데이터와 대응되는 보안 코드를 통해 로그인 입력 데이터에 대한 인증 과정을 더 수행할 수 있다. 보안 코드는 정해진 시간 동안 유효하도록 설정되며, 정해진 시간이 만료된 이후에는 다른 코드로 변경될 수 있다. 보안 코드는 로그인 사용자에 의해 설정되기도 하지만, 관리자에 의해 설정되기도 한다. ㄷThe
TTP 서버(100)는 사용자 단말(201, 202, 203)과 네트워크 망을 통해 통신하여 로그인 입력 데이터 또는 로그인 입력 데이터와 대응되는 보안 코드를 송수신할 수 있다. 여기서, 로그인 입력 데이터와 대응되는 보안 코드는 보안 코드 생성 규칙에 의해서 로그인 입력 데이터와 대응되어 다양한 조합으로 생성되며, 구체적으로는 로그인 입력 데이터에 포함된 아이디, 패스워드에 포함된 입력 단위들(음절, 알파벳, 숫자, 특수문자 등)의 다양한 조합의 코드 또는 상기 코드에 입력된 시점의 타임값(time stamp)을 결합한 형태로 생성될 수 있으며 사용자의 요청에 의해 생성되거나 시스템에 의해 자동적으로 생성될 수 있다. The
TTP 서버(100)는 데이터베이스(300)에 등록된 사용자 정보(아이디, 패스워드, 보안 코드 등)을 이용하여 사용자 단말(201, 202, 203)들의 로그인 입력 데이터를 처리할 수 있다. The
사용자 단말(201, 202, 203)들은 본 발명의 실시예들에 따라 스마트폰(smart phone), PC(personal Computer), 노트북 컴퓨터, 휴대폰(mobile phone), 태블릿 PC, 내비게이션(navigation) 단말기, PDA(personal digital assistants), 스마트 TV(smart TV), PMP(portable Multimedia player) 및 디지털 방송 수신기일 수 있으나, 이에 한정되는 것은 아니다. The
사용자 단말(201, 202, 203)들은 네트워크 망을 통해 TTP 서버(100)에 접속하여 로그인 입력 데이터에 대한 인증을 요청할 수 있다. The
사용자 단말(201, 202, 203)들은 아이디 및 패스워드를 포함하는 로그인 입력 데이터와 로그인 입력 데이터와 대응되는 보안 코드를 TTP 서버(100)로 전송하여 로그인 입력 데이터의 인증 과정을 요청할 수 있다. The
도 2에 도시된 바와 같이, 로그인 처리 시스템은 TTP 서버(100), 사용자 단말들(201, 202, 203), 타 서비스 서버(400)를 포함하여 구현될 수 있다. As shown in FIG. 2 , the login processing system may be implemented including a
TTP 서버(100)는 로그인 입력 데이터에 추가 인증을 요청하는 타 서비스 서버(400)와 연계하여 동작할 수 있다. 이런 경우, TTP 서버(100)는 사용자 단말(201)에서 입력된 로그인 입력 데이터를 타 서비스 서버(400)를 통해 수신하고, 로그인 입력 데이터와 대응되는 보안 코드를 생성하고 로그인 입력 데이터를 입력한 사용자 단말(201)로 보안 코드를 요청할 수 있다. TTP 서버(100)는 생성된 보안 코드와 사용자 단말(201)에서 입력된 보안 코드 사이의 동일성을 판단하여 로그인 입력 데이터에 대한 인증 정보를 생성할 수 있다. 타 서비스 서버(400)는 TTP 서버(100)로부터 수신한 로그인 입력 데이터에 대한 인증 정보와 대응하여 사용자 단말(201)의 로그인 입력 데이터를 성공(Y) 또는 실패(N)로 처리할 수 있다. The
사용자 단말(201, 202, 203)들은 네트워크 망을 통해 TTP 서버(100) 또는 타 서비스 서버(400)로 접속하고 다양한 서비스를 제공 받을 수 있다. The
사용자 단말(201, 202, 203)은 타 서비스 서버(400)에 접속하여 로그인 과정을 수행하는 과정에서, 보안 코드 등의 정보를 TTP 서버(100)와 송수신하는 프로그램을 설치할 수 있다. 사용자 단말(201, 202, 203)은 TTP 서버(100)로 접속하여 로그인 과정을 수행하고, 로그인 과정에 대한 인증 정보를 가지고 타 서비스 서버(400)로 접속할 수 있다. The
도 3은 본 발명의 실시예들에 따른 TTP 서버(100)의 블록도이다. 3 is a block diagram of a
TTP 서버(100)는 프로세서(110), 통신부(120), 입력부(130), 출력부(140), 저장 매체(150)를 포함할 수 있다. The
프로세서(110)는 TTP 서버(100)를 전반적으로 제어하기 위한 구성이다. 구체적으로, 프로세서(110)는 TTP 서버(100)의 저장매체(150)에 저장된 각종 프로그램을 이용하여 TTP 서버(100)의 전반적인 동작을 제어한다. 예를 들어, 프로세서(110)는 CPU, 램(RAM), 롬(ROM), 시스템 버스를 포함할 수 있다. 여기서, 롬은 시스템 부팅을 위한 명령어 세트가 저장되는 구성이고, CPU는 롬에 저장된 명령어에 따라 TTP 서버(100)의 저장된 운영체제를 램에 복사하고, O/S를 실행시켜 시스템을 부팅시킨다. 부팅이 완료되면, CPU는 저장된 각종 애플리케이션을 램에 복사하고, 실행시켜 각종 동작을 수행할 수 있다. 이상에서는 TTP 서버(100)가 하나의 CPU만을 포함하는 것으로 설명하였지만, 구현 시에는 복수의 CPU(또는 DSP, SoC 등)으로 구현될 수 있다.The
본 발명의 일 실시 예에 따라, 프로세서(110)는 디지털 신호를 처리하는 디지털 시그널 프로세서(digital signal processor(DSP)), 마이크로 프로세서(microprocessor), TCON(Time controller)으로 구현될 수 있다. 다만, 이에 한정되는 것은 아니며, 중앙처리장치(central processing unit(CPU)), MCU(Micro Controller Unit), MPU(micro processing unit), 컨트롤러(controller), 어플리케이션 프로세서(application processor(AP)), 또는 커뮤니케이션 프로세서(communication processor(CP)), ARM 프로세서 중 하나 또는 그 이상을 포함하거나, 해당 용어로 정의될 수 있다. 또한, 프로세서(110)는 프로세싱 알고리즘이 내장된 SoC(System on Chip), LSI(large scale integration)로 구현될 수도 있고, FPGA(Field Programmable gate array) 형태로 구현될 수도 있다.According to an embodiment of the present invention, the
출력부(140)는 TTP 서버(100)가 저장 매체(150)에 의해 생성된 인터페이스를 디스플레이할 수 있다. 본 발명의 일 실시예에 따르면 출력부(140)는 입력부(130)를 통해 입력된 사용자 입력에 대한 사용자 인터페이스를 디스플레이할 수 있다. 출력부(140)는 저장된 그래픽 데이터, 시각 데이터, 청각 데이터, 진동 데이터를 저장 매체(150)의 제어에 의해 출력할 수 있다. The
입력부(130)는 TTP 서버(100)에 다양한 정보를 입력하기 위한 사용자 인터페이스를 포함할 수 있다. 선택적 실시예에서, 출력부(140) 또는 입력부(130)는 TTP 서버(100)와 일체형으로 구현되거나 분리형으로 구현될 수 있다. 분리형의 출력부(140) 또는 입력부(130)는 TTP 서버(100)와 전기적으로 또는 네트워크 망을 통해 연결될 수 있다. 분리형의 출력부(140) 또는 입력부(130)는 선택적으로 TTP 서버(100)와 통신할 수 있다. The
통신부(120)는 서버, 다른 전자장치 등의 장치와 데이터를 송수신하기 위한 구성이다. 통신부(120)는 블루투스 통신부, BLE(Bluetooth Low Energy) 통신부, 근거리 무선 통신부(Near Field Communication unit), WLAN(와이파이) 통신부, 지그비(Zigbee) 통신부, 적외선(IrDA, infrared Data Association) 통신부, WFD(Wi-Fi Direct) 통신부, UWB(ultra wideband) 통신부, Ant+ 통신부 등의 근거리 통신부, 이동통신 망, 또는 유선 이더넷 망 등을 포함할 수 있다.The
TTP 서버(100)는 프로세서(110)의 처리 또는 제어를 위한 프로그램 등 전반의 동작을 위한 다양한 데이터를 저장한 저장 매체(미도시)를 더 포함할 수 있다. 저장 매체(150)는 TTP 서버(100)에서 구동되는 다수의 응용 프로그램(application program 또는 애플리케이션(application)), TTP 서버(100)의 동작을 위한 데이터들, 명령어들을 저장할 수 있다. 이러한 응용 프로그램 중 적어도 일부는, 무선 통신을 통해 외부 서버로부터 다운로드 될 수 있다. 또한 이러한 응용 프로그램 중 적어도 일부는, TTP 서버(100)의 기본적인 기능을 위하여 출고 당시부터 TTP 서버(100) 상에 존재할 수 있다. 응용 프로그램은, 저장 매체에 저장되고, 프로세서(110)에 의하여 TTP 서버(100)의 동작(또는 기능)을 수행하도록 구동될 수 있다.The
저장 매체(150)는 로그인 입력 수신부(151), 보안 코드 생성부(152), 보안 코드 처리부(153)를 포함할 수 있다. The
로그인 입력 수신부(151)는 사용자 단말(201)로부터 로그인 입력 데이터를 수신한다. 사용자 단말은 201로 표시되어 있으나, 202, 203의 사용자 단말로 대체할 수 있다. 로그인 입력 수신부(151)는 타 서비스 서버(400)로부터 사용자 단말(201)에서 입력된 로그인 입력 데이터를 수신할 수 있다. The login
로그인 입력 수신부(151)는 아이디 및 패스워드를 포함하는 로그인 입력 데이터를 암호화하여 암호화된 로그인 입력 데이터를 수신할 수 있다. The login
로그인 입력 수신부(151)는 아이디 및 패스워드를 포함하는 로그인 입력 데이터와 로그인 입력 데이터가 사용자 단말에 입력된 시점과 관련된 타임값을 수신할 수 있다. 로그인 입력 데이터는 입력된 아이디, 패스워드 외에 사용자 단말(201)과 연결되는 연결 링크를 더 포함할 수 있다. TTP 서버(100)는 타 서비스 서버(400)로부터 로그인 입력 데이터를 수신하는 경우에는, 사용자 단말(201)에 대한 링크를 통해 사용자 단말(201)에 데이터를 전송할 수 있다. The login
보안 코드 생성부(152)는 로그인 입력 데이터와 대응되는 보안 코드를 생성할 수 있다. 보안 코드 생성부(152)는 로그인 입력 데이터가 입력된 시점을 고려하여 보안 코드를 생성할 수 있다. 보안 코드 생성부(152)는 로그인 입력 데이터의 아이디 또는 패스워드에 보안 코드 생성 규칙을 적용하여 보안 코드를 생성할 수 있다. The
보안 코드 생성부(152)는 로그인 입력 데이터의 아이디에 포함된 하나 이상의 입력 단위들을 보안 코드 생성 규칙으로 변환하여 포함하는 보안 코드를 생성할 수 있다. The security
보안 코드 생성부(152)는 보안 코드의 생성에 앞서 사용자 단말의 출력부를 통해 보안 코드 생성 규칙을 출력하도록 할 수 있다. The security
보안 코드는 로그인 입력이 입력되는 입력 시점과 대응되는 타임값을 기초로 변환된 타임 변환 코드를 더 포함할 수 있다. The security code may further include a time conversion code converted based on a time value corresponding to an input time point at which a login input is input.
보안 코드는 일정 주기로 재 생성될 수 있다. 예를 들어, 제1 시간 주기 동안 제1 아이디의 로그인 입력에 대해서는 제1 보안 코드로 로그인 입력을 인증 처리할 수 있다. 제1 시간 주기가 만료되고 제2 시간 주기가 시작되면 제1 아이디의 로그인 입력에 대해서 새로운 제2 보안 코드를 생성하여 로그인 입력을 인증할 수 있다. The security code may be regenerated at regular intervals. For example, with respect to the login input of the first ID during the first time period, the login input may be authenticated with the first security code. When the first time period expires and the second time period begins, a new second security code may be generated for the login input of the first ID to authenticate the login input.
보안 코드 생성부(152)는 사용자 단말(201)로부터 수신한 사용자 코드를 이용하여 보안 코드를 생성할 수 있다. 로그인 입력 데이터의 아이디 및 입력 시점과 대응되는 타임 값을 기초로 보안 코드를 생성하고, 보안 코드에 사용자 단말(201)로부터 수신한 사용자 코드를 더 포함시켜 최종적인 보안 코드를 생성할 수 있다. The
다른 실시예에서, 보안 코드 생성부(152)는 생성된 보안 코드를 사용자와 연계된 매체로 전송할 수 있다. 예를 들어, 사용자의 이메일 주소, 사용자의 전자 장치, 사용자 단말(201)로 전송할 수 있다. In another embodiment, the
또 다른 실시예에서 보안 코드 생성부(152)로부터 수신된 보안 코드는 사용자 단말(201)는 보안 코드 생성부(152)로부터 보안 코드를 수신하고, 수신된 보안 코드를 보안 코드 처리부(153)의 요청의 응답 신호에 자동적으로 포함되도록 설정될 수 있다. 예를 들어, 사용자 단말(201)의 메모리에는 보안 코드를 저장하는 영역이 존재하고, 사용자 단말(201)로 보안 코드의 요청이 수신되면, 사용자 단말(201)의 명령어들은 보안 코드가 저장된 영역에 저장된 값(value)를 로드하여, 상기 값(value)가 보안 코드의 요청의 응답 신호에 포함되도록 할 수 있다. 이때, 사용자 단말(201)의 명령어들은 보안 코드가 저장된 영역인 제1 영역에 저장된 제1 값을 로드하고, 제1 영역에 저장된 제1 값을 현재 시점의 현재 타임값을 고려하여 변형한 제2 값을 보안 코드로 생성하고, 보안 코드의 요청의 응답 신호에 포함시킬 수 있다. In another embodiment, the security code received from the security
보안 코드가 저장된 영역은 TTP 서버에 의해 지정된 주소 영역일 수 있으나, 이에 한정되지 않고 사용자 단말(201)의 시스템(운영 체제)에 의해 결정된 영역일 수 있다. 이를 통해, 로그인 시에 필요한 보안 코드를 입력해야 하는 수고로움을 덜 수 있다. The area in which the security code is stored may be an address area designated by the TTP server, but is not limited thereto and may be an area determined by the system (operating system) of the
보안 코드 처리부(153)는 사용자 단말(201)로 로그인 입력 데이터 외에 보안 코드를 요청하는 출력 데이터를 전송할 수 있다. 보안 코드 처리부(153)는 생성된 보안 코드와 사용자 단말(201)로부터 입력된 보안 코드 사이의 일치 여부를 판단할 수 있다. 보안 코드 처리부(153)는 생성된 보안 코드와 사용자 단말(201)로부터 수신된 보안 코드가 일치하는 경우, 로그인 입력에 대한 인증 정보를 생성할 수 있다. The security
다른 실시예에서, 보안 코드 처리부(153)는 사용자 단말(201)로부터 수신된 제1 보안 코드와 이전에 생성된 제2 보안 코드를 비교하여 로그인 입력에 대한 인증 정보를 생성할 수 있다. 또한, 보안 코드 처리부(153)는 이전에 생성된 제2 보안 코드를 현재 시점의 타임값을 적용하여 변형한 제3 보안 코드를 생성할 수 있다. 보안 코드 처리부(153)는 사용자 단말(201)로부터 수신된 제1 보안 코드와 제3 보안 코드를 비교하여 로그인 입력에 대한 인증 정보를 생성할 수 있다. In another embodiment, the security
보안 코드 처리부(153)는 로그인 입력에 대한 인증 정보를 통해서 로그인 입력에 대한 성공(Y) 또는 실패(N)를 처리할 수 있다. The security
보안 코드 처리부(153)는 다양한 방식으로 생성된 보안 코드를 사용자 단말(201), 데이터베이스(300), 및 타 서비스 서버(400) 중 적어도 하나로 전송할 수 있다. The security
도 4 내지 도 6은 본 발명의 실시예들에 따른 보안 코드를 이용한 사용자 인증 방법의 흐름도들이다. 4 to 6 are flowcharts of a user authentication method using a security code according to embodiments of the present invention.
S110에서, 사용자 단말(201)은 아이디 및 패스워드를 포함하는 로그인 입력을 수신할 수 있다. 사용자 단말(201)은 로그인 입력 데이터를 TTP 서버(100)로 전송할 수 있다. In S110, the
S120에서 TTP 서버(100)는 로그인 입력 데이터에 응답하여 로그인 입력과 대응되는 제1 보안 코드를 생성할 수 있다. In S120, the
TTP 서버(100)는 로그인 입력 데이터와 대응되는 제1 보안 코드를 생성할 수 있다. 다른 실시예에서, TTP 서버(100)는 로그인 입력 데이터와 대응되는 제1 보안 코드를 로그인 입력 데이터가 입력된 시점을 고려하여 제2 보안 코드를 다시 생성할 수 있다. The
다른 실시예에서, 제1 보안 코드는 로그인 입력 데이터의 아이디 또는 패스워드에 보안 코드 생성 규칙을 적용하여 제1 보안 코드를 생성될 수 있다. In another embodiment, the first security code may be generated by applying a security code generation rule to an ID or password of the login input data.
다른 실시예에서, TTP 서버(100)는 로그인 입력 데이터의 아이디에 포함된 하나 이상의 입력 단위들을 보안 코드 생성 규칙으로 변환하여 포함하는 제1 보안 코드를 생성할 수 있다. In another embodiment, the
보안 코드는 로그인 입력이 입력되는 입력 시점과 대응되는 타임값을 기초로 변환되는 코드인 타임 변환 코드를 더 포함할 수 있다. The security code may further include a time conversion code, which is a code converted based on a time value corresponding to an input time point at which a login input is input.
다른 실시예에서, 보안 코드는 일정 주기로 재 생성될 수 있다. 예를 들어, 제1 시간 주기 동안 제1 아이디의 로그인 입력에 대해서는 제1 보안 코드로 로그인 입력을 인증 처리할 수 있다. 제1 시간 주기가 만료되고 제2 시간 주기가 시작되면 제1 아이디의 로그인 입력에 대해서 새로운 제2 보안 코드를 생성하여 로그인 입력을 인증할 수 있다. In another embodiment, the security code may be regenerated at regular intervals. For example, with respect to the login input of the first ID during the first time period, the login input may be authenticated with the first security code. When the first time period expires and the second time period begins, a new second security code may be generated for the login input of the first ID to authenticate the login input.
TTP 서버(100)는 사용자 단말(201)로부터 수신한 사용자 코드를 이용하여 보안 코드를 생성할 수 있다. 로그인 입력 데이터의 아이디 및 입력 시점과 대응되는 타임 값을 기초로 보안 코드를 생성하고, 보안 코드에 사용자 단말(201)로부터 수신한 사용자 코드를 더 포함시켜 최종적인 보안 코드를 생성할 수 있다. The
S125에서는 TTP 서버(100)는 보안코드를 요청하는 요청 신호를 사용자 단말(201)로 전송할 수 있다. In S125 , the
S130에서는 사용자 단말(201)은 사용자로부터 제2 보안 코드를 수신 받을 수 있다. TTP 서버(100)는 제2 보안 코드를 수신하고, 생성된 제1 보안 코드와 제2 보안 코드 사이의 동일성 여부를 판단할 수 있다(S135, S140). TTP 서버(100)는 제1 보안 코드 및 제2 보안 코드가 동일한 것으로 판단된 경우, 로그인 입력을 성공(Y)로 처리하고, 제1 보안 코드 및 제2 보안 코드가 동일하지 않은 것으로 판단된 경우, 로그인 입력을 실패(N)로 처리할 수 있다. In S130, the
도 5에 도시된 바와 같이, S210에서 사용자 단말(201)은 아이디 및 패스워드를 포함하는 로그인 입력을 수신할 수 있다. As shown in FIG. 5 , in S210 , the
S215에서 TTP 서버(100)는 아이디 및 패스워드를 포함하는 로그인 입력을 사용자 단말(201)로부터 수신할 수 있다. In S215 , the
S220에서는 TTP 서버(100)는 보안 코드 생성 규칙을 사용자 단말(201)로 전송할 수 있다. TTP 서버(100)는 사용자 단말(201)로부터 수신한 사용자 코드를 이용하여 보안 코드를 생성할 수 있다. 로그인 입력 데이터의 아이디 및 입력 시점과 대응되는 타임 값을 기초로 보안 코드를 생성하고, 보안 코드에 사용자 단말(201)로부터 수신한 사용자 코드를 더 포함시켜 최종적인 보안 코드를 생성할 수 있다. In S220 , the
S225에서는 TTP 서버(100)는 로그인 입력과 대응되는 제3 보안 코드를 생성할 수 있다. In S225, the
S230에서는 TTP 서버(100)는 보안코드를 요청하는 요청 신호를 사용자 단말(201)로 전송할 수 있다. In S230 , the
S235에서는 사용자 단말(201)은 제4 보안 코드를 입력하는 사용자 입력을 수신할 수 있다. 사용자 단말(201)의 명령어들은 제4 보안 코드를 자동적으로 생성하는 동작을 실행시킬 수 있다. 사용자 단말(201)의 메모리에 기록된 값을 기초로 제4 보안 코드가 생성될 수 있다. 제4 보안 코드는 사용자 단말(201)의 메모리에 기록된 값을 포함하거나 사용자 단말(201)의 메모리에 기록된 값으로부터 변형된 값을 포함할 수 있다. In S235, the
보안 코드의 생성과 관련하여 기록된 값은 TTP 서버로부터 수신된 값이거나 사용자 관련 정보와 관련된 값일 수 있다. The value recorded in connection with the generation of the security code may be a value received from a TTP server or a value related to user-related information.
S240에서는 사용자 단말(201)은 제4 보안 코드를 TTP 서버(100)로 전송할 수 있다. In S240 , the
도 6에 도시된 바와 같이, TTP 서버(100)는 타 서비스 서버(400)와 연동하여 동작할 수 있다. As shown in FIG. 6 , the
S310에서는 사용자 단말(201)은 타 서비스 서버(400)에서 제공하는 서비스를 이용하기 위해서, 로그인 과정을 실행한다. 사용자 단말(201)은 로그인 과정 중에서, 아이디 및 패스워드를 포함하는 로그인 입력 데이터를 수신할 수 있다. 타 서비스 서버(400)는 사용자의 로그인이 필요한 서비스를 제공하는 서버를 말한다. 예를 들어, 타 서비스 서버(400)는 학교, 어린이집, 학원 등과 같은 교육 기관, 보건소, 구청 등의 공공기관, 카페 서비스, SNS 서비스, 블로그 서비스 등을 제공하는 서버일 수 있다. In S310, the
S315에서는 사용자 단말(201)은 타 서비스 서버(400)로 로그인 입력 데이터를 전송할 수 있다. In S315 , the
S320에서는 타 서비스 서버(400)는 로그인 입력 및 메타 데이터를 TTP 서버(100)로 전송할 수 있다. 타 서비스 서버(400)는 사용자에 입력된 아이디 및 패스워드 외에, 로그인 입력 데이터가 입력된 입력 시점, 로그인 입력 데이터가 입력된 사용자 단말(201)로의 링크를 메타 데이터로 생성할 수 있다. 타 서비스 서버(400)는 로그인 입력 데이터 및 메타 데이터, 보안 코드 생성 규칙을 TTP 서버(100)로 전송할 수 있다. In S320 , the
S325에서는 TTP 서버(100)는 로그인 입력과 대응되는 제5 보안 코드를 생성할 수 있다. TTP 서버(100)는 로그인 입력 데이터 및 메타 데이터와 대응되는 제5 보안 코드를 생성할 수 있다. In S325, the
S330에서는 TTP 서버(100)는 사용자 단말(201)로 보안 코드를 요청하는 요청 신호를 전송할 수 있다. In S330 , the
S335에서는 사용자 단말(201)은 요청 신호에 응답하여 제6 보안 코드를 입력하고, 제6 보안 코드를 TTP 서버(100)로 전송할 수 있다(S340). In S335, the
S345에서는 TTP 서버(100)는 생성된 제5 보안 코드 및 입력된 제6 보안 코드 사이의 동일성 여부를 판단하고, 제5 보안 코드와 제6 보안 코드가 동일한 것으로 판단된 경우, 로그인 입력에 대한 인증 정보를 생성할 수 있다. In S345, the
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 어플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The device described above may be implemented as a hardware component, a software component, and/or a combination of the hardware component and the software component. For example, devices and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA). , a programmable logic unit (PLU), microprocessor, or any other device capable of executing and responding to instructions, may be implemented using one or more general purpose or special purpose computers. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For convenience of understanding, although one processing device is sometimes described as being used, one of ordinary skill in the art will recognize that the processing device includes a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that may include For example, the processing device may include a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as parallel processors.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may comprise a computer program, code, instructions, or a combination of one or more thereof, which configures a processing device to operate as desired or is independently or collectively processed You can command the device. The software and/or data may be any kind of machine, component, physical device, virtual equipment, computer storage medium or device, to be interpreted by or to provide instructions or data to the processing device. , or may be permanently or temporarily embody in a transmitted signal wave. The software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored in one or more computer-readable recording media.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiment may be implemented in the form of program instructions 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, etc. alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and available to those skilled in the art of computer software. Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic such as floppy disks. - includes magneto-optical media, and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described with reference to the limited embodiments and drawings, various modifications and variations are possible by those skilled in the art from the above description. For example, the described techniques are performed in a different order than the described method, and/or the described components of the system, structure, apparatus, circuit, etc. are combined or combined in a different form than the described method, or other components Or substituted or substituted by equivalents may achieve an appropriate result.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.
Claims (7)
상기 TTP 서버가 상기 타 서비스 서버로부터 상기 로그인 입력, 메타 데이터, 보안 코드 코드 생성 규칙을 수신하고, 수신한 상기 보안 코드 생성 규칙을 이용하여 상기 로그인 입력과 대응되는 제1 보안 코드를 생성하고, 상기 사용자 단말로의 연결 링크를 이용하여 상기 타 서비스 서버를 거치지 않고 상기 사용자 단말로, 보안 코드를 요청하여 상기 사용자 단말로부터 제2 보안 코드를 수신하는 단계,
상기 TTP 서버가 상기 제1 보안 코드 및 상기 제2 보안 코드 사이의 일치 여부를 판단하고, 상기 일치 여부를 고려하여 상기 로그인 입력 데이터를 처리하고, 상기 로그인 입력 데이터에 대한 인증 정보를 생성하여 상기 타 서비스 서버로 전송하며 상기 사용자 단말로의 연결 링크를 통해 데이터를 상기 사용자 단말로 전송하는 단계, 및
상기 타 서비스 서버가 상기 로그인 입력 데이터에 대한 인증 정보와 대응하여 사용자 단말의 로그인 입력 데이터를 성공 또는 실패로 처리하는 단계,를 포함하고,
상기 제1 또는 제2 보안 코드는 로그인 입력 데이터에 포함된 아이디, 패스워드에 포함된 입력 단위들의 조합의 코드 및 상기 코드에 입력된 시점의 타입값(time stamp)을 상기 보안 코드 생성 규칙으로 변환한 형태로, 소정의 시간 주기마다 새로 생성되는 것인, 보안 코드를 이용한 사용자 인증 방법.The step of receiving, by another service server, login input data including an ID and a password corresponding to the ID from the user terminal, and transmitting the login input, metadata, and security code generation rules to the TTP server in response to the login input data - the meta The data includes an input time point at which the log-in input data is input, and a link to a user terminal where the log-in input data is input,
The TTP server receives the login input, metadata, and security code code generation rule from the other service server, and generates a first security code corresponding to the login input by using the received security code generation rule, and receiving a second security code from the user terminal by requesting a security code from the user terminal without going through the other service server by using a connection link to the user terminal;
The TTP server determines whether the first security code and the second security code match, processes the login input data in consideration of the match, and generates authentication information for the login input data to generate authentication information for the login input data. transmitting to a service server and transmitting data to the user terminal through a connection link to the user terminal; and
Including, by the other service server, processing the login input data of the user terminal as success or failure in response to the authentication information for the login input data,
The first or second security code is a code of a combination of input units included in an ID and password included in the login input data, and a type value (time stamp) of the time input in the code is converted into the security code generation rule. In the form, the user authentication method using a security code that is newly generated every predetermined time period.
A computer program stored in a computer-readable storage medium for executing the method of claim 1 using a computer.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200048316A KR102428409B1 (en) | 2020-04-21 | 2020-04-21 | User authentication device, user authentication method using security code and computer program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200048316A KR102428409B1 (en) | 2020-04-21 | 2020-04-21 | User authentication device, user authentication method using security code and computer program |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210130042A KR20210130042A (en) | 2021-10-29 |
KR102428409B1 true KR102428409B1 (en) | 2022-08-03 |
Family
ID=78231488
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200048316A KR102428409B1 (en) | 2020-04-21 | 2020-04-21 | User authentication device, user authentication method using security code and computer program |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102428409B1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101118605B1 (en) * | 2011-10-18 | 2012-02-27 | 이경민 | Log-in system and method with strengthened security |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101739446B1 (en) * | 2015-11-12 | 2017-05-29 | 에이티투소프트 주식회사 | User authentication system and user authentication method therefor |
-
2020
- 2020-04-21 KR KR1020200048316A patent/KR102428409B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101118605B1 (en) * | 2011-10-18 | 2012-02-27 | 이경민 | Log-in system and method with strengthened security |
Also Published As
Publication number | Publication date |
---|---|
KR20210130042A (en) | 2021-10-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6556943B2 (en) | Single sign-on method for appliance secure shell | |
US10382426B2 (en) | Authentication context transfer for accessing computing resources via single sign-on with single use access tokens | |
JP5928854B2 (en) | Method, device and system for managing user authentication | |
US10467385B2 (en) | User-specific application activation for remote sessions | |
US10270757B2 (en) | Managing exchanges of sensitive data | |
US10216937B2 (en) | Secure BIOS password method in server computer | |
US11627129B2 (en) | Method and system for contextual access control | |
KR101746279B1 (en) | System and method for authenticating user using contact list | |
US20060047944A1 (en) | Secure booting of a computing device | |
KR102080156B1 (en) | Auto Recharge System, Method and Server | |
KR102017505B1 (en) | User authentication method using random number generator | |
CN110447033B (en) | Authentication based on client access restrictions | |
US20210036859A1 (en) | Method and system for authenticating a secure credential transfer to a device | |
US10117097B1 (en) | Short-range cross-device authorization | |
US8904508B2 (en) | System and method for real time secure image based key generation using partial polygons assembled into a master composite image | |
KR102428409B1 (en) | User authentication device, user authentication method using security code and computer program | |
KR102389590B1 (en) | Method and system for authenticating a user terminal based on disposable authentication information using mobile device | |
US11882116B2 (en) | Method and system for near field communication authorization sharing | |
US20170012979A1 (en) | Non-transitory computer-readable recording medium storing information processing program, information processing apparatus, and information processing method | |
US20230345240A1 (en) | Contextual authentication for secure remote sessions | |
JP6172774B2 (en) | Method, device and system for managing user authentication | |
JP2019087172A (en) | Terminal authentication system | |
WO2017048278A1 (en) | Communicate with server using credential |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
X091 | Application refused [patent] | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) |