KR102068041B1 - 유저 바이오 데이터를 이용한 유저 인증 및 서명 장치와 방법 - Google Patents
유저 바이오 데이터를 이용한 유저 인증 및 서명 장치와 방법 Download PDFInfo
- Publication number
- KR102068041B1 KR102068041B1 KR1020190060543A KR20190060543A KR102068041B1 KR 102068041 B1 KR102068041 B1 KR 102068041B1 KR 1020190060543 A KR1020190060543 A KR 1020190060543A KR 20190060543 A KR20190060543 A KR 20190060543A KR 102068041 B1 KR102068041 B1 KR 102068041B1
- Authority
- KR
- South Korea
- Prior art keywords
- user
- data
- encryption key
- bio
- authentication
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0866—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
-
- 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
- G06F21/32—User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
-
- 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
- G06F21/33—User authentication using certificates
-
- 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
- G06F21/34—User authentication involving the use of external additional devices, e.g. dongles or smart cards
-
- 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/45—Structures or tools for the administration of authentication
- G06F21/46—Structures or tools for the administration of authentication by designing passwords or checking the strength of passwords
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/041—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction 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/0488—Interaction 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3226—Cryptographic 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/3231—Biological data, e.g. fingerprint, voice or retina
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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 involving digital signatures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Human Computer Interaction (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biodiversity & Conservation Biology (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Collating Specific Patterns (AREA)
Abstract
터치 디스플레이와 컴퓨팅 기능을 구비한 유저 정보 디바이스, 유저 정보 디바이스에 구비된 유저 바이오 입출력 장치를 이용하여 유저의 바이오 데이터를 유저로부터 취득한 후에 유저의 정보 디바이스 메모리에 저장하고 상기 취득, 저장된 유저의 바이오 데이터를 기반으로 유저를 인식하는 유저 바이오 데이터 인식 프로세서를 구비한 유저 정보 디바이스, 상기 유저 정보 디바이스의 터치 디스플레이 상에 표시하기(display) 위한 특정 이미지 데이터를 유저 정보 디바이스에 저장, 관리하는 유저 이미지 데이터 관리 프로세서, 유저 정보 디바이스의 터치 디스플레이 상에 유저 암호키 등록을 요구하는 암호키 등록창 표시 프로세서, 유저 암호키 등록 요구에 답하여 유저 정보 디바이스의 이미지 저장 장치에 저장되어 있는 이미지 데이터 중에서 유저 또는 유저 이미지 데이터 처리 프로세서가 선택한 이미지 데이터를 유저 정보 디바이스의 터치 디스플레이 상에 업로드하여 표시하는 유저 등록용 암호키 이미지 업로드 프로세서, 유저 등록용 암호키 이미지 업로드 프로세서에 의하여 유저 정보 디바이스의 터치 디스플레이 상에 표시된 이미지 데이터 상의 특정 위치 픽셀을 유저가 터치 지정하여 유저 등록용 암호키 생성 데이터를 취득하는 유저 등록용 암호키 생성 데이터 취득 프로세서, 유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터 또는 유저 등록용 암호키 생성 데이터 취득 프로세서가 취득한 유저 등록용 암호키 생성 데이터를 이용하여 암호화하고 유저 등록용 암호키로 생성하는 유저 등록용 암호키 생성 프로세서를 구비하고, 유저 등록용 암호키 생성 이미지 업로드 프로세서에 의해 유저 정보 디바이스의 터치 디스플레이 상에 표시된 이미지 데이터 상의 특정 위치 픽셀을 유저가 터치 지정하여 유저 등록용 암호키 생성 데이터를 취득하는 유저 등록용 암호키 생성 데이터 취득 프로세서는 (a) 유저의 바이오 데이터를 유저로부터 바이오 데이터 입출력 장치를 이용, 다시 취득하여 이미 취득, 저장되어 있는 유저의 바이오 데이터와 비교하여 동일 유저임을 확인하는 유저 인식 처리를 실시한 후에, 터치 픽셀의 좌표값 및 터치 픽셀의 컬러값을 취득 처리하는 유저 등록용 암호키 생성 데이터 취득 프로세서, 또는 (b) 유저의 바이오 데이터를 유저로부터 바이오 데이터 입출력 장치를 이용, 다시 취득하여 상기 이미 취득, 저장되어 있는 유저의 바이오 데이터와 비교하여 동일 유저임을 확인하는 인식 처리와 동시에 병행하여 터치 픽셀의 좌표값 및 터치 픽셀의 컬러값을 취득 처리하는 유저 등록용 암호키 생성 데이터 취득 프로세서 중에서 적어도 하나의 프로세서를 포함하는 것을 특징으로 하는 유저 바이오 데이터를 이용한 유저 인증 및 서명 장치가 제공된다.
Description
본 발명은 스마트폰과 같이 터치 디스플레이를 구비한 정보기기 또는 데스크 탑 PC, 노트 북, 테브릿 PC, CCTV, IoT, 자율 자동차, 드론 등을 포함하는 다양한 유저 정보 디바이스와 네트워크를 이용하는 비즈니스 서비스에서 제공할 수 있는 유저 인증과 서명 장치 및 방법에 관한 것이다.
보다 상세하게는, 본 발명은 다양한 정보기기가 클라이언트-서버 또는 peer-to-peer 모델 네트워크 환경에서 서비스되는 다양한 웹 기반(web-based) 그리고 특정 플랫폼에서 실시되는 앱 기반(app-based) 비지니스에서 제공해야 할 유저 인증을 위한 암호키/패스워드의 생성 및 검증 시스템으로 보다 간편하며 비밀성, 안전성을 보장하는 유저 인증 및 디지털 서명 장치와 방법에 관한 것이다.
미래 기술로 일컬어지고 있는 IoT(Internet of Things), 자율 자동차(self driving car), 드론(drone) 등의 장치, 장비 그리고 서비스 기술에서 가장 중요한 기술 분야는 '시큐리티 문제'이다.
특히 수많은 사물이 접속되어 처리되는 IoT에서는 시큐리티 기술이 더욱 중요시되고 있다. 그 중에서 유저 인증을 위한 핵심 기술인 패스워드는 은닉 용이성, 기밀성, 안전성, 사용의 간편성이 더욱 강화되고, 더불어 디지털 서명 기능 등이 제공되는 기술이 절실하게 요구되고 있다.
일반적으로 유저/소유자 인증 방법에는 아이디(ID, IDentification)/패스워드(PW, PassWord), 개인 식별번호 등을 이용한다. 아이디/패스워드 방법은 저비용이나 보안성에서는 취약하다. 예를 들면, 유저/소유자가 문자, 숫자, 기호 등을 조합하여 만드는 유저/소유자의 패스워드는 길이가 짧고 기억하기 쉬운 패턴 형태를 선호한다. 이와 같은 패스워드는 타인이 예측 가능하여 도용이 용이할 수 있다. 반대로, 도용 방지를 위하여 패스워드를 복잡하고 긴 문자, 숫자, 기호 등의 조합열로 생성할 경우, 유저/소유자는 기억하기가 어려워 종이, USB, 또는 다른 저장 미디어에 백업 저장하여 필요할 때 이용한다. 그러나, 이와 같은 수단도 해킹 또는 도난 등으로 패스워드의 도용 위험성이 높다.
최근의 리포트 자료(www.fidoalliance.org)에 따르면 현재 가장 많이 통용되는 패스워드 인증 방식에는 심각한 문제가 있음을 알 수 있다. 구체적으로, 최근의 리포트 자료에 의하면, 데이터 누설의 80% 이상이 패스워드에 원인이 있고(password are the root cause of over 80% of data breaches), 유저의 90% 이상이 온라인 계정을 가지고 있으며(users have more than 90 online accounts), 패스워드의 51% 이상이 다시 사용되고 있고(up to 51% of passwords are reused), 온라인 쇼핑의 1/3이 패스워드를 기억하지 못해 거래를 포기하며(1/3 of online purchases abandoned due to forgotten passwords), 하나의 패스워드를 다시 설정 유지하는 사무 비용이 평균 $70가 소요된다($70: average help desk labor cost for a single password reset)는 문제가 있다.
한편, 디지털 서명(digital signature) 기능이란 유저 인증 정보 또는 메시지 송신자와 수신자 사이에서 주고 받는 유저 인증 정보 또는 메시지에 대하여 제3자에 의한 위조, 변조된 것이 아닌지를 탐지하고, 제3자의 위장 행세로 인한 유저 인증 정보 또는 메시지 탈취 여부의 검출, 주고 받은 유저 인증 정보 또는 메시지 송수신에 대한 사후의 부인 방지(nonrepudiation)를 목적으로 구현되는 기술을 말한다.
또한, 인간의 바이오 데이터(biometrics), 즉 지문, 홍채, 얼굴, 정맥, 음성 인식 기술을 이용하여, 유저 인증 수단 또는 디지털 서명 기능을 대체할 수 있다. 즉, 송신하는 유저 인증 정보 또는 메시지에 송신자의 바이오 정보를 부가, 송신하여, 수신자가 보관한 송신자의 바이오 정보와 비교하면 송신자의 유저 인증과 서명 기능을 동시에 실현할 수 있다. 인간의 바이오 정보를 유저 인증 또는 서명 정보로 이용할 경우, 보안성은 높고 이용하기는 편리하다. 그러나, 제3자에게 제공되는 바이오 정보가 변형 없이 도난 유출되면 교환 변경 등이 불가능하여 치명적이다. 또한, 바이오 정보의 제공에는 개인 정보 유출이라는 법률적 제약이 있어 타인, 즉 제3자에 의한 바이오 정보 관리는 결코 바람직하지 않다. 왜냐하면, 바이오 정보는 한번 유출되면 다시 발급할 수가 없고, 영구적으로 악용될 가능성이 크기 때문이다.
한편, 기존의 패스워드 방식을 바꾸고 유저의 바이오 데이터를 통해 유저 인증을 실현하는 국제 표준 규격(protocol) 기술이 FIDO(Fast IDentity Online) Alliance에서 만들어지고 있다. FIDO Alliance는 보다 편리하고 안전한 인증 시스템을 공동 구축하고 인증 시스템에 대한 기술 표준을 제시하는 역할을 수행하는 연합체로, 2012년 여름 결성하여 2013년 2월 정식 출범하였으며 2014년 12월에 FIDO1.0을 발표하였고, 2019년에는 FIDO Allience와 W3C(World Widw Web Consortiun)이 협동하여 FIDO2.0을 세계 표준으로 결정하고 적극 보급 중이다. FIDO2.0는 모바일(앱) 중심 바이오 데이터(biometrics) 인증 표준인 FIDO1.0과 달리 모바일을 포함한 PC, IoT 기기 등의 다양한 환경에서 사용할 수 있도록 확장한 것이다.
FIDO는 스마트폰 등의 인증장치(예를 들면, 지문인식장치 등)를 이용하여 정보를 수집한 후, 인증자(authenticator)를 통해 인증 결과 값을 생성하여 서버로 전송하고, 서버에서 인증 결과 값을 검증하는 차세대 인증 기술로서 주목 받고 있다.
FIDO 1.0과 FIDO 2.0은 모바일 기반의 UAF와 웹 기반의 U2F의 두 가지 인증 표준을 통해 이루어진다. UAF(Universal Authentication Factor)는 지문, 음성, 얼굴 인식 등의 사용자 고유 생체 정보(biometrics information)를 인식하여 인증하는 모바일 중심의 인증 방식으로, 스마트폰 등 사용자 단말기의 생체 정보를 이용하여 사용자를 인증한 후, 비 대칭키 쌍(개인키, 공개키)을 생성하고 서비스 제공 서버에 공개키를 등록하여 원격 인증을 수행한다. 또한, U2F(Universal 2nd Factor)는 아이디, 비밀번호 방식으로 1차 인증 후 1회용 보안키가 저장된 USB 또는 스마트카드를 이용하여 2차 인증하는 PC 중심의 인증 방식이다.
한편, 비트코인 등과 같은 암호 화폐를 기반으로 하는 비즈니스에서는 암호화폐의 소유자가 스스로 해야 할 비밀키의 설정, 보관 관리가 무엇보다 중요하다. 즉, 비밀키를 분실하거나 해킹 등에 의해 탈취당했을 경우, 동일한 비밀키의 재생성이 불가능하여 암호화폐의 소유권이 상실되고 비트코인의 모든 재화는 영원히 사라지는 위험이 상존한다.
비밀키는 무작위로 선택된 수치 또는 문자의 조합으로 이루어진다. 비밀키를 소유하고 지배하는 자가 암호화폐 어드레스와 연계된 모든 자금을 소유하고 지배하는 자가 된다. 비밀키는 암호화폐 소유자의 서명 생성에 사용되고 암호화폐의 자금은 반드시 상기 서명에 의해서 자금 사용권리가 주어지므로, 암호화폐 소유자의 비밀키와 관련하는 기술 구성은 암호화폐 구성 기술에서 핵심 기술 요소이다.
또한, 현재 널리 쓰이고 있는 디지털 서명 기술은 '공개키 암호 방식'과 유사한 기술을 기반으로 한다. 메시지와 디지털 서명을 수신자에게 보내면 수신자는 송신자의 공개키로 암호문(서명)을 복호화한다. 복호화된 메시지와 수신한 메시지가 일치하면 '송신자의 인증'과 '송신자의 부인 방지'의 확인이 가능해지므로 이와 같은 기능을 일컬어 '디지털 서명 방식'이라고 한다.
이러한 디지털 서명 방식에도 문제가 있다. 즉, 복호화를 위해서 제공되는 공개키가 송신자가 보낸 공개키와 제3자의 위장으로 인하여 일치하지 않을 경우, 송신자의 인증은 물론 부인 방지 확인은 실패한다. 이러한 위험을 없게 하기 위하여 제안된 기술이 '디지털 증명서, 공인 인증서' 방식이다.
디지털 증명서, 공인 인증서 방식이란 '보증국 (CA:Certification Authority)'이라는 제3의 기관을 설립해두고, 자신의 비밀키 또는 공개키를 보증국에 등록한 후, 자신의 비밀키 또는 공개키에 대한 증명서 발행을 의뢰하여 발행된 인증서로 비밀키 또는 공개키가 공증된 정보로 활용하는 인프라 방식이다. 이 디지털 증명서, 즉 공인 인증서 방식 또한, 제3의 보증국의 설립, 유지 비용 등의 경제적 부담이 있고, 유저/소유자의 사용성에서 크게 떨어지는 방식이다.
본 발명이 해결하고자 하는 과제는 배경 기술에 기재한 다양한 용도, 즉 IoT, 가상 화폐 유통 플랫폼 등 모든 어플리케이션 서비스에서 기밀성, 안전성을 보증하는 유저 인증 및 디지털 서명 기능을 제공하면서, 유저 또는 소유자가 쉽게 만들고 관리가 편하며 기억 부담이 적은 패스워드 또는 암호키를 생성하는 기술을 제공하는 것이다. 또한, 생성된 패스워드 또는 암호키에 의한 유저 인증 및 서명을 바이오 정보로 제어하여, 보다 빠르고 경제적인 유저 인증과 서명 기능을 동시에 제공하는 장치 및 방법을 제공하는데 있다.
또한, 본 발명이 해결하고자 하는 과제는 유저 바이오 데이터를 사용하는 FIDO의 표준 스펙 및 프로토콜에 의한 유저 인증 및 서명 방법보다 쉽고 빠르며, 웹 어플리케이션 서비스 등에서 인간의 바이오 정보를 유저 서명 정보로 이용하는 경우, 바이오 정보를 제3자에게 제공하면서도 도용 등의 위험에서 안전한 유저 인증과 디지털 서명 기능을 동시에 서비스 장치에 제공하는 장치 및 방법을 제공하는데 있다.
또한, 본 발명이 해결하고자 하는 과제는 다양한 용도에 활용할 수 있으면서 인증국 등의 제 3의 기관의 개입 또는 보증 없이도 비밀성, 안전성을 보증하는 디지털 서명과 인증 기능이 내재된 경제적 운용이 가능한 디지털 서명 장치와 방법을 제공하는데 있다.
통상의 유저 인증 및 서명 장치는 유저의 암호키를 등록하고 등록된 암호키(패스워드)에 대한 인증 수단을 반드시 포함하고 있고, 디지털 서명을 위한 장치 또는 수단을 구비하고 있다.
따라서, 상술한 과제를 해결하기 위한 터치 디스플레이의 유저의 터치 데이터 및 유저 바이오 데이터에 의한 유저 인식 장치를 이용하는 본 발명의 유저 인증 및 서명 장치에서, 유저가 유저의 암호키를 설정, 등록하는 장치의 구성은 터치 디스플레이와 컴퓨팅 기능을 구비한 유저 정보 디바이스, 상기 유저 정보 디바이스에 구비된 유저 바이오 입출력 장치를 이용하여 유저의 바이오 데이터를 유저로부터 취득한 후에 유저의 정보 디바이스 메모리에 저장하고, 상기 취득, 저장된 유저의 바이오 데이터를 기반으로 유저를 인식하는 유저 바이오 데이터 인식 프로세서를 구비한 유저 정보 디바이스, 상기 유저 정보 디바이스의 터치 디스플레이 상에 표시하기(display) 위한 특정 이미지 데이터를 상기 유저 정보 디바이스에 저장, 관리하는 유저 이미지 데이터 관리 프로세서, 상기 유저 정보 디바이스의 터치 디스플레이 상에 유저 암호키 등록을 요구하는 암호키 등록창 표시 프로세서, 유저 암호키 등록 요구에 답하여 유저 정보 디바이스의 이미지 저장 장치에 저장되어 있는 이미지 데이터 중에서 유저 또는 상기 유저 이미지 데이터 관리 프로세서가 선택한 이미지 데이터를 상기 유저 정보 디바이스의 터치 디스플레이 상에 업로드하여 표시하는 유저 등록용 암호키 생성 이미지 업로드 프로세서, 상기 유저 등록용 암호키 생성 이미지 업로드 프로세서에 의하여 유저 정보 디바이스의 터치 디스플레이 상에 표시된 이미지 데이터 상의 특정 위치 픽셀을 유저가 터치 지정하여 유저의 등록용 암호키 생성 데이터를 취득하는 유저 등록용 암호키 생성 데이터 취득 프로세서, 유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 상기 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터 또는 유저 등록용 암호키 데이터 취득 프로세서가 취득한 유저 등록용 암호키 데이터를 암호화하여 유저 등록용 암호키로 생성하는 유저 등록용 암호키 생성 프로세서를 구비하고, 상기 유저 등록용 암호키 이미지 업로드 프로세서에 의해 상기 유저 정보 디바이스의 터치 디스플레이 상에 표시된 이미지 데이터 상의 특정 위치 픽셀을 유저가 터치 지정하여 유저 등록용 암호키 데이터를 취득하는 유저 등록용 암호키 생성 데이터 취득 프로세서는 (a) 상기 유저의 바이오 데이터를 유저로부터 상기 바이오 데이터 입출력 장치를 이용, 다시 취득하여 상기 이미 취득, 저장되어 있는 유저의 바이오 데이터와 비교하여 동일 유저임을 확인하는 유저 인식 처리를 실시한 후에, 터치 픽셀의 좌표값 및 터치 픽셀의 컬러값을 취득 처리하는 유저 등록용 암호키 생성 데이터 취득 프로세서 또는 (b) 상기 유저의 바이오 데이터를 유저로부터 상기 바이오 데이터 입출력 장치를 이용, 다시 취득하여 상기 이미 취득, 저장되어 있는 유저의 바이오 데이터와 비교하여 동일 유저임을 확인하는 인식 처리와 동시에 병행하여 상기 터치 픽셀의 좌표값 및 상기 터치 픽셀의 컬러값을 취득 처리하는 유저 등록용 암호키 생성 데이터 취득 프로세서 중에서 적어도 하나의 프로세서를 포함하여 이루어진다.
또한, 유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 상기 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터 또는 상기 유저 등록용 암호키 생성 데이터 취득 프로세서에 의해 취득한 유저 등록용 암호키 생성 데이터를 암호화하여 유저 등록용 암호키를 생성하는 유저 등록용 암호키 생성 프로세서는 (a) 상기 터치 픽셀의 좌표값, 상기 터치 픽셀의 컬러값 또는 유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터 중에서, 적어도 하나 이상을 선택하여 각각 암호화를 먼저 실행한 후, 암호화된 각각의 데이터를 하나로 결합한 데이터, 하나 이상의 암호화된 데이터와 암호화되지 않은 데이터를 하나로 결합한 데이터, 또는 상기 하나로 결합한 데이터를 다시 암호화한 데이터 중에서 어느 하나를 상기 유저 등록용 암호키로 생성하는 유저 등록용 암호키 생성 프로세서 (b) 상기 터치 픽셀의 좌표값, 상기 터치 픽셀의 컬러값 또는 유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터 중에서, 적어도 2개 이상의 데이터를 먼저 하나로 결합한 후에 암호화를 실행한 후에 암호화된 데이터, 상기 적어도 2개 이상의 데이터를 하나로 결합하여 암호화한 데이터와 암호화가 되지 않은 데이터를 하나로 결합한 데이터 또는 상기 결합한 데이터를 다시 암호화한 데이터 중에서 어느 하나를 상기 유저 등록용 암호키로 생성하는 유저 등록용 암호키 생성 프로세서 중에서 하나를 포함하는 것으로 이루어진다.
또한, 유저 인증 및 서명 장치는 터치 디스플레이와 컴퓨팅 기능을 구비한 유저의 정보 디바이스, 상기 유저 정보 디바이스에 구비된 유저 바이오 입출력 장치를 이용하여 유저의 바이오 데이터를 유저로부터 취득한 후에 유저의 정보 디바이스 메모리에 저장하고 상기 취득, 저장된 유저의 바이오 데이터를 기반으로 유저를 인식하는 유저 바이오 데이터 인식 프로세서를 구비한 유저 정보 디바이스, 상기 유저 정보 디바이스의 터치 디스플레이 상에 표시하기(display) 위한 특정 이미지 데이터를 상기 유저 정보 디바이스에 저장, 관리하는 유저 이미지 데이터 관리 프로세서, 상기 유저 정보 디바이스의 터치 디스플레이 상에 유저 암호키 인증을 요구하는 암호키 입력창을 표시하는 프로세서, 유저 암호키 인증 요구에 답하여, 상기 유저 정보 디바이스의 이미지 저장 장치에 저장되어 있는 이미지 데이터 중에서 유저 또는 상기 유저 이미지 데이터 처리 프로세서가 유저 등록용 암호키 용으로 선택한 이미지 데이터를 상기 유저 정보 디바이스의 터치 디스플레이 상에 다시 업로드하여 표시하는 유저 인증용 암호키 생성 이미지 업로드 프로세서, 유저가 다시 표시된 이미지 데이터 상에서 유저 암호키 등록 시에 터치 지정하였던 동일 위치의 픽셀을 다시 상기하여 재터치하면, 유저 인증용 암호키 생성 데이터를 취득하는 유저 인증용 암호키 생성 데이터 취득 프로세서, 상기 유저 인증용 암호키 생성 데이터 취득 프로세서가 취득한 유저 인증용 암호키 생성 데이터를 암호화하여 유저 인증용 암호키를 생성하는 유저 인증용 암호키 생성 프로세서, 상기 유저 인증용 암호키 생성 프로세서가 다시 생성한 암호키와 상기 유저 정보 디바이스 또는 유저 암호키 인증을 요구하는 기기 내에 이미 저장되어 있는 암호키를 비교, 판정하는 유저 등록 암호키 인증 프로세서를 구비하고, 상기 유저 인증용 암호키 생성 이미지 업로드 프로세서에 의해 다시 표시된 상기 이미지 데이터 상에서 유저가 유저 암호키 생성 시에 터치 지정하였던 동일 위치의 픽셀을 다시 상기하여 재터치하면, 유저 인증용 암호키 생성 데이터를 취득하는 유저 인증용 암호키 생성 데이터 취득 프로세서는 (a) 유저의 바이오 데이터를 유저로부터 바이오 데이터 입출력 장치를 이용, 다시 취득하여 상기 이미 취득, 저장되어 있는 유저의 바이오 데이터와 비교하여 동일 유저임을 확인한 후에, 상기 다시 표시된 이미지 데이터 상에서 유저가 상기 유저 암호키 생성 시에 터치 지정하였던 동일 위치의 픽셀을 다시 상기하여 재터치하면, 재터치 픽셀의 좌표값 및 재터치 픽셀의 컬러값을 취득하는 프로세서, 또는 (b) 상기 다시 표시된 이미지 데이터 상에서 유저가 상기 유저 암호키 등록 시에 터치 지정하였던 동일 위치의 픽셀을 다시 상기하여 재터치하면, 상기 유저의 바이오 데이터를 다시 취득하여 상기 유저 바이오 데이터 인식 프로세서에 의해 저장되어 있는 유저의 바이오 데이터와 비교하는 처리와 동시에 병행하여 재터치 픽셀의 좌표값 및 재터치 픽셀의 컬러값을 취득하는 프로세서 중에서 하나를 포함하는 것으로 이루어진다.
다시 취득한 유저의 터치 데이터와, 저장된 유저의 바이오 데이터를 암호화하여 유저 인증용 암호키로 생성하는 유저 인증용 암호키 생성 프로세서는 (a) 상기 재터치 픽셀의 좌표값, 상기 재터치 픽셀의 컬러값 또는 유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터 중에서, 적어도 하나 이상을 선택하여 각각 암호화를 먼저 실행한 후, 암호화된 각각의 데이터를 하나로 결합한 데이터, 하나 이상의 암호화된 데이터와 암호화되지 않은 데이터를 하나로 결합한 데이터, 또는 상기 하나로 결합한 데이터를 다시 암호화한 데이터 중에서 어느 하나를 상기 유저 인증용 암호키로 생성하는 유저 인증용 암호키 생성 프로세서 (b) 상기 재터치 픽셀의 좌표값, 상기 재터치 픽셀의 컬러값 또는 유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터 중에서 적어도 2개 이상의 데이터를 먼저 하나로 결합한 후에 암호화를 실행한 후, 암호화된 데이터, 하나로 결합하여 암호화한 데이터와 암호화 안된 데이터를 하나로 결합한 데이터 또는 상기 결합한 데이터를 다시 암호화한 데이터 중에서 어느 하나를 상기 유저 인증용 암호키로 생성하는 유저 인증용 암호키 생성 프로세서 중에서 하나를 포함하는 것으로 이루어진다.
또한, 유저 인증 및 서명 방법은 유저의 바이오 데이터 정보를 유저로부터 유저 정보 디바이스의 바이오 데이터 입출력 장치를 이용, 취득한 후, 상기 유저 정보 디바이스의 유저 바이오 데이터 프로세서 내의 메모리 디바이스에 저장하는 단계, 유저로부터 암호키(패스워드) 등록 요구를 수신하는 단계, 암호키 등록 요구에 답하여, 상기 유저 정보 디바이스의 이미지 저장 장치에 저장되어 있는 이미지 데이터 중에서, 유저 또는 이미지 데이터 처리 프로세서가 선택한 이미지 데이터를 상기 유저 정보 디바이스의 터치 디스플레이 상에 업로드하여 표시하는 단계, 상기 유저 정보 디바이스의 터치 디스플레이 상에 표시된 이미지 데이터 상의 특정 위치의 픽셀을 유저가 터치 지정하면, 터치 픽셀의 좌표값 및 터치 픽셀의 컬러값을 유저 등록용 암호키 생성 데이터로 취득하는 단계, 상기 터치 픽셀의 좌표값 및 상기 터치 픽셀의 컬러값, 또는 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터를 조합하여 암호화하고 유저 등록용 암호키로 생성하는 단계를 포함하고, 상기 유저 정보 디바이스의 터치 디스플레이 상에 표시된 이미지 데이터 상의 특정 위치의 픽셀을 유저가 터치 지정하면, 상기 터치 픽셀의 좌표값 및 상기 터치 픽셀의 컬러값을 유저 등록용 암호키 생성 데이터로 취득하는 단계는 (a) 상기 유저의 바이오 데이터를 유저로부터 바이오 데이터 입출력 장치를 이용, 다시 취득하여 상기 이미 취득, 저장되어 있는 유저의 바이오 데이터와 비교하여 동일 유저임을 확인한 후에, 상기 터치 픽셀의 좌표값 및 상기 터치 픽셀의 컬러값을 취득하는 단계; 또는 (b) 상기 유저의 바이오 데이터를 다시 취득하여 유저 바이오 데이터 검증 프로세서에 의해 저장되어 있는 유저의 바이오 데이터와 비교하는 처리와 동시에 병행하여 상기 터치 픽셀의 좌표값 및 상기 픽셀의 컬러값을 취득하는 단계 중에서 적어도 하나의 단계를 포함하는 것으로 이루어진다.
한편, 상기 터치 픽셀의 좌표값 및 상기 터치 픽셀의 컬러값, 또는 상기 저장된 유저의 바이오 데이터를 조합하여 암호화하고 유저 등록용 암호키로 생성하는 단계는 (a) 상기 터치 픽셀의 좌표값, 상기 터치 픽셀의 컬러값 또는 유저로부터 상기 바이오 데이터 입출력 장치를 이용, 취득하여 상기 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터 중에서, 적어도 하나 이상을 선택하여 각각 암호화를 먼저 실행한 후, 암호화된 각각의 데이터를 하나로 결합한 데이터, 하나 이상의 암호화된 데이터와 암호화되지 않은 데이터를 하나로 결합한 데이터, 또는 상기 하나로 결합한 데이터를 다시 암호화한 데이터 중에서 어느 하나를 상기 유저 등록용 암호키로 생성하는 단계 또는 (b) 상기 터치 픽셀의 좌표값, 상기 터치 픽셀의 컬러값 또는 유저로부터 상기 바이오 데이터 입출력 장치를 이용, 취득하여 상기 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터 중에서, 적어도 2개 이상의 데이터를 먼저 하나로 결합한 후에 암호화를 실행한 후에 암호화된 데이터, 상기 적어도 2개 이상의 데이터를 하나로 결합하여 암호화한 데이터와 암호화가 되지 않은 데이터를 하나로 결합한 데이터 또는 상기 결합한 데이터를 다시 암호화한 데이터 중에서 어느 하나를 상기 유저 등록용 암호키로 생성하는 단계 중에서 하나를 포함하는 것으로 이루어진다.
또한, 유저 인증 및 서명 방법은 등록되어 있는 유저 암호키에 대한 인증 요구를 수신하는 단계, 유저 암호키 인증 요구에 답하여, 유저 정보 디바이스의 이미지 저장 장치에 저장되어 있는 이미지 데이터 중에서, 유저 또는 이미지 데이터 처리 프로세서가 유저 등록용 암호키 용으로 선택한 이미지 데이터를 상기 유저 정보 디바이스의 터치 디스플레이 상에 다시 업로드하여 표시하는 단계, 유저가 다시 표시된 이미지 데이터 상에서 유저 암호키 등록 시에 터치 지정하였던 동일 위치의 픽셀을 다시 상기하여 재터치하면, 유저 인증용 암호키 생성 데이터를 취득하는 단계, 상기 유저 인증용 암호키 생성 데이터를 암호화하여 유저 인증용 암호키로 생성하는 단계, 유저 인증용 암호키 생성 프로세서가 다시 생성한 암호키와 상기 유저 정보 디바이스 또는 유저 암호키 인증을 요구하는 기기 내에 등록되어 있는 암호키를 비교, 판정하는 단계를 포함하고, 상기 다시 표시된 이미지 데이터 상에서 유저가 유저 암호키 생성 시에 터치 지정하였던 동일 위치의 픽셀을 다시 상기하고 재터치하면, 유저 인증용 암호키 생성 데이터를 취득하는 단계는 (a) 유저의 바이오 데이터를 유저로부터 바이오 데이터 입출력 장치를 이용, 다시 취득하여 상기 이미 취득, 저장되어 있는 유저의 바이오 데이터와 비교하여 동일 유저임을 확인한 후에, 상기 다시 표시된 이미지 데이터 상에서 유저가 상기 유저 암호키 생성 시에 터치 지정하였던 동일 위치의 픽셀을 다시 상기하고 재 터치하면, 재터치 픽셀의 좌표값 및 재터치 픽셀의 컬러값을 취득하는 단계 또는 (b) 상기 다시 표시된 이미지 데이터 상에서 유저가 상기 유저 암호키 등록 시에 터치 지정하였던 동일 위치의 픽셀을 다시 상기하여 재터치하면, 상기 유저의 바이오 데이터를 다시 취득하여 유저 바이오 데이터 인식 프로세서에 의해 저장되어 있는 유저의 바이오 데이터와 비교하는 처리와 동시에 병행하여 재터치 픽셀의 좌표값 및 재터치 픽셀의 컬러값을 취득하는 단계 중에서 하나를 포함하는 것으로 이루어진다.
또한, 상기 재터치 픽셀의 좌표값 및 상기 재터치 픽셀의 컬러값, 또는 저장된 유저의 바이오 데이터 정보를 다시 암호화하여 상기 유저 인증용 암호키로 생성하는 단계는 (a) 상기 재터치 픽셀의 좌표값, 상기 재터치 픽셀의 컬러값 또는 유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터 중에서, 적어도 하나 이상을 선택하여 각각 암호화를 먼저 실행한 후, 암호화된 각각의 데이터를 하나로 결합한 데이터, 하나 이상의 암호화된 데이터와 암호화되지 않은 데이터를 하나로 결합한 데이터, 또는 상기 하나로 결합한 데이터를 다시 암호화한 데이터 중에서 어느 하나를 상기 유저 인증용 암호키로 생성하는 단계, 또는 (b) 상기 재터치 픽셀의 좌표값, 상기 재터치 픽셀의 컬러값 또는 유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터 중에서, 적어도 2개 이상의 데이터를 먼저 하나로 결합한 후에 암호화를 실행한 후에 암호화된 데이터, 하나로 결합하여 암호화한 데이터와 암호화가 되지 않은 데이터를 하나로 결합한 데이터 또는 상기 결합한 데이터를 다시 암호화한 데이터 중에서 어느 하나를 상기 유저 인증용 암호키로 생성하는 단계 중에서 하나를 포함하는 것으로 이루어진다.
한편, 획득된 터치 픽셀의 좌표값, 터치 픽셀의 컬러값 또는 상기 유저의 바이오 데이터를 암호화하여 상기 유저 등록용 암호키로 생성하는 것은 일방향 해쉬 함수(one-way hash function) 또는 타원 곡선 방정식(elliptic curve equation)을 이용하여 암호화하고 암호키화할 수 있는 것으로 이루어진다.
또한, 다시 획득된 동일 터치점의 대표 픽셀의 좌표값, 대표 픽셀 컬러값 또는 상기 저장된 유저의 바이오 데이터를 다시 암호화하여 유저 인증용 암호키로 생성하는 것은 일방향 해쉬 함수(one-way hash function) 또는 타원 곡선 방정식(elliptic curve equation)을 이용하여 암호화하고 암호키화할 수 있는 것으로 이루어진다.
본 발명에 따르면, 세계 표준인 FIDO1.0 및 FIDO2.0 스팩과 프로토콜에 따른 유저 인증 및 서명 장치 및 방법보다 간편하고, 안전하며, 보다 강력한 기밀성을 가진 유저 인증 및 서명 장치 및 방법을 제공할 수 있다.
또한, 본 발명에 따르면, 유저의 고유한 3대 인증 정보를 기반으로 하는 유저 인증 및 서명 시스템을 제공할 수 있다. 구체적으로, 유저의 지식 정보, 소유 정보 및 바이오 정보를 기반으로 한 유저 인증 및 서명 시스템을 통해, FIDO 표준 규격 및 프로토콜과는 달리 서명 시스템이 없고, 유저 고유의 개인정보인 유저 바이오 정보를 제3자의 서비스 장치에 제공한다 해도 도용의 위험성이 없으며, 또한 분실에도 불구하고 제3자에게는 무용 지물의 데이터에 불과하여 유저 바이오 정보를 안심하고 이용할 수 있는 새로운 생태계의 유저 인증 및 서명 장치를 제공할 수 있다.
또한, 본 발명에 따르면, 암호키를 다른 장치 등에 저장할 필요가 없이 암호키 생성 과정만 기억해 두면 동일한 방법으로 여러 기기 및 서비스에서 안전하게 하나의 패스워드로 언제나 손쉬운 유저 인증 및 서명 방식을 제공할 수 있다.
또한, 본 발명에 따르면, 기억 부담이 적고 은닉성이 높은 유저의 암호키를 유저의 특정 사진/이미지를 이용하여 간편하게 생성할 수 있고, 유저의 바이오 데이터를 함께 이용하여 IoT, 암호화폐 유통 또는 다양한 용도의 어플리케이션 서비스에서 비밀성, 안전성, 재현성이 뛰어난 유저 인증 및 서명 통합 장치를 제공할 수 있다.
또한, 본 발명에 따르면, 암호키(개인키/공개키)를 생성하기 위해 난수 발생기 등과 같은 다른 툴의 제공이 불필요하여, 경제적인 유저 인증 및 서명 장치를 제공할 수 있다.
또한, 본 발명에 따르면, 기존의 FIDO 표준 방식의 유저 인증자인 유저의 바이오 데이터에 유저의 이미지/사진을 부가하여 다중 모달(Multimodal) 인증자로 하면 유저 편의성을 더욱 높일 수 있고, 또한 현행 FIDO 표준의 디지털 서명 방식인 공개키 서명 방식에 다중모달 인증자를 부가하면 FIDO 표준의 변경없이 보다 강력한 유저 서명 방식을 제공할 수도 있다.
도 1은 본 발명의 일 실시예에 따른 유저 인증 및 서명 장치가 실시되는 네트워크 모델의 예시도이다.
도 2는 유저의 바이오 데이터 처리를 나타내는 예시도이다.
도 3은 본 발명의 일 실시예에 따른 유저 인증 및 서명 장치의 예시도이다.
도 4는 본 발명의 일 실시예에 따른 유저 이미지 데이터 관리 프로세서의 실시예이다.
도 5는 본 발명의 일 실시예에 따른 유저 인증 및 서명 장치에 의해 유저의 암호키가 등록되는 과정의 흐름도이다.
도 6은 특정 어플리케이션에서 유저 암호키 등록을 요구하는 암호키 입력창의 예시도이다.
도 7은 유저 암호키 등록 요구에 답하여, 터치 디스플레이에 유저의 이미지를 업로드하는 실시예이다.
도 8은 이미지 상에서 터치 픽셀의 데이터를 취득하는 실시예를 나타내는 도면이다.
도 9는 유저의 인증을 위해 유저의 디스플레이 상에 표시한 유저 인증용 패스워드 입력 요구창의 예시도이다.
도 10은 본 발명의 일 실시예에 따른 유저 인증 및 서명 장치에 의해 유저의 인증을 위한 프로세스가 처리되는 과정의 흐름도이다.
도 11은 본 발명의 일 실시예에 따른 유저 인증 및 서명 장치가 복수의 이미지를 이용하여 유저 암호키를 등록/인증하기 위해 표시한 이미지들의 예시이다.
도 12는 FIDO 표준 방식에 의한 유저 등록을 위한 처리 흐름을 나타낸 도면이다.
도 13은 FIDO 표준 방식에 의한 유저 인증을 위한 처리 흐름을 나타낸 도면이다.
도 14는 표준의 디지털 서명 방식에서 처리되는 기능의 관계를 나타낸 흐름도이다.
도 2는 유저의 바이오 데이터 처리를 나타내는 예시도이다.
도 3은 본 발명의 일 실시예에 따른 유저 인증 및 서명 장치의 예시도이다.
도 4는 본 발명의 일 실시예에 따른 유저 이미지 데이터 관리 프로세서의 실시예이다.
도 5는 본 발명의 일 실시예에 따른 유저 인증 및 서명 장치에 의해 유저의 암호키가 등록되는 과정의 흐름도이다.
도 6은 특정 어플리케이션에서 유저 암호키 등록을 요구하는 암호키 입력창의 예시도이다.
도 7은 유저 암호키 등록 요구에 답하여, 터치 디스플레이에 유저의 이미지를 업로드하는 실시예이다.
도 8은 이미지 상에서 터치 픽셀의 데이터를 취득하는 실시예를 나타내는 도면이다.
도 9는 유저의 인증을 위해 유저의 디스플레이 상에 표시한 유저 인증용 패스워드 입력 요구창의 예시도이다.
도 10은 본 발명의 일 실시예에 따른 유저 인증 및 서명 장치에 의해 유저의 인증을 위한 프로세스가 처리되는 과정의 흐름도이다.
도 11은 본 발명의 일 실시예에 따른 유저 인증 및 서명 장치가 복수의 이미지를 이용하여 유저 암호키를 등록/인증하기 위해 표시한 이미지들의 예시이다.
도 12는 FIDO 표준 방식에 의한 유저 등록을 위한 처리 흐름을 나타낸 도면이다.
도 13은 FIDO 표준 방식에 의한 유저 인증을 위한 처리 흐름을 나타낸 도면이다.
도 14는 표준의 디지털 서명 방식에서 처리되는 기능의 관계를 나타낸 흐름도이다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다.
본 발명의 기술 이해를 돕기 위하여 본 명세서에서 인용하는 기술 용어에 대해서 설명한다.
유저 인증이란 유저가 어떤 서비스 또는 정보를 이용할 경우, 유저에게 이용 권한을 부여하기 위하여 실시되는 일종의 검증 절차이다. 즉, 유저에게 유저를 식별할 수 있는 아이디 또는 패스워드 등을 등록하게 한 후, 유저로부터 제시되는 아이디 또는 패스워드와 등록된 아이디 또는 패스워드의 비교를 통하여 이용 권한을 가진 유저인가를 인증하는 처리를 말한다. 한편, 유저 서명 장치란 유저의 아이디 또는 패스워드 등의 위조, 변조의 검출, 제3자에 의한 위장술의 검출, 사후 부인의 방지 기능을 가진 장치를 말한다.
또한, 본 명세서에서의 암호키란 일반적으로 통용되는 유저의 비밀번호, 비밀키 또는 패스워드와 같은 의미이다. 더불어, 암호키는 암호 기술 분야에서의 private key, public key와 동일한 의미로도 쓰일 수 있다. 또한, 암호키는 실시예에 따라 유저 암호키, 유저 등록용 암호키 또는 유저 인증용 암호키를 의미할 수 있으며, 해쉬 함수를 이용하여 암호화된 경우 해쉬값 암호키를 의미할 수도 있다. 또한, 유저의 생체 정보(biometrics information), 즉 지문, 홍채, 얼굴, 혈맥, 음성 데이터 등을 유저의 바이오 데이터(user’s biometrics)로 표현한다.
또한, 본 명세서에서의 패스워드/암호키의 높은 기밀성(confidentiality)이란 패스워드/암호키를 생성하는 소스가 엔트로피 즉 랜덤성(randomness)이 크고, 패스워드/암호비밀키의 길이가 충분히 길어 고성능 컴퓨터 처리로도 패스워드/암호키 해독이 지극히 여려운 정도를 의미한다. 또한, 패스워드/암호키의 안전성(integrity)이란, 위조 또는 변조의 불가능성/가능성 즉, 패스워드/암호키를 타인이 훔져가더라도 타인이 그것을 재현 또는 사용하는 것이 장치적으로 불가능함을 의미한다. 또한, 패스워드/암호키의 본인 재현성(reproducibility)이란 유저에게만 패스워드/암호키 보관 저장이 편하고, 기억하기 쉬워 재현하기가 쉬운 것을 의미한다.
또한, 본 명세서에서의 프로세서란 특정 수단 또는 기능을 수행하는 컴퓨터 소프트웨어 또는 하드웨어를 의미한다.
또한, 본 명세서에서의 ‘터치’란 스마트 폰의 디스플레이 상에서 유저의 입력을 ‘손가락’, ‘팬도구’ 등을 이용하는 제스춰, 또는 데스크 탑 PC와 같은 디스플레이 상에서 ‘손가락’, ‘펜도구’, 그리고 ‘마우스’로 입력하는 제스춰를 통칭하는 용어로 사용한다.
도 1은 본 발명의 일 실시예에 따른 유저 인증 및 서명 장치가 실시되는 네트워크 모델의 예시도이다.
도 1은 본 발명의 일 실시예에 따른 유저 인증 및 서명 기능을 함께 구비한 유저 인증 및 서명 장치 및 유저 인증 및 서명 장치가 이용되는 서비스 환경을 간략하게 나타낸다.
도 1a를 참조하면, 유저 인증 및 서명 장치는 터치 디스플레이를 구비한 유저 정보 디바이스(101, 102 및 103), 모종의 서비스를 제공하는 어플리케이션 제공 서버(105) 및 유저 정보 디바이스(101, 102 및 103)와 어플리케이션 제공 서버(105)를 연결하는 네트워크(104) 환경에서 제공되고 이용된다.
예를 들면, 유저 정보 디바이스(101, 102 및 103)는 스마트 폰, 테블릿, PC 등과 같이 터치 디스플레이, CPU, 메모리 장치, 그리고 네트워크 인터페이스 등을 구비하고 있는 컴퓨팅 기기일 수 있다.
또한, 어플리케이션 제공 서버(105)는 어플리케이션 서비스 이용자들을 등록시키고, 관리하기 위한 유저 데이터베이스(user database)(106)를 구비할 수 있 수 있으며, 유저 데이터베이스(106)에는 유저의 아이디, 패스워드 등과 같이 유저가 생성한 암호키들이 저장될 수 있다.
도 1b는 P2P(Peer to Peer) 형 네트워크 환경에서 본 발명의 유저 인증 및 서명 장치가 제공되고 이용되는 실시예를 나타낸다. 도 1b를 참조하면, P2P네트워크(111) 상의 각 노드에는 유저 정보 디바이스(107, 108, 109 및 110)가 제공되고 각각의 유저 정보 디바이스에 본 발명의 유저 인증 및 서명 장치가 내장형으로 제공될 수 있다.
이외에도, 본 발명의 유저 인증 및 서명 장치는 애플 또는 구글 스토어 등의 앱 어플리케이션과 같이 무선 링크 방식의 네트워크 또는 웹 앱 하이브리드 어플의 네트워크에서 제공되어 사용할 수 있고, 특정 어플리케이션 참여자들로만 구성된 폐쇄형의 사설 네트워크에서도 제공이 가능하다.
이하에서는, 유저 정보 디바이스는 도 1에 도시된 여러 종류의 유저 정보 디바이스(101, 102, 103, 107, 108, 109 및 110) 중 어느 하나의 유저 정보 디바이스(101)를 지칭하며, 다른 유저 정보 디바이스(102, 103, 107, 108, 109 및 110)는 유저 정보 디바이스(101)와 동일한 기능을 가질 수 있음은 물론이다.
도 2는 유저의 바이오 데이터 처리를 나타내는 예시도이다.
구체적으로, 도 2a 내지 도 2d는 유저 정보 디바이스(101)에 내장되어 있는 유저의 바이오 데이터를 취득하는 장치를 통해 유저 정보 디바이스(101)에 구비된 유저 바이오 데이터 인식 프로세서에서 처리되는 일 실시예를 나타낸다.
도 2a를 참조하면, 유저의 손가락 지문은 유저 정보 디바이스(101)에 내장된 지문인식 장치(201)를 이용하여 스캔된다. 도 2b를 참조하면, 이후, 지문의 특징점(202)에 따른 유저의 바이오 데이터(203)가 추출되고 유저 디바이스에 저장되어 유저 지문 인식에 이용된다. 다시 도 2b를 참조하면, 유저의 바이오 데이터(203)는 하나의 지문 특징점(202)에 대한 수치 데이터를 비트 단위로 취득한 예시이다.
또한, 도 2c를 참조하면, 일반적으로 유저의 홍채, 얼굴, 혈맥 등의 바이오 데이터는 유저 정보 디바이스(101)에 내장된 카메라(204)를 통해 취득된다. 또한, 도 2d를 참조하면, 유저의 음성 데이터는 마이크(205)를 이용하여 취득하며 각각 인식을 위한 패턴 매취 알고리즘이 구현된 프로세서도 동시에 내장되어 제공되고 있다.
따라서, 본 발명에서의 유저의 바이오 데이터의 취득과 취득한 유저 바이오 데이터 인식 프로세서는 유저 정보 디바이스(101)에 내장되어 제공되는 장치 그리고 프로그램을 그대로 사용한다.
본 발명의 유저 인증 및 서명 장치 및 방법을 제공하기에 앞서, 미리 유저 정보 디바이스에서 유저의 바이오 데이터를 취득하고, 유저 바이오 데이터 인식 등의 처리를 행할 수 있는 프로세서를 보유하여야 한다. 그런 의미로, 본 명세서에서는 유저의 바이오 데이터를 유저로부터 바이오 데이터 입출력 장치를 이용하여 취득하고 취득된 유저의 바이오 데이터를 유저의 정보 디바이스 내에 저장하고 인식하는 처리를 유저 바이오 데이터 인식 프로세서(user’s biometric recognition processor)라 의미한다. 본 명세서에서의 유저 바이오 데이터에 의한 유저 바이오 데이터 인식 프로세서는 유저 정보 디바이스에 미리 내장된 것을 전제로 한다. 따라서, 본 발명에서는 상기 유저 바이오 데이터 인식 프로세서는 제3자의 공지 기술을 이용하므로 구체적 내용 설명은 생략한다.
도 3은 본 발명의 일 실시예에 따른 유저 인증 및 서명 장치의 예시도이다.
도 3을 참조하면, 유저 인증 및 서명 장치는 유저 정보 디바이스(300), 유저 이미지 데이터 관리 프로세서(301), 암호키 등록/인증 입력창 표시 프로세서(302), 유저 등록용/인증용 암호키 생성 이미지 업로드 프로세서(303), 유저 등록용/인증용 암호키 생성 데이터 취득 프로세서(304), 유저 등록용/인증용 암호키 생성 프로세서(305), 유저 등록용 암호키에 대한 인증 프로세서(306) 및 유저 바이오 데이터 인식 프로세서(307)를 포함한다.
유저 정보 디바이스(300)는 터치 디스플레이와 컴퓨팅 기능을 구비한다. 구체적으로, 유저 정보 디바이스(300)는 스마트 폰, 테블릿, PC 등과 같이 터치 디스플레이, CPU, 메모리 장치, 그리고 네트워크 인터페이스 등을 구비하고 있는 컴퓨팅 기기일 수 있다.
유저 이미지 데이터 관리 프로세서(301)는 유저 정보 디바이스(300)의 터치 디스플레이 상에 표시하기(display) 위한 특정 이미지 데이터를 유저 정보 디바이스(300)에 저장, 관리한다.
암호키 등록/인증 입력창 표시 프로세서(302)는 암호키 등록창 표시 프로세서 또는 암호키 인증 입력창 표시 프로세서일 수 있고, 유저 정보 디바이스(300)의 터치 디스플레이 상에 유저 암호키 등록/인증을 요구한다.
유저 등록용/인증용 암호키 생성 이미지 업로드 프로세서(303)는 유저 등록용 암호키 생성 이미지 업로드 프로세서 또는 유저 인증용 암호키 생성 이미지 업로드 프로세서일 수 있고, 유저 암호키 등록 요구 또는 유저 암호키 인증 요구에 답하여, 유저 정보 디바이스(300)의 이미지 저장 장치에 저장되어 있는 이미지 데이터 중에서, 유저 또는 유저 이미지 데이터 관리 프로세서(301)가 선택한 이미지 데이터를 유저 정보 디바이스(300)의 터치 디스플레이 상에 업로드하여 표시한다.
유저 등록용/인증용 암호키 생성 데이터 취득 프로세서(304)는 유저 등록용 암호키 생성 데이터 취득 프로세서 또는 유저 인증용 암호키 생성 데이터 취득 프로세서일 수 있고, 유저 등록용/인증용 암호키 이미지 업로드 프로세서(303)에 의하여 유저 정보 디바이스(300)의 터치 디스플레이 상에 표시된 이미지 데이터 상의 특정 위치 픽셀을 유저가 터치 지정하여 유저의 등록용/인증용 암호키 데이터를 취득한다.
유저 등록용/인증용 암호키 생성 프로세서(305)는 유저 등록용 암호키 생성 프로세서 또는 유저 인증용 암호키 생성 프로세서일 수 있고, 유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터 또는 유저 등록용/인증용 암호키 생성 데이터 취득 프로세서(304)가 취득한 유저 등록용 암호키 생성 데이터 또는 유저 인증용 암호키 생성 데이터를 암호화하여 유저 등록용 암호키 또는 유저 인증용 암호키를 생성한다.
유저 바이오 데이터 인식 프로세서(307)는 유저 정보 디바이스(300)에 구비된 유저 바이오 입출력 장치를 이용하여 유저의 바이오 데이터를 유저로부터 취득한 후에 유저의 정보 디바이스 메모리에 저장하고 취득, 저장된 유저의 바이오 데이터를 기반으로 유저를 인식한다.
예를 들면, 유저 바이오 데이터 인식 프로세서(307)는 유저 정보 디바이스(300)에 구비되고, 도 2에 도시된 유저 바이오 데이터 입출력 디바이스(204 및 205) 등을 사용하여 유저의 바이오 데이터(203)를 취득한 후, 취득한 바이오 데이터를 유저 정보 디바이스(300)에 내장된 유저 바이오 데이터 인식 프로세서(307)의 메모리에 저장할 수 있다.
도 4는 본 발명의 일 실시예에 따른 유저 이미지 데이터 관리 프로세서의 실시예이다.
구체적으로, 도 4는 유저 정보 디바이스(300)의 기억장치에 저장된 이미지 데이터(401 및 402)의 예시이다. 각 이미지 데이터(401 및 402)에는 저장 날짜, 설명문, 이미지의 디지털 데이터가 픽셀 단위로 저장되어 있고 이미지 데이터(401 및 402)가 파일 장치로 구성되어 있다.
각각의 이미지 데이터(401 및 402)에 붙은 저장 날짜(403). 설명문 등은 암호키를 만드는데 유저가 유저 등록 및 인증 암호키를 생성할 때, 어떤 이미지 데이터를 이용했는가를 기억하는 연상 기억 매체로 활용할 수 있다.
또한, 특정 어플리케이션에서 요구하는 유저 등록용 암호키인가를 유저 이미지 데이터 관리 프로세서(301)가 인식하여 이미지 데이터(401 및 402)의 작성일자 또는 설명문을 참조하여 알맞은 이미지를 자동 선택하여 유저 정보 디바이스(300)의 터치 디스플레이 상에 업로드하는 기능을 구비할 수도 있다.
예를 들면, 특정 날짜에 등록하는 암호키라면 특정 날짜와 관련있는 이미지를 선택하도록 하거나, 특정 인물과 관련하는 암호키라면 특정 인물의 이미지를 선택할 수 있도록 시스템 프로그램으로 제공할 수도 있다. 또한, 유저가 이미지 파일 장치에서 원하는 이미지 데이터를 직접 선택할 수 있는 인터페이스를 구비할 수 있다.
도 5는 본 발명의 일 실시예에 따른 유저 인증 및 서명 장치에 의해 유저의 암호키가 등록되는 과정의 흐름도이다.
이하에서는, 도 5를 참조하면서 본 발명의 프로세서 및 단계별 처리 내용에 대한 각각의 실시예를 설명한다.
도 5를 참조하면, 유저 정보 디바이스(300)의 디스플레이 상에 유저 암호키(패스워드) 설정 및 등록 요구가 표시되면(S501), 암호키 설정 및 등록 요구에 답하여, 유저 이미지 데이터 관리 프로세서(301)는 유저 정보 디바이스(300)의 이미지 데이터 저장 파일을 오픈한 후(S502), 저장된 이미지 데이터들을 유저 정보 디바이스(300)의 터치 디스플레이에 업로드하여 표시하고(S503), 유저에게 원하는 이미지 데이터를 선택하게 한다. 또는, 유저 이미지 데이터 관리 프로세서(301)가 유저 암호키 등록을 요구하는 어플리케이션에 적합한 이미지 데이터를 자동 선택하여 터치 디스플레이 상에 표시할 수도 있다.
따라서, 유저 정보 디바이스(300) 내에 상기한 두 개의 기능을 가진 프로세서를 구비할 수 있고, 어느 한쪽의 기능을 제공할 수도 있다. 상기 자동 선택 수단은 상기한 대로 패스워드를 요구하는 어플리케이션의 정보에 따라 자동으로 이미지를 선택할 수 있도록 프로그램으로 제공될 수 있다.
이후, 유저 바이오 데이터 인식 프로세서(307)에 의해 취득, 저장된 바이오 데이터와 유저의 바이오 데이터를 다시 대조하여 동일하면(S504), 유저 등록용/인증용 암호키 생성 데이터 취득 프로세서(304)는 유저 등록용 암호키 생성을 위해 지정되어 디스플레이된 특정 이미지 상의 특정 터치 픽셀의 좌표값 및 컬러값을 취득하고(S505), 유저 등록용/인증용 암호키 생성 프로세서(305)에 의해서 암호키가 생성된다(S506 및 S507).
구체적으로, 유저 등록용/인증용 암호키 생성 프로세서(305)는 (a) 터치 픽셀의 좌표값(801), 터치 픽셀의 컬러값(802) 또는 유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터(203) 중에서, 적어도 하나 이상을 선택하여 각각 암호화를 먼저 실행한 후, 암호화된 각각의 데이터를 하나로 결합한 데이터, 하나 이상의 암호화된 데이터와 암호화되지 않은 데이터를 하나로 결합한 데이터, 또는 상기 하나로 결합한 데이터를 다시 암호화한 데이터 중에서 어느 하나를 상기 유저 등록용 암호키로 생성하거나(S506), 또는 (b) 터치 픽셀의 좌표값(801), 터치 픽셀의 컬러값(802) 또는 유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터(203) 중에서, 적어도 2개 이상의 데이터를 먼저 하나로 결합한 후에 암호화를 실행한 후에 암호화된 데이터, 적어도 2개 이상의 데이터를 하나로 결합하여 암호화한 데이터와 암호화가 되지 않은 데이터를 하나로 결합한 데이터 또는 결합한 데이터를 다시 암호화한 데이터 중에서 어느 하나를 상기 유저 등록용 암호키로 생성한다(S507).
도 6은 특정 어플리케이션에서 유저 암호키 등록을 요구하는 암호키 입력창의 예시도이다.
도 6을 참조하면, 특정 어플리케이션 서비스에서는 서비스 제공자가 유저에게 유저의 패스워드 등록을 요구하면서 유저 정보 디바이스의 터치 디스플레이 상에 유저 암호키 등록을 요구하는 등록용 암호키 입력창(601)을 제시할 수 있다.
도 7은 유저 암호키 등록 요구에 답하여, 터치 디스플레이에 유저의 이미지를 업로드하는 실시예이다.
도 7을 참조하면, 도 6의 유저 암호키 등록 요구에 답하여 유저가 등록용 암호키 입력창(601)을 터치하면, 유저 이미지 데이터 관리 프로세서(301)에 의해서 도 4에 도시된 이미지 데이터들(401 및 402)을 이미지 저장 파일로부터 유저 정보 디바이스(300) 디스플레이 상에 업로드하여 표시하고, 표시된 이미지들에서 유저가 특정 이미지 데이터(701)를 선택하면, 선택된 이미지 데이터(701)가 표시될 수 있다.
도 8은 이미지 상에서 터치 픽셀의 데이터를 취득하는 실시예를 나타내는 도면이다.
구체적으로, 도 8은 유저 정보 디바이스(300)의 디스플레이 상에 표시된 이미지 데이터(701) 상에서 유저가 특정 지점을 터치 지정하면 이미지 데이터(701)로부터 취득된 유저의 픽셀 데이터(801 및 802) 처리를 나타낸다.
도 8를 참조하면. 유저가 특정 위치를 터치하면 동시에 유저의 정보 디바이스(300)에 저장되어 있는 유저의 바이오 데이터(203)를 다시 입력하여 동일한 유저인가를 검증하는 유저 바이오 데이터 인식 프로세서(307)를 구동한다.
유저 바이오 데이터 인식 프로세서(307)의 패턴 매취 인식결과, 동일한 유저로 판단되면, 유저 등록용/인증용 암호키 데이터 취득 프로세서(304)가 터치 픽셀의 좌표값(X, Y)(801) 및 터치 픽셀의 컬러값(RGB)(802)을 취득한다. 한편, 유저 바이오 데이터 인증 처리와 유저의 터치 픽셀 데이터의 취득 처리는 동시에 수행할 수도 있으며, 이 경우 디스플레이 전면에서 지문인식이 가능한 유저 정보 디바이스에서 최적의 솔루션을 제공할 수 있다.
예를 들면, 유저의 지문 인식을 위한 센서 디스플레이 기능을 구비한 스마트 폰, 삼성전자의 Galaxy 10과 같은 유저 정보 디바이스에 본 발명의 장치를 내장할 경우, 유저 인증, 서명이 필요한 어플리케이션 개발에 최적의 솔루션을 제공할 수 있다.
유저 정보 디바이스(300)에 내장된 유저 바이오 데이터 인식 프로세서(307)는 유저 정보 디바이스(300)의 제조사 또는 제3자가 각각 제공하는 프로세서의 기능에 따라 각각 처리된다.
도 8을 다시 참조하면, 도 8에 도시된 이미지 데이터(701)는 Samsung galaxy note3(1080X1920)의 터치 디스플레이 상에 표시한 것이며, 도 8은 이미지 데이터(701) 상에서 유저가 터치한 지점에 대해, 유저의 터치점에 대한 터치 픽셀의 좌표값(801)과 터치 픽셀의 컬러값(802)이 각각 (277, 948) 과 (253, 255, 254)인 예시이다.
한편, 상기와 같이 이미지 데이터 상에서 유저의 터치 픽셀의 데이터를 취득하는 툴은 API(Aplication Program Interface)가 공개되어 있어 용이하게 구현하여 처리할 수 있거나, 또는 터치 영역의 X, Y좌표값 계산으로 쉽게 구할 수 있으며, 인증의 경우 또한 터치 픽셀의 상기 데이터 값을 취득하는 툴 또한 쉽게 구현할 수 있다.
위와 같이 취득된 유저 데이터들은 유저 정보 디바이스(300)의 기억 장치에 저장된다. 저장되는 데이터들은 저장에 앞서 일방향 해쉬함수 또는 암호화 프로그램을 이용하여 암호화된 이후 저장될 수도 있으며, 또한 바이오 데이터 압축 프로그램을 사용하여 압축 후, 저장할 수도 있다.
다음은 터치 픽셀의 좌표값(801) 및 컬러값(802), 또는 유저의 바이오 데이터(203)를 암호화하여 유저 등록용 암호키 또는 유저 인증용 암호키로 생성하는 유저 등록용 암호키 생성 프로세서(305)의 일 실시예를 설명한다.
이하에서는, 터치 픽셀의 좌표값(801), 터치 픽셀의 컬러값(802) 또는 유저의 바이오 데이터(203)를 일방향 해쉬 함수를 이용하여 암호화한 실시예를 설명한다.
구체적으로, 유저 등록용 암호키 생성 프로세서(305)는 (a) 터치 픽셀의 좌표값(801), 터치 픽셀의 컬러값(802) 또는 유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터(203) 중에서, 적어도 하나 이상을 선택하여 각각 암호화를 먼저 실행한 후, 암호화된 각각의 데이터를 하나로 결합한 데이터, 하나 이상의 암호화된 데이터와 암호화되지 않은 데이터를 하나로 결합한 데이터, 또는 상기 하나로 결합한 데이터를 다시 암호화한 데이터 중에서 어느 하나를 상기 유저 등록용 암호키로 생성하거나, 또는 (b) 터치 픽셀의 좌표값(801), 터치 픽셀의 컬러값(802) 또는 유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터(203) 중에서, 적어도 2개 이상의 데이터를 먼저 하나로 결합한 후에 암호화를 실행한 후에 암호화된 데이터, 적어도 2개 이상의 데이터를 하나로 결합하여 암호화한 데이터와 암호화가 되지 않은 데이터를 하나로 결합한 데이터 또는 결합한 데이터를 다시 암호화한 데이터 중에서 어느 하나를 상기 유저 등록용 암호키로 생성한다.
첫 번째로, 터치 픽셀의 좌표값(801), 터치 픽셀의 컬러값(802) 및 유저의 바이오 데이터(203) 각각에 대해 일방향 해쉬 함수를 이용하여 암호화한 해쉬값 암호키의 실시예를 설명한다.
우선, 터치 픽셀의 좌표값(801)에 대한 해쉬값 암호키(SHA256, SHA512)를 구하면 다음과 같다.
"SHA256(X,Y)=SHA256(277948)=D1CDDBB8DEE15A796E7E021A692C85D388F0A3399CEBB05F07484C3B2B3CCAE9" ……… (1)
"SHA512(X,Y)=SHA512(277948)=2C7DA404B69B2982D1B5806017FAACE19C9F7439296AD359B7FCD61691EB64BC2B19D1807132D6CE712850AF6138182D2DE58C0EC550F401D563C21F54B1FAA9"
또한, 터치 픽셀의 컬러값(802)에 대한 해쉬값 암호키(SHA256, SHA512)키를 구하면 다음과 같다.
"SHA256(RGB)=SHA256(253255254)=2314FA02267DC6CE8F5662A0DCFB0151D03B43CC93319770A4824AD15C67F348" ……… (2)
"SHA512(RGB)=SHA512(253255254)=7AE223525E3F3E5403639FB0E4DEA9487DCB63C75F51FC40E80BA97B6870791B70956B14470DF659822BBC50416278928FEA98B9DA73388E85B76CE811A5CDB7"
또한, 유저의 바이오 데이터(203)에 대한 해쉬값 암호키(SHA256, SHA512)를 구하면, 다음과 같다.
"SHA256(finger print)=4E418BF3D461CA0B4C49A0514ED7942A0E893D759DE369C89CF74BDD1D077B0A" ……… (3)
"SHA512(finger print)=A871544968DABC2D39005BB4CFF5FD0808D5C948292505CCFC3E624F7221108900D49BAA8349E7F8DF1A4D1890AC5ADCEB6E45679F281D717046E27CF7BD8AAB"
상기 3개의 해쉬값 암호키 (1)(2)(3)을 결합한 후에 다시 해쉬화하여 구해진 암호키(SHA256, SHA512)를 구하면, 다음과 같다.
"SHA256((1)(2)(3))=A81194F8D9E9E61E35E14C4F9D175AB527D15E66388CBDD7C808553F31D1BD6C"
"SHA512((1)(2)(3))=3A662BABE41EF25BDC3D69D0240A6C4D624A6C7301289AAEE7C09FB6F17B5125847F9E76F200BA8F16D84D5D019E6F8BCE664F2FA4FF67850294C7FD423332D0"
유저 등록용 암호키 생성 프로세서(305)는 해쉬값 암호키(SHA256((1)(2)(3))), 해쉬값 암호키(SHA512((1)(2)(3))) 또는 암호키(SHA256, SHA512) 중 어느 하나를 유저 등록용 암호키로 할 수 있으며, 이와 같이 생성된 해쉬값 암호키는 암호화를 두 번 실행한 것으로 더욱 안전성이 높다.
두 번째로, 유저의 터치 지점의 터치 픽셀의 좌표값(801) 및 터치 픽셀의 컬러값(802)을 결합한 후, 일방향 해쉬 함수로 암호화한 해쉬값 암호키, 그리고 상기 해쉬값 암호키를 다시 유저의 바이오 데이터(203)와 결합하여 일방향 해쉬 함수를 사용하여 암호화한 해쉬값 암호키의 실시예를 설명한다.
터치 픽셀의 좌표값(801) 및 터치 픽셀의 컬러값(802)을 결합한 후, 일방향 해쉬 함수로 암호화한 해쉬값 암호키(SHA256(4), SHA512(5))를 구하면 다음과 같다.
"SHA256(XYRGB)=E81FEC84259FD0D63166DC12141AA2E91B23FE573FD0F757907DA9810A44BB5B" ……… (4)
"SHA512(XYRGB)=750CD6979C15E5819507F9B03ED491237BE8C4160D6C2B56E960CB81E9A26B6C14668FB27DB919D92F9C0D5DBCCA3A0EE5FA5CC84C449862DA191B9CACD5DB6F" ……… (5)
또한, 상기 암호키를 다시 상기 저장된 유저의 바이오 데이터와 결합하여 일방향 해쉬 함수를 사용하여 다시 암호화한 해쉬값 암호키(SHA256(6), SHA512(7))는 다음과 같다.
"SHA256(XYRGB)(BIO)=F12055FD338D0DF679A1C3042272F9F36CD4FCAEAEC012E09AEE69A582C804F0" ……… (6)
"SHA512(XYRGB)(BIO)=9C9C8285F966486C3E8890B459885F3DC0147E0B0A24A1F894CF5BE5A04121E7C6A4AF1ADD67A9B1893C781FE5CFE4416DBD92A72EBD470D162618B3CF8F5C89" ……… (7)
유저 등록용 암호키 생성 프로세서(305)는 해쉬값 암호키(SHA256(XYRGB)(BIO)), 해쉬값 암호키(SHA512(XYRGB)(BIO)) 또는 해쉬값 암호키(SHA256(6), SHA512(7)) 중 어느 하나를 유저 등록용 암호키로 할 수 있다.
세 번째로, 유저의 터치 픽셀의 좌표값(801) 및 터치 픽셀의 컬러값(802) 및 유저의 바이오 데이터(203)를 하나로 결합한 후, 결합한 데이터를 일방향 해쉬함수를 사용하여 암호화한 해쉬값 암호키(SHA256, SHA512)의 실시예를 설명한다.
터치 픽셀의 좌표값(801), 터치 픽셀의 컬러값(802) 및 유저의 바이오 데이터(203)를 하나로 결합한 후, 결합한 데이터를 일방향 해쉬함수를 사용하여 암호화한 해쉬값 암호키(SHA256, SHA512)는 다음과 같다.
"SHA256(XYRGBBIO)=318905E1D4A463696BACD9AF8CD3132E4DEB4EC41C82E3950DA851DEC4DCC6C4"
"SHA512(XYRGBBIO)=9EF8627D42245B214ACE62E586DEFFCF2F8C9F3C7673DFCC0B10BF77D016549B030C7189AC14FE0AF33026DC0C1144ABD6480AC503CC64053A381BA43E1CA87A"
유저 등록용 암호키 생성 프로세서(305)는 해쉬값 암호키(SHA256(XYRGBBIO)), 해쉬값 암호키(SHA512(XYRGBBIO)) 또는 해쉬값 암호키(SHA256, SHA512) 중 어느 하나를 유저 등록용 암호키로 할 수 있다.
다음은, 터치 픽셀의 좌표값(801), 터치 픽셀의 컬러값(802) 및 유저의 바이오 데이터(203)를 결합하여 해쉬화한 값을 비밀키로 하여, 타원 곡선 방정식을 이용한 공개키 암호화의 실시예를 설명한다.
타원 곡선 암호화 방식은 공개키 암호 기술로서 공개키 암호는 공개키와 비밀키의 한 쌍(pair)으로 이루어지며, 비밀키(개인키)는 유저 자신만이 가지는 고유의 키이고, 공개키는 유저의 비밀키를 이용하여 만든(암호화) 키 또는 메시지를 복호화하는데 사용하는 키를 말한다.
예를 들면, 비트코인에서는 전자서명을 위한 공개키 암호기술인 타원곡선 디지털 서명 알고리즘(ECDSA, Elliptic Curve Digital Signature Algorithm)을 사용하고 있다. 타원곡선 디지털 서명 알고리즘에서는 공개키를 수학식 1과 같이 생성한다.
수학식 1에서, K는 공개키, k는 비밀키, G는 생성원(generator point)을 나타낸다. 비트코인에서는 타원곡선을 미국표준기술연구소(NIST)가 제정한 secp256k1 곡선을 채택하고 있다. secp256k1 곡선의 경우, G의 위수 n의 값은 "n=11579208923731619542357098500868790785837564279074904382605163141518161494337"이다.
한편, 수학식 1에서, 기준점 G의 (x,y)값은 "Gx=55066263022277343669578718895168534326250603453777594175500187360389116729240", "Gy=32670510020758816978083085130507043184471273380659243275938904335757337482424"이다.
따라서, 구해진 암호키를 유저의 비밀키로 하여 수학식 1에 따라 각각의 공개키를 구하면 "K1=A0ED188C7B4415FD65DBA776475E71E5CFDEDFEA17399A0B11711A3980F6F17E * G", K2=F12055FD338D0DF679A1C3042272F9F36CD4FCAEAEC012E09AEE69A582C804F0 * G", K3=318905E1D4A463696BACD9AF8CD3132E4DEB4EC41C82E3950DA851DEC4DCC6C * G"의 값으로 구할 수 있고 이들 값이 각각의 비밀키에 대응하는 공개키가 된다.
상기 실시예들에서 알 수 있듯이, 유저의 취득 데이터와 유저의 바이오 데이터를 다양한 방법으로 결합하여 암호키(비밀(개인)키, 공개키)(즉, 해쉬값 암호키)를 생성할 수 있다. 상기 실시예들과 같이 터치 픽셀의 좌표값, 터치 픽셀의 컬러값 그리고 유저의 바이오 데이터를 다양한 조합 방식을 이용하여 암호키로 생성하는 본 발명의 장점은 생성된 암호키를 어떻게 어떤 조합 방식으로 생성했는가를 제3자가 추측 또는 유추하기를 더욱 어렵게 하여 결과적으로 암호키의 안전성을 더욱 높이는 효과를 발휘하게 된다.
한편, 상기 실시예들을 통해 생성된 암호키의 안전성에 대한 평가의 실시예(https://howsecureismypassword.net/)는 다음과 같다. 즉 상기 실시예들을 통해 구해진 모든 암호키를 컴퓨터를 이용하여 복호화하는데 걸리는 시간은 SHA256에 의한 암호키의 경우는 3 SESVIGINTILLION YEARS, 즉 1063 년이고, SHA512의 경우는 12,751,349,217,300,716,000,000,000,000 QUINQUAGINTILLION YEARS, 즉 10153 년으로 평가되고 있어 본 발명에 따른 암호키에 대한 안전성은 이론적으로 보증할 수 있다.
이하에서는, 본 발명의 유저 인증 및 서명 장치에서, 또 하나의 기능인 유저 등록용 암호키에 대한 인증 프로세서(306)의 실시예를 설명한다.
도 9는 유저의 인증을 위해 유저의 디스플레이 상에 표시한 유저 인증용 패스워드 입력 요구창의 예시도이다.
도 9를 참고하면, 이미 등록되어 있는 유저를 인증하기 위해, 암호키 등록/인증 입력창 표시 프로세서(302)는 통상의 어플리케이션의 요구에 응하여 유저의 아이디 또는 패스워드 입력창(901)(즉, 인증 암호키 입력창)을 표시할 수 있다.
도 10은 본 발명의 일 실시예에 따른 유저 인증 및 서명 장치에 의해 유저의 인증을 위한 프로세스가 처리되는 과정의 흐름도이다.
구체적으로, 도 10은 본 발명의 유저 등록용 암호키에 대한 인증 프로세서(306)의 처리 과정을 나타낸 흐름도이다.
도 10을 참조하면, 유저 정보 디바이스(300)의 디스플레이 상에 암호키에 대한 인증 요구 입력창이 표시되고(S1001), 등록되어 있는 유저 암호키에 대한 인증 요구에 답하여 패스워드 입력창(901)에 유저가 터치하면, 유저 암호키 생성에 사용하고자 유저 또는 유저 등록용/인증용 암호키 생성 이미지 업로드 프로세서(303)가 선택하여 터치 디스플레이 상에서 표시하였던 동일 이미지 데이터를 유저의 정보 디바이스(300)의 유저 이미지 데이터 관리 프로세서(301)가 저장 장치로부터 터치 디스플레이 상에 재업로드하여 표시하는 단계를 포함한다(S1002 및 S1003). 이 경우, 만일 유저가 도 7에 도시된 이미지 데이터(701)를 이용하여 암호키를 생성하고 설정하였다면, 도 7에 도시된 이미지 데이터(701)를 유저가 직접 다시 지정하거나 또는 유저 이미지 데이터 관리 프로세서(301) 및 유저 등록용/인증용 암호키 생성 이미지 업로드 프로세서(303)의 처리에 따라 유저의 정보 디바이스(300)의 디스플레이 상에 다시 표시한다.
한편, 다시 표시된 동일 이미지 데이터 상에서 유저가 유저 암호키 등록 시에 터치 지정하였던 동일 지점을 다시 상기하여 동일 지점의 픽셀을 재터치하는 단계에서는 유저가 암호키를 등록했던 터치 지점을 상기해야 한다. 이 경우, 유저 터치 횟수를 제한하여 제3자에 의한 도용을 막을 수 있다.
이후, 유저의 바이오 데이터를 재취득하여 저장되어 있는 유저의 바이오 데이터와 비교한 결과 동일한 유저임이 확인되고(S1004), 다시 표시된 이미지 데이터 상에서 유저가 유저 암호키 등록 시에 터치 지정하였던 동일 지점을 다시 상기하여 재터치하면, 유저에 의한 이미지 상의 재터치 지점의 재터치 픽셀 좌표값(X, Y) 및 재터치 픽셀의 컬러값(RGB)를 재취득한다(S1005).
이 경우, 미리 정의된 두 가지 서로 다른 기능을 가진 아래의 (a) 단계 또는 (b) 단계 중 어느 하나를 실행하는 단계를 구비한다. 각각의 단계의 선택은 유저가 암호키 등록시 사용했던 동일한 프로세서(301, 302, 303, 304, 305, 306 및 307)를 통해 이루어지며, (a) 단계 또는 (b) 단계를 통해 인증용 암호키 생성 데이터를 취득한다.
구체적으로, (a) 유저의 바이오 데이터를 유저로부터 바이오 데이터 입출력 장치를 이용, 다시 취득하여 상기 이미 취득, 저장되어 있는 유저의 바이오 데이터와 비교하여 동일 유저임을 확인한 후에, 다시 표시된 이미지 데이터 상에서 유저가 유저 암호키 등록 시에 터치 지정하였던 동일 점을 다시 상기하여 재터치하면, 재터치점의 픽셀 좌표값(X, Y) 및 재터치 픽셀의 컬러값(RGB)을 취득하는 단계; 또는 (b) 다시 표시된 이미지 데이터 상에서 유저가 유저 암호키 등록 시에 터치 지정하였던 동일 점을 다시 상기하여 재터치하면, 유저의 바이오 데이터를 다시 취득하여 유저 바이오 데이터 유저 인식 프로세서에 의해 저장되어 있는 유저의 바이오 데이터와 비교하는 처리와 동시에 병행하여 재터치점의 대표 픽셀 좌표값(X, Y) 및 재터치점의 대표 픽셀의 컬러값(RGB)을 취득하는 단계(재터치 픽셀의 좌표값 및 재터치 픽셀의 컬러값을 취득하는 단계) 중에서 하나를 실행한다.
이 경우, (a) 단계 및 (b) 단계의 처리 중에서 (b) 단계가 보다 바람직한 것이다.
한편, 보다 구체적인 유저 인증용 암호키의 생성의 실시예는 상기한 등록용 암호키에서 예시한 것과 동일하다.
즉, 구체적으로, 유저 등록용/인증용 암호키 생성 프로세서(305)는 (a) 재터치 픽셀의 좌표값, 재터치 픽셀의 컬러값 또는 유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터 중에서, 적어도 하나 이상을 선택하여 각각 암호화를 먼저 실행한 후, 암호화된 각각의 데이터를 하나로 결합한 데이터, 하나 이상의 암호화된 데이터와 암호화되지 않은 데이터를 하나로 결합한 데이터, 또는 하나로 결합한 데이터를 다시 암호화한 데이터 중에서 어느 하나를 유저 인증용 암호키로 생성하거나(S1006), (b) 재터치 픽셀 좌표값, 재터치 픽셀의 컬러값 또는 유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터 중에서, 적어도 2개 이상의 데이터를 먼저 하나로 결합한 후에 암호화를 실행한 후, 암호화된 데이터, 하나로 결합하여 암호화한 데이터와 암호화가 되지 않은 데이터를 하나로 결합한 데이터 또는 결합한 데이터를 다시 암호화한 데이터 중에서 어느 하나를 유저 인증용 암호키로 생성한다(S1007).
상기와 같이 생성된 유저 인증용 암호키는 인증용 패스워드 입력창(901)에 자동으로 입력되고, 이어서 상기 다시 생성한 유저 인증용 암호키와 유저 정보 디바이스(300) 또는 유저 암호키 인증을 요구하는 기기 내에 기 등록되어 있는 유저 등록용 암호키를 비교, 판정하는 암호키 인증 단계를 거치게 된다(S1008). 도 10에 도시된 상기 암호키 인증의 각각 단계들의 처리는 유저 등록 암호키에 대한 인증 프로세서(306)에서 동일하게 수행된다.
상기의 암호키의 등록에서 인증까지는 유저의 이미지 데이터 상에서 한번 또는 두 번의 유저 터치 동작으로 이루어지므로, 기존의 문자 조합 등의 패스워드 입력보다 훨씬 간편하다.
도 11은 본 발명의 일 실시예에 따른 유저 인증 및 서명 장치가 복수의 이미지를 이용하여 유저 암호키를 등록/인증하기 위해 표시한 이미지들의 예시이다.
구체적으로, 도 11은 유저 정보 디바이스(300)의 터치 디스플레이 상에 복수의 이미지 데이터를 업로드 표시하고, 복수의 이미지 데이터를 이용하여 본 발명에 의한 유저 인증 및 서명 장치를 구현한 실시예를 나타낸다.
도 11을 참조하면, 유저 정보 디바이스(300)의 터치 디스플레이에 복수의 이미지를 표시하고, 각각의 이미지 상에서 유저에게 특정 픽셀을 터치 지정하게 하여 암호키를 등록 그리고 인증할 수 있다. 복수의 이미지 데이터를 이용하여 유저가 지정 선택한 복수의 특정 터치 픽셀을 기반으로 암호키를 등록할 경우, 하나의 이미지에서 유저의 특정 터치 픽셀을 기반으로 하는 암호키보다 기밀성을 더 가진 암호키를 등록할 수 있다. 복수의 이미지 데이터를 이용하는 상기의 장치에서 암호키 등록 및 인증 수단과 방법은 도 1 내지 도 10에서 설명한 방법과 동일하다. 단지 두 번의 동일한 프로세서 처리가 필요할 뿐이다.
구체적으로, 유저의 첫 번째 이미지에서 특정 터치 픽셀을 하나 선택 터치하여 특정 터치 픽셀의 좌표값 및 컬러값(1101)을 취득할 수 있다. 취득한 데이터와 유저의 바이오 데이터(203)를 기반으로 상기한 본 발명의 프로세서의 처리 방법들을 이용하여 다양한 암호키(제1 암호키)를 생성, 등록할 수 있다. 이어서 또 다른 두 번째 이미지 상에서 특정 지점을 터지하여 터치 픽셀의 좌표값 및 컬러값(1102)을 취득하여 유저의 바이오 데이터(203)를 결합하여 상기 본 발명의 유저 등록용 암호키 생성 프로세서를 이용하여 암호키(제2 암호키)를 생성한다. 이후, 제1 암호키와 제2 암호키를 결합하여 다시 본 발명의 암호화 기법을 사용하면 더욱 안전한 제3의 암호키를 생성 및 등록할 수 있고, 이에 대응하여 인증용 암호키 또한 상기와 동일한 방법과 프로세서로 등록과 인증 처리를 할 수 있다.
또한 본 발명에 의한 유저 인증 및 서명 장치는 다중(공동) 서명(multisignature) 장치로도 활용이 가능하다. 즉 여러 사람들의 공동 서명이 필요로 하는 서비스 등에서 활용할 수 있다. 공동 서명 장치의 구성은 본 발명의 유저 인증 및 서명 장치를 갖춘 유저 정보 디바이스(300) 상에서는 본 발명과 동일한 방법으로 실시할 수 있다. 또한, OTP(One Time Password)등 의 생성 등록 기술에도 상기한 기술 구성 그대로 적용할 수 있다.
이하에서는, 본 발명의 유저 인증 및 서명 장치에 의한 유저 등록, 인증 그리고 서명 수단 및 방법을 FIDO의 표준 기술과 대비하여 평가한다.
FIDO 표준에 의한 유저의 인증 및 서명은 본 발명과 같이 유저의 바이오 데이터를 기반으로 하는 유저 바이오 데이터 인식 프로세서(307)를 기본적으로 구비한 유저 인증 및 서명 장치를 제공한다.
도 12는 FIDO 표준 방식에 의한 유저 등록을 위한 처리 흐름을 나타낸 도면이고, 도 13은 FIDO 표준 방식에 의한 유저 인증을 위한 처리 흐름을 나타낸 도면이다.
도 12를 참조하면, 본 발명의 암호키 등록에 동일하게 대응하는 FIDO의 처리 과정을 ‘등록(registration)’이라 한다.
구체적으로, 등록은 유저의 Attestation(특정 FIDO 인증장치에서 유저의 인증정보가 생성되었다는 것을 증명하는 서명 값)과 공개키를 서버에 등록하는 과정으로 도 12를 참조하여 설명하면 다음과 같다.
①유저가 서버(FIDO 서버)로 유저 정보(암호키/패스워드)의 등록을 요청하면 ②서버는 유저 디바이스(FIDO 클라이언트)로 인증 정보를 요청하고 관련 정책을 전송하며 ③유저는 유저 인식장치를 통해 바이오 데이터를 입력하고 유저 디바이스 내의 인증자(Authenticator)는 입력된 바이오 데이터를 이용하여 개인키/공개키 한쌍을 생성하여 상기 생성된 공개키와 Attestation을 상기 서버로 전송하며 ④상기 서버는 유저 디바이스로부터 전달받은 유저의 Attestation과 공개키를 저장, 관리하므로서 유저 등록을 완료한다.
FIDO의 등록 과정 중에서 ③유저는 인증 장치를 통해 바이오 데이터를 입력하고 인증자는 입력된 바이오 데이터를 이용하여 개인키/공개키 한쌍을 생성하는 단계에서는 유저의 바이오 데이터에 의한 유저 인식이 행해지고, 유저 인식이 성공하면 개인키/공개키를 생성하여 개인키로 유저의 Attestation(특정 FIDO 인증장치에서 유저의 인증정보가 생성되었다는 것을 증명하는 디지털 서명 값)을 생성하는 것이다. 따라서, 유저의 바이오 데이터는 개인키/공개키를 생성하는 서명 생성기를 unlock하여 구동하는 역할을 한다.
상기 기능은 본 발명에서와 같이 유저의 바이오 데이터에 의한 유저 인식이 성공되면 유저 터치 지점의 터치 데이터를 획득하는 프로세서를 unlock하여 구동하는 기능과 동일하다. 즉, FIDO는 유저의 바이오 데이터 인식 성공 결과를 개인키/공개키를 생성하는 디지털 서명키 생성기를 구동하는데 이용하고, 본 발명에서의 바이오 데이터에 의한 유저 인식 결과는 암호키를 생성 등록하기 위한 유저 암호키 등록용 데이터 취득 프로세서(304)를 구동하는 역할을 담당한다. 본 발명의 유저 인증 및 서명 장치와 FIDO는 바이오 데이터에 의한 유저 인식 프로세서를 이용하는 점에서는 동일하지만 유저 인식 후의 처리는 다르다. 즉, 본 발명의 유저 인증 및 서명 장치는 유저의 특정 이미지의 터치 픽셀의 좌표값, 컬러값 또는 유저의 바이오 데이터를 이용하여 암호키를 생성하는 반면, FIDO는 디지털 서명의 표준 방식인 개인키와 공개키를 생성하고 개인키로 유저의 Attestation를 생성하는 점에서 서로 다르다.
또한, 도 13을 참조하면, 본 발명의 유저 인증 수단과 과정에 대응하는 FIDO의 처리는 인증 또는 거래 확인이라 하고, 구체적 설명은 다음과 같다.
인증(login) 또는 거래확인과 관련하여, 유저 인증(로그인) 또는 거래 내용에 대한 디지털 서명을 받는 과정은 ①유저 디바이스가 서버(FIDO 서버)로 인증/거래확인을 요청하면 ②서버는 검증을 위한 인증시도(Challenge)를 생성하여 유저 디바이스(FIDO 클라이언트)로 전송하고 ③유저는 등록된 바이오 데이터 인식 정보를 통해 단말에 저장된 개인키를 추출하고 개인키를 이용하여 서버로부터 전달받은 인증시도(또는 거래 원문데이터)를 디지털 서명하고 유저 디바이스는 서명된 인증시도(또는 거래 원문데이터)를 서버로 전송하면 ④상기 서버는 유저의 공개키를 이용하여 유저 디바이스로부터 전달받은 유저의 Attestation(특정 FIDO 인증장치에서 유저의 인증정보가 생성되었다는 것을 증명하는 전자서명 값) 내용의 위·변조 여부를 검증한다.
상기와 같이 본 발명과 FIDO의 인증과 서명 시스템은 근본적으로 다르다. 즉, 본 발명은 서명 방식을 따로 구비하지 않는 반면, FIDO는 표준 서명 방식을 채용하고 있다는 점이다.
상기 FIDO가 채용한 표준 디지털 서명 방식이란 유저 디바이스 상에서 공개키(검증키)와 개인키(서명키)의 한쌍을 정한 후, 메시지를 개인키로 암호화하면 서명의 작성에 해당하고 암호문을 공개키로 복호화하는 것은 서명의 검증에 해당한다. 구체적인 과정을 나타내면 도 14와 같다.
도 14는 표준의 디지털 서명 방식에서 처리되는 기능의 관계를 나타낸 흐름도이다.
도 14를 참조하면, 송신자는 서명을 요하는 메시지(1401)를 서명키(개인키)(1402)로 디지털 서명 알고리즘(1403)을 적용하여 디지털 서명(1404)을 완료한 후에, 공개키(1405)와 함께 수신자에게 보내면 수신자는 암호화된 메시지를 검증하는 알고리즘(1406), 즉 공개키로 복호화하여 메시지의 위조 및 변조 여부를 검증(1407)하게 된다.
상기의 디지털 서명의 작성과 검증 방식을 구현 알고리즘은 다양하며, 대표적인 것을 열거하면 RSA, DSA, ECDSA(Ellipitic Curve Digital Signature Algorithm: 타원 곡선 디지털 서명 알고리즘), EdDSA(Edward DSA) 등이 있다.
또한, 표준의 서명 방식은 유저의 암호키 안전성(integrity), 즉 위조, 변조 가능성에 따라 유효성이 달라질 수 있다. 즉 유저가 자신의 암호키(개인키, 공개키)를 분실했다거나 도난당했다고 거짓 주장할 수도 있고, 실제로 유저의 키가 도난당할 수 있다. 이 때문에 디지털 서명 방식에는 공개키에 대한 공인 증명서 발행 제도(Public key infrastructure)라는 비용이 따르기 마련이다. 또한, 표준의 디지털 서명에서 서명을 작성하는 방법에는 메시지에 직접 서명하는 방법과 메시지의 해쉬값에 서명하는 방법이 있다. 메시지에 직접 서명하는 방법은 암호화에 시간이 걸리기 때문에 일방향 해쉬 함수를 써서 해쉬값을 구하고 그 해쉬값을 개인키로 암호화하는 방법이 주로 많이 쓰인다.
한편 본 발명에서 디지털 서명에 해당하는 처리는 상기 유저 등록용 암호키를 생성하는 유저 등록용 암호키 생성 프로세서(305)에서 실행된다. 즉, 유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터와 상기 유저 암호키 등록용 데이터 취득 프로세가 취득한 유저 등록용 암호키 데이터를 암호화함으로서 이루어진다.
또한, FIDO에서의 상기 개인 비밀키에 의해서 암호화된 Attestation에 해당하는 것이 본 발명의 상기 유저 암호키 생성 프로세서에 의해 생성된 암호키이다. FIDO의 Attestation는 유저 정보를 해쉬화한 후, 개인키로 암호화한 것이며 본 발명의 암호키는 상기 유저의 특정 이미지 상의 터치 데이터와 유저의 바이오 데이터의 조합으로 이루어진 데이터를 해쉬화한 값이다. FIDO에서의 Attestation를 구성하는 유저 정보는 특정되지 않은 유저의 데이터인 반면, 본 발명의 암호키를 구성하는 데이터에는 기밀성과 안전성이 보장되는 인증의 3요소 정보가 그대로 포함되어 있다.
인증의 3요소란 유저의 지식 정보, 유저의 소유 정보, 유저의 바이오 데이터 정보를 말한다. 유저의 지식 정보에 해당하는 것은 본 발명에서 유저가 특정하는 이미지, 이미지 상에서 유저가 특정하는 터치 픽셀의 좌표, 터치 픽셀의 컬러값이고, 유저의 소유 정보에 해당하는 것은 유저 소유의 디바이스 종류 및 소유 이미지이며, 유저의 바이오 데이터 정보에 해당하는 것은 저장되어 있는 유저의 바이오 데이터이다. 상기 정보들은 유저마다 고유하며, 모두 서로 다르므로 유저를 인증하고 서명할 수 있는 정보로서 이용할 수 있어, 공개키/개인키 패어 방식인 표준 디지털 서명 방식보다 뛰어난 방식이라 할 수 있다.
이는 3요소 인증 정보로 구성된 본 발명의 암호키는 3개의 인증 정보 모두가 누출되지 않는 한, 재생 또는 복제할 수 없기 때문이다. 따라서, 본 발명에 의한 암호키는 따로 디지털 서명키 생성 장치가 없어도 상기 디지털 서명 기능, 즉 암호키(문)의 위, 변조의 검출, 유저에 의한 사후 부인 방지 검출이 원리적으로 가능한 것이다. 어느 유저라도 상기 인증 3요소의 정보 없이는 본 발명의 암호키를 원리적으로 생성 등록할 수가 없고, 따라서 본 발명에 의해 생성된 암호키는 유저 암호키(문)의 소유자임을 나타내는 인증 정보가 내재되어 디지털 서명 기능, 즉 유저 진정성(Authenticity)이 보증되기 때문이다.
결론적으로, 본 발명의 방식은 기존의 문자, 기호, 숫자열로 이루어진 패스워드에 의한 유저 인증 방식에 비하여 안전한 패스워드를 기억 부담이 없이 재현성이 높아 하나의 동일한 암호키로 다수의 서로 다른 웹, 앱 서비스애서 이용 가능하다. 또한, FIDO 표준의 서명 방식과 달리 디지털 서명 방식의 비밀키, 공개키 생성 디지털 서명 프로세서를 구비하지 않고도 보다 간편하고 보다 쉽게 경제적인 유저 인증 및 서명 장치를 제공할 수 있다.
다음은 기존의 패스워드 방식과 본 발명 방식를 평가한다.
암호키를 제작하고자 할 경우, 어떤 기준을 따라야 하는가는 공지된 사안이다. 즉 일반적으로 보다 안전한 암호키 또는 패스워드를 만들기 위한 가이드라인은 ①자신만이 알 수 있는 정보를 이용할 것 ②복수의 암호키/패스워드를 나누어 쓸 것, 암호키 생성/관리 툴을 이용할 것이고, ①자신만이 알 수 있는 정보를 이용한다는 것은 제3자가 암호키를 훔쳐도 무엇을 기반으로 만들었는가를 유추할 수 없는 것, 즉 암호키의 소스에 무작위성이 커서 제3자는 예측하기가 어려움을 말한다.
본 발명에 의한 암호키의 주요 특징은 첫째, 유저가 소유하는 개인의 이미지를 바탕으로 하기 때문에 제3자는 어떤 이미지를 바탕으로 했는지 유추하기가 어렵고, 따라서 무작위성(randomness)에서는 다른 방식에 비해 월등함을 알 수 있다. 둘째, 이미지를 유추할 수 있다 하여도 상기 이미지 상에서 유저 자신이 선택 지정하는 이미지 상의 특정 지점을 유추하기 또한 어렵다. 셋째, 유저의 바이오 데이터이다. 유저의 바이오 데이터라는 것을 유추할 수 있다 하여도 유저의 바이오 데이터를 만들어 내기 쉽지 않기 때문이다. 상기와 같이 유추하기 어려운 3개의 데이터를 결합하여 암호키를 생성하기 때문에 선행 기술에 의한 어떤 암호키 생성 방식보다 안전한 방식이라 할 수 있다. 설령 제3자가 유저의 암호키를 도용하려 해도 상기 3개의 무작위성을 풀 수 있어야 하기 때문에 타 방식에 비해 암호키의 안전성을 보증할 수 있다.
선행 기술에 의한 복수의 암호키/패스워드는 용도에 따라 복수의 키로 나누워 쓰기에는 유저의 기억 부담이 너무 크다. 선행 기술의 암호키 방식으로는 주로 문자, 숫자, 기호 등을 비교적 길게 조합하여 쓸 수는 있으나 경우에 따라 복수의 암호키를 설정해 쓴다고 해도 암호키의 암기 부담 또는 저장 방법에 문제가. 많았다. 그러나 본 발명이라면 안전하면서 유연한 방식으로 용도에 따라 복수의 암호키를 생성하여 활용하기 쉽다. 왜냐 하면, 상기한 대로 본 발명 방식의 암호키는 이미지와 이미지 상의 특정 터치 픽셀 만을 기억해 두면 언제 어디서나 복수의 암호키라 할 지라도 기억 또는 비밀 보관의 부담 없이 다양한 어플리케이션 서비스에서 복수의 암호키로 활용 가능함은 자명하다.
또한, 상기한 대로 암호키를 만드는 소스(또는 시드)의 길이가 길수록 암호키의 안전성은 높아지는 반면, 암호키의 기억, 암호키의 보관 관리 등은 어려워진다. 상기와 같이 서로는 트레이드오프(tradeoff) 관계에 있다. 일반적으로 암호 화페와 같은 어플리케이션에서는 암호키에 대한 고도의 보안성을 위해서 암호키의 소스를 난수 생성기 또는 하드웨어적인 방법으로 생성하여 이용한다. 상기와 같은 난수 생성기 또는 하드웨어 등에 의한 암호키의 소스는 재현성이 거의 없기 때문에 암호키의 검증을 위해서는 상기 암호키 소스 또는 암호키를 은밀한 곳에 비밀리에 보관 관리해야 하고 암호키 검증시 반드시 재현할 수 있도록 보관 관리해야 한다. 상기와 같은 이유로 암호화폐와 같은 서비스에서는 암호키 보관 관리를 위하여 다양한 기술이 제안되고 개발되어 있다. 예를 들면, 암호키 내지는 비밀키를 안전하게 보관 관리하는 기술로서 소프트웨어 지갑(paper wallet) 또는 암호키 보관 전용 하드웨어 지갑 등이 제공되고 있다. 그러나, 상기 소프트웨어, 하드웨어 wallet에 의한 암호키 보관 관리 방법도 도난당하거나 분실해 버리면 무용지물이다. 왜냐하면 이미 설정된 암호키의 재현 방법이 없어졌기 때문이다.
본 발명에 의한 암호키 보관 관리하는 방법의 특징은 기존의 방식에 비해 아주 안전하고 간편하다. 왜냐 하면, 첫째, 암호키의 소스인 이미지는 유저의 정보 디바이스에서 보관 관리되기 때문에 많은 이미지 중에서 도난을 당하였다 하여도 제3자에게는 무용지물과 같다. 둘째, 이미지가 특정되었다 해도 유저의 특정 터치점 정보는 유저 정보 디바이스의 은밀한 메모리 디바이스에 암호화 되어 있어 편취하여 재현하기 어렵다. 셋째, 상기한 두 개의 정보, 즉 특정 이미지와 특정 터치 픽셀의 데이터를 취득하였다 해도 발명의 암호키의 생성 및 검증은 반드시 유저의 바이오 데이터 검증이 있어야 가능해진다. 따라서 제3자는 원천적으로 동일한 암호키를 생성할 수 없다. 넷째, 본 발명의 암호키는 분실 또는 도난으로부터 자유롭다. 언제 어디서나 암호키의 변경, 대체, 재생이 가능하기 때문이다.
암호키의 길이는 암호키의 소스 길이와 관계가 깊다. 일반적으로 암호키의 소스가 되는 데이터를 비밀키라 부르기도 한다. 또 상기 비밀키에서 중요한 것은 키공간이라는 개념이다. 키공간이란 ‘가능한 키의 총수’을 의미하며 상기 비밀키로 만들 수 있는 키의 총수를 말한다. 또 키 공간의 크기는 키의 비트 수로 나타낸다. 예를 들면 비밀키의 길이가 28 비트라면 256개의 비밀키를 만들 수 있다. 일반적으로 비밀키의 안전한 길이는 최대 "2512=1.340780 x 10154"으로 알려져 있다. 상기 최대 키 공간수의 속의 비밀키를 계산하는 문제는 현존하는 슈퍼 컴퓨터로도 수 백년이 걸리는 문제이다
한편, 본 발명의 상기 비밀키에 대응하는 암호 비밀키(소스)의 길이는 다음과 같다.
본 발명의 경우, 암호키의 소스(비밀키에 해당)가 되는 데이터는 유저가 선택한 이미지 상의 터치 특정 터치 픽셀의 좌표값(X,Y)과 픽셀의 컬러값(RGB)을 조합하여 생성한다. 따라서, 하나의 대표 픽셀 좌표치(X,Y)는 디스플레이 해상도(크기)에 따라 달라지며, 픽셀의 좌표치(X,Y)는 각각 정수의 데이터이므로 컴퓨터에서의 정수 데이터의 저장 크기는 OS에 따라 다르나 "216-264"비트이고, 픽셀의 색상 데이터는 "216-232"비트이므로 유저의 터치 특정 터치 픽셀 하나로 생성되는 패스워드의 길이는 최대 298, 최소 232가 된다. 또한, 상기의 결합 데이터와 함께 유저의 바이오 데이터가 부가된다. 상기 유저 바이오 데이터는 종류에 따라 다르나, 도 2에 도시된 바이오 데이터의 경우 264 비트이므로 좌표치 및 컬러값 데이터와 결합하면 최소 2112 비트, 최대 2168 비트가 된다. 본 발명이라면 이미지 수를 늘리거나 유저의 특정 터치점 수를 늘리는 방법으로 키 공간 수를 늘려 더욱 안전한 암호키를 유연하게 만들 수 있고, 난수 발생기 등의 툴을 설치하지 않고도 안전한 암호키를 생성, 관리할 수 있는 이점이 있다
현재 대부분의 스마트 폰에는 유저 바이오 데이터 인증 장치가 제공되고 있다. 유저 디바이스 내의 유저 바이오 인증 장치는 유저 정보 디바이스 내라는 폐쇄적 환경에서 단순한 유저 인식 서비스에 이용되고 있을 뿐이다. 그러나, 본 발명에서의 유저 바이오 데이터는 외부로 유출된다 하여도 또 다른 인증 요소와 결합되어 해쉬화되므로 분리 불가능하고, 분리한다 하여도 3개의 인증 데이터 모두를 구비하지 않거나 온라인 상태에서 유저 인식 결과 없이는 동일한 암호키를 원천적으로 생성할 수 없기 때문에 암호키의 유저 진정성(Authenticity)을 보증할 수 있고 또 유저 개인 정보 유출 위험에서 벗어날 수 있으며 상기한 다양한 어플리케이션에서 개방적이며 안정적으로 그리고 경제적인 유저 인증 및 서명 장치 서비스가 동시에 가능해진다는 점이다.
본 발명에 따르면, 세계 표준인 FIDO1.0 및 FIDO2.0 스팩과 프로토콜에 따른 유저 인증 및 서명 장치 및 방법보다 간편하고, 안전하며, 보다 강력한 기밀성을 가진 유저 인증 및 서명 장치 및 방법을 제공할 수 있다.
또한, 본 발명에 따르면, 유저의 고유한 3대 인증 정보를 기반으로 하는 유저 인증 및 서명 시스템을 제공할 수 있다. 구체적으로, 유저의 지식 정보, 소유 정보 및 바이오 정보를 기반으로 한 유저 인증 및 서명 시스템을 통해, FIDO 표준 규격 및 프로토콜과는 달리 서명 시스템이 없고, 유저 고유의 개인정보인 유저 바이오 정보를 제3자의 서비스 장치에 제공한다 해도 도용의 위험성이 없으며, 또한 분실에도 불구하고 제3자에게는 무용 지물의 데이터에 불과하여 유저 바이오 정보를 안심하고 이용할 수 있는 새로운 생태계의 유저 인증 및 서명 장치를 제공할 수 있다.
또한, 본 발명에 따르면, 암호키를 다른 장치 등에 저장할 필요가 없이 암호키 생성 과정만 기억해 두면 동일한 방법으로 여러 기기 및 서비스에서 안전하게 하나의 패스워드로 언제나 손쉬운 유저 인증 및 서명 방식을 제공할 수 있다.
또한, 본 발명에 따르면, 기억 부담이 적고 은닉성이 높은 유저의 암호키를 유저의 특정 사진/이미지를 이용하여 간편하게 생성할 수 있고, 유저의 바이오 데이터를 함께 이용하여 IoT, 암호화폐 유통 또는 다양한 용도의 어플리케이션 서비스에서 비밀성, 안전성, 재현성이 뛰어난 유저 인증 및 서명 통합 장치를 제공할 수 있다.
또한, 본 발명에 따르면, 암호키(개인키/공개키)를 생성하기 위해 난수 발생기 등과 같은 다른 툴의 제공이 불필요하여, 경제적인 유저 인증 및 서명 장치를 제공할 수 있다.
또한, 본 발명에 따르면, 기존의 FIDO 표준 방식의 유저 인증자인 유저의 바이오 데이터에 유저의 이미지/사진을 부가하여 다중 모달(Multimodal) 인증자로 하면 유저 편의성을 더욱 높일 수 있고, 또한 현행 FIDO 표준의 디지털 서명 방식인 공개키 서명 방식에 다중모달 인증자를 부가하면 FIDO 표준의 변경없이 보다 강력한 유저 서명 방식을 제공할 수도 있다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.
Claims (12)
- 터치 디스플레이와 컴퓨팅 기능을 구비한 유저 정보 디바이스;
상기 유저 정보 디바이스에 구비된 유저 바이오 입출력 장치를 이용하여 유저의 바이오 데이터를 유저로부터 취득한 후에 유저의 정보 디바이스 메모리에 저장하고, 상기 취득, 저장된 유저의 바이오 데이터를 기반으로 유저를 인식하는 유저 바이오 데이터 인식 프로세서를 구비한 유저 정보 디바이스;
상기 유저 정보 디바이스의 터치 디스플레이 상에 표시하기(display) 위한 특정 이미지 데이터를 상기 유저 정보 디바이스에 저장, 관리하는 유저 이미지 데이터 관리 프로세서;
상기 유저 정보 디바이스의 터치 디스플레이 상에 유저 암호키 등록을 요구하는 암호키 등록창 표시 프로세서;
유저 암호키 등록 요구에 답하여, 상기 유저 정보 디바이스의 이미지 저장 장치에 저장되어 있는 이미지 데이터 중에서, 유저 또는 상기 유저 이미지 데이터 관리 프로세서가 선택한 이미지 데이터를 상기 유저 정보 디바이스의 터치 디스플레이 상에 업로드하여 표시하는 유저 등록용 암호키 생성 이미지 업로드 프로세서;
상기 유저 등록용 암호키 생성 이미지 업로드 프로세서에 의하여 상기 유저 정보 디바이스의 터치 디스플레이 상에 표시된 이미지 데이터 상의 특정 위치 픽셀을 유저가 터치 지정하여 유저 등록용 암호키 생성 데이터를 취득하는 유저 등록용 암호키 생성 데이터 취득 프로세서; 및
유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 상기 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터 또는 상기 유저 등록용 암호키 생성 데이터 취득 프로세서가 취득한 유저 등록용 암호키 생성 데이터를 암호화하여 유저 등록용 암호키를 생성하는 유저 등록용 암호키 생성 프로세서를 구비하고,
상기 유저 등록용 암호키 생성 이미지 업로드 프로세서에 의하여 상기 유저 정보 디바이스의 터치 디스플레이 상에 표시된 이미지 데이터 상의 특정 위치 픽셀을 유저가 터치 지정하여 유저 등록용 암호키 생성 데이터를 취득하는 유저 등록용 암호키 생성 데이터 취득 프로세서는
(a) 상기 유저의 바이오 데이터를 유저로부터 상기 바이오 데이터 입출력 장치를 이용, 다시 취득하여 상기 이미 취득, 저장되어 있는 유저의 바이오 데이터와 비교하여 동일 유저임을 확인하는 유저 인식 처리를 실시한 후에, 터치 픽셀의 좌표값 및 터치 픽셀의 컬러값을 취득 처리하는 유저 등록용 암호키 생성 데이터 취득 프로세서; 또는
(b) 상기 유저의 바이오 데이터를 유저로부터 상기 바이오 데이터 입출력 장치를 이용, 다시 취득하여 상기 이미 취득, 저장되어 있는 유저의 바이오 데이터와 비교하여 동일 유저임을 확인하는 유저 인식 처리와 동시에 병행하여 상기 터치 픽셀의 좌표값 및 상기 터치 픽셀의 컬러값을 취득 처리하는 유저 등록용 암호키 생성 데이터 취득 프로세서
중에서 적어도 하나의 프로세서를 포함하는 것을 특징으로 하는 유저 인증 및 서명 장치. - 제1항에서,
유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 상기 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터 또는 상기 유저 등록용 암호키 생성 데이터 취득 프로세서에 의해 취득한 유저 등록용 암호키 생성 데이터를 암호화하여 유저 등록용 암호키를 생성하는 유저 등록용 암호키 생성 프로세서는
(a) 상기 터치 픽셀의 좌표값, 상기 터치 픽셀의 컬러값 또는 유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터 중에서, 적어도 하나 이상을 선택하여 각각 암호화를 먼저 실행한 후, 암호화된 각각의 데이터를 하나로 결합한 데이터, 하나 이상의 암호화된 데이터와 암호화되지 않은 데이터를 하나로 결합한 데이터, 또는 상기 하나로 결합한 데이터를 다시 암호화한 데이터 중에서 어느 하나를 상기 유저 등록용 암호키로 생성하는 유저 등록용 암호키 생성 프로세서;
(b) 상기 터치 픽셀의 좌표값, 상기 터치 픽셀의 컬러값 또는 유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터 중에서, 적어도 2개 이상의 데이터를 먼저 하나로 결합한 후에 암호화를 실행한 후에 암호화된 데이터, 상기 적어도 2개 이상의 데이터를 하나로 결합하여 암호화한 데이터와 암호화가 되지 않은 데이터를 하나로 결합한 데이터 또는 상기 결합한 데이터를 다시 암호화한 데이터 중에서 어느 하나를 상기 유저 등록용 암호키로 생성하는 유저 등록용 암호키 생성 프로세서
중에서 어느 하나의 프로세서를 포함하는 것을 특징으로 하는 유저 인증 및 서명 장치. - 제1항 또는 제2항에서,
획득된 터치 픽셀의 좌표값, 획득된 터치 픽셀의 컬러값 또는 상기 유저의 바이오 데이터를 암호화하여 상기 유저 등록용 암호키를 생성하는 것은 일방향 해쉬 함수(one-way hash function) 또는 타원 곡선 방정식(elliptic curve equation) 을 이용하여 암호화하고 암호키화할 수 있는 것을 특징으로 하는 유저 인증 및 서명 장치. - 터치 디스플레이와 컴퓨팅 기능을 구비한 유저 정보 디바이스;
상기 유저 정보 디바이스에 구비된 유저 바이오 입출력 장치를 이용하여 유저의 바이오 데이터를 유저로부터 취득한 후에 유저의 정보 디바이스 메모리에 저장하고, 상기 취득, 저장된 유저의 바이오 데이터를 기반으로 유저를 인식하는 유저 바이오 데이터 인식 프로세서를 구비한 유저 정보 디바이스;
상기 유저 정보 디바이스의 터치 디스플레이 상에 표시하기(display) 위한 특정 이미지 데이터를 상기 유저 정보 디바이스에 저장, 관리하는 유저 이미지 데이터 관리 프로세서;
상기 유저 정보 디바이스의 터치 디스플레이 상에 유저 암호키 인증을 요구하는 인증 암호키 입력창을 표시하는 프로세서;
유저 암호키 인증 요구에 답하여, 상기 유저 정보 디바이스의 이미지 저장 장치에 저장되어 있는 이미지 데이터 중에서, 유저 또는 상기 유저 이미지 데이터 관리 프로세서가 유저 등록용 암호키 용으로 선택한 이미지 데이터를 상기 유저 정보 디바이스의 터치 디스플레이 상에 다시 업로드하여 표시하는 유저 인증용 암호키 생성 이미지 업로드 프로세서;
유저가 다시 표시된 이미지 데이터 상에서 유저 암호키 등록 시에 터치 지정하였던 동일 위치의 픽셀을 다시 상기하여 재터치하면, 유저 인증용 암호키 생성 데이터를 취득하는 유저 인증용 암호키 생성 데이터 취득 프로세서;
상기 유저 인증용 암호키 생성 데이터 취득 프로세서가 취득한 유저 인증용 암호키 생성 데이터를 암호화하여 유저 인증용 암호키를 생성하는 유저 인증용 암호키 생성 프로세서; 및
상기 유저 인증용 암호키 생성 프로세서가 다시 생성한 암호키와 상기 유저 정보 디바이스 또는 유저 암호키 인증을 요구하는 기기 내에 이미 저장되어 있는 암호키를 비교, 판정하는 유저 등록 암호키 인증 프로세서를 구비하고,
유저가 상기 유저 인증용 암호키 생성 이미지 업로드 프로세서에 의해 다시 표시된 이미지 데이터 상에서 유저 암호키 등록 시에 터치 지정하였던 동일 위치의 픽셀을 다시 상기하여 재터치하면, 유저 인증용 암호키 생성 데이터를 취득하는 유저 인증용 암호키 생성 데이터 취득 프로세서는
(a) 유저의 바이오 데이터를 유저로부터 바이오 데이터 입출력 장치를 이용, 다시 취득하여 상기 이미 취득, 저장되어 있는 유저의 바이오 데이터와 비교하여 동일 유저임을 확인한 후에, 상기 다시 표시된 이미지 데이터 상에서 유저가 상기 유저 암호키 등록 시에 터치 지정하였던 동일 위치의 픽셀을 다시 상기하여 재터치하면, 재터치 픽셀의 좌표값 및 재터치 픽셀의 컬러값을 취득하는 프로세서; 또는
(b) 상기 다시 표시된 이미지 데이터 상에서 유저가 상기 유저 암호키 등록 시에 터치 지정하였던 동일 위치의 픽셀을 다시 상기하여 재터치하면, 상기 유저의 바이오 데이터를 다시 취득하여 상기 유저 바이오 데이터 인식 프로세서에 의해 저장되어 있는 유저의 바이오 데이터와 비교하는 처리와 동시에 병행하여 재터치 픽셀의 좌표값 및 재터치 픽셀의 컬러값을 취득하는 프로세서
중에서 어느 하나의 프로세서를 포함하는 것을 특징으로 하는 유저 인증 및 서명 장치. - 제4항에서,
다시 취득한 유저의 터치 데이터와, 저장된 유저의 바이오 데이터를 암호화하여 상기 유저 인증용 암호키를 생성하는 유저 인증용 암호키 생성 프로세서는
(a) 상기 재터치 픽셀의 좌표값, 상기 재터치 픽셀의 컬러값 또는 유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터 중에서, 적어도 하나 이상을 선택하여 각각 암호화를 먼저 실행한 후, 암호화된 각각의 데이터를 하나로 결합한 데이터, 하나 이상의 암호화된 데이터와 암호화되지 않은 데이터를 하나로 결합한 데이터, 또는 상기 하나로 결합한 데이터를 다시 암호화한 데이터 중에서 어느 하나를 상기 유저 인증용 암호키로 생성하는 유저 인증용 암호키 생성 프로세서;
(b) 상기 재터치 픽셀 좌표값, 상기 재터치 픽셀의 컬러값 또는 유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터 중에서, 적어도 2개 이상의 데이터를 먼저 하나로 결합한 후에 암호화를 실행한 후, 암호화된 데이터, 하나로 결합하여 암호화한 데이터와 암호화가 되지 않은 데이터를 하나로 결합한 데이터 또는 상기 결합한 데이터를 다시 암호화한 데이터 중에서 어느 하나를 상기 유저 인증용 암호키로 생성하는 유저 인증용 암호키 생성 프로세서;
중에서 어느 하나의 프로세서를 포함하는 것을 특징으로 하는 유저 인증 및 서명 장치. - 제4항 또는 제5항에서,
다시 획득된 동일 터치점의 대표 픽셀의 좌표값, 대표 픽셀의 컬러값 또는 상기 저장된 유저의 바이오 데이터를 다시 암호화하여 유저 인증용 암호키로 생성하는 것은 일방향 해쉬 함수(one-way hash function) 또는 타원 곡선 방정식(elliptic curve equation)을 이용하여 암호화하고 암호키화할 수 있는 것을 특징으로 하는 유저 인증 및 서명 장치. - 유저의 바이오 데이터 정보를 유저로부터 유저 정보 디바이스의 바이오 데이터 입출력 장치를 이용, 취득한 후, 상기 유저 정보 디바이스의 유저 바이오 데이터 프로세서 내의 메모리 디바이스에 저장하는 단계;
유저로부터 암호키(패스워드) 등록 요구를 수신하는 단계;
암호키 등록 요구에 답하여, 상기 유저 정보 디바이스의 이미지 저장 장치에 저장되어 있는 이미지 데이터 중에서, 유저 또는 이미지 데이터 처리 프로세서가 선택한 이미지 데이터를 상기 유저 정보 디바이스의 터치 디스플레이 상에 업로드하여 표시하는 단계;
상기 유저 정보 디바이스의 터치 디스플레이 상에 표시된 이미지 데이터 상의 특정 위치의 픽셀을 유저가 터치 지정하면, 터치 픽셀의 좌표값 및 터치 픽셀의 컬러값을 유저 등록용 암호키 생성 데이터로 취득하는 단계; 및
상기 터치 픽셀의 좌표값 및 상기 터치 픽셀의 컬러값, 또는 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터를 조합하여 암호화하고 유저 등록용 암호키로 생성하는 단계를 포함하고,
상기 유저 정보 디바이스의 터치 디스플레이 상에 표시된 이미지 데이터 상의 특정 위치의 픽셀을 유저가 터치 지정하면, 상기 터치 픽셀의 좌표값 및 상기 터치 픽셀의 컬러값을 유저 등록용 암호키 생성 데이터로 취득하는 단계는
(a) 상기 유저의 바이오 데이터를 유저로부터 바이오 데이터 입출력 장치를 이용, 다시 취득하여 상기 이미 취득, 저장되어 있는 유저의 바이오 데이터와 비교하여 동일 유저임을 확인한 후에, 상기 터치 픽셀의 좌표값 및 상기 터치 픽셀의 컬러값을 취득하는 단계; 또는
(b) 상기 유저의 바이오 데이터를 다시 취득하여 유저 바이오 데이터 검증 프로세서에 의해 저장되어 있는 유저의 바이오 데이터와 비교하는 처리와 동시에 병행하여 상기 터치 픽셀의 좌표값 및 상기 픽셀의 컬러값을 취득하는 단계
중에서 적어도 하나의 단계를 포함하는 것을 특징으로 하는 유저 인증 및 서명 방법. - 제7항에서,
상기 터치 픽셀의 좌표값 및 상기 터치 픽셀의 컬러값, 또는 상기 저장된 유저의 바이오 데이터를 조합하여 암호화하고 유저 등록용 암호키로 생성하는 단계는
(a) 상기 터치 픽셀의 좌표값, 상기 터치 픽셀의 컬러값 또는 유저로부터 상기 바이오 데이터 입출력 장치를 이용, 취득하여 상기 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터 중에서, 적어도 하나 이상을 선택하여 각각 암호화를 먼저 실행한 후, 암호화된 각각의 데이터를 하나로 결합한 데이터, 하나 이상의 암호화된 데이터와 암호화되지 않은 데이터를 하나로 결합한 데이터, 또는 상기 하나로 결합한 데이터를 다시 암호화한 데이터 중에서 어느 하나를 상기 유저 등록용 암호키로 생성하는 단계; 또는
(b) 상기 터치 픽셀의 좌표값, 상기 터치 픽셀의 컬러값 또는 유저로부터 상기 바이오 데이터 입출력 장치를 이용, 취득하여 상기 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터 중에서, 적어도 2개 이상의 데이터를 먼저 하나로 결합한 후에 암호화를 실행한 후에 암호화된 데이터, 상기 적어도 2개 이상의 데이터를 하나로 결합하여 암호화한 데이터와 암호화가 되지 않은 데이터를 하나로 결합한 데이터 또는 상기 결합한 데이터를 다시 암호화한 데이터 중에서 어느 하나를 상기 유저 등록용 암호키로 생성하는 단계;
중에서 어느 하나의 단계를 포함하는 것을 특징으로 하는 유저 인증 및 서명 방법. - 제7항 또는 제8항에서,
상기 터치 픽셀의 좌표값 및 상기 터치 픽셀의 컬러값, 또는 상기 저장된 유저의 바이오 데이터를 조합하여 암호화하고 유저 등록용 암호키로 생성하는 단계는,
일방향 해쉬 함수(one-way hash function) 또는 타원 곡선 방정식(elliptic curve equation)을 이용하여 암호화하고 암호키화할 수 있는 것을 특징으로 하는 유저 인증 및 서명 방법. - 등록되어 있는 유저 암호키에 대한 인증 요구를 수신하는 단계;
유저 암호키 인증 요구에 답하여, 유저 정보 디바이스의 이미지 저장 장치에 저장되어 있는 이미지 데이터 중에서, 유저 또는 이미지 데이터 처리 프로세서가 유저 등록용 암호키 용으로 선택한 이미지 데이터를 상기 유저 정보 디바이스의 터치 디스플레이 상에 다시 업로드하여 표시하는 단계;
유저가 다시 표시된 이미지 데이터 상에서 유저 암호키 등록 시에 터치 지정하였던 동일 위치의 픽셀을 다시 상기하여 재터치하면, 유저 인증용 암호키 생성 데이터를 취득하는 단계;
상기 유저 인증용 암호키 생성 데이터를 암호화하여 유저 인증용 암호키로 생성하는 단계;
유저 인증용 암호키 생성 프로세서가 다시 생성한 암호키와 상기 유저 정보 디바이스 또는 유저 암호키 인증을 요구하는 기기 내에 등록되어 있는 암호키를 비교, 판정하는 단계를 포함하고,
상기 다시 표시된 이미지 데이터 상에서 유저가 유저 암호키 생성 시에 터치 지정하였던 동일 위치의 픽셀을 다시 상기하고 재터치하면, 유저 인증용 암호키 생성 데이터를 취득하는 단계는
(a) 유저의 바이오 데이터를 유저로부터 바이오 데이터 입출력 장치를 이용, 다시 취득하여 상기 이미 취득, 저장되어 있는 유저의 바이오 데이터와 비교하여 동일 유저임을 확인한 후에, 상기 다시 표시된 이미지 데이터 상에서 유저가 상기 유저 암호키 생성 시에 터치 지정하였던 동일 위치의 픽셀을 다시 상기하고 재 터치하면, 재터치 픽셀의 좌표값 및 재터치 픽셀의 컬러값을 취득하는 단계; 또는
(b) 상기 다시 표시된 이미지 데이터 상에서 유저가 상기 유저 암호키 등록 시에 터치 지정하였던 동일 위치의 픽셀을 다시 상기하여 재터치하면, 상기 유저의 바이오 데이터를 다시 취득하여 유저 바이오 데이터 인식 프로세서에 의해 저장되어 있는 유저의 바이오 데이터와 비교하는 처리와 동시에 병행하여 재터치 픽셀의 좌표값 및 재터치 픽셀의 컬러값을 취득하는 단계;
중에서 어느 하나의 단계를 포함하는 것을 특징으로 하는 유저 인증 및 서명 방법. - 제10항에서,
상기 유저 인증용 암호키 생성 데이터를 암호화하여 유저 인증용 암호키로 생성하는 단계는,
(a) 상기 재터치 픽셀의 좌표값, 상기 재터치 픽셀의 컬러값 또는 유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터 중에서, 적어도 하나 이상을 선택하여 각각 암호화를 먼저 실행한 후, 암호화된 각각의 데이터를 하나로 결합한 데이터, 하나 이상의 암호화된 데이터와 암호화되지 않은 데이터를 하나로 결합한 데이터, 또는 상기 하나로 결합한 데이터를 다시 암호화한 데이터 중에서 어느 하나를 상기 유저 인증용 암호키로 생성하는 단계; 또는
(b) 상기 재터치 픽셀의 좌표값, 상기 재터치 픽셀의 컬러값 또는 유저로부터 바이오 데이터 입출력 장치를 이용, 취득하여 유저의 정보 디바이스 메모리에 저장된 유저의 바이오 데이터 중에서, 적어도 2개 이상의 데이터를 먼저 하나로 결합한 후에 암호화를 실행한 후에 암호화된 데이터, 하나로 결합하여 암호화한 데이터와 암호화가 되지 않은 데이터를 하나로 결합한 데이터 또는 상기 결합한 데이터를 다시 암호화한 데이터 중에서 어느 하나를 상기 유저 인증용 암호키로 생성하는 단계
중에서 어느 하나의 단계를 포함하는 것을 특징으로 하는 유저 인증 및 서명 방법. - 제10항 또는 제11항에서,
상기 유저 인증용 암호키 생성 데이터를 암호화하여 유저 인증용 암호키로 생성하는 단계는,
일방향 해쉬 함수(one-way hash function) 또는 타원 곡선 방정식(elliptic curve equation)을 이용하여 암호화하고 암호키화할 수 있는 것을 특징으로 하는 유저 인증 및 서명 방법.
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190060543A KR102068041B1 (ko) | 2019-05-23 | 2019-05-23 | 유저 바이오 데이터를 이용한 유저 인증 및 서명 장치와 방법 |
PCT/KR2019/006588 WO2020235733A1 (ko) | 2019-05-23 | 2019-05-31 | 유저 바이오 데이터를 이용한 유저 인증 및 서명 장치와 방법 |
CN201980096095.2A CN113826096A (zh) | 2019-05-23 | 2019-05-31 | 利用用户生物特征识别数据的用户认证及签名装置和方法 |
JP2021568701A JP7250960B2 (ja) | 2019-05-23 | 2019-05-31 | ユーザのバイオメトリクスを利用したユーザ認証および署名装置、並びにその方法 |
US17/612,109 US11868457B2 (en) | 2019-05-23 | 2019-05-31 | Device and method for authenticating user and obtaining user signature using user's biometrics |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190060543A KR102068041B1 (ko) | 2019-05-23 | 2019-05-23 | 유저 바이오 데이터를 이용한 유저 인증 및 서명 장치와 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102068041B1 true KR102068041B1 (ko) | 2020-01-20 |
Family
ID=69368029
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190060543A KR102068041B1 (ko) | 2019-05-23 | 2019-05-23 | 유저 바이오 데이터를 이용한 유저 인증 및 서명 장치와 방법 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11868457B2 (ko) |
JP (1) | JP7250960B2 (ko) |
KR (1) | KR102068041B1 (ko) |
CN (1) | CN113826096A (ko) |
WO (1) | WO2020235733A1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230094335A (ko) | 2021-12-21 | 2023-06-28 | 김강민 | 좌표 클릭 비밀번호 입력방법 및 시스템. |
KR102564618B1 (ko) * | 2022-04-21 | 2023-08-08 | 주식회사 네오패드 | 송신자 또는 수신자의 미디어 콘텐츠 파일을 이용한 암호 시스템 및 방법 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12021978B2 (en) * | 2021-07-22 | 2024-06-25 | Oracle International Corporation | Blockchain record of user biometrics for access control |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6435342A (en) | 1987-07-31 | 1989-02-06 | Nec Corp | Distortion inspection device for optical parts |
KR20040048115A (ko) * | 2002-12-02 | 2004-06-07 | 주식회사 시큐아이티 | 이동통신 네트워크에서 인증을 위한 다중생체정보의송수신 장치 및 방법 |
KR20040070746A (ko) * | 2003-02-04 | 2004-08-11 | 문상윤 | 지문인식장치의 통합 입력장치 및 그 처리방법 |
KR101473640B1 (ko) | 2014-01-08 | 2014-12-17 | 주식회사 네오패드 | 터치 단말기 및 터치 단말기의 패스워드 생성 방법 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002229948A (ja) | 2001-02-01 | 2002-08-16 | Matsushita Electric Ind Co Ltd | 認証システム、およびプログラム |
JP5594345B2 (ja) | 2012-10-31 | 2014-09-24 | 日本電気株式会社 | 生体認証装置、生体認証方法及びプログラム |
AU2014311784B2 (en) * | 2013-06-13 | 2017-11-16 | Visa International Service Association | Image based key derivation function |
KR20150022276A (ko) * | 2013-08-22 | 2015-03-04 | 삼성전자주식회사 | 이미지 파일에서 암호화된 메시지를 추출하는 전자 장치 및 방법 |
US20190050554A1 (en) * | 2013-09-04 | 2019-02-14 | Michael Stephen Fiske | Logo image and advertising authentication |
KR20180013524A (ko) | 2016-07-29 | 2018-02-07 | 삼성전자주식회사 | 전자 장치 및 전자 장치의 생체 정보 인증 방법 |
KR101897715B1 (ko) | 2016-12-15 | 2018-10-29 | 한국인터넷진흥원 | 바이오정보를 이용한 패스워드 없는 전자서명 시스템 |
EP3474485B1 (en) * | 2017-10-20 | 2020-05-27 | Secure-IC SAS | Key generation from an imaging sensor |
-
2019
- 2019-05-23 KR KR1020190060543A patent/KR102068041B1/ko active IP Right Grant
- 2019-05-31 JP JP2021568701A patent/JP7250960B2/ja active Active
- 2019-05-31 US US17/612,109 patent/US11868457B2/en active Active
- 2019-05-31 WO PCT/KR2019/006588 patent/WO2020235733A1/ko active Application Filing
- 2019-05-31 CN CN201980096095.2A patent/CN113826096A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6435342A (en) | 1987-07-31 | 1989-02-06 | Nec Corp | Distortion inspection device for optical parts |
KR20040048115A (ko) * | 2002-12-02 | 2004-06-07 | 주식회사 시큐아이티 | 이동통신 네트워크에서 인증을 위한 다중생체정보의송수신 장치 및 방법 |
KR20040070746A (ko) * | 2003-02-04 | 2004-08-11 | 문상윤 | 지문인식장치의 통합 입력장치 및 그 처리방법 |
KR101473640B1 (ko) | 2014-01-08 | 2014-12-17 | 주식회사 네오패드 | 터치 단말기 및 터치 단말기의 패스워드 생성 방법 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230094335A (ko) | 2021-12-21 | 2023-06-28 | 김강민 | 좌표 클릭 비밀번호 입력방법 및 시스템. |
KR102674995B1 (ko) * | 2021-12-21 | 2024-06-14 | 김강민 | 좌표 클릭 비밀번호 입력방법 및 시스템. |
KR102564618B1 (ko) * | 2022-04-21 | 2023-08-08 | 주식회사 네오패드 | 송신자 또는 수신자의 미디어 콘텐츠 파일을 이용한 암호 시스템 및 방법 |
WO2023204678A1 (ko) * | 2022-04-21 | 2023-10-26 | 주식회사 네오패드 | 송신자 또는 수신자의 미디어 콘텐츠 파일을 이용한 암호 시스템 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
WO2020235733A1 (ko) | 2020-11-26 |
JP7250960B2 (ja) | 2023-04-03 |
JP2022533979A (ja) | 2022-07-27 |
CN113826096A (zh) | 2021-12-21 |
US11868457B2 (en) | 2024-01-09 |
US20220253516A1 (en) | 2022-08-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11855983B1 (en) | Biometric electronic signature authenticated key exchange token | |
CN109951489B (zh) | 一种数字身份认证方法、设备、装置、系统及存储介质 | |
US11343099B2 (en) | System and method for securing personal information via biometric public key | |
US10592651B2 (en) | Visual image authentication | |
KR102583536B1 (ko) | 공개/비공개 키 바이오메트릭 인증 시스템 | |
US11824991B2 (en) | Securing transactions with a blockchain network | |
CN110334498B (zh) | 利用一个设备解锁另一个设备的方法 | |
JP6921222B2 (ja) | Id情報に基づく暗号鍵管理 | |
TWI578749B (zh) | 用於遷移金鑰之方法及設備 | |
US20190050554A1 (en) | Logo image and advertising authentication | |
US9384338B2 (en) | Architectures for privacy protection of biometric templates | |
US10848304B2 (en) | Public-private key pair protected password manager | |
US11475105B2 (en) | Authentication translation | |
JPWO2007094165A1 (ja) | 本人確認システムおよびプログラム、並びに、本人確認方法 | |
US20130088327A1 (en) | Template delivery type cancelable biometric authentication system and method therefor | |
US20240048555A1 (en) | Privacy-Preserving Biometric Authentication | |
KR102068041B1 (ko) | 유저 바이오 데이터를 이용한 유저 인증 및 서명 장치와 방법 | |
US11405387B1 (en) | Biometric electronic signature authenticated key exchange token | |
CA3227278A1 (en) | Methods and systems for generating and validating uses of digital credentials and other documents | |
CN113904850A (zh) | 基于区块链私钥keystore安全登录方法、生成方法、系统及电子设备 | |
JP4749017B2 (ja) | 擬似生体認証システム、及び擬似生体認証方法 | |
US20240121098A1 (en) | Scalable Authentication System with Synthesized Signed Challenge | |
US20240169350A1 (en) | Securing transactions with a blockchain network | |
Ranganath | Cloud Data Security through Hybrid Verification Technique Based on Cryptographic Hash Function | |
JP2019201392A (ja) | 暗号化システム、暗号化システム用サーバ、暗号化アプリケーションプログラム、暗号化方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |