KR20190059219A - 정보 처리 장치, 정보 처리 장치를 위한 방법, 및 프로그램 기억 매체 - Google Patents

정보 처리 장치, 정보 처리 장치를 위한 방법, 및 프로그램 기억 매체 Download PDF

Info

Publication number
KR20190059219A
KR20190059219A KR1020180138682A KR20180138682A KR20190059219A KR 20190059219 A KR20190059219 A KR 20190059219A KR 1020180138682 A KR1020180138682 A KR 1020180138682A KR 20180138682 A KR20180138682 A KR 20180138682A KR 20190059219 A KR20190059219 A KR 20190059219A
Authority
KR
South Korea
Prior art keywords
biometric information
information
service
authentication
user
Prior art date
Application number
KR1020180138682A
Other languages
English (en)
Other versions
KR102393024B1 (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 KR20190059219A publication Critical patent/KR20190059219A/ko
Application granted granted Critical
Publication of KR102393024B1 publication Critical patent/KR102393024B1/ko

Links

Images

Classifications

    • 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/0861Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
    • 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/45Structures or tools for the administration of 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/33User authentication using certificates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/86Secure or tamper-resistant housings
    • 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/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • 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/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • 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
    • 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/2117User registration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/12Fingerprints or palmprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/14Vascular patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/18Eye characteristics, e.g. of the iris
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/70Multimodal biometrics, e.g. combining information from different biometric modalities

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Telephone Function (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)
  • Storage Device Security (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

휴대 단말기는, 생체 정보 센서에서 판독한 생체 정보를 이용하여 유저의 로그인 처리를 실행하고, 네트워크 상의 서비스를 이용할 때에 수행되는 인증 처리에 필요한 비밀 키 및 그 비밀 키에 대응하는 공개 키를 생성하고, 생성된 비밀 키를 로그인 처리 시에 판독한 생체 정보와 연관시켜 스토리지에 저장하고, 생체 정보에 대응하는 인증 정보 ID 및 그 생체 정보와 연관시켜 스토리지에 저장된 비밀 키에 대응하는 공개 키를 서비스에 등록하기 위한 요구를 발행한다.

Description

정보 처리 장치, 정보 처리 장치를 위한 방법, 및 프로그램 기억 매체{INFORMATION PROCESSING APPARATUS, METHOD FOR INFORMATION PROCESSING APPARATUS, AND PROGRAM STORAGE MEDIUM}
본 발명은 네트워크 서비스에 있어서, 안전한 인증 방법을 제공하고 또한 유저의 편리성을 향상하기 위한 기술에 관한 것이다.
최근에, 생체 인증을 포함하는 새로운 인증 시스템으로서, FIDO(Fast Identity Online)이 있다. 생체 인증에서 사용되는 지문이나 정맥 패턴과 같은 생체 정보의 경우에, 종래의 ID/ 패스워드 인증에 있어서의 패스워드와 달리 생체 정보를 재기입할 수 없기 때문에, 기밀 정보 유출은 치명적이 된다.
다른 한편으로, FIDO는, 미리 유저가 사용하는 디바이스와 웹 서비스를 제공하는 서버 사이에서 등록 처리를 수행한다. 등록 처리에서, 서비스의 제공을 받는 디바이스에는 유저의 생체 인증과 연결되는 비밀 키가 보존되고, 서버에는 생체 인증과 연결되는 인증 식별 정보, 비밀 키와 쌍을 이루는 공개 키, 및 이와 유사한 정보가 등록된다. 그리고, 인증은 인터넷을 통해 서버에서 수행되지 않고, 유저가 사용하는 디바이스에서 수행된다. 또한, 네트워크 상에는 비밀 키를 사용하여 서명된 인증 결과가 전송된다. 즉, 생체 정보가 네트워크 상에서 전송되지 않기 때문에, 정보 누설의 리스크가 적다고 말할 수 있다.
일본 특허 공개 제2017-103546호 공보는, 휴대 단말기가 그 자신의 장치 내에 미리 등록되어 있는 단말기 인증 정보를 다기능 프린터(multi-function printer)(MFP)에 자동으로 송신하고, MFP는, 단말기 인증 정보와 MFP 내의 정규의 단말기 인증 정보를 대조해서 단말기 인증 처리를 자동으로 실행하는 통신 시스템을 개시하고 있다.
그러나, 일본 특허 공개 제2017-103546호 공보의 통신 시스템에서는, 휴대 단말기에 있어서, 단말기 인증 정보를 각각의 MFP마다 등록해 둘 필요가 있어, 이용하는 각각의 MFP마다 요구되는 등록은, 유저에 있어서 시간 소모적이다. 또한, 일본 특허 공개 제2017-103546호 공보의 통신 시스템에서는, MFP를 이용할 때에, 단말기 인증에 부가하여 생체 인증이 수행되지만, 생체 인증에 대해서 미리 수행되는 등록 작업에 대해서는 고려되지 않는다.
본 발명은 유저의 편리성을 향상하고, 또한 안전한 인증 방법을 제공하는 것이 가능한 정보 처리 장치를 제공한다.
본 발명의 실시예에 따른 정보 처리 장치는, 생체 인증을 위한 인증 모듈, 인증 모듈에 의해 인증 처리를 행할 때에 필요한 유저의 생체 정보를 저장하도록 구성되는 탬퍼 방지성(tamper resistance)을 갖는 기억 유닛, 생체 정보를 판독하도록 구성되는 생체 정보 센서, 생체 정보 센서에서 판독한 생체 정보를 사용하여 유저의 로그인 처리를 실행하는 실행 유닛, 네트워크 상의 서비스를 이용할 때에 수행되는 인증 처리에 요구되는 비밀 키와 비밀 키에 대응하는 공개 키를 생성하는 생성 유닛, 생성된 비밀 키를 로그인 처리 시에 판독한 생체 정보와 연관시켜 저장하는 저장 유닛, 및 생체 정보에 대응하는 식별 정보 및 생체 정보와 연관시켜 저장 유닛에 저장된 비밀 키에 대응하는 공개 키를 네트워크 상의 서비스에 등록하기 위한 요구를 발행하는 등록 유닛을 포함하는 정보 처리 장치이다.
본 발명의 추가 특징은 첨부 도면들을 참조하여 예시적인 실시예들에 대한 이하의 설명으로부터 명백해질 것이다.
도 1은, 본 발명의 실시예에 따른 시스템의 전체 구성의 예를 도시하는 도면이다.
도 2a 및 도 2b는, 각각의 장치의 하드웨어 구성의 예를 도시하는 도면이다.
도 3a 및 도 3b는, 각각의 장치의 기능 구성의 예를 도시하는 도면이다.
도 4는, 휴대 단말기에의 로그인 처리를 나타내는 흐름도이다.
도 5a 내지 도 5d는, 제1 실시예에 있어서 휴대 단말기가 표시하는 유저 인터페이스(UI)의 예를 도시하는 도면들이다.
도 6은, 인증자를 서비스에 등록하는 처리의 시퀀스를 도시하는 도면이다.
도 7a 내지 도 7c는, 인증자의 등록시에 사용하는 파라미터들의 예를 도시하는 도면들이다.
도 8은, 제1 실시예에 따른 크리덴셜 생성 처리(credential creation process)를 나타내는 흐름도이다.
도 9는, 서비스를 이용할 때의 인증 처리의 시퀀스를 도시하는 도면이다.
도 10a 내지 도 10c는, 생체 인증시에 사용하는 파라미터들의 예를 도시하는 도면들이다.
도 11은, 제2 실시예에 따른 크리덴셜 생성 처리를 나타내는 흐름도이다.
도 12는, 제2 실시예에 있어서 휴대 단말기가 표시하는 UI의 예를 도시하는 도면이다.
이하, 본 발명의 실시예에 대해서 도면 등을 참조하여 설명한다.
본 발명은 네트워크를 통해서 외부 시스템으로부터 제공되는 서비스에 대해 유저를 인증할 때 유저가 사용하는 디바이스(정보 처리 장치)를 통해 생체 인증을 행하고, 결과로서, 서비스에 대해 유저를 인증하는 메커니즘에 관한 것이다. 이것은, 서비스에 유저가 사용하는 디바이스에서의 생체 인증과 연관된 정보, 예를 들어, 인증 식별 정보, 공개 키 등을 미리 등록함으로써 실현될 수 있다. 이러한 메커니즘의 예들은 FIDO(fast identity online)를 포함하며, 본 발명은 FIDO로 한정되지 않는다는 점에 주목해야 한다.
[제1 실시예]
<시스템 구성>
도 1은, 본 발명의 실시예에 따른 시스템의 전체 구성의 예를 도시하는 도면이다.
도 1에 도시하는 시스템은, 휴대 단말기(101) 및 서버(102)를 포함한다. 휴대 단말기(101)는 스마트폰, 태블릿, 웨어러블 단말기 및 노트북 타입 퍼스널 컴퓨터와 같은 정보 처리 장치이다. 서버(102)는, 서비스를 제공하는 외부 시스템이며, 복수대의 장치로 구성될 수 있다. 또한, 서버(102)의 일부 또는 전부를 가상 머신 및 스토리지와 같은 리소스를 사용하여 구축할 수 있다.
휴대 단말기(101)와 서버(102)는 네트워크(103)를 통해 접속된다. 네트워크(103)는, 예를 들어, 인터넷과 같은 LAN(local area network) 및 WAN(wide area network), 전화 회선, 전용 디지털 회선, ATM(Asynchronous Transfer Mode) 회선, 프레임 릴레이 회선(frame relay circuit), 케이블 텔레비전 회선, 데이터 방송 무선 회선, 및 이와 유사한 것 중 임의의 것이다.
또한, 네트워크(103)는 이들의 조합에 의해 실현되는 소위 통신 네트워크일 수 있다. 네트워크(103)는 전술한 네트워크 회선들에 추가하여, 예를 들어, NFC(near field communication) 및 블루투스(등록 상표)와 같은 근거리 무선 통신 등을 포함한다. 네트워크(103)는 데이터의 송수신이 가능할 필요가 있다.
<휴대 단말기의 하드웨어 구성>
도 2a는, 휴대 단말기(101)의 하드웨어 구성의 예를 도시하는 도면이다.
시스템 버스(201)는 처리 유닛들(202 내지 210)을 서로 접속한다. 중앙 처리 장치(CPU)(202)는, 판독 전용 메모리(ROM)(204) 및 기억 장치(205)에 저장되어 있는 오퍼레이팅 시스템(OS) 및 다른 프로그램들을 실행하고, 시스템 버스(201)를 통해 처리 유닛들(202 내지 210)을 총괄적으로 제어한다. 프로그램들은, 후술하는 흐름도들을 실현하도록 구성되는 프로그램을 또한 포함한다.
RAM(203)은, CPU(202)의 메모리 및 워크 에어리어(work area)로서 기능한다. 기억 장치(205)는 솔리드 스테이트 드라이브(SSD) 및 SD 메모리 카드와 같은 기억 장치이며, 외부 기억 장치로서 기능한다. 탬퍼 모듈(tamper module; TPM)(206)은, 기밀 정보를 처리하고 저장하는 목적을 위해 사용되고, 저장한 데이터가 외부로부터 판독되는 것을 방지하는 탬퍼 방지성(tamper-proof property)을 갖는 기억 수단이다.
본 실시예에서는, TPM(206)에는, 생체 정보 센서(211)에 의해 판독된 지문, 홍채 및 정맥 패턴에 대한 정보와 같은 생체 정보 자체 이외에, 생체 정보와 연관된 각종 정보가 저장된다. 각종 정보는, 예를 들어, 생체 정보의 특징량, 생체 정보와 연관되어 생성된 비밀 키 등이다. 이후, 생체 정보 및 생체 정보와 연관된 각종 정보를 "생체 정보"라고 칭하기로 한다.
네트워크 인터페이스(I/F)(207)는, Wi-Fi(wireless fidelity) 등을 사용하여 외부의 네트워크 기기와 한 방향 또는 양방향으로 데이터를 교환한다. 생체 정보 센서(208)는 지문, 홍채, 정맥 패턴, 음성, 및 얼굴과 같은 유저의 생체 정보를 판독하도록 구성되는 센서이고, 예를 들어, 유저의 생체 정보를 판독 신호로 변환한다. 생체 정보는 이것들로 한정되지 않는다는 것에 주목한다. 생체 정보 센서(208)는 전용의 판독기, 카메라, 마이크 등을 사용하여 실현되고, 휴대 단말기(101)는 복수의 생체 정보 센서(208)를 포함할 수 있다.
터치 패널(209)은 2개의 기능, 즉, 표시와 입력을 갖고, 애플리케이션 화면, 키보드 화면 등을 표시하고, 유저가 화면에 손가락이나 전용의 펜으로 누를 때, 터치 패널(209)은 터치된 화면 위치를 외부에 신호 정보로서 출력한다. 출력된 신호 정보를 애플리케이션이 이용할 때, 유저는 터치 패널(209)을 통해서 애플리케이션을 조작할 수 있다.
생체 정보 센서(208)와 터치 패널(209)은, 겹쳐서 실장하는 것이 가능하고, 그래서 터치 패널(209)에의 조작에 따라 유저의 지문 정보를 판독하는 것도 가능하다. 근접 통신 I/F(210)는, NFC 및 블루투스와 같은 근접 통신용의 통신 방법에 대응하는 네트워크 I/F이다.
<서버의 내부 구성>
도 2b는, 서버(102)의 하드웨어 구성의 예를 도시하는 도면이다.
서버(102)는 일반적인 정보 처리 장치의 하드웨어로 구성될 수 있다. CPU(241)는, ROM(243)에 저장되어 있는 프로그램 및 외부 메모리(250)로부터 RAM(242)에 로드된 OS(오퍼레이팅 시스템) 및 애플리케이션과 같은 프로그램을 실행한다. 즉, CPU(241)는, 판독 가능한 기억 매체에 저장된 프로그램을 실행함으로써, 후술하는 각각의 흐름도의 처리를 실행하는 각각의 처리 유닛으로서 기능한다.
RAM(242)은, CPU(241)의 메인 메모리이며, 워크 에어리어 등으로서 기능한다. 키보드 컨트롤러(244)는 키보드(248) 및 포인팅 디바이스(도시되지 않음)로부터의 입력 조작을 제어한다. 포인팅 디바이스는, 예를 들어, 마우스, 터치 패드, 터치 패널, 트랙볼 등이다. 디스플레이 컨트롤러(245)는 디스플레이(249)의 표시를 제어한다.
디스크 컨트롤러(246)는 외부 메모리(250), 예를 들어, 각종 데이터를 기억하는 하드 디스크(HD), 플렉시블 디스크(FD) 등에의 데이터 액세스를 제어한다. 네트워크 I/F(247)는 네트워크에 접속되어서 네트워크에 접속된 다른 디바이스들과의 통신 제어 처리를 실행한다. 또한, 네트워크 I/F(247)는, NFC 및 블루투스와 같은 근접 통신용의 통신 방법도 수용하며, 휴대 단말기(101) 등과 통신하고, 휴대 단말기(101)와 데이터를 교환한다. 시스템 버스(251)는 처리 유닛들(241 내지 250)을 서로 접속한다.
<휴대 단말기의 기능 구성>
도 3a는, 휴대 단말기(101)의 기능 구성의 예를 도시하는 도면이다.
휴대 단말기(101)는 로그인 애플리케이션(300), 제휴 애플리케이션(310) 및 인증자(authenticator)(320)를 포함한다. 로그인 애플리케이션(300), 제휴 애플리케이션(310) 및 인증자(320)는, CPU(202)가, ROM(204)에 저장된 프로그램을 RAM(203)에 판독해서 그 프로그램을 실행할 때 실현된다.
로그인 애플리케이션(300)은 유저의 휴대 단말기(101)에의 로그인 처리를 실행한다. 로그인 처리의 상세는 후술한다. 로그인 애플리케이션(300)은 표시 유닛(301) 및 단말기 유저 인증 제어 유닛(302)으로 구성된다. 표시 유닛(301)은 터치 패널(209)을 통해 유저에 UI(User Interface)를 제공하도록 구성되는 소프트웨어 모듈이다. 예를 들어, 표시 유닛(301)은 터치 패널(209)을 통해서, 예를 들어, 휴대 단말기(101)의 유저를 인증하도록 구성되는 화면을 표시하고 유저의 조작을 접수한다.
단말기 유저 인증 제어 유닛(302)은 표시 유닛(301)을 통해 수신한 인증과 연관된 이벤트를 인증자(320)에 전달하고, 인증자(320)로부터 인증 결과를 수신하도록 구성되는 소프트웨어 모듈이다. 본 실시예에서, 로그인 애플리케이션(300)은 OS에 표준으로서 로드된 것으로 상정하고 있지만, 본 발명은 이것으로 한정되지 않는다는 것에 주목한다. 예를 들어, 로그인 애플리케이션(300)은 로그인 애플리케이션(300)과 동일한 기능을 갖는 애플리케이션이라면 유저에 의해 인스톨된 애플리케이션으로 대체될 수 있다.
제휴 애플리케이션(310)은 서버(102)와 제휴하여 인증 기능 및 서버(102)의 서비스를 유저에 제공한다. 제휴 애플리케이션(310)은 휴대 단말기(101)에 인스톨된 네이티브 애플리케이션(native application)이나 웹 브라우저이다. 제휴 애플리케이션(310)은 표시 유닛(311), 통신 유닛(312), 인증자 등록 제어 유닛(313) 및 서비스 인증 제어 유닛(314)으로 구성된다.
표시 유닛(311)은 터치 패널(209)을 통해서 유저에 UI(User Interface)를 제공하도록 구성되는 소프트웨어 모듈이다. 표시 유닛(311)은 인증자(320)를 서버(102)에 등록하기 위한 화면 및 도 3b를 참조하여 후술하는 서버(102)의 서비스(370)가 제공하는 기능을 이용하기 위한 화면을 표시한다. 통신 유닛(312)은 네트워크 I/F(207)를 통해서 서버(102)와 같은 외부 장치와 통신하도록 구성되는 소프트웨어 모듈이다.
인증자 등록 제어 유닛(313)은 인증자(320)에 대하여 후술하는 크리덴셜 생성 요구를 수행하도록 구성되는 소프트웨어 모듈이다. 본 실시예에서, 인증자 등록 제어 유닛(313)은 제휴 애플리케이션(310)에 포함되지만, 본 발명은 이것으로 한정되지 않는다는 것에 주목한다. 예를 들어, 인증자 등록 제어 유닛(313)은 제휴 애플리케이션(310)과 독립적으로 구성될 수 있고, 제휴 애플리케이션(310)은 독립적인 인증자 등록 제어 유닛(313)을 호출할 수 있다.
또한, 인증자 등록 제어 유닛(313)은 OS에 표준으로서 로드될 수 있다. 이와 같이, 인증자 등록 제어 유닛(313)이 애플리케이션과 독립적으로 제공될 때, 제휴 애플리케이션(310)뿐만 아니라, 다른 애플리케이션들이 인증자 등록 제어 유닛(313)을 호출할 수 있도록 하는 구성이 제공될 수 있다.
서비스 인증 제어 유닛(314)은 서버(102) 등으로부터의 요구를 받아서, 인증자(320)에 대하여 생물학적 인증 처리(biological authentication processing)를 요구하고, 인증시에 서버(102)에 송신되는 요구들을 생성한다. 또한, 서비스 인증 제어 유닛(314)은 생물학적 인증 처리의 결과를 수신한다. 서비스 인증 제어 유닛(314)이 행하는 구체적인 처리 플로우에 대해서는 후술한다. 서비스 인증 제어 유닛(314)은 인증자 등록 제어 유닛(313)과 마찬가지로, 제휴 애플리케이션(310)과 독립적으로 구성될 수 있다는 점에 주목한다.
인증자(320)는, 생체 정보 센서(208)에 의해 판독한 생체 정보를 이용한 생체 인증을 위한 인증 모듈이다. 인증자(320)는, 인증자 등록 처리 유닛(321), 단말기 유저 인증 처리 유닛(322), 서비스 인증 처리 유닛(323), 생체 정보 요구 유닛(324), 단말기 유저 정보 저장 유닛(325) 및 서비스 인증 정보 저장 유닛(326)으로 구성된다.
인증자 등록 처리 유닛(321)은 제휴 애플리케이션(310)의 인증자 등록 제어 유닛(313) 등으로부터 크리덴셜 생성 요구를 수신하고, 쌍 키(pair key)(비밀 키 및 공개 키) 및 크리덴셜을 생성하도록 구성되는 소프트웨어 모듈이다. 단말기 유저 인증 처리 유닛(322)은 로그인 애플리케이션(300)의 단말기 유저 인증 제어 유닛(302)으로부터 인증 요구를 수신하고, 단말기 유저 정보 저장 유닛(325)에 저장되어 있는 정보를 사용하여 인증을 수행하도록 구성되는 소프트웨어 모듈이다.
서비스 인증 처리 유닛(323)은 제휴 애플리케이션(310)의 서비스 인증 제어 유닛(314) 등으로부터 생체 인증 요구를 수신하고, 생체 정보 센서(208)에 의해 판독한 생체 정보를 사용하여 생체 인증을 수행하도록 구성되는 소프트웨어 모듈이다. 생체 정보 요구 유닛(324)은 생체 정보의 입력을 접수하기 위한 UI를, 터치 패널(209)을 사용하여 유저에 제공하도록 구성되는 소프트웨어 모듈이다.
단말기 유저 정보 저장 유닛(325)은 휴대 단말기(101)의 유저 정보 등을 TPM(206)에 저장하도록 구성되는 소프트웨어 모듈이다. 단말기 유저 정보 저장 유닛(325)에 저장되는 유저 정보는, 예를 들어, 후술하는 표 A에 나타내는 정보이다. 서비스 인증 정보 저장 유닛(326)은 인증 정보 등을 TPM(206)에 저장하도록 구성되는 소프트웨어 모듈이다. 인증 정보는, 예를 들어, 후술하는 표 B에 나타내는 정보이다. 본 실시예에서, 로그인 애플리케이션(300)과 인증자(320)는 별개인 애플리케이션들로서 구성되지만, 로그인 애플리케이션(300)과 인증자(320)는 단일의 애플리케이션으로서 구성될 수 있다는 점에 주목한다.
<서버의 기능 구성>
도 3b는, 서버(102)의 기능 구성의 예를 도시하는 도면이다.
서버(102)에서는, 서비스(370)가 동작한다. 서비스(370)는 서버(102)에 포함된 ROM(243)에 저장되어 있는 프로그램을, CPU(241)가 RAM(242)에 판독해서 그 프로그램을 실행할 때 실현된다.
서비스(370)는 레거시 인증 처리 유닛(371), 인증자 정보 처리 유닛(372), 통신 유닛(373), 프리젠테이션 유닛(374), 유저 정보 저장 유닛(375), 인증자 정보 저장 유닛(376) 및 토큰 관리 유닛(377)으로 구성된다. 본 실시예에서, 유저 ID와 패스워드의 일치 검증이 수행되는 인증은 이 인증을 생체 인증과 구별하기 위해서 "레거시 인증"이라고 지칭한다는 점에 주목해야 한다.
레거시 인증 처리 유닛(371)은 통신 유닛(373)이 수신한 레거시 인증 요구에 포함되는 유저 ID 및 패스워드가, 유저 정보 저장 유닛(375)에 저장되어 있는 유저 ID 및 패스워드와 일치하는지를 검증하도록 구성되는 소프트웨어 모듈이다. 인증자 정보 처리 유닛(372)은 통신 유닛(373)이 수신한 크리덴셜을 사용하여, 인증자(320)에 관한 정보를, 인증자 정보 저장 유닛(376)에 저장하도록 구성되는 소프트웨어 모듈이다. 또한, 인증자 정보 처리 유닛(372)은 통신 유닛(373)이 수신한 후술하는 어써션(assertion) 정보를 검증한다.
통신 유닛(373)은 네트워크 I/F(247)를 통해서 휴대 단말기(101)와 같은 외부 장치와 통신하도록 구성되는 소프트웨어 모듈이다. 예를 들어, 통신 유닛(373)은 휴대 단말기(101)로부터 각종 요구를 접수한다. 프리젠테이션 유닛(374)은 화면들, 예를 들어, 통신 유닛(373)이 수신한 인증자(320)를 등록하기 위한 화면을, 각종 화면의 취득 요구에 대한 응답으로, HTML(hypertext markup language), CSS(cascading style sheet), JavaScript(등록 상표) 또는 다른 유형의 웹 프로그래밍 언어를 사용하여 생성하도록 구성되는 소프트웨어 모듈이다.
유저 정보 저장 유닛(375)은 표 C 및 표 F를 사용하여 후술하는 유저에 관한 정보(이하 '유저 정보'라고 함)를 외부 메모리(250) 또는 외부 스토리지 시스템(도시되지 않음)에 저장하도록 구성되는 소프트웨어 모듈이다. 인증자 정보 저장 유닛(376)은 표 E를 사용하여 후술하는 인증자(320)에 관한 정보(이하 '인증자 정보'라고 함)를 외부 메모리(250) 또는 외부 스토리지 서비스에 저장하도록 구성되는 소프트웨어 모듈이다. 토큰 관리 유닛(377)은 후술하는 토큰을 발행하고 검증하도록 구성되는 소프트웨어 모듈이다.
<휴대 단말기가 관리하는 테이블>
이하, 표 A 및 표 B를 사용하여, 휴대 단말기(101)가 TPM(206)에 저장하는 각종 데이터에 대해서 설명한다. 상세하게는, 표 A 및 표 B에 나타내는 테이블 데이터는, 휴대 단말기(101)에 포함된 인증자(320)의 단말기 유저 정보 저장 유닛(325) 및 서비스 인증 정보 저장 유닛(326)이 TPM(206)에 저장하는 데이터이다.
표 A 단말기 유저 정보 테이블
Figure pat00001
표 A의 단말기 유저 정보 테이블은, 휴대 단말기(101)가 관리하는 단말기 유저 정보 테이블의 예이다. 단말기 유저 정보 저장 유닛(325)은 단말기 유저 정보 테이블을 TPM(206)에 저장하고 관리한다. 단말기 유저 정보 관리 테이블에서는, 하나의 레코드가 하나의 단말기 유저의 정보 엔트리를 나타낸다. 유저 ID 열은, 레거시 인증 등에서 사용하는, 휴대 단말기(101)가 유저를 고유하게 식별할 수 있는 ID를 저장한다.
패스워드 열은, 유저가 휴대 단말기(101)에 로그인하기 위해서 유저를 인증하기 위한 패스워드를 저장한다. 생체 정보 ID 열은, 생체 정보의 특징량(feature quantity)에 대응하는 ID를 저장한다. 휴대 단말기(101)는 유저가 입력한 패스워드 또는 생체 정보에 대응하는 생체 정보 ID가 테이블 내의 그것과 일치하는 경우에 휴대 단말기(101)에의 로그인을 허가한다. 유저 ID, 패스워드 및 생체 정보 ID는, 유저가 휴대 단말기(101)에 등록될 때에 설정된다. 휴대 단말기(101)에의 로그인 처리의 상세는, 도 4를 사용하여 후술한다.
로그인 상태 열은, 현재 유저가 로그인하고 있는지의 여부를 나타내는 정보를 저장한다. 인증 방법 열은, 유저가 어느 인증 방법으로 로그인했는지를 나타내는 정보를 저장한다. 예를 들어, 유저가 생체 인증들 중 하나인 지문 인증을 통해 로그인했을 경우, 인증 방법 열은, 인증 방법이 지문 인증인 것을 나타내는 정보로서, 예를 들어, "지문"을 저장한다. 로그인 상태 열 및 인증 방법 열에 대응하는 정보를 저장하는 수순에 대해서는 도 4를 사용하여 후술한다.
표 B 서비스 인증 정보 관리 테이블
Figure pat00002
표 B의 서비스 인증 정보 관리 테이블에서는, 하나의 레코드가 하나의 인증 정보의 엔트리를 나타낸다. 표 A의 레코드는, 인증자(320)를 서비스에 등록할 때에 생성되어, 표 B에 추가된다. 인증 정보 ID 열은, 각각의 인증 정보를 고유하게 식별하기 위한 ID를 저장한다. 서비스 ID 열은, 생체 정보를 이용한 인증 기능을 이용하는 서비스를 고유하게 식별하기 위한 ID를 저장한다.
본 실시예에서는, 서비스 ID로서 서버 및 서비스의 도메인명, 상세하게는, 톱 레벨 도메인(top level domain) 및 세컨더리 레벨 도메인(secondary level domain)의 정보를 이용한다. 예를 들어, 서비스(370)의 URL(uniform resource locator)이 http://www.service.com인 경우에, 서비스(370)의 서비스 ID는 service.com으로 설정된다.
비밀 키 열은, 생체 정보에 대해서 생성된 쌍 키에서의 비밀 키를 저장한다. 비밀 키 열에 대응하는 공개 키(즉, 비밀 키와 쌍을 이루는 공개 키)가, 서비스 ID 열에 나타나는 서비스에 등록된다. 생체 정보 ID 열은, 생체 정보의 특징량에 대응하는 ID를 저장한다. 서비스 인증 정보 관리 테이블의 각각의 열에 대응하는 정보를 저장하는 수순 및 공개 키를 서비스(370)에 저장하는 수순에 대해서는 후술한다.
<서버가 관리하는 테이블>
이하, 표 C 내지 표 F를 사용하여, 서버(102)가 저장하는 각종 데이터에 대해서 설명한다. 상세하게는, 표 C 내지 표 F에 나타내는 테이블 데이터는, 서버(102)에 포함된 서비스(370)의 각각의 소프트웨어 모듈이 외부 메모리(250) 또는 외부 스토리지 시스템에 저장하는 데이터이다.
표 C 유저 정보 관리 테이블
Figure pat00003
표 C의 유저 정보 관리 테이블은, 서비스(370)의 유저 정보 저장 유닛(375)이 관리하는 데이터이다. 유저 정보 관리 테이블에서는, 하나의 레코드가 서비스(370)의 하나의 유저 정보의 엔트리를 나타낸다. 유저 ID 열은, 서비스(370)의 유저를 고유하게 식별하기 위한 ID를 저장한다. 패스워드 열은, 유저를 인증하기 위한 패스워드를 저장한다. 메일 어드레스 열은, 유저의 메일 어드레스를 저장한다. 유저 정보 관리 테이블은, 유저 정보로서, 메일 어드레스 이외에도 유저의 주소와 같은 유저와 연관된 속성 정보를 저장할 수 있다는 점에 주목해야 한다.
표 D 증명 챌린지 관리 테이블
Figure pat00004
표 D의 증명 챌린지 관리 테이블(attestation challenge management table)은, 서비스(370)의 유저 정보 저장 유닛(375)이 관리하는 데이터이다. 증명 챌린지 관리 테이블에서는, 하나의 레코드가 하나의 증명 챌린지 정보의 엔트리를 나타낸다. 증명 챌린지는, 챌린지 리스폰스 인증(challenge response authentication)을 행하기 위한 검증용 데이터로서 이용하는 파라미터이며, 각각의 유저에 대해 발행된다.
증명 챌린지의 발행 처리에 대해서는 후술한다. 증명 챌린지 열은, 증명 챌린지의 값을 저장한다. 유저 ID 열은, 증명 챌린지를 발행한 유저의 유저 ID를 저장한다. 유효 기한(effective period) 열은, 증명 챌린지의 유효 기한을 저장한다.
표 E 인증자 정보 관리 테이블
Figure pat00005
표 E의 인증자 정보 관리 테이블은, 서비스(370)의 인증자 정보 저장 유닛(376)이 관리하는 데이터이다. 인증자 정보 관리 테이블에서는, 하나의 레코드가 하나의 인증자 정보를 나타낸다. 인증자(320)의 등록을 행하면, 인증자 정보 관리 테이블에 레코드가 추가된다. 인증 정보 ID 열은, 등록된 인증자(320)가 서비스 인증 정보 관리 테이블(즉, 표 B)을 사용하여 관리하는 인증 정보의 인증 정보 ID 열의 값을 저장한다.
공개 키 열은, 인증자(320)가 생성하고 서비스 인증 정보 관리 테이블(즉, 표 B)을 통해 관리하는 비밀 키에 대응하는 공개 키(즉, 비밀 키와 쌍을 이루는 공개 키)를 저장한다. 즉, 비밀 키와 공개 키가 서비스 인증 정보 관리 테이블(즉, 표 B)과 인증자 정보 관리 테이블(즉, 표 E)에 있어서 인증 정보 ID와 동일한 값을 갖는 경우, 표 B의 비밀 키로 암호화된 데이터는, 표 E의 공개 키로 복호화될 수 있다. 유저 ID 열은, 서비스(370)가 유저를 고유하게 식별할 때 사용하는 ID를 저장한다.
표 F 토큰 관리 테이블
Figure pat00006
표 F의 토큰 관리 테이블은, 서비스(370)의 유저 정보 저장 유닛(375)이 관리하는 데이터이다. 토큰은, 본 실시예에 있어서, 후술하는 생체 정보를 이용한 일련의 인증 처리가 성공한 결과, 서비스(370)에 의해 발행된다. 제휴 애플리케이션(310)은 서비스(370)를 이용할 때에, 발행된 토큰을 제공해서 요구를 송신함으로써, 서비스(370)가 제공하는 기능을 이용할 수 있다.
토큰 관리 테이블에서는, 하나의 레코드가 하나의 토큰의 정보를 나타낸다. 토큰 열은, 토큰을 저장한다. 유저 ID 열은, 서비스(370)가 유저를 고유하게 식별하는 ID를 저장한다. 유효 기한 열은, 토큰의 유효 기한을 저장한다. 서비스(370)는, 유저로부터의 요구에 제공된 토큰이 토큰 관리 테이블의 토큰 열에 존재하고 그 기한이 유효 기한 열의 유효 기한을 지나지 않은 경우에, 그 요구를 접수한다.
<휴대 단말기의 로그인 처리>
이하, 도 4 및 도 5a를 참조하여, 휴대 단말기(101)의 로그인 처리에 대해서 설명한다.
도 4는, 휴대 단말기(101)의 로그인 처리를 설명하기 위한 흐름도이다.
먼저, 단계 S401에서, 로그인 애플리케이션(300)의 표시 유닛(301)은 로그인 화면을 표시한다.
도 5a는, 단계 S401에서 표시되는 로그인 화면의 예이다.
로그인 화면(500)은 로그인 애플리케이션(300)의 표시 유닛(301)이 표시하는 UI이다. 텍스트 박스(501)는, 휴대 단말기(101)의 유저 ID를 입력하도록 구성되는 텍스트 박스이다. 텍스트 박스(502)는, 패스워드를 입력하도록 구성되는 텍스트 박스이다. 버튼(503)은 텍스트 박스들(501 및 502)에 입력된 유저 ID 및 패스워드를 사용한 로그인 요구를 접수하도록 구성되는 버튼이다.
버튼(504)은 지문 등의 생체 정보를 판독하도록 구성되는 버튼이며, 생체 정보 센서(208)를 포함한다. 생체 정보로서, 정맥, 홍채, 음성 및 얼굴과 같은 정보를 이용할 수 있고, 본 발명은 이것으로 한정되지 않는다는 점에 주목해야 한다. 여기서, 휴대 단말기(101)는 임의의 생체 정보 또는 임의의 복수의 생체 정보의 조합을, 생체 인증에 사용하는 생체 정보로서 입력하도록 구성된다.
또한, 버튼(504)은 지문 등의 생체 정보를 판독하고 그 생체 정보를 이용한 로그인 요구를 접수하도록 구성되는 버튼이다. 이와 같이, 본 실시예에서는, 휴대 단말기(101)는 유저 ID 및 패스워드를 사용한 로그인 및 생체 정보를 이용한 로그인을 수행할 수 있다. 휴대 단말기(101)에의 로그인 방법은, 이것으로 한정되지 않으며, 예를 들어, PIN 코드를 사용한 로그인과 같은 기타의 방법들을 사용한 로그인 요구가 접수되는 구성이 있을 수 있다는 점에 주목해야 한다.
도 4를 다시 참조하여 설명이 제공된다. 단계 S402에서, 표시 유닛(301)은 인증 이벤트를 검출했는지 결정한다. 본 실시예에서는, 인증 이벤트는, 로그인 화면(500)에 있어서, 버튼(503)의 누름이 검출되었을 경우 또는 버튼(504)이 유저의 손가락을 검출한 경우에 발생한다. 인증 이벤트를 검출하였다고 결정된 경우에, 처리는 단계 S403의 처리로 진행하고, 인증 이벤트를 검출하지 않았다고 결정된 경우에, 인증 이벤트의 감시를 계속한다.
단계 S403에서, 표시 유닛(301)은 인증 이벤트가 버튼(503)의 누름의 검출로 인한 것인지, 버튼(504)에 의한 유저의 손가락의 검출로 인한 것인지를 결정한다. 인증 이벤트가 버튼(503)의 누름의 검출로 인한 것이라고 결정된 경우, 표시 유닛(301)은 단말기 유저 인증 제어 유닛(302)을 통해 인증자(320)의 단말기 유저 인증 처리 유닛(322)에 대하여 로그인 화면(500)에 입력된 유저 ID 및 패스워드를 전달한다. 그 다음에, 처리는 단계 S404의 처리로 진행한다.
다른 한편으로, 인증 이벤트가 버튼(504)에 의한 유저의 손가락의 검출로 인한 것이라고 결정된 경우, 표시 유닛(301)은 단말기 유저 인증 제어 유닛(302)을 통해 인증자(320)의 단말기 유저 인증 처리 유닛(322)에 대하여 생체 인증을 요구한다. 그 다음에, 처리는 단계 S405의 처리로 진행한다.
단계 S404에서, 인증자(320)의 단말기 유저 인증 처리 유닛(322)은 단계 S403에서 전달된 유저 ID 및 패스워드를 사용하여 레거시 인증을 행한다. 구체적으로는, 단말기 유저 인증 처리 유닛(322)은, 단계 S403에서 전달된 유저 ID와 패스워드의 조합이 단말기 유저 정보 저장 유닛(325)이 관리하는 단말기 유저 정보 테이블(즉, 표 A)에 저장되어 있는지를 검증함으로써 유저의 인증을 행한다.
단계 S405에서, 표시 유닛(301)은 버튼(504)에 포함된 생체 정보 센서(208)를 통해 생체 정보를 판독한다. 그리고, 표시 유닛(301)은 판독된 생체 정보를, 단말기 유저 인증 제어 유닛(302)을 통해 인증자(320)의 단말기 유저 인증 처리 유닛(322)에 전달한다.
단계 S406에서, 인증자(320)의 단말기 유저 인증 처리 유닛(322)은 단계 S405에서 전달된 생체 정보를 사용하여 생체 인증을 행한다. 구체적으로는, 단말기 유저 인증 처리 유닛(322)은, 단말기 유저 정보 저장 유닛(325)이 관리하는 단말기 유저 정보 테이블(즉, 표 A) 중에서 단계 S405에서 전달된 생체 정보의 특징량에 대응하는 생체 정보 ID를 식별함으로써 유저의 인증을 행한다.
단계 S407에서, 단말기 유저 인증 처리 유닛(322)은 단계 S404 또는 단계 S406의 인증이 성공하였는지를 결정한다. 인증이 성공했다고 결정된 경우, 처리는 단계 S408의 처리로 진행한다. 다른 한편으로, 인증이 실패했다고 결정된 경우, 인증의 실패를 나타내는 정보를 로그인 애플리케이션(300)의 단말기 유저 인증 제어 유닛(302)에 전달하고 나서, 처리는 단계 S410의 처리로 진행한다.
단계 S408에서, 단말기 유저 인증 처리 유닛(322)은 단말기 유저 정보 저장 유닛(325)을 통해 단말기 유저 정보 테이블(즉, 표 A)의 로그인 상태 열 및 인증 방법 열을 갱신한다. 예를 들어, 인증 이벤트가 버튼(504)에 의한 유저의 손가락의 검출로 인해 발생했다고 결정된 경우, 로그인 상태 열은 로그인이 완료되었다는 것을 나타내는 "로그인"으로 갱신되고, 인증 방법 열은 지문 인증이 수행되었다는 것을 나타내는 "지문"으로 갱신된다.
단계 S409에서, 휴대 단말기(101)의 OS는, 홈 화면(도시되지 않음)을 표시하고, 도 4에 도시하는 처리를 종료한다. 홈 화면은, 제휴 애플리케이션(310) 또는 기타의 애플리케이션들을 호출하도록 구성되는 버튼 등이 배치된다. S410에서, 로그인 애플리케이션(300)의 표시 유닛(301)은 로그인이 실패했다고 결정된 것을 나타내는 UI(도시되지 않음)를 표시하고, 도 4에 도시하는 처리를 종료한다.
<인증자의 등록 처리>
이하, 도 5b 내지 도 8을 참조하여, 휴대 단말기(101)의 인증자(320)를 서버(102)의 서비스(370)에 등록하는 처리에 대해서 설명한다.
인증자의 정보를 서비스에 등록하는 것을, 간단히 "인증자 등록"이라 칭한다.
5b는, 휴대 단말기(101)의 제휴 애플리케이션(310)의 톱 화면(top screen)의 예를 도시하는 도면이다.
제휴 애플리케이션(310)의 톱 화면(530)은 제휴 애플리케이션(310)의 표시 유닛(311) 상에 표시되는 UI이다. 도 4의 단계 S409에서 표시된 홈 화면(도시되지 않음)에 있어서, 제휴 애플리케이션(310)을 호출하도록 구성되는 버튼의 누름이 검출되면, 표시 유닛(301)이 톱 화면(530)을 표시한다.
톱 화면(530)은 버튼(531) 및 버튼(532)으로 구성된다. 버튼(531)은 서버(102)의 서비스(370)에 인증자(320)를 등록하기 위한 버튼이다. 버튼(531)이 눌러지면, 서비스(370)에의 등록 요구를 접수한다. 버튼(532)은 서버(102)의 서비스(370)에의 생체 인증 요구를 접수하기 위한 버튼이다. 서비스(370)에 있어서의 생체 인증 처리에 대해서는, 도 9를 참조하여 설명한다. 제휴 애플리케이션(310)의 표시 유닛(311)은 버튼(531)의 누름이 검출되면, 도 5c에 나타내는 레거시 인증 화면을 표시한다.
도 5c는, 레거시 인증 화면의 예를 도시하는 도면이다.
레거시 인증 화면(570)은 제휴 애플리케이션(310)의 표시 유닛(311)에 의해 표시되는 UI이다. 레거시 인증 화면(570)은 텍스트 박스들(571 및 572)과 버튼(573)으로 구성된다. 텍스트 박스(571)는, 서버(102)의 서비스(370)에 있어서의 유저 ID를 입력하기 위한 텍스트 박스이다.
텍스트 박스(572)는, 패스워드를 입력하기 위한 텍스트 박스이다. 버튼(573)은 텍스트 박스들(571 및 572)에 입력된 유저 ID 및 패스워드를 사용한 레거시 인증 요구를 접수하기 위한 버튼이다. 제휴 애플리케이션(310)의 표시 유닛(311)이 버튼(573)의 누름을 검출하면, 도 6에 나타내는 처리가 개시한다.
도 6은, 휴대 단말기(101)의 인증자(320)를 서버(102)의 서비스(370)에 등록하는 처리의 시퀀스를 도시하는 도면이다.
단계 S601에서, 제휴 애플리케이션(310)의 통신 유닛(312)은 레거시 인증 화면(570)에 입력된 유저 ID 및 패스워드를 파라미터들로서 사용하여 서버(102)의 서비스(370)에 레거시 인증 요구를 송신한다.
단계 S602에서, 서비스(370)의 레거시 인증 처리 유닛(371)은 수신한 ID 및 패스워드를 검증한다. 레거시 인증의 결과가 에러인 경우, 레거시 인증 처리 유닛(371)은 제휴 애플리케이션(310)에 인증 에러를 반환한다. 도 6은, 레거시 인증이 성공한 케이스를 도시한다.
단계 S603에서, 서비스(370)의 토큰 관리 유닛(377)은 토큰을 발행하고, 유저 정보 저장 유닛(375)은 그 토큰에 관한 정보를 토큰 관리 테이블(즉, 표 F)을 사용하여 관리한다. 단계 S604에서, 서비스(370)의 통신 유닛(373)은 단계 S603에서 발행된 토큰을 제휴 애플리케이션(310)에 반환한다.
단계 S605에서, 제휴 애플리케이션(310)의 통신 유닛(312)은 서비스(370)에, 인증자 등록 요구를 송신한다. 인증자 등록의 요구는, 단계 S604에서 수신된 토큰을 포함한다. 후속 처리에 있어서, 제휴 애플리케이션(310)으로부터 서비스(370)에의 요구는 마찬가지로 토큰을 포함한다.
단계 S606에서, 서비스(370)의 인증자 정보 처리 유닛(372)은 등록 파라미터들(700)을 생성한다. 단계 S606의 처리에서, 토큰 관리 유닛(377)은 단계 S605의 요구에 포함되는 토큰의 유효성(validity)을 검증하고, 토큰이 유효하다고 검증된 경우에 처리가 실행된다. 토큰의 유효성은, 단계 S605의 요구에 포함되는 토큰이, 토큰 관리 테이블(즉, 표 F)에 존재하고 그 기한이 유효 기한을 지나지 않은 경우에, 유효한 것으로 결정된다.
등록 파라미터들은, 서버(102)가 인증자(320)의 등록 처리를 실행할 때에 사용하는 데이터이다. 제휴 애플리케이션(310)을 통해서 인증자(320)가 등록 파라미터들을 수신하고, 등록 파라미터들에 포함되는 데이터를 사용하여 크리덴셜을 생성한다. 그 다음에, 서버(102)는 제휴 애플리케이션(310)을 통해서 크리덴셜을 수신하고, 그 크리덴셜에 기초하여, 제휴 애플리케이션(310)으로부터의 등록 요구가 비인증된 요구(unauthorized request)가 아닌 것을 검증한다. 이하, 등록 파라미터들에 대해서 설명한다.
도 7a 내지 도 7c는, 인증자(320)의 등록시에, 휴대 단말기(101)와 서버(102) 사이의 통신에 포함되는 파라미터들의 예를 도시하는 도면들이다.
여기서, 도 7a를 참조하여 등록 파라미터들에 대해서 설명한다. 등록 파라미터들(700)은 어카운트 정보(701), 암호화 파라미터(702), 증명 챌린지(attestation challenge)(703) 및 인증 확장 영역(704)으로 구성된다.
어카운트 정보(701)는, 서비스(370)에 있어서의, 단계 S602의 레거시 인증을 통해 식별한 유저 ID 및 유저 ID와 연결된 메일 어드레스와 같은 유저와 연관된 속성 정보를 저장한다. 암호화 파라미터(702)는, 서비스(370)가 서포트하고 있는 암호화 알고리즘과 같은, 등록하는 인증 정보와 연관된 속성 정보를 저장한다. 증명 챌린지(703)는, 챌린지 리스폰스 인증을 행하기 위해서 이용하는 검증용 데이터를 저장한다.
검증용 데이터, 즉, 증명 챌린지(703)는 단계 S606에서 등록 파라미터들을 생성할 때에 생성되고, 증명 챌린지 관리 테이블(즉, 표 D)에 유저 ID, 유효 기한 등과 연관시켜 저장된다. 인증 확장 영역(704)은, 서비스(370)가 제휴 애플리케이션(310), 인증자(320) 등의 동작을 제어하기 위해서 이용하는, 서비스(370)가 지정가능한 확장 파라미터를 저장한다.
도 6을 다시 참조하여 설명이 제공된다. 단계 S607에서, 서비스(370)의 통신 유닛(373)은 제휴 애플리케이션(310)에 대하여 크리덴셜 생성 요구를 송신한다. 요구는, 단계 S606에서 생성된 등록 파라미터들(700)을 포함한다. 단계 S608에서, 제휴 애플리케이션(310)의 인증자 등록 제어 유닛(313)은 인증자(320)에 대하여 크리덴셜 생성 요구를 송신한다. 크리덴셜 생성 요구는, Auth 등록 파라미터들을 포함한다. 이하, Auth 등록 파라미터들에 대해서 설명한다.
도 7b는, Auth 등록 파라미터의 예를 도시하는 도면이다.
Auth 등록 파라미터들(720)은 등록 파라미터들(700), 서비스 ID(721) 및 웹 오리진(Web Origin)(722)으로 구성된다. 등록 파라미터들(700)은 서비스(370)로부터 단계 S607에서 수신한 등록 파라미터들(700)과 동일하다.
서비스 ID(721)은, 표 B 등을 참조하여 설명한 인증자(320)의 등록 대상의 서비스(370)를 고유하게 식별하기 위한 ID이다. 웹 오리진(722)은, 프로토콜과 호스트명과 포트의 조합이며, 본 실시예에서는 서비스(370)의 오리진을 저장한다.
도 6을 다시 참조하여 설명이 제공된다. 단계 S609에서, 인증자(320)는, 크리덴셜 생성 처리를 행한다. 이하, 인증자(320)에 있어서의 크리덴셜 생성 처리에 대해서 설명한다.
도 8은, 인증자(320)가 실행하는 크리덴셜 생성 처리에 대해서 설명하는 흐름도이다.
단계 S801에서, 인증자 등록 처리 유닛(321)은 단말기 유저 인증 처리 유닛(322)을 통해 유저가 휴대 단말기(101)에 생체 인증을 사용하여 로그인하였는지를 결정한다. 상세하게는, 단말기 유저 인증 처리 유닛(322)은 단말기 유저 정보 저장 유닛(325)을 통해서 단말기 유저 정보 테이블 A를 참조하여 현재 로그인하고 있는 유저가 생체 인증을 사용하여 로그인했다는 것을 확인한다.
예를 들어, 단말기 유저 정보 테이블(즉, 표 A)의 로그인 상태 열의 값이 "로그인"이고, 인증 방법 열의 값이 생체 인증들 중 하나인 지문 인증을 나타내는 "지문"인 경우, 유저가 생체 인증을 사용하여 로그인했다고 결정한다. 유저가 생체 인증을 사용하여 로그인했다고 결정된 경우, 처리는 단계 S802의 처리로 진행한다. 유저가 생체 인증을 사용하여 로그인하지 않았다고 결정된 경우, 처리는 단계 S803의 처리로 진행한다.
단계 S802에서, 인증자 등록 처리 유닛(321)은 단말기 유저 인증 처리 유닛(322)을 통해 단말기 유저 정보 테이블(즉, 표 A)로부터 생체 인증을 사용하여 로그인한 유저의 생체 정보 ID를 취득한다. 단계 S803에서, 생체 정보 요구 유닛(324)은 유저에 생체 정보의 입력(또는 제시)을 촉구하는 동의 화면(consent screen)을 표시한다.
도 5d는, 동의 화면의 예를 도시하는 도면이다.
동의 화면(590)은 인증자(320)의 생체 정보 요구 유닛(324)에 의해 표시되는 UI이다. 동의 화면(590)에서는, 인증자(320)를 서비스(370)에 등록하기 위해서 요구되는 생체 정보의 입력(또는 제시)을 유저에 촉구한다. 버튼(591)은 유저가 생체 정보의 입력에 동의하지 않고 처리를 취소하는 버튼이다. 전술한 바와 같이, 버튼(504)은 지문 등의 생체 정보를 판독하도록 구성되는 버튼이며, 생체 정보 센서(208)를 포함한다.
도 8을 다시 참조하여 설명이 제공된다. 단계 S804에서, 생체 정보 요구 유닛(324)은 버튼(504)이 생체 정보의 입력을 검출할 때까지 생체 정보의 입력을 감시한다. 생체 정보가 입력된 경우, 처리는 단계 S805의 처리로 진행한다. 단계 S805에서, 생체 정보 요구 유닛(324)은 버튼(504)에 포함되는 생체 정보 센서(208)가 판독한 생체 정보의 특징량과 그 생체 정보를 고유하게 식별하기 위한 생체 정보 ID를 생성한다.
단계 S806에서, 인증자 등록 처리 유닛(321)은 비밀 키와 공개 키의 쌍을 생성한다. 그리고, 인증자 등록 처리 유닛(321)은 서비스 인증 정보 저장 유닛(326)을 사용하여 TPM(206)에 저장되어 있는 서비스 인증 정보 관리 테이블(즉, 표 B)에, 이하의 정보를 저장한다.
단계 S802에서 취득 또는 단계 S805에서 생성한 생체 정보 ID와, 단계 S806에서 생성한 키들의 쌍 중의 비밀 키와, 크리덴셜 생성 요구에 포함되는 Auth 등록 파라미터들(720)의 서비스 ID(721)를 서로 연관시켜 인증 정보로서 저장한다. 또한, 각각의 저장된 인증 정보에 대하여, 각각의 인증 정보를 고유하게 식별하기 위한 ID가 생성되어, 인증 정보 ID로서 서비스 인증 정보 관리 테이블(즉, 표 B)에 저장된다. 단계 S807에서, 인증자 등록 처리 유닛(321)은 크리덴셜을 생성하고, 도 8에 나타내는 처리를 종료한다. 이하, 크리덴셜에 대해서 설명한다.
도 7c는, 크리덴셜의 예를 도시하는 도면이다.
크리덴셜(740)은, 인증 정보 ID(741), 알고리즘(742), 공개 키(743) 및 증명(744)으로 구성된다. 인증 정보 ID(741)는, 단계 S806에서 서비스 인증 정보 관리 테이블(즉, 표 B)에 저장한 인증 정보 ID와 동일하고, 공개 키(743)는 단계 S806에서 생성된 키들의 쌍 중의 공개 키와 동일하다.
알고리즘(742)으로서, 단계 S806에서 키들의 쌍을 생성할 때에 이용하는 알고리즘을 저장한다. 또한, 증명(744)은, 크리덴셜 생성 요구에 포함되는 Auth 등록 파라미터들(720)의 증명 챌린지(703)를 단계 S806에서 생성된 비밀 키를 사용하여 암호화함으로써 생성되는 데이터이다.
도 6을 다시 참조하여 설명이 제공된다. 단계 S610에서, 인증자 등록 처리 유닛(321)은 제휴 애플리케이션(310)에 대하여 단계 S807에서 생성한 크리덴셜(740)을 반환한다. 단계 S611에서, 제휴 애플리케이션(310)의 통신 유닛(312)은 서비스(370)에 대하여 단계 S610에서 수신한 크리덴셜(740)을 송신한다. 단계 S612에서, 서비스(370)의 인증자 정보 처리 유닛(372)은 수신한 크리덴셜(740)을 사용하여, 인증자 등록 처리를 행한다. 이하, 인증자 정보 처리 유닛(372)이 실행하는 크리덴셜의 등록 처리에 대해서 설명한다.
인증자 정보 처리 유닛(372)은 크리덴셜(740)에 포함되는 증명(744)을, 동일한 크리덴셜(740)에 포함되는 공개 키(743)를 사용하여 복호화하고, 요구가 비인증된 등록 요구가 아닌 것을 검증한다. 또한, 인증자 정보 처리 유닛(372)은 증명 챌린지 관리 테이블(즉, 표 D)에 있어서 증명 챌린지 열로부터, 증명(744)을 공개 키(743)를 사용하여 복호화함으로써 획득한 값과 동일한 값을 갖는 레코드를 식별한다.
또한, 인증자 정보 처리 유닛(372)은 식별한 레코드의 유저 ID를 크리덴셜(740)과 연관된 유저 ID로서 인식한다. 그리고, 인증자 정보 처리 유닛(372)은 크리덴셜(740)에 포함되는 인증 정보 ID(741), 공개 키(743), 및 크리덴셜(740)과 연관된 유저 ID를 인증자 정보 관리 테이블(즉, 표 E)에 저장(또는 등록)한다. 마지막으로, 서비스(370)의 통신 유닛(373)은 제휴 애플리케이션(310)에 대하여 정상적으로 인증자(320)의 등록 처리가 완료되었음을 통지한다.
이와 같이, 유저가 휴대 단말기(101)에 생체 인증을 사용하여 로그인하고 있고 휴대 단말기(101)에 인증자(320)의 등록 처리를 수행시키는 경우, 단계 S801 및 S802의 처리들을 행함으로써, 유저는 등록 처리에 있어서 생체 정보의 제시를 행할 필요가 없어진다.
예를 들어, FIDO를 사용한 서비스 제공 시스템에서는, 유저가 이용하기를 원하는 각각의 서비스에 대해서 인증자 등록을 행할 필요가 있고, 인증자 등록이 행해질 때마다 생체 정보의 제시가 요구된다.
그러나, 본 실시예에 따르면, 유저가 휴대 단말기(101)에 생체 인증을 사용하여 로그인하고 있을 경우, 로그인시에 제시한 생체 정보를 사용하여 인증자 등록이 행해진다. 그러므로, 유저는 더이상 생체 정보를 제시하라고 요구될 필요가 없다. 이로 인해, 유저의 편리성이 향상된다.
<서비스 인증 처리>
이하, 도 9 내지 도 10c를 참조하여, 인증자가 등록된 후의 서비스(370)에 의한 인증 처리에 대해서 설명한다.
이하, 유저가 서비스(370)를 이용하기 위해서 휴대 단말기(101)의 제휴 애플리케이션(310)에 로그인할 때에 서비스(370)가 유저를 인증하는 경우에 대해서 설명한다. 제휴 애플리케이션(310)의 표시 유닛(311)이 제휴 애플리케이션(310)의 톱 화면(530)의 버튼(532)의 눌림을 검출하면, 도 9에 나타나는 처리가 개시한다.
도 9는, 서버(102)의 서비스(370)를 이용할 때에 인증 처리의 시퀀스를 설명하는 도면이다.
단계 S901에서, 제휴 애플리케이션(310)의 통신 유닛(312)은 서버(102)의 서비스(370)에 대하여 생체 인증 파라미터들에 대한 취득 요구를 전송한다.
단계 S902에서, 서비스(370)의 인증자 정보 처리 유닛(372)은 생체 인증 파라미터들을 생성한다. 생체 인증 파라미터들은, 서비스(370)가 제휴 애플리케이션(310)에 대해 유저를 인증할 때에 사용하는 데이터이다. 이하, 생체 인증 파라미터들에 대해서 설명한다.
도 10a 내지 도 10c는, 생체 정보를 이용한 인증 처리에 있어서, 휴대 단말기(101)와 서버(102) 사이의 통신에 포함되는 파라미터들의 예를 도시하는 도면들이다.
여기서, 도 10a를 참조하여 생체 인증 파라미터들에 대해서 설명한다. 생체 인증 파라미터들(1000)은 어써션 챌린지(Assertion challenge)(1001) 및 어써션 확장 영역(1002)으로 구성된다.
어써션 챌린지(1001)는, 챌린지 리스폰스 인증을 행하기 위해서 이용하는 검증용 데이터를 저장한다. 어써션 확장 영역(1002)은, 서비스(370)가 제휴 애플리케이션(310), 인증자(320) 등의 동작을 제어하기 위해 이용하는, 서비스(370)가 지정가능한 확장 파라미터들을 저장한다.
도 9를 다시 참조하여 설명이 제공된다. 단계 S903에서, 서비스(370)의 통신 유닛(373)은 인증자 정보 처리 유닛(372)이 단계 S902에서 생성한 생체 인증 파라미터들(1000)을 제휴 애플리케이션(310)에 반환하고, 생체 인증을 요구한다. 단계 S904에서, 제휴 애플리케이션(310)의 서비스 인증 제어 유닛(314)은 인증자(320)에 대하여 생체 인증 요구를 송신한다. 생체 인증 요구는, Auth 생체 인증 파라미터들을 포함한다. 이하, Auth 생체 인증 파라미터들에 대해서 설명한다.
도 10b는, Auth 생체 인증 파라미터들의 예를 도시하는 도면이다.
Auth 생체 인증 파라미터들(1010)은 생체 인증 파라미터들(1000), 서비스 ID(1011) 및 웹 오리진(1012)으로 구성된다. 생체 인증 파라미터들(1000)은 서비스(370)로부터 단계 S904에서 수신한 생체 인증 파라미터들(1000)과 동일하다. 서비스 ID(1011) 및 웹 오리진(1012)은, 도 7b의 Auth 등록 파라미터들(720)의 서비스 ID 및 웹 오리진과 동일하다.
도 9를 다시 참조하여 설명이 제공된다. 단계 S905에서, 인증자(320)의 생체 정보 요구 유닛(324)은 유저에 대하여 생체 정보의 요구를 행한다. 생체 정보의 요구시에는, 유저에 생체 정보의 입력을 요구하는 화면(도시되지 않음)이 표시된다. 단계 S906에서, 인증자(320)의 서비스 인증 처리 유닛(323)은 생체 인증을 행한다. 즉, 단계 S905에서 취득된 생체 정보는, TPM(206)에 저장된 생체 정보와 대조된다.
구체적으로는, 서비스 인증 처리 유닛(323)이 서비스 인증 정보 관리 테이블(즉, 표 B)에 있어서, 단계 S905에서 취득된 생체 정보의 특징량과 일치하는 특징량을 갖는 레코드가 생체 정보 ID 열에 존재하는지를 결정한다. 생체 정보의 특징량은, 지문 패턴/홍채 모양/정맥 유형/음성과 같은 개인에 대하여 고유한 특징량을, 고유성(uniqueness)을 손상시키지 않는 값으로 변환함으로써 획득된다.
생체 인증에서는, 개인에 대하여 고유한 특징량을 사용하여 개인을 식별한다. 생체 인증에 실패한 경우, 인증이 실패한 것을 제휴 애플리케이션(310)에 통지하고, 제휴 애플리케이션(310)은 유저에 대하여 생체 인증에 실패한 것을 나타내는 에러 메시지(도시되지 않음)를 표시한다. 도 9는, 생체 인증이 성공한 케이스를 도시한다. 단계 S907에서, 서비스 인증 처리 유닛(323)은 어써션을 생성한다. 어써션은, 서비스(370)에 있어서, 유저가 비인증된 요구를 행하지 않았다는 사실을 검증하는 데에 사용되는 데이터이다. 이하, 어써션에 대해서 설명한다.
도 10c는, 어써션의 예를 도시하는 도면이다. 어써션(1020)은, 인증 정보 ID(1021) 및 서명(1022)으로 구성된다. 이하, 서비스 인증 처리 유닛(323)이 어써션(1020)을 구성하는 인증 정보 ID(1021) 및 서명(1022)을 취득하고, 어써션(1020)을 생성하는 수순을 설명한다.
위에서 설명한 단계 S906에 있어서, 인증자(320)의 서비스 인증 처리 유닛(323)이 단계 S905에서 표시한 화면을 통해서 취득한 생체 정보와 TPM(206)에 저장된 생체 정보의 대조를 행한다. 대조 알고리즘으로서, 특징점 추출법, 패턴 매칭법, 및 이와 유사한 것이 사용된다. 그러나, 본 발명에서는 대조 알고리즘을 특별히 한정하지 않는다.
구체적으로는, 서비스 인증 처리 유닛(323)은 취득한 생체 정보를 기초로, 서비스 인증 정보 저장 유닛(326)이 관리하는 서비스 인증 정보 관리 테이블(즉, 표 B)로부터 레코드를 식별한다. 취득한 생체 정보를 나타내는 생체 정보 ID가 식별되기 때문에, 서비스 인증 정보 관리 테이블(즉, 표 B)에 있어서, 생체 정보에 대응하는 인증 정보 ID(1021) 및 비밀 키가 식별된다. 즉, 인증자(320)가 생체 인증을 실행하고 생체 인증이 성공하면, 비밀 키가 취출된다.
그리고, 서비스 인증 처리 유닛(323)은 Auth 생체 인증 파라미터들(1010)에 포함되는 어써션 챌린지(1001)를 식별된 비밀 키를 사용하여 암호화함으로써 서명(1022)(또는 서명 데이터)을 생성한다. 또한, 서비스 인증 처리 유닛(323)은 식별된 인증 정보 ID(1021)와 생성된 서명(1022)을 포함하는 어써션(1020)을 생성한다.
도 9를 다시 참조하여 설명이 제공된다. 단계 S908에서, 서비스 인증 처리 유닛(323)은 단계 S907에서 생성한 어써션(1020)을 제휴 애플리케이션(310)에 반환한다. 단계 S909에서, 제휴 애플리케이션(310)의 통신 유닛(312)은 어써션(1020)을 서버(102)에 송신한다.
단계 S910에서, 서비스(370)의 인증자 정보 처리 유닛(372)은 단계 S909에서 수신한 어써션(1020)의 유효성을 인증한다. 구체적으로는, 인증자 정보 처리 유닛(372)은 어써션(1020)에 포함되는 서명(1022)을, 어써션(1020)에 포함되는 인증 정보 ID(1021)를 사용하여 식별할 수 있는 공개 키를 사용하여 복호화한다.
그리고, 복호화한 값이, 단계 S902에서 생성한 생체 인증 파라미터들(1000)에 포함되는 어써션 챌린지(1001)와 일치하는지에 관한 검증을 행한다. 공개 키를 식별할 때, 인증자 정보 관리 테이블(즉, 표 E)을 사용한다. 단계 S911에서, 서비스(370)의 토큰 관리 유닛(377)은 단계 S910에서 어써션(1020)의 검증을 행한 유저에 토큰을 발행하고, 그 토큰에 관한 정보를 토큰 관리 테이블(즉, 표 F)에 저장한다.
단계 S912에서, 서비스(370)의 통신 유닛(373)은 단계 S911에서 발행한 토큰을 제휴 애플리케이션(310)에 반환한다. 후속 처리에 있어서, 제휴 애플리케이션(310)은 단계 S912에서 수신한 토큰을 서비스(370)에 전송된 요구에 포함함으로써, 서비스(370)가 제공하는 기능을 이용할 수 있다.
[제2 실시예]
제1 실시예에서는, 인증자 등록시에 필요한 생체 정보의 수가 1개인 경우에 대해서 설명하였다. 다른 한편으로, 본 실시예에서는, 인증자 등록시에, 서버(102)의 서비스(370)로부터 복수의 생체 정보를 이용한 생체 인증이 요구되는 경우에 대해서 설명한다. 도 6, 도 7, 도 11 및 도 12를 참조하여 제1 실시예와 상이한 구성 요소들에 대해서 설명한다.
도 6에 나타내는 인증자(320)를 서비스(370)에 등록하는 처리에 있어서, 단계 S606의 등록 파라미터 생성의 처리와 단계 S609의 크리덴셜 생성의 처리가 제1 실시예와 상이하다. 단계 S606에서, 서비스(370)의 인증자 정보 처리 유닛(372)은 등록 파라미터들(700)을 생성한다. 여기서, 본 실시예와 제1 실시예의 차이는, 본 실시예에 있어서 생성하는 등록 파라미터들(700)의 인증 확장 영역(704)에, 인증자(320)에 요구하는 생체 인증의 종류를 지정한다는 점이다.
예를 들어, 서비스(370)가 지문 인증과 얼굴 인증을 요구할 경우, 인증 확장 영역(704)에는 하기와 같은 정보가 저장된다.
{'biometrics':['fingerprint,' 'face']}
이와 같이, 서비스(370)는 인증 확장 영역(704)을 이용하여 인증자(320)에 복수의 생체 정보의 등록을 요구한다.
단계 S609에서, 인증자(320)의 인증자 등록 처리 유닛(321)은 크리덴셜(740)을 생성한다. 여기서, 본 실시예에 있어서 실행하는 크리덴셜 생성 처리에 대해서 설명한다.
도 11은, 본 실시예에 있어서, 인증자(320)가 실행하는 크리덴셜 생성 처리에 대해서 설명하는 흐름도이다.
단계 S1101은, 도 8에 나타낸 제1 실시예에 있어서의 크리덴셜 생성 처리의 단계 S801과 동일한 처리이다. 인증자 등록 처리 유닛(321)은 단말기 유저 인증 처리 유닛(322)을 통해 유저가 휴대 단말기(101)에 생체 인증을 이용하여 로그인하였는지를 결정한다. 유저가 생체 인증을 이용하여 로그인한 경우, 처리는 단계 S1102의 처리로 진행하고, 유저가 생체 인증을 이용하여 로그인하지 않은 경우, 처리는 단계 S1105의 처리로 진행한다.
단계 S1102에서, 인증자 등록 처리 유닛(321)은 유저가 휴대 단말기(101)에의 로그인에 사용한 생체 정보의 종류가, 단계 S606에서 생성된 등록 파라미터들(700)의 인증 확장 영역(704)에 지정된 생체 정보의 종류와 일치하는지를 결정한다. 유저가 휴대 단말기(101)에의 로그인에 사용한 생체 정보의 종류는, 단말기 유저 인증 처리 유닛(322)을 통해 단말기 유저 정보 테이블(즉, 표 A)로부터 로그인 상태 열의 값이 "로그인"인 레코드의 인증 방법 열의 값으로부터 획득될 수 있다.
로그인에 사용한 생체 정보의 종류가 인증 확장 영역(704)에 지정된 생체 정보의 종류와 일치한다고 결정된 경우, 처리는 단계 S1103의 처리로 진행하고, 로그인에 사용한 생체 정보의 종류가 인증 확장 영역(704)에 지정된 생체 정보의 종류와 일치하지 않는다고 결정된 경우, 처리는 단계 S1105의 처리로 진행한다. 단계 S1103에서, 인증자 등록 처리 유닛(321)은 단말기 유저 인증 처리 유닛(322)을 통해 단말기 유저 정보 테이블(즉, 표 A)로부터 생체 인증을 이용하여 로그인한 유저의 생체 정보 ID를 취득한다.
단계 S1104에서, 인증자 등록 처리 유닛(321)은 단계 S606에서 생성된 등록 파라미터들(700)의 인증 확장 영역(704)에 지정된 생체 정보의 종류에 대응하는 생체 정보 ID가 취득되었는지를 결정한다. 예를 들어, 휴대 단말기(101)에 로그인할 때에 사용한 생체 정보의 종류가 지문 정보이고, 단계 S606에서 생성된 등록 파라미터들(700)의 인증 확장 영역(704)에 지정된 생체 정보의 종류가 지문 정보 및 얼굴 정보라고 가정할 수 있다. 이 경우, 얼굴 정보에 대응하는 생체 정보 ID가 취득될 수 없다고 결정한다.
생체 정보 ID가 취득되었다고 결정한 경우, 처리는 단계 S1108의 처리로 진행하고, 생체 정보 ID가 취득되지 않았다고 결정한 경우, 처리는 단계 S1105의 처리로 진행한다. 단계 S1105에서, 생체 정보 요구 유닛(324)은 유저에 생체 정보의 입력을 촉구하는 생체 정보의 요구 화면을 표시한다.
도 12는, 생체 정보의 요구 화면의 예를 도시하는 도면이다.
요구 화면(1202)은, 인증자(320)의 생체 정보 요구 유닛(324)이 표시하는 UI이다. 요구 화면(1202)은, 버튼(1203) 및 버튼(1204)으로 구성된다. 버튼(1203)은 유저에 대하여 지문 정보의 등록을 요구하기 위한 버튼이다. 생체 정보 요구 유닛(324)은 버튼(1203)의 눌림을 검출하면, 생체 정보의 입력을 유저에 촉구하는 도 5d의 동의 화면(590)으로 천이(transit)한다.
그리고, 전술한 버튼(504)이 유저의 손가락으로 터치되면, 지문 정보가 생체 정보 센서(208)에 의해 판독된다. 이미 지문 정보에 대응하는 생체 정보 ID가 취득된 경우, 요구 화면(1202)에 버튼(1203)은 표시되지 않는다. 버튼(1204)은 유저에 대하여 얼굴 정보의 등록을 요구하기 위한 버튼이다.
생체 정보 요구 유닛(324)은 버튼(1204)의 눌림을 검출하면, 카메라(1201)를 기동하고, 그 다음에 얼굴 정보를 판독한다. 카메라(1201)는 생체 정보 센서(208)를 포함하고, 인증자(320)는 카메라(1201)에 의해 판독된 얼굴 정보를 취득한다. 이미 얼굴 정보에 대응하는 생체 정보 ID가 취득된 경우, 요구 화면(1202)에 버튼(1204)은 표시되지 않는다.
요구 화면(1202)은 예일 뿐이고, 본 발명은 이것으로 한정되지 않는다. 요구 화면(1202)에는, 버튼(1203)이나 버튼(1204) 이외의, 다른 생체 정보를 등록하기 위한 버튼을 표시할 수 있다. 요구 화면(1202)에는, 단계 S606에서 생성된 등록 파라미터(700)의 인증 확장 영역(704)에 지정된 생체 정보의 종류에 대응하는 등록 버튼이 표시된다.
도 11을 다시 참조하여 설명이 제공된다. 단계 S1106에서, 생체 정보 요구 유닛(324)은 버튼(504), 카메라(1201) 등을 통한 생체 정보의 입력까지 생체 정보의 입력을 감시한다. 생체 정보가 입력된 경우, 처리는 단계 S1107의 처리로 진행한다. 단계 S1107에서, 생체 정보 요구 유닛(324)은 버튼(504)이나 카메라(1201) 등이 포함하는 생체 정보 센서(208)가 판독한 생체 정보의 특징량과 그 생체 정보를 고유하게 식별하기 위한 생체 정보 ID를 생성한다.
단계 S1108에서, 인증자 등록 처리 유닛(321)은 비밀 키와 공개 키의 쌍을 생성한다. 그리고, 인증자 등록 처리 유닛(321)은 서비스 인증 정보 저장 유닛(326)을 사용하여 TPM(206)에 저장되어 있는 서비스 인증 정보 관리 테이블(즉, 표 G)에 각종 정보를 저장한다. 이하, 표 G를 사용하여, 본 실시예에 있어서, 서비스 인증 정보 관리 테이블에 저장하는 각종 정보에 대해서 설명한다.
표 G 서비스 인증 정보 관리 테이블
Figure pat00007
표 G의 서비스 인증 정보 관리 테이블은, 본 실시예에 있어서, 인증 정보에 포함되는 각종 정보를 저장하는 테이블이다. 표 G와, 표 B에 나타낸 제1 실시예에 있어서의 서비스 인증 정보 관리 테이블의 차이는, 표 G에는 인증 방법 열이 추가되어 있다는 점이다. 인증 방법 열에는, 인증 정보를 생성할 때에 사용한 생체 정보의 종류가 저장되어 있다.
예를 들어, 단계 S606에서 생성된 등록 파라미터들(700)의 인증 확장 영역(704)에 지정된 생체 정보의 종류가 지문 정보와 얼굴 정보인 경우, 단계 S1108에서는, 표 G의 1행째와 2행째에 도시하는 바와 같이 2개의 엔트리가 기입된다. 2개의 엔트리에서 상이한 것은, 인증 방법 열과 생체 정보 ID 열의 값이다. 즉, 본 실시예에서는, 등록 파라미터들(700)에 있어서, 복수의 생체 인증의 종류가 지정된 경우, 등록 파라미터들(700)에 기초하여 생성되는 복수의 크리덴셜의 인증 정보 ID 및 공개 키는 공통 값을 사용한다.
이와 같이, 인증자가 등록될 서비스에 있어서, 인증시에 2개 이상의 종류의 생체 인증을 요구하는 경우, 서비스 인증 정보 관리 테이블에 있어서, 대응하는 엔트리에 대한 인증 정보 ID 및 비밀 키를 공통 값으로 설정한다. 이에 의해, 대상 서비스에 있어서, 복수의 생체 인증이 필요하다는 것을 알 수 있다. 표 G에 나타내는 예에서는, 첫번째 엔트리와 두번째 엔트리에 예시된 바와 같이 서비스 ID "service.com"에 대하여 지문 인증과 얼굴 인증이 필요하다고 결정할 수 있다.
또한, 복수의 엔트리에 있어서 공통 인증 정보 ID 및 비밀 키가 사용되기 때문에, 비밀 키에 대응하는 공통 공개 키가 사용된다. 즉, 단계 S610에 있어서, 서비스(370)에 반환되는 크리덴셜은, 서비스 인증 정보 관리 테이블, 즉, 표 G에 있어서, 복수의 엔트리에 대하여 공통 크리덴셜이다.
도 11을 다시 참조하여 설명이 제공된다. 단계 S1109에서, 인증자 등록 처리 유닛(321)은 크리덴셜(740)을 생성하고, 도 11에 도시하는 처리를 종료한다.
이와 같이, 본 실시예에 따르면, 복수의 생체 정보를 이용한 생체 인증을 요구하는 서비스에 대하여 인증자를 등록하는 경우에도, 유저가 휴대 단말기(101)에 로그인했을 때에 제시한 생체 정보를 사용하여 유저의 등록 작업과 연관된 부하를 경감할 수 있다.
(다른 실시예들)
본 발명의 실시예(들)는, 전술한 실시예(들) 중 하나 이상의 기능을 실행하기 위해 기억 매체(더욱 완전하게는 '비일시적 컴퓨터 판독가능 기억 매체'라 칭할 수도 있음)에 기록된 컴퓨터 실행가능 명령어(예를 들어, 하나 이상의 프로그램)를 판독 및 실행하고 그리고/또는 전술한 실시예(들) 중 하나 이상의 기능을 실행하는 하나 이상의 회로(예를 들어, 주문형 집적 회로(ASIC))를 포함하는 시스템 또는 장치의 컴퓨터에 의해, 그리고 예를 들어 전술한 실시예(들) 중 하나 이상의 기능을 실행하기 위해 기억 매체로부터 컴퓨터 실행가능 명령어를 판독 및 실행함으로써 그리고/또는 전술한 실시예(들) 중 하나 이상의 기능을 실행하기 위해 하나 이상의 회로를 제어함으로써 시스템 또는 장치의 컴퓨터에 의해 실행되는 방법에 의해 실현될 수도 있다. 컴퓨터는 하나 이상의 프로세서(예를 들어, 중앙 처리 유닛(CPU), 마이크로 처리 유닛(MPU))를 포함할 수 있고, 컴퓨터 실행가능 명령어를 판독 및 실행하기 위한 별도의 컴퓨터 또는 별도의 프로세서의 네트워크를 포함할 수 있다. 컴퓨터 실행가능 명령어는 예를 들어, 네트워크 또는 기억 매체로부터 컴퓨터에 제공될 수 있다. 기억 매체는, 예를 들어, 하드 디스크, 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 분산형 컴퓨팅 시스템들의 스토리지, 광 디스크(예를 들어, 콤팩트 디스크(CD), 디지털 다기능 디스크(DVD) 또는 블루레이 디스크(BD)™), 플래시 메모리 장치, 메모리 카드, 및 이와 유사한 것 중 하나 이상을 포함할 수 있다.
(기타의 실시예)
본 발명은, 상기의 실시형태의 1개 이상의 기능을 실현하는 프로그램을, 네트워크 또는 기억 매체를 개입하여 시스템 혹은 장치에 공급하고, 그 시스템 혹은 장치의 컴퓨터에 있어서 1개 이상의 프로세서가 프로그램을 읽어 실행하는 처리에서도 실현가능하다.
또한, 1개 이상의 기능을 실현하는 회로(예를 들어, ASIC)에 의해서도 실행가능하다.
예시적인 실시예들을 참조하여 본 발명을 설명하였지만, 본 발명은 개시된 예시적인 실시예들로 제한되지 않는다는 점을 이해해야 한다. 이하의 청구항의 범위는 이러한 모든 변형 및 등가적 구조 및 기능을 포함하도록 가장 광의의 해석에 따라야 한다.
본 출원은 그 전문이 본 명세서에 참조로 포함되는 2017년 11월 22일자로 출원된 일본 특허 출원 번호 2017-225133의 이득을 주장한다.

Claims (15)

  1. 인증 처리를 행할 때에 필요한 유저의 생체 정보를 저장하도록 구성되는 탬퍼 방지성(tamper resistance)을 갖는 스토리지 및 생체 정보를 판독하도록 구성되는 생체 정보 센서를 포함하는 정보 처리 장치로서,
    상기 정보 처리 장치는,
    상기 생체 정보 센서에서 판독한 생체 정보를 이용하여 상기 유저의 로그인 처리를 실행하는 실행 유닛,
    네트워크 상의 서비스를 이용할 때에 수행되는 상기 인증 처리에 필요한 제1 비밀 키와, 상기 제1 비밀 키에 대응하는 제1 공개 키를 생성하는 생성 유닛,
    생성된 상기 제1 비밀 키를 상기 로그인 처리 시에 판독한 생체 정보와 연관시켜 상기 스토리지에 저장하는 저장 유닛, 및
    상기 생체 정보에 대응하는 제1 식별 정보 및 상기 제1 공개 키를 상기 네트워크 상의 서비스에 등록하기 위한 요구를 발행하는 등록 유닛
    을 추가로 포함하는, 정보 처리 장치.
  2. 제1항에 있어서,
    상기 정보 처리 장치는 상기 네트워크 상의 서비스로부터의 요구에 따라, 상기 유저에 생체 정보의 제시를 요구하는 화면을 표시하는 표시 유닛을 추가로 포함하고,
    상기 생성 유닛은, 상기 화면에 따라 상기 유저에 의해 제시된 생체 정보를 상기 생체 정보 센서에서 판독한 경우에 제2 비밀 키 및 상기 제2 비밀 키에 대응하는 제2 공개 키를 생성하고,
    상기 저장 유닛은, 생성된 상기 제2 비밀 키를 상기 화면에 따라 판독한 생체 정보와 연관시켜 상기 스토리지에 저장하고,
    상기 등록 유닛은, 상기 생체 정보에 대응하는 제2 식별 정보 및 상기 제2 공개 키를 상기 네트워크 상의 서비스에 등록하기 위한 요구를 발행하는, 정보 처리 장치.
  3. 제2항에 있어서, 상기 화면은, 상기 로그인 처리에서 상기 생체 정보를 이용한 인증 처리가 수행되지 않는 경우에 표시되는, 정보 처리 장치.
  4. 제2항에 있어서, 상기 화면은, 상기 네트워크 상의 서비스로부터 상기 인증 처리에 필요한 정보가 지정된 경우에 표시되는, 정보 처리 장치.
  5. 제2항에 있어서, 상기 화면은, 상기 네트워크 상의 서비스로부터의 요구에 응답하여, 상기 유저에 복수의 생체 정보의 제시가 요구되는 경우, 상기 로그인 처리 시에 판독된 생체 정보와는 상이한 생체 정보의 제시를 요구하기 위해서 표시되는, 정보 처리 장치.
  6. 제1항에 있어서,
    상기 네트워크 상의 서비스를 이용할 때에, 상기 생체 정보 센서에서 판독한 생체 정보를 이용한 인증 처리가 성공한 경우에, 상기 인증 처리에 이용된 생체 정보와 연관시켜 상기 스토리지에 저장된 상기 제1 비밀 키와, 상기 네트워크 상의 서비스로부터 수신한 파라미터들을 사용하여, 서명 데이터가 생성되고,
    생성된 상기 서명 데이터는 상기 네트워크 상의 서비스에서 검증되는, 정보 처리 장치.
  7. 제1항에 있어서, 상기 정보 처리 장치에 대한 상기 유저의 로그인 상태 및 상기 유저의 로그인 처리에 사용된 인증 방법이 관리되는, 정보 처리 장치.
  8. 제1항에 있어서,
    상기 생성 유닛은, 상기 네트워크 상의 서비스로부터, 복수의 생체 정보를 이용한 인증 처리가 요구된 경우, 상기 복수의 생체 정보에 대한 공통 비밀 키로서의 제3 비밀 키 및 상기 제3 비밀 키에 대응하는 제3 공개 키를 생성하고,
    상기 저장 유닛은, 생성된 상기 제3 비밀 키를, 각각의 생체 정보와 연관시켜 저장하고,
    상기 등록 유닛은, 각각의 생체 정보에 대한 식별 정보로서 공통 값을 제공하고, 상기 식별 정보 및 상기 제3 공개 키를 상기 네트워크 상의 서비스에 등록하기 위한 요구를 발행하는, 정보 처리 장치.
  9. 제1항에 있어서, 상기 정보 처리 장치는, 스마트폰, 태블릿, 웨어러블 단말기, 및 노트북 타입 퍼스널 컴퓨터 중 어느 하나를 포함하는, 정보 처리 장치.
  10. 인증 처리를 행할 때에 필요한 유저의 생체 정보를 저장하도록 구성되는 탬퍼 방지성을 갖는 스토리지 및 생체 정보를 판독하도록 구성되는 생체 정보 센서를 포함하는 정보 처리 장치를 위한 방법으로서,
    상기 생체 정보 센서에서 판독한 생체 정보를 이용하여 상기 유저의 로그인 처리를 실행하는 단계,
    네트워크 상의 서비스를 이용할 때에 수행되는 상기 인증 처리에 필요한 제1 비밀 키, 및 상기 제1 비밀 키에 대응하는 제1 공개 키를 생성하는 단계,
    생성된 상기 제1 비밀 키를 상기 로그인 처리 시에 판독한 생체 정보와 연관시켜 상기 스토리지에 저장하는 단계, 및
    상기 생체 정보에 대응하는 제1 식별 정보 및 상기 제1 공개 키를 상기 네트워크 상의 서비스에 등록하기 위한 요구를 발행하는 단계
    를 포함하는, 방법.
  11. 제10항에 있어서,
    상기 네트워크 상의 서비스로부터의 요구에 따라 상기 유저에 상기 생체 정보의 제시를 요구하는 화면을 표시하는 단계,
    상기 화면에 따라 상기 유저에 의해 제시된 생체 정보를 상기 생체 정보 센서에서 판독한 경우에 제2 비밀 키 및 상기 제2 비밀 키에 대응하는 제2 공개 키를 생성하는 단계,
    생성된 상기 제2 비밀 키를 상기 화면에 따라 판독한 생체 정보와 연관시켜 상기 스토리지에 저장하는 단계, 및
    상기 생체 정보에 대응하는 제2 식별 정보 및 상기 제2 공개 키를 상기 네트워크 상의 서비스에 등록하기 위한 요구를 발행하는 단계
    를 추가로 포함하는, 방법.
  12. 제10항에 있어서,
    상기 네트워크 상의 서비스를 이용할 때에, 상기 생체 정보 센서에서 판독한 생체 정보를 이용한 인증 처리가 성공한 경우에, 상기 인증 처리에 이용된 생체 정보와 연관시켜 상기 스토리지에 저장된 상기 제1 비밀 키 및 상기 네트워크 상의 서비스로부터 수신한 파라미터들을 사용하여 서명 데이터를 생성하는 단계를 추가로 포함하고,
    생성된 상기 서명 데이터는 상기 네트워크 상의 서비스에서 검증되는, 방법.
  13. 제10항에 있어서,
    상기 네트워크 상의 서비스로부터, 복수의 생체 정보를 이용한 인증 처리가 요구된 경우, 상기 복수의 생체 정보에 대한 공통 비밀 키로서의 제3 비밀 키 및 상기 제3 비밀 키에 대응하는 제3 공개 키를 생성하는 단계,
    생성된 상기 제3 비밀 키를 각각의 생체 정보와 연관시켜 저장하는 단계,
    각각의 생체 정보에 대한 식별 정보로서 공통 값을 제공하는 단계, 및
    상기 식별 정보 및 상기 제3 공개 키를 상기 네트워크 상의 서비스에 등록하기 위한 요구를 발행하는 단계
    를 추가로 포함하는, 방법.
  14. 제10항에 있어서, 상기 정보 처리 장치는, 스마트폰, 태블릿, 웨어러블 단말기, 및 노트북 타입 퍼스널 컴퓨터 중 어느 하나를 포함하는, 방법.
  15. 인증 처리를 행할 때에 필요한 유저의 생체 정보를 저장하도록 구성되는 탬퍼 방지성을 갖는 스토리지 및 생체 정보를 판독하도록 구성되는 생체 정보 센서를 포함하는 정보 처리 장치에서의 방법을 컴퓨터에 실행시키는 컴퓨터 프로그램을 기억하는 기억 매체로서, 상기 방법은,
    상기 생체 정보 센서에서 판독한 생체 정보를 이용하여 상기 유저의 로그인 처리를 실행하는 단계,
    네트워크 상의 서비스를 이용할 때에 수행되는 상기 인증 처리에 필요한 제1 비밀 키, 및 상기 제1 비밀 키에 대응하는 제1 공개 키를 생성하는 단계,
    생성된 상기 제1 비밀 키를 상기 로그인 처리 시에 판독한 생체 정보와 연관시켜 상기 스토리지에 저장하는 단계, 및
    상기 생체 정보에 대응하는 제1 식별 정보 및 상기 제1 공개 키를 상기 네트워크 상의 서비스에 등록하기 위한 요구를 발행하는 단계
    를 포함하는, 기억 매체.
KR1020180138682A 2017-11-22 2018-11-13 정보 처리 장치, 정보 처리 장치를 위한 방법, 및 프로그램 기억 매체 KR102393024B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2017-225133 2017-11-22
JP2017225133A JP7091057B2 (ja) 2017-11-22 2017-11-22 情報処理装置、情報処理装置における方法、およびプログラム

Publications (2)

Publication Number Publication Date
KR20190059219A true KR20190059219A (ko) 2019-05-30
KR102393024B1 KR102393024B1 (ko) 2022-05-02

Family

ID=64308643

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180138682A KR102393024B1 (ko) 2017-11-22 2018-11-13 정보 처리 장치, 정보 처리 장치를 위한 방법, 및 프로그램 기억 매체

Country Status (5)

Country Link
US (1) US11093602B2 (ko)
EP (1) EP3490220B1 (ko)
JP (1) JP7091057B2 (ko)
KR (1) KR102393024B1 (ko)
CN (1) CN110048993B (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6991773B2 (ja) * 2017-07-31 2022-01-13 キヤノン株式会社 システム、デバイス管理システム、及びその方法
EP3699790B1 (en) * 2019-02-19 2022-11-02 Nxp B.V. Method for enabling a biometric template
JP2022059099A (ja) * 2019-02-25 2022-04-13 ソニーグループ株式会社 情報処理装置、情報処理方法、及び、プログラム
CN110569636A (zh) * 2019-09-12 2019-12-13 腾讯科技(深圳)有限公司 基于区块链的应用程序登录方法、装置以及存储介质
WO2021111824A1 (ja) * 2019-12-03 2021-06-10 木戸 啓介 電子署名システム及び耐タンパ装置
EP3836504A1 (en) * 2019-12-12 2021-06-16 Noscendo GmbH Providing and obtaining one or more data sets via a digital communication network
JP7174730B2 (ja) * 2020-03-17 2022-11-17 ヤフー株式会社 端末装置、情報処理方法及び情報処理プログラム
EP4134847A4 (en) * 2020-04-10 2023-06-07 NEC Corporation AUTHENTICATION SERVER, AUTHENTICATION SYSTEM, AUTHENTICATION SERVER CONTROL METHOD AND STORAGE MEDIUM

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070106895A1 (en) * 2005-11-04 2007-05-10 Kung-Shiuh Huang Biometric non-repudiation network security systems and methods
JP2017152880A (ja) * 2016-02-24 2017-08-31 日本電信電話株式会社 認証システム、鍵処理連携方法、および、鍵処理連携プログラム

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4601498B2 (ja) * 2005-06-28 2010-12-22 シャープ株式会社 認証装置、認証方法、その方法を実現するプログラム、およびそのプログラムを記録した記録媒体
JP2007018346A (ja) * 2005-07-08 2007-01-25 Konica Minolta Business Technologies Inc 処理装置およびその制御方法ならびにコンピュータプログラム
CN101098232B (zh) * 2007-07-12 2012-05-09 兰州大学 一种动态口令与多生物特征结合的身份认证方法
US9832019B2 (en) * 2009-11-17 2017-11-28 Unho Choi Authentication in ubiquitous environment
JP4970585B2 (ja) * 2010-11-10 2012-07-11 株式会社東芝 サービス提供システム及びユニット装置
JP5475035B2 (ja) * 2012-02-24 2014-04-16 日本電信電話株式会社 認証権限移譲システム、情報端末、トークン発行局、サービス提供装置、認証権限移譲方法、及びプログラム
US10075437B1 (en) * 2012-11-06 2018-09-11 Behaviosec Secure authentication of a user of a device during a session with a connected server
US9172687B2 (en) * 2012-12-28 2015-10-27 Nok Nok Labs, Inc. Query system and method to determine authentication capabilities
US10270748B2 (en) * 2013-03-22 2019-04-23 Nok Nok Labs, Inc. Advanced authentication techniques and applications
KR101924683B1 (ko) * 2013-04-26 2018-12-03 인터디지탈 패튼 홀딩스, 인크 요구된 인증 보증 레벨을 달성하기 위한 다중요소 인증
US9003196B2 (en) * 2013-05-13 2015-04-07 Hoyos Labs Corp. System and method for authorizing access to access-controlled environments
JPWO2015019821A1 (ja) * 2013-08-05 2017-03-02 ソニー株式会社 情報処理装置、情報処理方法及びコンピュータプログラム
CN103714315A (zh) * 2013-12-10 2014-04-09 柳州译海网络科技有限公司 一种基于生物特征信息的身份认证方法
CN103699879A (zh) * 2013-12-10 2014-04-02 柳州译海网络科技有限公司 一种基于生物特征信息的身份认证装置
US20150180869A1 (en) * 2013-12-23 2015-06-25 Samsung Electronics Company, Ltd. Cloud-based scalable authentication for electronic devices
US10163105B1 (en) * 2014-01-24 2018-12-25 Microstrategy Incorporated Variable biometrics for multi-factor authentication
US20170109751A1 (en) * 2014-05-02 2017-04-20 Nok Nok Labs, Inc. System and method for carrying strong authentication events over different channels
GB201408539D0 (en) * 2014-05-14 2014-06-25 Mastercard International Inc Improvements in mobile payment systems
US10182040B2 (en) * 2015-06-10 2019-01-15 Massachusetts Institute Of Technology Systems and methods for single device authentication
JP6122924B2 (ja) * 2015-09-11 2017-04-26 ヤフー株式会社 提供装置、端末装置、提供方法、提供プログラム及び認証処理システム
JP6354737B2 (ja) 2015-11-30 2018-07-11 コニカミノルタ株式会社 通信装置、プログラムおよび通信システム
CN107231234B (zh) * 2016-03-25 2020-06-09 创新先进技术有限公司 一种身份注册方法及装置
US10705894B2 (en) * 2016-05-30 2020-07-07 Samsung Electronics Co., Ltd. Electronic device for authenticating application and operating method thereof
US20180101847A1 (en) * 2016-10-12 2018-04-12 Microsoft Technology Licensing, Llc User and device authentication for web applications
CN107222373B (zh) 2017-05-05 2020-01-24 深圳市文鼎创软件有限公司 智能家居的控制方法、系统、终端、fido服务器及安全设备
US11388155B2 (en) * 2017-05-16 2022-07-12 Softex, Inc. Integrated cybersecurity system and method for providing restricted client access to a website
US10469490B2 (en) * 2017-10-19 2019-11-05 Mastercard International Incorporated Methods and systems for providing FIDO authentication services

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070106895A1 (en) * 2005-11-04 2007-05-10 Kung-Shiuh Huang Biometric non-repudiation network security systems and methods
JP2017152880A (ja) * 2016-02-24 2017-08-31 日本電信電話株式会社 認証システム、鍵処理連携方法、および、鍵処理連携プログラム

Also Published As

Publication number Publication date
EP3490220B1 (en) 2021-10-13
US11093602B2 (en) 2021-08-17
CN110048993B (zh) 2022-02-25
EP3490220A1 (en) 2019-05-29
CN110048993A (zh) 2019-07-23
JP7091057B2 (ja) 2022-06-27
KR102393024B1 (ko) 2022-05-02
JP2019096077A (ja) 2019-06-20
US20190156020A1 (en) 2019-05-23

Similar Documents

Publication Publication Date Title
KR102393024B1 (ko) 정보 처리 장치, 정보 처리 장치를 위한 방법, 및 프로그램 기억 매체
US11023568B2 (en) Image processing apparatus, system related to image processing apparatus, and method
JP6882080B2 (ja) 画像処理装置、方法、プログラム及びシステム
US10992838B2 (en) System for executing process associated with biometric information, and method in system, information processing apparatus, and method in information processing apparatus for same
CN108959878B (zh) 用户认证系统中采用的方法以及其中包括的信息处理装置
US10750050B2 (en) IMAGE PROCESSING APPARATUS, METHOD FOR CONTROLLING IMAGE Processing apparatus, program storage medium, system, and method for controlling system for use in biometric authentication
KR102357559B1 (ko) 시스템, 디바이스 관리 시스템 및 그 방법
JP7196241B2 (ja) 情報処理装置、制御方法、およびプログラム
KR20190002351A (ko) 정보 처리 장치 및 방법
US11528266B2 (en) Information processing apparatus, system, and control method therefor
JP6935460B2 (ja) 画像処理装置、方法、プログラム及びシステム
JP7230138B2 (ja) 画像処理装置、方法、プログラム及びシステム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant