KR20180069435A - 생체 정보를 이용한 otp 인증 방법 및 이를 실행하는 시스템 - Google Patents

생체 정보를 이용한 otp 인증 방법 및 이를 실행하는 시스템 Download PDF

Info

Publication number
KR20180069435A
KR20180069435A KR1020160171623A KR20160171623A KR20180069435A KR 20180069435 A KR20180069435 A KR 20180069435A KR 1020160171623 A KR1020160171623 A KR 1020160171623A KR 20160171623 A KR20160171623 A KR 20160171623A KR 20180069435 A KR20180069435 A KR 20180069435A
Authority
KR
South Korea
Prior art keywords
otp
value
user biometric
code
authentication
Prior art date
Application number
KR1020160171623A
Other languages
English (en)
Other versions
KR101960797B1 (ko
Inventor
한승은
이진혁
Original Assignee
주식회사 아이리시스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 아이리시스 filed Critical 주식회사 아이리시스
Priority to KR1020160171623A priority Critical patent/KR101960797B1/ko
Publication of KR20180069435A publication Critical patent/KR20180069435A/ko
Application granted granted Critical
Publication of KR101960797B1 publication Critical patent/KR101960797B1/ko

Links

Images

Classifications

    • 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
    • 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/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • G06K9/00597
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3821Electronic credentials
    • G06Q20/38215Use of certificates or encrypted proofs of transaction rights
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3827Use of message hashing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • G06Q20/4014Identity check for transactions
    • G06Q20/40145Biometric identity checks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/18Eye characteristics, e.g. of the iris
    • 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/3231Biological data, e.g. fingerprint, voice or retina
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Signal Processing (AREA)
  • Finance (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Ophthalmology & Optometry (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Collating Specific Patterns (AREA)

Abstract

본 발명의 일 실시예에 따른 생체 정보를 이용한 OTP 인증 방법은 OTP 인증 장치가 사용자 생체 코드를 수신하면 상기 사용자 생체 코드를 이용하여 OTP 값을 생성하는 단계, 상기 OTP 인증 장치가 상기 OTP 값을 인증 서버에 제공하는 단계 및 상기 인증 서버가 상기 OTP 인증 장치로부터 수신된 OTP 값이 미리 생성된 OTP 값과 동일한지 여부에 따라 인증을 실행하는 단계를 포함한다. 따라서, 본 발명은 OTP 인증 장치가 악의적인 사용자에 의해 공격을 당하더라도 암호화값만을 알 수 있을 뿐 생체 정보나 OTP 씨드를 유추할 수 없다.

Description

생체 정보를 이용한 OTP 인증 방법 및 이를 실행하는 시스템{method of authorizating one time password using bio-signal and system performing the same}
본 발명은 생체 정보를 이용한 OTP 인증 방법 및 이를 실행하는 시스템에 관한 것으로, OTP 인증 장치가 악의적인 사용자에 의해 공격을 당하더라도 암호화 값만을 알 수 있을 뿐 OTP 씨드나 생체 정보를 유추할 수 없도록 하는 생체 정보를 이용한 OTP 인증 방법 및 이를 실행하는 시스템에 관한 것이다.
OTP(One Time Password, 일회용 패스워드)는 무작위로 생성되는 난수의 일회용 패스워드를 이용하는 사용자 인증 방식으로서 동일한 패스워드가 반복 사용됨으로 발생하는 보안상의 취약점을 극복하기 위해 도입되었다.
현재 이용되고 있는 OTP 타입으로 소프트웨어 타입과 하드웨어 타입을 들 수 있는데, 소프트웨어 타입은 PC나 스마트기기에서 소프트웨어 형태로 동작되기 때문에 악의적인 해킹이나 유출 등으로 복제가 되어 보안성에 취약하고, 하드웨어 타입은 휴대의 불편함과 기기 보급 비용 등을 이유로 금융권 이외에 일반적인 기업과 공공기관 등에 널이 이용되지 못하는 것이 현실이다.
또한 OTP가 물리적으로 공격을 당해 OTP씨드나 규칙이 유출될 경우 안전성이 떨어진다는 문제점이 있다. 종래에는 상기의 문제점을 해결하기 위해서, 공격을 감지하면 해당 OTP 정보를 삭제하였다.
이에 배터리 교체 등 의 현실적 상황이 발생할 시 사용 불가능 해져버리는 문제가 있었다. 이런 부채널공격을 대비하느라 정상사용자도 못 쓰게 만드는 부작용이 있었다.
본 발명은 상기한 바와 같은 종래기술의 문제점을 해결하기 위한 것으로서, OTP 인증 장치가 악의적인 사용자에 의해 공격을 당하더라도 암호화 값만을 알 수 있을 뿐 생체 정보나 OTP 씨드나 생체 정보를 유추할 수 없도록 하는 생체 정보를 이용한 OTP 인증 방법 및 이를 실행하는 시스템을 제공하는데 그 목적이 있다.
또한, 본 발명은 생체 정보를 이용한 OTP 인증 방법 및 이를 실행하는 시스템에 따르면, 생체 정보를 이용하므로, 한 개의 OTP를 여러 명이 사용하는 경우에도 각각의 사용자마다 다른 고유값을 갖는 OTP로 사용할 수 있도록 하는 생체 정보를 이용한 OTP 인증 방법 및 이를 실행하는 시스템을 제공하는데 그 목적이 있다.
전술한 바와 같은 목적을 해결하기 위한 수단으로 본 발명은 다음과 같은 구성으로 이루어질 수 있다.
본 발명의 실시 예에 따른 생체 정보를 이용한 OTP 인증 방법은, OTP 인증 장치가 사용자 생체 정보를 수신하면 사용자 생체 코드로 변환하는 단계;
사용자 생체 코드를 수신하면 상기 사용자 생체 코드를 이용하여 OTP 값을 생성하는 단계;
상기 OTP 인증 장치가 상기 OTP 값을 인증 서버에 제공하는 단계; 및
상기 인증 서버가 상기 OTP 인증 장치로부터 수신된 OTP 값이 미리 생성된 OTP 값과 동일한지 여부에 따라 인증을 실행하는 단계를 포함한다.
본 발명에 따른 생체 정보를 이용한 OTP 인증 방법에서, 상기 인증 서버가 상기 사용자 생체 코드를 기초를 이용하여 암호화 값 및 해쉬 값을 생성하는 단계; 및 상기 인증 서버가 암호화 값을 상기 OTP 인증 장치에 기록하여 발급하고 상기 해쉬 값을 저장하는 단계를 더 포함한다.
본 발명에 따른 생체 정보를 이용한 OTP 인증 방법에서, 상기 사용자 생체 코드를 이용하여 OTP 값을 생성하는 단계는 상기 OTP 인증 장치가 사용자 생체 코드를 수신하면 상기 사용자 생체 코드를 이용하여 미리 등록된 암호화 값을 복호화하여 상기 해쉬 값을 생성하는 단계; 및 상기 해쉬 값 및 시간 정보를 이용하여 OTP 값을 생성하는 단계를 포함한다.
본 발명에 따른 생체 정보를 이용한 OTP 인증 방법에서, 상기 인증 서버는, 상기 인증 서버가 상기 OTP 인증 장치를 발급 시 생성하여 저장한 상기 해쉬 값 및 시간 정보를 이용하여 OTP 값을 생성하는 단계; 및 상기 인증 서버가 상기 OTP 인증 장치로부터 수신된 OTP 값 및 상기 생성된 OTP 값을 비교하여 인증을 실행하는 단계를 포함한다.
본 발명에 따른 생체 정보를 이용한 OTP 인증 방법에서, 상기 사용자 생체 코드를 이용하여 OTP 값을 생성하는 단계는, 상기 OTP 인증 장치에 사용자 생체 코드를 분할하는 경우, 상기 복수개의 사용자 생체 코드 각각에 보안 코드 워드를 적용하는 단계; 상기 보안 코드 워드가 적용된 분할 사용자 생체 코드를 이용 또는 수정하여 또 다른 분할 생체 코드를 획득하는 단계; 및 상기 또 다른 분할 생체 코드를 보안 코드 워드를 이용하여 에러를 정정하여 상기 사용자 생체 코드를 복구하는 단계를 포함한다.
본 발명에 따른 생체 정보를 이용한 OTP 인증 방법에서, 상기 OTP 인증 장치가 사용자 생체 정보를 수신하면 사용자 생체 코드로 변환하는 단계는 상기 OTP 인증 장치가 사용자 생체 정보를 수신하면 상기 사용자 생체 정보의 종류에 따라 미리 결정된 알고리즘을 이용하여 상기 사용자 생체 정보를 상기 사용자 생체 코드로 변환하는 단계를 포함하고, 상기 사용자 생체 정보의 종류가 홍채 정보인 경우, 홍채 위치 탐색 알고리즘 및 영상 정보를 숫자 정보로 변환하는 변환 알고리즘을 이용하여 상기 사용자 생체 정보를 상기 사용자 생체 코드로 변환할 수 있다.
본 발명의 실시예에 따른 생체 정보를 이용한 OTP 인증 시스템은, 인증 서버 및 OTP 인증 장치를 포함하는 생체 정보를 이용한 OTP 인증 시스템에 있어서, 사용자 생체 코드를 수신하면 상기 사용자 생체 코드를 이용하여 OTP 값을 생성하고, 상기 OTP 값을 인증 서버에 제공하는 OTP 인증 장치; 및 상기 OTP 인증 장치로부터 수신된 OTP 값이 미리 저장된 OTP 값과 동일한지 여부에 따라 인증을 실행하는 인증 서버를 포함한다.
본 발명에 따른 생체 정보를 이용한 OTP 인증 시스템에서, 상기 인증 서버는, 상기 사용자 생체 코드를 기초를 이용하여 암호화 값 및 해쉬 값을 생성하고, 상기 암호화 값을 상기 OTP 인증 장치에 기록하여 발급하고 상기 해쉬 값을 저장할 수 있다.
본 발명에 따른 생체 정보를 이용한 OTP 인증 시스템에서, 상기 OTP 인증 장치는, 사용자 생체 코드를 수신하면 상기 사용자 생체 코드를 이용하여 미리 등록된 암호화 값을 복호화하여 상기 해쉬 값을 생성하고, 상기 해쉬 값 및 시간 정보를 이용하여 OTP 값을 생성할 수 있다.
본 발명에 따른 생체 정보를 이용한 OTP 인증 시스템에서, 상기 인증 서버는, 상기 OTP 인증 장치를 발급 시 생성하여 저장한 상기 해쉬 값 및 시간 정보를 이용하여 OTP 값을 생성하고, 상기 OTP 인증 장치로부터 수신된 OTP 값 및 상기 생성된 OTP 값을 비교하여 인증을 실행할 수 있다.
본 발명에 따른 생체 정보를 이용한 OTP 인증 시스템에서, 상기 OTP 인증 장치는 사용자 생체 코드를 조각낸 경우, 상기 복수개의 분할 사용자 생체 코드 각각에 보안 코드 워드를 적용하고, 상기 보안 코드 워드가 적용된 분할 사용자 생체 코드를 이용 또는 수정하여 또 다른 분할 생체 코드를 획득하고, 상기 또 다른 분할 생체 코드를 보안 코드 워드를 이용하여 에러를 정정하여 상기 사용자 생체 코드를 복구할 수 있다.
본 발명에 따른 생체 정보를 이용한 OTP 인증 시스템에서, 상기 OTP 인증 장치는 사용자 생체 정보를 수신하면 상기 사용자 생체 정보의 종류에 따라 미리 결정된 알고리즘을 이용하여 상기 사용자 생체 정보를 상기 사용자 생체 코드로 변환하고, 상기 사용자 생체 정보의 종류가 홍채 정보인 경우, 홍채 위치 탐색 알고리즘 및 영상 정보를 숫자 정보로 변환하는 변환 알고리즘을 이용하여 상기 사용자 생체 정보를 상기 사용자 생체 코드로 변환할 수 있다.
본 발명에 따른 생체 정보를 이용한 OTP 인증 방법 및 이를 실행하는 시스템은 OTP 인증 장치가 악의적인 사용자에 의해 공격을 당하더라도 암호화 값만을 알 수 있을 뿐 생체 정보나 OTP 씨드나 생체 정보를 유추할 수 없다는 장점이 있다.
또한 본 발명에 따른 생체 정보를 이용한 OTP 인증 방법 및 이를 실행하는 시스템에 따르면, 생체 정보만이 있어야 OTP 값을 생성할 수 있기 때문에 2채널 인증 효과, 부채널 공격 대상이 없는 효과, 부채널을 방어하다가 정상사용자도 못쓰는 부작용이 사라지는 효과 및 공격대상이 없으므로 이에 따라 부채널 방어 비용을 절감할 수 있는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 생체 정보를 이용한 OTP 인증 시스템을 설명하기 위한 시스템이다.
도 2는 본 발명의 일 실시예에 따른 생체 정보를 이용한 OTP 인증 과정을 설명하기 위한 흐름도이다.
도 3은 에러 정정을 위해 생체정보의 분할 예를 설명하기 위한 도면이다.
이하에서는 첨부된 도면을 참조하여 본 발명의 실시예들을 상세히 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 생체 정보를 이용한 OTP 인증 시스템을 설명하기 위한 시스템이다.
도 1을 참조하면, 생체 정보를 이용한 OTP 인증 시스템은 인증 서버(100) 및 OTP 인증 장치(200)를 포함한다.
인증 서버(100)는 OTP 인증 장치(200)로부터 사용자 생체 코드를 기초로 생성된 해쉬 값을 이용하여 OTP 인증 장치(200)를 인증하는 서버이다.
일 실시예에서, 인증 서버(100)는 OTP 인증 장치(200)를 한 명의 사용자만이 사용하는 경우, OTP 인증 장치(200)를 발급 시 사용자 생체 코드를 기초로 암호화 값 및 해쉬 값을 생성한 후, 암호화 값을 OTP 인증 장치(200)에 저장하여 발급하며, 해쉬 값만을 저장하고 있다.
이때, 인증 서버(100)는 SHA 256 알고리즘에 의거하여 사용자 생체 코드를 해쉬하여 해쉬 값을 생성할 수 있다. 본 발명에서는 SHA 256 알고리즘에 의거하여 해쉬 하였지만, 본 발명이 여기에 제한되지 않을 것이다. 본 발명은 인코딩된 홍채 정보를 다양한 해쉬 함수 혹은 알고리즘을 통하여 해쉬할 수 있다고 이해되어야 할 것이다.
예를 들어, 인증 서버(100)는 OTP 인증 장치(200)를 발급 시 사용자 생체 코드(w)를 기초로 암호화 값(S) 및 해쉬 값(H(w))를 생성한 후, 암호화 값(S)을 OTP 인증 장치(200)에 저장하여 발급하며, 해쉬 값(H(w))만을 저장하고 있다.
상기와 같이, 인증 서버(100)가 암호화 값(S)을 OTP 인증 장치(200)에 저장하여 발급하고, 해쉬 값(H(w))을 저장하는 이유는 OTP 인증 장치(200)에서 사용자 생체 코드(w')가 수신 시 사용자 생체 코드(w')를 통해 암호화 값(S)이 복호화된 후 OTP 값(H(w))이 다시 수신되면 해쉬 값(H(w))과 동일한지 여부를 확인하기 위해서이다.
그런 다음, 인증 서버(100)는 OTP 인증 장치(200)로부터 OTP 값을 수신하면, OTP 값이 미리 생성된 OTP 값과 동일한지 여부에 따라 인증한 후 인증 결과에 따라 서비스를 제공한다. 이를 위해, 인증 서버(100)는 OTP 인증 장치(200)를 발급 시 생성하여 저장한 해쉬 값 및 시간 정보를 이용하여 OTP 값을 생성하며, OTP 값이 OTP 인증 장치(200)로부터 수신된 OTP 값과 동일한지 여부에 따라 인증을 실행하는 위해서이다.
다른 일 실시예에서, 인증 서버(100)는 OTP 인증 장치(200)를 다수의 사용자가 사용하는 경우, OTP 인증 장치(200)를 발급 시 다수의 사용자 각각의 사용자 생체 코드를 기초로 암호화 값 및 해쉬 값을 생성한 후, 암호화 값을 OTP 인증 장치(200)에 저장하여 발급하며, 해쉬 값만을 저장하고 있다.
예를 들어, 인증 서버(100)는 OTP 인증 장치(200)를 사용자 A 및 사용자 B가 사용하는 경우, OTP 인증 장치(200)를 발급 시 사용자 A의 사용자 생체 코드(w)를 기초로 암호화 값(a’S) 및 해쉬 값(a’h(w))를 생성하고, 사용자 B의 사용자 생체 코드(w)를 기초로 암호화 값(b’S)및 해쉬 값(b’h(w))를 생성한 후, 암호화 값을 OTP 인증 장치(200)에 저장하여 발급하며, 해쉬 값만을 저장하고 있다.
그런 다음, 인증 서버(100)는 OTP 인증 장치(200)로부터 OTP 값을 수신하면, OTP 값이 미리 생성된 OTP 값과 동일한지 여부에 따라 인증한 후 인증 결과에 따라 서비스를 제공한다. 이를 위해, 인증 서버(100)는 OTP 인증 장치(200)를 발급 시 생성하여 저장한 해쉬 값 H(A) + H(b) = H(ab) 및 시간 정보를 이용하여 OTP 값을 생성하며, OTP 값이 OTP 인증 장치(200)로부터 수신된 OTP 값과 동일한지 여부에 따라 인증을 실행하는 위해서이다.
동시 사용뿐만 아니라 개별 사용도 가능하다.
이 경우, 인증서버(100)는 OTP 인증장치(200)로부터 OTP 값을 수신하면, OTP 값이 미리 생성된 OTP 값과 동일한지 여부에 따라 인증한 후 인증결과에 따라 서비스를 제공한다. 이를 위해, 인증 서버(100)는 OTP 인증장치(200)를 발급 시 생성하여 저장한 해쉬 값 H(a) 또는 H(b) 및 시간정보를 이용하여 OTP 값을 생성하며, OTP 값이 OTP 인증장치(200)로부터 수신된 OTP 값과 동일한지 여부에 따라 인증을 실행한다.
OTP 인증 장치(200)는 키 발생 요청에 응답하여 생체 인식 알고리즘을 수행할 수 있다. 이때, OTP 인증 장치(200)는 사용자 생체 코드의 인식에 성공했을 때, 인식된 사용자 생체 코드를 ECC 알고리즘에 의거하여 인코딩할 수 있다. 본 발명은 홍채 정보를 다양한 에러 정정(ECC, error correction code) 알고리즘을 통하여 인코딩할 수 있다고 이해되어야 할 것이다.
예를 들어, ECC는 LDPC(low density parity check) code, BCH(Bose-Caudhro-Hocqeunghem) code, turbo code, 리드-솔로몬 코드(Reed-Solomon code), convolution code, RSC(recursive systematic code), TCM(trellis-coded modulation), BCM(Block coded modulation) 등의 코디드 모듈레이션(coded modulation), 혹은 그와 같은 것 일 수 있다. 아래에서는 설명의 편의를 위하여 ECC 알고리즘은 BCH(Bose-Caudhro-Hocqeunghem) 코드로 구현되었다고 가정하겠다.
OTP 인증 장치(200)는 한 명의 사용자가 사용하는지 또는 다수의 사용자가 사용하는지 여부에 따라 발급 시 하나 또는 다수의 사용자 생체 코드 및 암호화 값이 저장되어 있으며, 사용자 생체 코드 저장 시 사용자 생체 코드 및 코드 워드를 이용하여 보안 코드 워드를 생성하여 저장한다. 예를 들어, OTP 인증 장치(200)에는 사용자 생체 코드(w) 및 코드 워드(C)를 XOR 연산하여 보안 코드 워드(S)를 생성한다.
이후, OTP 인증 장치(200)는 사용자 생체 정보를 수신하면 사용자 생체 코드로 변환한 후, 사용자 생체 코드 및 미리 저장된 보안 코드 워드를 이용하여 코드 워드를 추출할 수 있는 것이다. 예를 들어, OTP 인증 장치(200)에 사용자 생체 코드(w')가 수신되면 사용자 생체 코드(w') 및 미리 저장된 보안 코드 워드(S)를 XOR 연산하여 코드 워드(C')를 추출할 수 있는 것이다. 이때, 코드 워드(C')의 오류 비트의 개수는 사용자 생체 코드(w)의 오류 비트의 개수와 같다.
코드 워드는 BCH 코드이므로 코드 워드(C) 자체만으로 스스로의 오류를 검출 및 수정할 수 있다. 따라서, 상기의 예에서 OTP 인증 장치(200)가 코드 워드(C')를 수정하여 코드 워드(C)를 생성한 후 코드 워드(C) 및 보안 코드 워드(S)를 이용하여 사용자 생체 코드(w)를 찾아낼 수 있는 것이다.
예를 들어, OTP 인증 장치(200)에 1000, 0001, 1011, 1001의 분할 홍채 코드가 등록되어 있다고 가정한 경우, 분할 홍채 코드 1000에 대해서 코드 워드(C)를 적용하여 보안 코드 워드(S1)를 생성하고, 분할 홍채 코드 0001에 대해서 코드 워드(C)를 적용하여 보안 코드 워드(S2)를 생성하고, 분할 홍채 코드 1011에 대해서 코드 워드(C)를 적용하여 보안 코드 워드(S3)를 생성하고, 분할 홍채 코드 1001에 대해서 코드 워드(C)를 적용하여 보안 코드 워드(S4)를 생성한 후에 전체에 대해서 보안 코드 워드 (S0)를 생성한다.
그 후, OTP 인증 장치(200)에 1100, 0011, 1111, 1111의 분할 홍채 코드가 수신되면 1100, 0011, 1111, 1111 및 1000, 0001, 1011, 1001을 비교하면 16비트 중 5비트가 다르다. 즉, 100% 중 31%가 상이하고 상이한 비율이 25%를 초과하기 때문에 정정이 불가하다.
한편, OTP 인증 장치(200)에 1000, 0001, 1011, 1001의 홍채 코드 각각을 본다면, 보안 코드 워드(S1)의 경우 4비트 중 1비트가 다르고, 보안 코드 워드(S2)의 경우 4비트 중 1비트가 다르고, 보안 코드 워드(S3)의 경우 4비트 중 1비트가 다르고, 보안 코드 워드(S4)의 경우 4비트 중 2비트가 다르다. 이를 통해 S1부터 S3을 이용하여 수신된 홍채 코드(w')와 또 다른 홍채 코드(w'')를 얻을 수 있다.
만일, 또 다른 홍채 코드(w'')가 1000, 0001, 1011, 1111인 경우, 이후에 또 다른 홍채 코드(w'')를 보안 코드 워드(S0)를 이용하여 정정하면 전체 16비트 중 2비트가 홍채 코드(w) 1000, 0001, 1011, 1001와 다르기 때문에 정정이 된다.
마찬가지로 분할코드가 위처럼 S1 S2 S3 S4로 존재하는 경우가 아닌 2차원 혹은 3차원의 경우도 C를 각 셀에 씌워 S를 만든다고 할 때에도 S1 S2 S3 S4에 대해서 S0를 만들었듯이, 도 3에서와 같이, S1 S2 S3 S4에 대한 SA, S5 S6 S7 S8에 해당하는 SB, S1 S5 S9 S13에 해당하는 S가, S2 S6 S10 S14에 해당하는 S나, S1 S6 S11 S16에 해당하는 S0처럼 입체구조에서 오류를 정정할 수도 있다.
생체정보는 영상정보의 경우는 2차원, 행동적 특성 등의 생체정보는 그 이상의 차원의 입체정보이므로 이와 같은 방법으로 에러 정정하여 25% 이상의 에러까지도 정정할 수 있다.
OTP 인증 장치(200)는 사용자 생체 코드가 수신되면 사용자 생체 코드를 이용하여 미리 저장된 암호화 값을 복호화하여 해쉬 값을 생성한다.
이러한 OTP 인증 장치(200)는 발급 시 암호화 값이 저장되어 있다. 따라서, OTP 인증 장치(200)는 사용자 생체 코드가 수신되면 사용자 생체 코드를 이용하여 미리 저장된 암호화 값을 복호화할 수 있는 것이다.
예를 들어, OTP 인증 장치(200)는 사용자 생체 코드(w')가 수신되면 사용자 생체 코드(w')를 이용하여 미리 저장된 암호화 값(S)을 복호화하여 (H(w))를 생성할 수 있는 것이다.
본 발명에 따른 OTP 인증 장치(200)는 사용자 생체 코드(w')가 인식되어야지만 OTP 값을 생성할 수 있기 때문에, OTP 인증 장치가 악의적인 사용자에 의해 공격을 당하더라도 암호화 값만을 알 수 있을 뿐 생체 정보나 OTP 씨드나 생체 정보를 유추할 수 없다는 장점이 있다.
그런 다음, OTP 인증 장치(200)는 OTP 값을 생성한 후 인증 서버(100)에 제공하여 인증을 요청한다.
일 실시예에서, OTP 인증 장치(200)는 하나의 해쉬 값 및 암호화 값이 저장되어 있는 경우, 해쉬 값 및 시간 정보를 이용하여 OTP 값을 생성한 후 인증 서버(100)에 제공하여 인증을 요청한다.
다른 일 실시예에서, OTP 인증 장치(200)는 복수의 해쉬 값 및 암호화 값이 저장되어 있는 경우, 복수의 해쉬 값을 조합한 후 조합한 복수의 해쉬 값 및 시간 정보를 이용하여 OTP 값을 생성한 후 인증 서버(100)에 제공하여 인증을 요청한다.
도 2는 본 발명의 일 실시예에 따른 과 생체 정보를 이용한 OTP 인증 과정을 설명하기 위한 흐름도이다.
도 2를 참조하면, OTP 인증 장치(200)는 사용자 생체 코드를 수신하면(단계 S205), 상기 사용자 생체 코드를 이용하여 OTP 값을 생성한다(단계 S210).
단계 S210에 대한 일 실시예에서, OTP 인증 장치(200)는 사용자 생체 코드를 수신하면 사용자 생체 코드를 이용하여 미리 등록된 암호화 값을 복호화하여 상기 해쉬 값을 생성하고, 해쉬 값 및 시간 정보를 이용하여 OTP 값을 생성한다.
이를 위해, 인증 서버(100)는 OTP 인증 장치(200)를 발급 시 사용자 생체 코드를 기초로 암호화 값 및 해쉬 값을 생성한 후, 암호화 값을 OTP 인증 장치(200)에 저장하여 발급하며, 해쉬 값만을 저장하고 있다. 예를 들어, 인증 서버(100)는 OTP 인증 장치(200)를 발급 시 사용자 생체 코드(w)를 기초로 암호화 값(S) 및 해쉬 값(H(w))를 생성한 후, 암호화 값(S)을 OTP 인증 장치(200)에 저장하여 발급하며, 해쉬 값(H(w))만을 저장하고 있다.
OTP 인증 장치(200)는 OTP 값을 인증 서버(100)에 제공한다(단계 S220).
인증 서버(100)는 OTP 인증 장치(200)를 발급 시 생성하여 저장한 해쉬 값 및 시간 정보를 이용하여 OTP 값을 생성한다(단계 S230).
인증 서버(100)는 OTP 인증 장치(200)로부터 수신된 OTP 값 및 상기 생성된 OTP 값을 비교하여 인증을 실행한다(단계 S240).
이상에서는 첨부된 도면들을 참조하면서 본 발명에 따른 생체 정보를 이용한 OTP 인증 방법 및 이를 실행하는 시스템의 몇 실시 예에 대해서 설명하였다. 이러한 실시 예들은 본 발명의 특허청구범위에 기재된 기술 사상에 포함되는 것이다. 또한, 이러한 실시 예들은 예시적인 것에 불과한 것으로, 본 발명의 특허청구범위를 해석함에 있어 한정 해석해서는 아니 된다.
100 : 인증 서버 200 : OTP 인증 장치

Claims (12)

  1. OTP 인증 장치가 사용자 생체 정보를 수신하면 사용자 생체 코드로 변환하는 단계;
    OTP 인증 장치가 사용자 생체 코드를 이용하여 OTP 값을 생성하는 단계;
    상기 OTP 인증 장치가 상기 OTP 값을 인증 서버에 제공하는 단계; 및
    상기 인증 서버가 상기 OTP 인증 장치로부터 수신된 OTP 값이 미리 생성된 OTP 값과 동일한지 여부에 따라 인증을 실행하는 단계를 포함하는 것을 특징으로 하는 생체 정보를 이용한 OTP 인증 방법.
  2. 제1항에 있어서,
    상기 인증 서버가 상기 사용자 생체 코드를 기초를 이용하여 암호화 값 및 해쉬 값을 생성하는 단계; 및
    상기 인증 서버가 암호화 값을 상기 OTP 인증 장치에 기록하여 발급하고 상기 해쉬 값을 저장하는 단계를 더 포함하는 것을 특징으로 하는 생체 정보를 이용한 OTP 인증 방법.
  3. 제2항에 있어서,
    상기 사용자 생체 코드를 이용하여 OTP 값을 생성하는 단계는,
    상기 OTP 인증 장치가 사용자 생체 코드를 수신하면 상기 사용자 생체 코드를 이용하여 미리 등록된 암호화 값을 복호화하여 상기 해쉬 값을 생성하는 단계; 및
    상기 해쉬 값 및 시간 정보를 이용하여 OTP 값을 생성하는 단계를 포함하는 것을 특징으로 하는 생체 정보를 이용한 OTP 인증 방법.
  4. 제2항에 있어서,
    상기 인증 서버는,
    상기 인증 서버가 상기 OTP 인증 장치를 발급 시 생성하여 저장한 상기 해쉬 값 및 시간 정보를 이용하여 OTP 값을 생성하는 단계; 및
    상기 인증 서버가 상기 OTP 인증 장치로부터 수신된 OTP 값 및 상기 생성된 OTP 값을 비교하여 인증을 실행하는 단계를 포함하는 것을 특징으로 하는 생체 정보를 이용한 OTP 인증 방법.
  5. 제1항에 있어서,
    상기 사용자 생체 코드를 이용하여 OTP 값을 생성하는 단계는,
    상기 OTP 인증 장치에 사용자 생체 코드를 분할하는 경우, 상기 복수개의 사용자 생체 코드 각각에 보안 코드 워드를 적용하는 단계;
    상기 보안 코드 워드가 적용된 분할 사용자 생체 코드를 이용 또는 수정하여 또 다른 분할 생체 코드를 획득하는 단계; 및
    상기 또 다른 분할 생체 코드를 보안 코드 워드를 이용하여 에러를 정정하여 상기 사용자 생체 코드를 복구하는 단계를 포함하는 것을 특징으로 하는 생체 정보를 이용한 OTP 인증 방법.
  6. 제1항에 있어서,
    상기 OTP 인증 장치가 사용자 생체 정보를 수신하면 사용자 생체 코드로 변환하는 단계는,
    상기 OTP 인증 장치가 사용자 생체 정보를 수신하면 상기 사용자 생체 정보의 종류에 따라 미리 결정된 알고리즘을 이용하여 상기 사용자 생체 정보를 상기 사용자 생체 코드로 변환하는 단계를 포함하고,
    상기 사용자 생체 정보의 종류가 홍채 정보인 경우, 홍채 위치 탐색 알고리즘 및 영상 정보를 숫자 정보로 변환하는 변환 알고리즘을 이용하여 상기 사용자 생체 정보를 상기 사용자 생체 코드로 변환하는 것을 특징으로 하는 생체 정보를 이용한 OTP 인증 방법.
  7. 인증 서버 및 OTP 인증 장치를 포함하는 생체 정보를 이용한 OTP 인증 시스템에 있어서,
    사용자 생체 코드를 수신하면 상기 사용자 생체 코드를 이용하여 OTP 값을 생성하고, 상기 OTP 값을 인증 서버에 제공하는 OTP 인증 장치; 및
    상기 OTP 인증 장치로부터 수신된 OTP 값이 생성된 OTP 값과 동일한지 여부에 따라 인증을 실행하는 인증 서버를 포함하는 것을 특징으로 하는 생체 정보를 이용한 OTP 인증 시스템.
  8. 제7항에 있어서,
    상기 인증 서버는,
    상기 사용자 생체 코드를 기초를 이용하여 암호화 값 및 해쉬 값을 생성하고, 상기 암호화 값을 상기 OTP 인증 장치에 기록하여 발급하고 상기 해쉬 값을 저장하는 것을 특징으로 하는 생체 정보를 이용한 OTP 인증 시스템.
  9. 제8항에 있어서,
    상기 OTP 인증 장치는,
    사용자 생체 코드를 수신하면 상기 사용자 생체 코드를 이용하여 미리 등록된 암호화 값을 복호화하여 상기 해쉬 값을 생성하고, 상기 해쉬 값 및 시간 정보를 이용하여 OTP 값을 생성하는 것을 특징으로 하는 생체 정보를 이용한 OTP 인증 시스템.
  10. 제8항에 있어서,
    상기 인증 서버는,
    상기 OTP 인증 장치를 발급 시 생성하여 저장한 상기 해쉬 값 및 시간 정보를 이용하여 OTP 값을 생성하고, 상기 OTP 인증 장치로부터 수신된 OTP 값 및 상기 생성된 OTP 값을 비교하여 인증을 실행하는 것을 특징으로 하는 생체 정보를 이용한 OTP 인증 시스템.
  11. 제7항에 있어서,
    상기 OTP 인증 장치는,
    사용자 생체 코드를 조각낸 경우, 상기 복수개의 분할 사용자 생체 코드 각각에 보안 코드 워드를 적용하고, 상기 보안 코드 워드가 적용된 분할 사용자 생체 코드를 이용 또는 수정하여 또 다른 분할 생체 코드를 획득하고, 상기 또 다른 분할 생체 코드를 보안 코드 워드를 이용하여 에러를 정정하여 상기 사용자 생체 코드를 복구하는 것을 특징으로 하는 생체 정보를 이용한 OTP 인증 시스템.
  12. 제7항에 있어서,
    상기 OTP 인증 장치는
    사용자 생체 정보를 수신하면 상기 사용자 생체 정보의 종류에 따라 미리 결정된 알고리즘을 이용하여 상기 사용자 생체 정보를 상기 사용자 생체 코드로 변환하고,
    상기 사용자 생체 정보의 종류가 홍채 정보인 경우, 홍채 위치 탐색 알고리즘 및 영상 정보를 숫자 정보로 변환하는 변환 알고리즘을 이용하여 상기 사용자 생체 정보를 상기 사용자 생체 코드로 변환하는 것을 특징으로 하는 생체 정보를 이용한 OTP 인증 시스템.
KR1020160171623A 2016-12-15 2016-12-15 생체 정보를 이용한 otp 인증 방법 및 이를 실행하는 시스템 KR101960797B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160171623A KR101960797B1 (ko) 2016-12-15 2016-12-15 생체 정보를 이용한 otp 인증 방법 및 이를 실행하는 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160171623A KR101960797B1 (ko) 2016-12-15 2016-12-15 생체 정보를 이용한 otp 인증 방법 및 이를 실행하는 시스템

Publications (2)

Publication Number Publication Date
KR20180069435A true KR20180069435A (ko) 2018-06-25
KR101960797B1 KR101960797B1 (ko) 2019-07-17

Family

ID=62805005

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160171623A KR101960797B1 (ko) 2016-12-15 2016-12-15 생체 정보를 이용한 otp 인증 방법 및 이를 실행하는 시스템

Country Status (1)

Country Link
KR (1) KR101960797B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007036763A1 (en) * 2005-09-29 2007-04-05 Clovis Najm Biometric authentication system
KR101198120B1 (ko) * 2010-05-28 2012-11-12 남궁종 홍채정보를 이용한 양방향 상호 인증 전자금융거래시스템과 이에 따른 운영방법
KR20150024716A (ko) * 2013-08-27 2015-03-09 주식회사 디젠트 바이오 정보 인증 방법, 이와 연관된 바이오 정보 인증 시스템 및 이를 저장한 기록매체

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007036763A1 (en) * 2005-09-29 2007-04-05 Clovis Najm Biometric authentication system
KR101198120B1 (ko) * 2010-05-28 2012-11-12 남궁종 홍채정보를 이용한 양방향 상호 인증 전자금융거래시스템과 이에 따른 운영방법
KR20150024716A (ko) * 2013-08-27 2015-03-09 주식회사 디젠트 바이오 정보 인증 방법, 이와 연관된 바이오 정보 인증 시스템 및 이를 저장한 기록매체
KR101503019B1 (ko) * 2013-08-27 2015-03-16 주식회사 디젠트 바이오 정보 인증 방법, 이와 연관된 바이오 정보 인증 시스템 및 이를 저장한 기록매체

Also Published As

Publication number Publication date
KR101960797B1 (ko) 2019-07-17

Similar Documents

Publication Publication Date Title
US10171459B2 (en) Method of processing a ciphertext, apparatus, and storage medium
JP6810348B2 (ja) 暗号データ処理方法、暗号データ処理装置および暗号データ処理プログラム
EP1149475B1 (en) A fuzzy commitment scheme
US9906363B2 (en) Encrypted data verification system, method and recording medium
RU2696425C1 (ru) Способ двумерного контроля и обеспечения целостности данных
KR20130136528A (ko) 키 정보 생성 장치 및 키 정보 생성 방법
RU2680739C1 (ru) Способ контроля и обеспечения целостности данных
US10985914B2 (en) Key generation device and key generation method
JP6229714B2 (ja) 暗号文照合システムと方法とプログラム
KR101913644B1 (ko) 메시지 인증이 가능한 부호 기반 암호화 장치 및 방법
KR101852526B1 (ko) 암호 파일을 관리하는 모바일 장치의 방법 및 그것을 포함하는 암호 파일 관리 시스템
JP6229715B2 (ja) 暗号文照合システムと方法とプログラム
EP3142292B1 (en) Encrypted-data processing method, system, apparatus, and program
JP6229713B2 (ja) 暗号文照合システムと方法とプログラム
KR102024379B1 (ko) 생체 정보 기반의 전자 서명이 가능한 데이터 전송 장치 및 그 동작 방법
KR101960797B1 (ko) 생체 정보를 이용한 otp 인증 방법 및 이를 실행하는 시스템
KR20160109891A (ko) Puf 기반 암호키 생성 방법 및 장치
KR102665929B1 (ko) 물리적으로 복제 불가능한 기능의 원격 재등록
KR20180069425A (ko) 세션키를 이용한 생체 인증 방법 및 이를 실행하는 사용자 단말과 검증 서버
Rudd et al. Caliper: continuous authentication layered with integrated PKI encoding recognition
KR20220054059A (ko) 가변 길이 퍼지 데이터를 지원하는 격자 기반 퍼지 추출 장치 및 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right