KR100744603B1 - 생체 데이터를 이용한 패킷 레벨 사용자 인증 방법 - Google Patents

생체 데이터를 이용한 패킷 레벨 사용자 인증 방법 Download PDF

Info

Publication number
KR100744603B1
KR100744603B1 KR1020060073727A KR20060073727A KR100744603B1 KR 100744603 B1 KR100744603 B1 KR 100744603B1 KR 1020060073727 A KR1020060073727 A KR 1020060073727A KR 20060073727 A KR20060073727 A KR 20060073727A KR 100744603 B1 KR100744603 B1 KR 100744603B1
Authority
KR
South Korea
Prior art keywords
client
bio
server
biometric information
packet
Prior art date
Application number
KR1020060073727A
Other languages
English (en)
Inventor
이대성
김기창
안치돈
Original Assignee
이대성
주식회사 아인픽춰스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 이대성, 주식회사 아인픽춰스 filed Critical 이대성
Priority to KR1020060073727A priority Critical patent/KR100744603B1/ko
Application granted granted Critical
Publication of KR100744603B1 publication Critical patent/KR100744603B1/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/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
    • H04L9/3242Cryptographic 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 involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC

Abstract

본 발명은 생체 데이터를 이용한 패킷 레벨 사용자 인증에 관한 것으로, 모든 패킷이 사용자 생체 정보를 이용하여 인증되며, 특히 SYN 패킷 전송 시점에서부터 생체 정보를 삽입하고 인증하여 DoS 공격이나 유효 포트 탐색을 무력화시킬 수 있도록 하는 생체정보를 이용한 패킷 레벨 사용자의 인증방법에 관한 것으로서, 생체 데이터를 이용한 패킷 레벨 사용자 인증 방법에 있어서, (1) 서버는, 클라이언트로부터 생체정보가 포함된 SYN 패킷이 수신된 경우 사용자가 미리 등록시켜 둔 생체정보와 상기 SYN 패킷에 포함된 생체정보를 비교하는 과정; (2) 서버는, 상기 수신된 생체정보와 미리 등록된 생체정보가 일치하여 인증이 이루어진 경우 SYN 패킷에 포함된 생체 암호 정보 구조체를 복호화하고 클라이언트 리스트에 복사하는 과정; (3) 서버는, 상기 클라이언트로 응답(ACK) 신호를 전송할 때 클라이언트 리스트(해당 사용자)에 생체 키 펑션(bio_key_func)을 기록하고, 상기 정보들을 생체 암호 정보 구조체로 암호화하여 전송하는 과정; 및 (4) 클라이언트와 서버는, 생체 키 펑션(bio_key_func)을 이용하여 서로 공유하고 있는 생체정보로부터 일정 비트를 추출하여 대칭키를 생성하고, 상기 대칭키를 이용하여 IP 데이터그램 전체를 다이제스트 한 후 그 다이제스트 결과를 첨부하여 전송하는 과정으로 이루어진 것을 특징으로 한다.
패킷 레벨 사용자 인증, 생체 데이터,

Description

생체 데이터를 이용한 패킷 레벨 사용자 인증 방법{Authentification method for Packet level user by use of bio data}
도 1은 본 발명에 따른 생체 데이터를 이용한 패킷 레벨 사용자 인증 방법의 흐름도,
도 2는 본 발명에 적용된 클라이언트가 생체정보를 암호화하기 위한 초기 세션키를 암호화하여 전송할 때 전송되는 패킷을 설명하기 위한 도면,
도 3은 본 발명에 적용된 SyN 및 Acking SYN 패킷 전송할 때 전송되는 패킷을 설명하기 위한 도면,
도 4는 본 발명에 적용된 사용자 데이터 전송할 때 전송되는 패킷을 설명하기 위한 도면,
도 5a 및 도 5b는 본 발명에 적용된 클라이언트에 의해 전송되는 패킷을 설명하기 위한 도면이다.
*** 도면의 주요부분에 대한 부호 설명 ***
100 : 클라이언트
200 : 서버
본 발명은 생체 데이터를 이용한 패킷 레벨 사용자 인증 방법에 관한 것이다.
보다 상세하게는, 모든 패킷이 사용자 생체 정보를 이용하여 다이제스트 된 후 그 결과를 패킷 내에 첨부하여 전송하도록 되어있어 임의로 변조된 패킷이 삽입되거나 사용자 신원이 도용되는 것을 차단할 수 있도록 하는 생체 데이터를 이용한 패킷 레벨 사용자 인증 방법에 관한 것이다.
특히, SYN 패킷 전송 시점에서부터 생체정보를 삽입하고 인증과정을 거치므로 DoS 공격이나 유효 포트 탐색을 무력화시킬 수 있는 생체 데이터를 이용한 패킷 레벨 사용자 인증 방법에 관한 것이다.
인터넷과 웹 기술의 빠른 성장과 더불어 제3자가 신원을 도용하는 해킹 피해 사례가 급증하고 있다. 상기와 같은 보안 문제를 해결하기 위하여 안전한 보안 프로토콜이 연구되어 왔다.
기존의 연구는 인증서를 이용하여 본인임을 확인하고 이를 통해 암호 키가 교환되면 신뢰된 호스트로 간주하고 통신을 하게 된다.
그러나 최근 발생한 인터넷 뱅킹 해킹 사고는 스파이웨어 등을 통하여 인증 서가 도난 될 수 있음을 보여준다. 이는 파일 형태로 저장되는 인증서 자체가 사용자를 대신하기 때문에 인증서 도난의 경우 제3자가 신원을 도용할 수 있다.
또한, 인증서는 복사가 가능하여 여러 시스템에 저장될 수 있으며, 이는 인증서가 있는 시스템은 합법적인 사용자로 간주되는 형태로써 패스워드를 남에게 임의로 알려주는 경우와 유사하다. 즉 인증서가 있는 시스템에서는 실제 사용자가 아니더라도 인증서를 이용할 수 있음을 나타낸다. 일예로, 조직의 하급 직원이 상관의 인증서가 복사된 시스템을 이용하는 것이 가능하다.
인증서를 사용하여 사용자의 신원을 확인하는 방법은 첫째, 파일로 저장되기 때문에 도난의 가능성이 있다. 이는 제3자가 도용할 수 있음을 뜻한다. 둘째, 인증서 복사가 가능하다. 꼭 본인이 아니더라도 지인에 의해 인증서가 편의상 사용될 수 있는 문제점이 있다. 이것은 패스워드를 편의상 남에게 알려주는 것과 같다.
인증서 도난에 의한 피해이외에도 지금까지 꾸준히 진행되는 DoS(Denial of Service) 공격은 불법적인 사용자가 다수의 합법적인 사용자 서비스를 방해하는 공격 형태로 STN flooding에 의한 공격이 일반적이다. 또한 DoS 공격 이전에 유효 포트를 탐색하여 공격 대상을 물색하기도 하는 문제점이 있다.
본 발명은 상기와 같은 연구 개발에 부응하여 안출된 것으로, 본 발명의 목적은 모든 패킷이 사용자 생체 정보를 다이제스트 키로 이용하여 IP 데이터그램을 다이제스트 한 후 그 결과를 첨부하여 전송함으로써 임의로 변조된 패킷이 삽입되 거나 사용자 신원이 도용되는 것을 차단하며, 특히 SYN 패킷 전송 시점에서부터 생체 정보를 삽입하고 인증하여 DoS 공격이나 유효 포트 탐색을 무력화시킬 수 있도록 하는 생체 데이터를 이용한 패킷 레벨 사용자 인증 방법을 제공하는데 있다.
상기와 같은 기술적 과제를 해결하기 위하여 제안된 본 발명의 일 실시예는, 생체 데이터를 이용한 패킷 레벨 사용자 인증 방법에 있어서, (1) 서버는, 클라이언트로부터 생체정보가 포함된 SYN 패킷이 수신된 경우 사용자가 미리 등록시켜 둔 생체정보와 상기 SYN 패킷에 포함된 생체정보를 비교하는 과정; (2) 서버는, 상기 수신된 생체정보와 미리 등록된 생체정보가 일치하여 인증이 이루어진 경우 SYN 패킷에 포함된 생체 암호 정보 구조체를 복호화하고 클라이언트 리스트에 복사하는 과정; (3) 서버는, 상기 클라이언트로 응답(ACK) 신호를 전송할 때 클라이언트 리스트(해당 사용자)에 생체 키 펑션(bio_key_func)을 기록하고, 상기 정보들을 생체 암호 정보 구조체로 암호화하여 전송하는 과정; 및 (4) 클라이언트와 서버는, 생체 키 펑션(bio_key_func)을 이용하여 서로 공유하고 있는 생체정보로부터 일정 비트를 추출하여 대칭키를 생성하고, 상기 대칭키를 이용하여 IP 데이터그램 전체를 다이제스트 한 후 그 다이제스트 결과를 첨부하여 전송하는 과정으로 이루어진 것을 특징으로 한다.
또한, 본 발명의 다른 실시예는, 생체 데이터를 이용한 패킷 레벨 사용자 인 증 방법에 있어서, (1) 클라이언트는, SYN 패킷 전송시 생체 인증이 요구되는 경우인지(생체인증을 요구하는 프로그램)를 판단하고 생체 인증이 요구되는 경우 사용자로부터 생체정보를 입력받아 람폴트(Lamport) 기법을 이용하여 서버와 미리 교환된 세션키로 해당 생체정보를 암호화하고 TCP/IP 프로토콜 스택 내에 삽입시켜 전송하는 과정; 및 (2) 클라이언트는, 상기 SYN 패킷 전송시 생체 인증이 요구되지 않는 경우 일반적인 TCP/IP 프로토콜 흐름을 따르는 과정으로 이루어진 것을 특징으로 한다.
이하, 첨부한 도면을 참조하여 생체 데이터를 이용한 패킷 레벨 사용자 인증 시스템에 대해 상세하게 설명한다.
본 발명에 따른 생체 데이터를 이용한 패킷 레벨 사용자 인증 시스템은 첨부 도면 도 1에 도시된 바와 같이 서버 리스트가 저장되어 있는 커널 메모리(110)가 구비된 클라이언트(100)와, 클라이언트 리스트가 저장되어 있는 커널 메모리(210) 및 사용자의 생체 정보를 저장하고 있는 생체정보 DB(220)가 구비된 서버(200)와, 상기 클라이언트(100) 및 서버(200) 상호간에 데이터를 송수신할 수 있도록 서비스 하는 데이터 통신망(300)으로 구성된다.
상기 서버(200)는 클라이언트로부터 생체정보가 포함된 SYN 패킷이 수신된 경우 사용자가 미리 등록시켜 둔 생체정보와 상기 SYN 패킷에 포함된 생체정보를 비교한 후 일치하여 인증이 이루어진 경우 SYN 패킷에 포함된 생체 암호 정보 구조 체를 복호화하여 그 내용을 클라이언트 리스트에 복사한다.
상기 서버(200)는 상기 클라이언트(100)로 응답(ACK) 신호를 전송할 때 클라이언트 리스트에 생체 키 펑션(bio_key_func)을 기록하고, 클라이언트 리스트에 저장된 생체정보와 생체 키 펑션을 암호화하여 전송한다.
그리고 클라이언트(100) 및 서버(200)는 생체 키 펑션(bio_key_func)을 이용하여 상기 클라이언트(100)와 공유하고 있는 생체정보로부터 일정 비트를 추출하여 대칭키를 생성하고, 상기 대칭키를 이용하여 데이터 통신시에 IP 데이터그램을 다이제스트하고 그 결과를 첨부하여 전송한다.
그리고, 클라이언트(100)는 SYN 패킷 전송시 생체 인증이 요구되는 경우인지를 판단하고 생체 인증이 요구되는 경우 사용자로부터 생체정보를 입력받아 람폴트(Lamport) 방식을 이용하여 서버(200)와 미리 교환된 세션키로 암호화하고 TCP/IP 프로토콜 스택 내에 삽입시켜 전송한다.
상기 람폴트(Lamport) 방식은 일방향성 함수를 이용하여 미리 생성된 최종 해쉬값(Hashn(초기패스워드))을 서버에 등록하고 사용자가 x번째 접속 시(n : 최대 세션) 일회성 패스워드 Hashn-x(초기패스워드)를 One-time Password로 전송하면 서버가 Hash(Hashn -x(초기패스워드))하여 인증하는 기법으로서, 본 발명에서는 첨부 도면 도 2에 도시된 바와 같이 람폴트(Lamport) 기법을 응용하여 생체정보를 암호화하기 위한 세션키를 암호화하여 서버에게 전달한다.
클라이언트(100)는 상기 SYN 패킷 전송시 생체 인증이 요구되지 않는 경우 일반적인 TCP/IP 프로토콜 흐름을 따른다.
상기 클라이언트(100)는 서버(200)로부터 수신된 응답 SYN 패킷에 대한 인증이 성공하면 해당 세션에서 사용자가 등록한 생체정보를 서버 리스트 구조체에 등록시킨다.
상기와 같이 구성된 생체 데이터를 이용한 패킷 레벨 사용자 인증 시스템의 인증방법에 대해 설명하면 다음과 같다.
먼저, 생체 데이터를 이용한 패킷 레벨 사용자 인증 시스템은 사용자가 지문과 같은 생체정보를 등록할 시에 Lamport 방식처럼 자신의 아이디와 초기 패스워드에 대한 최대 세션의 해쉬 값도 함께 등록시킨다. 이후 외부의 클라이언트(100)에서 서버(200)에 접속할 시 클라이언트(100)는 첨부 도면 도 2에 도시된 바와 같이 공유된 일회성 패스워드를 일회성 대칭키로 사용하여 실제 생체정보를 암호화하는 세션키를 암호화하도록 한다. 즉, 일회성 패스워드로 생체 정보를 암호화하기 위한 실제 세션키를 암호화시킨다. 한편, 서버(200)와 클라이언트(100) 사이에서 이루어지는 Lamport 방식을 이용한 세션키 교환도 DoS 공격을 방지하기 위해 응용 레벨이 아닌 프로토콜 레벨에서 raw socket을 통해 이루어진다.
상기와 같이 서버(200)와 클라이언트(100) 상호간에 특정 로그인 세션의 세 션키가 교환된 이후로는 교환된 세션키를 통해 생체 정보를 암호화하여 전송하게 된다. 특히 클라이언트(100)는 생체 정보를 응용 데이터가 아닌 TCP/IP 프로토콜 스택 내에 삽입시켜 전송한다. 상기와 같이 생체 정보를 TCP/IP 프로토콜 스택 내에 삽입시켜 전송하므로, 특정 포트를 생체 인증 포트로 지정할 수 있으며, 커널 레벨에서 패킷 인증 처리가 이루어지기 때문에 특정 포트에 대한 DoS 공격을 무력화시킬 수 있다.
상기 생체 정보를 TCP/IP 프로토콜 스택 내에 삽입시키는 과정에 대해 설명하면, IP 레벨에서 패킷을 훅킹하여 생체 정보를 삽입하고 VPN(Virtual Private Network) 기능 제공을 위해 터널링을 적용한다. 즉, 후술되는 자료구조에서 알 수 있는 바와 같이 bio_crypto_info 구조체는 TCP 3-way 핸드쉐이크 중 SYN, Acking SYN 패킷 전송 시에 삽입되는 것으로 user_id 멤버를 제외하고 암호화 되어 전송 된다. 실제 사용자의 생체 정보는 bio_data 멤버에 저장되며, 상기 SYN, Acking SYN 패킷 전송 시의 포맷은 첨부 도면 도 3에 도시된 바와 같이 IP 계층에서 패킷의 단편화가 발생하기 전에 패킷을 훅킹하고 생체 정보를 삽입한 후 암호화한다. 또한 터널링을 위해 새로운 IP 헤더가 추가된다.
[주요자료구조]
Figure 112006056106716-pat00001
한편, 서버(200)는 첨부 도면 도 3과 같은 SYN 패킷이 수신되면 Lamport 방식을 이용하여 미리 교환된 세션 키를 가지고 복호화를 한 후 생체 정보를 이용해 인증 과정을 수행하게 된다. 이때 인증 과정이 실패하면 Acking SYN을 클라이언트(100)로 전송하지 않는다. 이에 따라 서버(200)는 SYN flooding에 의한 DoS 공격을 차단할 수 있게 된다.
만약, 인증이 성공하면 서버(200)는 클라이언트(100)로 Acking SYN을 전송하고, Acking SYN 전송 시 bio_crypto_info의 bio_key_func를 선택하여 기록한다. 상기와 같이 서버(200)에 의해 선택되어 기록되는 bio_crypto_info의 bio_key_func 함수는 이 후 데이터 통신 시 Keyed-Hash 용 대칭키를 선택하기 위해 생체 정보로부터 랜덤 비트 색인을 생산하는 함수이다.
한편, 상기 [주요자료구조]에서의 bio_digest_info 구조체는 TCP 3-way 핸드 쉐이크가 성공적으로 끝나고 데이터 전송 시에 사용되는 것으로, 첨부 도면 도 4에 도시된 바와 같이 bio_digest_info.HMAC_SHA1_result에 IP 패킷 전체에 대한 다이제스트를 포함한다. 상기와 같이 bio_digest_info 구조체의 HMAC_SHA1_result에 IP 패킷 전체에 대한 다이제스트를 포함시키므로, 통신 중간에 임의의 변조된 패킷이 합법적인 패킷으로 오인되는 것을 막고 세션이 도중에 약탈되는 것도 차단할 수 있다.
상기 첨부 도면 도 4에 도시된 bio_digest_info 구조체의 key_startingbitnum은 서버(200)가 Acking SYN 패킷을 클라이언트(100)로 전송할 때 암호화하여 전송했던 bio_crypto_info.c_header.bio_key_func 함수에 의해 생성된 전체 생체 정보에 대한 비트 단위 색인 값이다. 상기 색인 값으로부터 256bit를 추출하여 Keyed-Hash를 위한 대칭키를 결정한다. 즉 매 패킷마다 bio_key_func에 의해 새로운 대칭키가 결정되고 이 키를 통해 전체 IP 데이터그램을 다이제스트하고 그 결과를 첨부하여 전송한다.
또한, 상기 [주요자료구조]에서의 host_list 구조체는 상대방에 대한 모든 정보를 기록하는 것으로 클라이언트(100)는 server_list를, 서버(200)는 client_list(해당 사용자)를 유지한다.
한편, 첨부 도면 도 1을 참조하여 IPBio 처리 과정을 설명하면, 서버(200)는 생체 정보가 포함된 SYN 패킷을 받은 상태(1)에서 사용자가 최초 등록했던 디스크에 저장되어 있는 기존의 생체 정보와 비교(2)하여 인증이 성공하면 SYN 패킷에 포 함된 bio_crypto_info 구조체를 복호화하고 client_list.host_bio에 복사한다.
그리고 서버(200)는 Acking SYN 전송(3) 시 client_list.host_bio에 bio_key_func를 기록하고 client_list.host_bio를 암호화하여 전송한다. 결국 TCP 3-way 핸드쉐이크가 성공하면 서버(200)는 사용자가 제공한 생체 정보를 client_list.host_bio에 포함시키고, 클라이언트(100)는 사용자가 제공한 생체 정보를 server_list.host_bio에 포함시켜 관리하게 된다.
이후 데이터 통신(4) 시에는 서버(200)가 Acking SYN 전송 시에 제공했던 bio_key_func 함수를 이용해 미리 공유된 생체 정보로부터 256비트를 추출한다. 추출된 256비트는 IP 데이터그램에 대한 Keyed-Hash 용 대칭키로 사용된다.
한편, 클라이언트(100)는 커널 레벨에서 패킷을 변조하고 생체 정보를 삽입하는데, 그 알고리즘은 다음과 같다.
[알고리즘 1] 클라이언트에서의 패킷 송신 처리
Figure 112006056106716-pat00002
상기 [알고리즘 1]은 클라이언트(100)가 패킷 전송 시에 동작하는 알고리즘으로 SYN 패킷 전송 시에 생체 인증이 요구되는 포트라면 사용자로부터 생체 정보를 입력 받아 미리 교환된 세션키로 암호화하여 TCP/IP 프로토콜 스택 내에 삽입한다.
또한 사용자 데이터 전송 시에는 성능을 고려하여 암호화를 하지 않고 기 전 송된 생체 정보의 일부를 추출하고 이것을 대칭키로 사용하여 IP 데이터그램 전체를 HMAC-SHA1 다이제스트하고 그 결과를 첨부하여 전송한다. 첨부 도면 도 5a 및 도 5b는 상기 [알고리즘 1]에 근거하여 클라이언트(100) 측에서 패킷 전송시 이루어지는 IPBio의 처리과정을 도시한 도면이다.
[알고리즘 2] 서버에서의 패킷 수신 처리
Figure 112006056106716-pat00003
상기 [알고리즘 2]는 서버(200)가 패킷 수신 시 수행되는 알고리즘으로서, SYN 패킷을 받은 경우 첨부 도면 도 5a에 도시된 바와 같은 패킷이 도착한 경우이므로 기 전달된 세션키를 이용하여 복호화하고 서버(200)에 최초 등록되어 있던 생 체 정보와 비교하여 인증을 하게 된다.
인증이 성공하면 서버(200)는 클라이언트(100)에 대한 정보 유지를 위해 client_list 구조체를 생성하고 전달받은 생체 정보를 현재 세션을 위해 client_list.host_bio에 등록한다.
만약에, 인증이 실패하면 서버(200)는 패킷을 버림으로서 TCP가 Acking SYN 응답을 전송하지 않도록 한다. 이는 DoS 공격에 대해 방어가 가능하고 유효 포트 탐색도 피할 수 있다.
TCP 3-way 핸드쉐이크 후 첨부 도면 도 5b에 도시된 바와 같이 일반 데이터를 전송 받는 경우 서버(200)는 IP 데이터그램 전체에 대한 다아제스트가 도착한 경우이므로 수신된 bio_digest_info.h_header.key_startingbitnum으로부터 client_list.host_bio.c_data.bio_data에서 256 비트의 대칭키를 추출하고 같은 방법으로 IP 데이터그램을 HMAC-SHA1 다이제스트 후 비교한다.
[알고리즘 3] 서버에서의 패킷 송신 처리
Figure 112006056106716-pat00004
한편, 상기 [알고리즘 3]은 서버(200)가 패킷을 전송하는 경우로 클라이언트(100)가 SYN 패킷 전송 시에 함께 보낸 생체 정보에 대한 인증이 성공하면 이 생체 정보는 client_list.host_bio에 등록되어 해당 세션 동안 클라이언트(100)를 위해 계속 사용하게 된다. 또한 서버(200)는 Acking SYN 전송 시에 향후 Per-Packet Keyed-Hash를 위해 생체 정보로부터 대칭키의 시작 비트를 추출하는 함수(bio_key_func)도 함께 보낸다.
[알고리즘 4] 클라이언트에서의 패킷 수신 처리
Figure 112006056106716-pat00005
그리고 상기 [알고리즘 4]는 클라이언트(100)가 패킷을 서버(200)로부터 수신할 때 수행되는 과정으로, 서버(200)가 보낸 Acking SYN 패킷에 대한 인증이 성공하면 클라이언트(100)와 서버(200)는 해당 세션에서 사용자가 등록한 생체 정보 를 각각 server_list, client_list 구조체에 완전하게 등록하게 된다.
상기 클라이언트(100)와 서버(200)가 온라인으로 연결이 성립되면, 이후 실제 데이터 통신에서는 상기 클라이언트(100)와 서버(200)는 Per-Packet 인증을 위하여 IP 데이터그램 전체에 대해 HMAC-SHA1 다이제스트 한다. 이때, 클라이언트(100)가 매 패킷마다 서버(200)를 인증하는 것은 옵션 처리가 가능하다.
이상의 본 발명은 상기 실시예들에 의해 한정되지 않고, 당업자에 의해 다양한 변형 및 변경을 가져올 수 있으며, 이는 첨부된 청구항에서 포함되는 본 발명의 취지와 범위에 포함된다.
상기와 같은 구성 및 작용 그리고 바람직한 실시예를 가지는 본 발명은 단순히 패스워드를 사용하는 기존의 방법이나 인증서를 이용하여 사용자를 인증하는 방법과는 달리 생체 정보를 인증 자료로 사용하기 때문에 실제 사용자만이 시스템에 접근할 수 있도록 하는 효과가 있다.
또한, 본 발명은 모든 패킷에 대해 사용자의 생체 정보 일부를 IP 데이터그램 다이제스트에 대한 대칭키로 사용하기 때문에 모든 패킷에 대해 사용자가 빠르게 서명하는 효과가 있다.
또한, 본 발명은 제 3자가 거짓의 패킷을 삽입하는 것도 불가능하며 필요한 경우 생체 정보를 다시 입력하도록 요구함으로써 실시간으로 사용자를 인증하는 것도 가능하도록 하는 효과가 있다. 이에, 패스워도 도용이나 최근에 발생했던 인증서 도난에 의한 인터넷 뱅킹 해킹 사고 등에 현명하게 대처할 수 있도록 하는 효과가 있다.
또한, 본 발명은 내부 공격자에 의한 문제 발생 시에도 해당 공격자를 명확하게 규명할 수 있으며 해당 세션이 도중에 약탈당하는 일도 발생하지 않도록 하는 효과가 있다.

Claims (5)

  1. 생체 데이터를 이용한 패킷 레벨 사용자 인증 방법에 있어서,
    (1) 서버는, 클라이언트로부터 생체정보가 포함된 SYN 패킷이 수신된 경우 사용자가 미리 등록시켜 둔 생체정보와 상기 SYN 패킷에 포함된 생체정보를 비교하는 과정;
    (2) 서버는, 상기 수신된 생체정보와 미리 등록된 생체정보가 일치하여 인증이 이루어진 경우 SYN 패킷에 포함된 생체 암호 정보 구조체를 복호화하고 클라이언트 리스트에 복사하는 과정;
    (3) 서버는, 상기 클라이언트로 응답(ACK) 신호를 전송할 때 클라이언트 리스트(해당 사용자)에 생체 키 펑션(bio_key_func)을 기록하고, 이 정보들을 생체 암호 정보 구조체로 암호화하여 전송하는 과정; 및
    (4) 클라이언트와 서버는, 생체 키 펑션(bio_key_func)을 이용하여 서로 공유하고 있는 생체정보로부터 일정 비트를 추출하여 대칭키를 생성하고, 상기 대칭키를 이용하여 IP 데이터그램 전체를 다이제스트 한 후 그 다이제스트 결과를 첨부하여 전송하는 과정;
    으로 이루어진 것을 특징으로 하는 생체 데이터를 이용한 패킷 레벨 사용자 인증 방법.
  2. 생체 데이터를 이용한 패킷 레벨 사용자 인증 방법에 있어서,
    (1) 클라이언트는, SYN 패킷 전송시 생체 인증이 요구되는 경우인지를 판단하고 생체 인증이 요구되는 경우 사용자로부터 생체정보를 입력받아 Lamport 기법을 이용하여 서버와 미리 교환된 세션키로 생체정보를 암호화하고 TCP/IP 프로토콜 스택 내에 삽입시켜 전송하는 과정; 및
    (2) 클라이언트는, 상기 SYN 패킷 전송시 생체 인증이 요구되지 않는 경우 일반적인 TCP/IP 프로토콜 흐름을 따르는 과정;
    으로 이루어진 것을 특징으로 하는 생체 데이터를 이용한 패킷 레벨 사용자 인증 방법.
  3. 제 1 항에 있어서,
    상기 서버는, 클라이언트로 응답 SYN를 전송할 때 생체정보로부터 대칭키의 시작비트를 추출할 수 있는 함수(bio_key_func)도 함께 전송하는 것을 특징으로 하는 생체 데이터를 이용한 패킷 레벨 사용자 인증 방법.
  4. 제 1 항에 있어서,
    상기 클라이언트는, 서버로부터 수신된 응답 SYN 패킷에 대한 생체정보 인증이 성공하면 해당 세션에서 사용자가 등록한 생체정보를 서버 리스트 구조체에 등 록시키는 과정을 포함하는 것을 특징으로 하는 생체 데이터를 이용한 패킷 레벨 사용자 인증 방법.
  5. 제 4 항에 있어서,
    상기 서버는, 상기 클라이언트가 생체정보를 서버 리스트 구조체에 등록시키고 마지막 Ack 패킷을 전송할 때 상기 클라이언트(해당 사용자)를 클라이언트 리스트 구조체에 등록시키는 과정을 포함하는 것을 특징으로 하는 생체 데이터를 이용한 패킷 레벨 사용자 인증 방법.
KR1020060073727A 2006-08-04 2006-08-04 생체 데이터를 이용한 패킷 레벨 사용자 인증 방법 KR100744603B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020060073727A KR100744603B1 (ko) 2006-08-04 2006-08-04 생체 데이터를 이용한 패킷 레벨 사용자 인증 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060073727A KR100744603B1 (ko) 2006-08-04 2006-08-04 생체 데이터를 이용한 패킷 레벨 사용자 인증 방법

Publications (1)

Publication Number Publication Date
KR100744603B1 true KR100744603B1 (ko) 2007-08-01

Family

ID=38601455

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060073727A KR100744603B1 (ko) 2006-08-04 2006-08-04 생체 데이터를 이용한 패킷 레벨 사용자 인증 방법

Country Status (1)

Country Link
KR (1) KR100744603B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101012985B1 (ko) * 2008-03-11 2011-02-10 인하대학교 산학협력단 생체정보가 삽입된 데이터 패킷의 단편화 방법 및생체정보가 삽입된 단편화된 데이터 패킷의 인증 방법

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010109175A (ko) * 2000-05-31 2001-12-08 야마네 시게아키 바이오메트릭스정보에 의한 컴퓨터 파일의 이용제한방법,컴퓨터 시스템으로의 로그인방법 및 기록매체
JP2002142256A (ja) 2000-10-31 2002-05-17 Matsushita Electric Ind Co Ltd 本人認証システム
US20030218534A1 (en) 2002-05-21 2003-11-27 Lacous Mira K. Systems and methods for secure biometric authentication
KR20040048115A (ko) * 2002-12-02 2004-06-07 주식회사 시큐아이티 이동통신 네트워크에서 인증을 위한 다중생체정보의송수신 장치 및 방법
US20040128520A1 (en) 2002-07-25 2004-07-01 Bio-Key International, Inc. Trusted biometric device
JP2006074141A (ja) 2004-08-31 2006-03-16 Keakomu:Kk 通信システム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010109175A (ko) * 2000-05-31 2001-12-08 야마네 시게아키 바이오메트릭스정보에 의한 컴퓨터 파일의 이용제한방법,컴퓨터 시스템으로의 로그인방법 및 기록매체
JP2002142256A (ja) 2000-10-31 2002-05-17 Matsushita Electric Ind Co Ltd 本人認証システム
US20030218534A1 (en) 2002-05-21 2003-11-27 Lacous Mira K. Systems and methods for secure biometric authentication
US20040128520A1 (en) 2002-07-25 2004-07-01 Bio-Key International, Inc. Trusted biometric device
KR20040048115A (ko) * 2002-12-02 2004-06-07 주식회사 시큐아이티 이동통신 네트워크에서 인증을 위한 다중생체정보의송수신 장치 및 방법
JP2006074141A (ja) 2004-08-31 2006-03-16 Keakomu:Kk 通信システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101012985B1 (ko) * 2008-03-11 2011-02-10 인하대학교 산학협력단 생체정보가 삽입된 데이터 패킷의 단편화 방법 및생체정보가 삽입된 단편화된 데이터 패킷의 인증 방법

Similar Documents

Publication Publication Date Title
US7231526B2 (en) System and method for validating a network session
US8904178B2 (en) System and method for secure remote access
US8181234B2 (en) Authentication system in client/server system and authentication method thereof
CN108418691B (zh) 基于sgx的动态网络身份认证方法
US7840993B2 (en) Protecting one-time-passwords against man-in-the-middle attacks
US5497421A (en) Method and apparatus for protecting the confidentiality of passwords in a distributed data processing system
US8037295B2 (en) Hardware-bonded credential manager method and system
US8307208B2 (en) Confidential communication method
AU2003203712B2 (en) Methods for remotely changing a communications password
US20030196084A1 (en) System and method for secure wireless communications using PKI
US20070033392A1 (en) Augmented single factor split key asymmetric cryptography-key generation and distributor
KR100860573B1 (ko) 사용자 인증 방법
KR101078546B1 (ko) 범용 저장장치의 식별정보를 기반으로 하는 보안 데이터 파일 암호화 및 복호화 장치, 그를 이용한 전자 서명 시스템
US10263782B2 (en) Soft-token authentication system
US20170118015A1 (en) Method for managing smart home environment, method for joining smart home environment and method for connecting communication session with smart device
WO2005088892A1 (en) A method of virtual challenge response authentication
CN110020524A (zh) 一种基于智能卡的双向认证方法
WO2018030289A1 (ja) Ssl通信システム、クライアント、サーバ、ssl通信方法、コンピュータプログラム
CN114244508A (zh) 数据加密方法、装置、设备及存储介质
CN111464532A (zh) 信息加密方法及系统
Keerthi Taxonomy of SSL/TLS attacks
CN116743470A (zh) 业务数据加密处理方法及装置
KR100285791B1 (ko) 패스워드 교환방식을 이용한 사용자-서버간의 상호 신분 인증방법
KR100744603B1 (ko) 생체 데이터를 이용한 패킷 레벨 사용자 인증 방법
KR100381710B1 (ko) 회원제 운용 인터넷 서버의 보안 방법 및 그에 관한 서버시스템

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20110725

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee