KR101190431B1 - 클라이언트 장치, 서버 장치 및 기억 매체 - Google Patents

클라이언트 장치, 서버 장치 및 기억 매체 Download PDF

Info

Publication number
KR101190431B1
KR101190431B1 KR20097027298A KR20097027298A KR101190431B1 KR 101190431 B1 KR101190431 B1 KR 101190431B1 KR 20097027298 A KR20097027298 A KR 20097027298A KR 20097027298 A KR20097027298 A KR 20097027298A KR 101190431 B1 KR101190431 B1 KR 101190431B1
Authority
KR
South Korea
Prior art keywords
client
biometric authentication
message
biometric
authentication
Prior art date
Application number
KR20097027298A
Other languages
English (en)
Other versions
KR20100023918A (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 도시바 솔루션 가부시끼가이샤
Publication of KR20100023918A publication Critical patent/KR20100023918A/ko
Application granted granted Critical
Publication of KR101190431B1 publication Critical patent/KR101190431B1/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
    • 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/3271Cryptographic 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 challenge-response
    • H04L9/3273Cryptographic 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 challenge-response for mutual authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0861Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/166Implementing security features at a particular protocol layer at the transport layer
    • 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/3263Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2151Time stamp

Abstract

클라이언트 장치(100)는 합의 처리의 핸드쉐이크 중에 서버 장치(200)로부터 난수를 포함하는 메시지를 수신하면 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 작성하고, 이 생체 인증 교섭 메시지를 서버 장치에 송신한다. 그 후 클라이언트 장치(100)는 통지된 생체 인증 방식 정보에 기초하여 생체 인증을 실행함과 함께 상술한 난수를 비밀 키에 의해 암호화한다. 또한, 클라이언트 장치(100)는 생체 인증의 결과, 생체 인증 방식 정보, 암호화 난수, 클라이언트 증명서로부터 인증자를 생성하고, 이들을 포함하는 인증 컨텍스트를 서버 장치(200)에 송신한다. 서버 장치(200)는 인증 컨텍스트를 검증하여 1회의 핸드쉐이크에 의해 시큐어 세션을 확립한다.
Figure R1020097027298
생체 인증, 생체 인증 방식 정보, 암호화 난수, 클라이언트 증명서, 난수

Description

클라이언트 장치, 서버 장치 및 기억 매체{CLIENT DEVICE, SERVER DEVICE, AND STORAGE MEDIUM}
본 발명은 시큐어 세션을 확립하는 클라이언트 장치, 서버 장치 및 프로그램에 관한 것으로, 예를 들어 2회의 핸드쉐이크에 수반하는 불필요한 패스를 존재시키지 않고, 엔티티 인증 및 생체 인증에 기초한 시큐어 세션을 확립할 수 있는 클라이언트 장치, 서버 장치 및 프로그램에 관한 것이다.
네트워크 상에서 정보를 암호화 통신하기 위한 프로토콜 중 하나로 TLS(Transport Layer Security) 프로토콜이 있다. 이 TLS 프로토콜은 엔티티 인증을 행한 후에 시큐어 세션을 확립하여 데이터의 암호 통신을 가능하게 하는 기술이다(예를 들어, T.Dierks, C.Allen, "The TLS Protocol Version 1.0", <URL:http://www.ietf.org/rfc/rfc2246.txt> 참조).
TLS 프로토콜의 관련 기술로서, TLS 내부 어플리케이션(TLS Inner Application)이 있다. TLS 내부 어플리케이션은 TLS 핸드쉐이크(TLS handshake)에 의해 시큐어 세션을 확립한 후에 레코드층(Record Layer)에 있어서 확장 처리를 가능하게 하고 있다(예를 들어, P.Funk, S.Blake-Wilson, N.Smith, H.Tschofenig, T.Hardjono, "TLS Inner Application Extension(TLS/IA)draft-funk-tls-inner- application-extension-03.txt", <URL:http://tools.ietf.org/wg/tls/draft-funk-tls-inner-application-extension-03.txt> 참조). TLS 내부 어플리케이션에서는, 이 확장 처리에 의해 생체 인증을 행함으로써 엔티티 인증과 생체 인증을 행할 수 있다(예를 들어, 일본 특허 공개 제2003-44436호 공보, 일본 특허 공개 제2006-11768호 공보, 일본 특허 공개 제2003-224562호 공보, S.Santesson, "TLS Handshake Message for Supplemental Data", <URL:http://www.ietf.org/rfc/rfc4680.txt> 참조).
그러나, 이상과 같은 TLS 프로토콜 또는 TLS 내부 어플리케이션의 기술에 있어서는, 본 발명자의 검토에 따르면 이하와 같이 개량의 여지가 있다.
TLS 프로토콜 및 TLS 내부 어플리케이션의 기술에서는 엔티티 인증에 의해 시큐어 세션을 확립한 후에 생체 인증을 행하는 경우에 단순하게 엔티티 인증과 생체 인증을 각각 행하고 있다. 이것은 핸드쉐이크(handshake)를 2회 행하고 있는 것에 지나지 않아 불필요한 패스가 존재한다. 즉, TLS 프로토콜 또는 TLS 내부 어플리케이션의 기술은, 이러한 불필요한 패스를 존재시키지 않도록 개량의 여지가 있다.
본 발명의 목적은 2회의 핸드쉐이크에 수반하는 불필요한 패스를 존재시키지 않고, 엔티티 인증 및 생체 인증에 기초한 시큐어 세션을 확립할 수 있는 클라이언트 장치, 서버 장치 및 프로그램을 제공하는 것이다.
본 발명의 제1 내지 제4 국면(aspect)은 유저에게 조작되는 클라이언트 장치와 서버 장치 사이에서 네트워크를 통하여 은닉 통신을 하기 전에 상기 서버 장치와의 사이에서 서로의 증명서 인증을 포함하는 합의 처리를 실행하여 상기 증명서 인증의 결과가 정당할 때 상기 은닉 통신을 하기 위한 세션을 확립 가능한 상기 클라이언트 장치 및 상기 서버 장치를 대상으로 한다.
여기서, 제1 국면의 클라이언트 장치는 상기 유저를 생체 인증하도록 구성된 생체 인증 디바이스와, 공개 키를 포함하는 클라이언트 증명서가 기억된 증명서 기억 디바이스와, 상기 공개 키에 대응하는 비밀 키가 기억된 비밀 키 기억 디바이스와, 상기 생체 인증 디바이스의 생체 인증 방식을 나타내는 생체 인증 방식 정보가 기억된 생체 인증 방식 기억 디바이스와, 상기 합의 처리 중에 상기 서버 장치로부터 난수를 포함하는 메시지를 수신하도록 구성된 디바이스와, 상기 메시지의 수신 후, 상기 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 작성하고, 이 생체 인증 교섭 메시지를 상기 서버 장치에 송신하도록 구성된 디바이스와, 상기 생체 인증 교섭 메시지의 송신 후, 상기 서버 장치로부터 통지된 생체 인증 방식 정보에 기초하여 상기 생체 인증 디바이스를 기동하도록 구성된 디바이스와, 상기 난수를 상기 비밀 키에 기초하여 암호화하여, 암호화 난수를 생성하도록 구성된 디바이스와, 상기 생체 인증 디바이스에 의한 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보와 상기 생체 인증 방식 정보와 상기 암호화 난수와 상기 클라이언트 증명서로부터 상기 비밀 키에 기초하여 인증자를 생성하도록 구성된 디바이스와, 상기 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보와 상기 생체 인증 방식 정보와 상기 암호화 난수와 상기 클라이언트 증명서와 상기 인증자를 포함하는 인증 컨텍스트를 상기 서버 장치에 송신함으로써, 상기 합의 처리를 계속하도록 구성된 디바이스와, 상기 합의 처리의 계속중에, 상기 인증 컨텍스트의 검증 결과를 나타내는 인증 결과 정보, 상기 생체 인증의 정보를 저장하는 인증 정보, 및 상기 인증 결과 정보와 상기 인증 정보에 대하여 상기 비밀 키 기억 디바이스의 비밀 키로 작성된 서명이 포함된 생체 인증 검증 메시지를 상기 디바이스로부터 수신하도록 구성된 디바이스와, 상기 생체 인증 검증 메시지를 수신한 후, 상기 증명서 기억 디바이스 내의 클라이언트 증명서를 포함하는 클라이언트 증명서 메시지를 상기 서버 장치에 송신하도록 구성된 디바이스와, 상기 클라이언트 증명서의 검증을 위한 클라이언트 검증 메시지로서, 현재까지의 메시지에 대하여 상기 비밀 키 기억 디바이스 내의 비밀 키에 기초하여 디지털 서명을 생성하고, 상기 현재까지의 메시지와 상기 디지털 서명을 포함하는 상기 클라이언트 검증 메시지를 상기 서버 장치에 송신하도록 구성된 디바이스를 포함한다.
제1 국면의 서버 장치는, 접수 가능한 상기 유저의 생체 인증 방식을 나타내는 복수의 생체 인증 방식 정보가 기억된 생체 인증 방식 기억 디바이스와, 상기 합의 처리 중에 난수를 포함하는 메시지를 상기 클라이언트 장치에 송신하도록 구성된 디바이스와, 상기 메시지의 송신 후, 상기 클라이언트 장치의 생체 인증 방식을 나타내는 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스와, 상기 생체 인증 교섭 메시지 내의 생체 인증 방식 정보가 상기 생체 인증 방식 기억 디바이스 내의 각 생체 인증 방식 정보 중 어디에 일치하는지의 여부를 판정하도록 구성된 디바이스와, 상기 판정의 결과가 일치를 나타낼 때 당해 생체 인증 방식 정보를 상기 클라이언트 장치에 통지하도록 구성된 디바이스와, 상기 통지 후, 상기 생체 인증 방식 정보에 기초한 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보와 상기 생체 인증 방식 정보와 암호화 난수와 클라이언트 증명서와 인증자를 포함하는 인증 컨텍스트를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스와, 상기 인증 컨텍스트 내의 생체 인증의 결과가 부정을 나타낼 때 상기 합의 처리를 중단하도록 구성된 디바이스와, 상기 인증 컨텍스트 내의 생체 인증 방식 정보와 상기 통지된 생체 인증 방식 정보가 서로 다를 때 상기 합의 처리를 중단하도록 구성된 디바이스와, 상기 인증 컨텍스트 내의 암호화 난수를 상기 클라이언트 증명서 내의 공개 키에 기초하여 복호하여, 얻어진 난수가 상기 메시지 내의 난수와 서로 다를 때 상기 합의 처리를 중단하도록 구성된 디바이스와, 상기 클라이언트 증명서 내의 공개 키에 기초하여 상기 인증자를 검증하여, 검증 결과가 부정을 나타낼 때 상기 합의 처리를 중단하도록 구성된 디바이스와, 상기 인증 컨텍스트를 검증하여 상기 합의 처리를 계속하는 검증 결과를 얻었을 때, 상기 인증 컨텍스트의 검증 결과를 나타내는 인증 결과 정보, 상기 생체 인증의 정보를 저장하는 인증 정보, 및 상기 인증 결과 정보와 상기 인증 정보에 대하여 상기 서버 장치의 비밀 키로 작성된 서명이 포함된 생체 인증 검증 메시지를 상기 클라이언트 장치에 송신하도록 구성된 디바이스와, 상기 생체 인증 검증 메시지를 송신한 후, 상기 클라이언트 증명서를 포함하는 클라이언트 증명서 메시지를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스와, 상기 클라이언트 증명서의 검증을 위한 클라이언트 검증 메시지로서, 현재까지의 메시지와, 상기 현재까지의 메시지에 대하여 상기 클라이언트 장치의 비밀 키에 기초하여 생성된 디지털 서명을 포함하는 상기 클라이언트 검증 메시지를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스를 포함한다.
또한, 제2 국면의 클라이언트 장치는 상기 합의 처리 중에 상기 유저로부터 생체 정보를 취득하기 위한 생체 정보 취득 디바이스와, 공개 키를 포함하는 클라이언트 증명서가 기억된 증명서 기억 디바이스와, 상기 공개 키에 대응하는 비밀 키가 기억된 비밀 키 기억 디바이스와, 상기 생체 정보 취득 디바이스의 생체 인증 방식을 나타내는 생체 인증 방식 정보가 기억된 생체 인증 방식 기억 디바이스와, 제1 난수를 생성하기 위한 난수 생성 디바이스와, 상기 합의 처리 중에 상기 제1 난수를 포함하는 제1 메시지를 작성하고, 이 제1 메시지를 상기 서버 장치에 송신하도록 구성된 디바이스와, 상기 제1 메시지의 송신 후, 상기 서버 장치로부터 제2 난수를 포함하는 제2 메시지를 수신하도록 구성된 디바이스와, 상기 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 작성하고, 이 생체 인증 교섭 메시지를 상기 서버 장치에 송신하도록 구성된 디바이스와, 상기 생체 인증 교섭 메시지의 송신 후, 상기 서버 장치로부터 생체 인증 방식 정보를 수신하도록 구성된 디바이스와, 상기 생체 인증 방식 정보를 수신한 후, 상기 증명서 기억 디바이스 내의 클라이언트 증명서를 포함하는 클라이언트 증명서 메시지를 상기 서버 장치에 송신하도록 구성된 디바이스와, 상기 클라이언트 증명서의 검증을 위한 클라이언트 검증 메시지로서, 현재까지의 메시지에 대하여 상기 비밀 키 기억 디바이스 내의 비밀 키에 기초하여 디지털 서명을 생성하고, 상기 현재까지의 메시지와 상기 디지털 서명을 포함하는 상기 클라이언트 검증 메시지를 상기 서버 장치에 송신하도록 구성된 디바이스와, 상기 수신한 생체 인증 방식 정보에 기초하여, 상기 생체 정보 취득 디바이스를 기동하도록 구성된 디바이스와, 상기 제1 난수 및 상기 제2 난수에 기초하여 해쉬 알고리즘에 의해 암호화용 파라미터를 생성하도록 구성된 디바이스와, 상기 생체 정보 취득 디바이스에 의해 취득한 생체 정보를 상기 암호화용 파라미터에 기초하여 암호화하고, 얻어진 암호화 생체 정보를 상기 서버 장치에 통지함으로써 상기 합의 처리를 계속하도록 구성된 디바이스를 포함한다.
제2 국면의 서버 장치는 접수 가능한 상기 유저의 생체 인증 방식을 나타내는 복수의 생체 인증 방식 정보가 기억된 생체 인증 방식 기억 디바이스와, 상기 유저의 생체 참조 정보가 기억된 생체 참조 정보 기억 디바이스와, 상기 합의 처리 중에 상기 클라이언트 장치로부터 제1 난수를 포함하는 제1 메시지를 수신하도록 구성된 디바이스와, 상기 제1 메시지의 수신 후, 제2 난수를 포함하는 제2 메시지를 상기 클라이언트 장치에 송신하도록 구성된 디바이스와, 상기 클라이언트 장치의 생체 인증 방식을 나타내는 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스와, 상기 생체 인증 교섭 메시지 내의 생체 인증 방식 정보가 상기 생체 인증 방식 기억 디바이스 내의 각 생체 인증 방식 정보 중 어디에 일치하는지의 여부를 판정하도록 구성된 디바이스와, 상기 판정의 결과가 일치를 나타낼 때 당해 생체 인증 방식 정보를 상기 클라이언트 장치에 통지하도록 구성된 디바이스와, 상기 통지 후, 상기 클라이언트 증명서를 포함하는 클라이언트 증명서 메시지를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스와, 상기 클라이언트 증명서의 검증을 위한 클라이언트 검증 메시지로서, 현재까지의 메시지와, 상기 현재까지의 메시지에 대하여 상기 클라이언트 장치의 비밀 키에 기초하여 생성된 디지털 서명을 포함하는 상기 클라이언트 검증 메시지를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스와, 상기 통지 후, 상기 생체 인증 방식 정보에 따라 취득된 상기 유저의 생체 정보가 상기 제1 난수 및 상기 제2 난수에 기초하여 암호화되어 이루어지는 암호화 생체 정보를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스와, 상기 제1 메시지 내의 제1 난수 및 상기 제2 메시지 내의 제2 난수에 기초하여 해쉬 알고리즘에 의해 암호화용 파라미터를 생성하도록 구성된 디바이스와, 상기 암호화 생체 정보를 상기 암호화용 파라미터에 기초하여 복호하도록 구성된 디바이스와, 상기 복호에 의해 얻어진 생체 정보를, 상기 생체 참조 정보 기억 디바이스 내의 생체 참조 정보에 기초하여 생체 인증하는 생체 인증 디바이스와, 상기 생체 인증의 결과가 부정을 나타낼 때 상기 합의 처리를 중단하도록 구성된 디바이스를 포함한다.
또한, 제3 국면의 클라이언트 장치는, 상기 유저를 생체 인증하기 위한 생체 인증 디바이스와, 공개 키를 포함하는 클라이언트 증명서가 기억된 증명서 기억 디바이스와, 상기 공개 키에 대응하는 비밀 키가 기억된 비밀 키 기억 디바이스와, 상기 합의 처리 중에 상기 유저의 생체 인증의 결과에 기초하여 클라이언트 증명서를 취득한다는 취지를 포함하는 제1 메시지를 상기 서버 장치에 송신하도록 구성된 디바이스와, 상기 제1 메시지의 송신 후, 상기 서버 장치로부터 난수를 포함하는 제2 메시지를 수신하도록 구성된 디바이스와, 상기 제2 메시지의 수신 후, 상기 생체 인증 디바이스를 기동하도록 구성된 디바이스와, 상기 난수를 상기 비밀 키에 기초하여 암호화하여, 암호화 난수를 생성하도록 구성된 디바이스와, 상기 생체 인증 디바이스에 의한 생체 인증의 결과가 정당할 때, 상기 증명서 기억 디바이스 내의 클라이언트 증명서를 상기 서버 장치에 송신하도록 구성된 디바이스와, 상기 클라이언트 증명서의 검증을 위한 클라이언트 검증 메시지로서, 현재까지의 메시지에 대하여 상기 비밀 키 기억 디바이스 내의 비밀 키에 기초하여 디지털 서명을 생성하고, 상기 현재까지의 메시지와 상기 디지털 서명을 포함하는 상기 클라이언트 검증 메시지를 상기 서버 장치에 송신하도록 구성된 디바이스와, 상기 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보 및 상기 암호화 난수로부터 상기 비밀 키에 기초하여 인증자를 생성하도록 구성된 디바이스와, 상기 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보 및 상기 암호화 난수와 상기 인증자를 포함하는 인증 컨텍스트를 상기 서버 장치에 송신함으로써 상기 합의 처리를 계속하도록 구성된 디바이스를 포함한다.
제3 국면의 서버 장치는, 상기 합의 처리 중에 상기 유저의 생체 인증의 결과에 기초하여 클라이언트 증명서를 취득한다는 취지를 포함하는 제1 메시지를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스와, 상기 제1 메시지의 수신 후, 난수를 포함하는 제2 메시지를 상기 클라이언트 장치에 송신하도록 구성된 디바이스와, 상기 제2 메시지의 송신 후, 상기 클라이언트 장치로부터 클라이언트 증명서를 수신하도록 구성된 디바이스와, 상기 클라이언트 증명서의 검증을 위한 클라이언트 검증 메시지로서, 현재까지의 메시지와, 상기 현재까지의 메시지에 대하여 상기 클라이언트 장치의 비밀 키에 기초하여 생성된 디지털 서명을 포함하는 상기 클라이언트 검증 메시지를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스와, 상기 제2 메시지의 송신 후, 상기 유저의 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보와 암호화 난수와 인증자를 포함하는 인증 컨텍스트를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스와, 상기 수신된 클라이언트 증명서 및 인증 컨텍스트를 기억하는 기억 디바이스와, 상기 기억 디바이스에 기억된 인증 컨텍스트 내의 생체 인증의 결과가 부정을 나타낼 때 상기 합의 처리를 중단하도록 구성된 디바이스와, 상기 기억 디바이스에 기억된 인증 컨텍스트 내의 암호화 난수를 상기 클라이언트 증명서 내의 공개 키에 기초하여 복호하여, 얻어진 난수가 상기 제2 메시지 내의 난수와 서로 다를 때 상기 합의 처리를 중단하도록 구성된 디바이스와, 상기 기억 디바이스에 기억된 클라이언트 증명서 내의 공개 키에 기초하여 상기 인증자를 검증하여, 검증 결과가 부정을 나타낼 때 상기 합의 처리를 중단하도록 구성된 디바이스를 포함한다.
또한, 제4 국면의 클라이언트 장치는, 공개 키를 포함하는 클라이언트 증명서가 기억된 증명서 기억 디바이스와, 상기 공개 키에 대응하는 비밀 키가 기억된 비밀 키 기억 디바이스와, 상기 합의 처리 전에 상기 유저를 생체 인증하기 위한 생체 인증 디바이스와, 상기 생체 인증 디바이스의 생체 인증 방식을 나타내는 생체 인증 방식 정보가 기억된 생체 인증 방식 기억 디바이스와, 상기 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보와 상기 생체 인증 방식 정보와 상기 클라이언트 증명서로부터 상기 비밀 키에 기초하여 인증자를 생성하도록 구성된 디바이스와, 상기 합의 처리 전에 상기 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보와 상기 생체 인증 방식 정보와 상기 클라이언트 증명서와 상기 인증자를 포함하는 인증 컨텍스트를 생성하도록 구성된 디바이스와, 상기 합의 처리 전에 상기 인증 컨텍스트를 타임스탬프 제공 장치에 송신하도록 구성된 디바이스와, 상기 송신된 인증 컨텍스트 및 상기 타임스탬프 제공 장치에 있어서의 일시(日時) 정보에 대하여, 당해 타임스탬프 제공 장치의 비밀 키에 기초하여 생성된 타임스탬프가 부여됨으로써 상기 타임스탬프가 부여된 인증 컨텍스트를 상기 타임스탬프 제공 장치로부터 수신하도록 구성된 디바이스와, 상기 합의 처리 중에 상기 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 작성하고, 이 생체 인증 교섭 메시지를 상기 서버 장치에 송신하도록 구성된 디바이스와, 상기 생체 인증 교섭 메시지의 송신 후, 상기 서버 장치로부터 통지된 생체 인증 방식 정보에 기초하여 상기 타임스탬프가 부여된 인증 컨텍스트를 상기 서버 장치에 송신함으로써 상기 합의 처리를 계속하도록 구성된 디바이스를 포함한다.
제4 국면의 서버 장치는, 접수 가능한 상기 유저의 생체 인증 방식을 나타내는 복수의 생체 인증 방식 정보가 기억된 생체 인증 방식 기억 디바이스와, 상기 합의 처리 중에 상기 클라이언트 장치의 생체 인증 방식을 나타내는 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스와, 상기 생체 인증 교섭 메시지 내의 생체 인증 방식 정보가 상기 생체 인증 방식 기억 디바이스 내의 각 생체 인증 방식 정보 중 어디에 일치하는지의 여부를 판정하도록 구성된 디바이스와, 상기 판정의 결과가 일치를 나타낼 때 당해 생체 인증 방식 정보를 상기 클라이언트 장치에 통지하도록 구성된 디바이스와, 상기 통지 후, 타임스탬프 제공 장치의 비밀 키에 의한 타임스탬프가 부여되고 또한 상기 유저의 생체 인증의 결과, 생체 인증 방식 정보, 클라이언트 증명서 및 인증자를 포함하는 인증 컨텍스트를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스와, 상기 인증 컨텍스트 내의 생체 인증의 결과가 부정을 나타낼 때 상기 합의 처리를 중단하도록 구성된 디바이스와, 상기 인증 컨텍스트 내의 생체 인증 방식 정보가 상기 통지된 생체 인증 방식과는 서로 다를 때 상기 합의 처리를 중단하도록 구성된 디바이스와, 상기 클라이언트 증명서 내의 공개 키에 기초하여 상기 인증자를 검증하여, 검증 결과가 부정을 나타낼 때 상기 합의 처리를 중단하도록 구성된 디바이스와, 상기 타임스탬프 제공 장치의 비밀 키에 대응하는 공개 키에 기초하여 상기 타임스탬프를 복호하여, 얻어진 일시 정보와 현재의 일시 정보의 차분이 미리 정한 값보다도 클 때 상기 합의 처리를 중단하도록 구성된 디바이스를 포함한다.
또한, 이상의 각 국면은 각각의 「장치」로서 표현했지만, 「장치」에 한하지 않고, 「방법」, 「프로그램」 또는 「프로그램을 기억한 컴퓨터 판독 가능한 기억 매체」로서 표현해도 좋다.
제1 내지 제4 각 국면에 있어서는, 증명서 인증을 포함하는 합의 처리 중에 생체 인증까지 실행하는 구성에 의해 2회의 핸드쉐이크에 수반하는 불필요한 패스를 존재시키지 않고, 엔티티 인증 및 생체 인증에 기초한 시큐어 세션을 확립할 수 있다. 또한, 생체 인증에 실패한 경우라도, 종래에 비해 불필요해진 처리를 저감할 수 있다.
여기서, 제1 국면에 있어서는, 전술한 작용 외에 추가로 합의 처리 중인 메시지에 포함되는 난수로부터 생성한 암호화 난수를 포함하는 인증 컨텍스트를 서버 장치에 송신하는 구성에 의해 증명서 인증을 포함하는 합의 처리와 생체 인증을 유기적으로 결합시키므로, 생체 인증에 수반하는 통신의 발생을 억제할 수 있다.
제2 국면에 있어서는, 전술한 작용 외에 추가로 합의 처리 중인 각 메시지에 포함되는 제1 난수 및 제2 난수에 기초하여 생체 정보를 암호화하여 서버 장치에 송신하는 구성에 의해 증명서 인증을 포함하는 합의 처리와 생체 인증을 유기적으로 결합시키면서, 서버 매칭에 의한 생체 인증을 실현시킬 수 있다.
제3 국면에 있어서는, 전술한 작용 외에 추가로 유저의 생체 인증의 결과에 기초하여 클라이언트 증명서를 취득한다는 취지를 포함하는 제1 메시지를 서버 장치에 송신하는 구성에 의해 생체 인증에 기초하여 취득한 클라이언트 증명서를 사용하여 시큐어 세션을 확립하고 있는 것을 서버 장치가 검증할 수 있다.
제4 국면에 있어서는, 전술한 작용 외에 추가로 합의 처리 전에 타임스탬프를 부여한 인증 컨텍스트를 생성해 두고, 합의 처리 중에 타임스탬프를 부여한 인증 컨텍스트를 서버 장치에 송신하는 구성에 의해 합의 처리를 중단하지 않고 미리 작성한 인증 컨텍스트에 기초하여 시큐어 세션을 확립할 수 있다. 또한, 인증 컨텍스트에 부여한 타임스탬프에 의해 재송 공격을 방지할 수 있다.
도 1은 본 발명의 제1 실시 형태에 관한 인증 시스템의 구성을 도시하는 모식도이다.
도 2는 제1 실시 형태에 있어서의 보안 정책을 설명하기 위한 모식도이다.
도 3은 제1 실시 형태에 있어서의 인증 컨텍스트를 설명하기 위한 모식도이다.
도 4는 제1 실시 형태에 있어서의 보안 정책을 설명하기 위한 모식도이다.
도 5는 제1 실시 형태에 있어서의 보안 정책을 설명하기 위한 모식도이다.
도 6은 제1 실시 형태에 있어서의 동작을 설명하기 위한 시퀀스도이다.
도 7은 제1 실시 형태에 있어서의 클라이언트 헬로 메시지의 구성을 도시하는 모식도이다.
도 8은 제1 실시 형태에 있어서의 클라이언트 헬로 메시지의 확장 리스트의 일례를 도시하는 모식도이다.
도 9는 제1 실시 형태에 있어서의 서버 헬로 메시지의 구성을 도시하는 모식도이다.
도 10은 제1 실시 형태에 있어서의 동작의 변형예를 나타내는 시퀀스도이다.
도 11은 제1 실시 형태에 있어서의 클라이언트 생체 인증 교섭 메시지의 구성을 도시하는 모식도이다.
도 12는 제1 실시 형태에 있어서의 서버 생체 인증 교섭 메시지의 구성을 도시하는 모식도이다.
도 13은 제1 실시 형태에 있어서의 생체 인증 처리 메시지의 구성을 도시하는 모식도이다.
도 14는 제1 실시 형태에 있어서의 생체 인증 검증 메시지의 구성을 도시하 는 모식도이다.
도 15는 본 발명의 제2 실시 형태에 관한 인증 시스템의 구성을 도시하는 모식도이다.
도 16은 제2 실시 형태에 있어서의 동작을 설명하기 위한 시퀀스도이다.
도 17은 본 발명의 제3 실시 형태에 관한 인증 시스템의 구성을 도시하는 모식도이다.
도 18은 제3 실시 형태에 있어서의 인증 컨텍스트를 설명하기 위한 모식도이다.
도 19는 제3 실시 형태에 있어서의 동작을 설명하기 위한 시퀀스도이다.
도 20은 본 발명의 제4 실시 형태에 관한 인증 시스템의 구성을 도시하는 모식도이다.
도 21은 제4 실시 형태에 있어서의 동작을 설명하기 위한 시퀀스도이다.
이하, 본 발명의 각 실시 형태에 대하여 도면을 사용하여 설명하지만, 그 전에 각 실시 형태의 전제가 되는 TLS 핸드쉐이크(RFC)의 각 메시지의 개요를 설명해 둔다.
TLS 핸드쉐이크의 각 메시지는 클라이언트 헬로(Client Hello), 서버 헬로(Server Hello), 서버 증명서(Server Certificate)(옵션), 증명서 요구(Certificate Request)(옵션), 서버 헬로 종료(Server Hello Done), 클라이언트 증명서(Client Certificate)(옵션), 클라이언트 키 교환(Client Key Exchange), 증 명서 검증(Certificate Verify)(옵션), 암호화 사양 변경(Change Cipher Spec), 종료(Finished), 암호화 사양 변경(Change Cipher Spec), 종료(Finished)의 순서로 통신된다.
여기서, 클라이언트 헬로(Client Hello) 메시지는 클라이언트로부터 서버에 처음으로 접속을 행할 때, 혹은 서버로부터 Hello Request를 수취했을 때에 송신된다. 클라이언트 헬로 메시지 중에는 사용하는 암호화 알고리즘이나 압축 알고리즘의 리스트가 저장된다. 기존의 세션을 재개할 때에는 세션 ID도 저장된다. 클라이언트 헬로 메시지를 송신하면 클라이언트는 서버측으로부터 송신되는 서버 헬로 메시지를 기다린다.
서버 헬로(Server Hello) 메시지는 클라이언트로부터 송신된 암호화 알고리즘과 압축 알고리즘의 리스트로부터 무엇을 사용할지의 지정을 포함한다. 세션 ID도 송신되어 서버가 허가하는 경우에는 기존 세션을 재개한다.
서버 증명서(Server Certificate) 메시지(옵션)는 서버 자신의 증명서(CCITT 권고 X.509에 의해 규정되는 형식)를 포함하고 있으며, 서버로부터 클라이언트에게 송신된다. 또한, 여기에는 루트 인증국까지의 증명서의 리스트를 모두 포함한 형식으로 송신된다.
증명서 요구(Certificate Request) 메시지(옵션)는 서버로부터 클라이언트의 증명서의 제시를 요구하는 경우에 보내진다. 이 메시지에는 서버가 신뢰하는 인증국의 리스트가 부가되어 있다.
서버 헬로 종료(Server Hello Done) 메시지는 헬로 메시지의 일련의 송수신 이 무사히 종료되면 클라이언트에게 송신된다. 그 후, 서버는 클라이언트으로부터의 메시지를 기다린다.
클라이언트 증명서(Client Certificate) 메시지(옵션)는, 서버로부터 증명서 요구(Certificate Request)를 수신한 경우에 송신된다. 서버로부터의 요구에 적합한 증명서가 없으면, 증명서없슴(no_certificate)의 경고(Alert)를 회신한다. 데이터의 형식은 서버 증명서(Server Certificate)와 동일하다.
클라이언트 키 교환(Client Key Exchange) 메시지에서는 클라이언트 헬로와 서버 헬로에 의해 합의한 암호화 알고리즘에 의해 생성된 프리마스터 시크릿 데이터가 암호화되어 송신된다. 프리마스터 시크릿 데이터란, 암호화에 사용하는 세션 키를 생성할 때에 사용되는 마스터 시크릿을 생성하는 기초가 되는 데이터이다.
증명서 검증(Certificate Verify) 메시지(옵션)는 클라이언트의 증명서를 송신하고 있는 경우, 클라이언트와 지금까지의 서버의 헬로 메시지의 교환으로부터 생성된 서명을 포함하여 서버에 송신된다. 구체적으로는 지금까지의 교환의 데이터의 해쉬값을 클라이언트측의 비밀 키에 의해 암호화한 것을 송신한다. 서버는 클라이언트로부터 수신한 증명서를 클라이언트측의 공개 키에 의해 복호하여, 취득한 해쉬값과 비교하여 서명을 검증한다.
암호화 사양 변경(Change Cipher Spec) 메시지는 클라이언트로부터 양쪽에서 합의한 암호화 알고리즘에 의해 통신을 행하는 것을 선언하는 메시지이다.
종료(Finished) 메시지는 클라이언트가 서버와의 교환이 정상적으로 종료되어, 세션 확립을 위해 필요한 데이터가 갖추어진 것을 서버에 알리기 위한 메시지 이다.
암호화 사양 변경(Change Cipher Spec) 메시지는 서버로부터 양쪽에서 합의한 암호화 알고리즘에 의해 통신을 행하는 것을 선언하는 메시지이다.
종료(Finished) 메시지는 서버가 클라이언트와의 교환이 정상적으로 종료되어 세션 확립을 위해 필요한 데이터가 갖추어진 것을 클라이언트에게 알리기 위한 메시지이다.
이상이 TLS 핸드쉐이크의 개요이다. 계속해서, 본 발명의 각 실시 형태를 설명한다. 또한, 이하의 각 실시 형태는 장치마다 하드웨어 구성, 또는 하드웨어 자원과 소프트웨어의 조합 구성 모두 실시 가능하게 되어 있다. 조합 구성의 소프트웨어로서는, 도 1, 도 15, 도 17 및 도 20에 도시된 바와 같이 미리 네트워크 또는 기억 매체(M1, M2, M1a 내지 M1c, M2a 내지 M2c)로부터 대응하는 장치의 컴퓨터에 인스톨되어, 대응하는 장치의 기능을 실현시키기 위한 프로그램이 사용된다.
(제1 실시 형태)
도 1은 본 발명의 제1 실시 형태에 관한 인증 시스템의 구성을 도시하는 모식도이다. 이 인증 시스템은 인터넷 등의 네트워크를 통하여 서로 통신 가능한 클라이언트 장치(100) 및 서버 장치(200)로 구성된다.
여기서, 클라이언트 장치(100)는 통신부(101), 제어부(102), 보안 정책 보존부(103), 키 보존부(104), 생체 인증 처리 제어부(105), 템플릿 보존부(106), 생체 정보 취득부(107), 생체 인증 실행부(108), 인증 컨텍스트 생성부(109), 은닉부(110), 암호화부(111), 압축부(112), 검증부(113) 및 키 교환부(114)를 구비하고 있다.
통신부(101)는 제어부(102)에 제어되고, 인터넷을 통하여 서버 장치(200)와 데이터를 송수신하는 기능을 갖고 있다.
제어부(102)는 합의 처리 중인 주지의 메시지 제어 기능 외에 추가로, 합의 처리 중에 생체 인증에 관한 메시지를 제어하도록 각 부(101, 103 내지 114)를 제어하는 기능을 갖고 있다. 각 메시지의 상세한 것은 후술한다.
구체적으로는 제어부(102)는 주지의 메시지 제어 기능 외에 추가로, 이하의 각 기능(f102-1 내지 f102-5)을 갖고 있다.
(f102-1) 합의 처리 중에 서버 장치(200)로부터 난수 데이터를 포함하는 서버 헬로 메시지를 통신부(101)에 의해 수신하는 기능.
(f102-2) 서버 헬로 메시지의 수신 후, 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 작성하고, 이 생체 인증 교섭 메시지를 서버 장치(200)에 송신하는 기능.
(f102-3) 생체 인증 교섭 메시지의 송신 후, 서버 장치(200)로부터 통지된 생체 인증 방식 정보에 기초하여 생체 인증 처리 제어부(105)를 기동하는 기능.
(f102-4) 서버 헬로 메시지 내의 난수 데이터를 클라이언트의 비밀 키에 기초하여 암호화부(111)에 의해 암호화하여, 암호화 난수를 생성하는 기능.
(f102-5) 인증 컨텍스트 생성부(109)로부터 받은 인증 컨텍스트를 통신부(101)에 의해 서버 장치(200)에 송신함으로써 합의 처리를 계속하는 기능.
보안 정책 보존부(103)는 제어부(102)로부터 읽어내기/기입 가능한 기억 장 치이며, 주지의 은닉 통신의 보안 정책 외에 추가로 생체 인증에 관한 보안 정책이 미리 보존되어 있다.
여기서, 보안 정책은, 예를 들어 도 2에 도시된 바와 같이 실행 가능한 정책으로서 생체 인증 실행부(108)의 안전성, 생체 인증 실행부(108)의 품질, 생체 인증 방식을 나타내는 생체 인증 방식 정보, 대조 파라미터, 템플릿의 안전성, 템플릿의 품질이 기술되어 있다.
키 보존부(104)는 제어부(102), 은닉부(110) 및 인증 컨텍스트 생성부(109)로부터 읽어내기/기입 가능한 기억 장치이며, 클라이언트 장치(100)의 공개 키를 포함하는 클라이언트 증명서와, 당해 공개 키에 대응하는 비밀 키가 보존되어 있다.
생체 인증 처리 제어부(105)는 이하의 각 기능(f105-1 및 f105-2)을 갖고 있다.
(f105-1) 제어부(102)에 제어되어 생체 인증 처리를 행하도록 템플릿 보존부(106), 생체 정보 취득부(107) 및 생체 인증 실행부(108)를 제어하는 기능.
(f105-2) 얻어진 생체 인증의 결과를 인증 컨텍스트 생성부(109)에 송출하는 기능.
템플릿 보존부(106)는 미리 등록된 이용자의 생체 정보(템플릿)가 저장되고, 생체 인증 처리 제어부(105)로부터의 요구에 의해 템플릿을 생체 인증 실행부(108)에 출력하는 기능을 갖고 있다.
생체 정보 취득부(107)는 생체 인증 처리 제어부(105)에 제어되고, 이용자의 생체 정보를 취득하여 생체 인증 실행부(108)에 출력하는 기능을 갖고 있다.
생체 인증 실행부(108)는 생체 인증 처리 제어부(105)에 제어되고, 생체 정보 취득부(107)로부터 받은 생체 정보와 템플릿 보존부(106) 내의 템플릿에 기초한 생체 인증 처리를 실행하여, 생체 인증의 결과를 생체 인증 처리 제어부(105)에 출력하는 기능을 갖고 있다.
인증 컨텍스트 생성부(109)는 이하의 각 기능(f109-1 및 f109-2)을 갖고 있다.
(f109-1) 생체 인증 처리 제어부(105)에 의해 얻어진 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보와 생체 인증 방식 정보와 암호화 난수와 클라이언트 증명서로부터 클라이언트의 비밀 키에 기초하여 인증자(디지털 서명)를 생성하는 기능.
(f109-2) 생체 인증의 결과와 생체 인증 방식 정보와 암호화 난수와 클라이언트 증명서와 인증자를 포함하는 인증 컨텍스트를 제어부(102)에 송출하는 기능.
여기서, 인증 컨텍스트의 일례로서는 도 3에 도시된 바와 같이 일반 컨텍스트(g) 및 특정 컨텍스트(p)를 구비한 것으로 해도 좋다. 일반 컨텍스트(g)는 헤더 블록(gh) 및 gh에 대한 인증자 블록(ga)을 구비하고 있다. 특정 컨텍스트(p)는 헤더 블록(ph), 데이터 블록(pd), 클라이언트 증명서 블록(pc) 및 ph, pd, pc에 대한 인증자 블록(pa)을 구비하고 있다. 일반 컨텍스트(g)의 헤더 블록(gh)은 특정 컨텍스트의 헤더 블록(ph)을 일의적으로 특정 가능한 헤더 정보를 포함하고 있다. 데이터 블록(pd)은, 예를 들어 생체 인증의 결과, 생체 인증 방식 정보 및 암호화 난수를 포함하고 있다.
은닉부(110)는 제어부(102)에 제어되고 키에 관한 은닉 처리를 실행하는 것이며, 구체적으로는 암호화부(111), 압축부(112), 검증부(113) 및 키 교환부(114)를 구비하고 있다. 또한, 은닉부(110)의 기능 블록은, 합의 처리의 옵션에서 선택하지 않은 경우와 같이 사용하지 않는 경우도 있다. 이것은 이하의 각 실시 형태에서도 마찬가지이다.
암호화부(111)는 제어부(102)로부터 키 및 데이터를 받으면, 키에 기초하여 데이터를 암호화하고, 얻어진 암호화 데이터를 제어부(102)에 송출하는 기능을 갖고 있다. 또한, 암호화부(111)는 의사 난수 생성 함수(pseudo-random function : PRF)에 의해 의사 난수를 생성하는 기능을 갖고 있다.
압축부(112)는 제어부(102)로부터 받은 데이터를 압축하고, 얻어진 압축 데이터를 제어부(102)에 송출하는 기능을 갖고 있다.
검증부(113)는 제어부(102)로부터 키 및 데이터를 받으면, 키에 기초하여 데이터를 검증하고, 검증 결과를 제어부(102)에 송출하는 기능을 갖고 있다.
키 교환부(114)는 제어부(102)로부터 키 및 데이터를 받으면, 키 및 데이터에 기초하여 키 교환 처리를 실행하고, 얻어진 처리 결과를 제어부(102)에 송출하는 기능을 갖고 있다.
한편, 서버 장치(200)는 통신부(201), 제어부(202), 보안 정책 보존부(203), 키 보존부(204), 인증 컨텍스트 검증부(205), 은닉부(206), 암호화부(207), 압축부(208), 검증부(209) 및 키 교환부(210)를 구비하고 있다.
통신부(201)는 제어부(202)에 제어되고, 인터넷을 통하여 클라이언트 장치(100)와 데이터를 송수신하는 기능을 갖고 있다.
제어부(202)는 주지의 메시지 제어 기능 외에 추가로, 합의 처리 중에 생체 인증에 관한 메시지를 제어하도록 각 부(201, 203 내지 210)를 제어하는 기능을 갖고 있다. 각 메시지의 상세한 것은 후술한다.
구체적으로는 제어부(202)는 주지의 메시지 제어 기능 외에 추가로, 이하의 각 기능(f202-1 내지 f202-6)을 갖고 있다.
(f202-1) 합의 처리 중에 난수를 포함하는 메시지를 통신부(201)에 의해 클라이언트 장치(100)에 송신하는 기능.
(f202-2) 메시지의 송신 후, 클라이언트 장치(100)의 생체 인증 방식을 나타내는 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 통신부(201)에 의해 클라이언트 장치(100)로부터 수신하는 기능.
(f202-3) 생체 인증 교섭 메시지 내의 생체 인증 방식 정보가 보안 정책 보존부(203) 내의 각 생체 인증 방식 정보 중 어디에 일치하는지의 여부를 판정하는 기능.
(f202-4) 판정의 결과가 일치를 나타낼 때 당해 생체 인증 방식 정보를 통신부(201)에 의해 클라이언트 장치(100)에 통지하는 기능.
(f202-5) 통지 후, 생체 인증 방식 정보에 기초한 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보와 생체 인증 방식 정보와 암호화 난수와 클라이언트 증명서와 인증자를 포함하는 인증 컨텍스트를 통신부(201)에 의해 클라이언트 장치(100)로부터 수신하는 기능.
(f202-6) 인증 컨텍스트를 인증 컨텍스트 검증부(205)에 송출하고, 인증 컨텍스트 검증부(205)로부터 받은 검증 결과에 따라 합의 처리를 계속하거나 또는 중단하는 기능.
보안 정책 보존부(203)는 제어부(202)로부터 읽어내기/기입 가능한 기억 장치이며, 주지의 은닉 통신의 보안 정책 외에 추가로, 생체 인증에 관한 보안 정책이 미리 보존되어 있다.
여기서, 보안 정책은, 예를 들어 도 4에 도시된 바와 같이(후술하는 스텝 ST13의) 어플리케이션마다 접수 가능한 정책을 열거하고 있으며, 각 정책에는 생체 인증 실행부의 안전성, 생체 인증 실행부의 품질, 생체 인증 방식을 나타내는 생체 인증 방식 정보, 대조 파라미터, 템플릿의 안전성, 템플릿의 품질이 기술되어 있다. 또한, 보안 정책은, 예를 들어 도 5에 도시된 바와 같이(후술하는 스텝 ST13의) 어플리케이션마다 접수 가능한 정책이 복수 존재해도 좋다.
키 보존부(204)는 제어부(202) 및 은닉부(206)로부터 읽어내기/기입 가능한 기억 장치이며, 서버 장치(200)의 공개 키를 포함하는 서버 증명서와, 당해 공개 키에 대응하는 비밀 키가 보존되어 있다.
인증 컨텍스트 검증부(205)는 이하의(i) 내지 (ⅳ) 중 어느 하나에 해당하는 경우, 합의 처리를 중단한다는 취지의 검증 결과를 제어부(202)에 송출하는 기능과, 당해 (i) 내지 (ⅳ) 중 어디에도 해당하지 않는 경우, 합의 처리를 계속한다는 취지의 검증 결과를 제어부(202)에 송출하는 기능을 갖고 있다.
(i) 인증 컨텍스트 내의 생체 인증의 결과가 부정을 나타낼 때.
(ⅱ) 인증 컨텍스트 내의 생체 인증 방식 정보와 통지된 생체 인증 방식 정보가 서로 다를 때.
(ⅲ) 인증 컨텍스트 내의 암호화 난수를 클라이언트 증명서 내의 공개 키에 기초하여 복호하여, 얻어진 난수가 메시지 내의 난수와 서로 다를 때.
(ⅳ) 클라이언트 증명서 내의 공개 키에 기초하여 인증자를 검증하여, 검증 결과가 부정을 나타낼 때.
은닉부(206)는 제어부(202)에 제어되고 키에 관한 은닉 처리를 실행하는 것이며, 구체적으로는 암호화부(207), 압축부(208), 검증부(209) 및 키 교환부(210)를 구비하고 있다. 또한, 은닉부(206)의 기능 블록은 합의 처리의 옵션에서 선택하지 않은 경우와 같이 사용하지 않는 경우도 있다. 이것은 이하의 각 실시 형태에서도 마찬가지이다.
암호화부(207)는 제어부(202)로부터 키 및 데이터를 받으면, 키에 기초하여 데이터를 암호화하고, 얻어진 암호화 데이터를 제어부(202)에 송출하는 기능을 갖고 있다. 또한, 암호화부(207)는 의사 난수 생성 함수(pseudo-random function : PRF)에 의해 의사 난수를 생성하는 기능을 갖고 있다.
압축부(208)는 제어부(202)로부터 받은 데이터를 압축하고, 얻어진 압축 데이터를 제어부(202)에 송출하는 기능을 갖고 있다.
검증부(209)는 제어부(202)로부터 키 및 데이터를 받으면, 키에 기초하여 데이터를 검증하고, 검증 결과를 제어부(202)에 송출하는 기능을 갖고 있다.
키 교환부(210)는 제어부(202)로부터 키 및 데이터를 받으면, 키 및 데이터에 기초하여 키 교환 처리를 실행하고, 얻어진 처리 결과를 제어부(202)에 송출하는 기능을 갖고 있다.
다음에, 이상과 같이 구성된 인증 시스템의 동작을 도 6의 시퀀스도를 사용하여 설명한다. 또한, 각 시퀀스도는 은닉 통신의 핸드쉐이크 프로토콜을 나타내고 있다. 또한, 도면에서 빗금으로 표시된 스텝(ST1, ST2, ST-CBN, ST-SBN, ST-BP, ST-BV) 이외의 스텝 ST3 내지 ST5, ST6 내지 13은 주지 기술과 동일하기 때문에, 상세한 설명을 생략한다. 이것은 이하의 각 실시 형태에서도 마찬가지이다.
(스텝 ST1)
클라이언트 장치(100)에 있어서는, 핸드쉐이크의 확장 처리가 있다는 취지를 통지하기 위해 종래의 헬로(Hello) 메시지를 확장한 클라이언트 헬로 메시지(MCH)를 제어부(102)가 통신부(101)에 의해 서버 장치(200)에 송신한다.
이 클라이언트 헬로(Client Hello) 메시지(MCH)는, 도 7에 도시된 바와 같이 클라이언트의 프로토콜 버전(Protocol Version), 클라이언트 장치(100)가 생성한 난수 데이터(Random), 세션 ID(Session ID), 클라이언트 장치(100)가 실행 가능한 암호화 알고리즘(Cipher Suite), 클라이언트 장치(100)가 실행 가능한 압축 방식(Compression Method), 이 핸드쉐이크로 확장 처리를 행하는 것을 나타내는 확장(Extension) 리스트(MCH-LIST)를 포함하고 있다. 이 확장 리스트(MCH-LIST)에 대해서는, 예를 들어 도 8에 도시된 바와 같이 생체 인증에 기초하는 클라이언트 인 증(Client_auth)을 포함하는 확장형(Extension Type)과, 생체 인증 방식 정보(unit8 Authentication Method[2])를 포함하는 확장 방식(Extension Method)을 포함하고 있다.
이 확장 리스트(MCH-LIST)에 의해 통지하는 내용은 생체 인증에 기초하여 클라이언트 인증을 행하고, 클라이언트 인증의 결과에 따라 시큐어 세션을 확립하는 것이다. 그 밖의 상세한 것은 주지의 기술과 동일하므로 생략한다.
(스텝 ST2)
서버 장치(200)에 있어서는, 클라이언트 헬로 메시지(MCH)를 통신부(201)에 의해 제어부(202)가 수신한다. 제어부(202)는 핸드쉐이크의 확장 처리에 대하여 양해한다는 취지를 통지하기 위해 확장한 서버 헬로(ServerHello) 메시지(MSH)를 통신부(201)에 의해 클라이언트 장치(100)에 송신한다.
서버 헬로 메시지(MSH)는, 도 9에 도시된 바와 같이 서버 장치(200)의 프로토콜 버전(Protocol Version), 서버 장치(200)가 생성한 난수 데이터(Random), 세션 ID(Session ID), 서버 장치(200)가 합의한 암호화 알고리즘(Cipher Suite), 서버 장치(200)가 합의한 압축 방식(Compression Method), 이 핸드쉐이크에 의해 확장 처리를 행하는 것을 나타내는 확장 리스트(Extension)를 포함하고 있다.
기타의 상세한 것은 주지의 기술과 동일하므로 생략한다.
(스텝 ST3)
서버 장치(200)에 있어서는, 서버 인증을 행하기 위하여 및 클라이언트 장 치(100)와의 키 교환에 필요한 데이터를 송신하기 위해 키 보존부(204) 내의 서버 증명서를 포함하는 서버 증명서(Server Certificate) 메시지를 제어부(202)가 통신부(201)에 의해 클라이언트 장치(100)에 송신한다. 또 서버 증명서에 클라이언트 장치(100)와의 키 교환에 필요한 데이터가 포함되어 있지 않은 경우, 제어부(202)는 통신부(201)에 의해 서버 증명서 메시지에 이어 서버 키 교환(Server Key Exchange) 메시지를 클라이언트 장치(100)에 송신한다.
만약 서버 인증을 행하지 않는 경우, 도 10에 도시된 바와 같이 서버 증명서 메시지를 송신하지 않고, 서버 키 교환 메시지를 클라이언트 장치(100)에 송신한다.
(스텝 ST4)
서버 장치(200)에 있어서는, 옵션으로 선택되어 있으면 제어부(202)가 통신부(201)에 의해 클라이언트 증명서를 요구하는 증명서 요구(Certificate Request) 메시지를 클라이언트 장치(100)에 송신한다.
(스텝 ST5)
서버 장치(200)에 있어서는, 제어부(202)가 통신부(201)에 의해 헬로 메시지의 일련의 처리가 종료되었다는 취지의 서버 헬로 종료(Server Hello Done) 메시지를 클라이언트 장치(100)에 송신한다.
(스텝 ST-CBN)
클라이언트 장치(100)에 있어서는 클라이언트 장치(100)에 의해 실행 가능한 생체 인증 방식의 리스트를 서버에 통지하기 위해, 제어부(102)가 통신부(101)에 의해 클라이언트 생체 인증 교섭(Client Biometric Negotiation) 메시지(MCBN)를 서버 장치(200)에 송신한다.
클라이언트 생체 인증 교섭 메시지(MCBN)는, 도 11에 도시된 바와 같이 클라이언트 장치(100)에 의해 실행 가능한 생체 인증 방식을 나타내는 생체 인증 방식 정보를 리스트로 한 생체 인증 방식 리스트(Biometric Method List)를 포함하고 있다.
(스텝 ST-SBN)
서버 장치(200)에 있어서는, 클라이언트 생체 인증 교섭 메시지를 제어부(202)가 통신부(201)에 의해 수신하면, 제어부(202)가 클라이언트 생체 인증 교섭 메시지 내의 생체 인증 방식 리스트의 생체 인증 방식 정보가 보안 정책 보존부(203) 내의 생체 인증 방식 정보 중 어디에 일치하는지의 여부를 판정한다.
제어부(202)는 판정의 결과가 일치를 나타낼 때 당해 생체 인증 방식 정보를 포함하는 서버 생체 인증 교섭(Server Biometric Negotiation) 메시지(MSBN)를 통신부(201)에 의해 클라이언트 장치(100)에 송신한다. 여기서 선택한 방식은 복수이어도 좋다.
서버 생체 인증 교섭 메시지(MSBN)는, 도 12에 도시된 바와 같이 보안 정책 보존부(203) 내의 보안 정책을 만족하는 생체 인증 방식을 나타내는 생체 인증 방식 정보를 리스트로 한 생체 인증 방식 리스트(Biometric Method List)를 포함하고 있다.
(스텝 ST-BP)
클라이언트 장치(100)에 있어서는, 서버 생체 인증 교섭 메시지를 제어부(102)가 통신부(101)에 의해 수신하면, 제어부(102)가 서버 생체 인증 교섭 메시지 내의 생체 인증 방식 정보에 기초하여 생체 인증 처리 제어부(105)를 기동한다. 생체 인증 처리 제어부(105)는 각 부(106 내지 108)를 제어하여 유저의 생체 인증 처리를 실행하고, 얻어진 생체 인증의 결과를 인증 컨텍스트 생성부(109)에 송출한다.
또한, 제어부(102)는 암호화부(111)에 의해 서버 헬로(Server Hello) 메시지(MSH)에 포함되는 난수 데이터를 키 보존부(104) 내의 비밀 키에 기초하여 암호화하여, 암호화 난수를 생성한다. 이 암호화 난수는, 제어부(102)로부터 인증 컨텍스트 생성부(109)에 송출된다.
인증 컨텍스트 생성부(109)는 생체 인증의 결과와 생체 인증 방식 정보와 암호화 난수와 키 보존부(104) 내의 클라이언트 증명서로부터 키 보존부(104) 내의 비밀 키에 기초하여 인증자를 생성한다.
그런 뒤, 인증 컨텍스트 생성부(109)는 생체 인증의 결과 및 생체 인증 처리의 정당성을 보증하기 위한 취득된 생체 정보(샘플)나 참조된 생체 정보(템플릿) 및 참조된 생체 정보의 증명서(템플릿 증명서) 등의 각종 정보와 생체 인증 방식 정보와 암호화 난수와 클라이언트 증명서와 인증자를 포함하는 인증 컨텍스트를 생성하고, 이 인증 컨텍스트를 제어부(102)에 송출한다.
제어부(102)는 이 인증 컨텍스트를 포함하는 생체 인증 처리(Biometric Process) 메시지(MBP)를 통신부(101)에 의해 서버 장치(200)에 송신한다. 이에 의해 합의 처리는 계속된다.
생체 인증 처리 메시지(MBP)는, 도 13에 도시된 바와 같이 클라이언트에 의해 실행된 생체 인증 결과인 인증 결과(Authentication Result)를 포함하고 있다. 인증 결과는, 예를 들어 서버로부터 제시된 인증 방식으로부터 클라이언트 장치(100)가 선택한 인증 방식과 인증 결과의 데이터가 포함된다. 본 실시 형태에서는, 전술한 인증 컨텍스트가 확장 데이터(Extension Data)에 포함되어 있으면 된다.
또 챌린지 데이터의 작성 방법으로서는, 서버 헬로 메시지에 포함되는 챌린지를 이용하는 것 이외에, 주지의 기술을 사용하여 클라이언트 헬로 메시지 및 서버 헬로 메시지에 의해 합의한 암호화 알고리즘(Cipher Suite)에 의해 난수를 생성하여 챌린지 데이터로 해도 된다.
(스텝 ST-BV)
서버 장치(200)에 있어서는, 생체 인증 처리 메시지(MBP)를 제어부(202)가 통신부(201)에 의해 수신하면, 제어부(202)가 생체 인증 처리 메시지(MBP) 내의 인증 컨텍스트를 인증 컨텍스트 검증부(205)에 송출한다.
인증 컨텍스트 검증부(205)는 인증 컨텍스트를 검증하여, 검증 결과를 제어부(202)에 송출한다. 제어부(202)는 인증 컨텍스트의 검증 결과에 따라 합의 처리 를 계속하거나 또는 중단한다. 합의 처리를 중단하는 경우의 검증 결과로서는, 예를 들어 (i) 인증 컨텍스트 내의 생체 인증의 결과가 부정을 나타낼 때, (ⅱ) 인증 컨텍스트 내의 생체 인증 방식 정보와 통지된 생체 인증 방식 정보가 서로 다를 때, (ⅲ) 인증 컨텍스트 내의 암호화 난수를 클라이언트 증명서 내의 공개 키에 기초하여 복호하여, 얻어진 난수가 서버 헬로 메시지 내의 난수와 서로 다를 때, 또는 (ⅳ) 클라이언트 증명서 내의 공개 키에 기초하여 인증자를 검증하여, 검증 결과가 부정을 나타낼 때 등이 있다. 또한, 여기에서는 합의 처리를 계속하는 검증 결과를 얻었다고 한다.
제어부(202)는 검증된 결과를 통지하기 위해, 도 14에 도시된 바와 같이 인증 컨텍스트의 검증 결과를 나타내는 인증 결과(Authentication Result), 생체 인증 처리의 정보를 저장하는 인증 정보(Authenticate Info) 및 이들 항목에 대하여 서버의 비밀 키에 의해 작성된 서명(Signature)이 포함된 생체 인증 검증(Biometric Verify) 메시지(MBV)를 통신부(201)에 의해 클라이언트 장치(100)에 송신한다.
(스텝 ST6)
클라이언트 장치(100)는 생체 인증 검증 메시지(MBV)를 제어부(102)가 통신부(101)에 의해 수신한다. 그런 뒤, 제어부(102)는 서버가 클라이언트의 증명서를 요구하고 있는 경우에는 키 보존부(104) 내의 클라이언트 증명서를 포함하는 클라이언트 증명서(Client Certificate) 메시지를 통신부(101)에 의해 서버 장치(200) 에 송신한다.
(스텝 ST7)
클라이언트 장치(100)에 있어서는, 프리마스터 시크릿(premaster_secret)을 서버에 통지하기 위해 제어부(102)가 클라이언트 키 교환(Client Key Exchange) 메시지를 통신부(101)에 의해 서버 장치(200)에 송신한다.
(스텝 ST8)
클라이언트 장치(100)에 있어서는, 스텝 ST6에서 클라이언트 증명서를 송신한 경우, 클라이언트 증명서의 검증을 위해 제어부(102)는 암호화부(111)에 의해 현재까지의 메시지에 대하여 키 보존부 내(104)의 비밀 키에 기초하여 디지털 서명을 생성한다. 그런 뒤, 제어부(102)는 현재까지의 메시지와 디지털 서명을 포함하는 클라이언트 검증(Client Verify) 메시지를 통신부(101)에 의해 서버 장치(200)에 송신한다.
(스텝 ST9)
클라이언트 장치(100)에 있어서는, 제어부(102)가 통신부(101)에 의해 양쪽에서 합의한 암호화 알고리즘에 의해 은닉 통신을 행하는 것을 선언하는 암호화 사양 변경(Change Cipher Spec) 메시지를 서버 장치(200)에 송신한다.
(스텝 ST10)
클라이언트 장치(100)에 있어서는, 제어부(102)가 통신부(101)에 의해 서버와의 교환이 정상적으로 종료되어 세션 확립을 위해 필요한 데이터가 갖추어졌다는 취지의 종료(Finished) 메시지를 서버 장치(200)에 송신한다.
(스텝 ST11)
서버 장치(200)에 있어서는, 제어부(202)가 통신부(201)에 의해 양쪽에서 합의한 암호화 알고리즘에 의해 은닉 통신을 행하는 것을 선언하는 암호화 사양 변경 메시지를 클라이언트 장치(100)에 송신한다.
(스텝 ST12)
서버 장치(200)에 있어서는, 제어부(202)가 통신부(201)에 의해 클라이언트와의 교환이 정상적으로 종료되어 세션 확립을 위해 필요한 데이터가 갖추어졌다는 취지의 종료 메시지를 클라이언트 장치(100)에 송신한다.
(스텝 ST13)
스텝 ST12의 완료 후, 클라이언트 장치 및 서버 장치는 은닉 통신을 실행 가능한 키를 공유할 수 있고, 그 후의 세션에 있어서 클라이언트 장치-서버 장치 사이에서 시큐어 세션을 확립할 수 있다.
상술한 바와 같이 본 실시 형태에 따르면, 증명서 인증을 포함하는 합의 처리 중에 생체 인증까지 실행하는 구성에 의해 2회의 핸드쉐이크에 수반하는 불필요한 패스를 존재시키지 않고, 엔티티 인증 및 생체 인증에 기초한 시큐어 세션을 확립할 수 있다.
또한, 본 실시 형태는 생체 인증에 실패한 경우에도 종래에 비해 불필요해진 처리를 저감할 수 있다. 보충하면, 종래는 엔티티 인증에 의해 시큐어 세션을 확립한 후에 생체 인증에 실패한 경우에는 TLS의 세션을 파기해야 하므로, 생체 인증까지의 처리가 불필요하게 되어 있다. 즉, 종래는 엔티티 인증에 의해 시큐어 세 션을 확립한 처리라고 하는 큰 처리가 불필요하게 되어 있다. 이로 인해, 이러한 불필요해진 처리는 저감하는 것이 바람직하다.
또한, 합의 처리 중인 메시지에 포함되는 난수로부터 생성한 암호화 난수를 포함하는 인증 컨텍스트를 포함하는 생체 인증 처리 메시지(MBP)를 서버 장치(200)에 송신하는 구성에 의해 증명서 인증을 포함하는 합의 처리와 생체 인증을 유기적으로 결합시키므로 생체 인증에 수반하는 통신의 발생을 억제할 수 있다. 또 생체 인증에 의해 부정한 유저가 정당한 클라이언트 장치를 이용한 것처럼 가장하는 것을 방지할 수 있다.
또 스텝 ST4, ST6, ST8은 옵션의 처리이며, 이 스텝의 처리를 행하지 않고, 스텝 ST5의 처리에 있어서 일시적인 키를 서버에서 생성하여 이용한다면, 핸드쉐이크는 클라이언트의 생체 인증의 결과로부터만 시큐어 세션을 확립하는 것이 가능해진다.
스텝 ST4, ST6, ST8의 처리를 행하면 생체 인증의 결과와 클라이언트의 증명서에 의한 인증의 결과에 따라 시큐어 세션을 확립하는 것이 된다.
또한 스텝 ST3에서 서버의 증명서를 송신하면 서버의 증명서의 인증의 결과에도 따른 결과 시큐어 세션을 확립하는 것이 된다.
본 실시 형태로부터 클라이언트 장치(100)에 접속되어 있는 임의의 생체 인증 장치(각 부(105 내지 108))에 의해 시큐어 세션을 확립하는 것이 가능하고, 서버 장치(200)는 자신이 유지하는 정책에 따라 예를 들어 생체 인증 장치의 정밀도 로 판단하는 것이 가능하게 된다.
보충하면, TLS를 확장하는 기술로서는 TLS 확장 방식(TLS Extension)이 알려져 있다(예를 들어, S.Blake-Wilson, M.Nystrom, D.Hopwood, J.Mikkelsen, T.Wright, "Transport Layer Security(TLS) Extension", <URL:http://www.ietf.org/rfc/rfc4366.txt> 참조). 본 발명자는, 본 실시 형태를 착상하기 전에 TLS 확장 방식을 사용하여 TLS 핸드쉐이크를 확장하고, 생체 인증에 기초하여 시큐어 세션을 확립하는 것을 생각했다. 단, 단순히 종래의 TLS 핸드쉐이크에 생체 인증의 패스를 추가하는 확장에서는 생체 인증의 처리에 필요해지는 각종 데이터, 예를 들어 챌린지 데이터나 네고시에이션 등의 처리를 어떻게 핸드쉐이크 중에 행할지가 불분명하여 생체 인증에 기초하여 시큐어 세션을 바르게 확립할 수 없다.
그러나, 본 실시 형태에 따르면, TLS 핸드쉐이크를 확장할 때에 생체 인증 처리에 필요한 정보나 네고시에이션의 처리를 적절하게 행하므로 TSL 핸드쉐이크를 TLS 확장 방식에 의해 적절하게 확장할 수 있다.
또한, 본 실시 형태에 있어서, 생체 인증 장치(각 부(105 내지 108))는 클라이언트 장치(100)에 포함되어 있지만, 생체 인증 장치는 외부 장치이어도 되고, 또 템플릿 보존부(106)도 예를 들어 IC 카드와 같이 클라이언트 장치(100)의 외부에 있어서 접속되어 있어도 되고, 클라이언트 매칭이 실행 가능한 형태이면 된다.
또 실시 형태에서는, TLS 핸드쉐이크를 확장하여 생체 인증을 행하고 있지만, 그 밖에도 시큐어 세션을 확립하는 SSL(Secure Socket Layer)이나 다른 핸드쉐 이크에도 마찬가지로 적용하는 것이 가능하다.
이상으로부터, 생체 인증의 결과에 기초하여 시큐어 세션을 확립하기 위한 메시지를 보내는 장치를 구성할 수 있음과 함께 및 생체 인증의 결과에 기초하여 시큐어 세션을 확립하기 위한 메시지의 작성을 실현할 수 있다.
또한, 본 실시 형태는 「스텝 ST-CBN, ST-SBN」, 「스텝 ST-BP, ST-BV」 및 「스텝 ST6 내지 ST8」의 순서를 변경해도 마찬가지로 실시하여 마찬가지의 효과를 얻을 수 있다. 단, 「스텝 ST-CBN, ST-SBN」은 「스텝 ST-BP, ST-BV」보다도 먼저 실행할 필요가 있다.
구체적으로는 본 실시 형태는 「스텝 ST-CBN, ST-SBN」, 「스텝 ST6 내지 ST8」 및 「스텝 ST-BP, ST-BV」의 순서에 의해 실행할 수도 있다. 또한, 본 실시 형태는 「스텝 ST6 내지 ST8」, 「스텝 ST-CBN, ST-SBN」 및 「스텝 ST-BP, ST-BV」의 순서에 의해 실행할 수도 있다.
(제2 실시 형태)
도 15는 본 발명의 제2 실시 형태에 관한 인증 시스템의 구성을 도시하는 모식도이며, 도 1과 거의 동일 부분에는 동일한 부호를 붙여 그 상세한 설명을 생략하고, 여기에서는 다른 부분에 대하여 주로 설명한다. 또한, 이하의 각 실시 형태도 마찬가지로 하여 중복된 설명을 생략한다.
제2 실시 형태는 제1 실시 형태의 변형예이며, 클라이언트 장치(100a)측에서 취득한 생체 인증의 결과를 서버 장치(200a)측에서 생체 인증하는 서버 매칭의 실시 형태이다.
이에 수반하여, 클라이언트 장치(100a)는 도 1에 도시된 클라이언트 장치(100)에 비해 템플릿 보존부(106) 및 생체 인증 실행부(108)가 생략되고, 전술한 기능이 변경된 제어부(102a) 및 생체 인증 처리 제어부(105a)를 구비한 구성으로 되어 있다.
여기서, 제어부(102a)는 이하의 각 기능(f102a-1 내지 f102a-7)을 갖고 있다.
(f102a-1) 클라이언트의 난수(제1 난수)를 생성하기 위한 난수 생성 기능.
(f102a-2) 합의 처리 중에 클라이언트의 난수를 포함하는 클라이언트 헬로 메시지(제1 메시지)를 작성하고, 이 클라이언트 헬로 메시지를 통신부(101)에 의해 서버 장치(200a)에 송신하는 기능.
(f102a-3) 클라이언트 헬로 메시지의 송신 후, 서버 장치(200a)로부터 서버 난수(제2 난수)를 포함하는 서버 헬로 메시지(제2 메시지)를 통신부(101)에 의해 수신하는 기능.
(f102a-4) 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 작성하고, 이 생체 인증 교섭 메시지를 통신부(101)에 의해 서버 장치(200a)에 송신하는 기능.
(f102a-5) 생체 인증 교섭 메시지의 송신 후, 서버 장치(200a)로부터 통지된 생체 인증 방식 정보에 기초하여 생체 인증 처리 제어부(105a)를 기동하는 기능.
(f102a-6) 암호화부(111)에 의해 클라이언트 난수(제1 난수) 및 서버 난수(제2 난수)에 기초하여 해쉬 알고리즘에 의해 암호화용 파라미터를 생성하는 기능.
(f102a-7) 생체 인증 처리 제어부(105a)에 의해 취득한 생체 정보를 암호화용 파라미터에 기초하여 암호화부(111)에 의해 암호화하고, 얻어진 암호화 생체 정보를 통신부(101)에 의해 서버 장치(200a)에 통지함으로써 합의 처리를 계속하는 기능.
생체 인증 처리 제어부(105a)는 제어부(102a)에 의해 기동되면 생체 정보 취득부(107)에 의해 유저의 생체 정보를 취득하고, 이 생체 정보를 제어부(102a)에 송출하는 기능을 갖고 있다.
마찬가지로, 서버 장치(200a)는, 도 1에 도시된 서버 장치(200)에 비해 템플릿 보존부(211) 및 생체 인증 실행부(212)가 부가되고, 전술한 기능이 변경된 제어부(202a)를 구비한 구성으로 되어 있다.
제어부(202a)는 이하의 각 기능(f202a-1 내지 f202a-10)을 갖고 있다.
(f202a-1) 합의 처리 중에 클라이언트 장치(100a)로부터 클라이언트 장치(100a)가 생성한 난수 데이터(제1 난수. 이하, 클라이언트 난수라고도 한다)를 포함하는 클라이언트 헬로 메시지(제1 메시지)를 통신부(201)에 의해 수신하는 기능.
(f202a-2) 클라이언트 헬로 메시지의 수신 후, 서버 장치(200a)가 생성한 난수 데이터(제2 난수. 이하, 서버 난수라고도 한다)를 포함하는 서버 헬로 메시지(제2 메시지)를 클라이언트 장치(100a)에 통신부(201)를 통하여 송신하는 기능.
(f202a-3) 클라이언트 장치(100a)의 생체 인증 방식을 나타내는 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 클라이언트 장치(100a)로부터 통신 부(201)에 의해 수신하는 기능.
(f202a-4) 생체 인증 교섭 메시지 내의 생체 인증 방식 정보가 보안 정책 보존부(203) 내의 각 생체 인증 방식 정보 중 어디에 일치하는지의 여부를 판정하는 기능.
(f202a-5) 판정의 결과가 일치를 나타낼 때 당해 생체 인증 방식 정보를 클라이언트 장치(100a)에 통신부(201)를 통하여 통지하는 기능.
(f202a-6) 통지 후, 생체 인증 방식 정보에 따라 취득된 유저의 생체 정보가 클라이언트 난수(제1 난수) 및 서버 난수(제2 난수)에 기초하여 암호화되어 이루어지는 암호화 생체 정보를 클라이언트 장치(100a)로부터 통신부(201)에 의해 수신하는 기능.
(f202a-7) 클라이언트 헬로 메시지 내의 클라이언트 난수 및 서버 헬로 메시지 내의 서버 난수에 기초하여 해쉬 알고리즘에 의해 암호화용 파라미터를 암호화부(207)에 의해 생성하는 기능.
(f202a-8) 암호화부(207)에 의해 암호화 생체 정보를 암호화용 파라미터에 기초하여 복호하는 기능.
(f202a-9) 복호에 의해 얻어진 생체 정보를 생체 인증 실행부(212)에 송출하는 기능.
(f202a-10) 생체 인증 실행부(212)로부터 받은 생체 인증의 결과가 부정을 나타낼 때 합의 처리를 중단하는 기능.
템플릿 보존부(211)는 미리 등록된 이용자의 생체 정보(템플릿)가 저장되어, 생체 인증 실행부(212)로부터의 요구에 의해 템플릿을 생체 인증 실행부(212)에 출력하는 기능을 갖고 있다.
생체 인증 실행부(212)는 제어부(202a)로부터 받은 생체 정보를 템플릿 보존부(211) 내의 템플릿에 기초하여 생체 인증하고, 생체 인증의 결과를 제어부(202a)에 송출하는 기능을 갖고 있다.
다음에, 이상과 같이 구성된 인증 시스템의 동작을 도 16의 시퀀스도를 사용하여 설명한다. 또한, 각 시퀀스도는 은닉 통신의 핸드쉐이크 프로토콜을 나타내고 있다.
(스텝 ST1 내지 ST8)
스텝 ST1 내지 ST-SBN까지는 제1 실시 형태와 동일하므로 설명을 생략한다. 또한, 스텝 ST-SBN 후에, 전술한 스텝 ST6 내지 ST8을 실행해야한다.
(스텝 ST-BP)
클라이언트 장치(100a)에 있어서는, 서버 장치(200a)로부터 통지된 생체 인증 방식 정보를 포함하는 서버 생체 인증 교섭 메시지를 제어부(102a)가 통신부(101)에 의해 수신한다. 제어부(102a)는 서버 생체 인증 교섭 메시지 내의 생체 인증 방식 정보에 기초하여 생체 인증 처리 제어부(105a)를 기동한다. 생체 인증 처리 제어부(105a)는 생체 정보 취득부(107)를 제어하여 유저의 생체 정보를 취득하고, 얻어진 생체 정보를 제어부(102a)에 송출한다.
제어부(102a)는 생체 정보를 취득하면, 암호화부(111)에 의해 클라이언트 헬로 메시지 내의 난수 데이터 및 서버 헬로 메시지 내의 난수 데이터에 기초하여 암 호화용 파라미터를 생성하고, 이 암호화용 파라미터에 의해 생체 정보를 암호화하여, 암호화 생체 정보를 얻는다.
그런 뒤, 제어부(102a)는 이 암호화 생체 정보를 포함하는 생체 인증 처리(Biometric Process) 메시지(MBP)를 통신부(101)에 의해 서버 장치(200a)에 송신한다.
또한, 생체 정보를 암호화하는 방법은, 예를 들어 이하와 같은 방법을 사용하면 된다.
클라이언트 장치(100a)는 생체 정보를 암호화 및 압축하는 사양으로서, 클라이언트 헬로 메시지(MCH) 및 서버 헬로 메시지(MSH)에 의해 합의한 것을 사용한다.
또한, 클라이언트 장치(100a)는 생체 정보를 암호화하는 키(필요하다면 추가로 초기 벡터) 등의 파라미터를 표준 상태에서 사용하는 주요 파라미터(예, 클라이언트/서버 기입 MAC 시크릿, 클라이언트/서버 기입 키, 클라이언트/서버 기입 초기 벡터 등)와 마찬가지로 생성한다.
즉, 클라이언트 장치(100a)는 주지의 기술에 있어서의 메시지에 포함되는 서버 난수, 클라이언트 난수 및 프리마스터 시크릿을 사용하여, 해쉬 알고리즘에 기초하여 생체 정보의 암호화용 파라미터(암호화 키)를 생성한다. 구체적으로는, 제어부(102a)는 서버 난수, 클라이언트 난수 및 프리마스터 시크릿을 암호화부(111)의 의사 난수 생성 함수(pseudo-random function : PRF)에 입력하고, 얻어진 값을 마스터 시크릿으로 한다.
다음에, 마스터 시크릿, 서버 랜덤 및 클라이언트 랜덤을 마찬가지로 유사 난수 생성 함수 PRF에 입력하여 얻어진 값을 키 블록으로 하고, 이 키 블록을 필요한 크기로 분할하여 각 파라미터를 얻는다. 이때, 주지의 은닉 통신 프로토콜에서는, 원래 여분의 키 블록을 파기하지만, 여기에서는 암호화용 파라미터(기입 키, 기입 초기 벡터)분을 여분의 키 블록으로서 생성한다. 그런 뒤, 암호화부(111)는 이 암호화용 파라미터에 기초하여 생체 정보를 암호화하고, 얻어진 암호화 생체 정보를 제어부(102a)에 송출한다.
제어부(102a)는 이 암호화 생체 정보를 인증 결과(Authentication Result)의 확장 데이터(Extension Data)에 저장하여 생체 인증 처리(Biometric Process) 메시지(MBP)를 구성하여 서버 장치(200a)에 송신한다.
(스텝 ST-BV)
서버 장치(200a)에 있어서는, 이 생체 인증 처리 메시지(MBP)를 제어부(202a)가 통신부(201)에 의해 수신한다.
제어부(202a)는 암호화부(207)의 제어에 의해 클라이언트와 마찬가지로 각 난수로부터 암호화용 파라미터를 생성하고, 이 암호화용 파라미터에 기초하여 생체 인증 처리 메시지(MBP)에 포함되는 암호화 생체 정보를 복호하여 생체 정보를 얻는다.
제어부(202a)는 이 생체 정보를 생체 정보 검증부(212)에 송출한다. 생체 정보 검증부(212)는 이 생체 정보에 기초하여 서버 매칭을 행하고, 생체 인증의 결 과를 제어부(202a)에 송출한다.
그런 뒤, 제어부(202a)는 이 생체 인증의 결과를 포함하는 생체 인증 검증(Biometric Verify) 메시지(MBV)를 통신부(201)에 의해 클라이언트 장치(100a)에 송신한다.
(스텝 ST9 내지 ST13)
스텝 ST9 내지 ST13은 제1 실시 형태와 동일하므로 설명을 생략한다.
상술한 바와 같이 본 실시 형태에 따르면, 서버 매칭을 행하는 구성으로 변형해도 증명서 인증을 포함하는 합의 처리 중에 생체 인증까지 실행하는 구성에 의해 2회의 핸드쉐이크에 수반하는 불필요한 패스를 존재시키지 않고, 엔티티 인증 및 생체 인증에 기초한 시큐어 세션을 확립할 수 있다. 또한, 생체 인증에 실패한 경우에도 종래에 비해 불필요해진 처리를 저감할 수 있다.
또한, 합의 처리 중인 각 헬로 메시지에 포함되는 클라이언트 난수 및 서버 난수에 기초하여 생체 정보를 암호화하여 서버 장치(200a)에 송신하는 구성에 의해 증명서 인증을 포함하는 합의 처리와 생체 인증을 유기적으로 결합시키면서, 서버 매칭에 의한 생체 인증을 실현시킬 수 있다. 또한, 생체 인증에 의해 부정한 유저가 정당한 클라이언트 장치를 이용한 것처럼 가장하는 것을 방지할 수 있다.
또 제1 실시 형태에 있어서, 만약 암호화하여 생체 정보의 결과를 송신하는 경우에는 본 실시 형태와 동일한 시퀀스에 의해 실행함으로써 암호화하는 것도 가능하게 된다.
본 실시 형태에서는 클라이언트 장치(100a)에 의해 생체 정보를 취득하여 서버 장치(200a)에 송신하고, 서버 장치(200a)에 의해 유지하는 템플릿과 대조 처리를 행함으로써 생체 인증을 실행하지만, 클라이언트 장치(100a)로부터 취득한 생체 정보와 템플릿을 송신하여, 서버 장치(200a)에 의해 대조 처리를 행하는 실시 형태이어도 되어, 그 조합은 생체 인증의 실시 형태의 조합만큼 있다고 할 수 있다.
이상으로부터, 생체 정보를 서버 장치(200a)에 안전하게 보내어, 서버 장치(200a)에 있어서의 대조 결과에 기초하여 시큐어 세션을 확립하기 위한 메시지를 보내는 장치를 구성할 수 있음과 함께 및 생체 인증의 결과에 기초하여 시큐어 세션을 확립하기 위한 메시지의 작성을 실현할 수 있다.
보충하면, 종래의 TLS 프로토콜 또는 TLS 내부 어플리케이션 모두 클라이언트 장치가 생체 정보를 서버 장치에 송신하여, 서버 장치가 매칭에 의해 생체 인증을 행하여 시큐어 세션을 확립하는 경우, 생체 정보가 자격 증명 정보(신용할 수 있는 정보)이기 때문에, 생체 정보를 암호화하여 송신할 필요가 있다. 그러나, 단순히 종래의 TLS 핸드쉐이크 중에 있어서 생체 인증을 행하는 경우, 생체 정보를 시큐어 세션의 확립 전에 송신할 필요가 있으므로, 생체 정보를 암호화 등에 의해 보호하는 수단이 존재하지 않는다. 이에 대해, 본 실시 형태에서는 전술한 바와 같이 생체 정보를 암호화하여 송신함으로써 보호할 수 있다.
또한, 본 실시 형태는 「스텝 ST-CBN, ST-SBN」 및 「스텝 ST6 내지 ST8」의 순서를 변경해도 마찬가지로 실시하여 마찬가지의 효과를 얻을 수 있다. 단, 「스텝 ST-BP, ST-BV」는 움직일 수는 없다. 이유는, 데이터를 암호화하기 위해서는 「스텝 ST6 내지 ST8」의 패스가 필요하고 생체 인증 교섭을 하기 위해서는 「스텝 ST-CBN, ST-SBN」이 필요하기 때문이다.
구체적으로는 본 실시 형태는 「스텝 ST6 내지 ST8」, 「스텝 ST-CBN, ST-SBN」 및 「스텝 ST-BP, ST-BV」의 순서에 의해 실행할 수도 있다.
(제3 실시 형태)
도 17은 본 발명의 제3 실시 형태에 관한 인증 시스템의 구성을 도시하는 모식도이다.
제3 실시 형태는 제1 실시 형태의 변형예이며, 클라이언트 장치(100b)측에서 생체 인증을 행하고, 생체 인증의 결과에 기초하여 취득한 클라이언트 증명서를 서버 장치(200b)에 송신하여 클라이언트 인증을 행하는 실시 형태이다.
이에 수반하여, 클라이언트 장치(100b)는 도 1에 도시된 클라이언트 장치(100)에 비해, 전술한 기능이 변경된 제어부(102b) 및 인증 컨텍스트 생성부(109b)를 구비한 구성으로 되어 있다.
여기서, 제어부(102b)는 이하의 각 기능(f102b-1 내지 f102b-7)을 갖고 있다.
(f102b-1) 합의 처리 중에 유저의 생체 인증의 결과에 기초하여 클라이언트 증명서를 취득한다는 취지를 포함하는 클라이언트 헬로 메시지(제1 메시지)를 서버 장치(200b)에 통신부(101)를 통하여 송신하는 기능.
(f102b-2) 클라이언트 헬로 메시지의 송신 후, 서버 장치(200b)로부터 서버 난수를 포함하는 서버 헬로 메시지(제2 메시지)를 통신부(101)에 의해 수신하는 기 능.
(f102b-3) 서버 헬로 메시지의 수신 후, 생체 인증 처리 제어부(105)를 기동하는 기능.
(f102b-4) 암호화부(111)에 의해 서버 난수를 키 보존부(104) 내의 비밀 키에 기초하여 암호화하여, 암호화 난수를 생성하는 기능.
(f102b-5) 생체 인증 처리 제어부(105)에 의해 얻어진 생체 인증의 결과가 정당할 때 키 보존부(104) 내의 클라이언트 증명서를 서버 장치(200b)에 통신부(101)를 통하여 송신하는 기능.
(f102b-6) 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보 및 암호화 난수를 인증 컨텍스트 생성부(109b)에 송출하는 기능.
(f102b-7) 인증 컨텍스트 생성부(109b)로부터 받은 인증 컨텍스트를 서버 장치(200b)에 통신부(101)로부터 송신함으로써 합의 처리를 계속하는 기능.
인증 컨텍스트 생성부(109b)는 이하의 각 기능(f109b-1 내지 f109b-3)을 갖고 있다.
(f109b-1) 제어부(102b)로부터 받은 생체 인증의 결과 및 암호화 난수로부터 키 보존부(104) 내의 비밀 키에 기초하여 인증자를 생성하는 기능.
(f109b-2) 생체 인증의 결과 및 암호화 난수와 인증자를 포함하는 인증 컨텍스트를 생성하는 기능.
(f109b-3) 생성된 인증 컨텍스트를 제어부(102b)에 송출하는 기능.
여기서, 인증 컨텍스트의 일례로서는, 도 18에 도시된 바와 같이 전술한 도 3의 구성에 비해, 클라이언트 증명서 블록(pc)을 생략한 것으로 해도 좋다. 데이터 블록(pd)은, 예를 들어 생체 인증의 결과 및 암호화 난수를 포함하고 있지만, 전술과는 달리 생체 인증 방식 정보를 생략해도 좋다. 생체 인증 방식 정보가 생략 가능한 것은, 전술과는 달리 생체 인증 교섭 스텝이 없어, 임의의 생체 인증 방식을 사용 가능한 것에 의한다.
마찬가지로, 서버 장치(200b)는 도 1에 도시된 서버 장치(200)에 비해, 전술한 기능이 변경된 제어부(202b) 및 인증 컨텍스트 검증부(205b)를 구비한 구성으로 되어 있다.
제어부(202b)는 이하의 각 기능(f202b-1 내지 f202b-7)을 갖고 있다.
(f202b-1) 합의 처리 중에 유저의 생체 인증의 결과에 기초하여 클라이언트 증명서를 취득한다는 취지를 포함하는 클라이언트 헬로 메시지(제1 메시지)를 클라이언트 장치(100b)로부터 통신부(201)를 통하여 수신하는 기능.
(f202b-2) 클라이언트 헬로 메시지의 수신 후, 서버 난수를 포함하는 서버 헬로 메시지(제2 메시지)를 클라이언트 장치(100b)에 통신부(201)를 통하여 송신하는 기능.
(f202b-3) 서버 헬로 메시지의 송신 후, 클라이언트 장치(100b)로부터 클라이언트 증명서를 통신부(201)에 의해 수신하는 기능.
(f202b-4) 서버 헬로 메시지의 송신 후, 유저의 생체 인증의 결과와 암호화 난수와 인증자를 포함하는 인증 컨텍스트를 클라이언트 장치(100b)로부터 통신부(201)를 통하여 수신하는 기능.
(f202b-5) 수신된 클라이언트 증명서 및 인증 컨텍스트를 키 보존부(204)에 기입하는 기능.
(f202b-6) 인증 컨텍스트 검증부(205b)를 기동하는 기능.
(f202b-7) 인증 컨텍스트 검증부(205b)로부터 받은 검증 결과에 따라 합의 처리를 계속하거나 또는 중단하는 기능.
인증 컨텍스트 검증부(205b)는 제어부(202b)에 기동되면 키 보존부(204) 내의 인증 컨텍스트를 검증하여 이하의 (i) 내지 (ⅲ) 중 어느 한 경우에는 합의 처리를 중단한다는 취지의 검증 결과를 제어부(202b)에 송출하는 기능과, 당해 (i) 내지 (ⅲ) 이외일 때 합의 처리를 계속한다는 취지의 검증 결과를 제어부(202b)에 송출하는 기능을 갖고 있다.
(i) 키 보존부(204)에 기억된 인증 컨텍스트 내의 생체 인증의 결과가 부정을 나타낼 때. (ⅱ) 키 보존부(204)에 기억된 인증 컨텍스트 내의 암호화 난수를 클라이언트 증명서 내의 공개 키에 기초하여 복호하여, 얻어진 난수가 서버 헬로 메시지 내의 난수와 서로 다를 때. (ⅲ) 키 보존부(204)에 기억된 클라이언트 증명서 내의 공개 키에 기초하여 인증자를 검증하여, 검증 결과가 부정을 나타낼 때.
다음에, 이상과 같이 구성된 인증 시스템의 동작을 도 19의 시퀀스도를 사용하여 설명한다.
(스텝 ST1)
클라이언트 장치(100b)는 핸드쉐이크의 확장 처리가 있는 것을 통지하기 위 해, 확장한 클라이언트 헬로 메시지(MCH)를 제어부(102b)가 통신부(101)에 의해 서버 장치(200b)에 송신한다.
클라이언트 헬로 메시지(MCH)의 확장(Extension) 리스트에서는, 클라이언트 장치(100b)의 클라이언트 증명서를 생체 인증의 결과에 기초하여 취득한 것과, 생체 인증의 결과를 송부하는 것을 서버 장치(200b)에 통지한다.
(스텝 ST2)
서버 장치(200b)에 있어서는, 클라이언트 헬로 메시지(MCH)를 통신부(201)에 의해 제어부(202b)가 수신한다. 제어부(202b)는 핸드쉐이크의 확장 처리에 대하여 양해한다는 취지를 통지하기 위해, 확장한 서버 헬로 메시지(MSH)를 통신부(201)에 의해 클라이언트 장치(100b)에 송신한다.
(스텝 ST3 내지 ST5)
스텝 ST3 내지 ST5까지는 제1 실시 형태와 동일하므로 설명을 생략한다.
(스텝 ST-BP1)
클라이언트 장치(100b)에 있어서는, 스텝 ST5의 서버 헬로 종료(Server Hello Done) 메시지를 제어부(102b)가 통신부(101)에 의해 수신하면 제어부(102b)가 생체 인증 처리 제어부(105)를 기동한다. 생체 인증 처리 제어부(105)는 각 부(106 내지 108)를 제어하여 유저의 생체 인증 처리를 실행하고, 얻어진 생체 인증의 결과를 제어부(102b)에 송출한다.
제어부(102b)는 생체 인증의 결과가 정당할 때, 합의 처리를 계속하여 스텝 ST6으로 이행한다. 또한, 여기에서의 생체 인증 방식은 제1 실시 형태와는 달리, 서버 장치(200b)와의 생체 인증 교섭 스텝을 거치지 않고, 임의의 생체 인증 방식을 사용하고 있다.
(스텝 ST6)
클라이언트 장치(100b)에 있어서는, 제어부(102b)가 키 보존부(104) 내의 클라이언트 증명서를 포함하는 클라이언트 증명서(Client Certificate) 메시지를 통신부(101)에 의해 서버 장치(200)에 송신한다.
(스텝 ST7 및 ST8)
스텝 ST7 및 ST8은 제1 실시 형태와 동일하므로 설명을 생략한다.
(스텝 ST-BP2)
제어부(102b)는 암호화부(111)에 의해 서버 헬로(Server Hello) 메시지(MSH)에 포함되는 난수 데이터를 키 보존부(104) 내의 비밀 키에 기초하여 암호화하여, 암호화 난수를 생성한다. 이 암호화 난수는, 제어부(102b)로부터 인증 컨텍스트 생성부(109b)에 송출된다. 또한, 제어부(102b)는 스텝 ST6에서 취득한 생체 인증의 결과도 인증 컨텍스트 생성부(109b)에 송출한다.
인증 컨텍스트 생성부(109b)는 생체 인증의 결과와 암호화 난수로부터 키 보존부(104) 내의 비밀 키에 기초하여 인증자를 생성한다.
그런 뒤, 인증 컨텍스트 생성부(109b)는 생체 인증의 결과 및 생체 인증 처리의 정당성을 보증하기 위한 취득된 생체 정보(샘플)나 참조된 생체 정보(템플릿) 및 참조된 생체 정보의 증명서(템플릿 증명서) 등의 각종 정보와 암호화 난수와 인증자를 포함하는 인증 컨텍스트를 생성하고, 이 인증 컨텍스트를 제어부(102b)에 송출한다.
제어부(102b)는 이 인증 컨텍스트를 포함하는 생체 인증 처리(Biometric Process) 메시지(MBP)를 통신부(101)에 의해 서버 장치(200b)에 송신한다. 이에 의해 합의 처리는 계속된다.
또한, 만약 암호화할 필요가 있으면, 제2 실시 형태와 마찬가지의 처리를 행함으로써 인증 컨텍스트를 암호화하여 송신하는 것도 가능하다.
(스텝 ST-BV)
서버 장치(200b)에 있어서는, 생체 인증 처리 메시지(MBP)를 제어부(202b)가 통신부(201)에 의해 수신하면 제어부(202b)가 생체 인증 처리 메시지(MBP) 내의 인증 컨텍스트를 인증 컨텍스트 검증부(205b)에 송출한다.
인증 컨텍스트 검증부(205b)는 인증 컨텍스트를 검증하고, 검증 결과를 제어부(202b)에 송출한다. 제어부(202b)는 인증 컨텍스트의 검증 결과에 따라 합의 처리를 계속하거나 또는 중단한다. 합의 처리를 중단하는 경우의 검증 결과로서는, 예를 들어 (i) 키 보존부(204)에 기억된 인증 컨텍스트 내의 생체 인증의 결과가 부정을 나타낼 때, (ⅱ) 키 보존부(204)에 기억된 인증 컨텍스트 내의 암호화 난수를 클라이언트 증명서 내의 공개 키에 기초하여 복호하여, 얻어진 난수가 서버 헬로 메시지 내의 난수와 서로 다를 때, (ⅲ) 키 보존부(204)에 기억된 클라이언트 증명서 내의 공개 키에 기초하여 인증자를 검증하여, 검증 결과가 부정을 나타낼 때, 등이 있다. 또한, 여기에서는 합의 처리를 계속하는 검증 결과를 얻었다고 한다.
제어부(202b)는 검증된 결과를 통지하기 위해, 인증 컨텍스트의 검증 결과를 나타내는 인증 결과(Authentication Result), 생체 인증 처리의 정보를 저장하는 인증 정보(Authenticate Info) 및 이들 항목에 대하여 서버의 비밀 키에 의해 작성된 서명(Signature)이 포함된 생체 인증 검증(Biometric Verify) 메시지(MBV)를 통신부(201)에 의해 클라이언트 장치(100b)에 송신한다.
(스텝 ST9 내지 ST13)
스텝 ST9 내지 ST13은 제1 실시 형태와 동일하므로 설명을 생략한다.
상술한 바와 같이 본 실시 형태에 따르면, 생체 인증에 의해 클라이언트 증명서를 취득하여 서버 장치(200b)에 송신하는 구성으로 변형해도 전술한 바와 마찬가지로 증명서 인증을 포함하는 합의 처리 중에 생체 인증까지 실행하는 구성에 의해 2회의 핸드쉐이크에 수반하는 불필요한 패스를 존재시키지 않고, 엔티티 인증 및 생체 인증에 기초한 시큐어 세션을 확립할 수 있다. 또한, 생체 인증에 실패한 경우에도 종래에 비해 불필요해진 처리를 저감할 수 있다.
또한, 유저의 생체 인증의 결과에 기초하여 클라이언트 증명서를 취득한다는 취지를 포함하는 클라이언트 메시지를 서버 장치(200b)에 송신하는 구성에 의해 생체 인증에 기초하여 취득한 클라이언트 증명서를 사용하여 시큐어 세션을 확립하고 있는 것을 서버 장치(200b)가 검증할 수 있다. 또한, 생체 인증에 의해 부정한 유저가 정당한 클라이언트 장치를 이용한 것처럼 가장하는 것을 방지할 수 있다.
이상으로부터, 생체 인증의 결과에 기초하여 취득한 증명서를 사용하여 시큐어 세션을 확립하기 위한 메시지를 보내는 장치를 구성할 수 있음과 함께 및 생체 인증의 결과에 기초하여 취득하여 증명서를 사용하여 시큐어 세션을 확립하기 위한 메시지의 작성을 실현할 수 있다.
보충하면, 종래의 TLS 프로토콜 또는 TLS 내부 어플리케이션 모두 엔티티 장치가 유지하는 증명서에 기초하여 엔티티 인증을 행하여 시큐어 세션을 확립할 때에 엔티티 장치의 증명서를 생체 인증의 결과에 기초하여 취득하고 있는 경우, 그것을 서버에 통지하는 수단이 TLS 핸드쉐이크에는 존재하지 않는다. 이에 대해, 본 실시 형태에서는, 전술한 바와 같이 엔티티 장치(클라이언트 장치(100b))의 증명서를 생체 인증의 결과에 기초하여 취득하고 있던 것을 서버 장치(200b)에 통지할 수 있다.
또한, 본 실시 형태는 「스텝 ST6 내지 ST8」 및 「스텝 ST-BP, ST-BV」의 순서를 변경하여 「스텝 ST-BP, ST-BV」 및 「스텝 ST6 내지 ST8」의 순서로 실행해도 마찬가지의 효과를 얻을 수 있다.
(제4 실시 형태)
도 20은 본 발명의 제4 실시 형태에 관한 인증 시스템의 구성을 도시하는 모식도이다.
제4 실시 형태는, 제1 실시 형태의 변형예이며, 합의 처리 전에 미리 인증 컨텍스트에 타임스탬프를 작성해 두는 실시 형태이다. 또한, 타임스탬프는, 예를 들어 RFC3161에 준거한 타임스탬프 서비스(예를 들어, C.Adams, P.Cain, D.Pinkas, R.Zuccherato, "InternetX.509 Public Key Infrastructure Time-Stamp Protocol(TSP)", <URL:http://www.ietf.org/rfc/rfc3161.txt> 참조)를 이용하여 작성해도 좋다.
이에 수반하여, 클라이언트 장치(100c)는 도 1에 도시된 클라이언트 장치(100)에 비해, 타임스탬프 부여부(115)가 부가되고, 전술한 기능이 변경된 제어부(102c) 및 인증 컨텍스트 생성부(109c)를 구비한 구성으로 되어 있다.
여기서, 제어부(102c)는 이하의 각 기능(102c-1 내지 102c-6)을 갖고 있다.
(102c-1) 합의 처리 전에 생체 인증 처리 제어부(105)를 기동하는 기능.
(102c-2) 생체 인증 처리 제어부(105)로부터 받은 생체 인증의 결과를 인증 컨텍스트 생성부(109c)에 송출하는 기능.
(102c-3) 인증 컨텍스트 생성부(109c)로부터 받은 인증 컨텍스트를 타임스탬프 부여부(115)에 송출하는 기능.
(102c-4) 타임스탬프가 부여된 인증 컨텍스트를 타임스탬프 부여부(115)로부터 받는 기능.
(102c-5) 합의 처리 중에 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 작성하고, 이 생체 인증 교섭 메시지를 서버 장치(200c)에 통신부(101)를 통하여 송신하는 기능.
(102c-6) 생체 인증 교섭 메시지의 송신 후, 서버 장치(200c)로부터 통지된 생체 인증 방식 정보에 기초하여 전술한 타임스탬프가 부여된 인증 컨텍스트를 서버 장치(200c)에 통신부(101)를 통하여 송신함으로써 합의 처리를 계속하는 기능.
인증 컨텍스트 생성부(109c)는 이하의 각 기능(109c-1 내지 109c-3)을 갖고 있다.
(109c-1) 제어부(102c)로부터 생체 인증의 결과를 받으면 당해 생체 인증의 결과와 보안 정책 보존부(103) 내의 생체 인증 방식 정보와 키 보존부(104) 내의 클라이언트 증명서로부터 클라이언트 비밀 키에 기초하여 인증자를 생성하는 기능.
(109c-2) 합의 처리 전에 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보와 생체 인증 방식 정보와 클라이언트 증명서와 인증자를 포함하는 인증 컨텍스트를 생성하는 기능.
(109c-3) 이 인증 컨텍스트를 제어부(102c)에 송출하는 기능.
타임스탬프 부여부(115)는 이하의 각 기능(f115-1 내지 f115-3)을 갖고 있다.
(f115-1) 제어부(102c)로부터 인증 컨텍스트를 받으면 합의 처리 전에 인증 컨텍스트를 타임스탬프 제공 장치(300)에 통신부(101)를 통하여 송신하는 기능.
(f115-2) 송신된 인증 컨텍스트 및 타임스탬프 제공 장치(300)에 있어서의 일시 정보에 대하여 당해 타임스탬프 제공 장치(300)의 타임스탬프 비밀 키에 기초하여 생성된 타임스탬프가 부여됨으로써 타임스탬프가 부여된 인증 컨텍스트를 타임스탬프 제공 장치(300)로부터 통신부(101)를 통하여 수신하는 기능.
(f115-3) 이 타임스탬프가 부여된 인증 컨텍스트를 제어부(102c)에 송출하는 기능.
또한, 타임스탬프의 부여 방법은 임의의 방식이 사용 가능하지만, 여기에서는 외부의 타임스탬프 제공 장치(300)에 의뢰하여 부여하는 방식을 사용하고 있다.
타임스탬프 제공 장치(300)는 타임스탬프 공개 키 및 타임스탬프 비밀 키를 기억 장치(도시하지 않음)에 유지하고 있으며, 이하의 각 기능(f300-1 내지 f300-3)을 갖고 있다.
(f300-1) 클라이언트 장치(100c)로부터 인증 컨텍스트를 수신하면 이 인증 컨텍스트에 현재의 일시 정보를 부가한 정보에 대하여 타임스탬프 비밀 키에 기초하여 타임스탬프(디지털 서명)를 생성하는 기능.
(f300-2) 이 타임스탬프를 부여한 인증 컨텍스트를 클라이언트 장치(100c)에 회신하는 기능.
(f300-3) 서버 장치(200c)로부터 요구를 받으면 타임스탬프 공개 키를 서버 장치(200c)에 송신하는 기능.
한편, 서버 장치(200c)는 도 1에 도시된 서버 장치(200)에 비해, 타임스탬프 검증부(213)가 부가되고, 전술한 기능이 변경된 제어부(202c) 및 인증 컨텍스트 검증부(205c)를 구비한 구성으로 되어 있다.
제어부(202c)는 이하의 각 기능(f202c-1 내지 f202c-6)을 갖고 있다.
(f202c-1) 합의 처리 중에 클라이언트 장치(100c)의 생체 인증 방식을 나타내는 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 클라이언트 장치(100c)로부터 통신부(201)를 통하여 수신하는 기능.
(f202c-2) 생체 인증 교섭 메시지 내의 생체 인증 방식 정보가 보안 정책 보존부(203) 내의 각 생체 인증 방식 정보 중 어디에 일치하는지의 여부를 판정하는 기능.
(f202c-3) 판정의 결과가 일치를 나타낼 때 당해 생체 인증 방식 정보를 클라이언트 장치(100c)에 통신부(201)를 통하여 통지하는 기능.
(f202c-4) 통지 후, 타임스탬프 제공 장치(300)의 비밀 키에 의한 타임스탬프가 부여되고 또한 유저의 생체 인증의 결과, 생체 인증 방식 정보, 클라이언트 증명서 및 인증자를 포함하는 인증 컨텍스트를 클라이언트 장치(100c)로부터 통신부(201)를 통하여 수신하는 기능.
(f202c-5) 이 타임스탬프가 부여된 인증 컨텍스트 중, 타임스탬프를 타임스탬프 검증부(213)에 송출함과 함께 인증 컨텍스트를 인증 컨텍스트 검증부(205c)에 송출하는 기능.
(f202c-6) 각 검증부(213, 205c)로부터 받은 검증 결과에 기초하여 합의 처리를 계속하거나 또는 중단하는 기능.
인증 컨텍스트 검증부(205c)는 제어부(202c)로부터 받은 인증 컨텍스트를 검증하여 이하의 (i) 내지 (ⅲ) 중 어느 한 경우에는 합의 처리를 중단한다는 취지의 검증 결과를 제어부(202c)에 송출하는 기능과, 상기 (i) 내지 (ⅲ) 이외일 때 합의 처리를 계속한다는 취지의 검증 결과를 제어부(202c)에 송출하는 기능을 갖고 있다.
(i) 인증 컨텍스트 내의 생체 인증의 결과가 부정을 나타낼 때. (ⅱ) 인증 컨텍스트 내의 생체 인증 방식 정보가 통지된 생체 인증 방식과는 서로 다를 때. (ⅲ) 클라이언트 증명서 내의 공개 키에 기초하여 인증자를 검증하여, 검증 결과가 부정을 나타낼 때.
타임스탬프 검증부(213)는 타임스탬프 제공 장치(300)의 타임스탬프 비밀 키에 대응하는 타임스탬프 공개 키를 미리 기억 장치(도시하지 않음)에 유지하고 있다. 타임스탬프 검증부(213)는 이하의 각 기능(f213-1 내지 f213-3)을 갖고 있다.
(f213-1) 제어부(202c)로부터 타임스탬프를 받으면 타임스탬프 공개 키에 기초하여 당해 타임스탬프를 복호하는 기능.
(f213-2) 복호하여 얻어진 일시 정보와 현재의 일시 정보의 차분이 미리 정한 값보다도 클 때 합의 처리를 중단한다는 취지의 검증 결과를 제어부(202c)에 송출하는 기능.
(f213-3) 당해 차분이 미리 정한 값 이하일 때 합의 처리를 계속한다는 취지의 검증 결과를 제어부(202c)에 송출하는 기능.
또한, 타임스탬프의 검증 방법은 타임스탬프 제공 장치(300)의 공개 키를 취득하여 타임스탬프 검증부(213)가 검증하는 방식에 한하지 않고, 타임스탬프 제공 장치(300)에 검증을 의뢰하거나 하도록, 타임스탬프의 부여 방법에 대응하는 임의의 검증 방식이 사용 가능하게 되어 있다.
(전체의 시퀀스)
다음에, 이상과 같이 구성된 인증 시스템의 동작을 도 21의 시퀀스도를 사용하여 설명한다.
(스텝 ST0)
클라이언트 장치(100c)는 유저의 생체 인증을 미리 실행하고, 그 생체 인증의 결과를 포함하는 인증 컨텍스트를 생성하고, 인증 컨텍스트에 대하여 기존의 기술을 사용하여 타임스탬프를 부여한다.
구체적으로는 예를 들어, 클라이언트 장치(100c)에 있어서는 제어부(102c)가 합의 처리 전에 생체 인증 처리 제어부(105)를 기동한다. 생체 인증 처리 제어부(105)는 각 부(106 내지 108)를 제어하여 유저의 생체 인증 처리를 실행하고, 얻어진 생체 인증의 결과를 제어부(102c)에 송출한다.
제어부(102c)는 생체 인증의 결과를 인증 컨텍스트 생성부(109c)에 송출한다.
인증 컨텍스트 생성부(109c)는 이 생체 인증의 결과와 보안 정책 보존부(103) 내의 생체 인증 방식 정보와 키 보존부(104) 내의 클라이언트 증명서로부터 클라이언트 비밀 키에 기초하여 인증자를 생성한다.
그런 뒤, 인증 컨텍스트 생성부(109c)는 생체 인증의 결과 및 생체 인증 처리의 정당성을 보증하기 위한 취득된 생체 정보(샘플)나 참조된 생체 정보(템플릿) 및 참조된 생체 정보의 증명서(템플릿 증명서) 등의 각종 정보와 생체 인증 방식 정보와 클라이언트 증명서와 인증자를 포함하는 인증 컨텍스트를 생성하고, 이 인증 컨텍스트를 제어부(102c)에 송출한다.
제어부(102c)는 이 인증 컨텍스트를 타임스탬프 부여부(115)에 송출한다.
타임스탬프 부여부(115)는 이 인증 컨텍스트를 타임스탬프 제공 장치(300)에 통신부(101)를 통하여 송신한다.
타임스탬프 제공 장치(300)는 이 인증 컨텍스트에 일시 정보를 부가한 정보에 대하여, 당해 타임스탬프 제공 장치(300)의 타임스탬프 비밀 키에 기초하여 타임스탬프를 생성하고, 이 타임스탬프를 인증 컨텍스트에 부여한다.
또한, 타임스탬프 제공 장치(300)는 이 타임스탬프를 부여한 인증 컨텍스트를 클라이언트 장치(100c)에 송신한다.
클라이언트 장치(100c)에 있어서는 타임스탬프 부여부(115)가 이 타임스탬프가 부여된 인증 컨텍스트를 통신부(101)에 의해 수신하면 이 타임스탬프가 부여된 인증 컨텍스트를 제어부(102c)에 송출한다.
제어부(102c)는 이 타임스탬프가 부여된 인증 컨텍스트를 기억 장치(도시하지 않음)에 보존한다.
(스텝 ST1)
클라이언트 장치(100c)는 핸드쉐이크의 확장 처리가 있는 것을 통지하기 위해 확장한 클라이언트 헬로 메시지(MCH)를 제어부(102c)가 통신부(101)에 의해 송신한다.
클라이언트 헬로 메시지(MCH)의 확장(Extension) 리스트에서는 타임스탬프를 부여한 인증 컨텍스트를 사용하여 클라이언트 인증을 행하는 것을 통지한다.
(스텝 ST2)
서버 장치(200c)는 클라이언트 헬로 메시지(MCH)를 통신부(201)에 의해 제어 부(202c)가 수신한다. 제어부(202c)는 핸드쉐이크의 확장 처리에 대하여 양해한 것을 통지하기 위해 확장한 서버 헬로 메시지(MSH)를 통신부(201)에 의해 클라이언트 장치(100c)에 송신한다.
(스텝 ST3 내지 ST5)
스텝 ST3 내지 ST5까지는 제1 실시 형태와 동일하므로 설명을 생략한다.
(스텝 ST-CBN)
클라이언트 장치(100c)에 있어서는, 클라이언트 장치(100c)에 의해 미리 실행한 생체 인증의 생체 인증 방식을 서버에 통지하기 위해 제어부(102)가 통신부(101)에 의해 생체 인증 방식 정보를 포함하는 클라이언트 생체 인증 교섭(Client Biometric Negotiation) 메시지(MCBN)를 송신한다.
클라이언트 생체 인증 교섭 메시지(MCBN)는 도 11에 도시된 바와 같이 생체 인증 방식 정보를 리스트로 한 생체 인증 방식 리스트(Biometric Method List)를 포함하고 있다.
(스텝 ST-SBN)
서버 장치(200c)에 있어서는, 클라이언트 생체 인증 교섭 메시지를 제어부(202c)가 통신부(201)에 의해 수신하면 제어부(202c)가 클라이언트 생체 인증 교섭 메시지 내의 생체 인증 방식 리스트의 생체 인증 방식 정보가 보안 정책 보존부(203) 내의 생체 인증 방식 정보 중 어디에 일치하는지의 여부를 판정한다.
제어부(202c)는 판정의 결과가 일치를 나타낼 때 당해 생체 인증 방식 정보 를 포함하는 서버 생체 인증 교섭(Server Biometric Negotiation) 메시지(MSBN)를 통신부(201)에 의해 클라이언트 장치(100c)에 송신한다. 여기서 선택한 방식은 복수이어도 좋다.
가령, 미리 실행한 생체 인증 방식이 서버의 정책을 만족하지 않는 경우에는 주지의 기술인 TLS 핸드쉐이크에 있어서의 경고(Alert)를 되보냄으로써 핸드쉐이크 처리를 중지시킨다.
(스텝 ST-BP)
클라이언트 장치(100c)에 있어서는, 서버 생체 인증 교섭 메시지를 제어부(102)가 통신부(101)에 의해 수신하면 제어부(102)가 서버 생체 인증 교섭 메시지 내의 생체 인증 방식 정보에 기초하여 해당하는 인증 컨텍스트를 포함하는 생체 인증 처리(Biometric Process) 메시지(MBP)를 통신부(101)에 의해 서버 장치(200)에 송신한다.
생체 인증 처리 메시지(MBP)는, 도 13에 도시된 바와 같이 인증 결과(Authentication Result)를 포함하고 있다. 인증 결과(Authentication Result)에는 미리 작성한 타임스탬프가 부여된 인증 컨텍스트가 포함된다.
(스텝 ST-BV)
서버 장치(200c)는 생체 인증 처리 메시지(MBP)를 제어부(202c)가 통신부(201)에 의해 수신하면 제어부(202c)가 생체 인증 처리 메시지(MBP) 내의 타임스 탬프가 부여된 인증 컨텍스트 중 타임스탬프를 타임스탬프 검증부(213)에 송출함과 함께 인증 컨텍스트를 인증 컨텍스트 검증부(205c)에 송출한다.
타임스탬프 검증부(213)는 타임스탬프를 검증하여, 검증 결과를 제어부(202c)에 송출한다. 인증 컨텍스트 검증부(205c)는 인증 컨텍스트를 검증하여, 검증 결과를 제어부(202c)에 송출한다.
제어부(202c)는 각 검증부(213, 205c)로부터 받은 검증 결과에 기초하여 합의 처리를 계속하거나 또는 중단한다. 합의 처리를 중단하는 경우의 검증 결과로서는, 예를 들어 (i) 인증 컨텍스트 내의 생체 인증의 결과가 부정을 나타낼 때, (ⅱ) 인증 컨텍스트 내의 생체 인증 방식 정보가, 통지된 생체 인증 방식과는 서로 다를 때, (ⅲ) 클라이언트 증명서 내의 공개 키에 기초하여 인증자를 검증하여, 검증 결과가 부정을 나타낼 때, 또는 (ⅳ) 타임스탬프를 복호하여 얻어진 일시 정보와 현재의 일시 정보의 차분이 미리 정한 값보다도 클 때, 등이 있다. 또한, 여기에서는 합의 처리를 계속한다는 취지의 검증 결과를 얻었다고 한다.
제어부(202c)는 검증된 결과를 통지하기 위해 도 14에 도시된 바와 같이 타임스탬프가 부여된 인증 컨텍스트의 검증 결과(Authentication Result), 생체 인증 처리의 정보를 저장하는 인증 처리 정보 저장 영역(Authenticate Info) 및 이들 항목에 대하여 서버의 비밀 키에 의해 작성된 서명(Signature)이 포함된 생체 인증 검증(Biometric Verify) 메시지(MBV)를 송신한다.
(스텝 ST6 내지 ST13)
스텝 ST6 내지 ST13은 제1 실시 형태와 동일 동작을 하므로 설명을 생략한다.
상술한 바와 같이 본 실시 형태에 따르면, 미리 생체 인증을 실행하여 생성한 인증 컨텍스트에 타임스탬프를 부여해 두는 구성으로 변형해도 전술한 바와 마찬가지로 증명서 인증을 포함하는 합의 처리 중에 생체 인증까지 실행하는 구성에 의해 2회의 핸드쉐이크에 수반하는 불필요한 패스를 존재시키지 않고, 엔티티 인증 및 생체 인증에 기초한 시큐어 세션을 확립할 수 있다. 또한, 생체 인증에 실패한 경우에도 종래에 비해 불필요해진 처리를 저감할 수 있다.
또한, 합의 처리 전에 타임스탬프를 부여한 인증 컨텍스트를 생성해 두고, 합의 처리 중에 당해 타임스탬프를 부여한 인증 컨텍스트를 서버 장치(200c)에 송신하는 구성에 의해 합의 처리를 중단하지 않고 미리 작성한 인증 컨텍스트에 기초하여 시큐어 세션을 확립할 수 있다. 또한, 인증 컨텍스트에 부여된 타임스탬프에 의해 재송 공격을 방지할 수 있다.
또한, 미리 작성한 인증 컨텍스트에 기초하여 시큐어 세션을 확립하기 위한 메시지를 보내는 장치를 구성할 수 있음과 함께 및 미리 작성한 인증 컨텍스트에 기초하여 시큐어 세션을 확립하기 위한 메시지의 작성을 실현할 수 있다.
또한, 클라이언트 장치(100c)와 서버 장치(200c) 사이에서 핸드쉐이크 처리를 중단하지 않고 미리 작성한 인증 컨텍스트를 사용하여 시큐어 세션을 확립할 수 있다.
보충하면, 종래의 TLS의 프로토콜 중에 있어서 생체 인증을 행하는 경우에는 재송 공격 등을 방지하는 의미로부터 프로토콜 중에서 얻은 챌린지를 사용하여 생체 인증을 행할 필요가 있다.
따라서, 종래의 TLS 프로토콜에서는 처리를 일단 중단하고, 예를 들어 대조 처리를 행하기 위하여 유저의 생체 정보를 취득할 필요가 있다. 이로 인해, 종래의 TLS 프로토콜에서는 생체 인증에 기초하여 시큐어 세션을 확립하는 경우, 클라이언트 장치와 서버 장치에 의해 일련의 동작으로서 처리를 실행할 수 없어, 핸드쉐이크가 중단되어버린다.
이에 대해, 본 실시 형태에서는 전술한 바와 같이 핸드쉐이크 처리를 중단하지 않고 미리 작성한 인증 컨텍스트를 사용하여 시큐어 세션을 확립할 수 있다.
또한, 본 실시 형태는 「스텝 ST-CBN, ST-SBN」, 「스텝 ST-BP, ST-BV」 및 「스텝 ST6 내지 ST8」의 순서를 변경해도 마찬가지로 실시하여 마찬가지의 효과를 얻을 수 있다. 단, 「스텝 ST-CBN, ST-SBN」은 「스텝 ST-BP, ST-BV」보다도 먼저 실행할 필요가 있다.
구체적으로는 본 실시 형태는 「스텝 ST-CBN, ST-SBN」, 「스텝 ST6 내지 ST8」 및 「스텝 ST-BP, ST-BV」의 순서로 실행할 수도 있다. 또한, 본 실시 형태는 「스텝 ST6 내지 ST8」, 「스텝 ST-CBN, ST-SBN」 및 「스텝 ST-BP, ST-BV」의 순서로 실행할 수도 있다.
또한, 상기 실시 형태에 기재한 방법은 컴퓨터에 실행시킬 수 있는 프로그램으로서 자기 디스크(플로피(등록 상표) 디스크, 하드 디스크 등), 광 디스크(CD-ROM, DVD 등), 광자기 디스크(MO), 반도체 메모리 등의 기억 매체에 저장하여 반포 할 수도 있다.
또한, 이 기억 매체로서는 프로그램을 기억할 수 있으며, 또한 컴퓨터가 판독 가능한 기억 매체이면, 그 기억 형식은 어떤 형태이든 좋다.
또한, 기억 매체로부터 컴퓨터에 인스톨된 프로그램의 지시에 기초하여 컴퓨터 상에서 가동하고 있는 OS(오퍼레이팅 시스템)나, 데이터베이스 관리 소프트, 네트워크 소프트 등의 MW(미들웨어) 등이 상기 실시 형태를 실현하기 위한 각 처리의 일부를 실행해도 좋다.
또한, 본 발명에 있어서의 기억 매체는 컴퓨터와 독립된 매체에 한하지 않고, LAN이나 인터넷 등에 의해 전송된 프로그램을 다운로드하여 기억 또는 일시 기억한 기억 매체도 포함된다.
또한, 기억 매체는 하나에 한하지 않고, 복수의 매체로부터 상기 실시 형태에 있어서의 처리가 실행되는 경우도 본 발명에 있어서의 기억 매체에 포함되고, 매체 구성은 어떤 구성이든 좋다.
또한, 본 발명에 있어서의 컴퓨터는, 기억 매체에 기억된 프로그램에 기초하여 상기 실시 형태에 있어서의 각 처리를 실행하는 것이며, 퍼스널 컴퓨터 등의 하나를 포함하는 장치, 복수의 장치가 네트워크 접속된 시스템 등의 어느 구성이든 좋다.
또한, 본 발명에 있어서의 컴퓨터란, 퍼스널 컴퓨터에 한하지 않고, 정보 처리 기기에 포함되는 연산 처리 장치, 마이크로컴퓨터 등도 포함하고, 프로그램에 의해 본 발명의 기능을 실현하는 것이 가능한 기기, 장치를 총칭하고 있다.
또한, 본원 발명은 상기 실시 형태 그대로 한정되는 것은 아니며, 실시 단계에서는 그 요지를 일탈하지 않는 범위에서 구성 요소를 변형하여 구체화할 수 있다. 또한, 상기 실시 형태에 개시되어 있는 복수의 구성 요소의 적당한 조합에 의해 다양한 발명을 형성할 수 있다. 예를 들어, 실시 형태에 기재된 전체 구성 요소로부터 몇개의 구성 요소를 삭제해도 좋다. 또한, 다른 실시 형태에 관한 구성 요소를 적절하게 조합해도 좋다.
이상 설명한 바와 같이 본 발명에 따르면, 증명서 인증을 포함하는 합의 처리 중에 생체 인증까지 실행하는 구성에 의해 2회의 핸드쉐이크에 수반하는 불필요한 패스를 존재시키지 않고, 엔티티 인증 및 생체 인증에 기초한 시큐어 세션을 확립할 수 있다. 또한, 생체 인증에 실패한 경우에도 종래에 비해 불필요해진 처리를 저감할 수 있다.

Claims (16)

  1. 유저의 조작에 의해 서버 장치(200)와의 사이에서 네트워크를 통하여 은닉 통신을 하기 전에, 상기 서버 장치와의 사이에서 서로의 증명서 인증을 포함하는 합의 처리를 실행하여 상기 증명서 인증의 결과가 정당할 때 상기 은닉 통신을 하기 위한 세션 확립이 가능한 클라이언트 장치(100)로서,
    상기 유저를 생체 인증하도록 구성된 생체 인증 디바이스(105, 106, 107, 108)와,
    공개 키를 포함하는 클라이언트 증명서가 기억된 증명서 기억 디바이스(104)와,
    상기 공개 키에 대응하는 비밀 키가 기억된 비밀 키 기억 디바이스(104)와,
    상기 생체 인증 디바이스의 생체 인증 방식을 나타내는 생체 인증 방식 정보가 기억된 생체 인증 방식 기억 디바이스(103)와,
    상기 합의 처리 중에 상기 서버 장치로부터 난수를 포함하는 메시지를 수신하도록 구성된 디바이스(101, 102)와,
    상기 메시지의 수신 후, 상기 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 작성하고, 이 생체 인증 교섭 메시지를 상기 서버 장치에 송신하도록 구성된 디바이스(101, 102)와,
    상기 생체 인증 교섭 메시지의 송신 후, 상기 서버 장치로부터 통지된 생체 인증 방식 정보에 기초하여 상기 생체 인증 디바이스를 기동하도록 구성된 디바이스(102)와,
    상기 난수를 상기 비밀 키에 기초하여 암호화하여, 암호화 난수를 생성하도록 구성된 디바이스(102, 111)와,
    상기 생체 인증 디바이스에 의한 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보와 상기 생체 인증 방식 정보와 상기 암호화 난수와 상기 클라이언트 증명서로부터 상기 비밀 키에 기초하여 인증자를 생성하도록 구성된 디바이스(109)와,
    상기 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보와 상기 생체 인증 방식 정보와 상기 암호화 난수와 상기 클라이언트 증명서와 상기 인증자를 포함하는 인증 컨텍스트를 상기 서버 장치에 송신함으로써, 상기 합의 처리를 계속하도록 구성된 디바이스(101, 102)와,
    상기 합의 처리의 계속중에, 상기 인증 컨텍스트의 검증 결과를 나타내는 인증 결과 정보, 상기 생체 인증의 정보를 저장하는 인증 정보, 및 상기 인증 결과 정보와 상기 인증 정보에 대하여 상기 비밀 키 기억 디바이스(104)의 비밀 키로 작성된 서명이 포함된 생체 인증 검증 메시지를 상기 디바이스(109)로부터 수신하도록 구성된 디바이스(101, 102)와,
    상기 생체 인증 검증 메시지를 수신한 후, 상기 증명서 기억 디바이스 내의 클라이언트 증명서를 포함하는 클라이언트 증명서 메시지를 상기 서버 장치에 송신하도록 구성된 디바이스(101, 102)와,
    상기 클라이언트 증명서의 검증을 위한 클라이언트 검증 메시지로서, 현재까지의 메시지에 대하여 상기 비밀 키 기억 디바이스 내의 비밀 키에 기초하여 디지털 서명을 생성하고, 상기 현재까지의 메시지와 상기 디지털 서명을 포함하는 상기 클라이언트 검증 메시지를 상기 서버 장치에 송신하도록 구성된 디바이스(101, 102)
    를 포함하는 것을 특징으로 하는, 클라이언트 장치.
  2. 유저에게 조작되는 클라이언트 장치(100)와의 사이에서 네트워크를 통하여 은닉 통신을 하기 전에, 상기 클라이언트 장치와의 사이에서 서로의 증명서 인증을 포함하는 합의 처리를 실행하여 상기 증명서 인증의 결과가 정당할 때 상기 은닉 통신을 하기 위한 세션 확립이 가능한 서버 장치(200)로서,
    접수 가능한 상기 유저의 생체 인증 방식을 나타내는 복수의 생체 인증 방식 정보가 기억된 생체 인증 방식 기억 디바이스(203)와,
    상기 합의 처리 중에 난수를 포함하는 메시지를 상기 클라이언트 장치에 송신하도록 구성된 디바이스(201, 202)와,
    상기 메시지의 송신 후, 상기 클라이언트 장치의 생체 인증 방식을 나타내는 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스(201, 202)와,
    상기 생체 인증 교섭 메시지 내의 생체 인증 방식 정보가 상기 생체 인증 방식 기억 디바이스 내의 각 생체 인증 방식 정보 중 어디에 일치하는지의 여부를 판정하도록 구성된 디바이스(202)와,
    상기 판정의 결과가 일치를 나타낼 때 당해 생체 인증 방식 정보를 상기 클라이언트 장치에 통지하도록 구성된 디바이스(201, 202)와,
    상기 통지 후, 상기 생체 인증 방식 정보에 기초한 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보와 상기 생체 인증 방식 정보와 암호화 난수와 클라이언트 증명서와 인증자를 포함하는 인증 컨텍스트를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스(201, 202)와,
    상기 인증 컨텍스트 내의 생체 인증의 결과가 부정을 나타낼 때 상기 합의 처리를 중단하도록 구성된 디바이스(202, 205)와,
    상기 인증 컨텍스트 내의 생체 인증 방식 정보와 상기 통지된 생체 인증 방식 정보가 서로 다를 때 상기 합의 처리를 중단하도록 구성된 디바이스(202, 205)와,
    상기 인증 컨텍스트 내의 암호화 난수를 상기 클라이언트 증명서 내의 공개 키에 기초하여 복호하여, 얻어진 난수가 상기 메시지 내의 난수와 서로 다를 때 상기 합의 처리를 중단하도록 구성된 디바이스(202, 205)와,
    상기 클라이언트 증명서 내의 공개 키에 기초하여 상기 인증자를 검증하여, 검증 결과가 부정을 나타낼 때 상기 합의 처리를 중단하도록 구성된 디바이스(202, 205)와,
    상기 인증 컨텍스트를 검증하여 상기 합의 처리를 계속하는 검증 결과를 얻었을 때, 상기 인증 컨텍스트의 검증 결과를 나타내는 인증 결과 정보, 상기 생체 인증의 정보를 저장하는 인증 정보, 및 상기 인증 결과 정보와 상기 인증 정보에 대하여 상기 서버 장치의 비밀 키로 작성된 서명이 포함된 생체 인증 검증 메시지를 상기 클라이언트 장치에 송신하도록 구성된 디바이스(201, 202)와,
    상기 생체 인증 검증 메시지를 송신한 후, 상기 클라이언트 증명서를 포함하는 클라이언트 증명서 메시지를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스(201)와,
    상기 클라이언트 증명서의 검증을 위한 클라이언트 검증 메시지로서, 현재까지의 메시지와, 상기 현재까지의 메시지에 대하여 상기 클라이언트 장치의 비밀 키에 기초하여 생성된 디지털 서명을 포함하는 상기 클라이언트 검증 메시지를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스(201)
    를 포함하는 것을 특징으로 하는, 서버 장치.
  3. 유저의 조작에 의해 서버 장치(200a)와의 사이에서 네트워크를 통하여 은닉 통신을 하기 전에, 상기 서버 장치와의 사이에서 서로의 증명서 인증을 포함하는 합의 처리를 실행하여 상기 증명서 인증의 결과가 정당할 때, 상기 은닉 통신을 하기 위한 세션 확립이 가능한 클라이언트 장치(100a)로서,
    상기 합의 처리 중에 상기 유저로부터 생체 정보를 취득하기 위한 생체 정보 취득 디바이스(105a, 107)와,
    공개 키를 포함하는 클라이언트 증명서가 기억된 증명서 기억 디바이스(104)와,
    상기 공개 키에 대응하는 비밀 키가 기억된 비밀 키 기억 디바이스(104)와,
    상기 생체 정보 취득 디바이스의 생체 인증 방식을 나타내는 생체 인증 방식 정보가 기억된 생체 인증 방식 기억 디바이스(103)와,
    제1 난수를 생성하기 위한 난수 생성 디바이스(102a)와,
    상기 합의 처리 중에 상기 제1 난수를 포함하는 제1 메시지를 작성하고, 이 제1 메시지를 상기 서버 장치에 송신하도록 구성된 디바이스(101, 102a)와,
    상기 제1 메시지의 송신 후, 상기 서버 장치로부터 제2 난수를 포함하는 제2 메시지를 수신하도록 구성된 디바이스(101, 102a)와,
    상기 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 작성하고, 이 생체 인증 교섭 메시지를 상기 서버 장치에 송신하도록 구성된 디바이스(101, 102a)와,
    상기 생체 인증 교섭 메시지의 송신 후, 상기 서버 장치로부터 생체 인증 방식 정보를 수신하도록 구성된 디바이스(101)와,
    상기 생체 인증 방식 정보를 수신한 후, 상기 증명서 기억 디바이스 내의 클라이언트 증명서를 포함하는 클라이언트 증명서 메시지를 상기 서버 장치에 송신하도록 구성된 디바이스(101, 102a)와,
    상기 클라이언트 증명서의 검증을 위한 클라이언트 검증 메시지로서, 현재까지의 메시지에 대하여 상기 비밀 키 기억 디바이스 내의 비밀 키에 기초하여 디지털 서명을 생성하고, 상기 현재까지의 메시지와 상기 디지털 서명을 포함하는 상기 클라이언트 검증 메시지를 상기 서버 장치에 송신하도록 구성된 디바이스(101, 102a)와,
    상기 수신한 생체 인증 방식 정보에 기초하여, 상기 생체 정보 취득 디바이스를 기동하도록 구성된 디바이스(102a)와,
    상기 제1 난수 및 상기 제2 난수에 기초하여 해쉬 알고리즘에 의해 암호화용 파라미터를 생성하도록 구성된 디바이스(102a, 111)와,
    상기 생체 정보 취득 디바이스에 의해 취득한 생체 정보를 상기 암호화용 파라미터에 기초하여 암호화하고, 얻어진 암호화 생체 정보를 상기 서버 장치에 통지함으로써 상기 합의 처리를 계속하도록 구성된 디바이스(101, 102a, 111)
    를 포함하는 것을 특징으로 하는, 클라이언트 장치.
  4. 유저에게 조작되는 클라이언트 장치(100a)와의 사이에서 네트워크를 통하여 은닉 통신을 하기 전에, 상기 클라이언트 장치와의 사이에서 서로의 증명서 인증을 포함하는 합의 처리를 실행하여 상기 증명서 인증의 결과가 정당할 때, 상기 은닉 통신을 하기 위한 세션 확립이 가능한 서버 장치(200a)로서,
    접수 가능한 상기 유저의 생체 인증 방식을 나타내는 복수의 생체 인증 방식 정보가 기억된 생체 인증 방식 기억 디바이스(203)와,
    상기 유저의 생체 참조 정보가 기억된 생체 참조 정보 기억 디바이스(211)와,
    상기 합의 처리 중에 상기 클라이언트 장치로부터 제1 난수를 포함하는 제1 메시지를 수신하도록 구성된 디바이스(201, 202a)와,
    상기 제1 메시지의 수신 후, 제2 난수를 포함하는 제2 메시지를 상기 클라이언트 장치에 송신하도록 구성된 디바이스(201, 202a)와,
    상기 클라이언트 장치의 생체 인증 방식을 나타내는 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스(201, 202a)와,
    상기 생체 인증 교섭 메시지 내의 생체 인증 방식 정보가 상기 생체 인증 방식 기억 디바이스 내의 각 생체 인증 방식 정보 중 어디에 일치하는지의 여부를 판정하도록 구성된 디바이스(202a)와,
    상기 판정의 결과가 일치를 나타낼 때 당해 생체 인증 방식 정보를 상기 클라이언트 장치에 통지하도록 구성된 디바이스와,
    상기 통지 후, 상기 클라이언트 증명서를 포함하는 클라이언트 증명서 메시지를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스(201)와,
    상기 클라이언트 증명서의 검증을 위한 클라이언트 검증 메시지로서, 현재까지의 메시지와, 상기 현재까지의 메시지에 대하여 상기 클라이언트 장치의 비밀 키에 기초하여 생성된 디지털 서명을 포함하는 상기 클라이언트 검증 메시지를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스(201)와,
    상기 통지 후, 상기 생체 인증 방식 정보에 따라 취득된 상기 유저의 생체 정보가 상기 제1 난수 및 상기 제2 난수에 기초하여 암호화되어 이루어지는 암호화 생체 정보를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스(201, 202a)와,
    상기 제1 메시지 내의 제1 난수 및 상기 제2 메시지 내의 제2 난수에 기초하여 해쉬 알고리즘에 의해 암호화용 파라미터를 생성하도록 구성된 디바이스(202a, 207)와,
    상기 암호화 생체 정보를 상기 암호화용 파라미터에 기초하여 복호하도록 구성된 디바이스(202a, 207)와,
    상기 복호에 의해 얻어진 생체 정보를, 상기 생체 참조 정보 기억 디바이스 내의 생체 참조 정보에 기초하여 생체 인증하는 생체 인증 디바이스(212)와,
    상기 생체 인증의 결과가 부정을 나타낼 때 상기 합의 처리를 중단하도록 구성된 디바이스(202a)
    를 포함하는 것을 특징으로 하는, 서버 장치.
  5. 유저의 조작에 의해 서버 장치(200b)와의 사이에서 네트워크를 통하여 은닉 통신을 하기 전에, 상기 서버 장치와의 사이에서 서로의 증명서 인증을 포함하는 합의 처리를 실행하여 상기 증명서 인증의 결과가 정당할 때, 상기 은닉 통신을 하기 위한 세션 확립이 가능한 클라이언트 장치(100b)로서,
    상기 유저를 생체 인증하기 위한 생체 인증 디바이스(105, 106, 107, 108)와,
    공개 키를 포함하는 클라이언트 증명서가 기억된 증명서 기억 디바이스(104)와,
    상기 공개 키에 대응하는 비밀 키가 기억된 비밀 키 기억 디바이스(104)와,
    상기 합의 처리 중에 상기 유저의 생체 인증의 결과에 기초하여 클라이언트 증명서를 취득한다는 취지를 포함하는 제1 메시지를 상기 서버 장치에 송신하도록 구성된 디바이스(101, 102b)와,
    상기 제1 메시지의 송신 후, 상기 서버 장치로부터 난수를 포함하는 제2 메시지를 수신하도록 구성된 디바이스(101, 102b)와,
    상기 제2 메시지의 수신 후, 상기 생체 인증 디바이스를 기동하도록 구성된 디바이스(102b)와,
    상기 난수를 상기 비밀 키에 기초하여 암호화하여, 암호화 난수를 생성하도록 구성된 디바이스(102b, 111)와,
    상기 생체 인증 디바이스에 의한 생체 인증의 결과가 정당할 때, 상기 증명서 기억 디바이스 내의 클라이언트 증명서를 상기 서버 장치에 송신하도록 구성된 디바이스(101, 102b)와,
    상기 클라이언트 증명서의 검증을 위한 클라이언트 검증 메시지로서, 현재까지의 메시지에 대하여 상기 비밀 키 기억 디바이스 내의 비밀 키에 기초하여 디지털 서명을 생성하고, 상기 현재까지의 메시지와 상기 디지털 서명을 포함하는 상기 클라이언트 검증 메시지를 상기 서버 장치에 송신하도록 구성된 디바이스(101, 102b)와,
    상기 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보 및 상기 암호화 난수로부터 상기 비밀 키에 기초하여 인증자를 생성하도록 구성된 디바이스(109b)와,
    상기 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보 및 상기 암호화 난수와 상기 인증자를 포함하는 인증 컨텍스트를 상기 서버 장치에 송신함으로써 상기 합의 처리를 계속하도록 구성된 디바이스(101, 102b)
    를 포함하는 것을 특징으로 하는, 클라이언트 장치.
  6. 유저에게 조작되는 클라이언트 장치(100b)와의 사이에서 네트워크를 통하여 은닉 통신을 하기 전에, 상기 클라이언트 장치와의 사이에서 서로의 증명서 인증을 포함하는 합의 처리를 실행하여 상기 증명서 인증의 결과가 정당할 때, 상기 은닉 통신을 하기 위한 세션 확립이 가능한 서버 장치(200b)로서,
    상기 합의 처리 중에 상기 유저의 생체 인증의 결과에 기초하여 클라이언트 증명서를 취득한다는 취지를 포함하는 제1 메시지를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스(201, 202b)와,
    상기 제1 메시지의 수신 후, 난수를 포함하는 제2 메시지를 상기 클라이언트 장치에 송신하도록 구성된 디바이스(201, 202b)와,
    상기 제2 메시지의 송신 후, 상기 클라이언트 장치로부터 클라이언트 증명서를 수신하도록 구성된 디바이스(201, 202b)와,
    상기 클라이언트 증명서의 검증을 위한 클라이언트 검증 메시지로서, 현재까지의 메시지와, 상기 현재까지의 메시지에 대하여 상기 클라이언트 장치의 비밀 키에 기초하여 생성된 디지털 서명을 포함하는 상기 클라이언트 검증 메시지를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스(201)와,
    상기 제2 메시지의 송신 후, 상기 유저의 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보와 암호화 난수와 인증자를 포함하는 인증 컨텍스트를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스(201, 202b)와,
    상기 수신된 클라이언트 증명서 및 인증 컨텍스트를 기억하는 기억 디바이스(204)와,
    상기 기억 디바이스에 기억된 인증 컨텍스트 내의 생체 인증의 결과가 부정을 나타낼 때 상기 합의 처리를 중단하도록 구성된 디바이스(202b, 205b)와,
    상기 기억 디바이스에 기억된 인증 컨텍스트 내의 암호화 난수를 상기 클라이언트 증명서 내의 공개 키에 기초하여 복호하여, 얻어진 난수가 상기 제2 메시지 내의 난수와 서로 다를 때 상기 합의 처리를 중단하도록 구성된 디바이스(202b, 205b)와,
    상기 기억 디바이스에 기억된 클라이언트 증명서 내의 공개 키에 기초하여 상기 인증자를 검증하여, 검증 결과가 부정을 나타낼 때 상기 합의 처리를 중단하도록 구성된 디바이스(202b, 205b)
    를 포함하는 것을 특징으로 하는, 서버 장치.
  7. 유저의 조작에 의해 서버 장치(200c)와의 사이에서 네트워크를 통하여 은닉 통신을 하기 전에, 상기 서버 장치와의 사이에서 서로의 증명서 인증을 포함하는 합의 처리를 실행하여 상기 증명서 인증의 결과가 정당할 때, 상기 은닉 통신을 하기 위한 세션 확립이 가능한 클라이언트 장치(100c)로서,
    공개 키를 포함하는 클라이언트 증명서가 기억된 증명서 기억 디바이스(104)와,
    상기 공개 키에 대응하는 비밀 키가 기억된 비밀 키 기억 디바이스(104)와,
    상기 합의 처리 전에 상기 유저를 생체 인증하기 위한 생체 인증 디바이스(105, 106, 107, 108)와,
    상기 생체 인증 디바이스의 생체 인증 방식을 나타내는 생체 인증 방식 정보가 기억된 생체 인증 방식 기억 디바이스(103)와,
    상기 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보와 상기 생체 인증 방식 정보와 상기 클라이언트 증명서로부터 상기 비밀 키에 기초하여 인증자를 생성하도록 구성된 디바이스(109c)와,
    상기 합의 처리 전에 상기 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보와 상기 생체 인증 방식 정보와 상기 클라이언트 증명서와 상기 인증자를 포함하는 인증 컨텍스트를 생성하도록 구성된 디바이스(109c)와,
    상기 합의 처리 전에 상기 인증 컨텍스트를 타임스탬프 제공 장치(300)에 송신하도록 구성된 디바이스(101, 102c, 115)와,
    상기 송신된 인증 컨텍스트 및 상기 타임스탬프 제공 장치에 있어서의 일시(日時) 정보에 대하여, 당해 타임스탬프 제공 장치의 비밀 키에 기초하여 생성된 타임스탬프가 부여됨으로써, 상기 타임스탬프가 부여된 인증 컨텍스트를 상기 타임스탬프 제공 장치로부터 수신하도록 구성된 디바이스(102c)와,
    상기 합의 처리 중에 상기 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 작성하고, 이 생체 인증 교섭 메시지를 상기 서버 장치에 송신하도록 구성된 디바이스(101, 102c)와,
    상기 생체 인증 교섭 메시지의 송신 후, 상기 서버 장치로부터 통지된 생체 인증 방식 정보에 기초하여 상기 타임스탬프가 부여된 인증 컨텍스트를 상기 서버 장치에 송신함으로써, 상기 합의 처리를 계속하도록 구성된 디바이스(101, 102c)
    를 포함하는 것을 특징으로 하는, 클라이언트 장치.
  8. 유저에게 조작되는 클라이언트 장치(100c)와의 사이에서 네트워크를 통하여 은닉 통신을 하기 전에, 상기 클라이언트 장치와의 사이에서 서로의 증명서 인증을 포함하는 합의 처리를 실행하여 상기 증명서 인증의 결과가 정당할 때, 상기 은닉 통신을 하기 위한 세션 확립이 가능한 서버 장치(200c)로서,
    접수 가능한 상기 유저의 생체 인증 방식을 나타내는 복수의 생체 인증 방식 정보가 기억된 생체 인증 방식 기억 디바이스(203)와,
    상기 합의 처리 중에 상기 클라이언트 장치의 생체 인증 방식을 나타내는 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스(201, 202c)와,
    상기 생체 인증 교섭 메시지 내의 생체 인증 방식 정보가 상기 생체 인증 방식 기억 디바이스 내의 각 생체 인증 방식 정보 중 어디에 일치하는지의 여부를 판정하도록 구성된 디바이스(202c)와,
    상기 판정의 결과가 일치를 나타낼 때 당해 생체 인증 방식 정보를 상기 클라이언트 장치에 통지하도록 구성된 디바이스(201, 202c)와,
    상기 통지 후, 타임스탬프 제공 장치의 비밀 키에 의한 타임스탬프가 부여되고 또한 상기 유저의 생체 인증의 결과, 생체 인증 방식 정보, 클라이언트 증명서 및 인증자를 포함하는 인증 컨텍스트를 상기 클라이언트 장치로부터 수신하도록 구성된 디바이스(201, 202c)와,
    상기 인증 컨텍스트 내의 생체 인증의 결과가 부정을 나타낼 때 상기 합의 처리를 중단하도록 구성된 디바이스(202c, 205c)와,
    상기 인증 컨텍스트 내의 생체 인증 방식 정보가 상기 통지된 생체 인증 방식과는 서로 다를 때 상기 합의 처리를 중단하도록 구성된 디바이스(202c, 205c)와,
    상기 클라이언트 증명서 내의 공개 키에 기초하여 상기 인증자를 검증하여, 검증 결과가 부정을 나타낼 때 상기 합의 처리를 중단하도록 구성된 디바이스(202c, 205c)와,
    상기 타임스탬프 제공 장치의 비밀 키에 대응하는 공개 키에 기초하여 상기 타임스탬프를 복호하여, 얻어진 일시 정보와 현재의 일시 정보의 차분이 미리 정한 값보다도 클 때 상기 합의 처리를 중단하도록 구성된 디바이스(202c, 213)
    를 포함하는 것을 특징으로 하는, 서버 장치.
  9. 유저의 조작에 의해 서버 장치(200)와의 사이에서 네트워크를 통하여 은닉 통신을 하기 전에, 상기 서버 장치와의 사이에서 서로의 증명서 인증을 포함하는 합의 처리를 실행하여 상기 증명서 인증의 결과가 정당할 때, 상기 은닉 통신을 하기 위한 세션 확립이 가능한 클라이언트 장치(100)에 사용되는 프로그램을 기억한 컴퓨터 판독 가능한 기억 매체(M1)로서, 상기 프로그램은,
    상기 유저를 생체 인증하기 위한 생체 인증 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST-BP),
    공개 키를 포함하는 클라이언트 증명서를 증명서 기억 디바이스(104)에 기입하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드,
    상기 공개 키에 대응하는 비밀 키를 비밀 키 기억 디바이스(104)에 기입하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드,
    상기 생체 인증 처리의 생체 인증 방식을 나타내는 생체 인증 방식 정보를 생체 인증 방식 기억 디바이스(103)에 기입하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드,
    상기 합의 처리 중에 상기 서버 장치로부터 난수를 포함하는 메시지를 수신하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드,
    상기 메시지의 수신 후, 상기 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 작성하고, 이 생체 인증 교섭 메시지를 상기 서버 장치에 송신하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST-CBN),
    상기 생체 인증 교섭 메시지의 송신 후, 상기 서버 장치로부터 통지된 생체 인증 방식 정보에 기초하여 상기 생체 인증 처리를 기동하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST-BP),
    상기 난수를 상기 비밀 키에 기초하여 암호화하여, 암호화 난수를 생성하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST-BP),
    상기 생체 인증 처리에 의한 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보와 상기 생체 인증 방식 정보와 상기 암호화 난수와 상기 클라이언트 증명서로부터 상기 비밀 키에 기초하여 인증자를 생성하는 처리를 디바이스(109)에 의해 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST-BP),
    상기 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보와 상기 생체 인증 방식 정보와 상기 암호화 난수와 상기 클라이언트 증명서와 상기 인증자를 포함하는 인증 컨텍스트를 상기 서버 장치에 송신함으로써, 상기 합의 처리를 계속하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST-BP),
    상기 합의 처리의 계속중에, 상기 인증 컨텍스트의 검증 결과를 나타내는 인증 결과 정보, 상기 생체 인증의 정보를 저장하는 인증 정보, 및 상기 인증 결과 정보와 상기 인증 정보에 대하여 상기 비밀 키 기억 디바이스(104)의 비밀 키로 작성된 서명이 포함된 생체 인증 검증 메시지를 상기 디바이스(109)로부터 수신하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST6),
    상기 생체 인증 검증 메시지를 수신한 후, 상기 증명서 기억 디바이스 내의 클라이언트 증명서를 포함하는 클라이언트 증명서 메시지를 상기 서버 장치에 송신하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST6),
    상기 클라이언트 증명서의 검증을 위한 클라이언트 검증 메시지로서, 현재까지의 메시지에 대하여 상기 비밀 키 기억 디바이스 내의 비밀 키에 기초하여 디지털 서명을 생성하고, 상기 현재까지의 메시지와 상기 디지털 서명을 포함하는 상기 클라이언트 검증 메시지를 상기 서버 장치에 송신하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST8)
    를 포함하는 것을 특징으로 하는, 기억 매체.
  10. 유저에게 조작되는 클라이언트 장치(100)와의 사이에서 네트워크를 통하여 은닉 통신을 하기 전에, 상기 클라이언트 장치와의 사이에서 서로의 증명서 인증을 포함하는 합의 처리를 실행하여 상기 증명서 인증의 결과가 정당할 때, 상기 은닉 통신을 하기 위한 세션 확립이 가능한 서버 장치(200)에 사용되는 프로그램을 기억한 컴퓨터 판독 가능한 기억 매체(M2)로서, 상기 프로그램은,
    접수 가능한 상기 유저의 생체 인증 방식을 나타내는 복수의 생체 인증 방식 정보를 생체 인증 방식 기억 디바이스(203)에 기입하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드,
    상기 합의 처리 중에 난수를 포함하는 메시지를 상기 클라이언트 장치에 송신하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST2),
    상기 메시지의 송신 후, 상기 클라이언트 장치의 생체 인증 방식을 나타내는 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 상기 클라이언트 장치로부터 수신하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-SBN),
    상기 생체 인증 교섭 메시지 내의 생체 인증 방식 정보가 상기 생체 인증 방식 기억 디바이스 내의 각 생체 인증 방식 정보 중 어디에 일치하는지의 여부를 판정하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-SBN),
    상기 판정의 결과가 일치를 나타낼 때 당해 생체 인증 방식 정보를 상기 클라이언트 장치에 통지하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-SBN),
    상기 통지 후, 상기 생체 인증 방식 정보에 기초한 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보와 상기 생체 인증 방식 정보와 암호화 난수와 클라이언트 증명서와 인증자를 포함하는 인증 컨텍스트를 상기 클라이언트 장치로부터 수신하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-BV),
    상기 인증 컨텍스트 내의 생체 인증의 결과가 부정을 나타낼 때 상기 합의 처리를 중단하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-BV),
    상기 인증 컨텍스트 내의 생체 인증 방식 정보와 상기 통지된 생체 인증 방식 정보가 서로 다를 때 상기 합의 처리를 중단하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-BV),
    상기 인증 컨텍스트 내의 암호화 난수를 상기 클라이언트 증명서 내의 공개 키에 기초하여 복호하여, 얻어진 난수가 상기 메시지 내의 난수와 서로 다를 때 상기 합의 처리를 중단하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-BV),
    상기 클라이언트 증명서 내의 공개 키에 기초하여 상기 인증자를 검증하여, 검증 결과가 부정을 나타낼 때 상기 합의 처리를 중단하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-BV),
    상기 인증 컨텍스트를 검증하여 상기 합의 처리를 계속하는 검증 결과를 얻었을 때, 상기 인증 컨텍스트의 검증 결과를 나타내는 인증 결과 정보, 상기 생체 인증의 정보를 저장하는 인증 정보, 및 상기 인증 결과 정보와 상기 인증 정보에 대하여 상기 서버 장치의 비밀 키로 작성된 서명이 포함된 생체 인증 검증 메시지를 상기 클라이언트 장치에 송신하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-BV),
    상기 생체 인증 검증 메시지를 송신한 후, 상기 클라이언트 증명서를 포함하는 클라이언트 증명서 메시지를 상기 클라이언트 장치로부터 수신하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST6),
    상기 클라이언트 증명서의 검증을 위한 클라이언트 검증 메시지로서, 현재까지의 메시지와, 상기 현재까지의 메시지에 대하여 상기 클라이언트 장치의 비밀 키에 기초하여 생성된 디지털 서명을 포함하는 상기 클라이언트 검증 메시지를 상기 클라이언트 장치로부터 수신하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST8)
    를 포함하는 것을 특징으로 하는, 기억 매체.
  11. 유저의 조작에 의해 서버 장치(200a)와의 사이에서 네트워크를 통하여 은닉 통신을 하기 전에, 상기 서버 장치와의 사이에서 서로의 증명서 인증을 포함하는 합의 처리를 실행하여 상기 증명서 인증의 결과가 정당할 때, 상기 은닉 통신을 하기 위한 세션 확립이 가능한 클라이언트 장치(100a)에 사용되는 프로그램을 기억한 컴퓨터 판독 가능한 기억 매체(M1a)로서, 상기 프로그램은,
    상기 합의 처리 중에 상기 유저로부터 생체 정보를 취득하기 위한 생체 정보 취득 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST-BP),
    공개 키를 포함하는 클라이언트 증명서를 증명서 기억 디바이스(104)에 기입하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드,
    상기 공개 키에 대응하는 비밀 키를 비밀 키 기억 디바이스(104)에 기입하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드,
    상기 생체 정보 취득 처리의 생체 인증 방식을 나타내는 생체 인증 방식 정보를 생체 인증 방식 기억 디바이스(103)에 기입하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드,
    제1 난수를 생성하기 위한 난수 생성 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST1),
    상기 합의 처리 중에 상기 제1 난수를 포함하는 제1 메시지를 작성하고, 이 제1 메시지를 상기 서버 장치에 송신하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST1),
    상기 제1 메시지의 송신 후, 상기 서버 장치로부터 제2 난수를 포함하는 제2 메시지를 수신하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드,
    상기 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 작성하고, 이 생체 인증 교섭 메시지를 상기 서버 장치에 송신하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST-CBN),
    상기 생체 인증 교섭 메시지의 송신 후, 상기 서버 장치로부터 생체 인증 방식 정보를 수신하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST-SBN),
    상기 생체 인증 방식 정보를 수신한 후, 상기 증명서 기억 디바이스 내의 클라이언트 증명서를 포함하는 클라이언트 증명서 메시지를 상기 서버 장치에 송신하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST6),
    상기 클라이언트 증명서의 검증을 위한 클라이언트 검증 메시지로서, 현재까지의 메시지에 대하여 상기 비밀 키 기억 디바이스 내의 비밀 키에 기초하여 디지털 서명을 생성하고, 상기 현재까지의 메시지와 상기 디지털 서명을 포함하는 상기 클라이언트 검증 메시지를 상기 서버 장치에 송신하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST8),
    상기 수신한 생체 인증 방식 정보에 기초하여, 상기 생체 정보 취득 처리를 기동하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST-BP),
    상기 제1 난수 및 상기 제2 난수에 기초하여 해쉬 알고리즘에 의해 암호화용 파라미터를 생성하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST-BP),
    상기 생체 정보 취득 처리에 의해 취득한 생체 정보를 상기 암호화용 파라미터에 기초하여 암호화하고, 얻어진 암호화 생체 정보를 상기 서버 장치에 통지함으로써, 상기 합의 처리를 계속하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST-BP)
    를 포함하는 것을 특징으로 하는, 기억 매체.
  12. 유저에게 조작되는 클라이언트 장치(100a)와의 사이에서 네트워크를 통하여 은닉 통신을 하기 전에, 상기 클라이언트 장치와의 사이에서 서로의 증명서 인증을 포함하는 합의 처리를 실행하여 상기 증명서 인증의 결과가 정당할 때, 상기 은닉 통신을 하기 위한 세션 확립이 가능한 서버 장치(200a)에 사용되는 프로그램을 기억한 컴퓨터 판독 가능한 기억 매체(M2a)로서, 상기 프로그램은,
    접수 가능한 상기 유저의 생체 인증 방식을 나타내는 복수의 생체 인증 방식 정보를 생체 인증 방식 기억 디바이스(203)에 기입하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드,
    상기 유저의 생체 참조 정보를 생체 참조 정보 기억 디바이스(211)에 기입하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드,
    상기 합의 처리 중에 상기 클라이언트 장치로부터 제1 난수를 포함하는 제1 메시지를 수신하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST2),
    상기 제1 메시지의 수신 후, 제2 난수를 포함하는 제2 메시지를 상기 클라이언트 장치에 송신하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST2),
    상기 클라이언트 장치의 생체 인증 방식을 나타내는 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 상기 클라이언트 장치로부터 수신하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-SBN),
    상기 생체 인증 교섭 메시지 내의 생체 인증 방식 정보가 상기 생체 인증 방식 기억 디바이스 내의 각 생체 인증 방식 정보 중 어디에 일치하는지의 여부를 판정하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-SBN),
    상기 판정의 결과가 일치를 나타낼 때 당해 생체 인증 방식 정보를 상기 클라이언트 장치에 통지하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-SBN),
    상기 통지 후, 상기 클라이언트 증명서를 포함하는 클라이언트 증명서 메시지를 상기 클라이언트 장치로부터 수신하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST6),
    상기 클라이언트 증명서의 검증을 위한 클라이언트 검증 메시지로서, 현재까지의 메시지와, 상기 현재까지의 메시지에 대하여 상기 클라이언트 장치의 비밀 키에 기초하여 생성된 디지털 서명을 포함하는 상기 클라이언트 검증 메시지를 상기 클라이언트 장치로부터 수신하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST8),
    상기 통지 후, 상기 생체 인증 방식 정보에 따라 취득된 상기 유저의 생체 정보가 상기 제1 난수 및 상기 제2 난수에 기초하여 암호화되어 이루어지는 암호화 생체 정보를 상기 클라이언트 장치로부터 수신하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-BV),
    상기 제1 메시지 내의 제1 난수 및 상기 제2 메시지 내의 제2 난수에 기초하여 해쉬 알고리즘에 의해 암호화용 파라미터를 생성하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-BV),
    상기 암호화 생체 정보를 상기 암호화용 파라미터에 기초하여 복호하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-BV),
    상기 복호에 의해 얻어진 생체 정보를, 상기 생체 참조 정보 기억 디바이스 내의 생체 참조 정보에 기초하여 생체 인증하는 생체 인증 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드,
    상기 생체 인증의 결과가 부정을 나타낼 때 상기 합의 처리를 중단하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-BV)
    를 포함하는 것을 특징으로 하는, 기억 매체.
  13. 유저의 조작에 의해 서버 장치(200b)와의 사이에서 네트워크를 통하여 은닉 통신을 하기 전에, 상기 서버 장치와의 사이에서 서로의 증명서 인증을 포함하는 합의 처리를 실행하여 상기 증명서 인증의 결과가 정당할 때, 상기 은닉 통신을 하기 위한 세션 확립이 가능한 클라이언트 장치(100b)에 사용되는 프로그램을 기억한 컴퓨터 판독 가능한 기억 매체(M1b)로서, 상기 프로그램은,
    상기 유저를 생체 인증하기 위한 생체 인증 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST-BP1),
    공개 키를 포함하는 클라이언트 증명서를 증명서 기억 디바이스(204)에 기입하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드,
    상기 공개 키에 대응하는 비밀 키를 비밀 키 기억 디바이스(204)에 기입하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드,
    상기 합의 처리 중에 상기 유저의 생체 인증의 결과에 기초하여 클라이언트 증명서를 취득한다는 취지를 포함하는 제1 메시지를 상기 서버 장치에 송신하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST1),
    상기 제1 메시지의 송신 후, 상기 서버 장치로부터 난수를 포함하는 제2 메시지를 수신하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST-BP1),
    상기 제2 메시지의 수신 후, 상기 생체 인증 처리를 기동하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST-BP1),
    상기 난수를 상기 비밀 키에 기초하여 암호화하여, 암호화 난수를 생성하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST-BP2),
    상기 생체 인증 처리에 의한 생체 인증의 결과가 정당할 때, 상기 증명서 기억 디바이스 내의 클라이언트 증명서를 상기 서버 장치에 송신하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST6),
    상기 클라이언트 증명서의 검증을 위한 클라이언트 검증 메시지로서, 현재까지의 메시지에 대하여 상기 비밀 키 기억 디바이스 내의 비밀 키에 기초하여 디지털 서명을 생성하고, 상기 현재까지의 메시지와 상기 디지털 서명을 포함하는 상기 클라이언트 검증 메시지를 상기 서버 장치에 송신하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST8),
    상기 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보 및 상기 암호화 난수로부터 상기 비밀 키에 기초하여 인증자를 생성하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST-BP2),
    상기 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보 및 상기 암호화 난수와 상기 인증자를 포함하는 인증 컨텍스트를 상기 서버 장치에 송신함으로써, 상기 합의 처리를 계속하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST-BP2)
    를 포함하는 것을 특징으로 하는, 기억 매체.
  14. 유저에게 조작되는 클라이언트 장치(100b)와의 사이에서 네트워크를 통하여 은닉 통신을 하기 전에, 상기 클라이언트 장치와의 사이에서 서로의 증명서 인증을 포함하는 합의 처리를 실행하여 상기 증명서 인증의 결과가 정당할 때, 상기 은닉 통신을 하기 위한 세션 확립이 가능한 서버 장치(200b)에 사용되는 프로그램을 기억한 컴퓨터 판독 가능한 기억 매체(M2b)로서, 상기 프로그램은,
    상기 합의 처리 중에 상기 유저의 생체 인증의 결과에 기초하여 클라이언트 증명서를 취득한다는 취지를 포함하는 제1 메시지를 상기 클라이언트 장치로부터 수신하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드,
    상기 제1 메시지의 수신 후, 난수를 포함하는 제2 메시지를 상기 클라이언트 장치에 송신하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST2),
    상기 제2 메시지의 송신 후, 상기 클라이언트 장치로부터 클라이언트 증명서를 수신하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드,
    상기 클라이언트 증명서의 검증을 위한 클라이언트 검증 메시지로서, 현재까지의 메시지와, 상기 현재까지의 메시지에 대하여 상기 클라이언트 장치의 비밀 키에 기초하여 생성된 디지털 서명을 포함하는 상기 클라이언트 검증 메시지를 상기 클라이언트 장치로부터 수신하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST8),
    상기 제2 메시지의 송신 후, 상기 유저의 생체 인증의 결과와 암호화 난수와 인증자를 포함하는 인증 컨텍스트를 상기 클라이언트 장치로부터 수신하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-BV),
    상기 수신된 클라이언트 증명서 및 인증 컨텍스트를 기억 디바이스(204)에 기입하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드,
    상기 기억 디바이스에 기억된 인증 컨텍스트 내의 생체 인증의 결과가 부정을 나타낼 때 상기 합의 처리를 중단하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-BV),
    상기 기억 디바이스에 기억된 인증 컨텍스트 내의 암호화 난수를 상기 클라이언트 증명서 내의 공개 키에 기초하여 복호하여, 얻어진 난수가 상기 제2 메시지 내의 난수와 서로 다를 때 상기 합의 처리를 중단하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-BV),
    상기 기억 디바이스에 기억된 클라이언트 증명서 내의 공개 키에 기초하여 상기 인증자를 검증하여, 검증 결과가 부정을 나타낼 때 상기 합의 처리를 중단하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-BV)
    를 포함하는 것을 특징으로 하는, 기억 매체.
  15. 유저의 조작에 의해 서버 장치(200c)와의 사이에서 네트워크를 통하여 은닉 통신을 하기 전에, 상기 서버 장치와의 사이에서 서로의 증명서 인증을 포함하는 합의 처리를 실행하여 상기 증명서 인증의 결과가 정당할 때, 상기 은닉 통신을 하기 위한 세션 확립이 가능한 클라이언트 장치(100c)에 사용되는 프로그램을 기억한 컴퓨터 판독 가능한 기억 매체(M1c)로서, 상기 프로그램은,
    공개 키를 포함하는 클라이언트 증명서를 증명서 기억 디바이스(104)에 기입하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드,
    상기 공개 키에 대응하는 비밀 키를 비밀 키 기억 디바이스(104)에 기입하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드,
    상기 합의 처리 전에 상기 유저를 생체 인증하기 위한 생체 인증 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST-BP1),
    상기 생체 인증 처리의 생체 인증 방식을 나타내는 생체 인증 방식 정보를 생체 인증 방식 기억 디바이스(103)에 기입하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드,
    상기 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보와 상기 생체 인증 방식 정보와 상기 클라이언트 증명서로부터 상기 비밀 키에 기초하여 인증자를 생성하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST0),
    상기 합의 처리 전에, 상기 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보와 상기 생체 인증 방식 정보와 상기 클라이언트 증명서와 상기 인증자를 포함하는 인증 컨텍스트를 생성하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST0),
    상기 합의 처리 전에, 상기 인증 컨텍스트를 타임스탬프 제공 장치에 송신하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST0),
    상기 송신된 인증 컨텍스트 및 상기 타임스탬프 제공 장치에 있어서의 일시 정보에 대하여, 당해 타임스탬프 제공 장치의 비밀 키에 기초하여 생성된 타임스탬프가 부여됨으로써 상기 타임스탬프가 부여된 인증 컨텍스트를 상기 타임스탬프 제공 장치로부터 수신하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST0),
    상기 합의 처리 중에 상기 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 작성하고, 이 생체 인증 교섭 메시지를 상기 서버 장치에 송신하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST-CBN),
    상기 생체 인증 교섭 메시지의 송신 후, 상기 서버 장치로부터 통지된 생체 인증 방식 정보에 기초하여 상기 타임스탬프가 부여된 인증 컨텍스트를 상기 서버 장치에 송신함으로써, 상기 합의 처리를 계속하는 처리를 상기 클라이언트 장치에 순차적으로 실행시키는 프로그램 코드(ST-BP)
    를 포함하는 것을 특징으로 하는, 기억 매체.
  16. 유저에게 조작되는 클라이언트 장치(100c)와의 사이에서 네트워크를 통하여 은닉 통신을 하기 전에, 상기 클라이언트 장치와의 사이에서 서로의 증명서 인증을 포함하는 합의 처리를 실행하여 상기 증명서 인증의 결과가 정당할 때, 상기 은닉 통신을 하기 위한 세션 확립이 가능한 서버 장치(200c)에 사용되는 프로그램을 기억한 컴퓨터 판독 가능한 기억 매체(M2c)로서, 상기 프로그램은,
    접수 가능한 상기 유저의 생체 인증 방식을 나타내는 복수의 생체 인증 방식 정보를 생체 인증 방식 기억 디바이스(203)에 기입하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드,
    상기 합의 처리 중에 상기 클라이언트 장치의 생체 인증 방식을 나타내는 생체 인증 방식 정보를 포함하는 생체 인증 교섭 메시지를 상기 클라이언트 장치로부터 수신하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-SBN),
    상기 생체 인증 교섭 메시지 내의 생체 인증 방식 정보가 상기 생체 인증 방식 기억 디바이스 내의 각 생체 인증 방식 정보 중 어디에 일치하는지의 여부를 판정하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-SBN),
    상기 판정의 결과가 일치를 나타낼 때 당해 생체 인증 방식 정보를 상기 클라이언트 장치에 통지하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-SBN),
    상기 통지 후, 타임스탬프 제공 장치의 비밀 키에 의한 타임스탬프가 부여되고 또한 상기 유저의 생체 인증의 결과 및 그 처리의 정당성을 보증하는 정보, 생체 인증 방식 정보, 클라이언트 증명서 및 인증자를 포함하는 인증 컨텍스트를 상기 클라이언트 장치로부터 수신하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-BV),
    상기 인증 컨텍스트 내의 생체 인증의 결과가 부정을 나타낼 때 상기 합의 처리를 중단하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-BV),
    상기 인증 컨텍스트 내의 생체 인증 방식 정보가 상기 통지된 생체 인증 방식과는 서로 다를 때 상기 합의 처리를 중단하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-BV),
    상기 클라이언트 증명서 내의 공개 키에 기초하여 상기 인증자를 검증하여, 검증 결과가 부정을 나타낼 때 상기 합의 처리를 중단하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-BV),
    상기 타임스탬프 제공 장치의 비밀 키에 대응하는 공개 키에 기초하여 상기 타임스탬프를 복호하여, 얻어진 일시 정보와 현재의 일시 정보의 차분이 미리 정한 값보다도 클 때 상기 합의 처리를 중단하는 처리를 상기 서버 장치에 순차적으로 실행시키는 프로그램 코드(ST-BV)
    를 포함하는 것을 특징으로 하는, 기억 매체.
KR20097027298A 2007-08-13 2008-08-01 클라이언트 장치, 서버 장치 및 기억 매체 KR101190431B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2007210904A JP5132222B2 (ja) 2007-08-13 2007-08-13 クライアント装置、サーバ装置及びプログラム
JPJP-P-2007-210904 2007-08-13
PCT/JP2008/063911 WO2009022560A1 (ja) 2007-08-13 2008-08-01 クライアント装置、サーバ装置及びプログラム

Publications (2)

Publication Number Publication Date
KR20100023918A KR20100023918A (ko) 2010-03-04
KR101190431B1 true KR101190431B1 (ko) 2012-10-16

Family

ID=40350615

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20097027298A KR101190431B1 (ko) 2007-08-13 2008-08-01 클라이언트 장치, 서버 장치 및 기억 매체

Country Status (6)

Country Link
US (1) US8732461B2 (ko)
EP (1) EP2180633A4 (ko)
JP (1) JP5132222B2 (ko)
KR (1) KR101190431B1 (ko)
CN (1) CN101720540B (ko)
WO (1) WO2009022560A1 (ko)

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8892887B2 (en) * 2006-10-10 2014-11-18 Qualcomm Incorporated Method and apparatus for mutual authentication
JP5132222B2 (ja) * 2007-08-13 2013-01-30 株式会社東芝 クライアント装置、サーバ装置及びプログラム
GB2475237B (en) * 2009-11-09 2016-01-06 Skype Apparatus and method for controlling communication signalling and media
GB2475236A (en) * 2009-11-09 2011-05-18 Skype Ltd Authentication arrangement for a packet-based communication system covering public and private networks
CN105072088A (zh) 2010-01-22 2015-11-18 交互数字专利控股公司 一种在具有用户的无线设备处执行的方法
JP5540119B2 (ja) * 2010-02-09 2014-07-02 インターデイジタル パテント ホールディングス インコーポレイテッド トラステッド連合アイデンティティのための方法および装置
US9183683B2 (en) * 2010-09-28 2015-11-10 Sony Computer Entertainment Inc. Method and system for access to secure resources
FR2970612B1 (fr) * 2011-01-19 2013-01-04 Natural Security Procede d'authentification d'un premier equipement de communication par un second equipement de communication
US9015469B2 (en) 2011-07-28 2015-04-21 Cloudflare, Inc. Supporting secure sessions in a cloud-based proxy service
JP5844001B2 (ja) * 2012-04-01 2016-01-13 オーセンティファイ・インクAuthentify Inc. マルチパーティシステムにおける安全な認証
CN102752298B (zh) * 2012-06-29 2015-04-29 华为技术有限公司 安全通信方法、终端、服务器及系统
EP2912588A4 (en) * 2012-10-25 2016-06-29 Intel Corp ANTI-THEFT IN A MICROLOGICIEL
US8997195B1 (en) 2013-02-05 2015-03-31 Ca, Inc. Access to vaulted credentials using login computer, mobile computing device, and manager computing device
US8959583B2 (en) * 2013-02-05 2015-02-17 Ca, Inc. Access to vaulted credentials using login computer and mobile computing device
US8782774B1 (en) 2013-03-07 2014-07-15 Cloudflare, Inc. Secure session capability using public-key cryptography without access to the private key
US9038130B2 (en) * 2013-05-14 2015-05-19 Dell Products, L.P. Sensor aware security policies with embedded controller hardened enforcement
US9948614B1 (en) * 2013-05-23 2018-04-17 Rockwell Collins, Inc. Remote device initialization using asymmetric cryptography
DE102013222503A1 (de) * 2013-11-06 2015-05-07 Siemens Aktiengesellschaft Client-Einrichtung und Verfahren zum Prägen einer Client-Einrichtung auf mindestens eine Server-Einrichtung
JP6187251B2 (ja) * 2013-12-27 2017-08-30 富士通株式会社 データ通信方法、およびデータ通信装置
US9754097B2 (en) 2014-02-21 2017-09-05 Liveensure, Inc. Method for peer to peer mobile context authentication
CN104954327B (zh) * 2014-03-27 2019-02-22 东华软件股份公司 用于终端连接控制的服务器及方法、终端及方法、和系统
CN104954130B (zh) * 2014-03-31 2019-08-20 西安西电捷通无线网络通信股份有限公司 一种实体鉴别方法及装置
US9184911B2 (en) * 2014-04-08 2015-11-10 Cloudflare, Inc. Secure session capability using public-key cryptography without access to the private key
US8966267B1 (en) 2014-04-08 2015-02-24 Cloudflare, Inc. Secure session capability using public-key cryptography without access to the private key
US8996873B1 (en) 2014-04-08 2015-03-31 Cloudflare, Inc. Secure session capability using public-key cryptography without access to the private key
US9977881B2 (en) * 2014-10-15 2018-05-22 Mastercard International Incorporated Methods, apparatus and systems for securely authenticating a person depending on context
CN104660614A (zh) * 2015-03-16 2015-05-27 联想(北京)有限公司 认证方法、电子设备以及服务器
ES2791956T3 (es) * 2015-06-11 2020-11-06 Siemens Ag Aparato y procedimiento de autorización para una emisión autorizada de un token de autenticación para un dispositivo
US10484372B1 (en) * 2015-12-14 2019-11-19 Amazon Technologies, Inc. Automatic replacement of passwords with secure claims
JP6717108B2 (ja) 2016-08-10 2020-07-01 富士通株式会社 情報処理装置、情報処理システム、プログラム及び情報処理方法
JP2018074205A (ja) 2016-10-24 2018-05-10 富士通株式会社 プログラム、情報処理装置、情報処理システム、及び情報処理方法
EP3586257B1 (en) * 2017-02-22 2022-10-26 Fingerprint Cards Anacatum IP AB Biometrics-based remote login
US10333717B2 (en) * 2017-03-09 2019-06-25 Microsoft Technology Licensing, Llc Timestamped license data structure
US10484373B2 (en) 2017-04-11 2019-11-19 Mastercard International Incorporated Systems and methods for biometric authentication of certificate signing request processing
CN110710178B (zh) * 2017-06-01 2021-07-06 诺基亚通信公司 无线接入网络中的用户认证
CN109309565B (zh) * 2017-07-28 2021-08-10 中国移动通信有限公司研究院 一种安全认证的方法及装置
JP6866803B2 (ja) * 2017-08-10 2021-04-28 富士通株式会社 認証システムおよび認証方法
CN110389538A (zh) * 2018-04-20 2019-10-29 比亚迪股份有限公司 车辆及其基于开放平台的车辆安全控制方法、系统
WO2019226115A1 (en) * 2018-05-23 2019-11-28 Sixscape Communications Pte Ltd Method and apparatus for user authentication
CN110581829A (zh) * 2018-06-08 2019-12-17 中国移动通信集团有限公司 通信方法及装置
CN109359470B (zh) 2018-08-14 2020-09-01 阿里巴巴集团控股有限公司 多方安全计算方法及装置、电子设备
CN110839240B (zh) * 2018-08-17 2022-07-05 阿里巴巴集团控股有限公司 一种建立连接的方法及装置
EP3674934A1 (en) * 2018-12-26 2020-07-01 Thales Dis France SA Biometric acquisition system and method
WO2020163758A1 (en) * 2019-02-08 2020-08-13 Arthur Young Systems, methods and machine readable programs for isolation of data
US10892901B1 (en) * 2019-07-05 2021-01-12 Advanced New Technologies Co., Ltd. Facial data collection and verification
CN113726526A (zh) * 2019-07-05 2021-11-30 创新先进技术有限公司 人脸数据采集、验证的方法、设备及系统
KR20210045676A (ko) * 2019-10-17 2021-04-27 현대자동차주식회사 차량용 통신 시스템 및 그를 위한 보안 통신 방법
US10903990B1 (en) 2020-03-11 2021-01-26 Cloudflare, Inc. Establishing a cryptographic tunnel between a first tunnel endpoint and a second tunnel endpoint where a private key used during the tunnel establishment is remotely located from the second tunnel endpoint

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004348308A (ja) * 2003-05-21 2004-12-09 Hitachi Ltd 本人認証システム
JP2004364303A (ja) * 2003-06-03 2004-12-24 Mitsubishi Electric Research Laboratories Inc メッセージを暗号化及び復号化するためのリンク鍵を確立する方法及びシステム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000003323A (ja) * 1998-06-15 2000-01-07 Toshiba Corp 通信速度等が自動設定されるデータ通信装置とこのデータ通信方法
JP2003044436A (ja) 2001-08-02 2003-02-14 Sony Corp 認証処理方法、および情報処理装置、並びにコンピュータ・プログラム
US20030115154A1 (en) * 2001-12-18 2003-06-19 Anderson Anne H. System and method for facilitating operator authentication
JP2003224562A (ja) 2002-01-28 2003-08-08 Toshiba Corp 個人認証システム及びプログラム
US7694335B1 (en) * 2004-03-09 2010-04-06 Cisco Technology, Inc. Server preventing attacks by generating a challenge having a computational request and a secure cookie for processing by a client
JP2006011768A (ja) * 2004-06-25 2006-01-12 Toshiba Corp 認証システム及び装置
JP2007149066A (ja) * 2005-10-25 2007-06-14 Toshiba Corp 認証システム、装置及びプログラム
JP4956096B2 (ja) * 2006-08-30 2012-06-20 株式会社東芝 認証システム及び装置
JP2008171027A (ja) * 2007-01-05 2008-07-24 Toshiba Corp 認証システム、装置及びプログラム
JP5132222B2 (ja) * 2007-08-13 2013-01-30 株式会社東芝 クライアント装置、サーバ装置及びプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004348308A (ja) * 2003-05-21 2004-12-09 Hitachi Ltd 本人認証システム
JP2004364303A (ja) * 2003-06-03 2004-12-24 Mitsubishi Electric Research Laboratories Inc メッセージを暗号化及び復号化するためのリンク鍵を確立する方法及びシステム

Also Published As

Publication number Publication date
CN101720540A (zh) 2010-06-02
EP2180633A1 (en) 2010-04-28
WO2009022560A1 (ja) 2009-02-19
JP5132222B2 (ja) 2013-01-30
KR20100023918A (ko) 2010-03-04
CN101720540B (zh) 2012-08-22
US20100191967A1 (en) 2010-07-29
US8732461B2 (en) 2014-05-20
JP2009049464A (ja) 2009-03-05
EP2180633A4 (en) 2015-06-24

Similar Documents

Publication Publication Date Title
KR101190431B1 (ko) 클라이언트 장치, 서버 장치 및 기억 매체
EP2086162B1 (en) System, device, method and program for authenticating communication partner by means of electronic certificate including personal information
US8438628B2 (en) Method and apparatus for split-terminating a secure network connection, with client authentication
US7797544B2 (en) Attesting to establish trust between computer entities
US7600122B2 (en) Methods and apparatus for accelerating secure session processing
US20100250951A1 (en) Common key setting method, relay apparatus, and program
US20190238334A1 (en) Communication system, communication client, communication server, communication method, and program
US20150172064A1 (en) Method and relay device for cryptographic communication
JP2002344438A (ja) 鍵共有システム及び装置並びにプログラム
CN114651421A (zh) 使用临时密钥的传输层安全中的正向安全
TW200402981A (en) Methods for remotely changing a communications password
JP2002514842A (ja) 仮想プライベート・キーを使用するユーザ認証
CN112383395B (zh) 密钥协商方法及装置
US20210392004A1 (en) Apparatus and method for authenticating device based on certificate using physical unclonable function
JP3842100B2 (ja) 暗号化通信システムにおける認証処理方法及びそのシステム
CN110417722B (zh) 一种业务数据通信方法、通信设备及存储介质
JP4255046B2 (ja) 暗号通信路の確立方法、プログラム及びプログラム媒体、並びに、暗号通信システム
TW200803392A (en) Method, device, server arrangement, system and computer program products for securely storing data in a portable device
CN114826659A (zh) 一种加密通讯方法及系统
JP2004274480A (ja) 秘匿通信仕様合意システム、装置及びプログラム
CN110855444A (zh) 一种基于可信第三方的纯软件cava身份认证方法
JP2003224562A (ja) 個人認証システム及びプログラム
JP4071474B2 (ja) 失効確認装置及び方法
CN114531235B (zh) 一种端对端加密的通信方法及系统
JP2004147252A (ja) 電子証明書およびその作成方法ならびに電子証明書による認証システム

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: 20150918

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160901

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170919

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180918

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190917

Year of fee payment: 8