KR100954580B1 - 스마트 카드 기반의 지문 데이터 보호 방법, 그 시스템 및이를 기록한 컴퓨터 판독 가능 저장 매체 - Google Patents

스마트 카드 기반의 지문 데이터 보호 방법, 그 시스템 및이를 기록한 컴퓨터 판독 가능 저장 매체 Download PDF

Info

Publication number
KR100954580B1
KR100954580B1 KR1020070141469A KR20070141469A KR100954580B1 KR 100954580 B1 KR100954580 B1 KR 100954580B1 KR 1020070141469 A KR1020070141469 A KR 1020070141469A KR 20070141469 A KR20070141469 A KR 20070141469A KR 100954580 B1 KR100954580 B1 KR 100954580B1
Authority
KR
South Korea
Prior art keywords
fingerprint data
server
user
smart card
authentication
Prior art date
Application number
KR1020070141469A
Other languages
English (en)
Other versions
KR20090073505A (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 KR1020070141469A priority Critical patent/KR100954580B1/ko
Publication of KR20090073505A publication Critical patent/KR20090073505A/ko
Application granted granted Critical
Publication of KR100954580B1 publication Critical patent/KR100954580B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • G06K19/073Special arrangements for circuits, e.g. for protecting identification code in memory
    • G06K19/07309Means for preventing undesired reading or writing from or onto record carriers
    • G06K19/07345Means for preventing undesired reading or writing from or onto record carriers by activating or deactivating at least a part of the circuit on the record carrier, e.g. ON/OFF switches
    • G06K19/07354Means for preventing undesired reading or writing from or onto record carriers by activating or deactivating at least a part of the circuit on the record carrier, e.g. ON/OFF switches by biometrically sensitive means, e.g. fingerprint sensitive

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Collating Specific Patterns (AREA)

Abstract

스마트 카드 기반의 지문 데이터 보호 방법, 그 시스템 및 이를 기록한 컴퓨터 판독 가능 저장 매체가 개시된다.
본 발명에 따른 스마트 카드 기반의 지문 데이터 보호 방법은,
인증 사용자의 지문 영상에서 특징점으로 구성되는 복수 개의 지문 데이터에 의해 제 1 다항식을 생성하고, 상기 지문 데이터에 가짜 특징점을 삽입하여 지문 데이터를 은닉하는 단계; 상기 은닉된 지문 데이터의 일부를 서버에 등록하고, 상기 은닉된 지문 데이터 중 서버에 등록되지 않은 나머지의 지문 데이터를 상기 인증 사용자의 스마트 카드에 등록함으로써 상기 인증 사용자의 지문 데이터를 보안 등록하는 단계; 인증 사용자가 소정의 센싱 장치에 따라 입력된 자신의 입력 지문 데이터 및 상기 스마트 카드를 이용하여 상기 서버에 사용자 인증 요청을 하면, 상기 서버에 등록된 인증 사용자의 지문 데이터 및 상기 입력 지문 데이터를 이용하여 기준점을 선정하고, 상기 기준점을 기반으로 상기 서버에 등록된 인증 사용자의 지문 데이터를 정렬하는 단계; 상기 서버에서 상기 선정된 기준점을 상기 인증 사용자의 스마트 카드에 전송하고, 상기 스마트 카드에 등록된 지문 데이터를 상기 전송된 기준점을 기준으로 정렬하는 단계; 및 상기 서버의 정렬된 서버 지문 데이터와 상기 스마트 카드의 정렬된 스마트 카드 지문 데이터를 이용하여 사용자의 인증을 수행하는 단계를 포함한다.
본 발명에 의하면, 생체 정보를 안전하게 보호하기 위하여 일반적으로 사용 되는 퍼지 볼트 이론을 이용하고, 인증 사용자의 지문 정보를 서버와 스마트 카드를 이용하여 각각 저장함으로써 개인 정보를 안전하게 보호할 수 있으며, 유비쿼터스 임베디드 환경에서 스마트카드에 지문 정보를 저장하는 정책으로 활용될 수 있을 뿐만 아니라 기존의 지문 데이터 서버 등에 사용되는 메모리나 데이터의 가용성을 극대화할 수 있는 효과가 있다.

Description

스마트 카드 기반의 지문 데이터 보호 방법, 그 시스템 및 이를 기록한 컴퓨터 판독 가능 저장 매체{Method and System of protecting fingerprint data based on smart card and Recording medium using this}
본 발명은 바이오 인식 정보 보안에 관한 것으로서, 특히 스마트 카드를 이용하여 사용자의 바이오 인식 정보를 일부 보관함으로써, 퍼지 볼트를 이용한 개인 지문 정보를 더욱 안전하게 보관할 수 있고, 은닉된 지문정보를 효율적으로 정렬하고, 정합함으로써 더욱 안전하고 효율적인 지문 인증을 수행할 수 있는 스마트 카드 기반의 지문 데이터 보호 방법, 그 시스템 및 이를 기록한 컴퓨터 판독 가능 저장 매체에 관한 것이다.
최근 급속한 정보화 및 인터넷의 발달로 인하여 네트워크를 통한 정보의 교류가 활발해지고, 온라인 자금거래 등 전자상거래와 관련된 산업의 규모가 커지면서 정확한 개인의 인증에 대한 요구가 증대되고 있다.
이러한 환경에서 가장 일반적인 인증 수단으로 개인 식별 넘버(Personal Identification Number:PIN) 또는 패스워드 방식이 사용되고 있지만, 이는 정보의 유출 및 망각의 위험이 상존하므로 이에 따른 보안상의 문제가 최근 들어 크게 부 각되고 있다.
따라서, 이와 같은 인증 수단의 단점을 해결할 수 있는 개인 인증 기술로 생체 인식의 도입이 확산 되고 있다.
사용자 인증을 위하여 저장된 생체 정보가 타인에게 도용된다면, 패스워드나 개인 식별 넘버와 달리 상기 생체 정보를 변경할 수 없거나, 변경이 제한적이기 때문에 심각한 문제를 일으키게 된다.
따라서, 암호, 워터마킹(Watermarking), 스테가노그래피(Steganography) 등의 기술을 이용하여 사용자의 중요한 지문 정보를 보호하기 위한 연구가 활발하게 진행되고 있다.
지문 인식 시스템은 경제적인 설치 비용과 보안성에 대한 매우 높은 신뢰성을 가지고 있고, 수백 년 이상의 전 세계적인 적용 사례를 바탕으로 유일무이한 사람의 고유 특성으로 검증된 지문의 인식 시스템이다.
특히, 소형화된 시스템의 구성이 가능하므로 이동성과 공간 활용 능력이 매우 높다.
그리고, 최근 네트워크의 발달과 더불어 보안 및 개인 사생활 보호에 대한 관심이 높아지면서 개인 인증 방법으로서의 지문 인식 기술은 화상인식기술분야 중에서 가장 각광받는 기술분야로 발전하고 있다.
이와 같은 지문인식 기술은 단순한 출입통제 시스템에서 인터넷 뱅킹, 전자 정부 등의 원격응용 시스템으로 발전하고 있다.
아울러, 최근 바이오 및 지문데이터를 보호하기 위한 방법 중 퍼지볼트 이론 을 적용한 연구가 활성화되고 있다. 퍼지볼트 이론은 암호학적인 방법으로써, 일반적으로 사용되고 있는 암호학적인 방법들과는 다르게 인증값과 등록값의 완전한 일치여부가 아닌 상기 인증값과 등록값의 유사도에 따라서 사용자의 인증 여부를 결정한다.
기하학적 해싱 기법을 퍼지 볼트 이론을 적용한 지문정보를 보호하는데 사용할 경우, 지문정보의 양과 지문정보를 보호하는데 사용되는 가짜 지문 정보의 양이 많아질수록 등록과정에서 메모리의 사용량이 많아진다.
왜냐하면, 기하학적 해싱 기법은 전체의 진짜와 가짜의 지문 정보를 기준점으로 하여 기하학적 해쉬 테이블을 생성하기 때문이다.
퍼지볼트를 적용한 지문 인증 시스템에서 등록 지문 특징점에는 복수 개의 가짜 특징점이 섞임으로써, 지문 정보를 보호하게 되며, 이러한 보호된 등록 지문과 입력 지문의 검증 과정을 위해서는 정렬(alignment) 과정과 정합(matching) 과정이 필요하다.
이와 같이, 현재 생체 정보를 보호하는 방법에 대한 많은 연구가 진행되고 있으며, 최근에는 퍼지 볼트 이론을 이용한 정보 보호 방법이 보고되고 있다.
퍼지 볼트의 경우, 정보에 대한 다항식을 생성한 후 다항식 위에 존재하지 않는 가짜 정보를 추가함으로써 사용자의 중요 정보를 은닉하는 방법이다.
또한, 가짜 정보에 의해 발생하는 기준점 부재로 인한 정렬 문제를 해결하기 위하여 기하학적 해싱 기법 등을 적용하는 연구가 보고되고 있다.
이러한 지문 데이터에 대한 지문 퍼지 볼트의 안전도는 진짜와 가짜 특징점 셋으로 구성된 템플릿으로부터 진짜 특징점 셋을 선택하는 경우의 수로 나타낼 수 있다.
만약, 사용자의 지문 영상으로부터 추출한 20개의 특징점 정보와 200개의 가짜 특징점 정보로 구성된 220개의 특징점을 가지고 있는 지문 셋(fingerprint set)에서 11개의 사용자의 진짜 지문 정보가 선택되어야 한다면, 평균
Figure 112007095007529-pat00001
의 전수 조사를 수행하여야 한다.
그러나, 종래의 지문 정보 은닉 및 인증에 있어서, 퍼지볼트의 안전도는 가짜 특징점의 개수의 증가에 따라서 안전도가 높아지는 것에 비해 지문 정렬을 위한 수행 시간이나 메모리 가용량이 함께 증가하게 된다. 이는, 기하학적 해싱 기법 기반의 지문에 대하여 퍼지 볼트 이론을 적용하는 경우, 추가되는 가짜 특징점의 갯수에 따라 메모리 가용량이 거듭 제곱의 수만큼 증가하는 특징이 있으므로, 스마트카드 기반의 시스템에서 사용자의 지문 정보의 안정도를 향상시키기 위하여 가짜 특징점을 추가시키기에는 자원 제약적이라는 문제점이 있다.
따라서, 본 발명이 해결하고자 하는 첫 번째 과제는,
인증 사용자의 지문 정보를 서버와 스마트 카드를 이용하여 각각 저장함으로써 개인 정보를 안전하게 보호하고, 데이터 가용성을 극대화할 수 있는 스마트 카드 기반의 지문 데이터 보호 방법을 제공하는 것이다.
그리고, 본 발명이 해결하고자 하는 두 번째 과제는
상기 스마트 카드 기반의 지문 데이터 보호 방법을 이용하여 개인 정보를 안전하게 보호할 수 있는 스마트 카드 기반의 지문 데이터 보호 시스템을 제공하는 것이다.
또한, 본 발명이 해결하고자 하는 세 번째 과제는
상기 스마트 카드 기반의 지문 데이터 보호 방법을 컴퓨터에서 수행할 수 있도록 프로그램으로 기록된 컴퓨터 판독 가능 저장 매체를 제공하는 것이다.
상기 첫 번째 과제를 해결하기 위하여 본 발명은,
인증 사용자의 지문 영상에서 특징점으로 구성되는 복수 개의 지문 데이터에 의해 제 1 다항식을 생성하고, 상기 지문 데이터에 가짜 특징점을 삽입하여 지문 데이터를 은닉하는 단계; 상기 은닉된 지문 데이터의 일부를 서버에 등록하고, 상기 은닉된 지문 데이터 중 서버에 등록되지 않은 나머지의 지문 데이터를 상기 인증 사용자의 스마트 카드에 등록함으로써 상기 인증 사용자의 지문 데이터를 보안 등록하는 단계; 인증 사용자가 소정의 센싱 장치에 따라 입력된 자신의 입력 지문 데이터 및 상기 스마트 카드를 이용하여 상기 서버에 사용자 인증 요청을 하면, 상기 서버에 등록된 인증 사용자의 지문 데이터 및 상기 입력 지문 데이터를 이용하여 기준점을 선정하고, 상기 기준점을 기반으로 상기 서버에 등록된 인증 사용자의 지문 데이터를 정렬하는 단계; 상기 서버에서 상기 선정된 기준점을 상기 인증 사용자의 스마트 카드에 전송하고, 상기 스마트 카드에 등록된 지문 데이터를 상기 전송된 기준점을 기준으로 정렬하는 단계; 및 상기 서버의 정렬된 서버 지문 데이터와 상기 스마트 카드의 정렬된 스마트 카드 지문 데이터를 이용하여 사용자의 인증을 수행하는 단계를 포함하는 스마트 카드 기반의 지문 데이터 보호 방법을 제공한다.
그리고, 상기 인증 사용자의 지문 데이터를 보안 등록하는 단계는, 상기 은닉된 지문 데이터의 일부로부터 등록 해쉬 테이블을 생성하고, 상기 등록 해쉬 테이블을 서버의 데이터베이스에 저장하는 단계를 포함하는 것을 특징으로 한다.
한편, 상기 기준점은 상기 서버에 등록된 인증 사용자의 지문 데이터와 상기 입력 지문 데이터를 비교하여 가장 유사도가 높은 점으로 설정되는 것을 특징으로 한다.
아울러, 상기 서버에 등록된 인증 사용자의 지문 데이터를 정렬하는 단계는 상기 서버에 등록된 인증 사용자의 지문 데이터에 따라 생성되는 등록 해쉬 테이블 및 상기 사용자의 입력 지문 데이터로부터 기준점을 선정하는 단계; 및 상기 선정된 기준점을 기반으로 상기 서버에 등록된 인증 사용자의 지문 데이터를 기하학적 으로 이동시켜 서버 해쉬 테이블을 생성하는 단계를 포함하는 것을 특징으로 한다.
그리고, 상기 사용자의 인증을 수행하는 단계는 상기 서버 지문 데이터와 상기 스마트 카드 지문 데이터를 이용하여 제 2 다항식을 생성하고, 상기 제 1 다항식과 상기 제 2 다항식의 일치 여부에 따라 사용자의 인증을 수행하는 것을 특징으로 한다.
상기 두 번째 과제를 해결하기 위하여 본 발명은,
인증을 수행하고자 하는 사용자의 지문 데이터를 추출하는 입력부, 인증 사용자의 지문 데이터를 저장하는 서버 및 스마트 카드를 포함하는 스마트 카드 기반의 지문 데이터 보호 시스템에 있어서, 상기 입력부는 사용자의 지문 영상에서 입력 지문 데이터를 추출하는 입력 지문 데이터 추출부를 포함하고, 상기 서버는 소정의 센싱 장치에 따라 추출된 인증 사용자의 지문 데이터로부터 특징점으로 구성되는 복수 개의 지문 데이터에 따라 제 1 다항식을 생성하고, 상기 지문 데이터에 가짜 특징점이 삽입되어 은닉된 일부의 지문 데이터를 등록하는 서버 지문 데이터 등록부; 상기 등록된 인증 사용자의 지문 데이터를 정렬하여 저장하는 서버 데이터베이스; 및 상기 입력부에 따라 사용자가 자신의 지문 데이터를 기반으로 사용자 인증 요청을 수신하면, 상기 서버 데이터 베이스에 저장된 인증 사용자의 지문 데이터와 상기 사용자의 입력 지문 데이터를 정합하여 기준점을 설정하는 서버 정합 도출부를 포함하고, 상기 스마트 카드는 상기 지문 데이터에 가짜 특징점이 삽입되어 은닉된 지문 데이터 중 서버에 등록되지 않은 나머지 지문 데이터를 등록하는 스마트 카드 지문 데이터 등록부; 상기 스마트 카드 지문 등록부의 지문 데이터를 정렬하여 저장하는 스마트 카드 데이터 베이스; 상기 서버 정합 도출부에서 설정된 기준점에 따라 상기 스마트 카드의 지문 정보를 정렬하는 스마트 카드 정합 도출부; 상기 서버 정합 도출부에서 도출된 서버의 지문 데이터와 상기 스마트 카드의 정합 도출부에서 도출된 스마트 카드의 지문 데이터를 취합하는 정합 데이터 취합부; 및 상기 정합 데이터 취합부에서 취합된 지문 데이터를 이용하여 사용자 인증을 수행할 비밀키를 생성하는 비밀키 생성부를 포함하는 스마트 카드 기반의 지문 데이터 보호 시스템을 제공한다.
한편, 상기 서버 데이터베이스는 상기 은닉된 지문 데이터의 일부로부터 등록 해쉬 테이블을 생성하고, 상기 생성된 등록 해쉬 테이블을 저장하는 것을 특징으로 한다.
그리고, 상기 기준점은 상기 서버에 등록된 지문 데이터와 상기 입력 지문 데이터를 비교하여 가장 유사도가 높은 점으로 설정되는 것을 특징으로 한다.
아울러, 상기 서버 정합 도출부는 상기 서버에 등록된 인증 사용자의 지문 데이터에 따른 등록 해쉬 테이블 및 상기 사용자의 입력 지문 데이터로부터 기준점을 설정하고, 상기 설정된 기준점을 기반으로 상기 서버에 등록된 인증 사용자의 지문 데이터를 기하학적으로 이동시켜 서버 해쉬 테이블을 생성하는 것을 특징으로 한다.
또한, 상기 비밀키 생성부는 상기 정합 데이터 취합부에서 취합된 지문 데이터를 이용하여 제 2 다항식을 생성하고, 상기 제 1 다항식과 상기 제 2 다항식의 일치 여부에 따라 사용자의 인증을 수행하는 것을 특징으로 한다.
상기 세 번째 과제를 해결하기 위하여 본 발명은,
컴퓨터 판독 가능 저장 매체에 지문 데이터를 보호하는 프로그램이 기록되어 있고, 상기 프로그램은, 인증 사용자의 지문 영상에서 특징점으로 구성되는 복수 개의 지문 데이터에 따라 제 1 다항식을 생성하고, 상기 지문 데이터에 가짜 특징점을 삽입하여 지문 데이터를 은닉하도록 하는 지문 데이터 은닉 코드; 상기 은닉된 지문 데이터의 일부를 서버에 등록하고, 상기 은닉된 지문 데이터 중 서버에 등록되지 않은 나머지의 지문 데이터를 상기 인증 사용자의 스마트 카드에 등록함으로써 상기 인증 사용자의 지문 데이터를 보안 등록하도록 하는 보안 등록 코드; 인증 사용자가 소정의 센싱 장치에 따라 입력된 자신의 입력 지문 데이터 및 상기 스마트 카드를 이용하여 상기 서버에 사용자 인증 요청을 하면, 상기 서버에 등록된 인증 사용자의 지문 데이터 및 상기 입력 지문 데이터를 이용하여 기준점을 선정하고, 상기 기준점을 기반으로 상기 서버에 등록된 인증 사용자의 지문 데이터를 정렬하도록 하는 서버 지문 데이터 정렬 코드; 상기 선정된 기준점을 상기 인증 사용자의 스마트 카드에 전송하고, 상기 스마트 카드에 등록된 지문 데이터를 상기 전송된 기준점을 기준으로 정렬하도록 하는 스마트 카드 지문 데이터 정렬 코드; 및 상기 서버의 정렬된 서버 지문 데이터와 상기 스마트 카드의 정렬된 스마트 카드 지문 데이터를 이용하여 사용자의 인증을 수행하도록 하는 사용자 인증 코드를 포함하는 컴퓨터 판독 가능 저장 매체를 제공한다.
여기서, 상기 보안 등록 코드는 상기 은닉된 지문 데이터의 일부로부터 등록 해쉬 테이블을 생성하고, 상기 등록 해쉬 테이블을 서버의 데이터베이스에 저장하 도록 하는 코드를 포함하는 것을 특징으로 한다.
그리고, 상기 기준점은 상기 서버에 등록된 인증 사용자의 지문 데이터와 상기 입력 지문 데이터를 비교하여 가장 유사도가 높은 점으로 설정되는 것을 특징으로 한다.
또한, 상기 서버 지문 데이터 정렬 코드는 상기 서버에 등록된 인증 사용자의 지문 데이터에 따라 생성되는 등록 해쉬 테이블 및 상기 사용자의 입력 지문 데이터로부터 기준점을 선정하고, 상기 선정된 기준점을 기반으로 상기 서버에 등록된 인증 사용자의 지문 데이터를 변경하여 서버 해쉬 테이블을 생성하도록 하는 코드를 포함하는 것을 특징으로 한다.
아울러, 상기 사용자 인증 코드는 상기 서버 지문 데이터와 상기 스마트 카드 지문 데이터를 이용하여 제 2 다항식을 생성하고, 상기 제 1 다항식과 상기 제 2 다항식의 일치 여부에 따라 사용자의 인증을 수행하도록 하는 코드인 것을 특징으로 한다.
본 발명에 의하면, 생체 정보를 안전하게 보호하기 위하여 일반적으로 사용되는 퍼지 볼트 이론을 이용하고, 인증 사용자의 지문 정보를 서버와 스마트 카드를 이용하여 각각 저장함으로써 개인 정보를 안전하게 보호할 수 있으며, 유비쿼터스 임베디드 환경에서 스마트카드에 지문 정보를 저장하는 정책으로 활용될 수 있을 뿐만 아니라 기존의 지문 데이터 서버 등에 사용되는 메모리나 데이터의 가용성을 극대화할 수 있는 효과가 있다.
생체 인증에 따른 지문 인증 시스템은 사용자의 생체 정보를 데이터베이스에 등록시키는 등록과정과 사용자의 인증을 위한 검증 과정으로 나누어진다.
본 발명에서는 퍼지 볼트(Fuzzy vault) 이론을 이용하여 안전하게 보호된 지문을 등록할 때, 인증 시스템에서 필요한 중간 과정인 정렬(alignment) 방법으로 사용되는 기하학적 해싱(Geometric Hashing) 기법을 수정함으로써 등록되는 지문 데이터량을 줄임으로써, 인식률과 보안성의 성능을 저하하지 않고 메모리 효율적으로 인증과정을 수행할 수 있다.
즉, 등록 과정에서 입력되는 지문에 따라 입력 해쉬 테이블 평면 하나만을 생성하여 정렬 및 정합 과정을 거친 후 에러를 정정하여 진짜 특징점을 추출함으로써 메모리의 효율적으로 사용할 수 있고, 이와 동시에 인식률과 보안성의 성능을 저하하지 않고, 지문 인증의 수행 성능을 높일 수 있다.
그리고, 본 발명에서는 지문 정보를 보호하는 방법으로 퍼지 볼트 이론을 적용한다.
또한, 은닉된 지문 정보와 사용자가 인증을 위하여 요청한 지문 정보를 비교하는 지문 정보 정렬 단계에서는 기준점 부재 및 시스템의 부하 문제를 해결하기 위하여 부분 기하학적 해싱 방법을 적용할 수 있다.
본 발명에 적용되는 등록 해쉬 테이블은 은닉되어 있는 지문 정보가 정렬을 위하여 새로운 좌표를 가지는 테이블을 의미한다.
또한, 본 발명에 이용되는 입력 해쉬 테이블은 사용자가 인증을 위하여 입력 한 지문 정보가 정렬을 위하여 새로운 좌표를 가지는 테이블을 의미한다.
도 1은 지문 인식 시스템의 블럭도를 도시한 것이다.
지문 인식 시스템은 인증을 수행하고자 하는 사용자의 지문 영상에서 지문 정보를 추출하는 송신부(110)와 사용자의 인증을 위하여 미리 저장된 지문 정보를 이용하여 인증 과정을 수행하는 수신부(120)로 이루어질 수 있다.
그리고, 인증 과정을 수행하는 수신부(120)는 인증을 위하여 지문 정보를 저장하기 위하여 지문 정보를 추출하는 인증 지문정보를 추출하고, 추출한 인증 지문 정보를 데이터 베이스에 저장하여, 데이터 베이스에 저장된 인증 지문 정보와 송신부(110)에서 추출한 지문 정보를 특정 다항식에 의하여 상호 비교하고, 특정 다항식에 의해 연산된 두 지문 정보가 유사할 경우 사용자의 인증을 수행하고, 유사하지 않을 경우 사용자의 인증에 실패하게 된다.
도 2는 본 발명과 대비되는 지문 데이터의 등록 과정을 도시한 것이다.
도 2를 참조하면, 사용자의 인증을 위하여 미리 지문 정보를 등록하기 위하여 사용자의 지문 영상(210)을 특정 센서를 이용하여 캡쳐한다.
그러면, 캡쳐한 사용자의 지문 영상으로부터 복수 개의 지문 특징점을 추출(220)하고, 추출된 지문 정보를 퍼지 볼트 이론을 적용하여 다항식을 생성한다.
그런 후, 복수 개의 지문 특징점에 가짜 특징점 정보를 삽입하여 등록 해쉬 테이블(230)을 생성하고, 이를 기반으로 사용자의 인증을 수행할 수 있는 기반을 마련한다.
이와 같이, 지문 데이터를 등록하는 방법은 사용자의 지문 영상으로부터 추 출된 복수 개의 지문 특징점과 가짜 특징점 모두를 이용하여 기준점을 생성하고, 이에 따라 생성되는 모든 평면을 등록하게 된다.
이는 산술적으로, 생성되는 평면의 갯수를
Figure 112007095007529-pat00002
이라고 할 때,
Figure 112007095007529-pat00003
Figure 112007095007529-pat00004
의 좌표를 저장하여야 하므로 사용되는 데이터 저장량은
Figure 112007095007529-pat00005
이며, 이에 따른 메모리의 사용량도
Figure 112007095007529-pat00006
이 된다.
여기서, 지문 데이터는 사용자의 지문 정보에 따른 특징점과 가짜 특징점을 포함한다.
지문 데이터는
Figure 112007095007529-pat00007
Figure 112007095007529-pat00008
의 위치 좌표와 각도가 각각 1 바이트(byte)씩 사용되고, 지문 정보를 이용하여 퍼지 볼트 이론에 따라 생성된 다항식의 값으로 1 바이트가 추가적으로 사용되게 된다.
예를 들어, 사용자의 지문 정보에 따른 특징점을 30개, 가짜 특징점을 200개 사용할 경우, 데이터 사용량은 4×230×230 바이트인 211600바이트가 된다.
또한, 런 타임 시에는 해쉬 테이블의 자료 구조를 고려하여 포인터가 사용되므로 특징점 하나당 추가적으로 4바이트가 소요되어 전체 메모리 사용량은 8×230×230 바이트인 423200바이트가 된다.
이와 같이, 전체 메모리 사용량이 과다하여 시스템에 부하가 생기게 되고, 처리 속도 또한 저하되며, 지문 데이터의 보안에 가용되는 비용의 부담이 증가하게 된다.
이하, 본 발명의 바람직한 실시예를 첨부도면에 의거하여 상세히 설명하기로 한다.
한편, 다음에 예시하는 본 발명의 실시예는 여러 가지 다른 형태로 변형할 수 있으며, 본 발명의 범위가 다음에 상술하는 실시예에 한정되는 것은 아니다. 본 발명의 실시예는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 더욱 완전하게 설명하기 위하여 제공된다.
도 3은 본 발명에 따른 스마트 카드 기반의 지문 데이터 보호 방법의 흐름도를 도시한 것이다.
도 3을 참조하면, 본 발명에 따른 스마트 카드 기반의 지문 데이터 보호 방법은 안전하면서도 서버에 저장되는 인증 사용자의 지문 데이터 저장 공간을 최소화하는 구성을 가지고 있다.
여기서, 본 발명에 따른 인증 사용자는 본 발명이 이용되는 출입통제 시스템, 인터넷 뱅킹, 전자 정부의 원격응용 시스템에서 미리 사용을 허가받은 사용자를 의미한다. 그리고, 하기에 상술되는 제 1 다항식은 지문 데이터의 인증의 기반이 되는 다항식을 의미한다.
우선, 인증 사용자의 지문 영상에서 특징점으로 구성되는 복수 개의 지문 데이터에 의해 제 1 다항식을 생성하고, 상기 지문 데이터에 가짜 특징점을 삽입하여 지문 데이터를 은닉한다(310 과정).
이는, 인증 사용자의 지문을 등록하기 위하여 인증 사용자의 지문 데이터를 추출한다.
즉, 특정의 센싱 장치를 이용하여 인증 사용자의 지문 영상을 최초로 입력받고, 지문 영상에서 특징점의 위치 좌표 및 각도를 포함하는 지문 데이터를 추출한다. 상기 지문 데이터는 인증 사용자의 조작에 따라서 초기화된 다음, 다시 인증 사용자에 의해 지문 영상이 입력될 수 있다.
그런 다음, 상기 추출된 인증 사용자의 지문 정보를 계수로 하는 제 1 다항식을 생성한다. 여기서 상기 제 1 다항식의 차수는 보안 시스템의 설계자가 고려하는 보안성 정도에 따라 임의로 정할 수 있는 차수로 정의한다.
이와 같이, 제 1 다항식은 하기의 수학식 1과 같이 생성할 수도 있으며, 실시 형태 및 사용 태양에 따라 본 발명의 구성을 해하지 않은 범위 내에서 다양하게 구성할 수 있다.
Figure 112007095007529-pat00009
여기서,
Figure 112007095007529-pat00010
Figure 112007095007529-pat00011
개의 지문 정보 중의 각각의 지문 정보를 의미하며, 상기 각각의 지문 정보에 따른 계수를 기반으로 제 1 다항식
Figure 112007095007529-pat00012
가 생성된다.
사용자 지문 정보는
Figure 112007095007529-pat00013
,
Figure 112007095007529-pat00014
좌표, 각도, 및 융선의 단점 또는 분기점으로 이루어진 지문 타입으로 이루어지는데, 이는
Figure 112007095007529-pat00015
차 다항식을 설계할 경우,
Figure 112007095007529-pat00016
개의 계수가 필요하다.
즉,
Figure 112007095007529-pat00017
개의 계수를
Figure 112007095007529-pat00018
로 설정하여
Figure 112007095007529-pat00019
Figure 112007095007529-pat00020
차 다항식을 설계할 수 있다.
이와 같은 과정으로 상기 다항식의 계수를 연결하여
Figure 112007095007529-pat00021
비트의 데이터인
Figure 112007095007529-pat00022
를 생성하여 저장하게 된다.
그리고, 보안 시스템의 설계자가 고려하는 보안성 정도에 따라서 랜덤하게 생성된 가짜 특징점으로 구성되는 복수의 가짜 특징점 정보를 상기 추출된 인증 사용자의 지문 데이터에 위치 좌표 및 각도로 구성되는 복수의 가짜 지문 정보에 해당하는 가짜 특징점을 랜덤하게 생성하고, 생성된 가짜 특징점을 추출된 지문 데이터에 삽입하게 된다. 이는, 사용자의 지문 데이터를 실제로 구별할 수 없도록 삽임되는 것으로, 가짜 특징점을 삽입할 경우에 상기 추출된 지문 데이터의 위치 좌표 및 각도를 고려하여 삽입하여 인증 사용자의 은닉 지문 데이터를 생성하게 된다.
그 다음, 은닉된 지문 데이터의 일부를 서버에 등록하고, 상기 은닉된 지문 데이터 중 서버에 등록되지 않은 나머지의 지문 데이터를 상기 인증 사용자의 스마트 카드에 등록함으로써 상기 인증 사용자의 지문 데이터를 보안 등록한다(320 과정).
여기서, 서버에 등록되는 은닉된 지문 데이터와 스마트 카드에 등록되는 나머지 지문 데이터는 상기 스마트 카드의 데이터 저장량 또는 서버의 성능에 따라 시스템 설계자에 의해 다양하게 설정될 수 있다.
이는 기존의 인증 사용자의 지문 데이터를 보호하기 위해 복수 개의 가짜 특 징점을 삽입하여 인증 사용자의 지문 데이터와 가짜 특징점을 구별할 수 없게 하는 방법과는 달리, 하나의 지문 템플릿을 분할하여 서버와 스마트 카드에 보관함으로써 스마트카드 내의 지문 템플릿의 안전도를 증가시킴과 동시에 효율적인 지문 인증을 수행하도록 하기 위한 것이다.
한편, 상기 인증 사용자의 지문 데이터를 보안 등록하는 과정(320)은 상기 은닉된 지문 데이터의 일부로부터 서버 해쉬 테이블을 생성하고, 이를 서버의 데이터 베이스에 저장하는 과정을 포함할 수 있다.
서버 해쉬 테이블은 서버에 저장되는 상기 은닉된 지문 데이터로부터 생성되는 것으로, 이는 상기 서버에 저장되는 은닉된 지문 데이터의 특징점을 정하고, 상기 특징점을 기준으로 나머지 지문 데이터를 기하학적으로 이동시켜 서버 해쉬 테이블을 생성하게 된다.
그 다음, 인증 사용자가 소정의 센싱 장치에 따라 입력된 자신의 입력 지문 데이터 및 상기 스마트 카드를 이용하여 상기 서버에 사용자 인증 요청을 하면, 상기 서버에 등록된 인증 사용자의 지문 데이터 및 상기 입력 지문 데이터를 이용하여 기준점을 선정하고, 상기 기준점을 기반으로 상기 서버에 등록된 인증 사용자의 지문 데이터를 정렬한다(330 과정).
이는 인증 사용자가 자신의 지문 데이터를 서버 및 스마트 카드에 각각 분할하여 저장함으로써 등록한 후에, 사용자 인증을 위하여 자신의 지문 데이터를 소정의 센싱 장치에 입력하고, 소지한 스마트 카드를 기반으로 사용자 인증을 수행하는 것이다.
즉, 스마트 카드만으로 사용자 인증을 수행하거나, 지문 데이터 만으로 사용자 인증을 수행할 경우에는 개인 정보의 조작이나, 개인 정보 유출의 위험이 크므로, 지문 정보와 스마트 카드를 동시에 이용함으로써 개인 정보를 더욱 효율적으로 보호할 수 있게 되는 기반을 마련할 수 있다.
한편, 인증 사용자가 센싱 장치를 이용하여 추출된 입력 지문 데이터를 서버에 전송하면, 서버에서는 상기 입력 지문 데이터와 서버에 등록된 인증 사용자의 지문 데이터를 이용하여 가장 유사한 점을 기반으로 기준점을 선정한다.
상세하게는, 상기 기준점은 서버의 데이터 베이스에 저장된 인증 사용자의 은닉된 지문 데이터와 인증을 수행하고자 하는 사용자의 입력 지문 데이터 간에 지문 데이터 쌍을 구성하고, 상기 지문 데이터 쌍 간의 위치 좌표 및 각도 차를 연산하고, 상기 연산된 위치 좌표 및 각도 차에 대한 평균값을 연산한다.
그 다음, 연산된 평균값을 기반으로 서버의 데이터 베이스에 저장된 인증 사용자의 은닉된 지문 데이터와 인증을 수행하고자 하는 사용자의 입력 지문 데이터를 보정하여 보정된 지문 데이터 간에 가장 유사도가 높은 지문 데이터 쌍을 탐색한다.
상기 탐색을 통하여 가장 유사도가 높은 지문 데이터 쌍에 해당되는 서버의 데이터 베이스에 저장된 인증 사용자의 지문 데이터가 기준점이 될 수 있다.
이와 같이, 기준점을 선정한 다음, 상기 기준점을 기반으로 상기 서버에 등록된 인증 사용자의 지문 데이터를 정렬하게 된다.
이와 같이, 상기 서버에 등록된 인증 사용자의 지문 데이터에 따라 생성되는 서버 해쉬 테이블 및 상기 인증 사용자의 입력 지문 데이터로부터 기준점을 생성하고, 상기 선정된 기준점을 기반으로 상기 서버에 등록된 인증 사용자의 지문 데이터를 기하학적으로 이동시켜 정렬할 수 있다.
여기서, 기하학적인 이동은 상기 선정된 기준점을 원점으로 이동시키고, 선정된 기준점의 각도를 미리 설정된 기준 각도로 변경함에 따라 상대적으로 서버에 등록된 인증 사용자의 지문 데이터를 상기 선정된 기준점에 대응되는 위치로 기하학적으로 이동시키는 것일 수 있다.
그 다음, 상기 선정된 기준점을 상기 인증 사용자의 스마트 카드에 전송하고, 상기 스마트 카드에 등록된 지문 데이터를 상기 전송된 기준점을 기준으로 정렬한다(340 과정).
이는 최초에 인증 사용자의 지문 데이터를 서버와 스마트 카드에 분할하여 각각 따로 저장하고, 서버에서 정한 특징점을 기반으로 해쉬 테이블을 생성하는데, 만약 인증 사용자의 입력 지문 데이터와 서버에 저장된 은닉 지문 데이터에 포함된 인증 사용자의 지문 데이터가 동일 유사할 경우, 인증 사용자의 서버에 저장된 지문 데이터 및 상기 입력 지문 데이터에 따라 생성된 기준점에 따라 스마트 카드에 저장된 지문 데이터가 정렬되면, 이는 최초 인증 사용자의 지문 데이터와 동일하게 되므로 이를 기반으로 사용자 인증을 수행할 수 있게 되는 것이다.
이와는 달리, 인증 사용자의 입력 지문 데이터와 서버에 저장된 은닉 지문 데이터에 포함된 인증 사용자의 지문 데이터가 다를 경우, 인증 사용자의 서버에 저장된 지문 데이터 및 상기 입력 지문 데이터에 따라 생성된 기준점에 따라 스마 트 카드에 저장된 지문 데이터가 정렬되면, 이는 최초 인증 사용자의 지문 데이터와 다르게 이를 기반으로 사용자 인증을 수행할 수 없다.
마지막으로, 상기 서버의 정렬된 서버 지문 데이터와 상기 스마트 카드의 정렬된 스마트 카드 지문 데이터를 이용하여 사용자의 인증을 수행한다(350 과정).
상세하게는, 상기 서버의 정렬된 서버 지문 데이터와 상기 스마트 카드의 정렬된 스마트 카드 지문 데이터를 이용하여 제 2 다항식을 생성하고, 상기 제 1 다항식과 상기 제 2 다항식의 일치 여부에 따라 사용자의 인증을 수행할 수 있다.
이는 전술한 바와 마찬가지로, 상기 제 1 다항식은 인증 사용자의 지문 영상으로부터 추출된 복수 개의 지문 데이터에 따라 제 1 다항식을 생성하였으므로, 상기 생성된 제 2 다항식이 제 1 다항식과 일치할 경우에 인증 사용자로 인증할 수 있게 된다.
이는, 상기 서버의 정렬된 서버 지문 데이터와 상기 스마트 카드의 정렬된 스마트 카드 지문 데이터를 이용하여 특징점(
Figure 112007095007529-pat00023
)을 추출하고, 이를 하기 수학식 2에 대입하여
Figure 112007095007529-pat00024
의 값을 연산하여, 상기 연산된 계수 값과 수학식 1의 계수 값을 비교하게 된다.
Figure 112007095007529-pat00025
Figure 112007095007529-pat00026
Figure 112007095007529-pat00027
Figure 112007095007529-pat00028
이는, 상기 수학식 1에서
Figure 112007095007529-pat00029
Figure 112007095007529-pat00030
차 다항식을 설계할 경우, 상기 수학식 2와 같이
Figure 112007095007529-pat00031
개의 방정식을 획득한다면, 연립방정식에 의하여
Figure 112007095007529-pat00032
의 계수를 복원하여 제 2 다항식을 생성할 수 있게 된다.
도 4는 본 발명에 따른 스마트 카드 기반의 지문 데이터 보호 시스템의 블록 다이어그램을 도시한 것이다.
도 4를 참조하면, 본 발명에 따른 스마트 카드 기반의 지문 데이터 보호 시스템은 인증을 수행하고자 하는 사용자의 지문 정보를 추출하는 입력부(410), 인증 사용자의 지문 정보를 저장하는 서버(420) 및 인증 사용자의 지문 정보 중 상기 서버(420)에 저장되지 않은 나머지의 지문 정보를 저장하는 스마트카드(430)로 구성될 수 있다.
그리고, 상기 입력부(410)는 입력 지문 데이터 추출부(411)를 포함하고, 상기 서버(420)는 서버 지문 데이터 등록부(421), 서버 데이터 베이스(422) 및 서버 정합 도출부(423)을 포함할 수 있고, 상기 스마트 카드(430)는 스마트 카드 지문 데이터 등록부(431), 스마트 카드 데이터 베이스(432), 스마트 카드 정합 도출부(433), 정합 데이터 취합부(433) 및 비밀키 생성부(434)를 포함할 수 있다.
여기서 입력부(410)의 입력 지문 데이터 추출부(411)는 인증을 수행하고자 하는 사용자의 지문 영상에서 입력 지문 데이터를 추출한다.
이는 소정의 센싱 장치를 이용하여 인증을 수행하고자 하는 사용자의 지문 영상을 최초로 입력받고, 상기 사용자의 지문 영상으로부터 특정점의 위치 좌표 및 각도를 포함하는 지문 데이터를 추출한다. 여기서 지문 데이터는 인증을 수행하고자 하는 사용자의 조작에 따라 초기화 된 다음, 다시 지문 영상이 입력될 수 있다.
한편, 서버(420)의 서버 지문 데이터 등록부(421)는 마찬가지로 소정의 센싱 장치에 따라 인증 사용자의 지문 영상을 입력받아 위치 좌표 및 각도를 포함하는 지문 데이터를 추출하고, 상기 추출된 복수 개의 지문 데이터에 따라 제 1 다항식을 생성한다.
여기서 제 1 다항식의 차수는 보안 시스템의 설계자가 고려하는 보안성의 정도에 따라 임의로 정할 수 있는 차수로 정의될 수 있다.
이와 같이, 제 1 다항식은 상기 수학식 1과 같이 생성될 수도 있으며, 실시 형태 및 사용 태양에 따라 본 발명의 구성을 해하지 않는 범위 내에서 다양하게 구성할 수 있음은 물론이다.
상기 서버 지문 데이터 등록부(421)는 제 1 다항식을 생성한 다음, 보안 시스템의 설계자가 고려하는 보안성 정도에 따라서 랜덤하게 생성된 가짜 특징점으로 구성되는 복수 개의 가짜 특징점 정보를 상기 추출된 인증 사용자의 지문 데이터에 삽입한다.
이는 인증 사용자의 지문 데이터를 실제로 구별할 수 없도록 삽입하는 것으로, 가짜 특징점을 삽입할 경우에 상기 추출된 지문 데이터의 위치 좌표 및 각도를 고려하여 인증 사용자의 은닉 지문 데이터를 생성하게 된다.
여기서, 인증 사용자의 은닉 지문 데이터는 서버(420)와 스마트 카드(430)에 분할되어 저장되게 되는데, 이를 기반으로 인증 사용자의 지문 데이터의 보안성을 높이고, 스마트 카드가 가지고 있는 메모리의 한계를 극복할 수 있다.
상세하게는, 인증 사용자의 은닉 지문 데이터의 일부를 서버(420)의 서버 지문 데이터 등록부(421)에 등록하여 이를 저장하게 되고, 서버에 저장되지 않은 나머지의 은닉 지문 데이터를 스마트 카드(430)의 스마트 카드 지문 데이터 등록부(431)에 저장한다.
그리고, 서버 데이터 베이스(422)에서 상기 서버 지문 데이터 등록부(421)에 등록된 지문 데이터를 정렬하여 저장하며, 마찬가지로 스마트 카드 지문 데이터 등록부(431)에 등록된 지문 데이터를 스마트 카드 데이터 베이스(432)에서 정렬하여 저장한다.
상기 서버 데이터 베이스 및 스마트 카드 데이터 베이스에 해당되는 데이터 베이스는 비휘발성 메모리 소자, 메모리 소자 또는 하드 디스크 드라이브, 광학 기록매체 등을 포함할 수 있다.
여기서, 서버 데이터 베이스(422)는 상기 서버 지문 데이터 등록부(421)에 등록된 지문 데이터 중에서 특징점을 선정하여 서버 해쉬 테이블을 생성하여 상기 생성된 서버 해쉬 테이블의 형태로 저장할 수 있다.
본 발명에 따른 서버는 연산 능력이 스마트 카드에 비하여 월등히 우수하므로 상기 특징점에 따른 서버 해쉬 테이블을 생성하여 서버 데이터 베이스(422)에 저장할 수 있다.
서버 정합 도출부(423)는 상기 입력부(410)에 따라 사용자가 자신의 지문 데이터를 기반으로 사용자 인증 요청을 수신하면, 상기 서버 데이터 베이스에 저장된 인증 사용자의 지문 데이터와 상기 사용자의 입력 지문 데이터를 정합하여 기준점을 설정한다.
한편, 서버 정합 도출부(423)는 상기 서버(420)에 등록된 인증 사용자의 지문 데이터에 따른 서버 해쉬 테이블 및 상기 인증을 수행하고자 하는 사용자의 입력 지문 데이터로부터 기준점을 설정하고, 상기 설정된 기준점을 기반으로 상기 서버에 등록된 인증 사용자의 지문 데이터를 기하학적으로 이동시킴으로써, 상기 서버에 등록된 지문 데이터를 정렬할 수 있게 된다.
여기서, 상기 기준점은 서버 데이터 베이스(422)에 저장된 인증 사용자의 은닉된 지문 데이터와 인증을 수행하고자 하는 사용자의 입력 지문 데이터간에 지문 데이터 쌍을 구성하고, 상기 지문 데이터 쌍 간의 위치 좌표 및 각도 차를 연산하고, 상기 연산된 위치 좌표 및 각도 차에 대한 평균값을 연산한다.
그 다음, 연산된 평균값을 기반으로 서버 데이터 베이스(422)에 저장된 인증 사용자의 은닉된 지문 데이터와 인증을 수행하고자 하는 사용자의 입력 지문 데이터를 보정하여 보정된 지문 데이터 간에 가장 유사도가 높은 지문 데이터 쌍을 탐색한다.
상기 탐색을 통하여 가장 유사도가 높은 지문 데이터 쌍에 해당되는 서버 데이터 베이스(422)에 저장된 인증 사용자의 지문 데이터가 기준점이 될 수 있다.
한편, 상기 기준점은 서버 정합 도출부(422)에서 스마트 카드 데이터 베이스(432)로 전송되고, 상기 스마트 카드 정합 도출부(433)는 상기 기준점에 따라 상기 스마트 카드 데이터 베이스에 저장된 지문 데이터를 정렬하게 된다.
그러면, 정합 데이터 취합부(434)에서 상기 서버 정합 도출부(423)에서 도출된 서버의 지문 데이터와 스마트 카드 정합 도출부(433)에서 도출된 지문 데이터를 취합한다.
이는 최초에 인증 사용자의 지문 데이터를 서버와 스마트 카드에 분할하여 각각 따로 저장하고, 서버에서 정한 특징점을 기반으로 해쉬 테이블을 생성하는데, 만약 인증 사용자의 입력 지문 데이터와 서버에 저장된 은닉 지문 데이터에 포함된 인증 사용자의 지문 데이터가 동일 유사할 경우, 인증 사용자의 서버에 저장된 지문 데이터 및 상기 입력 지문 데이터에 따라 생성된 기준점에 따라 스마트 카드에 저장된 지문 데이터가 정렬되면, 이는 최초 인증 사용자의 지문 데이터와 동일하게 되므로 이를 기반으로 사용자 인증을 수행할 수 있게 되는 것이다.
이와는 달리, 인증 사용자의 입력 지문 데이터와 서버에 저장된 은닉 지문 데이터에 포함된 인증 사용자의 지문 데이터가 다를 경우, 인증 사용자의 서버에 저장된 지문 데이터 및 상기 입력 지문 데이터에 따라 생성된 기준점에 따라 스마트 카드에 저장된 지문 데이터가 정렬되면, 이는 최초 인증 사용자의 지문 데이터와 다르게 이를 기반으로 사용자 인증을 수행할 수 없다.
한편, 비밀키 생성부(435)에서 상기 정합 데이터 취합부(434)에서 취합된 지문 데이터를 이용하여 인증을 수행할 비밀키를 생성한다.
즉, 이는 상기 정합 데이터 취합부(434)에서 취합된 지문 데이터를 이용하여 제 2 다항식을 생성하고, 상기 제 1 다항식과 제 2 다항식의 일치 여부에 따라 사용자의 인증을 수행할 비밀키를 생성하게 된다.
이는 전술한 바와 마찬가지로, 상기 제 1 다항식은 인증 사용자의 지문 영상으로부터 추출된 복수 개의 지문 데이터에 따라 제 1 다항식을 생성하였으므로, 상기 생성된 제 2 다항식이 제 1 다항식과 일치할 경우에 인증 사용자로 인증할 수 있게 된다.
이는, 상기 서버의 정렬된 서버 지문 데이터와 상기 스마트 카드의 정렬된 스마트 카드 지문 데이터를 이용하여 특징점(
Figure 112007095007529-pat00033
)을 추출하고, 이를 상기 수학식 2에 대입하여
Figure 112007095007529-pat00034
의 값을 연산하여, 상기 연산된 계수 값과 수학식 1의 계수 값을 비교하게 된다.
이는, 상기 수학식 1에서
Figure 112007095007529-pat00035
Figure 112007095007529-pat00036
차 다항식을 설계할 경우, 상기 수학식 2와 같이
Figure 112007095007529-pat00037
개의 방정식을 획득한다면, 연립방정식에 의하여
Figure 112007095007529-pat00038
의 계수를 복원하여 제 2 다항식을 생성할 수 있게 된다.
이와 같이 생성된 제 2 다항식이 제 1 다항식이 일치할 경우에 사용자 인증을 수행할 비밀키가 자동적으로 생성되며, 이와 반대로 일치하지 않을 경우에는 사용자 인증을 수행할 수 없게 된다.
도 5는 본 발명에 따른 은닉된 지문 데이터의 저장 태양을 도시한 것이다.
도 5를 참조하면, 본 발명에 따른 스마트 카드 기반의 지문 데이터 보호 방법을 수행하기 위하여 우선, 인증 사용자의 지문 영상(510)에서 특징점으로 구성되는 복수 개의 지문 데이터(520)를 추출한다.
그 다음, 상기 지문 데이터에 가짜 특징점을 삽입(530)하여 지문 데이터를 은닉한다.
그런 다음, 상기 은닉된 지문 데이터의 일부(531)를 서버에 등록하고, 상기 은닉된 지문 데이터 중 서버에 등록되지 않은 나머지의 지문 데이터(532)를 상기 인증 사용자의 스마트 카드에 등록함으로써 상기 인증 사용자의 지문 데이터를 보안 등록한다.
그런 다음, 서버의 데이터 베이스에서 상기 보안 등록된 지문 데이터를 정렬하여 저장(541)하며, 마찬가지로 스마트 카드에 등록된 지문 데이터를 스마트 카드의 데이터 베이스에서 정렬하여 저장(542)한다.
여기서, 정렬되는 지문 데이터는
Figure 112007095007529-pat00039
개의 은닉된 지문 데이터가 있을 경우에 서버에
Figure 112007095007529-pat00040
개의 지문 데이터가 저장되는 경우, 스마트 카드에
Figure 112007095007529-pat00041
부터
Figure 112007095007529-pat00042
에 해당되는 지문 데이터가 저장되는데, 상기 지문 데이터는
Figure 112007095007529-pat00043
좌표로 구성되는 위치 좌표, 각도
Figure 112007095007529-pat00044
및 지문의 분기점
Figure 112007095007529-pat00045
로 구성될 수 있다.
본 발명에 따른 스마트 카드 기반의 지문 데이터 보호 방법은 컴퓨터 판독 가능 저장 매체를 통하여 실행될 수 있다.
컴퓨터 판독 가능 저장 매체로 실행될 때, 본 발명의 구성 수단들은 필요한 작업을 수행하는 코드 세그먼트(code segment)들이다.
상기 코드 세그먼트들은 프로세서 판독 가능 매체에 저장되거나 전송 매체 또는 통신망에서 반송파와 결합된 컴퓨터 데이터 신호에 의하여 전송될 수 있다.
컴퓨터가 읽을 수 있는 저장 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 저장 매체의 예로는 ROM, RAM, CD-ROM, DVD±ROM, DVD-RAM, 자기 테이프, 플로피 디스크, 하드 디스크(hard disk), 광데이터 저장장치 등이 있다.
또한, 컴퓨터가 읽을 수 있는 저장 매체는 네트워크로 연결된 컴퓨터 장치에 분산되어 분산방시으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
본 발명은 도면에 도시된 일 실시예를 참고로 하여 설명하였으나 이는 예시적인 것에 불과하며, 당해 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형적인 것에 불과하며 당해 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 실시예의 변형이 가능하다는 점을 이해할 것이다.
그러나, 이와 같은 변형은 본 발명의 기술적 보호범위 네에 있다고 보아야 한다.
따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사사에 의해서 정해져야 할 것이다.
도 1은 지문 인식 시스템의 블럭도를 도시한 것이다.
도 2는 본 발명과 대비되는 지문 데이터의 등록 과정을 도시한 것이다.
도 3은 본 발명에 따른 스마트 카드 기반의 지문 데이터 보호 방법의 흐름도를 도시한 것이다.
도 4는 본 발명에 따른 스마트 카드 기반의 지문 데이터 보호 시스템의 블록 다이어그램을 도시한 것이다.
도 5는 본 발명에 따른 은닉된 지문 데이터의 저장 태양을 도시한 것이다.

Claims (15)

  1. 인증 사용자의 지문 영상에서 특징점으로 구성되는 복수 개의 지문 데이터에 의해 다항식의 계수가 결정되는 제 1 다항식을 생성하고, 상기 지문 데이터에 가짜 특징점을 삽입하여 지문 데이터를 은닉하는 단계;
    상기 은닉된 지문 데이터의 일부를 서버에 등록하고, 상기 은닉된 지문 데이터 중 서버에 등록되지 않은 나머지의 지문 데이터를 상기 인증 사용자의 스마트 카드에 등록함으로써 상기 인증 사용자의 지문 데이터를 보안 등록하는 단계;
    인증 사용자가 소정의 센싱 장치에 따라 입력된 자신의 입력 지문 데이터 및 상기 스마트 카드를 이용하여 상기 서버에 사용자 인증 요청을 하면, 상기 서버에 등록된 인증 사용자의 지문 데이터 및 상기 입력 지문 데이터를 이용하여 기준점을 선정하고, 상기 기준점을 기반으로 상기 서버에 등록된 인증 사용자의 지문 데이터를 정렬하는 단계;
    상기 서버에서 상기 선정된 기준점을 상기 인증 사용자의 스마트 카드에 전송하고, 상기 스마트 카드에 등록된 지문 데이터를 상기 전송된 기준점을 기준으로 정렬하는 단계; 및
    상기 서버의 정렬된 서버 지문 데이터와 상기 스마트 카드의 정렬된 스마트 카드 지문 데이터를 이용하여 사용자의 인증을 수행하는 단계를 포함하는 스마트 카드 기반의 지문 데이터 보호 방법.
  2. 제 1 항에 있어서,
    상기 인증 사용자의 지문 데이터를 보안 등록하는 단계는,
    상기 은닉된 지문 데이터의 일부로부터 서버 해쉬 테이블을 생성하고, 상기 서버 해쉬 테이블을 서버의 데이터베이스에 저장하는 단계를 포함하는 것을 특징으로 하는 스마트 카드 기반의 지문 데이터 보호 방법.
  3. 제 1 항에 있어서,
    상기 기준점은
    상기 서버에 등록된 인증 사용자의 지문 데이터와 상기 입력 지문 데이터를 비교하여 가장 유사도가 높은 점으로 설정되는 것을 특징으로 하는 스마트 카드 기반의 지문 데이터 보호 방법.
  4. 제 1 항에 있어서,
    상기 서버에 등록된 인증 사용자의 지문 데이터를 정렬하는 단계는
    상기 서버에 등록된 인증 사용자의 지문 데이터에 따라 생성되는 서버 해쉬 테이블 및 상기 사용자의 입력 지문 데이터로부터 기준점을 선정하는 단계; 및
    상기 선정된 기준점을 기반으로 상기 서버에 등록된 인증 사용자의 지문 데이터를 기하학적으로 이동시켜 정렬하는 단계를 포함하는 것을 특징으로 하는 스마트 카드 기반의 지문 데이터 보호 방법.
  5. 제 1 항에 있어서
    상기 사용자의 인증을 수행하는 단계는
    상기 서버의 정렬된 서버 지문 데이터와 상기 스마트 카드의 정렬된 스마트 카드 지문 데이터를 이용하여 다항식의 계수가 결정되는 제 2 다항식을 생성하고, 상기 제 1 다항식의 계수와 상기 제 2 다항식의 계수의 일치 여부에 따라 사용자의 인증을 수행하는 것을 특징으로 하는 스마트 카드 기반의 지문 데이터 보호 방법.
  6. 인증을 수행하고자 하는 사용자의 지문 데이터를 추출하는 입력부, 인증 사용자의 지문 데이터를 저장하는 서버 및 스마트 카드를 포함하는 스마트 카드 기반의 지문 데이터 보호 시스템에 있어서,
    상기 입력부는
    사용자의 지문 영상에서 입력 지문 데이터를 추출하는 입력 지문 데이터 추출부를 포함하고,
    상기 서버는
    소정의 센싱 장치에 따라 추출된 인증 사용자의 지문 데이터로부터 특징점으로 구성되는 복수 개의 지문 데이터에 의해 다항식의 계수가 결정되는 제 1 다항식을 생성하고, 상기 지문 데이터에 가짜 특징점이 삽입되어 은닉된 일부의 지문 데이터를 등록하는 서버 지문 데이터 등록부;
    상기 등록된 인증 사용자의 지문 데이터를 정렬하여 저장하는 서버 데이터베이스; 및
    상기 입력부에 따라 사용자가 자신의 지문 데이터를 기반으로 사용자 인증 요청을 수신하면, 상기 서버 데이터 베이스에 저장된 인증 사용자의 지문 데이터와 상기 사용자의 입력 지문 데이터를 정합하여 기준점을 설정하는 서버 정합 도출부를 포함하고,
    상기 스마트 카드는
    상기 지문 데이터에 가짜 특징점이 삽입되어 은닉된 지문 데이터 중 서버에 등록되지 않은 나머지 지문 데이터를 등록하는 스마트 카드 지문 데이터 등록부;
    상기 스마트 카드 지문 등록부의 지문 데이터를 정렬하여 저장하는 스마트 카드 데이터 베이스;
    상기 서버 정합 도출부에서 설정된 기준점에 따라 상기 스마트 카드의 지문 정보를 정렬하는 스마트 카드 정합 도출부;
    상기 서버 정합 도출부에서 도출된 서버의 지문 데이터와 상기 스마트 카드의 정합 도출부에서 도출된 스마트 카드의 지문 데이터를 취합하는 정합 데이터 취합부; 및
    상기 정합 데이터 취합부에서 취합된 지문 데이터를 이용하여 사용자 인증을 수행할 비밀키를 생성하는 비밀키 생성부를 포함하는 스마트 카드 기반의 지문 데이터 보호 시스템.
  7. 제 6 항에 있어서,
    상기 서버 데이터베이스는
    상기 은닉된 지문 데이터의 일부로부터 서버 해쉬 테이블을 생성하고, 상기 생성된 서버 해쉬 테이블을 저장하는 것을 특징으로 하는 스마트 카드 기반의 지문 데이터 보호 시스템.
  8. 제 6 항에 있어서,
    상기 기준점은
    상기 서버에 등록된 지문 데이터와 상기 입력 지문 데이터를 비교하여 가장 유사도가 높은 점으로 설정되는 것을 특징으로 하는 스마트 카드 기반의 지문 데이터 보호 시스템.
  9. 제 6 항에 있어서,
    상기 서버 정합 도출부는
    상기 서버에 등록된 인증 사용자의 지문 데이터에 따른 서버 해쉬 테이블 및 상기 사용자의 입력 지문 데이터로부터 기준점을 설정하고, 상기 설정된 기준점을 기반으로 상기 서버에 등록된 인증 사용자의 지문 데이터를 기하학적으로 이동시켜 정렬하는 것을 특징으로 하는 스마트 카드 기반의 지문 데이터 보호 시스템.
  10. 제 6 항에 있어서,
    상기 비밀키 생성부는
    상기 정합 데이터 취합부에서 취합된 지문 데이터를 이용하여 다항식의 계수가 결정되는 제 2 다항식을 생성하고, 상기 제 1 다항식의 계수와 상기 제 2 다항식의 계수의 일치 여부에 따라 사용자의 인증을 수행하는 것을 특징으로 하는 스마트 카드 기반의 지문 데이터 보호 시스템.
  11. 컴퓨터 판독 가능 저장 매체에 지문 데이터를 보호하는 프로그램이 기록되어 있고, 상기 프로그램은,
    인증 사용자의 지문 영상에서 특징점으로 구성되는 복수 개의 지문 데이터에 의해 다항식의 계수가 결정되는 제 1 다항식을 생성하고, 상기 지문 데이터에 가짜 특징점을 삽입하여 지문 데이터를 은닉하도록 하는 지문 데이터 은닉 코드;
    상기 은닉된 지문 데이터의 일부를 서버에 등록하고, 상기 은닉된 지문 데이터 중 서버에 등록되지 않은 나머지의 지문 데이터를 상기 인증 사용자의 스마트 카드에 등록함으로써 상기 인증 사용자의 지문 데이터를 보안 등록하도록 하는 보안 등록 코드;
    인증 사용자가 소정의 센싱 장치에 따라 입력된 자신의 입력 지문 데이터 및 상기 스마트 카드를 이용하여 상기 서버에 사용자 인증 요청을 하면, 상기 서버에 등록된 인증 사용자의 지문 데이터 및 상기 입력 지문 데이터를 이용하여 기준점을 선정하고, 상기 기준점을 기반으로 상기 서버에 등록된 인증 사용자의 지문 데이터를 정렬하도록 하는 서버 지문 데이터 정렬 코드;
    상기 선정된 기준점을 상기 인증 사용자의 스마트 카드에 전송하고, 상기 스마트 카드에 등록된 지문 데이터를 상기 전송된 기준점을 기준으로 정렬하도록 하는 스마트 카드 지문 데이터 정렬 코드; 및
    상기 서버의 정렬된 서버 지문 데이터와 상기 스마트 카드의 정렬된 스마트 카드 지문 데이터를 이용하여 사용자의 인증을 수행하도록 하는 사용자 인증 코드를 포함하는 컴퓨터 판독 가능 저장 매체.
  12. 제 11 항에 있어서,
    상기 보안 등록 코드는
    상기 은닉된 지문 데이터의 일부로부터 서버 해쉬 테이블을 생성하고, 상기 서버 해쉬 테이블을 서버의 데이터베이스에 저장하도록 하는 코드를 포함하는 것을 특징으로 하는 컴퓨터 판독 가능 저장 매체.
  13. 제 11 항에 있어서,
    상기 기준점은
    상기 서버에 등록된 인증 사용자의 지문 데이터와 상기 입력 지문 데이터를 비교하여 가장 유사도가 높은 점으로 설정되는 것을 특징으로 하는 컴퓨터 판독 가능 저장 매체.
  14. 제 11 항에 있어서,
    상기 서버 지문 데이터 정렬 코드는
    상기 서버에 등록된 인증 사용자의 지문 데이터에 따라 생성되는 서버 해쉬 테이블 및 상기 사용자의 입력 지문 데이터로부터 기준점을 선정하고, 상기 선정된 기준점을 기반으로 상기 서버에 등록된 인증 사용자의 지문 데이터를 변경하도록 하는 코드를 포함하는 것을 특징으로 하는 컴퓨터 판독 가능 저장 매체.
  15. 제 11 항에 있어서
    상기 사용자 인증 코드는
    상기 서버의 정렬된 서버 지문 데이터와 상기 스마트 카드의 정렬된 스마트 카드 지문 데이터를 이용하여 다항식의 계수가 결정되는 제 2 다항식을 생성하고, 상기 제 1 다항식의 계수와 상기 제 2 다항식의 계수의 일치 여부에 따라 사용자의 인증을 수행하도록 하는 코드인 것을 특징으로 하는 컴퓨터 판독 가능 저장 매체.
KR1020070141469A 2007-12-31 2007-12-31 스마트 카드 기반의 지문 데이터 보호 방법, 그 시스템 및이를 기록한 컴퓨터 판독 가능 저장 매체 KR100954580B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070141469A KR100954580B1 (ko) 2007-12-31 2007-12-31 스마트 카드 기반의 지문 데이터 보호 방법, 그 시스템 및이를 기록한 컴퓨터 판독 가능 저장 매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070141469A KR100954580B1 (ko) 2007-12-31 2007-12-31 스마트 카드 기반의 지문 데이터 보호 방법, 그 시스템 및이를 기록한 컴퓨터 판독 가능 저장 매체

Publications (2)

Publication Number Publication Date
KR20090073505A KR20090073505A (ko) 2009-07-03
KR100954580B1 true KR100954580B1 (ko) 2010-04-26

Family

ID=41330649

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070141469A KR100954580B1 (ko) 2007-12-31 2007-12-31 스마트 카드 기반의 지문 데이터 보호 방법, 그 시스템 및이를 기록한 컴퓨터 판독 가능 저장 매체

Country Status (1)

Country Link
KR (1) KR100954580B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024112341A1 (en) * 2022-11-23 2024-05-30 Visa International Service Association Superimposed biometric authentication

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020073717A (ko) * 2001-03-15 2002-09-28 주식회사 퍼스텍인터내셔날 지문인식과 스마트 카드를 이용한 오프라인상의 본인 인증시스템 및 방법
KR100714303B1 (ko) 2005-12-09 2007-05-07 한국전자통신연구원 특징점을 은닉하는 지문 인식 방법 및 그 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020073717A (ko) * 2001-03-15 2002-09-28 주식회사 퍼스텍인터내셔날 지문인식과 스마트 카드를 이용한 오프라인상의 본인 인증시스템 및 방법
KR100714303B1 (ko) 2005-12-09 2007-05-07 한국전자통신연구원 특징점을 은닉하는 지문 인식 방법 및 그 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024112341A1 (en) * 2022-11-23 2024-05-30 Visa International Service Association Superimposed biometric authentication

Also Published As

Publication number Publication date
KR20090073505A (ko) 2009-07-03

Similar Documents

Publication Publication Date Title
JP4886371B2 (ja) 生体認証方法及びシステム
KR100824733B1 (ko) 3차원 퍼지볼트를 이용한 지문 데이터 은닉 방법, 3차원퍼지볼트를 이용한 지문 데이터 인증 방법, 3차원퍼지볼트를 이용한 지문 데이터 은닉 장치 및 3차원퍼지볼트를 이용한 지문 데이터 인증 시스템
US8417960B2 (en) Method for generating an encryption key using biometrics authentication and restoring the encryption key and personal authentication system
Matyáš et al. Biometric authentication—security and usability
JP5028194B2 (ja) 認証サーバ、クライアント端末、生体認証システム、方法及びプログラム
JP4616677B2 (ja) 生体情報による暗号鍵生成および生体情報による個人認証システム
KR100996466B1 (ko) 비밀분산 기법을 이용한 지문정보 저장 장치, 비밀분산 기법을 이용한 지문 인증 시스템 및 비밀분산 기법을 이용한 지문 인증 방법
CN101199160B (zh) 基于字符串的生物测定验证方法和系统
US8290221B2 (en) Apparatus and method for polynomial reconstruction in fuzzy vault system
KR100927596B1 (ko) 데이터 보호형 패턴 인식 방법 및 장치
JP2010286937A (ja) 生体認証方法、及び、生体認証に用いるクライアント端末、認証サーバ
JP2006525577A (ja) スマート認証用カード
JP2000358025A (ja) 情報処理方法、情報処理装置及び情報処理プログラムを記憶した記録媒体
RU2365047C2 (ru) Способ формирования электронных документов и устройство для его осуществления
Ali et al. A novel technique for fingerprint template security in biometric authentication systems
KR100864535B1 (ko) 퍼지볼트를 이용한 메모리 효율적인 지문 데이터 은닉방법, 퍼지볼트를 이용한 메모리 효율적인 지문 데이터인증 방법, 퍼지볼트를 이용한 메모리 효율적인 지문데이터 은닉 장치 및 퍼지볼트를 이용한 메모리 효율적인지문 데이터 인증 시스템
WO2023036143A1 (zh) 去中心化零信任身份核实认证系统及方法
KR100954580B1 (ko) 스마트 카드 기반의 지문 데이터 보호 방법, 그 시스템 및이를 기록한 컴퓨터 판독 가능 저장 매체
Yellamma et al. Privacy preserving biometric authentication and identification in cloud computing
KR100919486B1 (ko) 부분 기하학적 해싱을 이용한 은닉된 지문 데이터의 정렬방법, 부분 기하학적 해싱을 이용한 지문 데이터 인증방법, 부분 기하학적 해싱을 이용한 은닉된 지문 데이터의정렬 장치 및 부분 기하학적 해싱을 이용한 지문 데이터인증 시스템
Cimato et al. Biometrics and privacy
Merkle et al. Security capacity of the fuzzy fingerprint vault
Zahed et al. A novel technique for enhancing security in biometric based authentication systems
JP2004153843A (ja) 情報処理方法、情報処理装置及び情報処理プログラムを記憶した記録媒体
Champaneria et al. A cancelable biometric authentication scheme based on geometric transformation

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
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130405

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140304

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee