KR101740178B1 - 증강현실을 이용한 다중 요소 인증 방법 및 시스템 - Google Patents

증강현실을 이용한 다중 요소 인증 방법 및 시스템 Download PDF

Info

Publication number
KR101740178B1
KR101740178B1 KR1020160018906A KR20160018906A KR101740178B1 KR 101740178 B1 KR101740178 B1 KR 101740178B1 KR 1020160018906 A KR1020160018906 A KR 1020160018906A KR 20160018906 A KR20160018906 A KR 20160018906A KR 101740178 B1 KR101740178 B1 KR 101740178B1
Authority
KR
South Korea
Prior art keywords
user
virtual keyboard
authentication
password
terminal
Prior art date
Application number
KR1020160018906A
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 KR1020160018906A priority Critical patent/KR101740178B1/ko
Application granted granted Critical
Publication of KR101740178B1 publication Critical patent/KR101740178B1/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/45Structures or tools for the administration of authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • G06F21/35User authentication involving the use of external additional devices, e.g. dongles or smart cards communicating wirelessly
    • 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]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06037Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/1408Methods for optical code recognition the method being specifically adapted for the type of code
    • G06K7/14172D bar codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0625Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation with splitting of the data block into left and right halves, e.g. Feistel based algorithms, DES, FEAL, IDEA or KASUMI
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • 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
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/082Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying multi-factor authentication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Toxicology (AREA)
  • Electromagnetism (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Computer Graphics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

일 실시예에 따른 다중 요소 인증 방법은, 사용자 인증을 수행하기 위한 사전 등록 과정이 수행됨에 따라 상기 사용자 인증이 요청됨을 수신하는 단계; 상기 사용자 인증이 요청됨을 수신함에 따라 1회용 가상 키보드 생성 규칙을 암호화하고, 서버의 정보 및 사용자의 정보를 포함하는 2차원 바코드를 생성하는 단계; 컴퓨터 단말로 암호 입력창 및 상기 2차원 바코드를 영상 이미지로 제공하는 단계; 사용자 단말로부터 상기 컴퓨터 단말에 출력된 상기 2차원 바코드가 스캔됨에 따라 비밀키를 이용한 데이터 복호화를 수행하고, 상기 1회용 가상 키보드 생성 규칙에 따른 1회용 가상 키보드를 생성하는 단계; 및 상기 사용자 단말에서 증강 현실로 상기 1회용 가상 키보드가 출력됨에 따라 상기 컴퓨터 단말의 암호 입력창에서 상기 사용자 단말에 출력된 1회용 가상 키보드의 키값의 위치에 기초하여 비밀 번호가 입력됨으로써 상기 사용자 인증을 수행하는 단계를 포함할 수 있다.

Description

증강현실을 이용한 다중 요소 인증 방법 및 시스템{MULTI-FACTOR AUTHENTICATION METHOD AND THE SYSTEM USING AUGMENTED REALITY}
아래의 설명은 증강현실을 이용한 다중 요소 인증 방법 및 시스템에 관한 것이다.
2014년 국내 정보보호산업 실태조사에 따르면, 정보 보안 제품 중 암호/인증 제품에는 보안 스마트카드, H/W 토큰(HSM), 일회용 비밀번호(OTP), 공개키 기반 구조(PKI), 통합접근관리(EAM)/싱글사인온(SSO), 통합계정관리(IM/IAM) 제품이 포함된다. 이 분야의 제품 매출은 2013년 기준 1267억으로 집계된다.
암호/인증 제품의 연평균성장률(CAGR)은 3.5%로 2018년에는 150,534백만 원의 매출을 기록할 것으로 예상된다. 암호/인증 제품에서 H/W 토큰(HSM)의 성장률(CAGR)이 36.8%로 가장 높았으며, 다음으로 보안스마트카드가 15.3%로 높게 나타났다. 다만, 2018년의 일회용비밀번호(OTP) 제품의 성장률은 13.3% 감소할 것으로 전망된다.
이에 따라 2팩터 인증 기술을 대체하고, 하드웨어 토큰, 일회용 비밀번호, 공개키 기반구조 등을 대체할 수 있는 다중 요소 인증 기술이 요구되고 있다.
본 발명이 해결하고자 하는 과제는 아이디/비밀번호만 파악하면 누구나 얼마든지 서버에 쉽게 접속한다는 종래 기술의 문제점을 해결할 수 있는 증강현실을 이용한 다중 요소 인증 방법 및 시스템을 제안한다.
일 실시예에 따르면, 다중 요소 인증 방법은, 사용자 인증을 수행하기 위한 사전 등록 과정이 수행됨에 따라 상기 사용자 인증이 요청됨을 수신하는 단계; 상기 사용자 인증이 요청됨을 수신함에 따라 1회용 가상 키보드 생성 규칙을 암호화하고, 서버의 정보 및 사용자의 정보를 포함하는 2차원 바코드를 생성하는 단계; 컴퓨터 단말로 암호 입력창 및 상기 2차원 바코드를 영상 이미지로 제공하는 단계; 사용자 단말로부터 상기 컴퓨터 단말에 출력된 상기 2차원 바코드가 스캔됨에 따라 비밀키를 이용한 데이터 복호화를 수행하고, 상기 1회용 가상 키보드 생성 규칙에 따른 1회용 가상 키보드를 생성하는 단계; 및 상기 사용자 단말에서 증강 현실로 상기 1회용 가상 키보드가 출력됨에 따라 상기 컴퓨터 단말의 암호 입력창에서 상기 사용자 단말에 출력된 1회용 가상 키보드의 키값의 위치에 기초하여 비밀 번호가 입력됨으로써 상기 사용자 인증을 수행하는 단계를 포함할 수 있다.
일측에 따르면, 상기 사용자 인증을 수행하기 위한 사전 등록 과정이 수행됨에 따라 상기 사용자 인증이 요청됨을 수신하는 단계는, 상기 컴퓨터 단말로부터 웹 사이트에 사용자 식별 데이터가 전송되고, 서비스 가입이 요청됨에 따라 비밀 대칭키를 생성하고, 인증 서버 데이터베이스에 상기 사용자 식별 데이터 및 상기 비밀 대칭키를 저장하는 단계; 상기 웹 사이트의 정보, 상기 사용자 식별 데이터 및 상기 비밀 대칭키를 포함하는 2차원 바코드를 생성하여 상기 컴퓨터 단말로 전송하는 단계; 및 상기 사용자 단말에서 상기 컴퓨터 단말로 전송된 2차원 바코드를 해석함에 따라 상기 사용자 단말에 상기 웹 사이트의 정보, 상기 사용자 식별 데이터 및 상기 비밀 대칭키가 상기 사용자 단말의 앱에 저장되는 단계를 포함할 수 있다.
또 다른 일측에 따르면, 상기 사용자 인증을 수행하기 위한 사전 등록 과정이 수행됨에 따라 상기 사용자 인증이 요청됨을 수신하는 단계는, 1회용 가상 키보드 생성 규칙을 생성하여 상기 비밀 대칭키로 암호화를 수행하고, 상기 웹 사이트의 정보 및 상기 사용자 식별 데이터에 대한 정보를 포함하는 2차원 바코드를 생성하는 단계; 상기 컴퓨터 단말로 암호 입력창 및 상기 2차원 바코드를 제공하는 단계; 상기 사용자 단말에서 상기 컴퓨터 단말에 출력된 상기 2차원 바코드가 해석됨에 따라 상기 웹 사이트의 정보 및 상기 사용자 식별 데이터가 확인되고, 상기 저장된 비밀 대칭키를 이용하여 상기 1회용 가상 키보드의 생성 규칙을 복호화하는 단계; 상기 사용자 단말에서 상기 복호화된 생성 규칙을 이용하여 상기 1회용 가상 키보드를 생성하고, 상기 사용자 단말의 카메라 미리보기 화면 상에 상기 가상 키보드를 출력하는 단계; 및 상기 컴퓨터 단말에서 상기 사용자 단말에 출력된 상기 1회용 가상 키보드의 키값의 위치에 기초하여 사용할 비밀 번호가 입력되고, 상기 인증 서버 데이터베이스에 상기 입력된 비밀 번호와 상기 1회용 가상 키보드 생성 규칙을 이용하여 사용자의 비밀 번호를 확인하여 저장하는 단계를 포함할 수 있다.
또 다른 일측에 따르면, 상기 사용자 인증을 수행하기 위한 사전 등록 과정이 수행됨에 따라 상기 사용자 인증이 요청됨을 수신하는 단계는, 상기 컴퓨터 단말로부터 웹 사이트에 사용자 식별 데이터가 전송되고, 서비스 가입이 요청됨에 따라 상기 웹 사이트의 정보, 상기 사용자 식별 데이터, 세션 정보 및 공개키를 포함하는 2차원 바코드를 생성하여 상기 컴퓨터 단말로 전송하는 단계; 상기 사용자 단말에서 상기 컴퓨터 단말로 전송된 상기 2차원 바코드를 해석함에 따라 상기 사용자의 개인키와 공개키의 쌍이 생성되고, 상기 웹 사이트의 정보, 상기 사용자 식별 데이터 및 상기 웹 사이트의 공개키가 상기 사용자 단말의 앱에 저장되는 단계; 및 상기 사용자 단말로부터 상기 사용자 식별 데이터 및 상기 사용자의 공개키 및 상기 세션 정보가 전송됨에 따라 상기 사용자 식별 데이터 및 상기 세션 정보를 확인하여 상기 인증 서버 데이터베이스에 저장하는 단계를 포함할 수 있다.
또 다른 일측에 따르면, 상기 사용자 인증을 수행하기 위한 사전 등록 과정이 수행됨에 따라 상기 사용자 인증이 요청됨을 수신하는 단계는, 1회용 가상 키보드 생성 규칙을 생성하여 상기 공개키로 암호화를 수행하고, 상기 웹 사이트의 정보 및 상기 사용자 식별 데이터에 대한 정보를 포함하는 2차원 바코드를 생성하는 단계; 상기 컴퓨터 단말로 암호 입력창 및 상기 2차원 바코드를 제공하는 단계; 상기 사용자 단말에서 상기 컴퓨터 단말에 출력된 상기 2차원 바코드가 해석됨에 따라 상기 사용자 단말에서 상기 공개키로 데이터를 검증하고, 상기 웹 사이트의 정보를 추출하고, 상기 사용자 식별 데이터에 대한 상기 사용자의 개인키로 상기 1회용 가상 키보드의 생성 규칙을 복호화하는 단계; 상기 복호화된 생성 규칙을 이용하여 상기 1회용 가상 키보드를 생성하고, 상기 사용자 단말의 카메라 미리보기 화면 상에 상기 가상 키보드를 출력하는 단계; 및 상기 컴퓨터 단말에서 상기 사용자 단말에 출력된 상기 1회용 가상 키보드의 키값의 위치에 기초하여 사용할 비밀 번호가 입력되고, 상기 인증 서버 데이터베이스에 상기 입력된 비밀 번호와 상기 1회용 가상 키보드 생성 규칙을 이용하여 사용자의 비밀 번호를 확인하여 저장하는 단계를 포함할 수 있다.
또 다른 일측에 따르면, 상기 사용자 단말에서 증강 현실로 상기 1회용 가상 키보드가 출력됨에 따라 상기 컴퓨터 단말에서 상기 사용자 단말에 출력된 1회용 가상 키보드의 키값의 위치에 기초하여 비밀 번호가 입력됨으로써 상기 사용자 인증을 수행하는 단계는, 상기 컴퓨터 단말로부터 상기 1회용 가상 키보드의 배열 규칙에 기초하여 입력된 비밀 번호를 확인하고, 상기 비밀 번호와 인증 서버 데이터베이스에 저장된 비밀 번호가 일치하는지 여부를 판단하는 단계를 포함할 수 있다.
또 다른 일측에 따르면, 상기 사용자 단말에서 증강 현실로 상기 1회용 가상 키보드가 출력됨에 따라 상기 컴퓨터 단말에서 상기 사용자 단말에 출력된 1회용 가상 키보드의 키값의 위치에 기초하여 비밀 번호가 입력됨으로써 상기 사용자 인증을 수행하는 단계는, 상기 인증 서버 데이터베이스에 저장된 비밀 번호와 상기 입력된 비밀 번호를 비교함에 따라 상기 비밀 번호가 일치하는 경우 상기 컴퓨터 단말로 사용자 계정에 접근 권한을 제공하는 단계를 포함할 수 있다.
일 실시예에 따르면, 다중 요소 인증 시스템은, 사용자 인증을 수행하기 위한 사전 등록 과정이 수행됨에 따라 상기 사용자 인증이 요청됨을 수신하는 수신부; 상기 사용자 인증이 요청됨을 수신함에 따라 1회용 가상 키보드 생성 규칙을 암호화하고, 서버의 정보 및 사용자의 정보를 포함하는 2차원 바코드를 생성하는 바코드 생성부; 컴퓨터 단말로 암호 입력창 및 상기 2차원 바코드를 영상 이미지로 제공하는 제공부; 사용자 단말로부터 상기 컴퓨터 단말에 출력된 상기 2차원 바코드가 스캔됨에 따라 비밀키를 이용한 데이터 복호화를 수행하고, 상기 1회용 가상 키보드 생성 규칙에 따른 1회용 가상 키보드를 생성하는 가상 키보드 생성부; 및 상기 사용자 단말에서 증강 현실로 상기 1회용 가상 키보드가 출력됨에 따라 상기 컴퓨터 단말의 암호 입력창에서 상기 사용자 단말에 출력된 1회용 가상 키보드의 키값의 위치에 기초하여 비밀 번호가 입력됨으로써 상기 사용자 인증을 수행하는 인증 수행부를 포함할 수 있다.
일 실시예에 따른 다중 요소 인증 시스템은 보다 안전한 2팩터 인증 기술을 개발함으로써 스마트 폰을 보안의 도구로 이용함으로써 OTP 장치나 하드웨어 토큰처럼 별도의 장치를 휴대할 필요가 없다. 또한, 현재 범용적으로 사용되는 아이디/비밀번호에 기반을 둔 사용자 인증 방법에 쉽게 적용이 가능하고 사용자의 계정을 노리는 피싱 공격을 원천적으로 차단할 수 있다.
도1 내지 도 3은 일 실시예에 따른 다중 요소 인증 시스템의 동작을 설명하기 위한 도면이다.
도 4는 일 실시예에 따른 다중 요소 인증 시스템의 구성을 설명하기 위한 블록도이다.
도 5는 일 실시예에 따른 다중 요소 인증 시스템의 다중 요소 인증 방법을 설명하기 위한 흐름도이다.
도 6 내지 도 8은 일 실시예에 따른 다중 요소 인증 시스템에서 대칭키를 이용하여 다중 요소 인증을 수행하는 방법을 설명하기 위한 도면이다.
도 9 내지 도 11은 일 실시예에 따른 다중 요소 인증 시스템에서 공개키를 이용하여 다중 요소 인증을 수행하는 방법을 설명하기 위한 도면이다.
이하, 실시예를 첨부한 도면을 참조하여 상세히 설명한다.
도1 내지 도 3은 일 실시예에 따른 다중 요소 인증 시스템의 동작을 설명하기 위한 도면이다.
다중 요소 인증 시스템은 증강현실을 이용하여 다중 요소로 인증을 수행하도록 제공하기 위한 것이다. 다중 요소 인증 시스템은 인증 서버를 의미할 수 있으며, 아래의 설명에서는 다중 요소 인증 시스템을 인증 서버로 가정하여 설명하기로 한다.
다중 요소 인증 시스템은 도 5의 다중 요소 인증 방법과 같이 동작될 수 있다. 다중 요소 인증 방법은 인증 서버 데이터베이스(510), 인증 서버(520), 컴퓨터 단말(530) 및 사용자 단말(540) 사이에서 이루어질 수 있다.
컴퓨터 단말(530)은 인증 서버(520)와 유무선 접속이 가능한 노트북 컴퓨터, UMPC(Ultra Mobile PC) 또는 PC(Personal Computer)를 포함하는 각종 전자 장치를 포함할 수 있다.
사용자 단말(540)은 휴대할 수 있는 이동형 단말로, 스마트 폰(smart phone), 휴대폰, 네비게이션, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 태블릿 PC 등이 있다. 이때, 사용자 단말(540)에는 사용자 인증 프로그램에 설치되어 구동될 수 있다.
인증 서버(520)와 컴퓨터 단말(530) 간 동작을 통하여 서비스 이용, 비밀키 및 사용자 식별 데이터가 등록될 수 있다. 사용자가 컴퓨터 단말(530)을 이용하여 서비스를 이용하기 위한 등록하고, 비밀키 및 비밀번호를 등록할 수 있다. 이때, 사용자의 정보뿐만 아니라 사용자의 사용자 단말(540)과 인증 서버(520)간에 비밀키를 공유하는 과정이 포함될 수 있다. 또한, 비밀키 공유 과정은 대칭키를 이용하는 방식과 공개키를 이용하는 방식이 모두 사용될 수 있다.
인증 서버(520)는 사용자 인증이 요청됨을 수신할 수 있다. 인증 서버(520)는 사용자의 인증이 요청됨을 수신함에 따라 1회용 가상 키보드 생성 규칙을 암호화하고 서버의 정보 및 사용자의 정보를 포함하는 2차원 바코드를 생성할 수 있다. 컴퓨터 단말(530)로 암호 입력창 및 2차원 바코드가 전송될 수 있다. 도 1을 참고하면, 컴퓨터 단말(100)에 암호 입력창(110) 및 2차원 바코드(120)가 출력될 수 있다.
컴퓨터 단말(530)에 암호 입력창 2차원 바코드가 영상 이미지로 제공됨에 따라 사용자 단말(540)로부터 컴퓨터 단말(530)에 출력된 2차원 바코드를 스캔하여 비밀키를 이용한 데이터 복호화를 수행하고, 1회용 가상 키보드 생성 규칙에 따른 1회용 가상 키보드를 생성할 수 있다. 도 2를 참고하면, 컴퓨터 단말에 출력된 암호 입력창과 2차원 바코드(220)가 출력될 수 있고, 사용자가 사용자 단말(240)을 통하여 2차원 바코드(220)를 스캔함에 따라 사용자 단말(230)에 1회용 가상 키보드(240)가 생성될 수 있다. 이때, 예를 들면, 사용자가 사용자 단말(230)을 컴퓨터 단말에 출력된 2차원 바코드(220)를 스캔함으로써 증강현실로 암호 입력창과 같은 크기의 1회용 가상 키보드(240)가 생성될 수 있다. 1회용 가상 키보드(240)는 0~9까지의 숫자가 무작위로 나열되어 출력될 수 있으며, 사용자마다 숫자가 출력되는 위치가 다르다.
사용자 단말(540)에서 1회용 가상 키보드가 출력됨에 따라 사용자는 컴퓨터 단말(530)의 암호 입력창에 비밀 번호를 입력할 수 있다. 도 3을 참고하면, 사용자 단말(330)에 출력된 1회용 가상 키보드의 키값에 기초하여 컴퓨터 단말(310)의 암호 입력창에 비밀 번호를 입력할 수 있다. 이때, 암호 입력창은 빈 창으로, 사용자가 사용자 단말(330)에 출력된 1회용 가상 키보드의 키값에 대응하는 위치를 선택함으로써 비밀 번호가 입력되도록 제공될 수 있다.
인증 서버(520)는 사용자로부터 컴퓨터 단말(530)을 통하여 비밀 번호가 입력됨을 수신할 수 있다. 인증 서버(520)는 사용자로부터 입력된 비밀 번호와 1회용 가상 키보드 생성 규칙으로부터 입력값을 복구하고 인증 서버 데이터베이스(510)에 저장된 비밀 번호와 일치하는지 여부를 판단할 수 있다. 인증 서버(520)는 비밀 번호가 일치함에 따라 컴퓨터 단말(530)로 사용자 계정과 관련된 서비스를 제공할 수 있다.
일 실시예에 따른 인증 서버는 1회용 가상 키보드 생성 규칙과 사용자의 입력 내용으로부터 사용자의 비밀 번호를 재생할 수 있으며, 데이터베이스에 일방향 해시 함수 등으로 안전하게 저장된 비밀번호와 비교함으로써 사용자의 비밀번호를 확인할 수 있다. 또한, 물리적으로 분리된 두 개의 비밀을 한번에 확인할 수 있는 증강현실을 이용한 다중 요소 인증 방법을 수행한다.
도 4는 일 실시예에 따른 다중 요소 인증 시스템의 구성을 설명하기 위한 블록도이다.
다중 요소 인증 시스템(400)는 증강현실을 이용한 다중 요소로 인증을 수행하도록 제공하는 것으로, 수신부(410), 바코드 생성부(420), 제공부(430), 가상 키보드 생성부(440) 및 인증 수행부(450)를 포함할 수 있다.
수신부(410)는 사용자 인증을 수행하기 위한 사전 등록 과정이 수행됨에 따라 상기 사용자 인증이 요청됨을 수신할 수 있다. 수신부(410)는 컴퓨터 단말로부터 웹 사이트에 사용자 식별 데이터가 전송되고, 서비스 가입이 요청됨에 따라 비밀 대칭키를 생성하고, 인증 서버 데이터베이스에 사용자 식별 데이터 및 비밀 대칭키를 저장할 수 있다. 수신부(410)는 웹 사이트의 정보, 사용자 식별 데이터 및 비밀 대칭키를 포함하는 2차원 바코드를 생성하여 컴퓨터 단말로 전송할 수 있다. 수신부(410)는 사용자 단말에서 컴퓨터 단말로 전송된 2차원 바코드를 해석함에 따라 사용자 단말에 웹 사이트의 정보, 사용자 식별 데이터 및 비밀 대칭키가 사용자 단말의 앱에 저장될 수 있다.
수신부(410)는 1회용 가상 키보드 생성 규칙을 생성하여 비밀 대칭키로 암호화를 수행하고, 웹 사이트의 정보 및 상기 사용자 식별 데이터에 대한 정보를 포함하는 2차원 바코드를 생성할 수 있다. 수신부(410)는 상기 컴퓨터 단말로 암호 입력창 및 상기 2차원 바코드를 제공할 수 있다. 수신부(410)는 사용자 단말에서 컴퓨터 단말에 출력된 2차원 바코드가 해석됨에 따라 웹 사이트의 정보 및 사용자 식별 데이터가 확인되고, 저장된 비밀 대칭키를 이용하여 1회용 가상 키보드의 생성 규칙을 복호화할 수 있다. 수신부(410)는 사용자 단말에서 복호화된 생성 규칙을 이용하여 1회용 가상 키보드를 생성하고, 사용자 단말의 카메라 미리보기 화면 상에 가상 키보드를 출력할 수 있다. 수신부(410)는 컴퓨터 단말에서 사용자 단말에 출력된 1회용 가상 키보드의 키값의 위치에 기초하여 사용할 비밀 번호가 입력되고, 인증 서버 데이터베이스에 입력된 비밀 번호와 1회용 가상 키보드 생성 규칙을 이용하여 사용자의 비밀 번호를 확인하여 저장할 수 있다.
수신부(410)는 컴퓨터 단말로부터 웹 사이트에 사용자 식별 데이터가 전송되고, 서비스 가입이 요청됨에 따라 상기 웹 사이트의 정보, 사용자 식별 데이터, 세션 정보 및 공개키를 포함하는 2차원 바코드를 생성하여 컴퓨터 단말로 전송할 수 있다. 수신부(410)는 사용자 단말에서 컴퓨터 단말로 전송된 2차원 바코드를 해석함에 따라 사용자의 개인키와 공개키의 쌍이 생성되고, 웹 사이트의 정보, 사용자 식별 데이터 및 웹 사이트의 공개키가 사용자 단말의 앱에 저장될 수 있다. 수신부(410)는 사용자 단말로부터 사용자 식별 데이터 및 사용자의 공개키 및 세션 정보가 전송됨에 따라 사용자 식별 데이터 및 세션 정보를 확인하여 인증 서버 데이터베이스에 저장할 수 있다.
수신부(410)는 1회용 가상 키보드 생성 규칙을 생성하여 공개키로 암호화를 수행하고, 웹 사이트의 정보 상기 사용자 식별 데이터에 대한 정보를 포함하는 2차원 바코드를 생성할 수 있다. 수신부(410)는 컴퓨터 단말로 암호 입력창 및 2차원 바코드를 제공할 수 있다. 수신부(410)는 사용자 단말에서 컴퓨터 단말에 출력된 2차원 바코드가 해석됨에 따라 사용자 단말에서 공개키로 데이터를 검증하고, 웹 사이트의 정보를 추출하고, 사용자 식별 데이터에 대한 사용자의 개인키로 1회용 가상 키보드의 생성 규칙을 복호화할 수 있다. 수신부(410)는 복호화된 생성 규칙을 이용하여 1회용 가상 키보드를 생성하고, 사용자 단말의 카메라 미리보기 화면 상에 가상 키보드를 출력할 수 있다. 수신부(410)는 컴퓨터 단말에서 사용자 단말에 출력된 1회용 가상 키보드의 키값의 위치에 기초하여 사용할 비밀 번호가 입력되고, 인증 서버 데이터베이스에 입력된 비밀 번호와 1회용 가상 키보드 생성 규칙을 이용하여 사용자의 비밀 번호를 확인하여 저장할 수 있다.
바코드 생성부(420)는 사용자 인증이 요청됨을 수신함에 따라 1회용 가상 키보드 생성 규칙을 암호화하고, 서버의 정보 및 사용자의 정보를 포함하는 2차원 바코드를 생성할 수 있다.
제공부(430)는 컴퓨터 단말로 암호 입력창 및 상기 2차원 바코드를 영상 이미지로 제공할 수 있다.
가상 키보드 생성부(440)는 사용자 단말로부터 컴퓨터 단말에 출력된 상기 2차원 바코드가 스캔됨에 따라 비밀키를 이용한 데이터 복호화를 수행하고, 1회용 가상 키보드 생성 규칙에 따른 1회용 가상 키보드를 생성할 수 있다.
인증 수행부(450)는 사용자 단말에서 증강 현실로 1회용 가상 키보드가 출력됨에 따라 컴퓨터 단말의 암호 입력창에서 사용자 단말에 출력된 1회용 가상 키보드의 키값의 위치에 기초하여 비밀 번호가 입력됨으로써 사용자 인증을 수행할 수 있다. 인증 수행부(450)는 컴퓨터 단말로부터 1회용 가상 키보드의 배열 규칙에 기초하여 입력된 비밀 번호를 확인하고, 비밀 번호와 인증 서버 데이터베이스에 저장된 비밀 번호가 일치하는지 여부를 판단할 수 있다. 인증 수행부(450)는 인증 서버 데이터베이스에 저장된 비밀 번호와 입력된 비밀 번호를 비교함에 따라 비밀 번호가 일치하는 경우 컴퓨터 단말로 사용자 계정에 접근 권한을 제공할 수 있다.
도 6 내지 도 8은 일 실시예에 따른 다중 요소 인증 시스템에서 대칭키를 이용하여 다중 요소 인증을 수행하는 방법을 설명하기 위한 도면이다.
도 6을 참고하면, 서비스를 이용하기 위한 등록 절차 및 비밀키 등록 예시를 나타낸 것으로, 인증 서버(620)는 사용자 컴퓨터(630)로부터 웹 사이트에 사용자 식별 데이터가 전송됨에 따라 서비스 가입이 요청될 수 있다. 예를 들면, 사용자는 컴퓨터 단말(630)을 통하여 웹 사이트에 접속하여 사용자의 ID 및 비밀 번호가 입력됨에 따라 서비스 가입이 요청될 수 있다.
인증 서버(620)는 컴퓨터 단말(630)로부터 웹 사이트에 사용자 식별 데이터가 전송되고, 서비스 가입이 요청됨에 따라 비밀 대칭키를 생성하고, 인증 서버 데이터베이스(610)에 사용자 식별 데이터 및 비밀 대칭키를 저장할 수 있다. 인증 서버(620)는 웹 사이트의 정보, 사용자 식별 데이터 및 비밀 대칭키에 대한 정보를 포함하는 2차원 바코드를 생성하여 컴퓨터 단말(630)로 전송할 수 있다.
인증 서버(620)는 컴퓨터 단말(630)로 암호 입력창 및 2차원 바코드를 영상 이미지로 제공할 수 있다. 사용자 단말(640)은 컴퓨터 단말(630)에 출력된 2차원 바코드를 해석할 수 있다. 예를 들면, 사용자가 사용자 단말(640)을 통하여 컴퓨터 단말(630)에 출력된 2차원 바코드를 스캔할 수 있다. 사용자 단말(640)은 2차원 바코드를 해석함에 따라 웹 사이트의 정보, 사용자 식별 데이터 및 비밀 대칭키를 앱(App)에 저장할 수 있다.
도 7을 참고하면, 비밀 번호를 등록하는 예를 나타낸 것으로, 컴퓨터 단말(730)로부터 서비스 이용 등록 및 비밀키 등록 과정이 수행됨에 따라 인증 서버(720)는 1회용 가상 키보드 생성 규칙을 제작할 수 있다.
인증 서버(720)는 사용자의 비밀 대칭키로 암호화를 수행하고, 웹 사이트의 정보 및 사용자 식별 데이터를 기반으로 2차원 바코드로 변환할 수 있다. 인증 서버(720)는 컴퓨터 단말(730)로 2차원 바코드 및 빈 입력창으로 구성된 암호 입력창을 전송할 수 있다. 컴퓨터 단말(730)은 2차원 바코드 및 암호 입력창이 출력될 수 있다.
사용자 단말(740)은 컴퓨터 단말(730)에 출력된 2차원 바코드가 스캔됨에 따라 웹 사이트의 정보, 사용자 식별 데이터를 확인하고, 앱에 저장된 비밀 대칭키로 1회용 가상 키보드 생성 규칙을 복호화할 수 있다. 사용자 단말(740)은 복호화된 생성 규칙을 이용하여 1회용 가상 키보드를 생성하고, 카메라 미리보기 화면 상에 가상 키보드를 출력할 수 있다.
컴퓨터 단말(730)은 사용자 단말(740)에서 출력된 1회용 가상 키보드의 키값의 위치에 기초하여 암호 입력창에 비밀 번호가 입력될 수 있다. 예를 들면, 사용자는 컴퓨터 단말(730)과 연결된 입력 장치(예를 들면, 마우스)를 이용하여 암호 입력창에 사용할 비밀 번호를 입력할 수 있다. 인증 서버(720)는 컴퓨터 단말(730)로부터 암호 입력창을 통하여 입력된 비밀 번호와 1회용 가상 키보드 생성 규칙을 이용하여 사용자의 비밀 번호를 확인하여 인증 서버 데이터베이스(710)에 저장할 수 있다.
도 8을 참고하면, 사용자 인증을 수행하는 방법을 설명하기 위한 것으로, 컴퓨터 단말(830)로부터 웹 사이트에 사용자 식별 데이터를 전송함으로써 인증 서버(820)에 로그인을 요청할 수 있다. 인증 서버(820)는 인증 서버 데이터베이스(810)에 사용자 식별 데이터를 전송하여 비밀 대칭키 조회를 요청할 수 있다. 인증 서버(820)는 인증 서버 데이터베이스(810)로부터 사용자 식별 데이터에 대한 비밀 대칭키가 전달됨에 따라 1회용 가상 키보드 생성 규칙을 제작하고, 사용자 비밀 대칭키로 암호화를 수행하고, 웹 사이트의 정보 및 사용자 식별 데이터를 기반으로 2차원 바코드로 변환할 수 있다.
인증 서버(820)는 컴퓨터 단말(830)로 2차원 바코드 및 암호 입력창을 제공하도록 전송할 수 있다. 사용자 단말(840)은 컴퓨터 단말(830)에 출력된 2차원 바코드를 스캔할 수 있다. 사용자 단말(840)은 웹 사이트의 정보, 사용자 식별 데이터를 확인하고, 저장된 비밀 대칭키로 1회용 가상 키보드 생성 규칙을 복호화할 수 있다. 사용자 단말(840)은 1회용 가상 키보드 생성 규칙을 복호화함에 따라 1회용 가상 키보드를 생성할 수 있고, 카메라 미리보기 화면 위에 1회용 가상 키보드를 출력할 수 있다.
컴퓨터 단말(830)은 사용자 단말(840)에서 출력된 1회용 가상 키보드의 키값의 위치에 기초하여 암호 입력창에 비밀 번호가 입력될 수 있다. 인증 서버(820)는 사용자로부터 컴퓨터 단말(830)을 통하여 입력된 비밀 번호 및 1회용 가상 키보드 배열 규칙을 이용하여 사용자의 비밀 번호를 확인하고, 인증 서버 데이터베이스(810)에 저장된 비밀 번호와 일치하는지 여부를 판단할 수 있다. 인증 서버(820)는 사용자로부터 입력된 비밀 번호와 인증 서버 데이터베이스(810)에 저장된 비밀 번호가 일치하는 경우, 컴퓨터 단말(830)로 사용자 계정에 접근할 수 있는 권한을 제공할 수 있다.
도 9 내지 도 11은 일 실시예에 따른 다중 요소 인증 시스템에서 공개키를 이용하여 다중 요소 인증을 수행하는 방법을 설명하기 위한 도면이다.
도 9를 참고하면, 서비스를 이용하기 위한 등록 절차 및 비밀키 등록 예시를 나타낸 것으로, 인증 서버(920)는 사용자 컴퓨터(930)로부터 웹 사이트에 사용자 식별 데이터가 전송됨에 따라 서비스 가입이 요청될 수 있다. 예를 들면, 사용자는 컴퓨터 단말(930)을 통하여 웹 사이트에 접속하여 사용자의 ID 및 비밀 번호가 입력됨에 따라 서비스 가입이 요청될 수 있다.
인증 서버(920)는 컴퓨터 단말(930)로 웹 사이트의 정보, 사용자 식별 데이터, 세션 정보 및 서버의 공개키 등에 대한 정보를 포함하는 2차원 바코드를 생성하여 전송할 수 있다. 인증 서버(920)는 컴퓨터 단말(930)로 암호 입력창 및 2차원 바코드를 영상 이미지로 제공할 수 있다.
사용자 단말(940)은 컴퓨터 단말(930)에 출력된 2차원 바코드를 해석할 수 있다. 예를 들면, 사용자가 사용자 단말(940)을 통하여 컴퓨터 단말(930)에 출력된 2차원 바코드를 스캔할 수 있다. 사용자 단말(940)은 2차원 바코드를 해석함에 따라 사용자의 개인키와 공개키의 쌍을 생성하고, 웹 사이트의 정보, 사용자 식별 데이터, 웹 사이트의 공개 키를 앱에 저장할 수 있다.
인증 서버(920)는 사용자 단말(940)로부터 사용자 식별 데이터, 사용자의 공개키 및 세션 정보가 전송됨에 따라 사용자 식별 데이터 및 세션 정보를 확인할 수 있다. 인증 서버(920)는 사용자 식별 데이터 및 세션 정보를 확인함에 따라 인증 서버 데이터베이스(910)에 사용자 식별 데이터 및 사용자의 공개키를 저장할 수 있다.
도 10을 참고하면, 비밀 번호를 등록하는 예를 나타낸 것으로, 컴퓨터 단말(1030)로부터 서비스 이용 등록 및 비밀키 등록 과정이 수행됨에 따라 인증 서버(1020)는 1회용 가상 키보드 생성 규칙을 제작할 수 있고, 사용자의 공개키로 암호화하고, 웹 사이트의 정보, 사용자 식별 데이터 및 모든 정보에 대한 전자 서명을 2차원 바코드로 변환할 수 있다.
인증 서버(1020)는 컴퓨터 단말(1030)로 2차원 바코드 및 빈 입력창으로 구성된 암호 입력창을 전송할 수 있다. 컴퓨터 단말(1030)에 2차원 바코드 및 암호 입력창이 출력될 수 있다. 사용자 단말(1040)은 컴퓨터 단말(1030)에 출력된 2차원 바코드를 해석할 수 있다. 사용자 단말(1040)은 컴퓨터 단말(1030)에 출력된 2차원 바코드가 스캔됨에 따라 서버의 공개키로 데이터를 검증하고, 웹 사이트의 정보를 추출하고, 사용자 식별 데이터에 대한 사용자의 개인키로 1회용 가상 키보드 생성 규칙을 복호화할 수 있다.
사용자 단말(1040)은 복호화된 생성 규칙을 이용하여 1회용 가상 키보드를 생성하고, 카메라 미리보기 화면 상에 1회용 가상 키보드를 출력할 수 있다. 컴퓨터 단말(1030)은 사용자 단말(1040)에서 출력된 1회용 가상 키보드의 키값의 위치에 기초하여 암호 입력창에 비밀 번호가 입력될 수 있다. 예를 들면, 사용자는 컴퓨터 단말(1030)과 연결된 입력 장치(예를 들면, 마우스)를 이용하여 암호 입력창에 사용할 비밀 번호를 입력할 수 있다. 인증 서버(1020)는 컴퓨터 단말(1030)로부터 암호 입력창을 통하여 입력된 비밀 번호와 1회용 가상 키보드 생성 규칙을 이용하여 사용자의 비밀 번호를 확인하여 인증 서버 데이터베이스(1010)에 안전하게 저장할 수 있다.
일 실시예에 따르면, 비밀번호 등록 과정에 있어서, 도 7과 도 10에서 제안한 방법은 종래의 평문으로 비밀번호를 입력하는 방식에 비하여 사용자의 비밀번호가 평문으로 인증 서버에 전달되지 않기 때문에 보안성을 높일 수 있다.
도 11을 참고하면, 사용자 인증을 수행하는 방법을 설명하기 위한 것으로, 컴퓨터 단말(1130)로부터 웹 사이트에 사용자 식별 데이터를 전송함으로써 인증 서버(1120)에 로그인을 요청할 수 있다. 인증 서버(1120)는 인증 서버 데이터베이스(110)로 사용자 식별 데이터를 전송하여 사용자의 공개키 조회를 요청할 수 있다. 인증 서버(1120)는 인증 서버 데이터베이스(1110)로부터 사용자 식별 데이터에 대한 공개키가 전달됨에 따라 1회용 가상 키보드 생성 규칙을 제작하고, 사용자 공개키로 암호화를 수행하고, 웹 사이트의 정보 및 사용자 식별 데이터 등에 대한 전자 서명을 2차원 바코드로 변환할 수 있다.
인증 서버(1120)는 컴퓨터 단말(1130)로 2차원 바코드 및 암호 입력창을 제공하도록 전송할 수 있다. 사용자 단말(1140)은 컴퓨터 단말(1130)에 출력된 2차원 바코드를 해석할 수 있다. 사용자 단말(1140)은 서버의 공개키로 데이터를 검증하고, 웹 사이트의 정보를 추출하고, 사용자 식별 데이터에 대한 사용자 개인키로 1회용 가상 키보드 생성 규칙을 복호화할 수 있다. 사용자 단말(840)은 1회용 가상 키보드 생성 규칙을 복호화함에 따라 1회용 가상 키보드를 생성할 수 있고, 카메라 미리보기 화면 위에 1회용 가상 키보드를 출력할 수 있다.
컴퓨터 단말(1130)은 사용자 단말(1140)에서 출력된 1회용 가상 키보드의 키값의 위치에 기초하여 암호 입력창에 비밀 번호가 입력될 수 있다. 인증 서버(1120)는 사용자로부터 컴퓨터 단말(1130)을 통하여 입력된 비밀 번호 및 1회용 가상 키보드 배열 규칙을 이용하여 사용자의 비밀 번호를 확인하고, 인증 서버 데이터베이스(1110)에 저장된 비밀 번호와 일치하는지 여부를 판단할 수 있다. 인증 서버(1120)는 사용자로부터 입력된 비밀 번호와 인증 서버 데이터베이스(1110)에 저장된 비밀 번호가 일치하는 경우, 컴퓨터 단말(1130)로 사용자 계정에 접근할 수 있는 권한을 제공할 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (8)

  1. 다중 요소 인증 방법에 있어서,
    사용자 인증을 수행하기 위한 사전 등록 과정이 수행됨에 따라 상기 사용자 인증이 요청됨을 수신하는 단계;
    상기 사용자 인증이 요청됨을 수신함에 따라 1회용 가상 키보드 생성 규칙을 암호화하고, 서버의 정보 및 사용자의 정보를 포함하는 2차원 바코드를 생성하는 단계;
    컴퓨터 단말로 암호 입력창 및 상기 2차원 바코드를 영상 이미지로 제공하는 단계; 및
    사용자 단말로부터 상기 컴퓨터 단말에 출력된 상기 2차원 바코드가 스캔됨에 따라 비밀키를 이용한 데이터 복호화가 수행되고, 상기 1회용 가상 키보드 생성 규칙에 따른 1회용 가상 키보드가 생성되어 상기 사용자 단말에서 증강 현실로 상기 1회용 가상 키보드가 출력됨에 따라 상기 컴퓨터 단말의 암호 입력창에서 상기 사용자 단말에 출력된 1회용 가상 키보드의 키값의 위치에 기초하여 비밀 번호가 입력됨으로써 상기 사용자 인증을 수행하는 단계
    를 포함하고,
    상기 사용자 인증을 수행하기 위한 사전 등록 과정이 수행됨에 따라 상기 사용자 인증이 요청됨을 수신하는 단계는,
    상기 컴퓨터 단말로부터 웹 사이트에 사용자 식별 데이터가 전송되고, 서비스 가입이 요청됨에 따라 비밀 대칭키를 생성하고, 인증 서버 데이터베이스에 상기 사용자 식별 데이터 및 상기 비밀 대칭키를 저장하는 단계;
    상기 웹 사이트의 정보, 상기 사용자 식별 데이터 및 상기 비밀 대칭키를 포함하는 2차원 바코드를 생성하여 상기 컴퓨터 단말로 전송하는 단계; 및
    상기 사용자 단말에서 상기 컴퓨터 단말로 전송된 2차원 바코드를 해석함에 따라 상기 사용자 단말에 상기 웹 사이트의 정보, 상기 사용자 식별 데이터 및 상기 비밀 대칭키가 상기 사용자 단말의 앱에 저장되는 단계
    를 포함하는 다중 요소 인증 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 사용자 인증을 수행하기 위한 사전 등록 과정이 수행됨에 따라 상기 사용자 인증이 요청됨을 수신하는 단계는,
    1회용 가상 키보드 생성 규칙을 생성하여 상기 비밀 대칭키로 암호화를 수행하고, 상기 웹 사이트의 정보 및 상기 사용자 식별 데이터에 대한 정보를 포함하는 2차원 바코드를 생성하는 단계;
    상기 컴퓨터 단말로 암호 입력창 및 상기 2차원 바코드를 제공하는 단계;
    상기 사용자 단말에서 상기 컴퓨터 단말에 출력된 상기 2차원 바코드가 해석됨에 따라 상기 웹 사이트의 정보 및 상기 사용자 식별 데이터가 확인되고, 상기 저장된 비밀 대칭키를 이용하여 상기 1회용 가상 키보드의 생성 규칙을 복호화하는 단계;
    상기 사용자 단말에서 상기 복호화된 생성 규칙을 이용하여 상기 1회용 가상 키보드를 생성하고, 상기 사용자 단말의 카메라 미리보기 화면 상에 상기 가상 키보드를 출력하는 단계; 및
    상기 컴퓨터 단말에서 상기 사용자 단말에 출력된 상기 1회용 가상 키보드의 키값의 위치에 기초하여 사용할 비밀 번호가 입력되고, 상기 인증 서버 데이터베이스에 상기 입력된 비밀 번호와 상기 1회용 가상 키보드 생성 규칙을 이용하여 사용자의 비밀 번호를 확인하여 저장하는 단계
    를 포함하는 다중 요소 인증 방법.
  4. 다중 요소 인증 방법에 있어서,
    사용자 인증을 수행하기 위한 사전 등록 과정이 수행됨에 따라 상기 사용자 인증이 요청됨을 수신하는 단계;
    상기 사용자 인증이 요청됨을 수신함에 따라 1회용 가상 키보드 생성 규칙을 암호화하고, 서버의 정보 및 사용자의 정보를 포함하는 2차원 바코드를 생성하는 단계;
    컴퓨터 단말로 암호 입력창 및 상기 2차원 바코드를 영상 이미지로 제공하는 단계;및
    사용자 단말로부터 상기 컴퓨터 단말에 출력된 상기 2차원 바코드가 스캔됨에 따라 비밀키를 이용한 데이터 복호화가 수행되고, 상기 1회용 가상 키보드 생성 규칙에 따른 1회용 가상 키보드가 생성되어 상기 사용자 단말에서 증강 현실로 상기 1회용 가상 키보드가 출력됨에 따라 상기 컴퓨터 단말의 암호 입력창에서 상기 사용자 단말에 출력된 1회용 가상 키보드의 키값의 위치에 기초하여 비밀 번호가 입력됨으로써 상기 사용자 인증을 수행하는 단계
    를 포함하고,
    상기 사용자 인증을 수행하기 위한 사전 등록 과정이 수행됨에 따라 상기 사용자 인증이 요청됨을 수신하는 단계는,
    상기 컴퓨터 단말로부터 웹 사이트에 사용자 식별 데이터가 전송되고, 서비스 가입이 요청됨에 따라 상기 웹 사이트의 정보, 상기 사용자 식별 데이터, 세션 정보 및 공개키를 포함하는 2차원 바코드를 생성하여 상기 컴퓨터 단말로 전송하는 단계;
    상기 사용자 단말에서 상기 컴퓨터 단말로 전송된 상기 2차원 바코드를 해석함에 따라 상기 사용자의 개인키와 공개키의 쌍이 생성되고, 상기 웹 사이트의 정보, 상기 사용자 식별 데이터 및 상기 웹 사이트의 공개키가 상기 사용자 단말의 앱에 저장되는 단계; 및
    상기 사용자 단말로부터 상기 사용자 식별 데이터 및 상기 사용자의 공개키 및 상기 세션 정보가 전송됨에 따라 상기 사용자 식별 데이터 및 상기 세션 정보를 확인하여 인증 서버 데이터베이스에 저장하는 단계
    를 포함하는 다중 요소 인증 방법.
  5. 제4항에 있어서,
    상기 사용자 인증을 수행하기 위한 사전 등록 과정이 수행됨에 따라 상기 사용자 인증이 요청됨을 수신하는 단계는,
    1회용 가상 키보드 생성 규칙을 생성하여 상기 공개키로 암호화를 수행하고, 상기 웹 사이트의 정보 및 상기 사용자 식별 데이터에 대한 정보를 포함하는 2차원 바코드를 생성하는 단계;
    상기 컴퓨터 단말로 암호 입력창 및 상기 2차원 바코드를 제공하는 단계;
    상기 사용자 단말에서 상기 컴퓨터 단말에 출력된 상기 2차원 바코드가 해석됨에 따라 상기 사용자 단말에서 상기 공개키로 데이터를 검증하고, 상기 웹 사이트의 정보를 추출하고, 상기 사용자 식별 데이터에 대한 상기 사용자의 개인키로 상기 1회용 가상 키보드의 생성 규칙을 복호화하는 단계;
    상기 복호화된 생성 규칙을 이용하여 상기 1회용 가상 키보드를 생성하고, 상기 사용자 단말의 카메라 미리보기 화면 상에 상기 가상 키보드를 출력하는 단계; 및
    상기 컴퓨터 단말에서 상기 사용자 단말에 출력된 상기 1회용 가상 키보드의 키값의 위치에 기초하여 사용할 비밀 번호가 입력되고, 상기 인증 서버 데이터베이스에 상기 입력된 비밀 번호와 상기 1회용 가상 키보드 생성 규칙을 이용하여 사용자의 비밀 번호를 확인하여 저장하는 단계
    를 포함하는 다중 요소 인증 방법.
  6. 다중 요소 인증 방법에 있어서,
    사용자 인증을 수행하기 위한 사전 등록 과정이 수행됨에 따라 상기 사용자 인증이 요청됨을 수신하는 단계;
    상기 사용자 인증이 요청됨을 수신함에 따라 1회용 가상 키보드 생성 규칙을 암호화하고, 서버의 정보 및 사용자의 정보를 포함하는 2차원 바코드를 생성하는 단계;
    컴퓨터 단말로 암호 입력창 및 상기 2차원 바코드를 영상 이미지로 제공하는 단계;및
    사용자 단말로부터 상기 컴퓨터 단말에 출력된 상기 2차원 바코드가 스캔됨에 따라 비밀키를 이용한 데이터 복호화가 수행되고, 상기 1회용 가상 키보드 생성 규칙에 따른 1회용 가상 키보드가 생성되어 상기 사용자 단말에서 증강 현실로 상기 1회용 가상 키보드가 출력됨에 따라 상기 컴퓨터 단말의 암호 입력창에서 상기 사용자 단말에 출력된 1회용 가상 키보드의 키값의 위치에 기초하여 비밀 번호가 입력됨으로써 상기 사용자 인증을 수행하는 단계
    를 포함하고,
    상기 사용자 단말에서 증강 현실로 상기 1회용 가상 키보드가 출력됨에 따라 상기 컴퓨터 단말에서 상기 사용자 단말에 출력된 1회용 가상 키보드의 키값의 위치에 기초하여 비밀 번호가 입력됨으로써 상기 사용자 인증을 수행하는 단계는,
    상기 컴퓨터 단말로부터 상기 1회용 가상 키보드의 배열 규칙에 기초하여 입력된 비밀 번호를 확인하고, 상기 비밀 번호와 인증 서버 데이터베이스에 저장된 비밀 번호가 일치하는지 여부를 판단하는 단계
    를 포함하는 다중 요소 인증 방법.
  7. 제6항에 있어서,
    상기 사용자 단말에서 증강 현실로 상기 1회용 가상 키보드가 출력됨에 따라 상기 컴퓨터 단말에서 상기 사용자 단말에 출력된 1회용 가상 키보드의 키값의 위치에 기초하여 비밀 번호가 입력됨으로써 상기 사용자 인증을 수행하는 단계는,
    상기 인증 서버 데이터베이스에 저장된 비밀 번호와 상기 입력된 비밀 번호를 비교함에 따라 상기 비밀 번호가 일치하는 경우 상기 컴퓨터 단말로 사용자 계정에 접근 권한을 제공하는 단계
    를 포함하는 다중 요소 인증 방법.
  8. 다중 요소 인증 시스템에 있어서,
    사용자 인증을 수행하기 위한 사전 등록 과정이 수행됨에 따라 상기 사용자 인증이 요청됨을 수신하는 수신부;
    상기 사용자 인증이 요청됨을 수신함에 따라 1회용 가상 키보드 생성 규칙을 암호화하고, 서버의 정보 및 사용자의 정보를 포함하는 2차원 바코드를 생성하는 바코드 생성부;
    컴퓨터 단말로 암호 입력창 및 상기 2차원 바코드를 영상 이미지로 제공하는 제공부; 및
    사용자 단말로부터 상기 컴퓨터 단말에 출력된 상기 2차원 바코드가 스캔됨에 따라 비밀키를 이용한 데이터 복호화가 수행되고, 상기 1회용 가상 키보드 생성 규칙에 따른 1회용 가상 키보드가 생성되어 상기 사용자 단말에서 증강 현실로 상기 1회용 가상 키보드가 출력됨에 따라 상기 컴퓨터 단말의 암호 입력창에서 상기 사용자 단말에 출력된 1회용 가상 키보드의 키값의 위치에 기초하여 비밀 번호가 입력됨으로써 상기 사용자 인증을 수행하는 인증 수행부
    를 포함하고,
    상기 수신부는,
    상기 컴퓨터 단말로부터 웹 사이트에 사용자 식별 데이터가 전송되고, 서비스 가입이 요청됨에 따라 비밀 대칭키를 생성하고, 인증 서버 데이터베이스에 상기 사용자 식별 데이터 및 상기 비밀 대칭키를 저장하고, 상기 웹 사이트의 정보, 상기 사용자 식별 데이터 및 상기 비밀 대칭키를 포함하는 2차원 바코드를 생성하여 상기 컴퓨터 단말로 전송하고, 상기 사용자 단말에서 상기 컴퓨터 단말로 전송된 2차원 바코드를 해석함에 따라 상기 사용자 단말에 상기 웹 사이트의 정보, 상기 사용자 식별 데이터 및 상기 비밀 대칭키가 상기 사용자 단말의 앱에 저장되는
    다중 요소 인증 시스템.
KR1020160018906A 2016-02-18 2016-02-18 증강현실을 이용한 다중 요소 인증 방법 및 시스템 KR101740178B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160018906A KR101740178B1 (ko) 2016-02-18 2016-02-18 증강현실을 이용한 다중 요소 인증 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160018906A KR101740178B1 (ko) 2016-02-18 2016-02-18 증강현실을 이용한 다중 요소 인증 방법 및 시스템

Publications (1)

Publication Number Publication Date
KR101740178B1 true KR101740178B1 (ko) 2017-05-25

Family

ID=59050687

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160018906A KR101740178B1 (ko) 2016-02-18 2016-02-18 증강현실을 이용한 다중 요소 인증 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR101740178B1 (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109426721A (zh) * 2017-08-29 2019-03-05 腾讯科技(深圳)有限公司 基于虚拟键盘的安全提示方法和装置
KR20190044838A (ko) 2017-10-23 2019-05-02 동서대학교 산학협력단 융합현실, 가상현실 및 증강현실을 이용한 사용자 인증시스템
KR20190061330A (ko) 2017-11-27 2019-06-05 한국기술교육대학교 산학협력단 영상 촬영 및 마커 기능을 제공하는 증강현실 장치 및 이를 이용한 증강현실 서비스 제공 방법
KR20200088175A (ko) * 2019-01-14 2020-07-22 주식회사 시큐어링크 Otp 기반의 가상키보드를 이용한 보안 방법 및 시스템
KR20200095095A (ko) 2019-01-31 2020-08-10 한국기술교육대학교 산학협력단 증강현실 영상 마커 장치
KR102166621B1 (ko) * 2019-09-10 2020-10-16 (주)헤리티지케이 예술품 인증 방법 및 예술품 인증 시스템

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109426721A (zh) * 2017-08-29 2019-03-05 腾讯科技(深圳)有限公司 基于虚拟键盘的安全提示方法和装置
KR20190044838A (ko) 2017-10-23 2019-05-02 동서대학교 산학협력단 융합현실, 가상현실 및 증강현실을 이용한 사용자 인증시스템
KR20190061330A (ko) 2017-11-27 2019-06-05 한국기술교육대학교 산학협력단 영상 촬영 및 마커 기능을 제공하는 증강현실 장치 및 이를 이용한 증강현실 서비스 제공 방법
KR20200088175A (ko) * 2019-01-14 2020-07-22 주식회사 시큐어링크 Otp 기반의 가상키보드를 이용한 보안 방법 및 시스템
KR102199747B1 (ko) * 2019-01-14 2021-01-07 주식회사 시큐어링크 Otp 기반의 가상키보드를 이용한 보안 방법 및 시스템
KR20200095095A (ko) 2019-01-31 2020-08-10 한국기술교육대학교 산학협력단 증강현실 영상 마커 장치
KR102166621B1 (ko) * 2019-09-10 2020-10-16 (주)헤리티지케이 예술품 인증 방법 및 예술품 인증 시스템

Similar Documents

Publication Publication Date Title
KR101740178B1 (ko) 증강현실을 이용한 다중 요소 인증 방법 및 시스템
US10681025B2 (en) Systems and methods for securely managing biometric data
JP7257561B2 (ja) コンピュータに実装される方法、ホストコンピュータ、コンピュータ読み取り可能な媒体
KR102408761B1 (ko) 비대칭 암호화를 이용하여 otp를 구현하기 위한 시스템 및 방법
CN109598663B (zh) 提供和获取安全身份信息的方法及装置
EP3435591A1 (en) 1:n biometric authentication, encryption, signature system
US10848304B2 (en) Public-private key pair protected password manager
CN105427099A (zh) 安全电子交易的网络认证方法
CN110690956B (zh) 双向认证方法及系统、服务器和终端
US11329824B2 (en) System and method for authenticating a transaction
US20200089867A1 (en) System and method for authentication
KR20200002501A (ko) 퍼블릭 블록체인의 노드 인증 방법과 이를 수행하기 위한 장치 및 시스템
KR101856530B1 (ko) 사용자 인지 기반 암호화 프로토콜을 제공하는 암호화 시스템 및 이를 이용하는 온라인 결제 처리 방법, 보안 장치 및 거래 승인 서버
JP6167667B2 (ja) 認証システム、認証方法、認証プログラムおよび認証装置
KR20110114990A (ko) 키보드 보안 장치 및 방법
KR102561689B1 (ko) 생체 정보 등록 장치 및 방법, 생체 인증 장치 및 방법
KR101708880B1 (ko) 통합 로그인 장치 및 통합 로그인 방법
KR101232860B1 (ko) 하이브리드 인증 시스템 및 그 제공방법
KR102095368B1 (ko) 디지털 인증서 이동 방법
KR102123405B1 (ko) 보안 회원가입 및 로그인 호스팅 서비스 제공 시스템 및 그 방법
KR101226319B1 (ko) 신원 확인 인증 방법 및 이를 이용한 시스템
US20240005820A1 (en) Content encryption and in-place decryption using visually encoded ciphertext
KR101810946B1 (ko) 트러스트 존 기반의 공인인증서를 이용한 전자서명 방법
KR101634785B1 (ko) Mitm 공격 방지 장치 및 방법
KR101334574B1 (ko) 전자 기기간 안전한 통신채널을 생성하는 방법

Legal Events

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