WO2023149510A1 - 認証装置、認証支援方法、及びプログラム - Google Patents

認証装置、認証支援方法、及びプログラム Download PDF

Info

Publication number
WO2023149510A1
WO2023149510A1 PCT/JP2023/003421 JP2023003421W WO2023149510A1 WO 2023149510 A1 WO2023149510 A1 WO 2023149510A1 JP 2023003421 W JP2023003421 W JP 2023003421W WO 2023149510 A1 WO2023149510 A1 WO 2023149510A1
Authority
WO
WIPO (PCT)
Prior art keywords
authentication
information
unit
user
key
Prior art date
Application number
PCT/JP2023/003421
Other languages
English (en)
French (fr)
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
Priority claimed from JP2022195916A external-priority patent/JP7343680B2/ja
Application filed by 真旭 徳山 filed Critical 真旭 徳山
Publication of WO2023149510A1 publication Critical patent/WO2023149510A1/ja

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
    • 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
    • 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

Definitions

  • the present invention relates to an authentication device, an authentication support method, and a program.
  • Patent Document 1 When a user uses various services online, user authentication is performed to determine whether the user using the service is a legitimate user or not in order to prevent unauthorized use.
  • Patent Document 1 it is possible to reduce the user's work load while ensuring security by generating a plurality of pieces of specific information from the same biometric information without transmitting/receiving the biometric information itself.
  • a technique for stably receiving a service is disclosed.
  • Patent Document 1 for example, if the authentication device is lost, the same biometric key as before the loss cannot be generated, and it is difficult to generate the same specific information as before the loss. be. In other words, there is room for improvement from the viewpoint of being able to stably receive services without being able to reproduce the original key, which is the key for generating the specific information.
  • the present invention aims to solve the above-mentioned problems, and aims to provide an authentication device, an authentication support method, and a program that allow users to stably receive services.
  • the authentication device a feature acquisition means for acquiring a feature of a user; a recovery code acquisition means for acquiring the recovery code determined by the user; A key derivation function that calculates the same value if input data is within a preset threshold range is applied to a reference amount set according to the calculation content of the key derivation function to generate a primitive key.
  • a primordial key generation means Auxiliary information generating means for performing a predetermined dyadic operation using the feature amount and the reference amount to generate auxiliary information for regenerating the original key;
  • Auxiliary information registration means for encrypting the auxiliary information with the recovery code and registering it in an external device; Prepare.
  • the authentication device authentication support method, and program according to the present invention, it is possible to stably receive services.
  • FIG. 2 is a front view of the authentication device shown in FIG. 1;
  • FIG. 2 is a block diagram of the authentication device shown in FIG. 1;
  • FIG. 2 is a diagram showing an example of a hardware configuration of an authentication device shown in FIG. 1;
  • FIG. 2 is a diagram of an information processing block of the authentication device shown in FIG. 1;
  • FIG. 3 is a diagram showing a table of an authentication biometric information database for storing biometric information acquired by the authentication device shown in FIG. 1;
  • FIG. 2 is a diagram showing a table of an authentication behavior information database for storing behavior information acquired by the authentication device shown in FIG. 1;
  • FIG. 3 is a diagram showing an inclination information table of the authentication device shown in FIG.
  • FIG. 2 is a block diagram of the information processing apparatus shown in FIG. 1;
  • FIG. 2 is a diagram showing an example of a hardware configuration of the information processing apparatus shown in FIG. 1;
  • FIG. 2 is a diagram of an information processing block of the information processing apparatus shown in FIG. 1;
  • FIG. 2 is a diagram showing an example of a correspondence information list stored by the information processing apparatus shown in FIG. 1;
  • FIG. 1 is a diagram showing the configuration of an authentication system 100.
  • the authentication system 100 includes an authentication device 1 and an information processing device 7.
  • the authentication device 1 authenticates a user. Generate specific information to identify something.
  • the authentication device 1 and the information processing device 7 can each be connected to a financial institution 99 (more specifically, a terminal of the financial institution 99) via a network 2.
  • the information processing device 7 determines the legitimacy of the target user using the specific information, and provides a service for the user.
  • a case where financial services are provided to a user whose legitimacy is recognized will be described below as an example.
  • the authentication device 1 is a so-called smartphone or tablet terminal
  • the information processing device 7 is a personal computer, smartphone or tablet terminal.
  • the authentication device 1 and the information processing device 7 are communicably connected to each other by, for example, a wireless LAN (Local Area Network), Wi-Fi (registered trademark), Bluetooth (registered trademark), or the like.
  • FIG. 2 is a front view of the authentication device 1.
  • the illustrated authentication device 1 is a so-called smart phone.
  • the authentication device 1 includes an in-camera 11A that captures the user's face in front, a speaker 12A, a microphone 12B that is a microphone for calling, a tilt detection unit 13 that detects the tilt of the authentication device 1, and an operation input unit 14. and a touch panel that also serves as a display unit 19, a left fingerprint sensor 15A and a right fingerprint sensor 15B that detect the fingerprints of the user, and a position detection unit 16 that detects the current position of the authentication device 1.
  • the authentication device 1 includes a main camera 11B on the rear surface, which can photograph people, landscapes, objects, etc. seen by the user.
  • the in-camera 11A and the main camera 11B are collectively referred to as the photographing unit 11.
  • the speaker 12A and the microphone 12B which is a microphone for calling, are collectively referred to as the voice input/output unit 12.
  • the left fingerprint sensor 15A and the right fingerprint sensor 15B are collectively referred to as the fingerprint detection unit 15. As shown in FIG.
  • FIG. 3 is a block diagram showing the configuration of the authentication device 1.
  • the authentication device 1 includes a communication unit 10, an imaging unit 11, an audio input/output unit 12, an inclination detection unit 13, an operation input unit 14, a fingerprint detection unit 15, a position detection unit 16, and an authentication device storage unit. 17 , an authentication device control unit 18 , and a display unit 19 .
  • the communication unit 10 communicates with an external server, the cloud, the information processing device 7, etc. via a communication network (not shown), and exchanges various data between a data communication unit that transmits and receives various data and a base station (not shown). and a voice communicator for transmitting and receiving radio signals for communication.
  • the data communication unit can be configured using a wireless LAN (Local Area Network), Wi-fi (registered trademark), Bluetooth (registered trademark), or the like.
  • the voice communication unit can be configured using a communication device that transmits/receives radio signals for telephone communication to/from the base station.
  • the photographing unit 11 includes the in-camera 11A and the main camera 11B shown in FIG.
  • the imaging unit 11 includes a camera, a video camera, or the like, which uses an imaging element such as a CCD (Charge Coupled Device) or CMOS (Complementary Metal Oxide Semiconductor) image sensor, or a video camera, which shoots a still image or a moving image, and transmits the shot still image or moving image.
  • CCD Charge Coupled Device
  • CMOS Complementary Metal Oxide Semiconductor
  • the voice input/output unit 12 includes the speaker 12A and the microphone 12B shown in FIG.
  • the speaker 12A outputs audio received in a voice call, music data externally acquired via a communication network, and the like.
  • the microphone 12B is a device that picks up the user's voice.
  • the tilt detection unit 13 is a device that can detect the tilt, shake, etc. of the authentication device 1 .
  • the tilt detection unit 13 can be configured using various sensors that can detect the tilt of the authentication device 1, such as an acceleration sensor, an angle sensor, and a magnetic sensor that detects geomagnetism. It should be noted that the number and types of sensors constituting the tilt detection unit 13 may be either singular or plural.
  • the operation input unit 14 is a device that can input operations from the user shown in FIG.
  • the fingerprint detection unit 15 is a sensor that detects a user's fingerprint. Fingerprint detection unit 15 includes left fingerprint sensor 15A and right fingerprint sensor 15B shown in FIG.
  • the fingerprint detection unit 15 is not limited to the fingerprint sensor, and any sensor, device, or the like that can detect the fingerprint of the user may be used.
  • the position detection unit 16 is a device that can detect the current position of the authentication device 1 .
  • the position detection unit 16 can be configured using a device capable of detecting the current position of the authentication device 1, such as GPS (Global Positioning System).
  • the authentication device storage unit 17 includes an authentication processing program 170 for performing user authentication processing, an authentication biometric information database 171 that summarizes user biometric information acquired by the authentication device 1, and user biometric information acquired by the authentication device 1.
  • a behavior information database 172 for authentication that summarizes behavior information, a tilt information table 173 for storing the tilt state of the authentication device 1, and specific information for identifying that the target user to whom the service is provided is valid are generated.
  • a specific information generation program 176 that Further, the authentication device storage unit 17 stores programs of various applications executed by the authentication device 1 .
  • the authentication processing program 170 is a program that performs processing for authenticating the user based on the user's biometric information and behavior information acquired by the authentication device 1 .
  • the authentication biometric information database 171 is a database for storing information relating to user biometric information and authentication values used for authentication.
  • the authentication behavior information database 172 is a database for storing information on user-specific behavior when operating the authentication device 1, conditions for passing authentication, and the like.
  • the behavior peculiar to the user means the behavior when the user operates the authentication device 1, the distance between the screen of the display unit 19 and the user's face, the keystrokes, the way of holding the authentication device 1, the position where the authentication device 1 is used, the specified User-specific items such as the number of times a user connects to a communication network, the activation and operation of a specific application, etc.
  • the tilt information table 173 is a table for storing the tilt angle of the authentication device 1 detected by the tilt detection unit 13, the acquisition date and time, and the waiting time for acquisition.
  • the specific information generation program 176 is a program that generates specific information for identifying that the target user to whom the service is provided is valid.
  • the authentication device control unit 18 executes various programs stored in the authentication device storage unit 17. Further, the authentication device control unit 18 includes the communication unit 10, the imaging unit 11, the voice input/output unit 12, the tilt detection unit 13, the operation input unit 14, the fingerprint detection unit 15, and the position detection unit 16. Various data are acquired, processed, and stored in various databases and tables of the authentication device storage unit 17 . In addition, the authentication device control unit 18 can cause the image capturing unit 11 to perform image capturing at an arbitrary timing by transmitting an instruction to image capturing to the image capturing unit 11 .
  • the display unit 19 displays the processing contents of various programs executed by the authentication device control unit 18.
  • the display unit 19 can also display images such as still images and moving images captured by the imaging unit 11, data input from the operation input unit 14, and the like.
  • the display unit 19 is layered on the operation input unit 14 and constitutes the touch panel shown in FIG.
  • the authentication device 1 includes a processor 21 for executing various programs, a memory 22 for developing various programs, a display controller 23 for outputting various display data, a display device 24 for displaying various display data, and a photographing device. It includes an I/O port 25 for connecting the unit 11, the audio input/output unit 12, etc., a storage device 26 for storing various programs and various data, and a communication device 27 for communicating with the outside and transmitting and receiving various data.
  • the processor 21 , memory 22 , display controller 23 , display device 24 , I/O port 25 , storage device 26 and communication device 27 are interconnected via data bus 28 .
  • the processor 21 reads various programs stored in the storage device 26, develops them in the memory 22, and executes them.
  • the processor 21 can be configured using a processing device such as a CPU (Central Processing Unit) or an MPU (Micro-Processing Unit).
  • the memory 22 can be configured using storage elements and storage media such as RAM (Random Access Memory), volatile or non-volatile semiconductor memory such as flash memory.
  • the display controller 23 is a controller that outputs various display data to the display device 24 .
  • the display controller 23 can be configured using a video signal output device such as a video card, GPU (Graphics Processing Unit), or graphic board.
  • the display device 24 can be configured using a display device such as an LCD (Liquid Crystal Display) or an organic EL (Electroluminescence) monitor.
  • the I/O port 25 is a connecting port that can connect the imaging unit 11, the audio input/output unit 12, the tilt detection unit 13, the operation input unit 14, the fingerprint detection unit 15, and the position detection unit 16. is a port.
  • the I/O port 25 can be configured using various ports to which devices can be connected, such as a USB (Universal Serial Bus) port and an IEEE1394 port.
  • USB Universal Serial Bus
  • the storage device 26 is a device that stores various programs executed by the processor 21 and various data to be used by the various programs.
  • the storage device 26 can be configured using storage devices such as HDDs (Hard Disk Drives) and SSDs (Solid State Drives).
  • the communication device 27 communicates with the information processing device 7 shown in FIG. 1 and has a data communication unit that transmits and receives various data, and a voice communication unit that transmits and receives wireless signals for telephone communication between a base station (not shown).
  • the data communication unit can be configured using a wireless LAN, Wi-fi (registered trademark), Bluetooth (registered trademark), or the like.
  • the voice communication unit can be configured using a communication device that transmits/receives radio signals for telephone communication to/from the base station.
  • the authentication device 1 By executing the authentication processing program 170 and the specific information generation program 176 stored in the authentication device storage unit 17 of the authentication device 1 shown in FIG. An information processing block (each functional unit) is realized. As a result, the authentication device 1 can identify the user based on the biometric information such as the user's face image, fingerprint, voiceprint, etc., and the specific behavior when the user operates the authentication device 1, and the behavior information such as the operation state. can be authenticated and various processes in the authentication device 1 can be executed.
  • biometric information such as the user's face image, fingerprint, voiceprint, etc.
  • the information processing block realized by the processor 21 includes an authentication information acquisition unit 181 that acquires biometric information and behavior information for authentication from the communication unit 10, the imaging unit 11, etc., and an authentication unit 182 that authenticates whether the user is the person himself/herself. a display processing unit 183 that displays the authentication result on the display unit 19; an authentication information update unit 184 that updates information in various databases and tables stored in the authentication device storage unit 17 according to instructions from the authentication unit 182; A data transmission/reception unit 185 for transmitting/receiving data to/from the information processing apparatus 7 shown in FIG. It is the processing unit 187 .
  • the authentication information acquisition unit 181 acquires biometric information and behavior information for authentication from the communication unit 10, the imaging unit 11, and the like.
  • the authentication unit 182 authenticates the user based on the biometric information and behavior information for authentication acquired from the authentication information acquisition unit 181, the authentication values stored in the various databases of the authentication device storage unit 17, the pass conditions, and the like. conduct.
  • the display processing unit 183 receives the user authentication result from the authentication unit 182 and causes the display unit 19 to display a message, an image, etc. according to the authentication result.
  • the authentication information update unit 184 updates data stored in various databases and tables stored in the authentication device storage unit 17 based on instructions from the authentication unit 182 .
  • the data transmission/reception unit 185 transmits/receives data via the information processing device 7 and the communication unit 10 shown in FIG.
  • the specific information generation unit 186 generates specific information for identifying that the target user to whom the service is provided is valid, that is, specific information for identifying that the user who performs the transfer process is valid.
  • the specific information generation unit 186 also has a function of updating the generated specific information.
  • the processing unit 187 executes various necessary processes when the user using the authentication device 1 is authenticated by the authentication unit 182 .
  • the biometric information database for authentication 171 the behavior information database for authentication 172, and the inclination information table 173 stored in the authentication device storage unit 17 and their data configurations will be described. It is explained below.
  • types of biometric information such as face and voice, registered information as biometric information of the user himself/herself, and authentication information shown in FIG. and an authentication value obtained by comparing with the biometric information acquired by the acquisition unit 181 are stored.
  • the registration information stored in the table of the authentication biometric information database 171 is the biometric information of the user himself/herself.
  • the registration information is information registered in advance before the authentication processing is performed by the authentication device 1, and is updated when the user is successfully authenticated. For example, if the type of biometric information is face, the feature amount obtained from the face image is stored in the registration information. For both quantities, if the type of biometric information is iris, iris data is stored, and if the type of biometric information is fingerprint, the feature quantity obtained from the fingerprint image is stored.
  • the authentication value is a value obtained based on the result of comparing the registered information with the biometric information acquired by the authentication information acquisition unit 181 shown in FIG.
  • the authentication value approaches 0 when the registered information and the biometric information acquired by the authentication information acquisition unit 181 are similar, and approaches 1 when they are not similar.
  • the biometric information database for authentication 171 stores an average authentication value, an authentication threshold that is a threshold for determining the authentication value, and an authentication allowable value including an authentication allowable range value indicating a case where the user is gray in the authentication threshold. and are included.
  • the average authentication value is the average authentication value obtained by comparing the registration information and the biometric information acquired by the authentication information acquisition unit 181 .
  • the authentication threshold compares the registered information with the biometric information acquired by the authentication information acquisition unit 181, and if the authentication value obtained based on the comparison result is less than this value, the user is determined to be the user himself/herself. It is a reference value for
  • the authentication threshold is a value that fluctuates according to the user's authentication status, and the upper limit is set in advance.
  • the upper limit value is a value at which the user should not be authenticated only by the user and biometric information when the authentication value exceeds the value.
  • the default value of the authentication threshold is set to 0.4 between the authentication value 0, which approaches when the registered information and the biometric information acquired by the authentication information acquisition unit 181 are similar, and the authentication value 1, which approaches when they are not similar. do.
  • the upper limit of the authentication threshold is set to the default value of the authentication threshold, with an authentication value of 0 approaching when the registered information and the biometric information are similar, and an authentication value of 1 approaching when the registered information and the biometric information are not similar.
  • 0.05, which is half of 10%, is added, that is, 0.45.
  • the default value of the authentication threshold value and the value to be added may be different for each group or individual such as the user's age group or sex.
  • the registered information is compared with the biometric information acquired by the authentication information acquisition unit 181. If the authentication value obtained based on the result of the comparison is equal to or greater than this value, the user is identified as the user himself/herself. It is a value that serves as a reference for determining that there is no
  • the authentication allowable value is a value including the authentication threshold value including the authentication allowable range value indicating the case where the user is gray as described above. For this reason, the authentication allowable value is a value that fluctuates according to fluctuations in the authentication threshold value and the authentication allowable range value.
  • the maximum allowable authentication value is a value at which the user should be judged to be a stranger if the authentication value is equal to or greater than this value.
  • the maximum permissible authentication value is 0.5, which is intermediate between the authentication value 0, which approaches when the registered information and the biometric information acquired by the authentication information acquisition unit 181 are similar, and the authentication value 1, which approaches when they are not similar. do.
  • a value between the authentication threshold and the authentication allowable value is called an authentication allowable range value.
  • the allowable authentication range value is a value indicating whether the user is the user himself/herself or not.
  • the authentication value is within the allowable authentication range value, it is determined whether or not the user is the real user based only on the biometric information, but includes the behavior information specific to the user. Specifically, when the authentication value is within the authentication allowable range value, and when the behavior information unique to the user meets the pass conditions, the user is authenticated.
  • auxiliary authentication User authentication based on behavior information is hereinafter referred to as auxiliary authentication.
  • the permissible authentication range value is a predetermined value that the user himself/herself can generally consider as long as the authentication value falls within this range.
  • the allowable authentication range value is, for example, 0.0, which is less than 10% of the authentication value 0 approaching when the registered information and the biometric information acquired by the authentication information acquisition unit 181 are similar, and the authentication value 1 approaching when they are not similar. 08.
  • the allowable authentication range value is the maximum allowable authentication value minus the upper limit of the authentication threshold. For example, if the upper limit of the authentication threshold is 0.45 and the maximum allowable authentication value is 0.5, the allowable authentication range value is 0.05. Therefore, when the authentication threshold is the upper limit, the value of the allowable authentication range value is smaller than when the authentication threshold is not the upper limit.
  • the table of the authentication behavior information database 172 includes types of user behavior such as communication connection and event execution, acquired information acquired by the authentication information acquisition unit 181 shown in FIG. 5, the latest status of each behavior, Passing conditions for each behavior are stored.
  • the behavior type is communication connection
  • the address of the connection destination SSID (Service Set Identifier), BSSID (Basic Service Set Identifier), etc.
  • schedule book Location information such as the name and address of the place where the event is held stored in . (Identifier), etc. are stored respectively.
  • the latest status for each behavior is the total number of times the device has been connected to the communication connection destination indicated in the acquired information.
  • the initial value of the total number of times of connection to the communication connection destination is 0, and the number of times is incremented by connecting to the communication connection destination.
  • the type of behavior is event execution, the distance between the location stored in the acquired information and the user's current location is stored.
  • the type of behavior is the distance between the face and the authentication device 1
  • the average distance between the face and the authentication device 1 calculated when the user has been authenticated as the user is stored.
  • the average distance between the face and the authentication device 1 is updated each time the user is authenticated as the user.
  • the initial value of the average distance between the face and the authentication device 1 is the distance obtained when the biometric information shown in FIG. 6A is registered in advance before the authentication device 1 authenticates the user.
  • a device connection is, for example, a connection between a device paired by Bluetooth (registered trademark) and the authentication apparatus 1 .
  • the pass condition for each behavior is a predetermined condition that ensures the reliability of each behavior.
  • FIG. 6C shows the tilt information table 173.
  • the tilt information table 173 stores the angle indicating the tilt of the authentication device 1 acquired from the tilt detection unit 13 shown in FIG. 5, the date and time when the angle was acquired, and the standby time that is the interval for detecting the tilt. are doing.
  • the angle indicating the tilt of the authentication device 1 is acquired from the tilt detection unit 13 by the authentication information acquisition unit 181 shown in FIG. 5 and updated each time the standby time elapses. Also, when updating the angle, the date and time when the angle was acquired is also updated.
  • the information processing device 7 is a terminal that identifies a user to whom a service is to be provided based on the identification information generated by the authentication device 1 and provides the service to the identified user. As described above, the information processing device 7 in this embodiment determines the legitimacy of the target user based on the specific information, and provides the user whose legitimacy is recognized with financial services (execution of transfer). to the financial institution 99).
  • FIG. 7 is a block diagram showing the configuration of the information processing device 7. As shown in FIG.
  • the information processing device 7 is, as described above, a personal computer, a smartphone, or a tablet terminal, and includes a communication unit 70, an audio input/output unit 72, an operation input unit 73, an information processing device storage unit 77, and an information processing device.
  • a control unit 78 and a display unit 79 are provided.
  • the tilt detection unit 13, the fingerprint detection unit 15, and the position detection unit 16 may be further provided.
  • the communication unit 70, the voice input/output unit 72, and the operation input unit 73 in the information processing device 7 are the same as the communication unit 10, the voice input/output unit 12, and the operation input unit 14 in the authentication device 1, so description thereof will be omitted.
  • the information processing device storage unit 77 includes a program 770 for judging the legitimacy of a target user, and a correspondence information list 771 that associates specific information with the public key of the authentication device. Further, the information processing device storage unit 77 stores programs of various applications executed by the information processing device 7 .
  • the information processing device control unit 78 executes various programs (including the program 770) stored in the information processing device storage unit 77.
  • the information processing device control unit 78 acquires and processes various data from the communication unit 70 , the voice input/output unit 72 , and the operation input unit 73 , and stores them in various databases, tables, etc. of the information processing device storage unit 77 .
  • the information processing device control unit 78 acquires and processes various data from the communication unit 70 , the voice input/output unit 72 , and the operation input unit 73 , and stores them in various databases, tables, etc. of the information processing device storage unit 77 .
  • the display unit 79 displays the processing contents of various programs executed by the information processing device control unit 78 . Moreover, the display unit 79 can also display data or the like input from the operation input unit 73 . When the information processing device 7 is a smart phone or a tablet terminal, the display unit 79 may be stacked on the operation input unit 73 to form a touch panel.
  • the information processing device 7 includes a processor 81 that executes various programs, a memory 82 that develops various programs, a display controller 83 that outputs various display data, and various display data.
  • the processor 81 , memory 82 , display controller 83 , display device 84 , I/O port 85 , storage device 86 and communication device 87 are interconnected via a data bus 88 .
  • Processor 81 , memory 82 , display controller 83 , display device 84 , I/O port 85 , storage device 86 , communication device 87 , and data bus 88 are the processor 21 , memory 22 , and display controller 23 in authentication device 1 .
  • the information processing block shown in FIG. By executing the program 770 stored in the information processing device storage unit 77 of the information processing device 7 shown in FIG. 7 by the processor 81, the information processing block shown in FIG. ) is realized. Thereby, the information processing device 7 can determine the legitimacy of the target user and instruct the financial institution 99 to provide financial services to the user whose legitimacy is recognized.
  • the information processing block realized by the processor 21 includes a determination information acquisition unit 781 that acquires determination information from the communication unit 10 or the like, a determination unit 782 that determines the legitimacy of the user, and a display unit 79 that displays the determination result.
  • the determination information acquisition unit 781 acquires determination information for determination from the communication unit 10 or the like.
  • the judging section 782 judges the legitimacy of the user based on the judging information acquired from the judging information acquiring section 781 .
  • the determination information acquisition unit 781 acquires the specific information and the public key of the authentication device from the authentication device 1 via the communication unit 10 .
  • the public key of the authentication device may be input by operating the operation input unit 73 .
  • it may be input from the voice input/output unit 72 .
  • the determination unit 782 Based on the identification information acquired by the determination information acquisition unit 781 and the public key of the authentication device, the determination unit 782 identifies the target user from the corresponding information list 771 in the information processing device storage unit 77, and determines whether the user is legitimate. determine gender. Also, the determination unit 782 cooperates with the processing unit 787 to update the updated specific information. Specifically, the specific information stored in the correspondence information list 771 of the information processing device storage unit 77 is updated to new specific information.
  • the display processing unit 783 causes the display unit 79 to display a message, an image, etc. according to the determination result of the determination unit 782 and the processing result of the processing unit 787 .
  • voice may be output from the voice input/output unit 72 at the same time.
  • the data transmission/reception unit 785 transmits/receives data to/from the financial institution 99 and the authentication device 1 shown in FIG.
  • the processing unit 787 executes a process of creating a service provision instruction to the financial institution 99 based on the determination result of the determination unit 782, and various other processes.
  • the correspondence information list 771 shown in FIG. 10 is stored in the information processing device storage unit 77 in the process of step S218 (see FIG. 13), which will be described later.
  • the correspondence information list 771 associates the specific information with the public key of the authentication device. Therefore, the corresponding information list 771 is information that enables the information processing device 7 to identify which user of the specific information is the target of service provision.
  • specific information generation processing (see FIG. 13), which will be described later, is executed for each service provided, so that the specific information and the public key of the authentication device are generated for each service. Become.
  • the specific information and the public key of the authentication device that are different for each service are registered in the correspondence information list 771 . Therefore, common information is not registered for users who use a plurality of services, and it is possible to prevent the information processing apparatus 7 from recognizing that the users are the same user.
  • the specific information may be different for each service, while the public key of the authentication device may be commonly used for a plurality of services.
  • specific information that differs for each service may be set by specific information update processing (see FIG. 16), which will be described later (it may be newly registered in the processing of step S413 shown in FIG. 16).
  • the public key of the authentication device common to each service can be used, since the specific information differs for each service, it is possible to ensure security while reducing the processing load.
  • the illustrated correspondence information list 771 shows an example in which the specific information and the public key of the authentication device are linked, in addition to this, the common key SK generated in the process of step S208A (see FIG. 13) described later. may be tied together. Alternatively, only the public key of the authentication device may be registered in the correspondence information list 771 .
  • FIG. 11A a case in which a so-called internet bank transfers financial services is performed will be described as an example.
  • user authentication is performed in authentication processing in the authentication device 1 .
  • the specific information is generated, and by transmitting the generated specific information to the information processing device 7, the information processing device 7 further determines the legitimacy of the user. be.
  • the information processing device 7 recognizes the user's legitimacy, the information processing device 7 transmits a transfer instruction to the financial institution 99, and the transfer process is performed.
  • the authentication processing in the authentication device 1 is processing performed in the background.
  • Login information such as a login ID and a password issued by the financial institution 99 is also transmitted from the authentication device 1 to the information processing device 7 , and the information processing device 7 also transmits the login information together with the transfer instruction to the financial institution 99 . will be sent.
  • the transfer is processed when the transfer instruction is received from the information processing device 7 and the login information received from the information processing device 7 is valid.
  • the information processing device 7 may also determine the validity of the login information.
  • this embodiment shows an example in which user authentication is performed in the background, user authentication is not limited to being performed in the background. Note that the first condition is established when the user is successfully authenticated.
  • the authentication process will be described with reference to FIGS. 11A and 11B.
  • the authentication device 1 completes the initialization process after the power is turned on or returns from the sleep state
  • the authentication device 1 enters a locked state in which operation of each function is not permitted until authentication succeeds.
  • the authentication device control unit 18 shown in FIG. 3 executes the authentication processing program 170 stored in the authentication device storage unit 17
  • authentication processing for determining whether the user is the user himself or not is started.
  • the facial image of the user is used as the biometric information, but the biometric information is not limited to the facial image, and may be a fingerprint, voiceprint, iris, etc., or any combination thereof. good too.
  • the authentication process may be started when a financial service application is executed, and the authentication process may be continuously performed while the application is running.
  • a user desiring financial services starts authentication processing when a financial service application (a so-called Internet bank application) is started, and while the application is being started (starting).
  • a financial service application a so-called Internet bank application
  • starting The following description assumes that the authentication process is repeatedly executed in the background during the period from when the authentication process is performed to when it is terminated.
  • the authentication information acquisition unit 181 shown in FIG. 5 causes the photographing unit 11 to photograph the face of the user operating the authentication device 1. Specifically, the authentication information acquisition unit 181 causes the in-camera 11A to take a face picture of the user facing the front of the authentication device 1 . As a result, the authentication information acquiring unit 181 acquires the user's face photograph taken from the photographing unit 11 (step S101).
  • the authentication information acquisition unit 181 determines whether the acquired face photo of the user is blurry (step S102). When the user's facial photograph is blurred (step S102; NO), the authentication information acquisition unit 181 causes the photographing unit 11 to retry photographing the user's facial photograph (step S103). If the user's facial photograph is not blurred (step S102; YES), the authentication information acquisition unit 181 determines whether the user's face can be detected from the user's facial photograph taken by the photographing unit 11 (step S102; YES). S104).
  • the authentication information acquisition unit 181 causes the photographing unit 11 to retry photographing the user's facial photograph (step S103). In addition, if the user's face cannot be detected from the user's face photo, the system will be locked so that the user who is currently operating cannot perform any further operations, or a message will be displayed to the effect that another authentication method will be used. good too. If the user's face can be detected from the user's facial photograph (step S104; YES), the authentication information acquiring unit 181 obtains the feature amount of the detected user's face image. The authentication information acquisition unit 181 transmits the obtained feature amount of the user's face image to the authentication unit 182 .
  • the authentication unit 182 acquires the authentication biometric information database 171 stored in the authentication device storage unit 17 shown in FIG.
  • the authenticating unit 182 retrieves from the table of the authentication biometric information database 171 shown in FIG. Get authentication tolerance and authentication threshold.
  • the authentication unit 182 compares the feature amount of the face image in the registered information acquired from the authentication biometric information database 171 with the feature amount of the face image received from the authentication information acquisition unit 181, and based on the comparison result Obtain the certified value of
  • the authentication unit 182 determines whether or not the obtained face authentication value is equal to or greater than the authentication threshold obtained from the biometric information database for authentication 171 (step S105).
  • the authentication unit 182 determines whether or not the obtained face authentication value is less than or equal to the allowable authentication value acquired from the authentication biometric information database 171. (Step S106). If the obtained face authentication value is equal to or less than the authentication allowable value (step S106; YES), it is gray as to whether the user using the authentication device 1 is the user himself/herself or not. Perform assisted authentication. First, the authentication unit 182 causes the authentication information acquisition unit 181 to acquire the currently connected communication connection destination from the communication unit 10 . The authentication unit 182 receives the acquired current communication connection destination of the communication unit 10 from the authentication information acquisition unit 181 .
  • the authentication unit 182 acquires the authentication behavior information database 172 from the authentication device storage unit 17 shown in FIG.
  • the authentication unit 182 acquires the acquisition information, the number of times, and the acceptance condition associated with "communication connection" among the behavior types stored in the table of the authentication behavior information database 172 shown in FIG. 6B.
  • the acquisition information of "communication connection” stores SSIDs ABC_WLAN and 123WLAN.
  • ABC_WLAN the number of times of connection is stored as 31 times, and the number of times of connection is 100 times or more as a pass condition.
  • 123 WLAN 157 connections are stored, and 100 or more connections are stored as a pass condition.
  • a case that satisfies the passing condition is called a reliable one, and a case that does not satisfy the passing condition is called a non-reliable one.
  • the authentication unit 182 compares the current communication connection destination of the communication unit 10 received from the authentication information acquisition unit 181 with the acquired information acquired from the authentication behavior information database 172, and determines whether the current communication connection destination trusts the connection. It is determined whether or not it is ahead (step S107).
  • the SSID ABC_WLAN is acquired as the current communication connection destination of the communication unit 10 .
  • ABC_WLAN in the acquisition information of the behavior type "communication connection" stored in the authentication behavior information database 172 has a connection count of 31 times and a pass condition of the connection count of 100 or more. Therefore, since the current communication connection destination is not a reliable communication connection destination (step S107; NO), it is determined whether or not a reliable event is being executed (step S108).
  • the authentication unit 182 causes the authentication information acquisition unit 181 to acquire the details of the event executed immediately before from the operation input unit 14 .
  • the authentication unit 182 obtains from the calendar provided in the authentication device 1 whether or not there is a schedule at the current date and time, and the information on the location where the schedule will be held. If there is no schedule for that day, the authentication unit 182 assumes that the event is not a reliable event (step S108; NO), and calculates the distance between the face and the authentication device 1 (step S109). Also, if there is a schedule on that day, the authentication unit 182 causes the authentication information acquisition unit 181 to acquire the current location information from the location detection unit 16 . Subsequently, the authentication unit 182 acquires the authentication behavior information database 172 from the authentication device storage unit 17 shown in FIG.
  • the authentication unit 182 acquires acquisition information and acceptance conditions associated with "event execution” among the behavior types stored in the table of the authentication behavior information database 172 shown in FIG. 6B. For example, as shown in FIG. 6B, the acquisition information for "executing an event” stores “XX park” and “ ⁇ movie theater” as places where the event is held, and “the distance is within 100 m” as a passing condition for both of them. ” is stored.
  • the calendar provided in the authentication device 1 stores "XX Park” as the location of the event that will be held at the current date and time.
  • the authentication unit 182 compares the current location information acquired from the location detection unit 16 by the information acquisition unit 181 for authentication with the location information of “ ⁇ Park”, which is the location of the event held at the current date and time.
  • the distance between the current location information and the location information of the event location “ ⁇ Park” is 113 m.
  • the event is not executed to be trusted (step S108; NO), and the distance between the face and the authentication device 1 is calculated (step S109).
  • the distance between the user's face and the authentication device 1 is calculated based on the proportion of the user's face in the photograph of the user facing the front of the authentication device 1 taken by the in-camera 11A shown in FIG.
  • the authentication unit 182 acquires the authentication behavior information database 172 from the authentication device storage unit 17 shown in FIG.
  • the authentication unit 182 acquires the average distance and acceptance condition associated with the "distance between the face and the terminal device" among the behavior types stored in the table of the authentication behavior information database 172 shown in FIG. 6B. .
  • the average distance of "the distance between the face and the terminal device" is stored as 262 mm, and the acceptance condition is within plus or minus 20 mm of the average distance.
  • the authentication unit 182 determines whether or not the distance between the user's face and the authentication device 1 calculated in step S109 is within the set range set as the acceptance condition acquired from the authentication behavior information database 172 (step S110). Specifically, the average distance acquired from the authentication behavior information database 172 is 262 mm, and the acceptance condition is within plus or minus 20 mm of the average distance.
  • the authentication unit 182 identifies the user using the authentication device 1 as the user himself/herself. Authenticate.
  • the authentication unit 182 causes the authentication information update unit 184 to update various data stored in the authentication biometric information database 171 and the authentication behavior information database 172 shown in FIG. 2 (step S111).
  • the authentication information update unit 184 updates the registration information associated with the biometric information type “face” in the table of the authentication biometric information database 171 shown in FIG.
  • the feature amount of the face image received by the authentication unit 182 from the authentication information acquisition unit 181 is added to the feature amount of the face image, and updated.
  • the authentication information update unit 184 adds 1 to the number of times stored in the latest status associated with the behavior type “communication connection” in the table of the authentication behavior information database 172 shown in FIG. 6B, Update.
  • the authentication information updating unit 184 stores the latest situation associated with the behavior type “distance between the face and the terminal device” stored in the table of the authentication behavior information database 172 shown in FIG. 6B. and the "distance between the face and the terminal device" calculated in step S109.
  • the accuracy of the user's biometric information and behavior information is improved. Therefore, the accuracy of user authentication can be improved.
  • the authentication unit 182 connects to the authentication information acquisition unit 181 from the communication unit 10 at present. Get the communication connection destination that is connected.
  • the authentication unit 182 receives the acquired current communication connection destination of the communication unit 10 from the authentication information acquisition unit 181 .
  • the authentication unit 182 acquires the authentication behavior information database 172 from the authentication device storage unit 17 shown in FIG.
  • the authentication unit 182 acquires the acquired information, the number of times, and the acceptance condition associated with "communication connection" among the behavior types stored in the table of the authentication behavior information database 172 shown in FIG. 6B.
  • the authentication unit 182 compares the current communication connection destination of the communication unit 10 received from the authentication information acquisition unit 181 with the acquired information acquired from the authentication behavior information database 172, and determines whether the current communication connection destination trusts the connection. It is determined whether or not it is ahead (step S112).
  • SSID 123 WLAN is acquired as the current communication connection destination of the communication unit 10 .
  • the number of times of connection is 157 times, and the number of times of connection of the pass condition is 100 times or more. Therefore, since the current communication connection destination is a reliable communication connection destination (step S112; YES), the authentication unit 182 authenticates the user using the authentication device 1 as the user himself/herself. After that, the authentication unit 182 makes the authentication interval longer than the current authentication interval (step S113).
  • the authentication interval should be set longer than the current authentication interval, the frequency of authentication should be lowered, and authentication should be performed the minimum necessary number of times.
  • the SSID ABC_WLAN is acquired as the current communication connection destination of the communication unit 10 .
  • ABC_WLAN in the acquisition information of the behavior type "communication connection" stored in the authentication behavior information database 172 has a connection count of 31 times and a pass condition of the connection count of 100 or more. Therefore, since the current communication connection destination is not a reliable communication connection destination (step S112; NO), the authentication unit 182 does not authenticate the user using the authentication device 1 as the user himself/herself, and sets the authentication interval to the current one. authentication interval.
  • step S107 for example, it is assumed that the SSID 123 WLAN is acquired as the current communication connection destination of the communication unit 10 .
  • the number of times of connection is 157 times, and the number of times of connection of the pass condition is 100 times or more. Therefore, since the current communication connection destination is a reliable communication connection destination (step S107; YES), the authentication unit 182 authenticates the user using the authentication device 1 as the user himself/herself.
  • step S108 for example, it is assumed that the calendar provided in the authentication device 1 stores " ⁇ movie theater" as the location of the event to be held at the current date and time.
  • the authentication unit 182 compares the current location information obtained by the information acquisition unit 181 for authentication from the location detection unit 16 with the location information of the location of the event held at the current date and time, ie, "XXX movie theater". .
  • the distance between the current location information and the location information of the event location, ie, “ ⁇ movie theater” is 72 m.
  • the authentication unit 182 authenticates the user using the authentication device 1 as the user himself/herself.
  • the authentication unit 182 makes the authentication interval longer than the current authentication interval (step S113).
  • the authentication unit 182 calculates the distance between the user's face and the authentication device 1 (step S114). Subsequently, the authentication unit 182 acquires the authentication behavior information database 172 from the authentication device storage unit 17 shown in FIG.
  • the authentication unit 182 determines whether or not the distance between the user's face and the authentication device 1 calculated in step S114 is within the set range set as the pass condition acquired from the authentication behavior information database 172 (step S115). If the distance between the user's face and the authentication device 1 calculated in step S114 is within the set range (step S115; YES), the authentication unit 182 authenticates the user using the authentication device 1 as the user himself/herself.
  • the authentication unit 182 causes the authentication information update unit 184 to update various data stored in the authentication biometric information database 171 and the authentication behavior information database 172 shown in FIG. 3 (step S111).
  • the authentication information update unit 184 updates the registration information associated with the biometric information type “face” in the table of the authentication biometric information database 171 shown in FIG.
  • the feature amount of the face image received by the authentication unit 182 from the authentication information acquisition unit 181 in step S105 is added to the feature amount of the face image, and updated.
  • the authentication information update unit 184 adds 1 to the number of times stored in the latest status associated with the behavior type “communication connection” in the table of the authentication behavior information database 172 shown in FIG. 6B. ,Update. Subsequently, the authentication information update unit 184 updates the latest status associated with the behavior type “event execution” in the table of the authentication behavior information database 172 with the location of the event obtained in step S108; Writes and updates the distance between Further, the authentication information updating unit 184 updates the latest situation associated with the behavior type “distance between the face and the terminal device” stored in the table of the authentication behavior information database 172 shown in FIG. 6B. The average distance is updated by the average distance obtained from the average distance stored in the situation and the "distance between the face and the terminal device" calculated in step S114.
  • step S115 the authentication unit 182 updates the authentication information updating unit 184 with the authentication biometric information shown in FIG.
  • Various data stored in the database 171 and the authentication behavior information database 172 are not updated.
  • step S106 If the authentication value of the face obtained by the authentication unit 182 is not equal to or less than the allowable authentication value of the authentication value (step S106; NO), and if the distance between the face and the terminal device is not within the set range in step S110, If so (step S110; NO), the authentication unit 182 determines that the user using the authentication device 1 is not the user himself/herself.
  • the authentication unit 182 causes the display processing unit 183 shown in FIG. 5 to display on the display unit 19 that the authentication has failed. Subsequently, the authentication unit 182 calls existing biometric authentication means provided in the authentication device 1 .
  • fingerprint authentication is called as an existing biometric authentication means.
  • Authentication unit 182 performs fingerprint authentication (step S116).
  • the authentication information acquisition unit 181 causes the photographing unit 11 to take a photograph of the face of the user operating the authentication device 1 according to the instruction from the authentication unit 182.
  • the authentication information acquisition unit 181 acquires the image of the user's facial photograph taken from the imaging unit 11, and obtains the feature amount of the user's facial image.
  • the authentication information acquisition unit 181 transmits the requested feature amount of the user's face image to the authentication unit 182 .
  • the authentication unit 182 transmits the received feature amount of the user's face image to the authentication information updating unit 184 shown in FIG.
  • the authentication information update unit 184 stores the received feature amount of the user's face image in the registration information associated with the biometric information type "face" in the table of the authentication biometric information database 171 shown in FIG. 6A. In addition to the feature amount of the face image that has been set, it is updated (step S118). The authentication unit 182 returns to step S101 and executes steps after step S101.
  • step S117 If the fingerprint authentication fails (step S117; NO), the authentication unit 182 causes the display processing unit 183 shown in FIG. 5 to display on the display unit 19 that authentication has failed. Subsequently, the authentication unit 182 causes the display processing unit 183 shown in FIG. 5 to display a login screen on the display unit 19 (step S119).
  • the authentication unit 182 determines whether or not biometric authentication and auxiliary authentication have been successful for a predetermined set number of times (step S120).
  • the set number of times may be any number of times, such as 10 times in succession or 20 times in total after the authentication device 1 is activated. If the biometric authentication and the auxiliary authentication are successful for the set number of times (step S120; YES), the authentication unit 182 obtains the average face authentication value obtained by the set number of authentications (step S121). Specifically, the authentication unit 182 acquires the authentication biometric information database 171 shown in FIG. 3 from the authentication device storage unit 17 .
  • the authentication unit 182 acquires the average value of the authentication values associated with the “face” among the types of biometric information from the table of the authentication biometric information database 171 shown in FIG. 6A.
  • the authentication unit 182 adds the face authentication value obtained in step S105 and the average of the authentication values acquired from the authentication biometric information database 171, divides the result by 2, and calculates the average face authentication value. Also, if the biometric authentication and auxiliary authentication have not been successful for the predetermined set number of times (step S120; NO), the processing from step S121 to step S123 is skipped, and the process proceeds to step S124.
  • the authentication unit 182 transmits the average value of the face authentication values obtained in step S121 to the authentication information update unit 184.
  • the authentication information updating unit 184 compares the received average value of face authentication values with a preset upper limit value of the authentication threshold. When the average face authentication value is equal to or greater than the upper limit of the authentication threshold set in advance, the authentication information update unit 184 updates the biometric information type in the table of the authentication biometric information database 171 shown in FIG. 6A. The upper limit value of the authentication threshold value is written in the authentication threshold value associated with "face” and updated. Further, when the average face authentication value is equal to or less than the upper limit of the authentication threshold set in advance, the authentication information updating unit 184 updates the biometric information in the table of the authentication biometric information database 171 shown in FIG. 6A. The average value of the face authentication values obtained in step S121 is written in the authentication threshold associated with "face” among the types, and updated (step S122).
  • the authentication information updating unit 184 updates the authentication allowable value (step S123). Specifically, when the average value of the face authentication values obtained in step S121 is equal to or greater than the preset upper limit of the authentication threshold, the authentication information updating unit 184 updates the preset maximum allowable authentication value. Acceptable value for certification. If the average value of the face authentication values obtained in step S121 is equal to or lower than the upper limit value of the authentication threshold set in advance, the average value of the face authentication values obtained in step S121 and the default authentication allowable range value If the added value is less than or equal to the maximum certification allowable value, the added value is taken as the certification allowable value.
  • the authentication information update unit 184 acquires the authentication biometric information database 171 shown in FIG. 3 from the authentication device storage unit 17 .
  • the authentication information update unit 184 writes the obtained authentication allowable value to the authentication allowable value associated with "face" among the types of biometric information in the table of the authentication biometric information database 171 shown in FIG. 6A, Update.
  • the authentication information acquisition unit 181 shown in FIG. 5 acquires the tilt angle of the authentication device 1 from the tilt detection unit 13 . Subsequently, the authentication information acquisition unit 181 acquires current date and time information from a timer (not shown) (step S124). The authentication information acquisition unit 181 transmits the acquired tilt angle of the authentication device 1 and the current date and time information to the authentication unit 182 . The authentication unit 182 transmits the received tilt angle of the authentication device 1 and the current date and time information to the authentication information updating unit 184 . The authentication information update unit 184 writes and stores the received tilt angle of the authentication device 1 and the current date and time information in the tilt information table 173 stored in the authentication device storage unit 17 shown in FIG. 3 (step S125).
  • the authentication unit 182 acquires the standby time stored in the tilt information table 173 shown in FIG. 6C.
  • the authentication unit 182 transmits the acquired standby time to the authentication information acquisition unit 181 .
  • the authentication information acquisition unit 181 waits for acquisition of data from the communication unit 10, the imaging unit 11, and the like during the received standby time (step S126). After the waiting time is over, the authentication information acquisition unit 181 acquires the tilt angle of the authentication device 1 from the tilt detection unit 13 . Subsequently, the authentication information acquisition unit 181 acquires current date and time information from a timer (not shown) (step S127). The authentication information acquisition unit 181 transmits the acquired tilt angle of the authentication device 1 and the current date and time information to the authentication unit 182 .
  • the authentication unit 182 acquires the angle of the authentication device 1 stored in the tilt information table 173 shown in FIG. 6C.
  • the authentication unit 182 compares the tilt angle of the authentication device 1 received from the authentication information acquisition unit 181 with the angle of the authentication device 1 acquired from the tilt information table 173, and determines whether the angle has changed. Determine (step S128). If the change in the angle of the authentication device 1 is an angle of a predetermined set value, for example, 30 degrees or more (step S128; NO), the authentication unit 182 determines that the user has moved the authentication device 1 and performed some operation. It is determined that it has been performed, and the process returns to step S101 shown in FIG. 11A. After that, the authentication unit 182 executes the processes from step S101.
  • step S129 determines whether or not it is time to authenticate the user.
  • the timing of authenticating the user is the timing when the preset authentication interval has elapsed. If it is time to authenticate the user (step S129; YES), the authentication unit 182 returns to step S101 shown in FIG. 11A. After that, the authentication unit 182 executes the processes from step S101. If it is not time to authenticate the user (step S129; NO), the authentication unit 182 returns to step S125. The authentication unit 182 executes the processing from step S125 to step S129.
  • the authentication value obtained from the biometric information and the authentication threshold are the same value, the authentication value obtained from the biometric information is equal to or less than the authentication threshold, or the authentication value obtained from the biometric information In whichever case the obtained authentication value is greater than or equal to the authentication threshold, it may be determined whether the authentication was successful. Also, if the authentication value obtained from the biometric information and the authentication allowable value are the same value, the authentication value obtained from the biometric information is less than the authentication allowable value, or the authentication value obtained from the biometric information is less than the authentication allowable value. In either case of greater than or equal to the authentication tolerance, it may be determined whether the authentication was successful.
  • FIG. 12 is a flowchart showing an example of determination instruction processing.
  • the determination instruction process may be started each time the authentication process ends, and the determination instruction process is repeatedly executed each time the authentication process is repeated for each set period.
  • the authentication process in this embodiment is performed continuously and repeatedly while a financial service application (a so-called Internet bank application) is activated (a period from activation to termination).
  • the determination instruction process is also repeatedly executed for the same period.
  • the processing unit 187 determines whether or not the authentication in the authentication process has succeeded (step S301).
  • step S302 determines whether or not the processing has ended (step S302). Specifically, in the process of step S302, for example, it is determined whether or not a financial service application (a so-called Internet bank application) has been terminated by the user's input operation on the operation input unit 14, or whether the financial service application has been started. By checking the timer value and determining whether or not a predetermined time has elapsed since then, it is determined whether or not the process has ended.
  • a financial service application a so-called Internet bank application
  • step S302 If it is determined that the process has not ended (step S302; NO), the processing unit 187 has already executed the process of step S305 and determines whether the determination has already started (step S303). In step S303, it may be determined whether or not the process of step S305, which will be described later, has been executed. If determination has already been started (step S303; YES), the processing unit 187 ends the determination instruction process as it is. On the other hand, if determination has not started yet (step S303; NO), the processing unit 187 causes the specific information generation unit 186 to execute specific information generation processing for generating specific information (step S304).
  • FIG. 13 is a flow chart showing an example of the specific information generating process executed in step S304 of FIG.
  • the specific information generating unit 186 first executes the original key generating process for generating the original key (step S201).
  • FIG. 14 is a flow chart showing an example of the original key generation process executed in step S201 of FIG.
  • step S601 the specific information generation unit 186 first extracts the feature amount of the user (step S601). Specifically, in step S601, facial feature vectors are extracted as feature amounts from the photograph of the face acquired in step S101 shown in FIG. 11A. Note that in the process of step S601, a new photograph of the user's face may be taken. In this case, similarly to the process of step S102 shown in FIG. may retry. In addition, in the process of step S601 shown in FIG. 14, the feature amount obtained when YES is determined in the process of step S104 shown in FIG. 11A may be used.
  • the feature amount extracted in step S601 is not limited to the facial feature amount, and may be biometric information of the user such as a fingerprint, voiceprint, iris, or a combination thereof.
  • the specific information generation unit 186 that executes the process of step S601 and step S601 correspond to feature amount acquisition means and a feature amount acquisition step.
  • the specific information generation unit 186 acquires a threshold (step S602).
  • the threshold acquired in step S602 may be set in advance and stored in the authentication device storage unit 17.
  • FIG. The threshold is obtained by using a key derivation function (second key derivation function) called BBKDF (Biometric-Based Key Derivation Function) in the processing of step S609 described later and step S806 (see FIG. 17) in the original key regeneration processing. is the threshold to use when generating or regenerating the primordial key.
  • BBKDF is a key derivation function that calculates the same value if the input data is within the range of the reference amount threshold.
  • step S603 After executing the process of step S602, the specific information generation unit 186 acquires other information (step S603). Specifically, in step S603, various kinds of information such as a random number generated by the random number generator, unique information that is identification information unique to the authentication apparatus 1, and a time stamp when the original key generation process is executed are acquired.
  • the random number generator may be provided as a function of the authentication device control section 18 .
  • the time stamp is not limited to the time stamp when the original key generation process is executed, and may be the time stamp when the process of step S603 is performed.
  • the specific information generating unit 186 After executing the process of step S603, the specific information generating unit 186 generates a message authentication code based on the user feature amount extracted in step S601 and the random number obtained in step S603 (step S604). Specifically, in step S604, a message authentication code called HMAC (Hash-based Message Authentication Code) is generated using the user's feature amount extracted in step S601 as a message and part of the random number obtained in step S603 as a key. .
  • HMAC Hash-based Message Authentication Code
  • the specific information generation unit 186 acquires a recovery code (step S605).
  • the recovery code is a password required for regenerating the original key in the later-described original key regenerating process (see FIG. 17), and may be arbitrarily determined and input by the user. Also, a random number generated by a random number generator may be used as a recovery code. In this case, the generated recovery code should be notified to the user. Further, the input of the recovery code by the user is not limited to the input from the operation input unit 14, and may be voice input from the voice input/output unit 12, for example. Note that the specific information generation unit 186 that executes the process of step S605 and step S605 correspond to recovery code acquisition means and a recovery code acquisition step.
  • step S606 After executing the process of step S605, the specific information generating unit 186 generates pre-key derivation data (step S606). Specifically, in step S606, data obtained by combining various information obtained in step S603, the message authentication code generated in step S604, and the recovery code obtained in step S605 is generated as pre-key derivation data. Although this embodiment shows an example of generating pre-key derivation data by combining the various information acquired in step S603, the message authentication code, and the recovery code, the pre-key derivation data is limited to this. do not have.
  • the pre-key derivation data may be any data, such as a combination of the two, one of them, or a random value.
  • the specific information generating unit 186 After executing the process of step S606, the specific information generating unit 186 generates key data by applying a predetermined first key derivation function to the pre-key derivation data generated in step S606 (step S607).
  • a key derivation function standardized by RFC5869 called HKDF HMAC-based Extract-and-Expand Key Derivation Function
  • HKDF HMAC-based Extract-and-Expand Key Derivation Function
  • the key data is not limited to this.
  • the key data may be, for example, random numbers or arbitrary data. That is, in the process of step S607, for example, a random number value generated by a random number generator may be generated as key data.
  • the specific information generation unit 186 sets the reference amount based on the key data generated in step S607 and the threshold value obtained in step S602 (step S608). Specifically, in step S608, first, a set called a reference quantity candidate set is determined.
  • the reference quantity candidate set is a set such that the same key is not generated when the second key derivation function is applied to two different elements in the set due to the characteristics of the second key derivation function, which will be described later. It has so many elements that it is practically impossible for an attacker to attempt all of them.
  • a vector quantity called a reference quantity is generated by selecting one element from the reference quantity candidate set in such a way that the element selected by a third party cannot be easily guessed.
  • K(i) An algorithm that returns a value obtained by multiplying the integer part of (2 128 ⁇ 1) ⁇ i by twice the threshold for a floating-point number i equal to or greater than 0 and less than 1 is called K(i).
  • the key data generated in step S607 is formed into 128-dimensional vector data, and the K(i) is applied for each dimension, and this is used as the reference point.
  • the value of each dimension of the key data is set to 0 or more and less than 1 here. If this is not the case, it may be performed after processing in advance so that it will become so.
  • the reference quantity candidate set in this case is a set of point vectors each having a number represented by multiplying the threshold value by 2 ⁇ n using a natural number n of 0 or more and less than 2128 .
  • the reference amount in this embodiment is the data before key derivation that is a combination of the message authentication code generated in step S604, the various information acquired in step S603, and the recovery code acquired in step S605, and the first key derivation function is applied to generate the key data, and then the reference amount is set based on the threshold value obtained in step S602. may be applied to generate key data, and the reference amount may be set based on the threshold obtained in step S602.
  • step S601 after generating key data by applying the first key derivation function to the message authentication code (corresponding to the information generated based on the feature amount) generated based on the feature amount extracted in step S601, further step
  • the reference amount may be set based on the threshold acquired in S602. Further, as described above, the key data may be arbitrary data such as random numbers. , the reference amount may be set according to the content of the arithmetic expression used in the second key derivation function.
  • step S609 After executing the process of step S608, the specific information generation unit 186 generates a primitive key by a predetermined second key derivation function (step S609).
  • a key derivation function called BBKDF is applied as the second key derivation function to the reference amount set in step S608 to generate the original key.
  • the key derivation function called BBKDF is a key derivation function that calculates the same value if the input data is within the threshold of the reference amount.
  • the second key derivation function corresponds to the key derivation function in claims.
  • step S609 since the reference amount itself set in the process of step S608 is used as input data, the input data is within the range of the reference amount threshold.
  • step S609 a key derivation function called BBKDF is applied as a second key derivation function based on the reference amount set in the processing of step S608 and the threshold value obtained in step S602, and the original key is Generate.
  • the specific information generation unit 186 that executes the process of step S609 and step S609 correspond to the original key generation means and the original key generation step.
  • the specific information generation unit 186 After executing the process of step S609, the specific information generation unit 186 performs a predetermined continuous one-sided reversible binomial operation on the reference amount set in the process of step S608 and the feature amount extracted in the process of step S601. is applied to generate auxiliary information (step S610).
  • the operation is applied with the reference quantity as the term on the reversible side and the feature quantity as the term on the other side.
  • step S610 the difference for each dimension between the reference amount set in the process of step S608 and the feature amount extracted in the process of step S601 is calculated, and the result is used as auxiliary information. Therefore, the process of step S610 can be said to be a process of generating auxiliary information, and the specific information generator 186 and step S610 that execute the process of step S610 correspond to the auxiliary information generating means and the auxiliary information generating step.
  • the difference for each dimension between the reference amount set in the process of step S608 and the feature amount extracted in the process of step S601 is calculated. , the result of which is used as auxiliary information, but this is just an example.
  • the portion that takes the difference for each dimension may be any one-sided reversible binary operation that is continuous.
  • the product for each dimension of the reference amount and the feature amount that is, the Hadamard product can be used.
  • “approximately” here means that the difference between the restored key data and the reference amount set in the process of step S608 is within the threshold value obtained in step S602.
  • the predetermined dyadic operation corresponds to a predetermined dyadic operation in claims.
  • the specific information generation unit 186 After executing the process of step S610, the specific information generation unit 186 encrypts the auxiliary information generated in the process of step S610 with the recovery code acquired in the process of step S605 (step S611). Subsequently, after the encrypted auxiliary information is registered in a predetermined area of the information processing device storage unit 77 of the information processing device 7 in association with identification information such as a nickname or password input by the user (step S612), End the original key generation process.
  • step S612 an example of registering the encrypted auxiliary information in a predetermined area of the information processing device storage unit 77 of the information processing device 7 has been described. If it is a terminal, the registration destination is not limited to the information processing device 7 .
  • the specific information generating unit 186 that executes the processes of steps S611 and S612 corresponds to auxiliary information registration means and an auxiliary information registration step.
  • the encrypted auxiliary information is registered in an external device other than the authentication device 1.
  • the auxiliary information is information necessary for regenerating the same original key as the original key generated by the original key generation process, and is not the biometric information itself. Therefore, security can be ensured, and even if the authentication device 1 is lost, for example, the original key can be regenerated, so that the user can stably receive the service.
  • the specific information generation unit 186 generates a random ID that is randomly generated 128-bit data (step S203).
  • a random ID may be generated using a UUID (Universal Unique Identifier).
  • the random ID is 128-bit data consisting of an 80-bit fixed part and a 48-bit variable part. Note that the number of bits of the fixed part and the variable part is an example, and it is sufficient if part of the random ID is the fixed part and the rest is the variable part. Alternatively, the variable part may be part of bit data other than the fixed part (bit data other than the fixed part may not all be the variable part). Also, the random ID generated in the process of step S203 corresponds to random information.
  • step S204 After executing the process of step S203, the specific information generation unit 186 generates a secret key and a public key of the authentication device based on the original key generated in step S201 and the fixed part of the random ID generated in step S203. (Step S204).
  • step S204 according to a pre-stored paired key generation program, the private key and public key of the authentication device are generated based on the original key and the fixed portion of the random ID.
  • the random ID generated in step S203 and the public key of the authentication device generated in step S204 are transmitted to the information processing device 7 via the communication unit 10.
  • step S204 the fixed part of the random ID is used to generate the private key and public key of the authentication device, so even if the variable part is changed, the private key and public key of the authentication device are not changed. It will happen.
  • information such as the nickname, password, and email address input by the user is also transmitted.
  • the information processing device 7 Upon receiving the random ID and the public key of the authentication device from the authentication device 1, the information processing device 7 registers the random ID in the information processing device storage unit 77 (step S205). Specifically, the random ID is stored in the information processing device storage unit 77 in association with information such as the user's nickname, password, and e-mail address, for example. Details will be described later (see FIG. 18), but the random ID registered in step S205 in association with the user's nickname can be used to replace the authentication device 1 with a new authentication device 1 when the user loses the authentication device 1, for example. Used when changed to
  • step S206 the processing unit 787 of the information processing device 7 generates the private key and public key of the information processing device (step S206).
  • step S206 the secret key and public key of the information processing device are generated according to a pre-stored pair key generation program.
  • the public key of the information processing device generated in step S206 is transmitted to the authentication device 1 via the communication unit 70.
  • FIG. the authentication device 1 and the information processing device 7 generate a common key SK by the Diffie-Hellman key exchange method.
  • the communication unit 10 of the authentication device 1 that receives the public key of the information processing device generated in step S206 and the process of receiving the public key correspond to public key obtaining means and the public key obtaining step.
  • the processing unit 787 that executes the process of step S206 corresponds to paired key generation means.
  • the specific information generation unit 186 generates the original common key based on the private key of the authentication device and the received public key of the information processing device (step S207).
  • the processing unit 787 generates the original common key based on the secret key of the information processing device and the received public key of the authentication device (step S207A).
  • These original common keys are the same key from the Diffie-Hellman key exchange method.
  • the specific information generation unit 186 applies a KDF (key derivation function) to the original common key to generate a common key SK (step S208), and on the information processing device 7 side, The processing unit 787 similarly applies the KDF to the original common key to generate a common key SK (step S208A).
  • the common key SK that is common between the authentication device 1 and the information processing device 7 is generated.
  • the specific information generation unit 186 that executes the processes of steps S204, S207 and S208 and the processes of steps S204, S207 and S208 correspond to common key generation means and a common key generation step.
  • the specific information generation unit 186 calculates the hash value of the random ID (including the fixed part and the variable part) generated in the process of step S203 (step S208H). ). After executing the process of step S208H, the specific information generation unit 186 calculates a MAC (Message Authentication Code) value based on the common key SK generated in the process of step S208 and the hash value calculated in step S208H. (Step S209). In step S209, a MAC value based on the common key SK and the hash value is calculated by the MAC algorithm.
  • MAC Message Authentication Code
  • the specific information generation unit 186 After executing the process of step S209, the specific information generation unit 186 generates specific information based on the calculated MAC value and hash value (step S210). Specifically, in step S210, the calculated MAC value is added to the hash value to generate 320-bit data including the footer, which is used as the specific information.
  • the specific information generated in step S ⁇ b>210 is transmitted to the information processing device 7 via the communication section 10 .
  • the specific information generating unit 186 that executes the process of step S210 and the process of step S210 correspond to the specific information generating means and the specific information generating step.
  • the specific information may be encrypted by a preset encryption method and transmitted to the information processing device 7 .
  • the processing unit 787 extracts a hash value from the received specific information (step S212). Subsequently, the MAC value is calculated based on the common key SK generated in step S208A and the hash value extracted in step S212 (step S213).
  • step S214 After executing the process of step S213, the processing unit 787 verifies the MAC value calculated in step S213 (step S214). Specifically, in step S214, verification is performed by confirming whether or not the MAC value calculated in step S213 matches the MAC value included in the received specific information. The verification result in the processing of step S214 is transmitted to the authentication device 1 via the communication unit 70.
  • the specific information generation unit 186 determines whether or not the received verification result is normal (step S215). finish. On the other hand, if the verification result is not normal (step S215; NO), an error is displayed (step S216) and the specific information generating process is terminated. In step S216, a display prompting the user to re-execute may be displayed, or the specific information generating process may be re-executable manually.
  • the processing unit 787 determines whether or not the verification result in step S214 is normal (step S217). If the verification result is not normal (step S217; NO), the processing unit 787 ends the specific information generation process as it is. In this case, it is possible to notify the authentication device 1 via the communication unit 70 that the registration of the specific information has failed, display an error on the authentication device 1 side, and then manually execute the specific information generation process again. can be
  • step S214 If the verification result in step S214 is normal (step S217; YES), the processing unit 787 stores the received specific information in the information processing device storage unit 77 in association with the public key of the authentication device.
  • the specific information or the like is registered (step S218), and the specific information generating process is terminated.
  • step S218, the received specific information is associated with the public key of the authentication device, and stored in the information processing device storage unit 77 as the correspondence information list 771 shown in FIG. That is, the process of step S218 can be said to be a process of generating and registering the correspondence information list 771 shown in FIG.
  • the specific information generating process shown in FIG. 13 By executing the specific information generating process shown in FIG. 13 in this way, specific information for identifying that the user providing the service is valid is generated. Further, by executing the specific information generating process, the specific information is registered on the information processing device 7 side, that is, the reference information list 771 shown in FIG. 10 is registered on the information processing device 7 side.
  • the identification information enables identification of the user. Further, although the specific information is information generated based on the biometric information of the user, it is not the biometric information itself, and it is impossible to generate the biometric information from the specific information. Therefore, the biometric information itself can be prevented from being illegally acquired, and security can be ensured.
  • the random ID is randomly generated, a plurality of pieces of specific information can be generated from the same biometric information (facial feature amount). service can be obtained.
  • this embodiment shows an example in which the specific information generation process shown in FIG. 13 is executed in the judgment instruction process shown in FIG. 12, and the judgment instruction process is started each time the authentication process ends. Therefore, although the specific information generation process is also repeatedly executed, the specific information generation process is executed once for each service (or each information processing device 7) provided to the target user. All you have to do is That is, once the specific information is generated in one service to be provided, the specific information generating process is not performed, and when the other service is provided, if the specific information generating process is executed corresponding to the service. good. Further, although the details will be described later, in this embodiment, the generated specific information can be updated by executing the specific information update process.
  • the processing unit 187 determines that the user is valid, executes a determination start instruction process of instructing the start of the service (step S305), and executes the determination instruction process. finish.
  • the information processing apparatus 7 determines that the user is valid, and when the user is specified as valid by the specific information, the service is started. is instructed to the financial institution 99 . Then, as described above, when the financial institution 99 confirms the validity of the login information, the transfer is processed.
  • the processing unit 187 that executes the process of step S305 and the process of step S305 correspond to the determination instruction means and the determination instruction step.
  • FIG. 15 is a flow chart showing an example of the determination start instruction process executed in step S305 of FIG.
  • the processing unit 187 of the authentication device 1 transmits the specific information and the public key of the authentication device to the information processing device 7 via the communication unit 10 (step S221).
  • login information such as a login ID and a password issued by the financial institution 99 is also transmitted in the process of step S221.
  • step S222 the processing unit 787 verifies the received specific information (step S222).
  • the communication unit 70 that receives the specific information from the authentication device 1 corresponds to specific information acquisition means.
  • step S222 the specific information is verified by executing the processes of steps S207A, S208, and S212 to S214 shown in FIG. Further, in step S222, for example, the specific information is verified by referring to the correspondence information list 771 stored in the information processing device storage unit 77 and confirming the correspondence relationship between the received public key of the authentication device and the specific information. may It should be noted that in the process of step S222, if the verification is not normal, the process may be terminated.
  • the processing unit 787 that executes the process of step S222 corresponds to the determination means.
  • step S223 After executing the process of step S222, that is, when the verification result is normal, the processing unit 787 generates challenge data (step S223).
  • the generated challenge data is transmitted to authentication device 1 via communication unit 70 .
  • the specific information is transmitted to the information processing device 7 in the process of step S221, and challenge-response authentication is performed when the verification of the specific information is normal. Therefore, the process of step S221 can be said to be a process of instructing authentication for providing a service corresponding to the target user.
  • the processing unit 187 electronically signs (encrypts) the received challenge data with the private key of the authentication device (step S224), and converts the electronic signature data (encrypted challenge data) of the challenge data to , to the information processing device 7 via the communication unit 10 (step S225).
  • the processing unit 787 verifies the electronic signature data of the challenge data using the public key of the authentication device (step S226). Specifically, in step S226, it is confirmed whether the electronic signature data of the received challenge data is the electronic signature related to the challenge data generated in step S223, which can be generated only by the private key paired with the public key of the authentication device. Verification is performed by Note that the verification result is transmitted to the authentication device 1 via the communication unit 70 .
  • the processing unit 187 determines whether or not the received verification result is normal (step S227), and if normal (step S227; YES), ends the determination start instruction process. . On the other hand, if the verification result is not normal (step S227; NO), an error is displayed (step S228) and then the determination start instruction process is terminated. In step S228, a display prompting the user to re-execute may be displayed, or the determination start instruction process may be re-executable manually.
  • the processing unit 787 determines whether or not the verification result in step S226 is normal (step S229). If the verification result is not normal (step S229; NO), the processing unit 787 ends the determination start instruction process as it is. In this case, after notifying the authentication device 1 via the communication unit 70 that the start of the service, that is, the failure to start the determination, an error is displayed on the side of the authentication device 1, the determination start instruction process is manually executed. It may be possible.
  • step S229 If the verification result in step S229 is normal (step S229; YES), the processing unit 787 transmits instruction information instructing execution of processing to the financial institution 99 (step S230), and instructs the start of determination. End the process. In this example, execution of the transfer process is instructed by executing the process of step S230. It should be noted that in the process of step S230, the login information is transmitted in addition to the instruction information, and the financial institution 99 determines the validity of the login information. Then, when the validity of the login information is confirmed, the transfer process is executed. Note that the processing unit 787 that executes the process of step S230 corresponds to service provision instruction means.
  • the determination start instruction process shown in FIG. 15 is executed in the determination instruction process shown in FIG. Since the determination instruction process is started each time the authentication process is completed, the determination start instruction process is also repeatedly executed. ) is determined to be YES in step S303 shown in FIG. 12, and the determination start instruction process is not executed again.
  • step S301 if it is determined in step S301 that the authentication has failed (step S301; NO), the processing unit 187 has already executed the processing of step S305 and instructed to start determination, as in step S303. It is determined whether or not (step S306). If determination has not started yet (step S306; NO), the processing unit 187 ends the determination instruction process as it is. On the other hand, if determination has already started (step S306; YES), or if it is determined that the process has ended in step S302 (step S302; YES), the processing unit 187 sends determination end information to the information processing device 7. It is transmitted to instruct the end of the process (step S307), and the determination instruction process is ended.
  • the determination end information On the side of the information processing apparatus 7 that has received the determination end information, for example, if the determination end information is received at a timing before execution of the process of step S230 shown in FIG. , terminate the process in progress. On the other hand, if the judgment end information is received at the timing after the process of step S230 is executed, the stop instruction information for instructing the stop of the transfer process is transmitted to the financial institution 99 . When sending the stop instruction information, the login information may also be sent.
  • step S306 if it is determined as YES in step S306, it may be because the user has been replaced by another person (for example, an intimidator) even though the determination of the user's legitimacy has already started based on the specific information. Authentication has failed. In this case, by forcibly terminating the transfer process while giving an instruction to end the determination in the process of step S307, it is possible to avoid a situation in which the transfer is performed by threat or impersonation, for example. In addition, when it is the end time (when it is determined as YES in step S302), the transfer processing is also completed. It is possible to prevent an erroneous determination such that the specific information is first determined and the financial institution 99 is instructed.
  • the specific information update process in this embodiment is executed after a predetermined period of time, such as half a year or one year, has passed. In addition to this, it may be performed at the timing when the process is performed a predetermined number of times, such as when the transfer process is performed 10 times.
  • step S201 it may also be performed when there is a change in the user's behavior, habits, habits, etc., for example, when the number of withdrawals increases.
  • Statistical information is created based on information obtained from various sensors installed in the authentication device 1, and the user's behavior, habits, habits, etc. are changed by periodically comparing them with predetermined criteria. It is necessary to determine whether or not In the process of step S201 in FIG. 13, an example of extracting facial features is shown. good too. In this case, if the user's behavior, habits, or habits change, the original key in step S201 will also change.
  • the specific information may be updated by executing the specific information generation process again instead of executing the process.
  • the specific information generator 186 changes the variable part of the random ID generated in step S203 of FIG. 13 (step S401). Specifically, in the process of step S401, the variable part of the random ID generated in the process of step S203 of FIG. 13 is changed by adding +1 to the variable part of the random ID. In this example, the variable part of the random ID is incremented by 1, but this is only an example, and the variable part of the random ID is assumed to be different from the variable part of the random ID generated in step S203 of FIG. Any change method may be used.
  • step S402 After executing the process of step S401, the specific information generation unit 186 calculates the hash value of the random ID (step S402).
  • a hash value of the random ID is calculated by combining the variable part of the random ID changed in the process of step S401 and the fixed part of the random ID generated in the process of step S203 of FIG.
  • step S402 After executing the process of step S402, the specific information generation unit 186 calculates the MAC value based on the common key SK generated in the process of step S208 of FIG. 13 and the hash value calculated in step S402 of FIG. (step S403).
  • step S403 similar to the processing in step S209 shown in FIG. 13, the MAC algorithm is used to calculate the MAC value based on the common key SK and the hash value.
  • the specific information generating unit 186 After executing the process of step S403 shown in FIG. 16, the specific information generating unit 186 generates specific information based on the calculated MAC value and hash value (step S404). Specifically, in step S404, the calculated MAC value is added to the hash value to generate 320-bit data including the footer, which is used as the specific information.
  • the specific information generated in step S404 is transmitted to the information processing device 7 via the communication unit 10 together with the public key of the authentication device generated in step S204 of FIG.
  • the specific information and the public key of the authentication device may be encrypted by a preset encryption method and transmitted to the information processing device 7 .
  • the specific information is generated based on the hash value of the entire random ID, including the fixed part and the variable part. Therefore, by changing the variable portion of the random ID in the process of step S401, the specific information generated in the process of step S404 also differs from the specific information generated in step S210 of FIG.
  • the processing unit 787 When the information processing device 7 receives the specific information, the processing unit 787 generates the original common key based on the information processing device secret key generated in step S206 of FIG. 13 and the received public key of the authentication device. Generate (step S405). After executing the process of step S405, the processing unit 787 applies KDF to the original common key to generate a common key SK (step S406). As described above, the secret key of the authentication device is generated based on the fixed part of the random ID, and the fixed part of the random ID is not changed even in the specific information update process. Therefore, the common key SK generated at step S406 is the same as the common key SK generated at step S208A in FIG.
  • step S406 at the timing when the common key SK is generated, the MAC value based on the generated common key SK and the hash value of the pre-update random ID stored in the information processing device storage unit 77 and , and the MAC value of the pre-updated specific information stored in the information processing device storage unit 77, the validity of the specific information update process, that is, the validity of the update request made this time is verified. You can verify the gender.
  • step S406 After executing the process of step S406, the processing unit 787 extracts a hash value from the received specific information (step S407). Subsequently, the MAC value is calculated based on the common key SK generated in step S406 and the hash value extracted in step S407 (step S408).
  • step S409 After executing the process of step S408, the processing unit 787 verifies the MAC value calculated in step S408 (step S409). Specifically, in step S409, verification is performed by confirming whether or not the MAC value calculated in step S408 matches the MAC value included in the received specific information. The verification result in the process of step S409 is transmitted to the authentication device 1 via the communication unit 70.
  • FIG. 1 A block diagram illustrating an authentication device 1 MAC value calculated in step S408.
  • the specific information generation unit 186 determines whether or not the received verification result is normal (step S410). finish. On the other hand, if the verification result is not normal (step S410; NO), an error is displayed (step S411) and the specific information generating process is terminated. In step S411, a display prompting that the specific information update process should be executed again may be performed, or the specific information update process may be made reexecutable manually.
  • the processing unit 787 determines whether or not the verification result in step S409 is normal (step S412). If the verification result is not normal (step S412; NO), the processing unit 787 ends the specific information generation process as it is. In this case, it is possible to notify the authentication device 1 via the communication unit 70 that the update of the specific information has failed, display an error on the authentication device 1 side, and then manually execute the specific information update process again. can be
  • step S409 If the verification result in step S409 is normal (step S412; YES), the processing unit 787 retrieves the specific information stored in the information processing device storage unit 77 in association with the received public key of the authentication device. , the specific information is updated as the received specific information (step S413), and the specific information update process ends.
  • step S413 among the specific information included in the correspondence information list 771 shown in FIG. 10, the specific information corresponding to the received public key of the authentication device is changed to the received specific information. That is, the process of step S413 can be said to be a process of updating the correspondence information list 771 shown in FIG.
  • the random ID is also received, and when the specific information is updated in the process of step S413, the information such as the user's nickname, password, and e-mail address, for example, corresponds to the random ID. Also, the random ID stored in the information processing device storage unit 77 may be updated. It should be noted that the variable part of the received random ID is changed. Therefore, for example, all 128 bits may be received, and in the process of step S413, a random ID having a common fixed part may be identified and updated. Also, for example, the received random ID may be only the variable part changed in step S401.
  • information such as the user's nickname, password, and mail address is received together with the information in the variable section, and stored in the information processing device storage unit 77 in association with the information such as the user's nickname, password, and mail address. It is sufficient to identify the random ID that is currently in use and update the random ID.
  • step S406 shows an example in which the common key SK is generated by executing the processes of steps S405 and S406.
  • the processing of steps S405 and S406 need not be executed.
  • the public key of the authentication device and the common key SK generated in the process of step S208A are linked and stored, and the common key SK is specified based on the received public key of the authentication device,
  • the process of step S408 may be executed using the identified common key SK.
  • the information processing apparatus 7 can determine the validity of the specific information by executing the process of step S222 shown in FIG. 15, as before the update. That is, the validity of the specific information can be determined by common processing before and after updating.
  • FIG. 17 for the original key regeneration process for regenerating the original key when the user switches the authentication device 1 to a new authentication device 1, such as when the user loses the authentication device 1. to explain. It is assumed that the original key generation process shown in FIG. 14 has already been executed in the authentication device 1 before switching to the new authentication device 1 and the auxiliary information has been registered in the information processing device 7 .
  • the specific information generation unit 186 prompts the user to input identification information such as a nickname and password, and sends auxiliary information corresponding to the input identification information to the information processing device 7 . (step S801). Note that the specific information generation unit 186 that executes the process of step S801 corresponds to auxiliary information acquisition means.
  • the specific information generation unit 186 prompts the user to enter a recovery code, and acquires the entered recovery code (step S802). Specifically, in the process of step S802, when regenerating the original key generated by the original key generation process shown in FIG. 14, it is necessary to obtain the same recovery code as the recovery code obtained in step S605 of FIG. There is Therefore, in the process of step S802 of FIG. 17, the user needs to enter the same recovery code as the recovery code entered in step S605 of FIG. Note that the specific information generation unit 186 that executes the process of step S802 corresponds to the same recovery code reception unit.
  • the specific information generation unit 186 decodes the auxiliary information acquired in step S801 (step S803). Specifically, in step S803, the auxiliary information obtained in step S801 is decrypted using the recovery code obtained in step S802. Since the auxiliary information has been encrypted with the recovery code in the process of step S611 of FIG. 14, the auxiliary information is decrypted with the recovery code in the process of step S803 of FIG. Therefore, the recovery code acquired in the process of step S802 is required to be the same as the recovery code acquired in step S605 of FIG. 14, that is, the recovery code used for encrypting the auxiliary information.
  • step S802 of FIG. 17 If a recovery code different from the recovery code obtained in step S605 of FIG. 14 is obtained in step S802 of FIG. 17, the auxiliary information cannot be decrypted in step S803. If the auxiliary information cannot be decrypted in step S803, the display unit 19 should display that the recovery code is incorrect.
  • the specific information generation unit 186 extracts the feature amount of the user (step S804). Specifically, in step S804, a facial feature vector is extracted as a feature amount from the user's face photograph newly taken by the photographing unit 11. FIG. It should be noted that, similarly to the process of step S102 shown in FIG. 11A, it may be determined whether or not there is blurring, and if there is blurring, a retry may be performed. Further, the feature amount extracted in step S804 is not limited to the feature amount of the face, and may be biometric information of the user such as a fingerprint, voiceprint, iris, or a combination thereof. , the biometric information must be of the same type as the feature quantity acquired in step S601 of FIG. It is sufficient if the same type is determined in advance as to whether to extract the . Note that the specific information generation unit 186 that executes the process of step S804 corresponds to new feature amount acquisition means.
  • step S805 After executing the process of step S804, the specific information generating unit 186 performs the inverse operation of the continuous one-sided reversible binomial operation on the auxiliary information decoded in the process of step S803 and the feature amount acquired in step S804. apply (step S805). Specifically, in step S805, the newly acquired feature amount is added to the decoded auxiliary information indicating the same information as the auxiliary information calculated in step S610 in FIG. Information corresponding to the set reference amount (corresponding information) is generated. In this embodiment, since the difference between the reference amount and the feature amount is calculated for each dimension in the processing of step S610, an example of calculating the sum of each dimension, which is the inverse calculation, is performed in the processing of step S805.
  • the quotient for each dimension may be calculated in the process of step S805. That is, the calculations performed in the processing of step S610 and the processing of step S805 may be arbitrary calculations as long as they are known continuous one-sided reversible calculations. Furthermore, it is not always necessary to use a continuous one-sided reversible binomial operation. It can be a binary operation. Further, the specific information generation unit 186 that executes the process of step S805 corresponds to correspondence information generation means.
  • the specific information generation unit 186 acquires a threshold (step S806).
  • the threshold acquired in step S806 may be set in advance and stored in the authentication device storage unit 17, and a threshold common to the threshold acquired in step S602 of FIG. 14 may be stored. Therefore, the threshold acquired in step S806 of FIG. 17 is the same as the threshold acquired in step S602 of FIG.
  • step S807 After executing the process of step S806 in FIG. 17, the specific information generating unit 186 regenerates the original key using a predetermined second key derivation function (step S807).
  • step S807 similarly to step S609 in FIG. 14, a key derivation function called BBKDF is applied as a second key derivation function to the corresponding information generated in step S805 in FIG. to generate
  • a key derivation function called BBKDF is a key derivation function that calculates the same value if the input data is within the range of the reference amount threshold. Therefore, in step S807, if the correspondence information generated in the process of step S805 is within the range of the threshold of the reference amount, the same original key as in step S609 of FIG.
  • the threshold indicates the threshold acquired in step S806 of FIG. 17 (common to the threshold acquired in step S602 of FIG. 14).
  • the specific information generating unit 186 that executes the processes of steps S805 and S807 corresponds to original key regenerating means.
  • the specific information generation unit 186 sets the correspondence information generated in the process of step S805 as the reference amount (step S808). Specifically, in step S808, the reference amount is set by applying the threshold acquired in step S806 to each dimension to the corresponding information generated in step S805.
  • step S809 After executing the process of step S808, the specific information generation unit 186 applies continuous one-sided reversible operation to the reference amount set in the process of step S808 and the feature amount extracted in the process of step S804 (step S809 ).
  • step S809 similarly to step S610 in FIG. 14, the difference for each dimension between the set reference amount and the extracted feature amount is calculated, and the result is used as auxiliary information. Therefore, the process of step S809 in FIG. 17 can be said to be a process of generating new auxiliary information, and the specific information generation unit 186 that executes the process of step S809 corresponds to new auxiliary information generation means.
  • the processing of step S809 may also be calculated using the Hadamard product or any continuous one-sided reversible binomial operation.
  • the specific information generation unit 186 encrypts the auxiliary information with the recovery code (step S810), as in step S611 of FIG.
  • the auxiliary information regenerated in step S809 is encrypted using the recovery code acquired in the process of step S802.
  • the recovery code for encrypting the auxiliary information regenerated in step S809 may be arbitrarily determined and input by the user instead of the recovery code acquired in the process of step S802.
  • a random number newly generated by a random number generator may be used as the recovery code. In that case, the generated recovery code should be notified to the user.
  • the specific information generation unit 186 stores the auxiliary information encrypted in step S810 in a predetermined area of the information processing device storage unit 77 of the information processing device 7, and associates the identification information such as the nickname and password input by the user.
  • the auxiliary information is updated (step S811), the original key regeneration process ends.
  • step S811 in this embodiment an example of registering the encrypted auxiliary information in a predetermined area of the information processing device storage unit 77 of the information processing device 7 has been described. If it is a terminal, the registration destination is not limited to the information processing device 7, which is the same as the original key generation processing in FIG. However, the registration destination in step S612 of FIG. 14 and the registration destination in step S811 of FIG. 17 need to be the same.
  • the specific information generator 186 that executes the processes of steps S810 and S811 corresponds to auxiliary information update means.
  • step S501A the specific information generation unit 186 first executes the original key regeneration process shown in FIG. 17 (step S501A).
  • the original key regeneration process shown in FIG. 17 is as described above. If the user is the same person, the original key regenerated in step S501A is the same as the original key previously generated in step S201. becomes.
  • a random ID is requested by transmitting the entered nickname to the information processing device 7 (step S501).
  • the random ID may be requested by other methods such as prompting the user to enter information such as a password and email address in addition to the user's nickname.
  • the random ID corresponding to the received nickname is specified from among the random IDs registered in association with the nickname in step S205 of FIG. 13 (step S502). , to the authentication device 1 .
  • the public key of the information processing device is also transmitted to the authentication device 1 together with the random ID.
  • the random ID need not be the entire 128-bit random ID as long as it includes at least an 80-bit fixed part. If only the fixed portion is received (not the entire 128 bits), arbitrary bit data may be assigned to the variable portion in the process of step S503.
  • the specific information generator 186 of the authentication device 1 changes the variable part of the random ID received from the information processing device 7 (step S503). Specifically, in the process of step S503, the variable part of the received random ID is changed by adding +1 to the variable part of the random ID. Any method may be used as long as it differs from the variable part of the received random ID. Also, in this example, the processing of step S503 is executed to disable the previously generated specific information. No processing is required. Alternatively, the user may be allowed to select whether to use the previously generated specific information or to update the specific information, and when the user selects to update the specific information, the process of step S503 may be executed.
  • the specific information generation unit 186 generates a secret key and a public key of the authentication device based on the original key generated in step S501A and the fixed portion of the received random ID (step S505). Subsequently, the specific information generator 186 generates a common original key based on the private key of the authentication device and the received public key of the information processing device (step S506). After executing the process of step S506, the specific information generating unit 186 applies KDF to the original common key to generate a common key SK (step S507).
  • the common key SK generated in step S507 is the same as the common key SK previously generated in step S208.
  • the specific information generation unit 186 calculates the hash value of the random ID (step S508).
  • a hash value of the random ID is calculated by combining the variable part of the random ID changed in the process of step S503 and the fixed part of the received random ID. If the process of step S503 is not executed, the hash value of the received random ID itself may be calculated.
  • step S509 the specific information generation unit 186 calculates the MAC value based on the common key SK generated in the process of step S507 and the hash value calculated in the process of step S508 (step S509 ).
  • step S509 similarly to the processing in step S209 shown in FIG. 13, the MAC algorithm is used to calculate the MAC value based on the common key SK and the hash value.
  • the specific information generating unit 186 After executing the process of step S509 shown in FIG. 18, the specific information generating unit 186 generates specific information based on the calculated MAC value and hash value (step S510). Specifically, in step S510, the calculated MAC value is added to the hash value to generate 320-bit data including the footer, which is used as the specific information.
  • the specific information generated in step S510 is transmitted to the information processing device 7 via the communication unit 10 together with the public key of the authentication device generated in step S506.
  • the specific information and the public key of the authentication device may be encrypted by a preset encryption method and transmitted to the information processing device 7 .
  • the specific information is generated based on the hash value of the entire random ID, including the fixed part and the variable part. Therefore, by changing the variable portion of the random ID in the process of step S503, the specific information generated in the process of step S510 also differs from the specific information generated in step S210 of FIG. 13, that is, the previously generated specific information. will be different.
  • the processing unit 787 When the information processing device 7 receives the specific information, the processing unit 787 generates the original common key based on the information processing device secret key generated in step S206 of FIG. 13 and the received public key of the authentication device. Generate (step S511). After executing the process of step S511, the processing unit 787 applies KDF to the original common key to generate a common key SK (step S512). As described above, the private key of the authentication device is generated based on the fixed part of the random ID, and the fixed part of the random ID is not changed even in the specific information regeneration process. Therefore, the common key SK generated in S512 is the same as the common key SK generated in step S208A of FIG.
  • step S512 at the timing when the common key SK is generated, the MAC value based on the generated common key SK and the hash value of the pre-update random ID stored in the information processing device storage unit 77 and the , and the MAC value of the pre-updated specific information stored in the information processing device storage unit 77, the validity of the specific information update process, that is, the validity of the update request made this time is verified. You can verify the gender.
  • step S512 After executing the process of step S512, the processing unit 787 extracts a hash value from the received specific information (step S513). Subsequently, the MAC value is calculated based on the common key SK generated in step S512 and the hash value extracted in step S513 (step S514).
  • step S515 After executing the process of step S514, the processing unit 787 verifies the MAC value calculated in step S514 (step S515). Specifically, in step S515, verification is performed by confirming whether or not the MAC value calculated in step S514 matches the MAC value included in the received specific information. The verification result in the process of step S515 is transmitted to the authentication device 1 via the communication unit 70.
  • FIG. 1 A block diagram illustrating an MAC value calculated in step S514 .
  • the specific information generation unit 186 determines whether or not the received verification result is normal (step S516). finish. On the other hand, if the verification result is not normal (step S516; NO), an error is displayed (step S517) and the specific information generating process is terminated. In step S517, a display prompting that the specific information update process should be executed again may be displayed, or the specific information update process may be manually re-executable.
  • the processing unit 787 determines whether or not the verification result in step S515 is normal (step S518). If the verification result is not normal (step S518; NO), the processing unit 787 ends the specific information generation process as it is. In this case, it is possible to notify the authentication device 1 via the communication unit 70 that the update of the specific information has failed, display an error on the authentication device 1 side, and then manually execute the specific information update process again. can be
  • step S515 If the verification result in step S515 is normal (step S518; YES), the processing unit 787 retrieves the specific information stored in the information processing device storage unit 77 in association with the received public key of the authentication device. , the specific information is updated as the received specific information (step S519), and the specific information update process is terminated.
  • step S519 among the specific information included in the correspondence information list 771 shown in FIG. 10, the specific information corresponding to the received public key of the authentication device is changed to the received specific information. That is, it can be said that the process of step S519 is the process of updating the correspondence information list 771 shown in FIG.
  • the information processing device 7 receives the specific information, it also receives a random ID.
  • the random ID stored in the information processing device storage unit 77 may be updated. It should be noted that the variable part of the received random ID is changed. Therefore, for example, all 128 bits may be received, and in the process of step S519, a random ID having a common fixed part may be identified and updated. Also, for example, the received random ID may be only the variable part changed in step S503. In this case, information such as the user's nickname, password, and mail address is received together with the information in the variable section, and stored in the information processing device storage unit 77 in association with the information such as the user's nickname, password, and mail address. It is sufficient to identify the random ID that is currently in use and update the random ID.
  • step S511 and S512 show an example in which the common key SK is generated by executing the processes of steps S511 and S512.
  • the processing of steps S511 and S512 need not be executed.
  • the process of step S514 may be executed using the specified common key SK.
  • the specific information can be reproduced without performing complicated processing. can be formed.
  • the processing can be performed based on the existing information on the side of the information processing device 7. Therefore, the processing can be compared with the case where the specific information generation processing is executed again. The burden can be reduced, and the specific information can be preferably regenerated.
  • the authentication device 1 authenticates the user in the background, and when the authentication succeeds, the authentication device 1 generates specific information for specifying that the user is valid, and the information processing device 7 Send to
  • the specific information may be generated based on the user's biometric information, but even in that case, the specific information is not the biometric information itself, and it is impossible to generate the biometric information from the specific information. Therefore, the biometric information itself can be prevented from being illegally acquired, and security can be ensured.
  • the random ID is generated at random, a plurality of pieces of specific information can be generated from key data such as the same biometric information (facial feature amount), thereby reducing the user's workload while ensuring security. It is possible to receive services stably.
  • the specific information when the verification result of the specific information is normal, the specific information is registered on the information processing device 7 side. Therefore, once registered, the user's legitimacy can be confirmed by the specific information. Therefore, it is possible to reduce the work burden on the user while ensuring security, and thus to stably receive the service. Furthermore, the once generated specific information can be updated without performing complicated processing, and can be updated by partially changing the random ID generated on the authentication device 1 side. Since it is possible to update the specific information without performing the process of changing, it is possible to stably provide the service while reducing the processing load of the update. Further, by registering the random ID in the information processing device 7 side, even if the user switches the authentication device 1 to a new one, the specific information can be regenerated without performing complicated processing. Therefore, the processing load can be reduced compared to the case where the specific information generation process is executed again, and the specific information can be preferably regenerated.
  • the present invention is not limited to the above embodiments, and various modifications and applications are possible.
  • the authentication device 1 and the information processing device 7 may not have all the technical features shown in the above embodiment, and the above embodiment can solve at least one problem in the prior art. may be provided with a part of the configuration described in . Moreover, at least a part of each of the following modified examples may be combined.
  • the information processing device 7 is a personal computer, a smart phone, or a tablet terminal is shown, but this is just an example.
  • the information processing device 7 is not limited to these devices, and may be a terminal installed at a door like an authentication system 100A shown in FIG. 19, for example. In addition, it may be a terminal installed in a safe, or a terminal installed in an ATM (Automatic Teller Machine) installed in a financial institution or a convenience store. Further, the functions of the information processing device 7 may be implemented on the side of a server that provides services. As shown in FIG. 19, when the information processing device 7 is installed at the door, the legitimacy of the target user is determined using the specific information in order to allow the user authenticated by the authentication device 1 to enter the room.
  • the door can be unlocked when the legitimacy can be confirmed. That is, the process of unlocking the door may be performed in the process of step S230 of FIG. Further, when the information processing device 7 is installed in an ATM, the legitimacy of the target user can be determined using the specific information, and financial procedures can be made possible when the legitimacy can be confirmed.
  • the authentication process is started when the financial service application is executed. However, as shown in FIG. If the authentication process is started when the application for unlocking is executed, and the authentication process is repeatedly executed in the background while the application is started (the period from start to finish) good.
  • the determination instruction process may be repeatedly executed for the same period.
  • the specific information generating process is executed once for each service provided to the target user (or for each information processing device 7). Two pieces of specific information (specific information different from financial services) will be generated.
  • the unlocking of the doors shown in FIG. 19 includes, for example, the unlocking of an entrance gate to an event venue such as a concert.
  • one information processing device may unlock a plurality of doors (including a plurality of entrance gates). For example, when the user's legitimacy is confirmed by the specific information, the information processing device 7 may transmit the unlocking key for the door (including the entrance gate) to the authentication device 1 .
  • the authentication process may be repeatedly executed in the background at all times. Then, the determination instruction process may be started at the timing when the application corresponding to the service desired by the user is activated.
  • the authentication system 100 can be used in situations where services are provided by confirming the legitimacy of individual users, such as facilities such as concerts and events where only ticket holders can enter, and certificates such as educational background and vaccinations. is applicable. Under any circumstances, the biometric information itself is not transmitted or received, and multiple pieces of specific information can be generated from key data such as the same biometric information (facial feature values), ensuring security while allowing users to work load can be reduced, and as a result, the service can be stably received.
  • the specific information update process in the above embodiment is executed after a predetermined period of time such as half a year or one year has passed, for example, the specific information update process is performed three times to update the specific information.
  • New specific information may be generated after a preset number of updates, such as executing specific information generation processing to generate new specific information after three updates. According to this, it is possible to periodically generate specific information using information closer to the current user because the biometric information has changed over time.
  • an example of registering the specific information in the information processing device 7 (an example of registering as the corresponding information list 771) in the process of step S218 shown in FIG. 13 was shown, but this is just an example. If the public key of the authentication device is registered in the corresponding information list 771, the specific information may not be registered. On the side of the information processing device 7, if the processing of steps S207A, S208A, and S212 to S214 shown in FIG. 13 is executed in the processing of step S222 shown in FIG. 15, the received specific information and the registered specific information are compared. This is because the validity can be judged without Also, by registering the public key of the authentication device, it is possible to specify the authentication device 1 that is the target of the service. Information to be registered in the correspondence information list 771 is not limited to the public key of the authentication device, and may be any information as long as it can identify the authentication device 1 that is the target of the service.
  • the authentication device 1 and the information processing device 7 can be realized using a normal computer without using a dedicated device.
  • the authentication device 1 and the information processing device 7 that execute the above-described processes may be configured by installing the program in the computer from a recording medium that stores the program for realizing any of the above-described processes in the computer.
  • one authentication device 1 or information processing device 7 may be configured by a plurality of computers working together.
  • a program may be posted on a bulletin board (BBS, Bulletin Board System) on a communication network and distributed via the network.
  • BSS Bulletin Board System
  • These programs may be activated and executed in the same manner as other application programs under the control of the operating system so that the above processes can be executed.
  • the present invention is useful for providing stable services.

Abstract

認証装置(1)は、ユーザの特徴量と、ユーザにより決定されたリカバリーコードを取得し、入力データが予め設定された閾値の範囲内であれば同一の値が算出される鍵導出関数を、鍵導出関数の演算内容に応じて設定される基準量に適用して原始鍵を生成する。そして、特徴量と前記基準量とを用いて予め定められた二項演算を行い、前記原始鍵を再生成するための補助情報を生成し、補助情報をリカバリーコードで暗号化して外部装置へ登録する。

Description

認証装置、認証支援方法、及びプログラム
 本発明は、認証装置、認証支援方法、及びプログラムに関する。
 ユーザがオンラインで各種のサービスを使用する場合、不正使用を防止するために、サービスを使用するユーザが正当なユーザか否か、ユーザの認証が行われている。例えば、特許文献1には、生体情報それ自体を送受信することなく、かつ同一の生体情報から複数の特定情報を生成することで、セキュリティを確保しつつ、ユーザの作業負担を軽減させることができ、ひいては安定してサービスを受けることができる技術が開示されている。
特許第6946592号公報
 しかしながら、特許文献1に開示された技術では、例えば認証装置を紛失してしまった場合に、紛失前と同一の生体キーを生成できず、紛失前と同一の特定情報を生成することが困難である。すなわち、特定情報を生成するための鍵となる原始鍵を再生することができず、安定してサービスを受けることができるという観点からすると改善の余地があった。
 本発明は上述の課題を解決するものであり、ユーザが安定してサービスを受けることができる認証装置、認証支援方法、及びプログラムを提供することを目的とする。
 上記の目的を達するため、本発明に係る認証装置は、
 ユーザの特徴量を取得する特徴量取得手段と、
 前記ユーザにより決定されたリカバリーコードを取得するリカバリーコード取得手段と、
 入力データが予め設定された閾値の範囲内であれば同一の値が算出される鍵導出関数を、前記鍵導出関数の演算内容に応じて設定される基準量に適用して原始鍵を生成する原始鍵生成手段と、
 前記特徴量と前記基準量とを用いて予め定められた二項演算を行い、前記原始鍵を再生成するための補助情報を生成する補助情報生成手段と、
 前記補助情報を前記リカバリーコードで暗号化して外部装置へ登録する補助情報登録手段と、
 を備える。
 本発明に係る認証装置、認証支援方法、及びプログラムによれば、安定してサービスを受けることができる。
本発明の実施の形態に係る認証システムの構成を示す図である。 図1に示す認証装置の正面図である。 図1に示す認証装置のブロック図である。 図1に示す認証装置のハードウエア構成の一例を示す図である。 図1に示す認証装置の情報処理ブロックの図である。 図1に示す認証装置で取得する生体情報を記憶するための認証用生体情報データベースのテーブルを示す図である。 図1に示す認証装置で取得する振舞情報を記憶するための認証用振舞情報データベースのテーブルを示す図である。 図1に示す認証装置の傾き情報テーブルを示す図である。 図1に示す情報処理装置のブロック図である。 図1に示す情報処理装置のハードウエア構成の一例を示す図である。 図1に示す情報処理装置の情報処理ブロックの図である。 図1に示す情報処理装置が記憶する対応情報一覧の一例を示す図である。 認証処理の一例を示すフローチャートである。 認証処理の一例を示すフローチャートである。 判定指示処理の一例を示すフローチャートである。 特定情報生成処理の一例を示すフローチャートである。 原始鍵生成処理の一例を示すフローチャートである。 判定開始指示処理の一例を示すフローチャートである。 特定情報更新処理の一例を示すフローチャートである。 原始鍵再生成処理の一例を示すフローチャートである。 特定情報再生成処理の一例を示すフローチャートである。 変形例における認証システムの構成を示す図である。
 以下に、本発明を実施するための形態に係る認証システム、認証装置、認証支援方法、及びプログラムについて、図面を参照して詳細に説明する。なお、図中同一または相当する部分には同一符号を付す。図1は、認証システム100の構成を示す図である。認証システム100は、図1に示すように、認証装置1と情報処理装置7と、を備えており、認証装置1がユーザの認証を行い、当該認証に成功した場合に、当該ユーザが正当であることを特定するための特定情報を生成する。この実施の形態では、図示するように、認証装置1と情報処理装置7とが、それぞれネットワーク2を介して、金融機関99(より具体的には金融機関99の端末)に接続可能である。そして、情報処理装置7が特定情報を用いて対象のユーザの正当性を判定し、当該ユーザを対象としたサービスを提供する。なお、この実施の形態では、正当性が認められたユーザに対して金融サービスが提供される場合を例に、以下説明する。
 なお、この実施の形態では、認証装置1がいわゆるスマートフォンやタブレット端末であり、情報処理装置7がパーソナルコンピュータやスマートフォンやタブレット端末である。また、理解を容易にするため、以下では、所謂ネットバンクにおける振込の金融サービスが行われる場合を例に説明する。なお、認証装置1と情報処理装置7とは、例えば無線LAN(Local Area Network)やWi-fi(登録商標)、Bluetooth(登録商標)などにより互いに通信可能に接続される。
 図2は、認証装置1の正面図である。図示する認証装置1は、いわゆるスマートフォンである。認証装置1は、正面にユーザの顔を撮影するインカメラ11Aと、スピーカ12Aと、通話用のマイクであるマイクロフォン12Bと、認証装置1の傾きを検出する傾き検出部13と、操作入力部14及び表示部19を兼ねるタッチパネルと、ユーザの指紋を検出する左指紋センサ15A及び右指紋センサ15Bと、認証装置1の現在位置を検出する位置検出部16とを備える。また、認証装置1は、背面に、ユーザから見た人間、風景、物体等を撮影することができるメインカメラ11Bを備える。
 ここで、以下では、インカメラ11Aとメインカメラ11Bとを総称して、撮影部11と称する。以下では、スピーカ12Aと、通話用のマイクであるマイクロフォン12Bとを総称して、音声入出力部12と称する。また、以下では、左指紋センサ15A及び右指紋センサ15Bを総称して、指紋検出部15と称する。
 図3は、認証装置1の構成を示すブロック図である。認証装置1は、通信部10と、撮影部11と、音声入出力部12と、傾き検出部13と、操作入力部14と、指紋検出部15と、位置検出部16と、認証装置記憶部17と、認証装置制御部18と、表示部19とを備える。
 通信部10は、図示せぬ通信網を介して外部のサーバ、クラウド、情報処理装置7等と通信し、各種データの送受信をするデータ通信部と、図示せぬ基地局との間で、電話通信用の無線信号を送受信する音声通信部とを含む。データ通信部は、無線LAN(Local Area Network)、Wi-fi(登録商標)、Bluetooth(登録商標)等を用いて構成することができる。また、音声通信部は、基地局との間で、電話通信用の無線信号を送受信する通信機器を用いて構成することができる。
 撮影部11は、図2に示したインカメラ11Aとメインカメラ11Bとを含む。撮影部11には、CCD(Charge Coupled Device)、CMOS(Complementary Metal Oxide Semiconductor)イメージセンサ等の撮像素子を用いたカメラ、ビデオカメラ等、静止画または動画を撮影し、撮影した静止画または動画を取得することが可能な各種カメラを用いることができる。
 音声入出力部12は、図2に示したスピーカ12Aと、マイクロフォン12Bとを含む。スピーカ12Aは、音声通話で受信した音声、通信網を介して外部から取得した音楽データ等を出力する。マイクロフォン12Bは、ユーザの音声をピックアップする装置である。
 傾き検出部13は、認証装置1の傾き、揺れ等を検出することができる装置である。傾き検出部13は、加速度センサ、角度センサ、地磁気を検出する磁気センサ等の認証装置1の傾きを検出できる各種センサを用いて構成することができる。なお、傾き検出部13を構成するセンサの個数及び種類は、単数又は複数のどちらでもよい。
 操作入力部14は、図2に示したユーザからの操作を入力することができる装置である。指紋検出部15は、ユーザの指紋を検出するセンサである。指紋検出部15は、図2に示した左指紋センサ15A及び右指紋センサ15Bを含む。なお、指紋検出部15には、指紋センサに限らず、ユーザの指紋を検出することができるセンサ、機器等であれば、いずれのものを用いてもよい。
 位置検出部16は、認証装置1の現在位置を検出することができる装置である。位置検出部16は、GPS(Global Positioning System)等の、認証装置1の現在位置を検出することができる機器を用いて構成することができる。
 認証装置記憶部17は、ユーザの認証処理を行うための認証処理プログラム170と、認証装置1で取得したユーザの生体情報をまとめた認証用生体情報データベース171と、認証装置1で取得したユーザの振舞情報をまとめた認証用振舞情報データベース172と、認証装置1の傾き状態を記憶するための傾き情報テーブル173と、サービスを提供する対象ユーザが正当であることを特定するための特定情報を生成する特定情報生成プログラム176と、を備える。また、認証装置記憶部17には、認証装置1で実行される各種アプリケーションのプログラムが記憶されている。
 認証処理プログラム170は、認証装置1で取得したユーザの生体情報及び振舞情報に基づいてユーザを認証する処理を行うプログラムである。認証用生体情報データベース171は、ユーザの生体情報に関する情報と認証に用いる認証値とを保存するためのデータベースである。
 認証用振舞情報データベース172は、認証装置1を操作する際のユーザ特有の振舞に関する情報、認証の合格条件等を保存するためのデータベースである。ここで、ユーザ特有の振舞とは、ユーザが認証装置1を操作する際の挙動、表示部19の画面とユーザの顔の距離、キーストローク、持ち方、認証装置1が使用される位置、特定の通信網への接続回数、特定のアプリケーションの起動、操作等、ユーザ固有のものをいう。
 傾き情報テーブル173は、傾き検出部13により検出された認証装置1の傾き角度と、取得日時、取得のための待機時間を記憶するためのテーブルである。特定情報生成プログラム176は、サービスを提供する対象ユーザが正当であることを特定するための特定情報を生成するプログラムである。
 なお、認証処理プログラム170と、認証用生体情報データベース171と、認証用振舞情報データベース172と、傾き情報テーブル173と、特定情報生成プログラム176とについては、その詳細を後述する。
 認証装置制御部18は、認証装置記憶部17に記憶された各種プログラムを実行する。また、認証装置制御部18は、通信部10と、撮影部11と、音声入出力部12と、傾き検出部13と、操作入力部14と、指紋検出部15と、位置検出部16とから各種データを取得して処理し、認証装置記憶部17の各種データベース、テーブルに記憶する。また、認証装置制御部18は、撮影部11に撮影する指示を送信することで、任意のタイミングで撮影部11に撮影をさせることができる。
 表示部19は、認証装置制御部18で実行される各種プログラムの処理内容を表示する。また、表示部19は、撮影部11で撮影された静止画、動画等の画像、操作入力部14から入力されたデータ等を表示することもできる。表示部19は、操作入力部14上に積層されており、図2に示したタッチパネルを構成する。
 次に、認証装置1のハードウエア構成の一例を、図4を参照しつつ説明する。認証装置1は、各種プログラムを実行するプロセッサ21と、各種プログラムを展開するためのメモリ22と、各種表示用データを出力する表示コントローラ23と、各種表示用データを表示する表示機器24と、撮影部11、音声入出力部12等を接続するためのI/Oポート25と、各種プログラム及び各種データを記憶する記憶機器26と、外部と通信し各種データを送受信する通信機器27とを備える。このプロセッサ21と、メモリ22と、表示コントローラ23と、表示機器24と、I/Oポート25と、記憶機器26と、通信機器27とは、データバス28を介して相互に接続されている。
 プロセッサ21は、記憶機器26に記憶された各種プログラムを読み出してメモリ22に展開し、実行する。プロセッサ21は、CPU(Central Processing Unit)、MPU(Micro-Processing Unit)等の処理装置を用いて構成することができる。また、メモリ22は、RAM(Random Access Memory)、フラッシュメモリ等の揮発性または不揮発性の半導体メモリといった記憶素子および記憶媒体を用いて構成することができる。
 表示コントローラ23は、表示機器24に各種表示用データを出力するコントローラである。表示コントローラ23は、ビデオカード、GPU(Graphics Processing Unit)、グラフィックボード等の映像信号出力装置を用いて構成することができる。また、表示機器24は、LCD(Liquid Crystal Display)、有機EL(Electroluminescence)モニタ等の表示装置を用いて構成することができる。
 I/Oポート25は、撮影部11と、音声入出力部12と、傾き検出部13と、操作入力部14と、指紋検出部15と、位置検出部16とを接続することができる接続用ポートである。I/Oポート25には、USB(Universal Serial Bus)ポート、IEEE1394ポート等、機器を接続可能な各種ポートを用いて構成することができる。
 記憶機器26は、プロセッサ21で実行する各種プログラム、各種プログラムで使用するための各種データを記憶する機器である。記憶機器26は、HDD(Hard Disk Drive)、SSD(Solid State Drive)等の記憶装置を用いて構成することができる。
 通信機器27は、図1に示す情報処理装置7と通信し、各種データの送受信をするデータ通信部と、図示せぬ基地局との間で、電話通信用の無線信号を送受信する音声通信部とを含む。データ通信部は、無線LAN、Wi-fi(登録商標)、Bluetooth(登録商標)等を用いて構成することができる。また、音声通信部は、基地局との間で、電話通信用の無線信号を送受信する通信機器を用いて構成することができる。
 上述のプロセッサ21により、図3に示した認証装置1の認証装置記憶部17に記憶された認証処理プログラム170および特定情報生成プログラム176を実行することにより、認証装置制御部18に図5に示す情報処理ブロック(各機能部)が実現される。これにより、認証装置1は、ユーザ本人の顔の画像、指紋、声紋等の生体情報と、ユーザが認証装置1を操作する際の特有の挙動、操作状態等による振舞情報とに基づいてユーザ本人を認証するとともに、認証装置1における各種処理を実行することができる。
 プロセッサ21により実現される情報処理ブロックは、通信部10や撮影部11等から認証用の生体情報及び振舞情報を取得する認証用情報取得部181と、ユーザを本人か否か認証する認証部182と、表示部19に認証結果を表示させる表示処理部183と、認証部182からの指示により認証装置記憶部17に記憶された各種データベース及びテーブルの情報を更新する認証用情報更新部184と、図1に示した情報処理装置7と通信部10を介してデータを送受信するためのデータ送受信部185と、特定用情報のデータを生成する特定情報生成部186と、その他の各種処理を実行する処理部187である。
 認証用情報取得部181は、通信部10、撮影部11等から認証用の生体情報及び振舞情報を取得する。認証部182は、認証用情報取得部181から取得した認証用の生体情報及び振舞情報と、認証装置記憶部17の各種データベースに記憶された認証値、合格条件等に基づいて、ユーザの認証を行う。
 表示処理部183は、認証部182からユーザの認証結果を受信し、認証結果に応じたメッセージ、画像等を表示部19に表示させる。認証用情報更新部184は、認証部182からの指示に基づいて、認証装置記憶部17に記憶された各種データベース、テーブルに記憶されたデータを更新する。
 データ送受信部185は、図1に示す情報処理装置7と通信部10を介してデータを送受信する。特定情報生成部186は、サービスを提供する対象ユーザが正当であることを特定するための特定情報、すなわち振込処理を行うユーザが正当であることを特定するための特定情報を生成する。また、特定情報生成部186は、生成した特定情報を更新する機能を有している。処理部187は、認証部182において、認証装置1を使用するユーザが本人と認証された場合に、必要な各種処理を実行する。
 次に、認証装置記憶部17に記憶される認証用生体情報データベース171と、認証用振舞情報データベース172と、傾き情報テーブル173の各テーブルおよびデータの構成について、図6Aから図6Cを参照しつつ以下に説明する。まず、認証用生体情報データベース171のテーブルには、図6Aに示すように、顔、音声等の生体情報の種類と、ユーザ本人の生体情報である登録情報と、図5に示した認証用情報取得部181で取得した生体情報とを比較して求める認証値と、が記憶されている。
 認証用生体情報データベース171のテーブルに記憶されている登録情報は、ユーザ本人の生体情報である。登録情報は、認証装置1で認証処理を行う前に予め登録された情報であり、ユーザ本人を認証できた場合に更新される。登録情報には、例えば、生体情報の種類が顔であれば顔画像から求めた特徴量が、生体情報の種類が音声であれば音声データまたは音声データから求めた特徴量または音声データとその特徴量の両方が、生体情報の種類が虹彩であれば虹彩データが、生体情報の種類が指紋であれば指紋の画像から求めた特徴量が、それぞれ記憶されている。
 本実施の形態において、生体情報の類似の判定は、認証値により行われる。認証値は、登録情報と、図5に示した認証用情報取得部181で取得した生体情報とを比較した結果を基に求められる値である。認証値は、登録情報と認証用情報取得部181で取得した生体情報とが類似する場合に0に近づき、類似しない場合に1に近づく。認証用生体情報データベース171には、認証値の平均値と、認証値を判定するための閾値である認証閾値と、認証閾値にユーザがグレーな場合を示す認証許容範囲値を含めた認証許容値とが含まれる。
 まず、認証値の平均値は、登録情報と、認証用情報取得部181で取得した生体情報とを比較し求められた認証値の平均の値である。認証閾値は、登録情報と、認証用情報取得部181で取得した生体情報とを比較し、比較した結果を基に求められた認証値が、この値未満の場合、ユーザをユーザ本人と判定するための基準となる値である。
 認証閾値は、ユーザの認証の状況に合わせて変動する値であり、予め上限値が定められている。上限値は、認証値がその値以上となった場合、ユーザをユーザ本人と生体情報のみで認証すべきではないとされる値である。例えば、認証閾値のデフォルト値を、登録情報と認証用情報取得部181で取得した生体情報とが類似する場合に近づく認証値0と類似しない場合に近づく認証値1との間の0.4とする。この場合、認証閾値の上限値は、認証閾値のデフォルト値に、登録情報と生体情報とが類似する場合に近づく認証値0と、登録情報と生体情報とが類似しない場合に近づく認証値1との一割の半分である0.05を加えた値、すなわち、0.45とする。なお、認証閾値のデフォルト値や加算する値については、ユーザの年齢層や性別などのグループや個人毎に異なるようにしてもよい。
 また、認証許容値は、登録情報と認証用情報取得部181で取得した生体情報とを比較し、比較した結果を基に求められた認証値が、この値以上の場合、ユーザをユーザ本人ではないと判定するための基準となる値である。認証許容値は、上述のとおり認証閾値にユーザがグレーな場合を示す認証許容範囲値を含めた値である。このため、認証許容値は、認証閾値と認証許容範囲値との変動に応じて、変動する値である。
 認証許容値には、予め上限値が定められており、これを最大認証許容値と呼ぶ。最大認証許容値は、認証値がこの値以上の場合、ユーザを他人と判断すべきとされる値である。例えば、最大認証許容値は、登録情報と認証用情報取得部181で取得した生体情報とが類似する場合に近づく認証値0と、類似しない場合に近づく認証値1との中間の0.5とする。
 認証閾値と認証許容値との間の値を認証許容範囲値という。認証許容範囲値は、ユーザがユーザ本人か否かグレーな場合を示す値である。認証値が認証許容範囲値内である場合、ユーザがユーザ本人か否かを生体情報だけで判断せず、ユーザ特有の振舞情報を含めて判断する。具体的には、認証値が認証許容範囲値内である場合、ユーザ特有の振舞情報が合格条件に合致している場合に、ユーザ本人と認証する。
 また、認証値が認証許容範囲値内である場合、ユーザ特有の振舞情報が合格条件に合致してない場合に、ユーザ本人と認証しないものとする。振舞情報によるユーザの認証を、以下では、補助認証と称する。認証許容範囲値は、この範囲に収まる認証値であればユーザ本人として概ね考えても良いと思われる値を、予め定めたものである。認証許容範囲値は、例えば、登録情報と認証用情報取得部181で取得した生体情報とが類似する場合に近づく認証値0と、類似しない場合に近づく認証値1との一割以下の0.08とする。
 なお、認証閾値が上限値になった場合、認証許容範囲値は、最大認証許容値から認証閾値の上限値を引いた値とする。例えば、認証閾値の上限値を0.45とし、最大認証許容値を0.5とした場合、認証許容範囲値は0.05となる。したがって、認証閾値が上限値になっている場合、認証許容範囲値の値は、認証閾値が上限値になっていない場合よりも小さな値をとる。
 次に、認証用振舞情報データベース172のテーブルについて、図6Bを参照しつつ、以下に説明する。認証用振舞情報データベース172のテーブルには、通信接続、イベント実行等のユーザの振舞の種類と、図5に示した認証用情報取得部181で取得した取得情報と、各振舞における最新状況と、各振舞の合格条件とが記憶されている。
 取得情報には、例えば、振舞の種類が通信接続であれば接続先のアドレス、SSID(Service Set Identifier)、BSSID(Basic Service Set Identifier)等が、振舞の種類がイベント実行であれば予めスケジュール帳に保存されたイベントの行われる場所の名称、住所等の場所情報が、振舞の種類が顔と端末装置との距離であれば距離が、デバイス接続であれば接続先のデバイスを示す名称、ID(Identifier)等が、それぞれ記憶されている。
 各振舞における最新状況は、例えば、振舞の種類が通信接続であれば、取得情報に示された通信接続先にこれまで接続等された合計回数である。通信接続先への接続等の合計回数は、初期値が0であり、通信接続先への接続等により回数が加算されていく。また、振舞の種類がイベント実行であれば、取得情報に記憶されている場所とユーザの現在地との間の距離が記憶される。
 振舞の種類が、顔と認証装置1との距離であれば、それまでユーザがユーザ本人と認証された際に算出された顔と認証装置1との距離の平均距離が記憶される。顔と認証装置1との平均距離は、ユーザがユーザ本人と認証される度に更新される。なお、顔と認証装置1との平均距離の初期値は、図6Aに示した生体情報を、認証装置1でユーザ本人の認証を行う前に予め登録する際に求められた距離とする。
 また、振舞の種類がデバイス接続であれば、取得情報に記憶された名称、ID等が示すデバイスに接続されているか否かが記憶されている。デバイス接続は、例えば、Bluetooth(登録商標)によりペア設定されたデバイスと認証装置1との接続である。各振舞の合格条件は、各振舞の信頼性を担保できる条件を予め定めた条件である。
 次に、図6Cに示すのは、傾き情報テーブル173のテーブルである。傾き情報テーブル173は、図5に示した傾き検出部13から取得された認証装置1の傾きを示す角度と、その角度を取得した取得日時、傾きを検出するめのインターバルとなる待機時間とを記憶している。認証装置1の傾きを示す角度は、待機時間が経過する毎に図5に示した認証用情報取得部181により傾き検出部13から取得され、更新される。また、その角度を更新する際、角度を取得した取得日時も更新される。
 続いて情報処理装置7の構成について説明する。情報処理装置7は、認証装置1で生成された特定情報に基づいて、サービスの提供対象のユーザを特定し、特定したユーザに対しサービスを提供する端末である。上述したように、この実施の形態における情報処理装置7は、特定情報に基づいて対象のユーザの正当性を判定し、正当性が認められたユーザに対して金融サービスを提供する(振込の実行を金融機関99に指示する)。図7は、情報処理装置7の構成を示すブロック図である。情報処理装置7は、上述したように、パーソナルコンピュータやスマートフォンやタブレット端末であり、通信部70と、音声入出力部72と、操作入力部73と、情報処理装置記憶部77と、情報処理装置制御部78と、表示部79とを備える。なお、認証装置1と同様に、傾き検出部13、指紋検出部15、および位置検出部16をさらに備えていてもよい。
 情報処理装置7における通信部70、音声入出力部72、操作入力部73については認証装置1における通信部10、音声入出力部12、操作入力部14と同様であるため、説明を省略する。
 情報処理装置記憶部77は、対象のユーザの正当性を判定するためのプログラム770と、特定情報と認証装置の公開鍵とを紐付けた対応情報一覧771と、を備える。また、情報処理装置記憶部77には、情報処理装置7で実行される各種アプリケーションのプログラムが記憶されている。
 情報処理装置制御部78は、情報処理装置記憶部77に記憶された各種プログラム(プログラム770を含む)を実行する。また、情報処理装置制御部78は、通信部70と、音声入出力部72と、操作入力部73とから各種データを取得して処理し、情報処理装置記憶部77の各種データベース、テーブル等に記憶する。
 表示部79は、情報処理装置制御部78で実行される各種プログラムの処理内容を表示する。また、表示部79は、操作入力部73から入力されたデータ等を表示することもできる。なお、情報処理装置7がスマートフォンやタブレット端末である場合、当該表示部79は、操作入力部73上に積層され、タッチパネルを構成すればよい。
 次に、情報処理装置7のハードウエア構成の一例を、図8を参照しつつ説明する。情報処理装置7は、認証装置1と同様に、各種プログラムを実行するプロセッサ81と、各種プログラムを展開するためのメモリ82と、各種表示用データを出力する表示コントローラ83と、各種表示用データを表示する表示機器84と、音声入出力部72等を接続するためのI/Oポート85と、各種プログラム及び各種データを記憶する記憶機器86と、外部と通信し各種データを送受信する通信機器87とを備える。このプロセッサ81と、メモリ82と、表示コントローラ83と、表示機器84と、I/Oポート85と、記憶機器86と、通信機器87とは、データバス88を介して相互に接続されている。なお、プロセッサ81、メモリ82、表示コントローラ83、表示機器84、I/Oポート85、記憶機器86、通信機器87、およびデータバス88については、認証装置1におけるプロセッサ21、メモリ22、表示コントローラ23、表示機器24、I/Oポート25、記憶機器26、通信機器27、およびデータバス28と同様であるため、説明を省略する。
 プロセッサ81により、図7に示した情報処理装置7の情報処理装置記憶部77に記憶されたプログラム770を実行することにより、情報処理装置制御部78に図9に示す情報処理ブロック(各機能部)が実現される。これにより、情報処理装置7は、対象のユーザの正当性を判定し、正当性が認められたユーザに対する金融サービスの提供を、金融機関99に指示することができる。
 プロセッサ21により実現される情報処理ブロックは、通信部10等から判定用の情報を取得する判定用情報取得部781と、ユーザの正当性を判定する判定部782と、表示部79に判定結果を表示させる表示処理部783と、図1に示した金融機関99や認証装置1と通信部70を介してデータを送受信するためのデータ送受信部785と、その他の各種処理を実行する処理部787である。
 判定用情報取得部781は、通信部10等から判定用の判定用情報を取得する。判定部782は、判定用情報取得部781から取得した判定用情報に基づいて、ユーザの正当性を判定する。
 具体的に、判定用情報取得部781は、通信部10を介して認証装置1から特定情報と認証装置の公開鍵を取得する。なお、認証装置の公開鍵は、操作入力部73に対する操作により入力されてもよい。この他にも、音声入出力部72から入力されてもよい。判定部782は、判定用情報取得部781で取得した特定情報および認証装置の公開鍵に基づいて、情報処理装置記憶部77の対応情報一覧771から対象のユーザを特定するとともに、当該ユーザの正当性を判定する。また、判定部782は、処理部787と協働して、更新された特定情報を更新する。具体的に、情報処理装置記憶部77の対応情報一覧771に記憶された特定情報を新たな特定情報に更新する。
 表示処理部783は、判定部782の判定結果や処理部787の処理結果に応じたメッセージ、画像等を表示部79に表示させる。なお、この他にも、例えばユーザの正当性が認められない場合については、合わせて音声入出力部72から音声を出力するようにしてもよい。
 データ送受信部785は、図1に示した金融機関99や認証装置1に対し通信部70を介してデータを送受信する。処理部787は、判定部782における判定結果に基づいて金融機関99へのサービス提供指示を作成する処理や、その他の各種処理を実行する。
 次に、情報処理装置記憶部77に記憶される対応情報一覧771のデータの構成について、図10を参照しつつ説明する。図10に示す対応情報一覧771は、後述するステップS218の処理(図13参照)にて情報処理装置記憶部77に記憶される。図示するように、対応情報一覧771は、特定情報と認証装置の公開鍵とが紐付いている。そのため、対応情報一覧771は、情報処理装置7の側において、いずれの特定情報のユーザがサービス提供の対象者であるかが特定可能な情報となっている。なお、この実施の形態では、提供されるサービス毎に、後述する特定情報生成処理(図13参照)が実行されるため、特定情報および認証装置の公開鍵は、サービス毎に生成されることとなる。そのため、同一ユーザであっても、サービス毎に異なる特定情報および認証装置の公開鍵が、対応情報一覧771に登録される。したがって、複数のサービスを利用するユーザについて、共通した情報が登録されることがなく、同一ユーザであることを情報処理装置7の側において認識されてしまうことを防止できる。また、これとは異なり、例えば、特定情報については、サービス毎に異なるものとする一方で、認証装置の公開鍵は、複数のサービスに共通して利用可能としてもよい。具体的には、後述する特定情報更新処理(図16参照)により、サービス毎に異なる特定情報とすればよい(図16に示すステップS413の処理にて新たに登録すればよい)。これによれば、サービス毎に共通した認証装置の公開鍵を使用できる一方で、特定情報についてはサービス毎に異なるため、処理負担を軽減しつつセキュリティを確保することができる。また、図示する対応情報一覧771は、特定情報と認証装置の公開鍵とが紐付いている例を示したが、これに加え、後述するステップS208Aの処理(図13参照)で生成した共通鍵SKが合わせて紐付いていてもよい。また、これとは異なり、対応情報一覧771には認証装置の公開鍵のみ登録されていてもよい。
 以上が、認証システム100における認証装置1と情報処理装置7の構成である。続いて認証装置1と情報処理装置7の動作について、図11A~図18を参照して説明する。なお、この実施の形態では、上述したように、所謂ネットバンクにおける振込の金融サービスが行われる場合を例に説明する。
 まず、認証装置1における認証処理においてユーザの認証が行われる。そして判定指示処理が実行されることで、特定情報が生成され、生成された特定情報を情報処理装置7に送信することで、情報処理装置7の側においてユーザの正当性の判定がさらに判定される。なお、情報処理装置7の側においてユーザの正当性が認められると、当該情報処理装置7から金融機関99に対し振込の指示が送信され、振込処理が行われる。当該認証装置1における認証処理は、バックグラウンドで行われる処理である。また、認証装置1から情報処理装置7には、金融機関99から発行されたログインIDやパスワードといったログイン情報も送信され、情報処理装置7から金融機関99へも、振込の指示と合わせてログイン情報が送信されることとなる。そのため、この実施の形態では、情報処理装置7から振込の指示を受信したこと、および、情報処理装置7から受信したログイン情報が正当であることをもって振込の処理が行われることとなる。なお、当該情報処理装置7においてログイン情報の正当性も判定するようにしてもよい。また、この実施の形態ではバックグラウンドでユーザの認証が行われる例を示しているが、ユーザの認証については、バックグラウンドで行われるものに限られない。なお、ユーザの認証に成功することにより、第1の条件が成立することとなる。
 まず、認証処理について、図11Aおよび図11Bを参照して説明する。認証装置1は、電源投入後のイニシャライズ処理の実行が完了すると、もしくは、スリープ状態から復帰すると、認証が成功するまで各機能の操作を許さないロック状態に入る。このロック状態に入る、若しくは、各機能の操作を行う際に認証が要求されると、図3に示した認証装置制御部18が、認証装置記憶部17に記憶された認証処理プログラム170を実行し、ユーザがユーザ本人か否かを判別する認証処理を開始する。なお、この例では、生体情報としてユーザの顔画像を用いるものとするが、生体情報は、顔画像に限られず、指紋、声紋、虹彩等であってもよく、また、これらの組み合わせであってもよい。また、例えば、金融サービスのアプリケーションが実行された場合に認証処理が開始されてもよく、当該アプリケーションの起動中は認証処理が継続して行われるようにしてもよい。この実施の形態では、理解を容易にするため、金融サービスを所望するユーザが金融サービスのアプリケーション(所謂ネットバンクのアプリケーション)の起動とともに認証処理が開始され、当該アプリケーションが起動されている間(起動されてから終了させるまでの期間)は、認証処理がバックグラウンドで繰り返し実行されるものとして以下説明する。
 認証処理を開始すると、図5に示した認証用情報取得部181は、撮影部11に認証装置1を操作しているユーザの顔写真を撮影させる。具体的に、認証用情報取得部181は、認証装置1の正面に向き合っているユーザの顔写真を、インカメラ11Aで撮影させる。これにより、認証用情報取得部181は、撮影部11から撮影したユーザの顔写真を取得する(ステップS101)。
 続いて認証用情報取得部181は、取得したユーザの顔写真がブレていないか判定する(ステップS102)。ユーザの顔写真がブレていた場合(ステップS102;NO)、認証用情報取得部181は、撮影部11にユーザの顔写真の撮影をリトライさせる(ステップS103)。また、ユーザの顔写真がブレていなかった場合(ステップS102;YES)、認証用情報取得部181は、撮影部11に撮影させたユーザの顔写真からユーザの顔が検出できるか判定する(ステップS104)。
 ユーザの顔写真からユーザの顔が検出できない場合(ステップS104;NO)、認証用情報取得部181は、撮影部11にユーザの顔写真の撮影をリトライさせる(ステップS103)。なお、ユーザの顔写真からユーザの顔が検出できない場合、今操作しているユーザにこれ以上操作をさせないようにロックをかける、他の認証方法を利用する旨のメッセージを表示する等をしてもよい。また、ユーザの顔写真からユーザの顔が検出できた場合(ステップS104;YES)、認証用情報取得部181は、検出したユーザの顔の画像の特徴量を求める。認証用情報取得部181は、求めたユーザの顔の画像の特徴量を認証部182に送信する。
 認証部182は、図3に示した認証装置記憶部17に記憶されている認証用生体情報データベース171を取得する。認証部182は、図6Aに示した認証用生体情報データベース171のテーブルから、生体情報の種類のうち「顔」に対応付けられた登録情報に記憶された顔画像の特徴量と、認証値の認証許容値及び認証閾値を取得する。認証部182は、認証用生体情報データベース171から取得した登録情報の顔画像の特徴量と、認証用情報取得部181から受信した顔画像の特徴量とを比較し、比較の結果を基に顔の認証値を求める。認証部182は、求めた顔の認証値が認証用生体情報データベース171から取得した認証閾値以上か否かを判定する(ステップS105)。
 求めた顔の認証値が認証閾値以上の場合(ステップS105;YES)、認証部182は、求めた顔の認証値が認証用生体情報データベース171から取得した認証許容値以下か否かを判定する(ステップS106)。求めた顔の認証値が認証許容値以下の場合(ステップS106;YES)、認証装置1を使用しているユーザがユーザ本人か否かグレーであるため、認証部182は振舞情報による認証である補助認証を実行する。まず、認証部182は、認証用情報取得部181に通信部10から現在接続している通信接続先を取得させる。認証部182は、認証用情報取得部181から、取得させた通信部10の現在の通信接続先を受信する。
 続いて、認証部182は、図3に示した認証装置記憶部17から認証用振舞情報データベース172を取得する。認証部182は図6Bに示した認証用振舞情報データベース172のテーブルに記憶されている振舞の種類のうち「通信接続」に対応つけられた取得情報、回数、合格条件を取得する。例えば、図6Bに示すように、「通信接続」の取得情報にはSSIDであるABC_WLANと123WLANとが記憶されている。このABC_WLANでは、接続した回数に31回、合格条件として接続回数が100回以上と記憶されている。また、123WLANでは、接続した回数に157回、合格条件として接続回数が100回以上と記憶されている。なお、以下では合格条件を満たす場合を信頼するものと呼び、合格条件を満たさない場合を信頼しないものと呼ぶ。
 認証部182は、認証用情報取得部181から受信した通信部10の現在の通信接続先と、認証用振舞情報データベース172から取得した取得情報とを比較し、現在の通信接続先が信頼する接続先であるか否か判定する(ステップS107)。ここで、例えば、通信部10の現在の通信接続先としてSSIDのABC_WLANが取得されているものとする。認証用振舞情報データベース172に記憶された振舞の種類「通信接続」の取得情報におけるABC_WLANは、接続した回数が31回であり、合格条件の接続回数が100回以上である。このため、現在の通信接続先は信頼する通信接続先ではないため(ステップS107;NO)、信頼するイベントを実行しているか否かを判定する(ステップS108)。
 認証部182は、認証用情報取得部181に操作入力部14から直前に実行したイベントの内容を取得させる。認証部182は、認証装置1に備えられたカレンダーから現在の日時に予定があるか否かと、その予定が行われる場所の情報とを取得する。認証部182は、その日に予定が無かった場合、信頼するイベントの実行ではないものとし(ステップS108;NO)、顔と認証装置1との距離を算出する(ステップS109)。また、その日に予定があった場合、認証部182は、認証用情報取得部181に位置検出部16から、現在の位置情報を取得させる。続いて、認証部182は、図3に示した認証装置記憶部17から認証用振舞情報データベース172を取得する。
 認証部182は、図6Bに示した認証用振舞情報データベース172のテーブルに記憶されている振舞の種類のうち、「イベント実行」に対応つけられた取得情報と合格条件とを取得する。例えば、図6B示すように、「イベント実行」の取得情報にはイベントが行われる場所として「○×公園」及び「△●映画館」が記憶され、その両方の合格条件として「距離が100m以内」と記憶されているものとする。
 ここで、例えば、認証装置1に備えられたカレンダーに、現在の日時に行われるイベントの場所として「○×公園」が記憶されているものとする。認証部182は、認証用情報取得部181に位置検出部16から取得させた現在の位置情報と、現在の日時に行われるイベントの場所である「○×公園」の位置情報とを比較する。例えば、現在の位置情報と、イベントの場所である「○×公園」の位置情報との間の距離が113mとする。この場合、信頼するイベントの実行ではないものとし(ステップS108;NO)、顔と認証装置1との距離を算出する(ステップS109)。ユーザの顔と認証装置1との距離は、図2に示したインカメラ11Aで撮影した認証装置1の正面に向き合うユーザの顔写真における、ユーザの顔の占める割合に基づいて算出する。
 続いて、認証部182は、図3に示した認証装置記憶部17から認証用振舞情報データベース172を取得する。認証部182は、図6Bに示した認証用振舞情報データベース172のテーブルに記憶されている振舞の種類のうち「顔と端末装置との距離」に対応つけられた平均距離、合格条件を取得する。例えば、図6Bに示すように、「顔と端末装置との距離」の平均距離には262mm、合格条件に平均距離のプラスマイナス20mm以内と記憶されている。
 認証部182は、ステップS109で算出したユーザの顔と認証装置1との距離が、認証用振舞情報データベース172から取得した合格条件に設定された設定範囲内か否か判定する(ステップS110)。具体的には、認証用振舞情報データベース172から取得した平均距離は262mm、合格条件は、平均距離のプラスマイナス20mm以内であるので、242mmから282mmの範囲か否かを判定する。
 ステップS109で算出したユーザの顔と認証装置1との距離が、242mmから282mmの範囲である場合(ステップS110;YES)、認証部182は、認証装置1を使用しているユーザをユーザ本人と認証する。認証部182は、認証用情報更新部184に、図2に示した認証用生体情報データベース171及び認証用振舞情報データベース172に記憶された各種データを更新させる(ステップS111)。
 具体的には、認証用情報更新部184は、図6Aに示した認証用生体情報データベース171のテーブルの生体情報の種類「顔」に対応つけられた登録情報を、登録情報に記憶されていた顔画像の特徴量に認証部182が認証用情報取得部181から受信した顔画像の特徴量を加え、更新する。続いて、認証用情報更新部184は、図6Bに示した認証用振舞情報データベース172のテーブルの振舞の種類「通信接続」に対応つけられた最新状況に記憶されている回数に1を加え、更新する。また、認証用情報更新部184は、図6Bに示した認証用振舞情報データベース172のテーブルに記憶されている振舞の種類「顔と端末装置との距離」に対応つけられた最新状況を、記憶されている平均距離とステップS109で算出された「顔と端末装置との距離」とから求めた平均距離で更新する。
 このように、認証用生体情報データベース171に記憶された生体情報、及び、認証用振舞情報データベース172に記憶された振舞情報を更新することにより、ユーザの生体情報及び振舞情報の精度が向上する。このため、ユーザの認証の精度を向上させることができる。
 また、認証部182により求められた顔の認証値が、認証値の認証閾値以上でない場合(ステップS105;NO)、認証部182は、認証用情報取得部181に通信部10から現在接続している通信接続先を取得させる。認証部182は、認証用情報取得部181から、取得させた通信部10の現在の通信接続先を受信する。続いて、認証部182は、図2に示した認証装置記憶部17から認証用振舞情報データベース172を取得する。認証部182は、図6Bに示した認証用振舞情報データベース172のテーブルに記憶されている振舞の種類のうち「通信接続」に対応つけられた取得情報、回数、合格条件を取得する。認証部182は、認証用情報取得部181から受信した通信部10の現在の通信接続先と、認証用振舞情報データベース172から取得した取得情報とを比較し、現在の通信接続先が信頼する接続先か否か判定する(ステップS112)。
 ここで、例えば、通信部10の現在の通信接続先としてSSIDの123WLANが取得されているものとする。認証用振舞情報データベース172に記憶された振舞の種類「通信接続」の取得情報における123WLANは、接続した回数が157回であり、合格条件の接続回数が100回以上である。このため、現在の通信接続先は信頼する通信接続先であるため(ステップS112;YES)、認証部182は、認証装置1を使用しているユーザをユーザ本人と認証する。その後、認証部182は、認証間隔を現在の認証間隔よりも長くする(ステップS113)。これは、現在の通信接続先が信頼する通信接続先であれば、ユーザ本人は自宅、職場等の信頼する環境に居るものと考えられるためである。この場合、認証間隔を現在の認証間隔よりも長くし、認証の頻度を下げ必要最低限の回数認証を行うようにすれば良い。
 ここで、例えば、通信部10の現在の通信接続先としてSSIDのABC_WLANが取得されているものとする。認証用振舞情報データベース172に記憶された振舞の種類「通信接続」の取得情報におけるABC_WLANは、接続した回数が31回であり、合格条件の接続回数が100回以上である。このため、現在の通信接続先は信頼する通信接続先ではないため(ステップS112;NO)、認証部182は、認証装置1を使用しているユーザをユーザ本人と認証せず、認証間隔を現在の認証間隔よりも長くしない。
 ここで、ステップS107において、例えば、通信部10の現在の通信接続先としてSSIDの123WLANが取得されているものとする。認証用振舞情報データベース172に記憶された振舞の種類「通信接続」の取得情報における123WLANは、接続した回数が157回であり、合格条件の接続回数が100回以上である。このため、現在の通信接続先は信頼する通信接続先であるため(ステップS107;YES)、認証部182は、認証装置1を使用しているユーザをユーザ本人と認証する。
 また、ここで、ステップS108において、例えば、認証装置1に備えられたカレンダーに、現在の日時に行われるイベントの場所として「△●映画館」が記憶されているものとする。認証部182は、認証用情報取得部181に位置検出部16から取得させた現在の位置情報と、現在の日時に行われるイベントの場所である「△●映画館」の位置情報とを比較する。例えば、現在の位置情報と、イベントの場所である「△●映画館」の位置情報との間の距離が72mとする。この場合、信頼するイベントの実行であるもとのし(ステップS108;YES)、認証部182は、認証装置1を使用しているユーザをユーザ本人と認証する。
 認証部182は、認証間隔を現在の認証間隔よりも長くする(ステップS113)。認証部182は、ユーザの顔と認証装置1との距離を算出する(ステップS114)。続いて、認証部182は、図3に示した認証装置記憶部17から認証用振舞情報データベース172を取得する。認証部182は、ステップS114で算出したユーザの顔と認証装置1との距離が、認証用振舞情報データベース172から取得した合格条件に設定された設定範囲内か否か判定する(ステップS115)。ステップS114で算出したユーザの顔と認証装置1との距離が、設定範囲である場合(ステップS115;YES)、認証部182は、認証装置1を使用しているユーザをユーザ本人と認証する。認証部182は、認証用情報更新部184に、図3に示した認証用生体情報データベース171及び認証用振舞情報データベース172に記憶された各種データを更新させる(ステップS111)。
 具体的には、認証用情報更新部184は、図6Aに示した認証用生体情報データベース171のテーブルの生体情報の種類「顔」に対応つけられた登録情報を、登録情報に記憶されていた顔画像の特徴量にステップS105で認証部182が認証用情報取得部181から受信した顔画像の特徴量を加え、更新する。
 続いて、認証用情報更新部184は、図6Bに示した認証用振舞情報データベース172のテーブルの振舞の種類「通信接続」に対応つけられた、最新状況に記憶されている回数に1を加え、更新する。続いて、認証用情報更新部184は、認証用振舞情報データベース172のテーブルの振舞の種類「イベント実行」に対応つけられた最新状況を、ステップS108;YESで求めたイベントの場所と認証装置1との間の距離を書き込み、更新する。また、認証用情報更新部184は、図6Bに示した認証用振舞情報データベース172のテーブルに記憶されている振舞の種類「顔と端末装置との距離」に対応つけられた最新状況を、最新状況に記憶されている平均距離とステップS114で算出された「顔と端末装置との距離」とから求められた平均距離で更新する。
 ステップS114で算出したユーザの顔と認証装置1との距離が、設定範囲でない場合(ステップS115;NO)、認証部182は、認証用情報更新部184に、図3に示した認証用生体情報データベース171及び認証用振舞情報データベース172に記憶された各種データを更新させない。
 また、認証部182により求められた顔の認証値が、認証値の認証許容値以下でない場合(ステップS106;NO)、及び、ステップS110で顔と端末装置との距離が設定範囲内でなかった場合(ステップS110;NO)、認証部182は、認証装置1を使用しているユーザをユーザ本人ではないと判断する。認証部182は、図5に示した表示処理部183に、表示部19へ認証できなかった旨を表示させる。続いて、認証部182は、認証装置1に備えられている既存の生体認証手段を呼び出す。ここでは、既存の生体認証手段として指紋認証を呼び出すものとする。認証部182は、指紋認証を実行する(ステップS116)。
 指紋認証ができた場合(ステップS117;YES)、認証部182からの指示により、認証用情報取得部181は、撮影部11に認証装置1を操作しているユーザの顔写真を撮影させる。認証用情報取得部181は、撮影部11から撮影したユーザの顔写真の画像を取得し、ユーザの顔の画像の特徴量を求める。認証用情報取得部181は、認証部182に求めたユーザの顔の画像の特徴量を送信する。認証部182は、受信したユーザの顔の画像の特徴量を図5に示した認証用情報更新部184に送信する。認証用情報更新部184は、受信したユーザの顔の画像の特徴量を、図6Aに示した認証用生体情報データベース171のテーブルの生体情報の種類「顔」に対応つけられた登録情報に記憶されていた顔画像の特徴量に加え、更新する(ステップS118)。認証部182は、ステップS101へ戻り、ステップS101以降のステップを実行する。
 また、指紋認証ができなかった場合(ステップS117;NO)、認証部182は、図5に示した表示処理部183に、表示部19へ認証できなかった旨を表示させる。続いて、認証部182は、図5に示した表示処理部183にログイン画面を表示部19に表示させる(ステップS119)。
 ここで、図11Bに移動する。認証部182は、生体認証及び補助認証が予め定められた設定回数成功したか否かを判定する(ステップS120)。この設定回数は、例えば、連続で10回、認証装置1が起動してから合計で20回等、任意の回数である。生体認証及び補助認証が予め定められた設定回数成功した場合(ステップS120;YES)、認証部182は、設定回数分の認証で求められた顔の認証値の平均値を求める(ステップS121)。具体的には、認証部182は、図3に示した認証用生体情報データベース171を、認証装置記憶部17から取得する。認証部182は、図6Aに示した認証用生体情報データベース171のテーブルから、生体情報の種類のうち「顔」に対応付けられた認証値の平均値を取得する。認証部182は、ステップS105で求めた顔の認証値と、認証用生体情報データベース171から取得した認証値の平均値とを足して2で割り、顔の認証値の平均値を算出する。また、生体認証及び補助認証が予め定められた設定回数成功しなかった場合(ステップS120;NO)、ステップS121からステップS123の処理をスキップし、ステップS124へ進む。
 認証部182は、ステップS121で求めた顔の認証値の平均値を、認証用情報更新部184に送信する。認証用情報更新部184は、受信した顔の認証値の平均値と、予め設定された認証閾値の上限値とを比較する。顔の認証値の平均値が予め設定された認証閾値の上限値以上である場合、認証用情報更新部184は、図6Aに示した認証用生体情報データベース171のテーブルの、生体情報の種類のうち「顔」に対応付けられた認証閾値に、認証閾値の上限値を書き込み、更新する。また、顔の認証値の平均値が予め設定された認証閾値の上限値以下である場合、認証用情報更新部184は、図6Aに示した認証用生体情報データベース171のテーブルの、生体情報の種類のうち「顔」に対応付けられた認証閾値に、ステップS121で求めた顔の認証値の平均値を書き込み、更新する(ステップS122)。
 続いて、認証用情報更新部184は、認証許容値を更新する(ステップS123)。具体的には、ステップS121で求めた顔の認証値の平均値が、予め設定された認証閾値の上限値以上である場合、認証用情報更新部184は、予め設定された最大認証許容値を認証許容値とする。また、ステップS121で求めた顔の認証値の平均値が、予め設定された認証閾値の上限値以下である場合、ステップS121で求めた顔の認証値の平均値とデフォルトの認証許容範囲値とを足した値が最大認証許容値以下であれば、その足した値を認証許容値とする。
 ステップS121で求めた顔の認証値の平均値とデフォルトの認証許容範囲値とを足した値が最大認証許容値以上であれば、最大認証許容値を認証許容値とする。認証用情報更新部184は、図3に示した認証用生体情報データベース171を、認証装置記憶部17から取得する。認証用情報更新部184は、図6Aに示した認証用生体情報データベース171のテーブルの、生体情報の種類のうち「顔」に対応付けられた認証許容値に、求めた認証許容値を書き込み、更新する。
 図5に示した認証用情報取得部181は、傾き検出部13から認証装置1の傾きの角度を取得する。続いて、認証用情報取得部181は、図示しないタイマから現在の日時情報を取得する(ステップS124)。認証用情報取得部181は、取得した認証装置1の傾きの角度と現在の日時情報とを認証部182に送信する。認証部182は、受信した認証装置1の傾きの角度と現在の日時情報とを、認証用情報更新部184に送信する。認証用情報更新部184は、図3に示した認証装置記憶部17に記憶された傾き情報テーブル173に、受信した認証装置1の傾きの角度と現在の日時情報とを書き込み、保存する(ステップS125)。
 認証部182は、図6Cに示した傾き情報テーブル173のテーブルに記憶されている待機時間を取得する。認証部182は、認証用情報取得部181に取得した待機時間を送信する。認証用情報取得部181は、受信した待機時間の間、通信部10、撮影部11等からのデータの取得を待機する(ステップS126)。待機時間が終了すると、認証用情報取得部181は、傾き検出部13から認証装置1の傾きの角度を取得する。続いて、認証用情報取得部181は、図示しないタイマから現在の日時情報を取得する(ステップS127)。認証用情報取得部181は、取得した認証装置1の傾きの角度と現在の日時情報とを認証部182に送信する。
 認証部182は、図6Cに示した傾き情報テーブル173のテーブルに記憶されている認証装置1の角度を取得する。認証部182は、認証用情報取得部181から受信した認証装置1の傾きの角度と、傾き情報テーブル173から取得した認証装置1の角度とを比較し、角度が変化してないか否かを判定する(ステップS128)。認証装置1の角度の変化が、予め定められた設定値の角度、例えば、30度以上の場合(ステップS128;NO)、認証部182は、ユーザにより認証装置1が動かされ何某かの操作が行われたものと判断し、図11Aに示したステップS101に戻る。その後、認証部182は、ステップS101以降の処理を実行する。
 また、認証装置1の角度の変化が、予め定められた設定値の角度以下の場合(ステップS128;YES)、認証部182は、ユーザにより認証装置1が動かされていないものと判断する。続いて、認証部182は、ユーザを認証するタイミングになったか否かを判定する(ステップS129)。ユーザを認証するタイミングは、予め設定された認証間隔の時間が経過したタイミングである。ユーザを認証するタイミングになっている場合(ステップS129;YES)、認証部182は、図11Aに示したステップS101に戻る。その後、認証部182は、ステップS101以降の処理を実行する。ユーザを認証するタイミングになっていない場合(ステップS129;NO)、認証部182はステップS125に戻る。認証部182は、ステップS125からステップS129までの処理を実行する。
 なお、上記の実施の形態において、生体情報から求められた認証値と認証閾値とが同じ値となった場合には、生体情報から求められた認証値が認証閾値以下、または、生体情報から求められた認証値が認証閾値以上の、どちらの場合として、認証が成功したか否かを判定してもよい。また、生体情報から求められた認証値と認証許容値とが同じ値となった場合には、生体情報から求められた認証値が認証許容値以下、または、生体情報から求められた認証値が認証許容値以上の、どちらの場合として、認証が成功したか否かを判定してもよい。
 次に、判定指示処理について、図12を参照して説明する。図12は判定指示処理の一例を示すフローチャートである。なお、判定指示処理は、認証処理が終了する度に開始されればよく、認証処理が設定期間毎に繰り返される度に当該判定指示処理も繰り返し実行されることとなっている。この実施の形態における認証処理は、金融サービスのアプリケーション(所謂ネットバンクのアプリケーション)が起動されている間(起動されてから終了させるまでの期間)、認証処理が継続して繰り返し実行されることから、当該判定指示処理についても同様の期間、繰り返し実行されることとなる。判定指示処理が開始されると、処理部187は、認証処理における認証に成功したか否かを判定する(ステップS301)。
 成功したと判定した場合(ステップS301;YES)、処理部187は、処理が終了したか否かを判定する(ステップS302)。具体的に、ステップS302の処理では、例えば操作入力部14に対するユーザの入力操作により金融サービスのアプリケーション(所謂ネットバンクのアプリケーション)が終了されたか否かを判定したり、金融サービスのアプリケーションが起動されてから予め定められた時間を経過したか否かを、タイマ値を確認して判定することにより、処理が終了したか否かを判定する。
 処理が終了していないと判定した場合(ステップS302;NO)、処理部187は、既にステップS305の処理を実行し、判定開始済みであるか否かを判定する(ステップS303)。ステップS303では、後述するステップS305の処理を実行済みであるか否かを判定すればよい。判定開始済みである場合(ステップS303;YES)、処理部187は、そのまま判定指示処理を終了する。一方、判定開始済みではない場合(ステップS303;NO)、処理部187は、特定情報を生成する特定情報生成処理を特定情報生成部186に実行させる(ステップS304)。
 図13は、図12のステップS304にて実行される特定情報生成処理の一例を示すフローチャートである。図13に示す特定情報生成処理において、特定情報生成部186は、まず、原始鍵を生成するための原始鍵生成処理を実行する(ステップS201)。図14は、図13のステップS201にて実行される原始鍵生成処理の一例を示すフローチャートである。
 図14に示す原始鍵生成処理において、特定情報生成部186は、まず、ユーザの特徴量を抽出する(ステップS601)。具体的に、ステップS601では、図11Aに示すステップS101で取得した顔写真から顔の特徴ベクトルを特徴量として抽出する。なお、ステップS601の処理では、新たにユーザの顔写真を撮影してもよく、この場合、図11Aに示すステップS102の処理と同様に、ブレているか否かを判定し、ブレている場合にはリトライするようにしてもよい。また、図14に示すステップS601の処理では、図11Aに示すステップS104の処理にてYESと判定した場合に求めた特徴量を使用してもよい。またステップS601で抽出する特徴量は、顔の特徴量に限られず、ユーザの生体情報であれば、指紋、声紋、虹彩等であってもよく、また、これらの組み合わせであってもよい。なお、ステップS601の処理を実行する特定情報生成部186およびステップS601は、特徴量取得手段および特徴量取得ステップに対応する。
 図14に示すステップS601の処理を実行した後、特定情報生成部186は、閾値を取得する(ステップS602)。ステップS602にて取得する閾値は、予め設定され認証装置記憶部17に記憶されていればよい。当該閾値は、後述するステップS609の処理、および原始鍵再生成処理におけるステップS806(図17参照)において、BBKDF(Biometric-Based Key Derivation Function)と呼ばれる鍵導出関数(第2鍵導出関数)を用いて原始鍵を生成または再生成する場合に使用する閾値である。BBKDFと呼ばれる鍵導出関数は、入力されたデータが基準量の閾値以内の範囲であれば同一の値が算出される鍵導出関数である。
 ステップS602の処理を実行した後、特定情報生成部186は、その他の情報を取得する(ステップS603)。具体的に、ステップS603では、乱数生成器で生成した乱数、認証装置1固有の識別情報である固有情報、当該原始鍵生成処理を実行した際のタイムスタンプなどの各種情報を取得する。乱数生成器は、認証装置制御部18の機能として備えられていればよい。また、タイムスタンプについては、原始鍵生成処理を実行した際のタイムスタンプに限られず、当該ステップS603の処理時のタイムスタンプであってもよい。
 ステップS603の処理を実行した後、特定情報生成部186は、ステップS601で抽出したユーザの特徴量と、ステップS603で取得した乱数に基づいて、メッセージ認証コードを生成する(ステップS604)。具体的に、ステップS604では、ステップS601で抽出したユーザの特徴量をメッセージとし、ステップS603で取得した乱数の一部をキーとしてHMAC(Hash-based Message Authentication Code)と呼ばれるメッセージ認証コードを生成する。
 ステップS604の処理を実行した後、特定情報生成部186は、リカバリーコードを取得する(ステップS605)。リカバリーコードは、後述する原始鍵再生成処理(図17参照)において原始鍵を再生成する際に必要となるパスワードであり、ユーザにより任意に決定され入力されればよい。また、乱数生成器で生成した乱数をリカバリーコードとして利用してもよい。この場合、当該生成されたリカバリーコードは、ユーザに通知されればよい。また、ユーザによるリカバリーコードの入力は、操作入力部14からの入力に限られず、例えば音声入出力部12からの音声入力であってもよい。なお、ステップS605の処理を実行する特定情報生成部186およびステップS605は、リカバリーコード取得手段およびリカバリーコード取得ステップに対応する。
 ステップS605の処理を実行した後、特定情報生成部186は、鍵導出前データを生成する(ステップS606)。具体的に、ステップS606では、ステップS603で取得した各種情報と、ステップS604で生成したメッセージ認証コード、およびステップS605で取得したリカバリーコードを組み合わせたデータを、鍵導出前データとして生成する。なお、この実施の形態では、ステップS603で取得した各種情報、メッセージ認証コード、およびリカバリーコードを組み合わせて鍵導出前データを生成する例を示しているが、鍵導出前データは、これに限られない。当該鍵導出前データは、例えばこれら2つの組み合わせ、これらのうちの1つのデータ、または乱数値など、任意のデータであってもよい。
 ステップS606の処理を実行した後、特定情報生成部186は、ステップS606で生成した鍵導出前データに、予め定められた第1鍵導出関数を適用して鍵データを生成する(ステップS607)。具体的に、ステップS607では、HKDF(HMAC-based Extract-and-Expand Key Derivation Function)と呼ばれるRFC5869で標準化されている鍵導出関数を、第1鍵導出関数として適用し、鍵データを生成する。なお、この実施の形態では、鍵導出前データに第1の鍵導出関数を適用して鍵データを生成する例を示しているが、鍵データはこれに限られない。鍵データは、例えば乱数値であってもよく、任意のデータであってよい。すなわち、ステップS607の処理では、例えば乱数生成器により生成された乱数値を鍵データとして生成してもよい。
 ステップS607の処理を実行した後、特定情報生成部186は、ステップS607で生成した鍵データと、ステップS602で取得した閾値と、に基づいて基準量を設定する(ステップS608)。具体的に、ステップS608では、まず基準量候補集合と呼ばれる集合を決定する。基準量候補集合は、後述する第2鍵導出関数の特性により、その中の相異する二つの要素に第2鍵導出関数を適用したとき、同一のキーが生成されないような集合で、かつ悪意ある攻撃者がその全ての要素を試行することが現実的に不可能なほどに多くの要素を持つものである。そして、基準量候補集合から第三者に選定した要素が容易に推測できないような方法で一つを選定することで、基準量と呼ばれるベクトル量を生成する。ここでは128次元のベクトル量の基準量を生成する場合の一例について説明する。なお、0以上1未満の浮動小数点数iに対して(2128-1)×iの整数部分に閾値の2倍をかけた値を返すアルゴリズムをK(i)と呼ぶ。この場合、ステップS607で生成した鍵データを128次元のベクトルデータに成形し、次元毎に前記K(i)を適用したものを基準点とする。ただし、ここでは鍵データの各次元の値は0以上1未満とする。そうでない場合はそうなるように予め処理した上で行えばよい。なおこの場合の基準量候補集合は0以上2128未満の自然数nを用いて閾値に2×nをかけた数として表される数を各次元に持つ点ベクトルの集合である。なお、この実施の形態における基準量は、ステップS604で生成したメッセージ認証コードに、ステップS603で取得した各種情報やステップS605で取得したリカバリーコードを組み合わせた鍵導出前データに、第1鍵導出関数を適用して鍵データを生成し、その上で、ステップS602で取得した閾値に基づいて基準量を設定する例を示しているが、ステップS604で生成したメッセージ認証コードに、第1鍵導出関数を適用して鍵データを生成し、ステップS602で取得した閾値に基づいて基準量を設定してもよい。すなわち、ステップS601で抽出した特徴量に基づいて生成したメッセージ認証コード(特徴量に基づいて生成した情報に対応)に、第1鍵導出関数を適用して鍵データを生成した上で、さらにステップS602で取得した閾値に基づいて基準量を設定してもよい。また、上述したように、鍵データは乱数値など任意のデータであってよく、ステップS608の処理では、当該任意のデータである鍵データをベクトルデータとし、当該ベクトルデータとステップS602で取得した閾値とに基づき、第2鍵導出関数で用いられている演算式の内容に応じた基準量を設定してもよい。
 ステップS608の処理を実行した後、特定情報生成部186は、予め定められた第2鍵導出関数により原始鍵を生成する(ステップS609)。具体的に、ステップS609では、上述したように、BBKDFと呼ばれる鍵導出関数を第2鍵導出関数として、ステップS608の処理で設定した基準量に適用し、原始鍵を生成する。上述したように、BBKDFと呼ばれる鍵導出関数は、入力されたデータが基準量の閾値以内の範囲であれば同一の値が算出される鍵導出関数である。なお、当該第2鍵導出関数は、特許請求の範囲における鍵導出関数に対応する。ステップS609では、ステップS608の処理で設定した基準量それ自体を入力データとしていることから、入力されたデータが基準量の閾値以内の範囲である。なお、当該閾値は、ステップS602で取得した閾値を示している。このように、ステップS609では、ステップS608の処理で設定した基準量と、ステップS602で取得した閾値と、に基づいて、BBKDFと呼ばれる鍵導出関数を第2鍵導出関数として適用し、原始鍵を生成する。なお、ステップS609の処理を実行する特定情報生成部186およびステップS609は、原始鍵生成手段および原始鍵生成ステップに対応する。
 ステップS609の処理を実行した後、特定情報生成部186は、ステップS608の処理で設定した基準量と、ステップS601の処理で抽出した特徴量とに、予め定められた連続な片側可逆二項演算を適用し、補助情報を生成する(ステップS610)。なお、前記の二項演算を適用する時、基準量を可逆側の項、特徴量をもう片側の項として演算を適用する。以下では、予め定められた連続的な片側可逆二項演算の一例として、ベクトルの次元毎の差を用いる場合について説明する。具体的に、ステップS610では、ステップS608の処理で設定した基準量と、ステップS601の処理で抽出した特徴量の、次元毎の差を算出し、その結果を補助情報とする。そのため、ステップS610の処理は、補助情報を生成する処理であると言え、ステップS610の処理を実行する特定情報生成部186およびステップS610は、補助情報生成手段および補助情報生成ステップに対応する。なお、この実施の形態では、理解を容易にするため、ステップS610の処理において、ステップS608の処理で設定した基準量と、ステップS601の処理で抽出した特徴量の、次元毎の差を算出し、その結果を補助情報とする例を示しているが、これは一例である。上述したように、この次元毎の差をとる部分は連続な片側可逆二項演算であれば任意のものでよい。次元毎の差以外に利用可能な演算としては、一例だが、基準量と特徴量との次元毎の積、すなわちアダマール積が利用可能である。さらに言えば、必ずしも連続的な片側可逆二項演算を用いなくてもよく、逆演算を施すことで、鍵データが基準量に対して近似的に復元される二項演算であれば、任意の演算であってよい。すなわち、逆演算を施すことで鍵データが近似的に復元されるような二項演算を予め定めておけばよい。なお、ここでいう近似的とは、復元された鍵データと、ステップS608の処理で設定した基準量と、の違いがステップS602で取得した閾値以内であることをいう。また、当該予め定めた二項演算は、特許請求の範囲における予め定められた二項演算に対応する。
 ステップS610の処理を実行した後、特定情報生成部186は、ステップS605の処理にて取得したリカバリーコードで、ステップS610の処理で生成した補助情報を暗号化する(ステップS611)。続いて情報処理装置7の情報処理装置記憶部77の所定領域に、当該暗号化した補助情報を、例えばユーザが入力したニックネームやパスワード等の識別情報に対応付けて登録した後(ステップS612)、原始鍵生成処理を終了する。なお、この実施の形態におけるステップS612の処理では、暗号化した補助情報を、情報処理装置7の情報処理装置記憶部77の所定領域に登録する例を示したが、認証装置1以外のサーバや端末であれば、登録先については情報処理装置7に限られない。なお、ステップS611およびステップS612の処理を実行する特定情報生成部186は、補助情報登録手段および補助情報登録ステップに対応する。
 このように、図14に示す原始鍵生成処理のステップS612の処理が実行されると、暗号化された補助情報が認証装置1以外の外部装置に登録されることとなる。補助情報は、原始鍵生成処理により生成された原始鍵と同一の原始鍵を再生成するために必要な情報であるとともに、生体情報そのものではない。そのため、セキュリティを確保できるとともに、例えば認証装置1を紛失してしまった場合などにおいても原始鍵を再生成できるようになるため、ユーザが安定してサービスを受けることができる。
 図13に戻り、ステップS201の処理にて原始鍵を生成した後、特定情報生成部186は、ランダムに生成される128ビットのデータであるランダムIDを生成する(ステップS203)。ステップS203の処理では、例えば、UUID(Universal Unique Identifier)によりランダムIDを生成すればよい。ランダムIDは、128ビットのデータであり、80ビットの固定部と48ビットの可変部とから構成される。なお、固定部と可変部のビット数は一例であり、ランダムIDの一部が固定部で、その他が可変部であればよい。また、これとは別に、可変部は、固定部以外のビットデータの一部であってもよい(固定部以外のビットデータが全て可変部でなくてもよい)。またステップS203の処理で生成されるランダムIDは、ランダム情報に対応する。
 ステップS203の処理を実行した後、特定情報生成部186は、ステップS201で生成した原始鍵とステップS203で生成したランダムIDの固定部とに基づいて、認証装置の秘密鍵と公開鍵を生成する(ステップS204)。ステップS204では、予め記憶されているペア鍵生成プログラムに従い、原始鍵およびランダムIDの固定部に基づいて認証装置の秘密鍵と公開鍵を生成する。なお、ステップS203で生成したランダムIDとステップS204で生成した認証装置の公開鍵は、通信部10を介して情報処理装置7へ送信される。詳しくは後述するが、ステップS204の処理においてランダムIDの固定部を用いて認証装置の秘密鍵と公開鍵を生成するため、可変部が変更されても認証装置の秘密鍵と公開鍵は変更されないこととなる。なお、ランダムIDと認証装置の公開鍵の送信時には、ユーザが入力したニックネームやパスワード、メールアドレスといった情報が合わせて送信される。
 情報処理装置7の側では、認証装置1からランダムIDおよび認証装置の公開鍵を受信すると、情報処理装置記憶部77に当該ランダムIDを登録する(ステップS205)。具体的に、ランダムIDについては、例えばユーザのニックネームやパスワード、メールアドレスといった情報と対応付けて情報処理装置記憶部77に記憶される。詳しくは後述する(図18参照)が、ステップS205でユーザのニックネームと対応付けて登録されたランダムIDは、ユーザが認証装置1を紛失してしまった場合など、認証装置1を新しい認証装置1に変更した場合において使用される。
 ステップS205の処理を実行した後、情報処理装置7の処理部787は、情報処理装置の秘密鍵と公開鍵を生成する(ステップS206)。ステップS206では、予め記憶されているペア鍵生成プログラムに従い、情報処理装置の秘密鍵と公開鍵を生成する。なお、ステップS206で生成した情報処理装置の公開鍵は、通信部70を介して認証装置1へ送信される。そして、ディフィーヘルマン鍵交換法(Diffie-Hellman key exchange method)により、認証装置1と情報処理装置7とで、共通鍵SKが生成されることとなる。なお、ステップS206で生成した情報処理装置の公開鍵を受信する認証装置1の通信部10および公開鍵を受信する処理は、公開鍵取得手段および公開鍵取得ステップに対応する。また、ステップS206の処理を実行する処理部787は、ペア鍵生成手段に対応する。
 具体的に、認証装置1の側において、特定情報生成部186は、認証装置の秘密鍵と、受信した情報処理装置の公開鍵に基づいて原始共通鍵を生成する(ステップS207)。一方、情報処理装置7の側では、処理部787が、情報処理装置の秘密鍵と、受信した認証装置の公開鍵に基づいて原始共通鍵を生成する(ステップS207A)。これらの原始共通鍵は、ディフィーヘルマン鍵交換法から、同一の鍵となる。
 続いて認証装置1の側では、特定情報生成部186が、当該原始共通鍵にKDF(key derivation function)を適用して共通鍵SKを生成し(ステップS208)、情報処理装置7の側では、処理部787が、同様に、当該原始共通鍵にKDFを適用して共通鍵SKを生成する(ステップS208A)。このようにして、認証装置1と情報処理装置7とで共通の共通鍵SKが生成されることとなる。なお、上述したように、ステップS204の処理においてランダムIDの固定部を用いて認証装置の秘密鍵と公開鍵を生成するため、ランダムIDの可変部が変更されても認証装置の秘密鍵と公開鍵は変更されない。そのため、ランダムIDの可変部が変更された場合、共通鍵SKについても変更されないこととなる。また、ステップS204、ステップS207およびステップS208の処理を実行する特定情報生成部186およびステップS204、ステップS207およびステップS208の処理は、共通鍵生成手段および共通鍵生成ステップに対応する。
 認証装置1の側において、ステップS208の処理を実行した後、特定情報生成部186は、ステップS203の処理で生成したランダムID(固定部および可変部を含む)のハッシュ値を算出する(ステップS208H)。ステップS208Hの処理を実行した後、特定情報生成部186は、ステップS208の処理で生成した共通鍵SKと、ステップS208Hで算出したハッシュ値と、に基づいてMAC(Message Authentication Code)値を算出する(ステップS209)。ステップS209では、MACアルゴリズムにより、共通鍵SKとハッシュ値に基づくMAC値を算出する。
 ステップS209の処理を実行した後、特定情報生成部186は、算出したMAC値とハッシュ値に基づいて特定情報を生成する(ステップS210)。具体的に、ステップS210では、ハッシュ値に、算出したMAC値を付加し、フッターを含めて320ビットのデータを生成し、これを特定情報とする。ステップS210で生成された特定情報は、通信部10を介して情報処理装置7へ送信される。なお、ステップS210の処理を実行する特定情報生成部186およびステップS210の処理は、特定情報生成手段および特定情報生成ステップに対応する。特定情報は、予め設定された暗号化方式により暗号化されて情報処理装置7へ送信されてもよい。
 情報処理装置7の側において特定情報を受信すると、処理部787は、受信した特定情報からハッシュ値を抽出する(ステップS212)。続いてステップS208Aで生成した共通鍵SKと、ステップS212で抽出したハッシュ値に基づいてMAC値を算出する(ステップS213)。
 ステップS213の処理を実行した後、処理部787は、ステップS213で算出したMAC値を検証する(ステップS214)。具体的に、ステップS214では、ステップS213で算出したMAC値が、受信した特定情報に含まれるMAC値と一致するか否かを確認することで検証する。ステップS214の処理における検証結果は、通信部70を介して認証装置1へ送信される。
 認証装置1の側において、特定情報生成部186は、受信した検証結果が正常であるか否かを判定し(ステップS215)、正常であれば(ステップS215;YES)、そのまま特定情報生成処理を終了する。一方、検証結果が正常でなければ(ステップS215;NO)、エラーを表示してから(ステップS216)特定情報生成処理を終了する。なお、ステップS216では、再度実行すべきことを促す表示を行ってもよく、また、手動で特定情報生成処理を再度実行可能にしてもよい。
 一方、情報処理装置7の側においても、処理部787は、ステップS214での検証結果が正常であるか否かを判定する(ステップS217)。検証結果が正常でない場合(ステップS217;NO)、処理部787は、そのまま特定情報生成処理を終了する。なお、この場合、通信部70を介して認証装置1に特定情報の登録に失敗した旨を通知し、認証装置1の側においてエラーを表示してから、再度特定情報生成処理を手動で実行可能にしてもよい。
 また、ステップS214での検証結果が正常である場合(ステップS217;YES)、処理部787は、受信した特定情報を認証装置の公開鍵に対応付けて情報処理装置記憶部77に記憶することで当該特定情報等を登録し(ステップS218)、特定情報生成処理を終了する。ステップS218では、受信した特定情報を、認証装置の公開鍵に対応付け、図10に示す対応情報一覧771として情報処理装置記憶部77に記憶する。すなわち、ステップS218の処理は、図10に示す対応情報一覧771を生成して登録する処理であるともいえる。
 このように、図13に示す特定情報生成処理が実行されることで、サービスを提供するユーザが正当であることを特定するための特定情報が生成される。また、当該特定情報生成処理が実行されることで、特定情報が情報処理装置7側に登録、すなわち、図10に示す基準情報一覧771が情報処理装置7側に登録されるため、以降は、特定情報によってユーザの特定が可能となる。また、特定情報は、ユーザの生体情報に基づいて生成される情報ではあるものの、生体情報そのものではなく、また、当該特定情報から生体情報を生成することが不可能である。そのため、生体情報そのものが不正に取得されることを防止でき、セキュリティを確保することができる。また、ランダムIDはランダムに生成されるため、同一の生体情報(顔の特徴量)から複数の特定情報が生成でき、セキュリティを確保しつつ、ユーザの作業負担を軽減させることができ、ひいては安定してサービスを受けることができる。なお、この実施の形態では、図12に示す判定指示処理において図13に示す特定情報生成処理が実行される例を示しており、当該判定指示処理は、認証処理が終了する度に開始されるため、特定情報生成処理も繰り返し実行されることになっているが、当該特定情報生成処理については、対象ユーザに対して、提供されるサービス毎(または情報処理装置7毎)に1回実行されればよい。すなわち、提供される一のサービスにおいて一旦特定情報が生成された後は、当該特定情報生成処理は行われず、他のサービスの提供時において当該サービスに対応して特定情報生成処理が実行されればよい。また、詳しくは後述するが、この実施の形態では、特定情報更新処理が実行されることで、生成された特定情報を更新可能となっている。
 図12に戻り、ステップS304の処理を実行した後、処理部187は、ユーザが正当であることを判定してサービス開始を指示する判定開始指示処理を実行し(ステップS305)、判定指示処理を終了する。なお、ステップS305の処理にて判定開始が指示されることにより、情報処理装置7の側においてユーザが正当であることが判定され、特定情報により正当であることが特定されると、サービスの開始が金融機関99へ指示される。そして、上述したように、金融機関99においてログイン情報の正当性が確認されると、当該振込の処理が行われることとなる。ステップS305の処理を実行する処理部187およびステップS305の処理は、判定指示手段および判定指示ステップに対応する。
 図15は、図12のステップS305にて実行される判定開始指示処理の一例を示すフローチャートである。図15に示す判定開始指示処理において、認証装置1の処理部187は、特定情報と認証装置の公開鍵を、通信部10を介して情報処理装置7へ送信する(ステップS221)。なお、ステップS221の処理では、図示は省略しているが、金融機関99から発行されたログインIDやパスワードといったログイン情報も合わせて送信される。
 情報処理装置7の側において、処理部787は、受信した特定情報を検証する(ステップS222)。なお、認証装置1から特定情報を受信する通信部70は、特定情報取得手段に対応する。ステップS222では、図13に示すステップS207A、S208、S212~S214の処理を実行することで、特定情報を検証する。また、ステップS222では、例えば、情報処理装置記憶部77に記憶された対応情報一覧771を参照し、受信した認証装置の公開鍵と特定情報の対応関係を確認することで、特定情報を検証してもよい。なお、ステップS222の処理において、検証が正常でない場合には処理を終了すればよい。ステップS222の処理を実行する処理部787は、判定手段に対応する。ステップS222の処理を実行した後、すなわち検証結果が正常である場合、処理部787は、チャレンジデータを生成する(ステップS223)。生成されたチャレンジデータは、通信部70を介して認証装置1へ送信される。このように、ステップS221の処理において情報処理装置7へ特定情報が送信され、当該特定情報の検証が正常である場合に、チャレンジレスポンス認証が行われる。そのため、ステップS221の処理は、対象のユーザに対応するサービスの提供を行うための認証を指示する処理であるともいえる。
 認証装置1の側において、処理部187は、受信したチャレンジデータを認証装置の秘密鍵で電子署名(暗号化)し(ステップS224)、チャレンジデータの電子署名データ(暗号化されたチャレンジデータ)を、通信部10を介して情報処理装置7へ送信する(ステップS225)。
 続いて情報処理装置7の側において、処理部787は、チャレンジデータの電子署名データを、認証装置の公開鍵を用いて検証する(ステップS226)。具体的に、ステップS226では、受信したチャレンジデータの電子署名データが、認証装置の公開鍵とペアをなす秘密鍵によりのみ生成できる、ステップS223で生成したチャレンジデータに関する電子署名かどうかを確認することにより、検証を行う。なお、検証結果は、通信部70を介して認証装置1へ送信される。
 認証装置1の側において、処理部187は、受信した検証結果が正常であるか否かを判定し(ステップS227)、正常であれば(ステップS227;YES)、そのまま判定開始指示処理を終了する。一方、検証結果が正常でなければ(ステップS227;NO)、エラーを表示してから(ステップS228)判定開始指示処理を終了する。なお、ステップS228では、再度実行すべきことを促す表示を行ってもよく、また、手動で判定開始指示処理を再度実行可能にしてもよい。
 一方、情報処理装置7の側においても、処理部787は、ステップS226での検証結果が正常であるか否かを判定する(ステップS229)。検証結果が正常でない場合(ステップS229;NO)、処理部787は、そのまま判定開始指示処理を終了する。なお、この場合、通信部70を介して認証装置1にサービス開始、すなわち判定開始に失敗した旨を通知し、認証装置1の側においてエラーを表示してから、判定開始指示処理を手動で実行可能にしてもよい。
 また、ステップS229での検証結果が正常である場合(ステップS229;YES)、処理部787は、金融機関99に対して処理の実行を指示する指示情報を送信し(ステップS230)、判定開始指示処理を終了する。この例では、ステップS230の処理が実行されることにより、振込の処理の実行が指示されることとなる。なお、ステップS230の処理では、指示情報の他、ログイン情報が送信され、金融機関99にてログイン情報の正当性が判定される。そして、ログイン情報の正当性が確認されると、振込処理が実行される。なお、ステップS230の処理を実行する処理部787は、サービス提供指示手段に対応する。
 このように、図15に示す判定開始指示処理が実行されることで、特定情報の検証が行われ、サービスの提供が開始される。上述したように、特定情報は、ユーザの生体情報に基づいて生成される情報ではあるものの、生体情報そのものではなく、また、当該特定情報から生体情報を生成することが不可能である。そのため、生体情報そのものが不正に取得されることを防止でき、セキュリティを確保することができる。なお、この実施の形態では、図12に示す判定指示処理において図15に示す判定開始指示処理が実行される。当該判定指示処理は、認証処理が終了する度に開始されるため、判定開始指示処理も繰り返し実行されることになっているが、一旦判定処理が実行された後(一旦サービスが開始された後)は、図12に示すステップS303にてYESと判定され、当該判定開始指示処理は再度実行されないようになっている。
 図12に戻り、ステップS301にて認証に失敗したと判定した場合(ステップS301;NO)、処理部187は、ステップS303と同様に、既にステップS305の処理を実行し、判定開始を指示したか否かを判定する(ステップS306)。判定開始済みではない場合(ステップS306;NO)、処理部187は、そのまま判定指示処理を終了する。一方、判定開始済みである場合(ステップS306;YES)、または、ステップS302にて処理が終了したと判定した場合(ステップS302;YES)、処理部187は、判定終了情報を情報処理装置7に送信して処理の終了を指示し(ステップS307)、判定指示処理を終了する。判定終了情報を受信した情報処理装置7の側では、例えば、図15に示すステップS230の処理の実行前のタイミングで当該判定終了情報を受信した場合は、そのままステップS230の処理を実行することなく、実行中の処理を終了する。一方、ステップS230の処理を実行した後のタイミングで当該判定終了情報を受信した場合は、金融機関99へ振込処理の中止を指示する中止指示情報を送信する。なお、中止指示情報の送信にあたっては、ログイン情報も合わせて送信すればよい。
 具体的に、ステップS306にてYESと判定された場合、既に特定情報によりユーザの正当性の判定が開始されているにも関わらず、別人(例えば脅迫者など)に入れ替わったことなどが原因で認証に失敗したことになる。この場合、当該ステップS307の処理にて判定終了を指示するとともに振込処理を強制的に終了させることで、例えば脅迫やなりすましにより振込が行われるなどといった状況を回避することができる。また、終了時間である場合(ステップS302でYESと判定された場合)には、振込処理も終了するため、認証装置1と情報処理装置7とで同期を取りつつ、処理が終了したにも関わらず特定情報の判定を行って金融機関99に指示を行ってしまうといった誤判定を防止することができる。
 次に、特定情報生成処理が実行されることで生成された特定情報を更新する特定情報更新処理について、図16を参照して説明する。この実施の形態における特定情報更新処理は、例えば、半年や1年といった予め定められた期間が経過したことにより実行される。なお、この他にも、例えば振込処理が10回実行されたなど、予め定められた回数の処理が実行されたタイミングで行われてもよい。
 また、例えば出金回数が増加したなど、ユーザの行動や習慣、癖などに変化があったタイミングで行われてもよい。なお、ユーザの行動や習慣、癖などは、認証装置1に搭載されている各種センサから取得した情報に基づいて統計情報を作成し、定期的に予め定められた基準と比較することで変化したか否かを判定すればよい。なお、図13のステップS201の処理では、顔の特徴量を抽出する例を示したが、この他に、例えばユーザの行動や習慣、癖などの情報を含めてステップS201の処理を実行してもよい。この場合、ユーザの行動や習慣、癖が変化することによりステップS201における原始鍵も変化することとなるため、このようにユーザの行動や習慣、癖が変化した場合には、特定情報更新処理を実行するのではなく、特定情報生成処理を再度実行することで特定情報を更新してもよい。
 図16に示す特定情報更新処理において、特定情報生成部186は、図13のステップS203の処理で生成したランダムIDの可変部を変更する(ステップS401)。具体的に、ステップS401の処理では、ランダムIDの可変部を+1することで図13のステップS203の処理で生成したランダムIDの可変部を変更する。なお、この例ではランダムIDの可変部を+1する例を示したが、これは一例であり、ランダムIDの可変部が図13のステップS203の処理で生成したランダムIDの可変部と異なるものとなれば変更方法は任意であってよい。
 ステップS401の処理を実行した後、特定情報生成部186は、ランダムIDのハッシュ値を算出する(ステップS402)。ステップS402の処理では、ステップS401の処理で変更したランダムIDの可変部と、図13のステップS203の処理で生成したランダムIDの固定部とを合わせたランダムIDのハッシュ値を算出する。
 ステップS402の処理を実行した後、特定情報生成部186は、図13のステップS208の処理で生成した共通鍵SKと、図16のステップS402で算出したハッシュ値と、に基づいてMAC値を算出する(ステップS403)。ステップS403では、図13に示すステップS209の処理と同様、MACアルゴリズムにより、共通鍵SKとハッシュ値に基づくMAC値を算出する。
 図16に示すステップS403の処理を実行した後、特定情報生成部186は、算出したMAC値とハッシュ値に基づいて特定情報を生成する(ステップS404)。具体的に、ステップS404では、ハッシュ値に、算出したMAC値を付加し、フッターを含めて320ビットのデータを生成し、これを特定情報とする。ステップS404で生成された特定情報は、図13のステップS204で生成した認証装置の公開鍵とともに、通信部10を介して情報処理装置7へ送信される。なお、特定情報と認証装置の公開鍵は、予め設定された暗号化方式により暗号化されて情報処理装置7へ送信されてもよい。
 特定情報は、固定部と可変部を含むランダムID全体のハッシュ値に基づいて生成される。そのため、ステップS401の処理においてランダムIDの可変部が変更されることで、ステップS404の処理にて生成される特定情報も、図13のステップS210で生成した特定情報とは異なるものとなる。
 情報処理装置7の側において特定情報を受信すると、処理部787は、図13のステップS206で生成した情報処理装置の秘密鍵と、受信した認証装置の公開鍵と、に基づいて原始共通鍵を生成する(ステップS405)。ステップS405の処理を実行した後、処理部787は、当該原始共通鍵にKDFを適用して共通鍵SKを生成する(ステップS406)。上述したように、認証装置の秘密鍵はランダムIDの固定部に基づいて生成されており、当該特定情報更新処理においてもランダムIDの固定部は変化していない。そのため、ステップS406にて生成される共通鍵SKは、図13のステップS208Aで生成された共通鍵SKと同じものとなる。そのため、例えば、ステップS406の処理において、共通鍵SKを生成したタイミングで、生成した共通鍵SKと情報処理装置記憶部77に記憶されている更新前のランダムIDのハッシュ値とに基づくMAC値と、情報処理装置記憶部77に記憶されている更新前の特定情報のMAC値と、が一致することを検証することにより、特定情報更新処理の正当性、すなわち、今回行われた更新リクエストの正当性を検証してもよい。
 ステップS406の処理を実行した後、処理部787は、受信した特定情報からハッシュ値を抽出する(ステップS407)。続いてステップS406で生成した共通鍵SKと、ステップS407で抽出したハッシュ値に基づいてMAC値を算出する(ステップS408)。
 ステップS408の処理を実行した後、処理部787は、ステップS408で算出したMAC値を検証する(ステップS409)。具体的に、ステップS409では、ステップS408で算出したMAC値が、受信した特定情報に含まれるMAC値と一致するか否かを確認することで検証する。ステップS409の処理における検証結果は、通信部70を介して認証装置1へ送信される。
 認証装置1の側において、特定情報生成部186は、受信した検証結果が正常であるか否かを判定し(ステップS410)、正常であれば(ステップS410;YES)、そのまま特定情報生成処理を終了する。一方、検証結果が正常でなければ(ステップS410;NO)、エラーを表示してから(ステップS411)特定情報生成処理を終了する。なお、ステップS411では、再度特定情報更新処理を実行すべきことを促す表示を行ってもよく、また、手動で特定情報更新処理を再度実行可能にしてもよい。
 一方、情報処理装置7の側においても、処理部787は、ステップS409での検証結果が正常であるか否かを判定する(ステップS412)。検証結果が正常でない場合(ステップS412;NO)、処理部787は、そのまま特定情報生成処理を終了する。なお、この場合、通信部70を介して認証装置1に特定情報の更新に失敗した旨を通知し、認証装置1の側においてエラーを表示してから、再度特定情報更新処理を手動で実行可能にしてもよい。
 また、ステップS409での検証結果が正常である場合(ステップS412;YES)、処理部787は、受信した認証装置の公開鍵に対応付けて情報処理装置記憶部77に記憶されている特定情報を、受信した特定情報とすることで当該特定情報を更新し(ステップS413)、特定情報更新処理を終了する。ステップS413では、図10に示す対応情報一覧771に含まれる特定情報のうち、受信した認証装置の公開鍵に対応する特定情報を、受信した特定情報に変更する。すなわち、ステップS413の処理は、図10に示す対応情報一覧771を更新する処理であるともいえる。なお、情報処理装置7の側において特定情報を受信する際、合わせてランダムIDを受信し、ステップS413の処理において特定情報を更新する際に、例えばユーザのニックネームやパスワード、メールアドレスといった情報と対応付けて情報処理装置記憶部77に記憶されているランダムIDも、更新すればよい。なお、受信するランダムIDについては、可変部が変更されたものとなっている。そのため、例えば128ビット全てを受信し、ステップS413の処理において、固定部が共通したランダムIDを特定して更新すればよい。また、例えば受信するランダムIDは、ステップS401で変更した可変部のみであってもよい。この場合、ユーザのニックネームやパスワード、メールアドレスといった情報を、当該可変部の情報と合わせて受信し、当該ユーザのニックネームやパスワード、メールアドレスといった情報と対応付けて情報処理装置記憶部77に記憶されているランダムIDを特定し、そのランダムIDを更新すればよい。
 なお、図16に示す特定情報更新処理では、ステップS405およびステップS406の処理を実行することで共通鍵SKを生成する例を示しているが、受信した認証装置の公開鍵に対応する共通鍵SKを特定可能とすれば、ステップS405およびステップS406の処理を実行しなくてもよい。例えば、対応情報一覧771において認証装置の公開鍵とステップS208Aの処理で生成した共通鍵SKとを紐付けて記憶しておき、受信した認証装置の公開鍵に基づいて共通鍵SKを特定し、特定した共通鍵SKを用いてステップS408の処理を実行すればよい。
 このように、ランダムIDを固定部と可変部とに分け、可変部のみを変更することで、特定情報生成処理を再度実行することなく特定情報の更新が可能であり、処理負担を軽減させることができる。また、認証装置1の側においてランダムIDの可変部のみ変更すればよく、情報処理装置7の側においては、認証装置の公開鍵といった既存の情報に基づいて特定情報を更新することができるため、処理を煩雑化させることなく特定情報更新処理を行うことができる。また、特定情報が更新された場合であっても、情報処理装置7の側では、更新前と同様に、図15に示すステップS222の処理を実行すれば特定情報の正当性が判定できる。すなわち、更新前と後とで共通の処理により特定情報の正当性を判定することができる。
 次に、ユーザが認証装置1を紛失してしまった場合等、ユーザが認証装置1を新しい認証装置1に切り替えた場合に原始鍵を再生成する原始鍵再生成処理について、図17を参照して説明する。なお、新しい認証装置1に切り替える前の認証装置1において、図14に示す原始鍵生成処理が既に実行され、補助情報が情報処理装置7に登録されているものとする。
 図17に示す原始鍵再生成処理を開始すると、特定情報生成部186は、ユーザにニックネームやパスワード等の識別情報の入力を促し、入力された識別情報に対応する補助情報を、情報処理装置7から取得する(ステップS801)。なお、ステップS801の処理を実行する特定情報生成部186は、補助情報取得手段に対応する。
 ステップS801の処理を実行した後、特定情報生成部186は、ユーザにリカバリーコードの入力を促し、入力されたリカバリーコードを取得する(ステップS802)。具体的に、ステップS802の処理では、図14に示す原始鍵生成処理にて生成された原始鍵を再生成する場合、図14のステップS605で取得したリカバリーコードと同一のリカバリーコードを取得する必要がある。そのため、図17のステップS802の処理において、ユーザは、図14のステップS605にて入力したリカバリーコードと同一のリカバリーコードを入力する必要がある。なお、ステップS802の処理を実行する特定情報生成部186は、同一リカバリーコード受付手段に対応する。
 図17のステップS802の処理を実行した後、特定情報生成部186は、ステップS801にて取得した補助情報を復号化する(ステップS803)。具体的に、ステップS803では、ステップS802で取得したリカバリーコードを用いて、ステップS801で取得した補助情報を復号化する。補助情報は、図14のステップS611の処理により、リカバリーコードで暗号化されているため、図17のステップS803の処理では、当該リカバリーコードで補助情報を復号化する。そのため、ステップS802の処理において取得するリカバリーコードは、図14のステップS605で取得したリカバリーコード、すなわち補助情報の暗号化に用いたリカバリーコードと同一であることが求められる。換言すると、図14のステップS605で取得したリカバリーコードと異なるリカバリーコードを図17のステップS802の処理にて取得した場合には、ステップS803にて補助情報を復号化することができないこととなる。なお、ステップS803にて補助情報を復号化することができない場合、リカバリーコードが誤っている旨を表示部19に表示すればよい。
 ステップS803の処理を実行した後、特定情報生成部186は、ユーザの特徴量を抽出する(ステップS804)。具体的に、ステップS804では、撮影部11から新たに撮影したユーザの顔写真から顔の特徴ベクトルを特徴量として抽出する。なお、図11Aに示すステップS102の処理と同様に、ブレているか否かを判定し、ブレている場合にはリトライするようにしてもよい。また、ステップS804で抽出する特徴量は、顔の特徴量に限られず、ユーザの生体情報であれば、指紋、声紋、虹彩等であってもよく、また、これらの組み合わせであってもよいが、図14のステップS601で取得した特徴量と同一の種類の生体情報である必要があるため、図14に示す原始鍵生成処理および図17に示す原始鍵再生成処理においていずれの種類の特徴量を抽出するかについては、予め同一の種類が定められていればよい。なお、ステップS804の処理を実行する特定情報生成部186は、新特徴量取得手段に対応する。
 ステップS804の処理を実行した後、特定情報生成部186は、ステップS803の処理で復号化した補助情報と、ステップS804で取得した特徴量とに、連続的な片側可逆二項演算の逆演算を適用する(ステップS805)。具体的に、ステップS805では、図14のステップS610にて算出した補助情報と同一の情報を示す復号化した補助情報に、新たに取得した特徴量を加えることで、図14のステップS608にて設定した基準量に対応する情報(対応情報)を生成する。なお、この実施の形態では、ステップS610の処理において基準量と特徴量の次元毎の差を算出しているため、ステップS805の処理にてその逆演算である次元毎の和を算出する例を示しているが、ステップS610の処理にてアダマール積を算出した場合には、当該ステップS805の処理にてその逆演算である次元毎の商を算出すればよい。すなわち、ステップS610の処理とステップS805の処理とで行われる演算は、公知の連続な片側可逆演算であれば任意の演算であってよい。さらに言えば、必ずしも連続的な片側可逆二項演算を用いなくてもよく、逆演算を施すことで、鍵データが基準量に対して近似的に復元される二項演算であれば、任意の二項演算であってよい。また、ステップS805の処理を実行する特定情報生成部186は、対応情報生成手段に対応する。
 図17のステップS805の処理を実行した後、特定情報生成部186は、閾値を取得する(ステップS806)。ステップS806にて取得する閾値は、予め設定され認証装置記憶部17に記憶されていればよく、図14のステップS602で取得した閾値と共通の閾値が記憶されていればよい。そのため、図17のステップS806で取得する閾値は、図14のステップS602で取得した閾値と同様の閾値となる。
 図17のステップS806の処理を実行した後、特定情報生成部186は、予め定められた第2鍵導出関数により原始鍵を再生成する(ステップS807)。具体的に、ステップS807では、図14のステップS609と同様に、BBKDFと呼ばれる鍵導出関数を、第2鍵導出関数として、図17のステップS805の処理で生成した対応情報に適用し、原始鍵を生成する。BBKDFと呼ばれる鍵導出関数は、入力されたデータが基準量の閾値以内の範囲であれば同一の値が算出される鍵導出関数である。そのため、ステップS807では、ステップS805の処理で生成した対応情報が、基準量の閾値以内の範囲であれば、図14のステップS609と同様の原始鍵が生成されることとなる。なお、当該閾値は、図17のステップS806で取得した閾値(図14のステップS602で取得した閾値と共通)を示している。また、ステップS805およびステップS807の処理を実行する特定情報生成部186は、原始鍵再生成手段に対応する。
 ステップS807の処理を実行した後、特定情報生成部186は、ステップS805の処理で生成した対応情報を、基準量として設定する(ステップS808)。具体的に、ステップS808では、ステップS805で生成した対応情報に、ステップS806で取得した閾値を、それぞれの次元に適用させることで基準量を設定する。
 ステップS808の処理を実行した後、特定情報生成部186は、ステップS808の処理で設定した基準量と、ステップS804の処理で抽出した特徴量とに連続的な片側可逆演算を適用する(ステップS809)。具体的に、ステップS809では、図14のステップS610と同様に、設定した基準量と抽出した特徴量の次元毎の差を算出し、その結果を補助情報とする。そのため、図17のステップS809の処理は、新たな補助情報を生成する処理であると言え、当該ステップS809の処理を実行する特定情報生成部186は、新補助情報生成手段に対応する。なお、当該ステップS809の処理についても、ステップS610の処理と同様、アダマール積でも、または任意の連続な片側可逆二項演算を用いて算出してもよい。
 ステップS809の処理を実行した後、特定情報生成部186は、図14のステップS611と同様に、リカバリーコードで補助情報を暗号化する(ステップS810)。具体的に、図17のステップS810では、ステップS802の処理で取得したリカバリーコードを用いて、ステップS809で再生成した補助情報を暗号化する。また、ステップS809で再生成した補助情報を暗号化するリカバリーコードは、ステップS802の処理で取得したリカバリーコードではなく、新たにユーザにより任意に決定され入力されてもよい。また、乱数生成器で新たに生成した乱数を当該リカバリーコードとしてもよい。その場合、当該生成されたリカバリーコードは、ユーザに通知されればよい。続いて特定情報生成部186は、情報処理装置7の情報処理装置記憶部77の所定領域に、ステップS810で暗号化した補助情報を、例えばユーザが入力したニックネームやパスワード等の識別情報に対応付けて登録することで、補助情報を更新した後(ステップS811)、原始鍵再生成処理を終了する。なお、この実施の形態におけるステップS811の処理では、暗号化した補助情報を、情報処理装置7の情報処理装置記憶部77の所定領域に登録する例を示したが、認証装置1以外のサーバや端末であれば、登録先については情報処理装置7に限られない点は、図14の原始鍵生成処理と同様である。ただし、図14のステップS612における登録先と、図17のステップS811における登録先とは、同一である必要がある。なお、ステップS810およびステップS811の処理を実行する特定情報生成部186は、補助情報更新手段に対応する。
 このように、図17に示す原始鍵再生成処理が実行されることで、ユーザが認証装置1を紛失してしまった場合等、ユーザが認証装置1を新しい認証装置1に切り替えた場合においても、同一の原始鍵を再生成することが可能である。また、原始鍵自体を認証装置1以外に登録せず、補助情報を登録することから、セキュリティを担保することもできる。
 続いて、ユーザが認証装置1を紛失してしまった場合等、ユーザが認証装置1を新しい認証装置1に切り替えた場合に特定情報を再生成する特定情報再生成処理について、図18を参照して説明する。なお、新しい認証装置1に切り替える前の認証装置1において、図13に示す特定情報生成処理が既に実行され、特定情報が情報処理装置7に登録されているものとする。
 図18に示す特定情報再生成処理を開始すると、特定情報生成部186は、まず、図17に示す原始鍵再生成処理を実行する(ステップS501A)。なお、図17に示す原始鍵再生成処理については、上述したとおりであり、ステップS501Aで再生成される原始鍵は、ユーザが同一人物であれば、以前ステップS201で生成した原始鍵と同じものとなる。
 その後、ユーザにニックネームの入力を促し、入力されたニックネームを情報処理装置7へ送信することでランダムIDを要求する(ステップS501)。なお、上述したように、ユーザのニックネームの他、例えばパスワード、メールアドレスといった情報の入力を促すなど、他の手法でランダムIDを要求してもよい。情報処理装置7の側では、当該ニックネームを受信すると、図13のステップS205でニックネームと対応付けて登録されたランダムIDの中から、当該受信したニックネームに対応するランダムIDを特定し(ステップS502)、認証装置1へ送信する。なお、ランダムIDに合わせて、情報処理装置の公開鍵についても認証装置1へ送信される。なお、ステップS502の処理では、少なくとも80ビットの固定部を含んでいれば、128ビットのランダムID全体でなくともよい。固定部のみ受信する場合(128ビット全体でない場合)、ステップS503の処理において、可変部に任意のビットデータを割り当てればよい。
 続いて認証装置1の特定情報生成部186は、情報処理装置7から受信したランダムIDの可変部を変更する(ステップS503)。具体的に、ステップS503の処理では、ランダムIDの可変部を+1することで、受信したランダムIDの可変部を変更する。なお、受信したランダムIDの可変部と異なるものとなれば変更方法は任意であってよい。また、この例では、以前生成した特定情報を使用不可能なものとするために当該ステップS503の処理を実行しているが、以前生成した特定情報をそのまま使用する場合には、当該ステップS503の処理を実行しなくてもよい。また、以前生成した特定情報を使用するか、特定情報を更新するか、をユーザに選択させ、特定情報を更新する選択が行われた場合に、当該ステップS503の処理を実行してもよい。
 次に、特定情報生成部186は、ステップS501Aで生成した原始鍵と受信したランダムIDの固定部とに基づいて、認証装置の秘密鍵と公開鍵を生成する(ステップS505)。続いて特定情報生成部186は、認証装置の秘密鍵と、受信した情報処理装置の公開鍵に基づいて原始共通鍵を生成する(ステップS506)。ステップS506の処理を実行した後、特定情報生成部186は、原始共通鍵にKDFを適用して共通鍵SKを生成する(ステップS507)。ステップS507で生成される共通鍵SKは、以前ステップS208で生成した共通鍵SKと同じものとなる。
 ステップS507の処理を実行した後、特定情報生成部186は、ランダムIDのハッシュ値を算出する(ステップS508)。ステップS508の処理では、ステップS503の処理で変更したランダムIDの可変部と、受信したランダムIDの固定部とを合わせたランダムIDのハッシュ値を算出する。なお、ステップS503の処理を実行しない場合には、受信したランダムIDそのもののハッシュ値を算出すればよい。
 ステップS508の処理を実行した後、特定情報生成部186は、ステップS507の処理で生成した共通鍵SKと、ステップS508の処理で算出したハッシュ値と、に基づいてMAC値を算出する(ステップS509)。ステップS509では、図13に示すステップS209の処理と同様、MACアルゴリズムにより、共通鍵SKとハッシュ値に基づくMAC値を算出する。
 図18に示すステップS509の処理を実行した後、特定情報生成部186は、算出したMAC値とハッシュ値に基づいて特定情報を生成する(ステップS510)。具体的に、ステップS510では、ハッシュ値に、算出したMAC値を付加し、フッターを含めて320ビットのデータを生成し、これを特定情報とする。ステップS510で生成された特定情報は、ステップS506で生成した認証装置の公開鍵とともに、通信部10を介して情報処理装置7へ送信される。なお、特定情報と認証装置の公開鍵は、予め設定された暗号化方式により暗号化されて情報処理装置7へ送信されてもよい。
 特定情報は、固定部と可変部を含むランダムID全体のハッシュ値に基づいて生成される。そのため、ステップS503の処理においてランダムIDの可変部が変更されることで、ステップS510の処理にて生成される特定情報も、図13のステップS210で生成した特定情報、すなわち以前生成した特定情報とは異なるものとなる。
 情報処理装置7の側において特定情報を受信すると、処理部787は、図13のステップS206で生成した情報処理装置の秘密鍵と、受信した認証装置の公開鍵と、に基づいて原始共通鍵を生成する(ステップS511)。ステップS511の処理を実行した後、処理部787は、当該原始共通鍵にKDFを適用して共通鍵SKを生成する(ステップS512)。上述したように、認証装置の秘密鍵はランダムIDの固定部に基づいて生成されており、当該特定情報再生成処理においてもランダムIDの固定部は変化していない。そのため、S512にて生成される共通鍵SKは、図13のステップS208Aで生成された共通鍵SKと同じものとなる。そのため、例えば、ステップS512の処理において、共通鍵SKを生成したタイミングで、生成した共通鍵SKと情報処理装置記憶部77に記憶されている更新前のランダムIDのハッシュ値とに基づくMAC値と、情報処理装置記憶部77に記憶されている更新前の特定情報のMAC値と、が一致することを検証することにより、特定情報更新処理の正当性、すなわち、今回行われた更新リクエストの正当性を検証してもよい。
 ステップS512の処理を実行した後、処理部787は、受信した特定情報からハッシュ値を抽出する(ステップS513)。続いてステップS512で生成した共通鍵SKと、ステップS513で抽出したハッシュ値に基づいてMAC値を算出する(ステップS514)。
 ステップS514の処理を実行した後、処理部787は、ステップS514で算出したMAC値を検証する(ステップS515)。具体的に、ステップS515では、ステップS514で算出したMAC値が、受信した特定情報に含まれるMAC値と一致するか否かを確認することで検証する。ステップS515の処理における検証結果は、通信部70を介して認証装置1へ送信される。
 認証装置1の側において、特定情報生成部186は、受信した検証結果が正常であるか否かを判定し(ステップS516)、正常であれば(ステップS516;YES)、そのまま特定情報生成処理を終了する。一方、検証結果が正常でなければ(ステップS516;NO)、エラーを表示してから(ステップS517)特定情報生成処理を終了する。なお、ステップS517では、再度特定情報更新処理を実行すべきことを促す表示を行ってもよく、また、手動で特定情報更新処理を再度実行可能にしてもよい。
 一方、情報処理装置7の側においても、処理部787は、ステップS515での検証結果が正常であるか否かを判定する(ステップS518)。検証結果が正常でない場合(ステップS518;NO)、処理部787は、そのまま特定情報生成処理を終了する。なお、この場合、通信部70を介して認証装置1に特定情報の更新に失敗した旨を通知し、認証装置1の側においてエラーを表示してから、再度特定情報更新処理を手動で実行可能にしてもよい。
 また、ステップS515での検証結果が正常である場合(ステップS518;YES)、処理部787は、受信した認証装置の公開鍵に対応付けて情報処理装置記憶部77に記憶されている特定情報を、受信した特定情報とすることで当該特定情報を更新し(ステップS519)、特定情報更新処理を終了する。ステップS519では、図10に示す対応情報一覧771に含まれる特定情報のうち、受信した認証装置の公開鍵に対応する特定情報を、受信した特定情報に変更する。すなわち、ステップS519の処理は、図10に示す対応情報一覧771を更新する処理であるともいえる。なお、情報処理装置7の側において特定情報を受信する際、合わせてランダムIDを受信し、ステップS519の処理において特定情報を更新する際に、例えばユーザのニックネームやパスワード、メールアドレスといった情報と対応付けて情報処理装置記憶部77に記憶されているランダムIDも、更新すればよい。なお、受信するランダムIDについては、可変部が変更されたものとなっている。そのため、例えば128ビット全てを受信し、ステップS519の処理において、固定部が共通したランダムIDを特定して更新すればよい。また、例えば受信するランダムIDは、ステップS503で変更した可変部のみであってもよい。この場合、ユーザのニックネームやパスワード、メールアドレスといった情報を、当該可変部の情報と合わせて受信し、当該ユーザのニックネームやパスワード、メールアドレスといった情報と対応付けて情報処理装置記憶部77に記憶されているランダムIDを特定し、そのランダムIDを更新すればよい。
 なお、図16に示す特定情報更新処理では、ステップS511およびステップS512の処理を実行することで共通鍵SKを生成する例を示しているが、受信した認証装置の公開鍵に対応する共通鍵SKを特定可能とすれば、ステップS511およびステップS512の処理を実行しなくてもよい。例えば、対応情報一覧771において認証装置の公開鍵と図13のステップS208Aの処理で生成した共通鍵SKとを紐付けて記憶しておき、受信した認証装置の公開鍵に基づいて共通鍵SKを特定し、特定した共通鍵SKを用いてステップS514の処理を実行すればよい。
 このように、ランダムIDを情報処理装置7の側に登録しておくことで、ユーザが認証装置1を新たなものに切り替えた場合であっても、煩雑な処理を行うことなく特定情報を再生成することができる。また、ユーザの生体情報そのものを情報処理装置7の側に登録することなく、特定情報の再生成が可能となり、セキュリティを担保することができる。また、認証装置1の側において共通鍵SKを生成すれば、情報処理装置7の側では既存の情報に基づいて処理が可能であるため、再度特定情報生成処理を実行する場合と比較して処理負担を軽減し、好適に特定情報を再生成することができる。
 以上説明したように、認証装置1では、バックグラウンドでのユーザの認証が行われ、認証に成功した場合に、ユーザが正当であることを特定するための特定情報を生成し、情報処理装置7に送信する。特定情報は、ユーザの生体情報に基づいて生成される場合もあるが、その場合でも当該特定情報は生体情報そのものではなく、また、当該特定情報から生体情報を生成することが不可能である。そのため、生体情報そのものが不正に取得されることを防止でき、セキュリティを確保することができる。また、ランダムIDはランダムに生成されるため、同一の生体情報(顔の特徴量)などの鍵データから複数の特定情報が生成でき、セキュリティを確保しつつ、ユーザの作業負担を軽減させることができ、ひいては安定してサービスを受けることができる。
 また、特定情報の検証結果が正常である場合に、情報処理装置7側に特定情報が登録されるため、一旦登録された以降は、特定情報によってユーザの正当性の確認が可能となる。したがって、セキュリティを確保しつつ、ユーザの作業負担を軽減させることができ、ひいては安定してサービスを受けることができる。さらに、一旦生成した特定情報を煩雑な処理を行うことなく更新することができ、また、認証装置1側で生成されたランダムIDの一部を変更することで更新でき、情報処理装置7側において変更する処理を行わなくとも特定情報の更新が可能であるため、更新の処理負担を軽減しつつ安定的にサービスを提供することができる。また、ランダムIDを情報処理装置7の側に登録しておくことで、ユーザが認証装置1を新たなものに切り替えた場合であっても、煩雑な処理を行うことなく特定情報を再生成することができることから、再度特定情報生成処理を実行する場合と比較して処理負担を軽減し、好適に特定情報を再生成することができる。
 (変形例)
 この発明は、上記実施の形態に限定されず、様々な変形及び応用が可能である。例えば、認証装置1や情報処理装置7は、上記実施の形態で示した全ての技術的特徴を備えるものでなくてもよく、従来技術における少なくとも1つの課題を解決できるように、上記実施の形態で説明した一部の構成を備えたものであってもよい。また、下記の変形例それぞれについて、少なくとも一部を組み合わせてもよい。
 上記実施の形態では、情報処理装置7がパーソナルコンピュータやスマートフォンやタブレット端末である例を示したが、これは一例である。情報処理装置7は、これらに限られず、例えば図19に示す認証システム100Aのように、ドアに設置された端末であってもよい。また、この他にも、例えば金庫に設置された端末や、金融機関やコンビニエンスストアに設置されているATM(Automatic Teller Machine)に設置された端末であってもよい。さらに、サービスを提供するサーバ側にて情報処理装置7の機能を実現するようにしてもよい。図19に示すように、情報処理装置7がドアに設置されている場合は、認証装置1により認証されたユーザの入室を許可するため、特定情報を用いて対象のユーザの正当性を判定し、正当性が確認できた場合にドアを解錠すればよい。すなわち、図15のステップS230の処理にてドアを開錠する処理が行われればよい。また、情報処理装置7がATMに設置された場合、特定情報を用いて対象のユーザの正当性を判定し、正当性が確認できた場合に金融手続を可能にすればよい。
 具体的に、上記実施の形態では、金融サービスのアプリケーションが実行された場合に認証処理が開始されたが、図19に示すように、情報処理装置7がドアに設置されている場合は、ドアを開錠するためのアプリケーションが実行された場合に認証処理を開始し、当該アプリケーションが起動されている間(起動されてから終了させるまでの期間)、認証処理がバックグラウンドで繰り返し実行されればよい。
 また、判定指示処理についても同様の期間、繰り返し実行されればよい。上述したように、特定情報生成処理については、対象ユーザに対して、提供されるサービス毎(または情報処理装置7毎)に1回実行されるため、ドアを開錠するサービスに対応して1つの特定情報(金融サービスとは異なる特定情報)が生成されることとなる。なお、図19に示すドアの開錠には、例えばコンサートなどのイベント会場への入場ゲートの開錠が含まれ、図19に示す例では、1つの情報処理装置7が1つのドアの開錠を行う例を示しているが、1つの情報処理装置が複数のドア(複数の入場ゲートを含む)の開錠を行うようにしてもよい。例えば、特定情報によりユーザの正当性が確認された場合、情報処理装置7から認証装置1に対しドア(入場ゲートを含む)の解錠キーを送信するようにすればよい。
 なお、認証処理については、常時バックグラウンドにて繰り返し実行されていてもよい。そして、ユーザが所望するサービスに対応するアプリケーションが起動されたタイミングで判定指示処理が開始されるようにしてもよい。
 その他にも、コンサートやイベントなどといったチケット所有者のみ入場可能な施設や、学歴やワクチン接種などの証明書など、ユーザ個人の正当性を確認してサービスを提供するような状況において当該認証システム100を適用可能である。いずれの状況下においても、生体情報それ自体が送受信されることはなく、かつ同一の生体情報(顔の特徴量)などの鍵データから複数の特定情報が生成でき、セキュリティを確保しつつ、ユーザの作業負担を軽減させることができ、ひいては安定してサービスを受けることができる。
 また、上記実施の形態における特定情報更新処理は、半年や1年といった予め定められた期間が経過したことにより実行される例を示したが、例えば3回特定情報更新処理を行って特定情報を3回更新したら、特定情報生成処理を実行して新たに特定情報を生成するといったように、予め設定された回数の更新が行われたら、新規に特定情報を生成するようにしてもよい。これによれば、時間経過とともに生体情報が変化したことで、より現状のユーザに近い情報を用いた特定情報を定期的に生成できる。
 また、上記実施の形態では、図13に示すステップS218の処理において情報処理装置7に特定情報を登録する例(対応情報一覧771として登録する例)を示したが、これは一例である。対応情報一覧771には、認証装置の公開鍵が登録されていれば、特定情報は登録されていなくてもよい。情報処理装置7の側では、図15に示すステップS222の処理において図13に示すステップS207A、S208A、S212~S214の処理を実行すれば、受信した特定情報と登録されている特定情報との比較をしなくとも正当性を判定できるためである。また、認証装置の公開鍵を登録することで、サービスの対象者となる認証装置1を特定可能となるためである。なお、対応情報一覧771に登録する情報は、認証装置の公開鍵に限られず、サービスの対象者となる認証装置1を特定可能な情報であれば任意の情報であってよい。
 なお、認証装置1や情報処理装置7は、専用の装置によらず、通常のコンピュータを用いて実現可能である。例えば、コンピュータに上述のいずれかを実現させるためのプログラムを格納した記録媒体から当該プログラムをコンピュータにインストールすることにより、上述の処理を実行する認証装置1や情報処理装置7を構成してもよい。また、複数のコンピュータが協働して動作することによって、1つの認証装置1や情報処理装置7を構成してもよい。
 また、上述の機能を、OS(Operating System)とアプリケーションとの分担、またはOSとアプリケーションとの協同により実現する場合等には、OS以外の部分のみを媒体に格納してもよい。
 また、搬送波にプログラムを重畳し、通信ネットワークを介して配信することも可能である。例えば、通信ネットワーク上の掲示板(BBS、Bulletin Board System)に当該プログラムを掲示し、ネットワークを介して当該プログラムを配信してもよい。そして、これらのプログラムを起動し、オペレーティングシステムの制御下で、他のアプリケーションプログラムと同様に実行することにより、上述の処理を実行できるように構成してもよい。
 本発明は、本発明の広義の精神と範囲を逸脱することなく、様々な実施形態及び変形が可能とされるものである。また、上述した実施形態は、この発明を説明するためのものであり、本発明の範囲を限定するものではない。すなわち、本発明の範囲は、実施形態ではなく、請求の範囲によって示される。そして、請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、この発明の範囲内とみなされる。
 本出願は、2022年2月4日に出願された日本国特許出願特願2022-16354号、2022年12月7日に出願された日本国特許出願特願2022-195916号に基づく。本明細書中に日本国特許出願特願2022-16354号の明細書、特許請求の範囲および図面全体、日本国特許出願特願2022-195916号の明細書、特許請求の範囲および図面全体を参照として取り込むものとする。
 本発明は、安定したサービスの提供に有用である。
 1 認証装置、2 インターネット、7 情報処理装置、10、70 通信部、11、71 撮影部、11A インカメラ、11B メインカメラ、12、72 音声入出力部、12A スピーカ、12B マイクロフォン、13 傾き検出部、14、73 操作入力部、15 指紋検出部、15A 左指紋センサ、15B 右指紋センサ、16 位置検出部、17 認証装置記憶部、18 認証装置制御部、19、79 表示部、21、81 プロセッサ、22、82 メモリ、23、83 表示コントローラ、24、84 表示機器、25、85 I/Oポート、26、86 記憶機器、27、87 通信機器、28、88 データバス、77 情報処理装置記憶部、78 情報処理装置制御部、99 金融機関、100、100A 認証システム、170 認証処理プログラム、171 認証用生体情報データベース、172 認証用振舞情報データベース、173 傾き情報テーブル、176 特定情報生成プログラム、181 認証用情報取得部、182 認証部、183、783 表示処理部、184 認証用情報更新部、185、785 データ送受信部、186 特定情報生成部、187、787 処理部、770 プログラム、771 対応情報一覧、781 判定用情報取得部、782 判定部

Claims (6)

  1.  ユーザの特徴量を取得する特徴量取得手段と、
     前記ユーザにより決定されたリカバリーコードを取得するリカバリーコード取得手段と、
     入力データが予め設定された閾値の範囲内であれば同一の値が算出される鍵導出関数を、前記鍵導出関数の演算内容に応じて設定される基準量に適用して原始鍵を生成する原始鍵生成手段と、
     前記特徴量と前記基準量とを用いて予め定められた二項演算を行い、前記原始鍵を再生成するための補助情報を生成する補助情報生成手段と、
     前記補助情報を前記リカバリーコードで暗号化して外部装置へ登録する補助情報登録手段と、
     を備える認証装置。
  2.  前記補助情報を前記外部装置から取得する補助情報取得手段と、
     前記ユーザの新たな特徴量である新特徴量を取得する新特徴量取得手段と、
     前記補助情報と前記新特徴量とを用いて前記予め定められた二項演算の逆演算を行い、前記基準量に対応する対応情報を生成する対応情報生成手段と、
     前記対応情報に前記鍵導出関数を適用して前記原始鍵を再生成する原始鍵再生成手段と、
     をさらに備える請求項1に記載の認証装置。
  3.  前記リカバリーコードと同一の同一リカバリーコードの入力を受け付ける同一リカバリーコード受付手段をさらに備え、
     前記原始鍵再生成手段は、
     前記補助情報取得手段で取得した前記補助情報を、前記同一リカバリーコード受付手段で受け付けた前記同一リカバリーコードで復号化し、復号化した前記補助情報と、前記新特徴量と、に基づいて前記対応情報生成手段で生成した前記対応情報に、前記鍵導出関数を適用して前記原始鍵を再生成する、
     請求項2に記載の認証装置。
  4.  前記補助情報と前記新特徴量とを用いて前記対応情報生成手段で生成した前記対応情報に基づいて、新たな補助情報を生成する新補助情報生成手段と、
     前記新たな補助情報を前記同一リカバリーコードまたは前記同一リカバリーコードとは異なる新たに取得したリカバリーコードで暗号化して外部装置へ登録することで前記補助情報を更新する補助情報更新手段と、
     をさらに備える請求項2または3に記載の認証装置。
  5.  認証装置により実行される認証支援方法であって、
     ユーザの特徴量を取得する特徴量取得ステップと、
     前記ユーザにより決定されたリカバリーコードを取得するリカバリーコード取得ステップと、
     入力データが予め設定された閾値の範囲内であれば同一の値が算出される鍵導出関数を、前記鍵導出関数の演算内容に応じて設定される基準量に適用して原始鍵を生成する原始鍵生成ステップと、
     前記特徴量と前記基準量とを用いて予め定められた二項演算を行い、前記原始鍵を再生成するための補助情報を生成する補助情報生成ステップと、
     前記補助情報を前記リカバリーコードで暗号化して外部装置へ登録する補助情報登録ステップと、
     を備える認証支援方法。
  6.  コンピュータを、
     ユーザの特徴量を取得する特徴量取得手段、
     前記ユーザにより決定されたリカバリーコードを取得するリカバリーコード取得手段、
     入力データが予め設定された閾値の範囲内であれば同一の値が算出される鍵導出関数を、前記鍵導出関数の演算内容に応じて設定される基準量に適用して原始鍵を生成する原始鍵生成手段、
     前記特徴量と前記基準量とを用いて予め定められた二項演算を行い、前記原始鍵を再生成するための補助情報を生成する補助情報生成手段、
     前記補助情報を前記リカバリーコードで暗号化して外部装置へ登録する補助情報登録手段、
     として機能させることを特徴とするプログラム。
PCT/JP2023/003421 2022-02-04 2023-02-02 認証装置、認証支援方法、及びプログラム WO2023149510A1 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2022016354 2022-02-04
JP2022-016354 2022-02-04
JP2022195916A JP7343680B2 (ja) 2022-02-04 2022-12-07 認証装置、認証支援方法、及びプログラム
JP2022-195916 2022-12-07

Publications (1)

Publication Number Publication Date
WO2023149510A1 true WO2023149510A1 (ja) 2023-08-10

Family

ID=87552559

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/003421 WO2023149510A1 (ja) 2022-02-04 2023-02-02 認証装置、認証支援方法、及びプログラム

Country Status (1)

Country Link
WO (1) WO2023149510A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012523734A (ja) * 2009-04-10 2012-10-04 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 装置とユーザ認証
WO2014175334A1 (ja) * 2013-04-24 2014-10-30 日本電気株式会社 暗号文照合システムと方法とプログラム
US20200076604A1 (en) * 2016-10-31 2020-03-05 Katholieke Universiteit Leuven Authentication method and system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012523734A (ja) * 2009-04-10 2012-10-04 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 装置とユーザ認証
WO2014175334A1 (ja) * 2013-04-24 2014-10-30 日本電気株式会社 暗号文照合システムと方法とプログラム
US20200076604A1 (en) * 2016-10-31 2020-03-05 Katholieke Universiteit Leuven Authentication method and system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SEO MINHYE, PARK JONG HWAN, KIM YOUNGSAM, CHO SANGRAE, LEE DONG HOON, HWANG JUNG YEON: "Construction of a New Biometric-Based Key Derivation Function and Its Application", SECURITY AND COMMUNICATION NETWORKS, vol. 2018, 2 December 2018 (2018-12-02), pages 1 - 14, XP055833194, ISSN: 1939-0114, DOI: 10.1155/2018/6107912 *

Similar Documents

Publication Publication Date Title
JP6571250B2 (ja) ある装置を使用して別の装置をアンロックする方法
EP3657370B1 (en) Methods and devices for authenticating smart card
US10826882B2 (en) Network-based key distribution system, method, and apparatus
US9660995B2 (en) Methods, systems, and computer readable media for combating device theft with user notarization
US20020095601A1 (en) Technique for establishing provable chain of evidence
JP2017519412A (ja) 認証装置の登録のための強化されたセキュリティ
KR102068041B1 (ko) 유저 바이오 데이터를 이용한 유저 인증 및 서명 장치와 방법
JP2007172002A (ja) 認証方法、携帯装置および情報処理装置
WO2022259569A1 (ja) 認証システム、認証装置、認証方法、及びプログラム
US20200015081A1 (en) Method for secure transmission of cryptographic data
WO2023149510A1 (ja) 認証装置、認証支援方法、及びプログラム
WO2019245437A1 (en) Method and electronic device for authenticating a user
JP7343680B2 (ja) 認証装置、認証支援方法、及びプログラム
WO2023047800A1 (ja) 認証装置、認証方法、認証システム、及びプログラム
TWI696963B (zh) 票證發行與入場驗證系統與方法及使用於票證發行與入場驗證系統之用戶終端裝置
CN118044154A (en) Authentication device, authentication method, authentication system, and program
CN116015627A (zh) 一种基于对称算法的人脸识别防篡改方法及系统
Libonati et al. Defending against device theft with human notarization
WO2007092429A2 (en) Secure system and method for providing same

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23749826

Country of ref document: EP

Kind code of ref document: A1