KR101601841B1 - 가상키패드를 이용한 사용자 인증방법 - Google Patents

가상키패드를 이용한 사용자 인증방법 Download PDF

Info

Publication number
KR101601841B1
KR101601841B1 KR1020150159553A KR20150159553A KR101601841B1 KR 101601841 B1 KR101601841 B1 KR 101601841B1 KR 1020150159553 A KR1020150159553 A KR 1020150159553A KR 20150159553 A KR20150159553 A KR 20150159553A KR 101601841 B1 KR101601841 B1 KR 101601841B1
Authority
KR
South Korea
Prior art keywords
input
user
user terminal
authentication
authentication information
Prior art date
Application number
KR1020150159553A
Other languages
English (en)
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 KR1020150159553A priority Critical patent/KR101601841B1/ko
Application granted granted Critical
Publication of KR101601841B1 publication Critical patent/KR101601841B1/ko
Priority to PCT/KR2016/002582 priority patent/WO2017082483A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/36User authentication by graphic or iconic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06K9/32
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/24Aligning, centring, orientation detection or correction of the image
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3228One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions

Abstract

본 발명은 가상키패드를 이용한 사용자 인증방법에 관한 것으로, 본 발명에 따른 제1사용자 단말기, 제2사용자 단말기 및 인증서버를 구비하는 사용자 인증장치에서의 가상키패드를 이용한 사용자 인증방법은, 사용자 인증이 요청되면, 상기 인증서버에서 입력키들 및 입력키들의 배열위치가 표시됨이 없이 일정정보가 포함된 이미지정보 워터마크가 삽입된 제1입력판을 생성하고, 상기 제1입력판을 제1사용자 단말기의 화면에 표시하는 제1단계와; 전용 어플리케이션 프로그램이 설치된 제2사용자 단말기를 통해 상기 워터마크를 인식한 이후에, 사용자 인증정보의 입력이 가능한 제2입력판을 상기 제2사용자 단말기 화면에 표시하는 제2단계와; 상기 제2입력판을 통해 사용자 인증정보가 직접 입력되거나 상기 제2입력판을 참고하여 제1입력판을 통해 상기 사용자 인증정보가 입력되면, 상기 인증서버에서 사용자 인증을 수행하는 제3단계를 구비한다.

Description

가상키패드를 이용한 사용자 인증방법{User authentication method using virtual keypad of user terminal}
본 발명은 가상 키패드를 이용한 사용자 인증방법에 관한 것으로, 보다 구체적으로는, 보안 프로그램의 설치 없이도 화면해킹 또는 동작 감시 기술 등을 통해 정보가 유출되는 것을 방지할 수 있는 가상 키패드를 이용한 사용자 인증방법에 관한 것이다.
현대사회는 금융거래나 각종 사용자 인증이 필요한 업무는 대면접촉보다는 온라인 환경을 통해 이루어지는 것이 일반화되어 있다. 온라인 상에서의 사용자 인증은 대면접촉보다는 더 신중한 접근이 필요하여, 대부분의 경우 사용자 단말기에 액티브엑스(ActiveX) 및 키보드 보안프로그램 등을 포함하는 각종 보안프로그램이나 제어프로그램의 설치가 요구되고 있고, 공인인증서나 보안카드, OTP 장치 등의 보안장치를 통해 보안성을 강화하여 정보유출에 대비하고 있다.
그러나 해킹 기술의 발달에 따라 화면캡처, 엿보기 공격(shoulder surfing attack), 화면 모니터링 등의 화면해킹 기술 또는 PC에 설치된 스파이웨어(spyware) 등으로 인한 공인인증서나 비밀번호 등의 유출 등 정보의 유출이 다양하게 이루어지고 있어 대비가 필요한 실정에 있다.
또한 사용자 PC/클라이언트 환경에 설치되는 제어용 프로그램이나 보안 프로그램은 다양한 운영체제(OS) 및 브라우저 환경 지원에 매우 제한적이고, 다른 제어프로그램과의 충돌가능성이 높아 여러 가지 기능장애를 유발하고 있다.
한편, 정보 유출방지 및 보안강화를 위해 씬클라이언트(thin client), 제로클라이언트(zero-client) 및 넌액티스액스(Non-ActiveX) 환경으로 온라인 환경이 변화하고 있다.
여기서 씬클라이언트(thin client)는 CPUㆍ메모리 등 필수적인 하드웨어 장치만 탑재한 상태에서 네트워크로 연결된 중앙서버에서 모든 업무를 관리하도록 설계된 업무용 PC를 일컫는다. 클라우드 컴퓨팅 기술을 기반으로 운영되어 대부분의 업무는 중앙서버에서 실행되고, 저장된다. 부팅에 필요한 운영체제를 제외한 대부분의 애플리케이션과 데이터를 중앙 서버에 둔 채 그대로 사용하기 때문에 다른 단말기에서 접속해도 내 컴퓨터를 쓰는 것과 동일한 환경으로 컴퓨터를 이용할 수 있다. 따라서 씬클라이언트 환경에서는 모든 데이터는 중앙서버에 보관되기 때문에 정보 유출 등의 문제에서 벗어날 수 있다.
상기 제로클라이언트(zero client)는 메모리 등 필수적인 요소도 모두 없애 PC 본체 자체가 필요 없고, 모든 업무를 서버에서 처리하도록 하여 PC는 오로지 서버를 연결하는 단말기의 역할만 수행하도록 것을 말한다.
액티브 액스는 사용편리를 위한 일종의 제어프로그램으로 보안에 취약한 것으로 알려져 있어 그 사용에 제약이 많아 이를 사용하지 않는 네트워크 환경으로 변화되어 있으며 이를 넌액티스 액스(Non-ActiveX) 환경이라 한다.
이러한 씬클라이언트(thin client), 제로클라이언트(zero-client) 및 넌액티스액스(Non-ActiveX) 환경에서 사용자 개인의 보안강화를 위해 보안프로그램이나 제어프로그램의 설치 등의 종래의 방식은 지원이 불가하여 한계에 도달하고 있다.
따라서 씬클라이언트(thin client), 제로클라이언트(zero-client) 및 넌액티스액스(Non-ActiveX) 환경에 적응이 가능하여 영향받지 않으면서도 정보유출을 방지하여 보안성을 강화할 수 있는 기술에 대한 필요성이 증대되고 있다.
대한민국 등록특허 제10-1270941호(2013.05.29.)
따라서, 본 발명의 목적은 상기한 종래의 문제점을 극복할 수 있는 가상키패드를 이용한 사용자 인증방법을 제공하는 데 있다.
본 발명의 다른 목적은 씬클라이언트(thin client), 제로클라이언트(zero-client) 및 넌액티스액스(Non-ActiveX) 환경에 적응이 가능하여 영향받지 않으면서도 정보유출을 방지하여 보안성을 강화할 수 있는 가상키패드를 이용한 사용자 인증방법을 제공하는 데 있다.
본 발명의 또 다른 목적은 보안프로그램이나 제어프로그램의 설치없이도 사용자 인증이 용이하고 보안성이 강화된 사용자 인증방법을 제공하는 데 있다.
상기한 기술적 과제들의 일부를 달성하기 위한 본 발명의 구체화에 따라, 본 발명에 따른 제1사용자 단말기, 제2사용자 단말기 및 인증서버를 구비하는 사용자 인증장치에서의 가상키패드를 이용한 사용자 인증방법은, 사용자 인증이 요청되면, 상기 인증서버에서 입력키들 및 입력키들의 배열위치가 표시됨이 없이 일정정보가 포함된 이미지정보 워터마크가 삽입된 제1입력판을 생성하고, 상기 제1입력판을 제1사용자 단말기의 화면에 표시하는 제1단계와; 전용 어플리케이션 프로그램이 설치된 제2사용자 단말기를 통해 상기 워터마크를 인식한 이후에, 사용자 인증정보의 입력이 가능한 제2입력판을 상기 제2사용자 단말기 화면에 표시하는 제2단계와; 상기 제2입력판을 통해 사용자 인증정보가 직접 입력되거나 상기 제2입력판을 참고하여 제1입력판을 통해 상기 사용자 인증정보가 입력되면, 상기 인증서버에서 사용자 인증을 수행하는 제3단계를 구비한다.
상기 워터마크에는 제1고유키가 포함되고, 상기 제2사용자 단말기에 설치되는 상기 전용 어플리케이션 프로그램에는 제2고유키가 내장되며, 상기 워터마크는 상기 제1고유키와 상기 제2고유키가 일치되는 경우에 인식되는 것으로 판단될 수 있다.
상기 제1고유키 및 상기 제2고유키는 상기 인증서버를 통해 제공되는 인증기관의 고유키일 수 있다.
상기 제1고유키 및 상기 제2고유키는 인증기관의 고유키, 상기 제2사용자 단말기의 기계적 고유키 및 사용자를 통해 설정된 개인 비밀번호가 조합되어 형성된 해쉬암호값 일 수 있다.
상기 제1단계는, 상기 제2사용자 단말기는 상기 인증서버에서 제공되는 상기 전용 어플리케이션 프로그램의 설치시, 상기 전용 어플리케이션 프로그램에 내장된 인증기관의 고유키, 상기 제2사용자 단말기의 기계적 고유키 및 사용자에 의해 설정된 개인 비밀번호를 조합하여 해쉬암호값 형태의 상기 제1고유키를 생성하여 인증서버에 전송하는 단계와; 상기 인증서버에서 상기 제1고유키를 등록 및 저장하는 단계와; 사용자 인증이 요청되면, 상기 제1입력판에 상기 제1고유키가 포함된 워터마크를 삽입하여 제1사용자 단말기의 화면에 표시하는 단계를 포함하고,
상기 제2단계는, 상기 제2사용자 단말기를 통해 상기 워터마크에 포함되어 있는 상기 제1고유키를 인식하는 단계와; 상기 제2사용자 단말기를 통해 상기 개인비밀번호가 입력되면, 상기 전용 어플리케이션 프로그램을 통해 상기 개인비밀번호와 상기 전용어플리케이션 프로그램에 내장된 인증기관의 고유키 및 상기 제2사용자 단말기의 기계적 고유키를 조합하여 해쉬암호값 형태의 상기 제2고유키를 생성하고, 상기 제1고유키와 비교하여 일치되는 경우에 상기 워터마크가 인식된 것으로 판단하는 단계와; 상기 워터마크 인식으로 판단되면, 상기 제2입력판을 상기 제2사용자 단말기 화면에 표시하는 단계를 구비할 수 있다.
상기 제1단계에서, 상기 인증서버는 상기 제1입력판의 가장자리 부분에 현재 시각이 실시간으로 표시되도록 하고, 상기 제2단계에서, 상기 제2사용자 단말기는 광학문자판독기(OCR)를 내장하고, 상기 전용 어플리케이션 프로그램은 상기 광학문자판독기를 이용하여 상기 제1입력판에 표시되는 시각을 실시간으로 인식하고, 상기 제2사용자 단말기의 시각흐름과 상기 제1입력판의 시각흐름을 비교하여 차이값이 일정시간동안 일정하게 유지되는 경우에만 상기 제2입력판이 표시되도록 제어할 수 있다.
상기 제3단계는, 상기 제2사용자 단말기의 전용 어플리케이션 프로그램을 통해 상기 제2고유키를 연산키로 하여 OTP(One Time Password) 연산을 하여 상기 사용자 인증정보를 생성하는 생성단계와; 상기 제2입력판을 통해 상기 사용자 인증정보가 직접 입력되거나 상기 제2입력판을 참고하여 제1입력판을 통해 상기 사용자 인증정보가 입력되는 입력단계와; 상기 사용자 인증정보가 입력되면, 상기 인증서버에서 상기 제1고유키를 연산키로 하여 OTP(One Time Password) 연산을 수행하여 생성된 서버인증정보와 비교하여 사용자 인증을 수행하는 인증단계를 구비할 수 있다.
상기 제3단계에서, 상기 사용자 인증정보, 상기 제2입력판을 구성하는 입력키들 및 입력키들의 배열위치는 상기 제2사용자 단말기의 화면에 시각적으로 표시되지 않으며, 상기 사용자 인증정보가 상기 제2입력판을 통해 입력되는 경우의 입력단계는, 상기 사용자 인증정보의 입력을 위해 상기 제2입력판의 입력키들의 위치에 사용자의 손가락이 순차적으로 접촉되면, 사용자 손가락이 접촉되는 입력키가 상기 사용자 인증정보 중 원하는 자리값에 대응되는 입력키인 경우, 진동을 포함하여 감각적으로 인식될 수 있는 인식신호가 발생되도록 하는 단계와; 상기 인식신호가 발생되는 입력키에 더블터치 또는 긴 누름 동작을 통해 사용자 인증정보가 입력되는 단계를 포함하되, 상기 사용자 인증정보는 첫 번째 자리값부터 마지막 자리값까지 순차적으로 발생되는 상기 인식신호에 대응하여 입력될 수 있다.
상기 제1단계에서, 상기 인증서버는 상기 제1고유키를 연산키로 하여 OTP(One Time Password) 연산을 수행하여 생성된 서버인증정보가 상기 워터마크에 삽입되도록 하고, 상기 제2단계에서, 전용 어플리케이션 프로그램이 설치된 제2사용자 단말기를 통해 상기 워터마크가 인식되면, 상기 서버인증정보가 함께 인식되며, 상기 제3단계에서, 상기 서버인증정보는 상기 사용자 인증정보로 하여 입력될 수 있다
상기 제2단계에서 상기 서버인증정보는 상기 제2사용자 단말기의 화면에 표시되지 않으며, 상기 제3단계에서, 상기 제2입력판의 임의의 입력키들의 위치에 사용자의 손가락이 접촉될 때 상기 사용자 인증정보에 대응되는 입력키인 경우 진동을 포함하여 감각적으로 인식될 수 있는 인식신호가 발생되도록 하고, 상기 인식신호가 발생되는 입력키들에 더블터치 또는 긴 누름 동작을 통해 사용자 인증정보가 입력되며, 상기 사용자 인증정보는 첫 번째 자리수부터 마지막 자리수까지 순차적으로 발생되는 상기 인식신호에 대응하여 입력될 수 있다.
상기 제1사용자 단말기는 데스크탑 PC, 노트북, 씬클라이언트(thin client)용 단말기, 제로클라이언트(zero-client)용 단말기 중 어느 하나이고, 상기 제2사용자 단말기는 스마트폰 및 태블릿을 포함하는 모바일 단말기일 수 있다.
상기 제1사용자 단말기 또는 상기 제2사용자 단말기를 통해 상기 사용자 인증정보가 입력되는 경우, 상기 사용자 인증정보는 각 입력키들의 위치정보만이 상기 인증서버로 전송될 수 있다.
본 발명에 따르면, 인증을 요청하는 단말에는 어떠한 프로그램도 설치되지 않고 육안으로 인식할 수 있는 어떠한 문자나 숫자가 표시되지 않아 보안이 강화될 수 있다. 또한 워터마크 인식, 실시간 시각비교, 고유키 인식 등의 방법을 통해 본인확인여부, 실시간 사용여부, 홈페이지의 위변조 여부 등을 체크하는 것이 가능하다. 또한 사용자 단말기를 분리함에 의해 정보를 분리전달하여 정보유출이나 해킹 등에 대비가 가능한 효과가 있다.
도 1은 본 발명의 실시예들에 따른 가상 키패드를 이용한 사용자 인증방법에 사용되는 인증장치의 간략 개념도이고,
도 2는 도 1을 이용한 사용자 인증방법의 제1실시예를 나타낸 것이고,
도 3은 도 1을 이용한 사용자 인증방법의 제2실시예를 나타낸 것이고,
도 4는 도 1을 이용한 사용자 인증방법의 제3실시예를 나타낸 것이고,
도 5는 도 1을 이용한 사용자 인증방법의 제4실시예를 나타낸 것이고,
도 6은 도 1의 제1사용자 단말기에 표시되는 제1입력판의 예를 나타낸 것이고,
도 7은 도 1의 제2사용자 단말기에 표시되는 제2입력판의 예를 나타낸 것이고,
도 8은 도 1의 제2사용자 단말기에 표시되는 워터마크 인식 및 개인비밀번호 입력을 위한 화면 예를 나타낸 것이다.
이하에서는 본 발명의 바람직한 실시예가, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 본 발명의 철저한 이해를 제공할 의도 외에는 다른 의도 없이, 첨부한 도면들을 참조로 하여 상세히 설명될 것이다.
도 1은 본 발명의 실시예들에 따른 가상 키패드를 이용한 사용자 인증방법에 사용되는 인증장치(500)의 간략 개념도이다.
도 1에 도시된 바와 같이, 본 발명의 실시예들에 따른 가상키패드를 이용한 사용자 인증방법을 위한 인증장치(500)는 제1사용자 단말기(100), 인증서버(200) 및 제2사용자 단말기(300)를 구비한다.
상기 제1사용자 단말기(100)는 상기 인증서버(200)와 유무선 인터넷망을 통해 서로 연결되며, 데스크탑PC, 노트북. 씬클라이언트(thin client)용 단말기, 제로클라이언트(zero-client)용 단말기 등을 포함할 수 있다.
여기서 씬클라이언트(thin client)용 단말기는 CPUㆍ메모리 등 필수적인 하드웨어 장치만 탑재한 상태에서 네트워크로 연결된 중앙서버에서 모든 업무를 관리하도록 설계된 업무용 단말기를 일컫는다. 상기 제로클라이언트(zero client)용 단말기는 메모리 등 필수적인 요소도 모두 없애 PC 본체 자체가 필요 없고, 모든 업무를 서버에서 처리하도록 하여 오로지 서버를 연결하는 단말기의 역할만 수행하도록 것을 말한다.
상기 인증서버(200)는 일반적으로 사용자 인증 등 인증절차에 사용되는 서버를 포함할 수 있으며, 기타 통상의 기술자에게 잘 알려진 인증서버가 포함될 수 있다.
상기 제2사용자 단말기(300)는 상기 인증서버(200)와 유무선 인터넷망을 통해 서로 연결되며, 상기 인증서버(200)에서 제공된 사용자 인증을 위한 전용 어플리케이션 프로그램(이하 '전용앱' 이라 함)이 설치되어 실행되고 있는 상태로, 워터마크의 인식을 위한 하드웨어나 소프트웨어가 내장되어 있다. 상기 제2사용자 단말기(300)는 스마트폰, 태블릿, PDA 등을 포함하여 통상의 기술자에게 잘 알려진 모바일 단말기가 포함될 수 있으며, 워터마크를 인식가능한 하드웨어나 소프트웨어나 내장된 모바일 단말기를 포함할 수 있다.
이하에서 사용되는 인증을 위한 인증번호, 비밀번호 등의 번호는 문자, 특수문자, 숫자, 각종 기호 등이 조합된 것으로 단순히 숫자만의 조합을 의미하지 않음은 명백하다.
이하 제1사용자 단말기(100), 인증서버(200) 및 제2사용자 단말기(300)를 이용한 사용자 인증방법에 대하여 각 실시예별로 설명하기로 한다.
도 2는 본 발명의 제1실시예에 따른 사용자 인증방법을 나타낸 도면이다.
도 2에 도시된 바와 같이, 본 발명의 제1실시예에 따른 사용자 인증방법은 상기 제1사용자 단말기(100)를 통해 상기 인증서버(200)에 사용자 인증 요청을 함에 의해 시작된다(S512).
사용자 인증이 요청되면, 상기 인증서버(200)는 입력키들 및 입력키들의 배열위치가 표시됨이 없이 일정이미지가 표시되는 제1입력판(가상키패드 포함)를 생성하고(S514), 상기 제1입력판에 일정정보가 포함된 이미지 정보 워터마크를 삽입하여 상기 제1사용자 단말기(100)에 전송한다(S516). 여기서 상기 제1입력판은 상기 워터마크가 삽입된 상태로 생성되는 것도 가능하다.
상기 제1사용자 단말기(100)는 상기 인증서버(200)에서 전송되는 제1입력판을 화면에 표시하게 된다(S518).
상기 제1입력판은 도 6에 도시된 바와 같이, 육안으로 식별가능한 문자나 숫자가 배열되지 않으며, 사용자 인증을 위한 문자나 숫자, 기호 등과는 관계가 없는 다양한 이미지가 표시되는 형태를 가질 수 있다. 이 경우 상기 제1입력판에는 입력키들의 배열위치를 구분할 수 있는 구분선은 표시될 수 있다. 예를 들어, 상기 제1입력판이 16개의 문자, 숫자 또는 기호를 입력할 수 있는 키패드를 포함한다면, 상기 16개의 문자, 숫자 또는 기호의 입력위치를 알아볼 수 있도록 상기 키패드를 16개의 영역으로 구분하는 구분선들은 표시될 수 있다. 그리고, 보조적으로 위치 구분을 위해 위치별로 인증과는 관계없는 특수한 그림이나 기호 등을 랜덤하게 배열하는 것도 가능하다.
상기 워터마크는 사용자 인증과 관계없는 타인이 제1사용자 단말기(100)의 화면을 캡쳐하거나 해킹을 통해 제1사용자 단말기(100)의 화면을 모니터링 하는 경우에 상기 워터마크의 존재를 알지 못하도록 투명하게 구성되거나, 육안으로는 워터마크의 구분이 쉽지 않도록 이미지 정보 워터마크로 구성하여 상기 제1입력판에 삽입되게 된다. 또한 상기 워터마크는 도 6에서 점선으로 표시된 워터마크 인식영역들(100a,100b,100c) 중 적어도 어느 하나의 영역에 삽입될 수도 있고, 상기 제1입력판의 키패드 부분과 중첩되도록 삽입되는 것도 가능하고 키패드 부분의 주변 또는 이격된 위치에 삽입되는 것도 가능하다.
상기 제1사용자 단말기(100)에 상기 제1입력판이 표시되면, 상기 제2사용자 단말기(300)를 통해 상기 제1입력판에 삽입된 상기 워터마크를 인식하도록 한다(S520).
상기 제2사용자 단말기(300)에는 인증을 위한 전용앱이 설치되어 구동중이며 워터마크 인식을 위한 하드웨어 및 소프트웨어가 내장되어 있다. 여기서 상기 워터마크는 상기 전용앱을 통해서만 인식가능한 구조를 가지도록 상기 인증서버(200)에서 생성되어 삽입될 수 있다. 이에 따라 상기 전용앱이 설치된 제2사용자 단말기(300)를 통해서만 상기 워터마크의 인식이 가능하도록 할 수 있다. 예를 들어, 상기 인증서버(200)를 통해 제공되는 인증기관의 고유키를 이용하여 상기 전용앱이 설치된 제2사용자 단말기(300)를 통해서만 상기 워터마크의 인식이 가능하도록 할 수 있다.
예를 들어 상기 워터마크에는 인증기관의 고유키인 제1고유키가 상기 워터마크의 생성시에 포함되도록 할 수 있으며, 상기 전용앱에는 인증기관의 고유키인 제2고유키가 내장되도록 하여, 상기 제1고유키와 상기 제2고유키가 일치되는 경우에만 상기 워터마크가 인식되었다고 판단하는 것이 가능하다. 이 경우 상기 인증서버(200)에서 제공된 전용앱이 설치된 경우에만 상기 워터마크의 인식이 가능하여 보안성이 강화되게 된다.
상기 제2사용자 단말기(300)를 통해 상기 워터마크가 인식되면, 상기 제2사용자 단말기(300)는 상기 인증서버(200)에 상기 워터마크를 인식하였다는 인식결과신호를 전송하게 된다(S522). 상기 인증서버(200)에서는 상기 제2사용자 단말기(300)를 통한 워터마크 인식이 확인되면(S524), 상기 제1입력판에 대응하여 사용자 인증을 위한 사용자 인증정보의 입력이 가능한 키패드가 포함되는 제2입력판을 상기 제2사용자 단말기(300)에 전송하여 상기 제2사용자 단말기(300)의 화면에 표시되도록 한다(S528).
여기서 상기 제2입력판은 상기 제1입력판의 생성시 함께 생성되어 상기 인증서버(200)에서 저장하고 있다가 상기 워터마크 인식이 확인되는 경우에 상기 제2사용자 단말기(300)를 통해 표시되도록 하거나, 상기 워터마크 인식이 확인되는 경우에 생성되어 상기 제2사용자 단말기(300)를 통해 표시되도록 하는 것이 가능하다.
다른 실시예로, 상기 제2입력판은 상기 워터마크의 인식이 확인되는 경우에 상기 인증서버(200)에서 전송되는 것이 아니라, 상기 제1입력판에 포함되어 있고, 상기 제2사용자 단말기(300)를 통해 상기 워터마크 인식을 수행하게 되면, 상기 제2입력판이 함께 인식되어 상기 제2사용자 단말기(300)의 화면에 자동으로 나타나도록 하는 것이 가능하다. 이 경우에는 상기 제2사용자 단말기(300)에서 워터마크 인식결과신호를 상기 인증서버(200)에 전송하는 과정 및 인증서버(200)에서의 제2입력판 전송과정이 생략될 수 있다. 이는 인증서버(200)와 단말기들(100,300) 간의 정보전송 횟수를 줄여 보안성을 강화하기 위함이다.
또 다른 실시예로, 상기 전용앱의 설치시 또는 업데이트 시에 상기 제2입력판이 상기 제2사용자 단말기(300)에 전송되도록 한 상태에서, 상기 제2사용자 단말기(300)를 통해 상기 워터마크 인식을 수행하게 되면, 상기 제2입력판이 상기 제2사용자 단말기(300)의 화면에 나타나도록 하는 것이 가능하다. 이 경우 또한, 상기 제2사용자 단말기(300)에서 워터마크 인식결과신호를 전송하는 과정 및 인증서버(200)에서의 제2입력판 전송과정이 생략될 수 있다. 이는 인증서버(200)와 단말기들(100,300) 간의 정보전송 횟수를 줄여 보안성을 강화하기 위함이다.
그리고, 상기 제2입력판은 도 7에 도시된 바와 같이, 인증번호의 입력을 위한 문자, 숫자, 기호 등의 배열위치가 랜덤으로 표시되어 육안으로 알 수 있는 일반적으로 잘 알려진 키패드 구조를 가질 수도 있고, 인증번호의 입력을 위한 문자, 숫자, 기호 등의 배열위치를 육안으로는 식별 불가능하지만 특정배열위치에 손가락이나 피부를 접촉하는 경우 진동이나 기타 신호를 통해 배열위치를 확인하거나 인증번호를 입력할 수 있도록 하는 키패드 구조를 가질 수 있다.
이후 사용자 인증을 위해 사용자가 상기 제2사용자 단말기(300)의 화면에 나타난 상기 제2입력판을 통해 사용자 인증을 위한 사용자 인증정보가 직접 입력되거나(S530b), 상기 제2입력판을 참고로 하여 상기 제1사용자 단말기(100)의 화면에 나타난 상기 제1입력판을 통해 상기 사용자 인증정보가 입력되는 것이 가능하다(S530a).
여기서 상기 사용자 인증정보는 사용자가 미리 설정하여 상기 인증서버(200)에 저장된 인증용 비밀번호일 수 있고, OTP(One Time Password)번호 생성장치에 의해 생성된 OTP 번호일 수도 있다. 이외에 인증을 위해 통상의 기술자에게 잘 알려진 인증방식의 번호가 포함될 수 있다. 여기서 정보나 번호는 문자, 특수문자, 숫자 및 기호를 포함하는 개념으로 인식되어야 할 것이다.
상기 제2입력판이 일반키패드 구조를 가지고 있어 입력키들 및 입력키들의 배열위치를 육안으로 알 수 있는 경우에는, 제2입력판을 통해 상기 사용자 인증정보를 입력하는 것도 가능하고, 상기 제2입력판의 입력키들의 배열위치를 토대로 대응되는 제1입력판의 대응위치를 통해 제1사용자 단말기(100)의 마우스를 이용하여 사용자 인증정보의 입력이 가능하다. 그러나 보안성 강화를 위해 상기 제2입력판이 육안으로는 식별불가능하나 터치 등의 동작을 통해 상기 사용자 인증정보의 인식이 가능한 구조를 가진다면, 제2입력판을 통한 사용자 인증정보 입력을 통해 보안성 강화가 가능할 것이다. 이러한 입력방식에 대해서는 후술한다.
상기 제1사용자 단말기(100) 또는 상기 제2사용자 단말기(300)를 통해 입력된 사용자 인증정보는 상기 인증서버(200)로 전송된다(S532a,S532b). 이때 상기 인증서버(200)로 전송되는 사용자 인증정보는 숫자나 번호정보가 아니라 숫자나 번호입력키들 배열의 위치정보(예를 들면, 특정 번호의 좌표정보)일 수 있다. 즉 사용자 편의를 위해 입력키들의 배열정보는 상기 제2입력판에 표시되어 있을지라도, 이는 전용앱의 매칭동작에 의해 표시되는 것이며, 인증서버(200)에서 제공되는 것은 아니다. 좀더 구체적으로, 상기 인증서버(200)와 상기 제1사용자 단말기(100) 또는 상기 인증서버(200)와 상기 제2사용자 단말기(300) 간의 인증을 위한 인증정보의 전송은 숫자나 문자의 정보가 그대로 전송되는 것이 아니라, 해당 숫자나 문자 즉 입력키들의 위치정보(또는 좌표정보)가 전송되는 것이다.
이 경우 인증서버(200)에서는 위치정보와 숫자나 번호를 매칭시켜 인증번호를 인식하게 되고 이후 인증을 수행하게 된다. 물론 인증정보로서 숫자나 번호정보가 그대로 전송되는 것도 가능할 것이다.
상기 사용자 인증정보가 입력되어 위치정보 형태로 전송되면, 상기 인증서버(200)는 내부에 저장된 인증정보와 비교하거나, 별도로 생성된 인증용 서버인증정보와 비교함에 의해 사용자 인증을 수행하게 된다(S534).
상술한 본 발명의 제 1실시예에 따른 사용자 인증방법은, 전용앱이 설치된 제2사용자 단말기(300)가 있으면, 워터마크 인식이 가능하여 사용에 편리한 장점이 있으나, 전용앱이 설치된 제2사용자 단말기(300)가 복수개로 존재하는 경우, 예를 들어, 상기 인증서버(200)에서 제공한 전용앱이 설치된 타인의 스마트폰으로 워터마크를 인식하는 경우 제2입력판이 타인의 스마트폰에도 나타날 수 있어 타인을 통해 사용자 인증이 가능할 수 있다.
이러한 문제점 개선을 위해 암호화를 통해 사용자 자신의 제2사용자 단말기에만 상기 제2입력판이 나타나도록 한 사용자 인증방법이 본 발명의 제2실시예를 통해 설명된다.
도 3은 본 발명의 제2실시예에 따른 사용자 인증방법을 나타낸 도면이다.
도 3에 도시된 바와 같이, 본 발명의 제2실시예에 따른 사용자 인증방법은 상기 제1사용자 단말기(100)를 통해 상기 인증서버(200)에 사용자 인증 요청을 하기에 앞서서 사전작업이 먼저 수행된다.
사전작업으로 상기 제2사용자 단말기(300)를 통해 상기 인증서버(200)에 접속하여, 인증을 위한 전용 어플리케이션 프로그램(이하 '전용앱' 이라 함)을 다운로드하게 된다(S550). 상기 제2사용자 단말기(300)에서는 상기 전용앱을 다운로드 하여 설치하고 상기 전용앱을 구동하여 제1고유키를 생성하게 된다(S552). 여기서 전용앱을 설치하는 과정에서 상기 제1고유키를 생성하는 과정이 수행될 수도 있다.
상기 제1고유키는 상기 인증서버(200)에서 제공되며 상기 전용앱에 내장된 인증기관의 고유키, 상기 제2사용자 단말기의 기계적 고유키(상기 제2사용자 단말기가 스마트폰 인 경우 스마트폰의 기계적 고유키, 예를 들면, 시리얼 번호나 유심번호 등) 및 사용자에 의해 설정된 개인 비밀번호를 조합하여 해쉬암호값 형태로 생성되게 된다. 상기 제1고유키는 우선적으로 상기 제2사용자 단말기의 기계적 고유키와 상기 개인비밀번호를 조합하여 1차 해쉬암호값을 생성하고, 이후 상기 1차 해쉬암호값에 상기 인증기관의 고유키를 조합하는 방식으로 해쉬암호값 형태의 상기 제1고유키를 생성할 수 있다.
상기 제2사용자 단말기(300)에서 상기 전용앱을 통해 생성된 상기 제1고유키는 상기 인증서버(200) 전송되고(S554), 상기 인증서버(200)에서는 상기 제1고유키를 사용자 확인을 위한 정보로서 등록하고 저장하게 된다(S556).
상기 제1고유키를 전송한 상기 제2사용자 단말기(300)에서는 상기 제1고유키를 삭제한다. 상기 제1고유키는 전용앱을 통해 자동 또는 수동으로 삭제될 수 있다. 상기 인증서버(200)에서는 상기 제1고유키에서 자신의 고유키인 인증기관의 고유키를 분리한 상태의 1차 해쉬암호값을 추출하여 저장할 수도 있다.
이후 사용자 인증이 요청되면, 상기 인증서버(200)는 입력키들 및 입력키들의 배열위치가 표시됨이 없이 일정이미지가 표시되는 제1입력판(가상키패드 포함)을 생성하고(S560), 상기 제1입력판에 상기 제1고유키가 삽입되며 일정정보가 포함된 이미지 정보 워터마크를 포함하여 상기 제1사용자 단말기(100)에 전송한다(S562). 여기서 상기 제1입력판은 제1고유키 및 일정정보가 포함된 상기 워터마크가 삽입된 상태로 생성되는 것도 가능하다.
상기 인증서버(200)는 상기 워터마크가 포함된 상기 제1입력판을 생성하여 상기 제1사용자 단말기(100)에 전송한다.
상기 제1사용자 단말기(100)는 상기 인증서버(200)에서 전송되는 제1입력판을 도 6에 도시된 바와 같이 화면에 표시하게 된다(S568).
상기 제1입력판은 도 6에 도시된 바와 같이, 육안으로 식별가능한 문자나 숫자가 배열되지 않으며, 사용자 인증을 위한 문자나 숫자, 기호 등과는 관계가 없는 다양한 이미지가 표시되는 형태를 가질 수 있다. 이 경우 상기 제1입력판에는 입력키들의 배열위치를 구분할 수 있는 구분선은 표시될 수 있다. 예를 들어, 상기 제1입력판이 16개의 문자, 숫자 또는 기호를 입력할 수 있는 키패드를 포함한다면, 상기 16개의 문자, 숫자 또는 기호의 입력위치를 알아볼 수 있도록 상기 키패드를 16개의 영역으로 구분하는 구분선들은 표시될 수 있다. 보조적으로 위치 구분을 위해 위치별로 인증과는 관계없는 특수한 그림이나 기호 등을 랜덤하게 배열하는 것도 가능하다.
상기 워터마크는 사용자 인증과 관계없는 타인이 제1사용자 단말기(100)의 화면을 캡쳐하거나 해킹을 통해 제1사용자 단말기(100)의 화면을 모니터링 하는 경우에 상기 워터마크의 존재를 알지 못하도록 투명하게 구성되거나, 육안으로는 상기 워터마크의 구분이 쉽지 않도록 이미지 정보 워터마크로 구성하여 상기 제1입력판에 삽입되게 된다. 또한 상기 워터마크는 도 6에서 점선으로 표시된 워터마크 인식영역들(100a,100b,100c) 중 적어도 어느 하나의 영역에 삽입될 수도 있고, 상기 제1입력판의 키패드 부분과 중첩되도록 삽입되는 것도 가능하고 키패드 부분의 주변 또는 이격된 위치에 삽입되는 것도 가능하다.
상기 제1사용자 단말기(100)에 상기 제1입력판이 표시되면, 상기 제2사용자 단말기(300)를 통해 상기 제1입력판에 삽입된 상기 워터마크를 인식하도록 한다(S570).
상기 제2사용자 단말기(300)에는 인증을 위한 전용앱이 설치되어 구동중이며 워터마크 인식을 위한 하드웨어 및 소프트웨어가 내장되어 있다. 여기서 상기 워터마크는 상기 전용앱을 통해서만 인식가능한 구조를 가지도록 상기 인증서버(200)에서 생성되어 삽입될 수 있다. 이에 따라 상기 전용앱이 설치된 제2사용자 단말기(300)를 통해서만 상기 워터마크의 인식이 가능하도록 할 수 있다.
또한, 전용앱이 설치된 타인의 스마트폰을 통한 접근을 차단하기 위해 상기 제1고유키 즉 상기 인증기관의 고유키, 상기 제2사용자 단말기의 기계적 고유키 및 사용자에 의해 설정된 개인 비밀번호가 조합된 해쉬암호값 형태의 제1고유키가 사용되고 있다.
상기 제2사용자 단말기(300)에서는 상기 제1입력판의 워터마크에서 상기 제1고유키를 인식하여 저장하게 된다(S570).
상기 제1고유키가 인식되면, 상기 전용앱에서는 도 8에 도시된 바와 같은 화면을 표시하여 사용자에게 상기 전용앱의 설치시에 등록한 개인 비밀번호를 입력할 것을 요구하게 된다.
상기 제2사용자 단말기(300)를 통해 개인 비밀번호가 입력되면(S572), 상기 전용앱에서는 상기 개인비밀번호와 상기 전용앱에 내장된 상기 인증기관의 고유키 및 상기 제2사용자 단말기의 기계적 고유키를 조합하여 해쉬암호값 형태의 상기 제2고유키를 생성하게 된다(S574).
상기 제2고유키의 생성방식은 상기 제1고유키의 생성방식과 동일하다.
상기 제2사용자 단말기(300) 또는 상기 전용앱에서는 상기 워터마크를 통해 인식된 상기 제1고유키와 상기 제2고유키를 비교하여 일치여부를 판단하게 된다(S576).
상기 제1고유키와 상기 제2고유키가 일치되지 않는 경우에는, 사용자에게 비밀번호의 재입력을 요구하여 제2고유키를 다시 생성하여 비교하는 절차를 수행하게 되고, 상기 제1고유키와 상기 제2고유키가 일치되는 경우에는 상기 워터마크가 인식된 것으로 판단하여, 상기 제2사용자 단말기(300)는 상기 인증서버(200)에 상기 워터마크를 인식하였다는 인식결과신호를 전송하게 된다(S578).
상기 인증서버(200)에서는 상기 제2사용자 단말기(300)를 통한 워터마크 인식이 확인되면(S580), 상기 제1입력판에 대응하여 사용자 인증을 위한 사용자 인증정보의 입력이 가능한 키패드가 포함되는 제2입력판을 상기 제2사용자 단말기(300)에 전송하여 상기 제2사용자 단말기(300)의 화면에 표시되도록 한다(S584).
여기서 상기 제2입력판은 상기 제1입력판의 생성시 함께 생성되어 상기 인증서버(200)에서 저장하고 있다가 상기 워터마크 인식이 확인되는 경우에 상기 제2사용자 단말기(300)를 통해 표시되도록 하거나, 상기 워터마크 인식이 확인되는 경우에 생성되어 상기 제2사용자 단말기(300)를 통해 표시되도록 하는 것이 가능하다.
다른 실시예로, 상기 제2입력판은 상기 워터마크의 인식이 확인되는 경우에 상기 인증서버(200)에서 전송되는 것이 아니라, 상기 제1입력판에 포함되어 있고, 상기 제2사용자 단말기(300)를 통해 상기 워터마크 인식을 수행하게 되면, 상기 제2입력판이 함께 인식되어 상기 제2사용자 단말기(300)의 화면에 자동으로 나타나도록 하는 것이 가능하다. 이 경우에는 상기 제2사용자 단말기(300)에서 워터마크 인식결과신호를 상기 인증서버(200)에 전송하는 과정 및 인증서버(200)에서의 제2입력판 전송과정이 생략될 수 있다. 이는 인증서버(200)와 단말기들(100,300) 간의 정보전송 횟수를 줄여 보안성을 강화하기 위함이다.
또 다른 실시예로, 상기 전용앱의 설치시 또는 업데이트 시에 상기 제2입력판이 상기 제2사용자 단말기(300)에 전송되도록 한 상태에서, 상기 제2사용자 단말기(300)를 통해 상기 워터마크 인식을 수행하게 되면, 상기 제2입력판이 상기 제2사용자 단말기(300)의 화면에 나타나도록 하는 것이 가능하다.
그리고, 상기 제2입력판은 도 7에 도시된 바와 같이, 인증번호의 입력을 위한 문자, 특수문자, 숫자, 기호 등의 배열위치가 랜덤으로 표시되어 육안으로 알 수 있는 일반적으로 잘 알려진 키패드 구조를 가질 수도 있고, 인증번호의 입력을 위한 문자, 숫자, 기호 등의 배열위치를 육안으로는 식별 불가능하지만 특정배열위치에 손가락이나 피부를 접촉하는 경우 진동이나 기타 신호를 통해 배열위치를 확인하거나 인증번호를 입력할 수 있도록 하는 키패드 구조를 가질 수 있다.
이후 사용자 인증을 위해 사용자가 상기 제2사용자 단말기(300)의 화면에 나타난 상기 제2입력판을 통해 사용자 인증을 위한 사용자 인증정보가 직접 입력되거나(S586b), 상기 제2입력판을 참고로 하여 상기 제1사용자 단말기(100)의 화면에 나타난 상기 제1입력판을 통해 상기 사용자 인증정보가 입력되는 것이 가능하다(S586a).
상기 제2입력판이 일반키패드 구조를 가지고 있어 입력키들 및 입력키들의 배열위치를 육안으로 알 수 있는 경우에는, 제2입력판을 통해 상기 사용자 인증정보를 입력하는 것도 가능하고, 상기 제2입력판의 입력키들의 배열위치를 토대로 대응되는 제1입력판의 대응위치를 통해 제1사용자 단말기(100)의 마우스를 이용하여 사용자 인증정보의 입력이 가능하다. 그러나 보안성 강화를 위해 상기 제2입력판이 육안으로는 식별불가능하나 터치 등의 동작을 통해 인증번호의 인식이 가능한 구조를 가진다면, 제2입력판을 통한 사용자 인증정보 입력을 통해 보안성 강화가 가능할 것이다. 이러한 입력방식에 대해서는 후술한다.
상기 제1사용자 단말기(100) 또는 상기 제2사용자 단말기(300)를 통해 입력된 사용자 인증정보는 상기 인증서버(200)로 전송된다(S588a,S588b). 이때 상기 인증서버(200)로 전송되는 사용자 인증정보는 숫자나 번호정보가 아니라 숫자나 번호입력키들 배열의 위치정보(예를 들면, 특정 번호의 좌표정보)일 수 있다. 즉 사용자 편의를 위해 입력키들의 배열정보는 상기 제2입력판에 표시되어 있을지라도, 이는 전용앱의 매칭동작에 의해 표시되는 것이며, 인증서버(200)에서 제공되는 것은 아니다. 좀더 구체적으로, 상기 인증서버(200)와 상기 제1사용자 단말기(100) 또는 상기 인증서버(200)와 상기 제2사용자 단말기(300) 간의 인증을 위한 인증정보의 전송은 숫자나 문자의 정보가 그대로 전송되는 것이 아니라, 해당 숫자나 문자 즉 입력키들의 위치정보(또는 좌표정보)가 전송되는 것이다.
이 경우 인증서버(200)에서는 위치정보와 숫자나 번호를 매칭시켜 인증번호를 인식하게 되고 이후 인증을 수행하게 된다. 물론 사용자 인증정보로서 숫자나 번호정보가 그대로 전송되는 것도 가능할 것이다.
상기 사용자 인증정보가 입력되어 전송되면, 상기 인증서버(200)는 내부에 저장된 인증정보와 비교하거나, 별도로 상기 인증서버(200)에서 생성된 인증용 서버인증정보와 비교함에 의해 사용자 인증을 수행하게 된다(S590).
여기서 상기 사용자 인증정보는 사용자가 미리 설정하여 상기 인증서버(200)에 저장된 인증용 비밀번호일 수 있고, OTP(One Time Password)번호 생성장치에 의해 생성된 OTP 번호일 수도 있다. 이외에 인증을 위해 통상의 기술자에게 잘 알려진 인증방식의 번호가 포함될 수 있다. 또한 서버인증정보는 상기 인증서버(200)에서 상기 사용자 인증정보와 비교하기 위해 생성된 번호 등의 정보일 수 있다. 여기서 정보나 번호는 문자, 특수문자, 숫자 및 기호를 포함하는 개념으로 인식되어야 할 것이다.
도 4는 본 발명의 제3실시예에 따른 사용자 인증방법을 나타낸 도면으로, 상기 사용자 인증정보와 서버인증정보를 통한 사용자 인증절차 부분을 구체적으로 나타낸 것이다.
도 4에 도시된 바와 같이, 본 발명의 제3실시예에 따른 사용자 인증방법에서 사용자 인증정보가 입력되기까지의 과정은 도 3을 통해 설명한 바와 유사하므로 동일과정에는 동일부호를 사용하였다.
본 발명의 제3실시예와 다른 부분을 요약하면, 상기 인증서버(200)에서 상기 제1고유키와 별도로 상기 제1고유키를 연산키로 하여 OTP(One Time Password) 연산을 하여 서버인증정보를 생성하고, 상기 제1입력판에 삽입되는 이미지 정보 워터마크에 포함되도록 한다. 상기 워터마크에는 상기 제1고유키와 상기 서버인증정보가 함께 포함되게 된다.
이후 상기 제2사용자 단말기(300)를 통해 상기 서버인증정보가 인식되면, 이를 상기 사용자 인증정보로 하여 입력하도록 하고, 일치여부를 비교하여 사용자 인증을 수행하는 것이다.
이하 구체적으로 설명한다.
우선 상기 제1사용자 단말기(100)를 통해 상기 인증서버(200)에 사용자 인증 요청을 하기에 앞서서 사전작업이 먼저 수행된다.
사전작업으로 상기 제2사용자 단말기(300)를 통해 상기 인증서버(200)에 접속하여, 인증을 위한 전용 어플리케이션 프로그램(이하 '전용앱' 이라 함)을 다운로드하게 된다(S550). 상기 제2사용자 단말기(300)에서는 상기 전용앱을 다운로드 하여 설치하고 상기 전용앱을 구동하여 제1고유키를 생성하게 된다(S552). 여기서 전용앱을 설치하는 과정에서 상기 제1고유키를 생성하는 과정이 수행될 수도 있다. 즉 상기 제1고유키는 상기 전용앱을 설치하는 과정에서 생성될 수도 있고 전용앱의 설치 후 별도의 과정을 통해 생성되는 것도 가능하다.
상기 제1고유키는 상기 인증서버(200)에서 제공되며 상기 전용앱에 내장된 인증기관의 고유키, 상기 제2사용자 단말기의 기계적 고유키(상기 제2사용자 단말기가 스마트폰 인 경우 스마트폰의 기계적 고유키, 예를 들면, 시리얼 번호나 유심번호 등) 및 사용자에 의해 설정된 개인 비밀번호를 조합하여 해쉬암호값 형태로 생성되게 된다. 상기 제1고유키는 우선적으로 상기 제2사용자 단말기의 기계적 고유키와 상기 개인비밀번호를 조합하여 1차 해쉬암호값을 생성하고, 이후 상기 1차 해쉬암호값에 상기 인증기관의 고유키를 조합하는 방식으로 해쉬암호값 형태의 상기 제1고유키를 생성할 수 있다.
상기 제2사용자 단말기(300)에서 상기 전용앱을 통해 생성된 상기 제1고유키는 상기 인증서버(200) 전송되고(S554), 상기 인증서버(200)에서는 상기 제1고유키를 사용자 확인을 위한 정보로서 등록하고 저장하게 된다(S556).
상기 제1고유키를 전송한 상기 제2사용자 단말기(300)에서는 상기 제1고유키를 삭제한다. 상기 제2고유키는 전용앱을 통해 자동 또는 수동으로 삭제될 수 있다. 상기 인증서버(200)에서는 상기 제1고유키에서 자신의 고유키인 인증기관의 고유키를 분리한 상태의 1차 해쉬암호값을 추출하여 저장할 수도 있다.
이후 사용자 인증이 요청되면, 상기 인증서버(200)에서는 사용자 인증을 위한 번호로서 상기 제1고유키를 연산키로 하여 OTP(One Time Password) 연산을 수행하여 서버인증정보를 생성하게 된다(S559). 또한, 상기 인증서버(200)는 입력키들 및 입력키들의 배열위치가 표시됨이 없이 일정이미지가 표시되는 제1입력판(가상키패드 포함)을 생성하고(S560a), 상기 제1입력판에 상기 제1고유키와 상기 서버인증정보 및 일정정보가 포함된 이미지 정보 워터마크를 포함하여 상기 제1사용자 단말기(100)에 전송한다(S562). 여기서 상기 서버인증정보는 숫자, 문자나 기호 등의 조합으로 구성될 수 있다.
여기서 상기 제1입력판은 제1고유키 및 상기 서버인증정보 및 일정정보가 삽입된 상태로 생성되는 것도 가능하다.
상기 인증서버(200)는 상기 제1고유키와 상기 서버인증정보가 삽입된 워터마크가 포함된 상기 제1입력판을 생성하여 상기 제1사용자 단말기(100)에 전송한다.
상기 제1사용자 단말기(100)는 상기 인증서버(200)에서 전송되는 제1입력판을 화면에 표시하게 된다(S568).
상기 제1입력판은 도 6에 도시된 바와 같이, 육안으로 식별가능한 문자나 숫자가 배열되지 않으며, 사용자 인증을 위한 문자나 숫자, 기호 등과는 관계가 없는 다양한 이미지가 표시되는 형태를 가질 수 있다. 이 경우 상기 제1입력판에는 입력키들의 배열위치를 구분할 수 있는 구분선은 표시될 수 있다. 예를 들어, 상기 제1입력판이 16개의 문자, 숫자 또는 기호를 입력할 수 있는 키패드를 포함한다면, 상기 16개의 문자, 숫자 또는 기호의 입력위치를 알아볼 수 있도록 상기 키패드를 16개의 영역으로 구분하는 구분선들은 표시될 수 있다. 보조적으로 위치 구분을 위해 위치별로 인증과는 관계없는 특수한 그림이나 기호 등을 랜덤하게 배열하는 것도 가능하다.
상기 워터마크는 사용자 인증과 관계없는 타인이 제1사용자 단말기(100)의 화면을 캡쳐하거나 해킹을 통해 제1사용자 단말기(100)의 화면을 모니터링 하는 경우에 상기 워터마크의 존재를 알지 못하도록 투명하게 구성되거나, 육안으로는 워터마크의 구분이 쉽지 않도록 이미지 정보 워터마크로 구성하여 상기 제1입력판에 삽입되게 된다. 또한 상기 워터마크는 도 6에서 점선으로 표시된 워터마크 인식영역들(100a,100b,100c) 중 적어도 어느 하나의 영역에 삽입될 수도 있고, 상기 제1입력판의 키패드 부분과 중첩되도록 삽입되는 것도 가능하고 키패드 부분의 주변 또는 이격된 위치에 삽입되는 것도 가능하다.
상기 제1사용자 단말기(100)에 상기 제1입력판이 표시되면, 상기 제2사용자 단말기(300)를 통해 상기 제1입력판에 삽입된 상기 워터마크를 인식하도록 한다(S570).
상기 제2사용자 단말기(300)에는 인증을 위한 전용앱이 설치되어 구동중이며 워터마크 인식을 위한 하드웨어 및 소프트웨어가 내장되어 있다. 여기서 상기 워터마크는 상기 전용앱을 통해서만 인식가능한 구조를 가지도록 상기 인증서버(200)에서 생성되어 삽입될 수 있다. 이에 따라 상기 전용앱이 설치된 제2사용자 단말기(300)를 통해서만 상기 워터마크의 인식이 가능하도록 할 수 있다.
또한, 전용앱이 설치된 타인의 스마트폰을 통한 접근을 차단하기 위해 상기 제1고유키 즉 상기 인증기관의 고유키, 상기 제2사용자 단말기의 기계적 고유키 및 사용자에 의해 설정된 개인 비밀번호가 조합된 해쉬암호값 형태의 제1고유키가 사용되고 있다.
상기 제2사용자 단말기(300)에서는 상기 제1입력판의 워터마크에서 상기 제1고유키를 인식하여 저장하게 된다(S570). 또한 상기 서버인증정보를 인식하여 저장하게 된다(S571).
상기 제1고유키가 인식되면, 상기 전용앱에서는 도 8에 도시된 바와 같은 화면을 통해 사용자에게 상기 전용앱의 설치시에 등록한 개인 비밀번호를 입력할 것을 요구하게 된다.
상기 제2사용자 단말기(300)를 통해 개인 비밀번호가 입력되면(S572), 상기 전용앱에서는 상기 개인비밀번호와 상기 전용앱에 내장된 상기 인증기관의 고유키 및 상기 제2사용자 단말기의 기계적 고유키를 조합하여 해쉬암호값 형태의 상기 제2고유키를 생성하게 된다(S574).
상기 제2고유키의 생성방식은 상기 제1고유키의 생성방식과 동일하다.
상기 제2사용자 단말기(300) 또는 상기 전용앱에서는 상기 워터마크를 통해 인식된 상기 제1고유키와 상기 제2고유키를 비교하여 일치여부를 판단하게 된다(S576).
상기 제1고유키와 상기 제2고유키가 일치되지 않는 경우에는, 사용자에게 비밀번호의 재입력을 요구하여 제2고유키를 다시 생성하여 비교하는 절차를 수행하게 되고, 상기 제1고유키와 상기 제2고유키가 일치되는 경우에는 상기 워터마크가 인식된 것으로 판단하여, 상기 제2사용자 단말기(300)는 상기 인증서버(200)에 상기 워터마크를 인식하였다는 인식결과신호를 전송하게 된다(S578).
상기 인증서버(200)에서는 상기 제2사용자 단말기(300)를 통한 워터마크 인식이 확인되면(S580), 상기 제1입력판에 대응하여 사용자 인증을 위한 사용자 인증정보의 입력이 가능한 키패드가 포함되는 제2입력판을 상기 제2사용자 단말기(300)에 전송하여 상기 제2사용자 단말기(300)의 화면에 표시되도록 한다(S584).
여기서 상기 제2입력판은 상기 제1입력판의 생성시 함께 생성되어 상기 인증서버(200)에서 저장하고 있다가 상기 워터마크 인식이 확인되는 경우에 상기 제2사용자 단말기(300)를 통해 표시되도록 하거나, 상기 워터마크 인식이 확인되는 경우에 생성되어 상기 제2사용자 단말기(300)를 통해 표시되도록 하는 것이 가능하다.
다른 실시예로, 상기 제2입력판은 상기 워터마크의 인식이 확인되는 경우에 상기 인증서버(200)에서 전송되는 것이 아니라, 상기 제1입력판에 포함되어 있고, 상기 제2사용자 단말기(300)를 통해 상기 워터마크 인식을 수행하게 되면, 상기 제2입력판이 함께 인식되어 상기 제2사용자 단말기(300)의 화면에 자동으로 나타나도록 하는 것이 가능하다. 이 경우에는 상기 제2사용자 단말기(300)에서 워터마크 인식결과신호를 상기 인증서버(200)에 전송하는 과정 및 인증서버(200)에서의 제2입력판 전송과정이 생략될 수 있다. 이는 인증서버(200)와 단말기들(100,300) 간의 정보전송 횟수를 줄여 보안성을 강화하기 위함이다.
또 다른 실시예로, 상기 전용앱의 설치시 또는 업데이트 시에 상기 제2입력판이 상기 제2사용자 단말기(300)에 전송되도록 한 상태에서, 상기 제2사용자 단말기(300)를 통해 상기 워터마크 인식을 수행하게 되면, 상기 제2입력판이 상기 제2사용자 단말기(300)의 화면에 나타나도록 하는 것이 가능하다. 이 경우 또한, 상기 제2사용자 단말기(300)에서 워터마크 인식결과신호를 전송하는 과정 및 인증서버(200)에서의 제2입력판 전송과정이 생략될 수 있다. 이는 인증서버(200)와 단말기들(100,300) 간의 정보전송 횟수를 줄여 보안성을 강화하기 위함이다.
그리고, 상기 제2입력판은 도 7에 도시된 바와 같이, 인증번호의 입력을 위한 문자, 특수문자, 숫자, 기호 등의 배열위치가 랜덤으로 표시되어 육안으로 알 수 있는 일반적으로 잘 알려진 키패드 구조를 가질 수도 있고, 인증번호의 입력을 위한 문자, 숫자, 기호 등의 배열위치를 육안으로는 식별 불가능하지만 특정배열위치에 손가락이나 피부를 접촉하는 경우 진동이나 기타 신호를 통해 배열위치를 확인하거나 인증번호를 입력할 수 있도록 하는 키패드 구조를 가질 수 있다.
이후 상기 제2사용자 단말기(300)를 통해 저장된 상기 서버인증정보를 사용자 인증정보로 하여 입력함에 의해 사용자 인증절차가 수행된다. 즉 상기 워터마크에서 인식된 서버인증정보를 파악하여 사용자 인증정보로서 입력하게 된다.
우선 상기 제1사용자 단말기(100)의 상기 제1입력판을 통해 상기 사용자 인증정보가 입력되는 경우에는, 상기 제2입력판에 나타난 입력키 배열 및 배열위치를 참고로 하여 마우스를 이용하여 입력하는 것이 가능하다(S586a).
상기 제1사용자 단말기(100)를 통해 입력된 사용자 인증정보는 상기 인증서버(200)로 전송되어(S588a), 인증절차를 거치게 된다.
다른 방법으로 상기 제2사용자 단말기(300)를 통해 상기 사용자 인증정보의 입력이 가능하다. 즉 상기 제2사용자 단말기(300)의 화면에 나타난 상기 제2입력판을 통해 사용자 인증을 위한 사용자 인증정보가 직접 입력될 수 있다(S586b).
이 경우는 상기 제2입력판이 일반키패드 구조를 가지고 있어 입력키들 및 랜덤으로 배열된 입력키들의 배열위치를 육안으로 알 수 있는 경우이다. 이때는 제2입력판을 통해 상기 사용자 인증정보를 입력하는 것도 가능하고, 상기 제2입력판의 입력키들의 배열위치를 토대로 대응되는 제1입력판의 대응위치를 통해 제1사용자 단말기(100)의 마우스를 이용하여 사용자 인증정보의 입력이 가능하다.
그러나 보안성 강화를 위해 상기 제2입력판이 육안으로는 식별불가능하나 터치 등의 동작을 통해 인증번호의 인식이 가능한 구조를 가진다면, 제2입력판을 통한 사용자 인증정보 입력을 통해 보안성 강화가 가능할 것이다.
보안성이 강화된 입력방법은, 우선적으로 상기 워터마크에서 인식된 상기 서버인증정보는 육안으로 식별이 불가능하도록 상기 제2사용자 단말기(300)의 화면에 나타나지 않고 저장되어 있게 된다. 또한 제2입력판에는 입력키들 및 입력키들의 배열위치가 표시되어 있지 않아 육안으로 식별이 불가능한 구조를 가지게 된다. 이 경우 상기 제2입력판에는 입력키들의 배열위치를 구분할 수 있는 구분선은 표시될 수 있다. 육안상으로는 제1입력판과 유사구조를 가질 수 있다.
이 상태에서 사용자 인증정보는 다음과 같이 입력된다.
즉 상기 제2입력판의 임의의 입력키들의 위치에 사용자의 손가락이 접촉될 때 상기 사용자 인증정보에 대응되는 입력키인 경우 진동을 포함하여 촉각이나 청각을 통해 감각적으로 인식될 수 있는 인식신호가 발생되도록 하고, 상기 인식신호가 발생되는 입력키의 위치를 더블터치 또는 긴 누름 동작이 수행되는 경우 사용자 인증정보가 입력되는 방식이 사용될 수 있다. 이런 방식으로 상기 사용자 인증정보는 첫 번째 자리수부터 마지막 자리수까지 순차적으로 발생되는 상기 인식신호에 대응하여 입력될 수 있다.
예를 들어, 상기 사용자 인증정보가 "12345"라고 가정할 경우에, 육안으로는 구분할 수 없는 상기 제2입력판의 "1" 의 배치위치에 사용자의 손가락이 접촉(터치)되는 경우에, 상기 제2사용자 단말기(300)의 전용앱에서는 진동이나 소리신호 등 인식신호를 발생시키게 된다. 이 경우 사용자는 진동이나 소리를 인식하여 해당위치를 더블터치하거나 길게 누룸동작을 수행함에 의해 첫 번째 자리수인 "1"이 입력되게 된다. 이후 동일방식으로 두 번째 자리수인 "2", 세 번째 자리수인 "3" 등으로 입력되고, 마지막 자리수인 "5"까지 입력이 가능하게 된다. 마지막 자리수까지 입력되면 종료음이나 기타 모두 입력되었음을 알리는 신호를 통해 사용자 인증정보가 모두 입력되었음을 알 수 있게 한다.
상기 제1사용자 단말기(100) 또는 상기 제2사용자 단말기(300)를 통해 입력된 사용자 인증정보는 상기 인증서버(200)로 전송된다(S586a,S586b). 이때 상기 인증서버(200)로 전송되는 인증정보는 숫자나 번호정보가 아니라 숫자나 번호에 해당되는 입력키들 배열의 위치정보(예를 들면, 특정 번호의 좌표정보)일 수 있다. 즉 사용자 편의를 위해 입력키들의 배열정보는 상기 제2입력판에 표시되어 있을지라도, 이는 전용앱의 매칭동작에 의해 표시되는 것이며, 인증서버(200)에서 제공되는 것은 아니다. 좀더 구체적으로, 상기 인증서버(200)와 상기 제1사용자 단말기(100) 또는 상기 인증서버(200)와 상기 제2사용자 단말기(300) 간의 인증을 위한 인증정보의 전송은 숫자나 문자의 정보가 그대로 전송되는 것이 아니라, 해당 숫자나 문자 즉 입력키들의 위치정보(또는 좌표정보)가 전송되는 것이다.
이 경우 인증서버(200)에서는 위치정보와 숫자나 번호를 매칭시켜 인증번호를 인식하게 되고 이후 인증을 수행하게 된다. 물론 인증정보로서 숫자나 번호정보가 그대로 전송되는 것도 가능할 것이다.
상기 사용자 인증정보가 입력되어 전송되면, 상기 인증서버(200)는 워터마크 생성시 생성되어 내부에 저장된 상기 서버인증정보와 비교함에 의해 사용자 인증을 수행하게 된다(S590).
도 5는 본 발명의 제4실시예에 따른 사용자 인증방법을 나타낸 도면으로, 상기 사용자 인증정보와 서버인증정보를 통한 사용자 인증절차 부분을 구체적으로 나타낸 것이다.
본 발명의 제4실시예에 따른 사용자 인증방법의 과정에서 상기 제2입력판이 상기 제2사용자 단말기(300)에 표시되기까지의 과정은 도 3의 본 발명의 제2실시예의 경우와 동일하다. 즉 단계 'S550'에서부터 단계 'S584' 까지의 과정은 도 3을 통해 설명한 본 발명의 제2실시예의 경우와 동일하므로 그 설명을 생략하고, 상기 제2사용자 단말기(300)에 상기 제2입력판이 표시된 이후의 과정인 사용자 인증정보와 서버인증정보를 통한 사용자 인증절차 부분을 구체적으로 설명하기로 한다.
도 5에 도시된 바와 같이, 상기 제2입력판이 상기 제2사용자 단말기에 표시되면(S584), 사용자의 요청에 의해 또는 자동으로 상기 제2사용자 단말기(300)에 설치된 상기 전용앱을 통해 상기 제2고유키를 연산키로 하여 OTP(One Time Password) 연산을 하여 상기 사용자 인증정보를 생성하게 된다(S602). 이와 동시에 상기 인증서버(200)에서는 저장되어 있는 상기 제1고유키를 연산키로 하여 OTP(One Time Password) 연산을 하여 상기 서버인증정보를 생성하게 된다(S604). 여기서 상기 서버인증정보는 상기 사용자 인증정보가 생성되어 상기 인증서버(200)에 전송된 이후에 상기 인증서버(200)를 통해 생성되는 것도 가능하다.
상기 제2사용자 단말기(300) 또는 상기 전용앱을 통해 생성된 상기 사용자 인증정보는 실시간으로 생성된 번호로 상기 제1사용자 단말기(100)의 제1입력판 또는 상기 제2사용자 단말기(300)의 제2입력판을 이용하여 입력가능하다. 상기 제1입력판 또는 상기 제2입력판을 이용하는 입력하는 방식은 본 발명의 제3실시예를 통해 설명한 바와 동일하다.
즉 상기 제1사용자 단말기(100)의 상기 제1입력판을 통해 상기 사용자 인증정보가 입력되는 경우에는, 상기 제2입력판에 나타난 입력키 배열 및 배열위치를 참고로 하여 마우스를 이용하여 입력하는 것이 가능하다(S606a). 상기 제1사용자 단말기(100)를 통해 입력된 사용자 인증정보는 상기 인증서버(200)로 전송되어(S608a), 인증절차를 거치게 된다. 다른 방법으로 상기 제2사용자 단말기(300)를 통해 상기 사용자 인증정보의 입력이 가능하다. 즉 상기 제2사용자 단말기(300)의 화면에 나타난 상기 제2입력판을 통해 사용자 인증을 위한 사용자 인증정보가 직접 입력될 수 있다(S606b).
이 경우는 상기 제2입력판이 일반키패드 구조를 가지고 있어 입력키들 및 랜덤으로 배열된 입력키들의 배열위치를 육안으로 알 수 있는 경우이다. 이때는 제2입력판을 통해 상기 사용자 인증정보를 입력하는 것도 가능하고, 상기 제2입력판의 입력키들의 배열위치를 토대로 대응되는 제1입력판의 대응위치를 통해 제1사용자 단말기(100)의 마우스를 이용하여 사용자 인증정보의 입력이 가능하다.
그러나 보안성 강화를 위해 상기 제2입력판이 육안으로는 식별불가능하나 터치 등의 동작을 통해 인증번호의 인식이 가능한 구조를 가진다면, 제2입력판을 통한 사용자 인증정보 입력을 통해 보안성 강화가 가능할 것이다.
보안성이 강화된 입력방법은, 우선적으로 상기 워터마크에서 인식된 상기 서버인증정보는 육안으로 식별이 불가능하도록 상기 제2사용자 단말기(300)의 화면에 나타나지 않고 저장되어 있게 된다. 또한 제2입력판에는 입력키들 및 입력키들의 배열위치가 표시되어 있지 않아 육안으로 식별이 불가능한 구조를 가지게 된다. 이 경우 상기 제2입력판에는 입력키들의 배열위치를 구분할 수 있는 구분선은 표시될 수 있다. 육안상으로는 제1입력판과 유사구조를 가질 수 있다.
이 상태에서 사용자 인증정보는 다음과 같이 입력된다.
즉 상기 제2입력판의 임의의 입력키들의 위치에 사용자의 손가락이 접촉될 때 상기 사용자 인증정보에 대응되는 입력키인 경우 진동을 포함하여 촉각이나 청각을 통해 감각적으로 인식될 수 있는 인식신호가 발생되도록 하고, 상기 인식신호가 발생되는 입력키의 위치를 더블터치 또는 긴 누름 동작이 수행되는 경우 사용자 인증정보가 입력되는 방식이 사용될 수 있다. 이런 방식으로 상기 사용자 인증정보는 첫 번째 자리수부터 마지막 자리수까지 순차적으로 발생되는 상기 인식신호에 대응하여 입력될 수 있다. 여기서 상기 인식신호가 발생되는 단계에서의 입력키들의 배열과 인증정보를 입력하는 경우의 입력키들의 배열은 달라질 수 있다.
예를 들어, 상기 사용자 인증정보가 "12345"라고 가정할 경우에, 육안으로는 구분할 수 없는 상기 제2입력판의 "1" 의 배치위치에 사용자의 손가락이 접촉(터치)되는 경우에, 상기 제2사용자 단말기(300)의 전용앱에서는 진동이나 소리신호 등 인식신호를 발생시키게 된다. 이 경우 사용자는 진동이나 소리를 인식하여 해당위치를 더블터치하거나 길게 누룸동작을 수행함에 의해 첫 번째 자리수인 "1"이 입력되게 된다. 이후 동일방식으로 두 번째 자리수인 "2", 세 번째 자리수인 "3" 등으로 입력되고, 마지막 자리수인 "5"까지 입력이 가능하게 된다. 마지막 자리수까지 입력되면 종료음이나 기타 모두 입력되었음을 알리는 신호를 통해 사용자 인증정보가 모두 입력되었음을 알 수 있게 한다.
상기 제1사용자 단말기(100) 또는 상기 제2사용자 단말기(300)를 통해 입력된 사용자 인증정보는 상기 인증서버(200)로 전송된다(S606a,S606b). 이때 상기 인증서버(200)로 전송되는 인증정보는 숫자나 번호정보가 아니라 숫자나 번호입력을 위한 입력키들 배열의 위치정보(예를 들면, 특정 번호의 좌표정보)일 수 있다. 즉 사용자 편의를 위해 입력키들의 배열정보는 상기 제2입력판에 표시되어 있을지라도, 이는 전용앱의 매칭동작에 의해 표시되는 것이며, 인증서버(200)에서 제공되는 것은 아니다. 좀더 구체적으로, 상기 인증서버(200)와 상기 제1사용자 단말기(100) 또는 상기 인증서버(200)와 상기 제2사용자 단말기(300) 간의 인증을 위한 인증정보의 전송은 숫자나 문자의 정보가 그대로 전송되는 것이 아니라, 해당 숫자나 문자 즉 입력키들의 위치정보(또는 좌표정보)가 전송되는 것이다.
이 경우 인증서버(200)에서는 위치정보와 숫자나 번호를 매칭시켜 인증번호를 인식하게 되고 이후 인증을 수행하게 된다. 물론 인증정보로서 숫자나 번호정보가 그대로 전송되는 것도 가능할 것이다.
상기 사용자 인증정보가 위치정보 형태로 입력되어 전송되면, 상기 인증서버(200)는 내부에서 생성된 상기 서버인증정보와 비교함에 의해 사용자 인증을 수행하게 된다(S610). 즉 상기 사용자 인증정보와 상기 서버인증정보가 일치되는 경우 사용자 인증하고 불일치시에는 사용자 인증이 실패하게 된다.
본 발명의 제1 내지 제4 실시예들의 경우에, 상기 제1사용자 단말기(100)에 나타난 제1입력판을 캡쳐하거나 촬영하여 사용하는 경우가 있을 수 있다.
이런 경우를 방지하기 위해 실시간으로 상기 제1입력판의 워터마크를 인식한 경우에만 제2입력판이 나타나도록 하거나 고유키의 인식이 가능하도록 하는 것이 가능하다.
이를 위해 상기 제2사용자 단말기(300)는 OCR(Optical Character Reader), 즉 광학문자판독기를 내장하고 이를 이용하여 상기 제1입력판에 표시되는 시각을 인식하도록 할 수 있다. OCR 장치는 인쇄된 문자 또는 사람이 손으로 쓴 문자를 읽는 장치로 문자, 숫자 또는 기호를 인식할 수 있는 것으로 알려져 있다.
상기 인증서버(200)는 상기 제1입력판을 상기 제1사용자 단말기(100)의 화면에 표시되도록 하는 경우에, 도 6에 도시된 바와 같이, 상기 제1입력판의 가장자리 부분이나 키패드 하단 부분 등 특정영역에 상기 인증서버(200)의 현재 시각이 실시간으로 표시되도록 하는 것이 가능하다.
그리고, 상기 제1입력판이 상기 제1사용자 단말기(100)의 화면에 표시되는 경우에, 상기 제2사용자 단말기(300)는 광학문자판독기(OCR)를 내장하고, 상기 전용앱은 상기 광학문자판독기를 이용하여 상기 제1입력판에 표시되는 시각을 실시간으로 인식할 수 있다. 이때 상기 제2사용자 단말기(300)의 자체 시각흐름과 상기 제1입력판을 통해 표시되는 시각흐름을 비교하여 차이값이 일정 오차범위 내에 속할 경우에만 상기 제2입력판이 상기 제2사용자 단말기(300)를 통해 표시되도록 제어하는 것이 가능하다. 여기서 제2입력판의 표시는 본 발명의 실시예들을 통해 설명한 조건이 만족되는 경우에 가능할 것이다.
여기서 다른 실시예로 상기 전용앱은 상기 제1입력판에 표시되는 시각과 상기 제2사용자 단말기의 현재 시각을 비교하여 그 차이값을 구한후, 이러한 차이값이 일정하게 일정시간동안 유지되는 경우에 다른 조건들이 만족되면 상기 제2입력판이 상기 제2사용자 단말기(300)를 통해 표시되도록 제어하는 것이 가능하다. 이에 따라 화면을 캡처한 경우에는 시각 차이값이 일정하지 않게 되므로 상기 제2입력판이 표시되지 않게 된다. 여기서 제2입력판의 표시는 본 발명의 실시예들을 통해 설명한 조건이 만족되는 경우에 가능할 것이다.
상술한 바와 같이, 본 발명의 실시예들에 따르면, 제1사용자 단말기에는 어떠한 프로그램도 설치되지 않고 육안으로 인식할 수 있는 어떠한 문자나 숫자가 표시되지 않아 보안이 강화될 수 있다. 또한 워터마크 인식, 실시간 시각비교, 고유키 인식 등의 방법을 통해 본인확인여부, 실시간 사용여부, 홈페이지의 위변조 여부 등을 체크하는 것이 가능하다. 또한 사용자 단말기를 분리함에 의해 정보를 분리전달하여 정보유출이나 해킹 등에 대비가 가능한 효과가 있다.
상기한 실시예의 설명은 본 발명의 더욱 철저한 이해를 위하여 도면을 참조로 예를 든 것에 불과하므로, 본 발명을 한정하는 의미로 해석되어서는 안될 것이다. 또한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기본적 원리를 벗어나지 않는 범위 내에서 다양한 변화와 변경이 가능함은 명백하다 할 것이다.
100 : 제1사용자 단말기 200 : 인증서버
300 : 제2사용자 단말기

Claims (12)

  1. 제1사용자 단말기, 제2사용자 단말기 및 인증서버를 구비하는 사용자 인증장치에서의 가상키패드를 이용한 사용자 인증방법에 있어서:
    사용자 인증이 요청되면, 상기 인증서버에서 입력키들 및 입력키들의 배열위치가 표시됨이 없이 일정정보가 포함된 이미지정보 워터마크가 삽입된 제1입력판을 생성하고, 상기 제1입력판을 제1사용자 단말기의 화면에 표시하는 제1단계와;
    전용 어플리케이션 프로그램이 설치된 제2사용자 단말기를 통해 상기 워터마크를 인식한 이후에, 사용자 인증정보의 입력이 가능한 제2입력판을 상기 제2사용자 단말기의 화면에 표시하는 제2단계와;
    상기 제2입력판을 통해 사용자 인증정보가 직접 입력되거나 상기 제2입력판을 참고하여 제1입력판을 통해 상기 사용자 인증정보가 입력되면, 상기 인증서버에서 사용자 인증을 수행하는 제3단계를 구비하되,
    상기 워터마크에는 제1고유키가 포함되고, 상기 제2사용자 단말기에 설치되는 상기 전용 어플리케이션 프로그램에는 제2고유키가 내장되며, 상기 워터마크는 상기 제1고유키와 상기 제2고유키가 일치되는 경우에 인식되는 것으로 판단됨을 특징으로 하는 사용자 인증방법.
  2. 삭제
  3. 청구항 1에 있어서,
    상기 제1고유키 및 상기 제2고유키는 상기 인증서버를 통해 제공되는 인증기관의 고유키임을 특징으로 하는 사용자 인증방법.
  4. 청구항 1에 있어서,
    상기 제1고유키 및 상기 제2고유키는 인증기관의 고유키, 상기 제2사용자 단말기의 기계적 고유키 및 사용자를 통해 설정된 개인 비밀번호가 조합되어 형성된 해쉬암호값 임을 특징으로 하는 사용자 인증방법.
  5. 청구항 4에 있어서, 상기 제1단계는,
    상기 제2사용자 단말기는 상기 인증서버에서 제공되는 상기 전용 어플리케이션 프로그램의 설치시, 상기 전용 어플리케이션 프로그램에 내장된 인증기관의 고유키, 상기 제2사용자 단말기의 기계적 고유키 및 사용자에 의해 설정된 개인 비밀번호를 조합하여 해쉬암호값 형태의 상기 제1고유키를 생성하여 인증서버에 전송하는 단계와;
    상기 인증서버에서 상기 제1고유키를 등록 및 저장하는 단계와;
    사용자 인증이 요청되면, 상기 제1입력판에 상기 제1고유키가 포함된 워터마크를 삽입하여 제1사용자 단말기의 화면에 표시하는 단계를 포함하고,
    상기 제2단계는,
    상기 제2사용자 단말기를 통해 상기 워터마크에 포함되어 있는 상기 제1고유키를 인식하는 단계와;
    상기 제2사용자 단말기를 통해 상기 개인비밀번호가 입력되면, 상기 전용 어플리케이션 프로그램을 통해 상기 개인비밀번호와 상기 전용어플리케이션 프로그램에 내장된 인증기관의 고유키 및 상기 제2사용자 단말기의 기계적 고유키를 조합하여 해쉬암호값 형태의 상기 제2고유키를 생성하고, 상기 제1고유키와 비교하여 일치되는 경우에 상기 워터마크가 인식된 것으로 판단하는 단계와;
    상기 워터마크가 인식된 것으로 판단되면, 상기 제2입력판을 상기 제2사용자 단말기 화면에 표시하는 단계를 구비함을 특징으로 하는 사용자 인증방법.
  6. 청구항 5에 있어서,
    상기 제1단계에서, 상기 인증서버는 상기 제1입력판의 가장자리 부분에 상기 인증서버의 현재 시각이 실시간으로 표시되도록 하고,
    상기 제2단계에서, 상기 제2사용자 단말기는 광학문자판독기(OCR)를 내장하고, 상기 전용 어플리케이션 프로그램은 상기 광학문자판독기를 이용하여 상기 제1입력판에 표시되는 시각을 실시간으로 인식하고, 상기 제2사용자 단말기의 시각흐름과 상기 제1입력판의 시각흐름을 비교하여 차이값이 일정시간동안 일정하게 유지되는 경우에만 상기 제2입력판이 표시되도록 제어함을 특징으로 하는 사용자 인증방법.
  7. 청구항 5 또는 청구항 6에 있어서, 상기 제3단계는,
    상기 제2사용자 단말기의 전용 어플리케이션 프로그램을 통해 상기 제2고유키를 연산키로 하여 OTP(One Time Password) 연산을 하여 상기 사용자 인증정보를 생성하는 생성단계와;
    상기 제2입력판을 통해 상기 사용자 인증정보가 직접 입력되거나 상기 제2입력판을 참고하여 제1입력판을 통해 상기 사용자 인증정보가 입력되는 입력단계와;
    상기 사용자 인증정보가 입력되면, 상기 인증서버에서 상기 제1고유키를 연산키로 하여 OTP(One Time Password) 연산을 수행하여 생성된 서버인증정보와 비교하여 사용자 인증을 수행하는 인증단계를 구비함을 특징으로 하는 사용자 인증방법.
  8. 청구항 7에 있어서, 상기 제3단계에서
    상기 제2입력판을 구성하는 입력키들 및 입력키들의 배열위치는 상기 제2사용자 단말기의 화면에 시각적으로 표시되지 않으며,
    상기 사용자 인증정보가 상기 제2입력판을 통해 입력되는 경우의 입력단계는,
    상기 사용자 인증정보의 입력을 위해 상기 제2입력판의 입력키들의 위치에 사용자의 손가락이 순차적으로 접촉되면, 사용자 손가락이 접촉되는 입력키가 상기 사용자 인증정보 중 원하는 자리값에 대응되는 입력키인 경우, 진동을 포함하여 감각적으로 인식될 수 있는 인식신호가 발생되도록 하는 단계와;
    상기 인식신호가 발생되는 입력키에 더블터치 또는 긴 누름 동작을 통해 사용자 인증정보가 입력되는 단계를 포함하되,
    상기 사용자 인증정보는 첫 번째 자리값부터 마지막 자리값까지 순차적으로 발생되는 상기 인식신호에 대응하여 입력됨을 특징으로 하는 사용자 인증방법.
  9. 청구항 5 또는 청구항 6에 있어서,
    상기 제1단계에서, 상기 인증서버는 상기 제1고유키를 연산키로 하여 OTP(One Time Password) 연산을 수행하여 생성된 서버인증정보가 상기 워터마크에 삽입되도록 하고,
    상기 제2단계에서, 전용 어플리케이션 프로그램이 설치된 제2사용자 단말기를 통해 상기 워터마크가 인식되면, 상기 서버인증정보가 함께 인식되며,
    상기 제3단계에서, 상기 서버인증정보는 상기 사용자 인증정보로 하여 입력됨을 특징으로 하는 사용자 인증방법.
  10. 청구항 9에 있어서,
    상기 제2단계에서 상기 서버인증정보는 상기 제2사용자 단말기의 화면에 표시되지 않으며,
    상기 제3단계에서, 상기 제2입력판의 임의의 입력키들의 위치에 사용자의 손가락이 접촉될 때 상기 사용자 인증정보에 대응되는 입력키인 경우 진동을 포함하여 감각적으로 인식될 수 있는 인식신호가 발생되도록 하고, 상기 인식신호가 발생되는 입력키들에 더블터치 또는 긴 누름 동작을 통해 사용자 인증정보가 입력되며, 상기 사용자 인증정보는 첫 번째 자리수부터 마지막 자리수까지 순차적으로 발생되는 상기 인식신호에 대응하여 입력됨을 특징으로 하는 사용자 인증방법.
  11. 청구항 3 또는 청구항 4에 있어서,
    상기 제1사용자 단말기는 데스크탑 PC, 노트북, 씬클라이언트(thin client)용 단말기, 제로클라이언트(zero-client)용 단말기 중 어느 하나이고, 상기 제2사용자 단말기는 스마트폰 및 태블릿을 포함하는 모바일 단말기임을 특징으로 하는 사용자 인증방법.
  12. 청구항 1에 있어서,
    상기 제1사용자 단말기 또는 상기 제2사용자 단말기를 통해 상기 사용자 인증정보가 입력되는 경우, 상기 사용자 인증정보는 각 입력키들의 위치정보만이 상기 인증서버로 전송됨을 특징으로 하는 사용자 인증방법.
KR1020150159553A 2015-11-13 2015-11-13 가상키패드를 이용한 사용자 인증방법 KR101601841B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020150159553A KR101601841B1 (ko) 2015-11-13 2015-11-13 가상키패드를 이용한 사용자 인증방법
PCT/KR2016/002582 WO2017082483A1 (ko) 2015-11-13 2016-03-15 가상키패드를 이용한 사용자 인증방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150159553A KR101601841B1 (ko) 2015-11-13 2015-11-13 가상키패드를 이용한 사용자 인증방법

Publications (1)

Publication Number Publication Date
KR101601841B1 true KR101601841B1 (ko) 2016-03-09

Family

ID=55537190

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150159553A KR101601841B1 (ko) 2015-11-13 2015-11-13 가상키패드를 이용한 사용자 인증방법

Country Status (2)

Country Link
KR (1) KR101601841B1 (ko)
WO (1) WO2017082483A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230024070A (ko) * 2021-08-11 2023-02-20 주식회사 카인드소프트 블록체인에 기반한 로그인 이상징후 감지 및 로그인 관련 로그 데이터 관리 방법, 및 이를 수행하기 위한 장치

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100838488B1 (ko) * 2007-01-24 2008-06-16 현대중공업 주식회사 사용자 컴퓨터에 키스트로크 해킹 보안 프로그램 설치가필요 없는 변조된 일회성 인증 데이터 생성 방식을 이용한정보 보안 방법 및 장치
KR20090015281A (ko) * 2007-08-08 2009-02-12 엘아이지넥스원 주식회사 응용 소프트웨어의 사용자 인증키 생성 장치와 그 방법, 및이 인증키를 이용한 사용자 인증 시스템과 그 방법
KR20100095346A (ko) * 2009-02-20 2010-08-30 (주)민인포 가상키보드를 이용한 사용자 인증방법 및 그 방법을 실행하기 위한 프로그램을 저장하는 컴퓨터 판독가능한 저장매체
KR20120046664A (ko) * 2010-11-02 2012-05-10 인하대학교 산학협력단 신원 확인 인증 방법 및 이를 이용한 시스템
KR101270941B1 (ko) 2011-10-19 2013-06-11 서울대학교산학협력단 사용자 단말을 이용한 인증 보안 시스템 및 방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002232413A (ja) * 2001-02-05 2002-08-16 Yamaha Corp ホームページデータの生成方法、公開鍵公開方法および通信端末

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100838488B1 (ko) * 2007-01-24 2008-06-16 현대중공업 주식회사 사용자 컴퓨터에 키스트로크 해킹 보안 프로그램 설치가필요 없는 변조된 일회성 인증 데이터 생성 방식을 이용한정보 보안 방법 및 장치
KR20090015281A (ko) * 2007-08-08 2009-02-12 엘아이지넥스원 주식회사 응용 소프트웨어의 사용자 인증키 생성 장치와 그 방법, 및이 인증키를 이용한 사용자 인증 시스템과 그 방법
KR20100095346A (ko) * 2009-02-20 2010-08-30 (주)민인포 가상키보드를 이용한 사용자 인증방법 및 그 방법을 실행하기 위한 프로그램을 저장하는 컴퓨터 판독가능한 저장매체
KR20120046664A (ko) * 2010-11-02 2012-05-10 인하대학교 산학협력단 신원 확인 인증 방법 및 이를 이용한 시스템
KR101270941B1 (ko) 2011-10-19 2013-06-11 서울대학교산학협력단 사용자 단말을 이용한 인증 보안 시스템 및 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230024070A (ko) * 2021-08-11 2023-02-20 주식회사 카인드소프트 블록체인에 기반한 로그인 이상징후 감지 및 로그인 관련 로그 데이터 관리 방법, 및 이를 수행하기 위한 장치
KR102506294B1 (ko) * 2021-08-11 2023-03-06 주식회사 카인드소프트 블록체인에 기반한 로그인 이상징후 감지 및 로그인 관련 로그 데이터 관리 방법, 및 이를 수행하기 위한 장치

Also Published As

Publication number Publication date
WO2017082483A1 (ko) 2017-05-18

Similar Documents

Publication Publication Date Title
KR101916173B1 (ko) 핀 검증
CN101436247B (zh) 一种基于uefi的生物身份识别方法及系统
US10592653B2 (en) Encoding methods and systems
RU2748559C2 (ru) Устройство для квалифицированной электронной подписи в форме стилуса и способ его применения
US10147090B2 (en) Validating a transaction with a secure input without requiring pin code entry
US20200201977A1 (en) Method for authenticating a first user and corresponding first device and system
KR101601841B1 (ko) 가상키패드를 이용한 사용자 인증방법
US11936649B2 (en) Multi-factor authentication
KR20190052405A (ko) 스마트폰 인증 기능을 이용한 컴퓨터 보안 시스템 및 방법
JP2016224909A (ja) デジタル自書検証装置、デジタル自書検証方法およびデジタル自書検証プログラム
KR20150114358A (ko) 카드 접촉을 통한 사용자 인증 시스템 및 이의 실행 방법
KR102564395B1 (ko) 전자 문서 인증 및 저장 방법
KR20080033682A (ko) 서버 인증 시스템 및 방법
JP5908145B1 (ja) デジタル自書システム、デジタル自書検証装置、方法およびプログラム
US20150288684A1 (en) Device assembly for carrying out or enabling an electronic service and a method for securely inputting authorization data
WO2008015491A1 (en) Verifying presented data through streamlined reviewing

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
N231 Notification of change of applicant
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190226

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20200219

Year of fee payment: 5