Portable electronic devices and IC cards

The integration of biometric authentication with password verification in IC cards addresses the challenge of managing multiple passwords, enhancing security and convenience by linking successful biometric verification to password verification, ensuring robust authentication.

JP7599939B2Active Publication Date: 2024-12-16KK TOSHIBA
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2020212444
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2020-12-22
Publication Date
2024-12-16
Estimated Expiration
2040-12-22

AI Technical Summary

Technical Problem

IC cards with multiple passwords registered require users to remember multiple passwords, compromising security when a single password is used for convenience, and existing biometric authentication methods do not adequately address this issue.

Method used

A portable electronic device equipped with a biosensor, communication interface, first memory for biometric information, and second memory for passwords, performs biometric authentication, linking successful biometric verification to password verification, thereby enhancing security and convenience by replacing multiple password entries with a single biometric authentication.

Benefits of technology

The solution ensures secure and convenient authentication by uniformly marking password verification as successful upon successful biometric authentication, allowing seamless integration of biometric and password verification, ensuring high security even if biometric authentication fails.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007599939000001
    Figure 0007599939000001
  • Figure 0007599939000002
    Figure 0007599939000002
  • Figure 0007599939000003
    Figure 0007599939000003
Patent Text Reader

Abstract

To provide a portable electronic device and an IC card capable of improving security while enhancing convenience by using biometric authentication.SOLUTION: According to an embodiment, the portable electronic device includes a biosensor, a communication interface, a first memory, a second memory, and a processor. The biosensor acquires biometric information of a person. The communication interface communicates with a host device. The first memory stores the biometric information of a registrant. The second memory stores a password. If the processor executes biometric authentication based on the biometric information acquired by the biometric sensor and the biometric information stored in the first memory in response to a command requesting biometric authentication received from the host device through the communication interface and the biometric authentication is successful, it is assumed that the collation status of the password stored in the second memory has been collated.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a portable electronic device and an IC card. [Background technology]

[0002] Conventionally, some IC cards as portable electronic devices have a function of performing person authentication using a password. For example, a common password that is not dependent on an application program (hereinafter, "application") may be registered in an IC card, or a password set for each application may be registered in the IC card. In recent years, IC cards have become more versatile, and more and more of them have multiple passwords registered.

[0003] For password verification, IC cards check whether the password entered by the user matches the registered password. If multiple passwords or authentication methods are registered, the IC card user must memorize multiple passwords for each purpose of use and enter a password that corresponds to the purpose of use of the IC card. On the other hand, if only a single password is registered on one IC card for the sake of user convenience, security will be reduced. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] JP 2007-157002 A Summary of the Invention [Problem to be solved by the invention]

[0005] In order to solve the above problems, the present invention provides a portable electronic device and an IC card that can improve security while increasing convenience by using biometric authentication. [Means for solving the problem]

[0006] According to an embodiment, a portable electronic device has a biometric sensor, a communication interface, a first memory, a second memory, and a processor. The biometric sensor acquires biometric information of a person. The communication interface communicates with a higher-level device. The first memory stores the biometric information of a registered person. The second memory stores a password. The processor executes biometric authentication using the biometric information acquired by the biometric sensor and the biometric information stored in the first memory in response to a command requesting biometric authentication received from the higher-level device via the communication interface, and stores a password in the second memory if the biometric authentication is successful. a password stored in the first memory that is used for the biometric authentication and that is associated with the biometric information stored in the first memory, and a matching state of the password stored in the first memory that is associated with the biometric information stored in the first memory is set to a matched state. Let us assume that. [Brief description of the drawings]

[0007] [Figure 1] FIG. 1 is a block diagram showing an example of the configuration of an IC card as a portable electronic device according to an embodiment. [Diagram 2] FIG. 2 is a flowchart for explaining an example of processing for a verification command by an IC card as a portable electronic device according to the embodiment. [Diagram 3] FIG. 3 is a diagram showing an example of a verification command supplied to an IC card as a portable electronic device according to the embodiment. [Figure 4] FIG. 4 is a diagram showing an example of a verification command supplied to an IC card as a portable electronic device according to the embodiment. [Diagram 5] FIG. 5 is a diagram showing an example of a verification command supplied to an IC card as a portable electronic device according to the embodiment. [Figure 6] FIG. 6 is a diagram showing a setting example of a first parameter in a verification command supplied to an IC card as a portable electronic device according to the embodiment. [Figure 7] FIG. 7 is a diagram showing a setting example of a second parameter in a verification command supplied to an IC card as a portable electronic device according to the embodiment. [Figure 8]FIG. 8 is a diagram showing an example of a table storing the matching state (matching result) of a plurality of passwords in an IC card as a portable electronic device according to the embodiment. [Figure 9] FIG. 9 is a flowchart for explaining an example of a process for verifying a password in response to a verification command by an IC card as a portable electronic device according to the embodiment. [Figure 10] FIG. 10 is a diagram showing an example of a table for storing management information for a plurality of passwords in an IC card as a portable electronic device according to the embodiment. [Figure 11] FIG. 11 is a flowchart for explaining an example of processing for a binary read command by an IC card as a portable electronic device according to the embodiment. [Figure 12] FIG. 12 is a diagram showing an example of a binary read command supplied to an IC card as a portable electronic device according to the embodiment. [Figure 13] FIG. 13 is a diagram showing a setting example of a first parameter in a binary read command supplied to an IC card as a portable electronic device according to the embodiment. [Figure 14] FIG. 14 is a diagram showing a setting example of a second parameter in a verification command supplied to an IC card as a portable electronic device according to the embodiment. [Figure 15] FIG. 15 is a diagram showing an example of a table for storing management information of data (EF) in an IC card as a portable electronic device according to the embodiment. [Figure 16] FIG. 16 is a diagram showing an example of the configuration of data (EF) in an IC card as a portable electronic device according to the embodiment. [Figure 17] FIG. 17 is a flowchart for explaining an example of processing for a verification command by an IC card as a portable electronic device according to the embodiment. [Figure 18] FIG. 18 is a diagram showing an example of a table for storing information indicating a password linked to fingerprint registration data in an IC card as a portable electronic device according to the embodiment. [Figure 19]FIG. 19 is a diagram showing an example of a table for storing management information for a plurality of passwords in an IC card as a portable electronic device according to the embodiment. [Figure 20] FIG. 20 is a flowchart for explaining an example of processing for a verification command by an IC card as a portable electronic device according to the embodiment. [Figure 21] FIG. 21 is a diagram showing an example of a table for storing management information for a plurality of passwords in an IC card as a portable electronic device according to an embodiment. [Figure 22] FIG. 22 is a flowchart for explaining an example of processing for a verification command by an IC card as a portable electronic device according to the embodiment. [Diagram 23] FIG. 23 is a diagram showing an example of a table for storing management information of fingerprint registration data registered for each IEF in an IC card as a portable electronic device according to the embodiment. [Figure 24] FIG. 24 is a flowchart for explaining a processing example including biometric authentication for a specific command using an IC card as a portable electronic device according to the embodiment. [Diagram 25] FIG. 25 is a flowchart for explaining a processing example including biometric authentication for a specific command using an IC card as a portable electronic device according to the embodiment. [Figure 26] FIG. 26 is a flowchart for explaining a first modified example of the process shown in FIG. 25 by an IC card as a portable electronic device according to the embodiment. [Figure 27] FIG. 27 is a flowchart for explaining a second modified example of the process shown in FIG. 25 by an IC card as a portable electronic device according to the embodiment. [Figure 28] FIG. 28 is a flowchart for explaining a third modified example of the process shown in FIG. 25 by an IC card as a portable electronic device according to the embodiment. [Figure 29] FIG. 29 is a flowchart for explaining a fourth modified example of the process shown in FIG. 25 by an IC card as a portable electronic device according to the embodiment. [Diagram 30] FIG. 30 is a flowchart for explaining a fifth modified example of the process shown in FIG. 25 by an IC card as a portable electronic device according to the embodiment. [Diagram 31] FIG. 31 is a flowchart for explaining a sixth modified example of the process shown in FIG. 25 by an IC card as a portable electronic device according to the embodiment. [Diagram 32] FIG. 32 is a flowchart for explaining a seventh modification of the process shown in FIG. 25 by an IC card as a portable electronic device according to the embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0008] Hereinafter, embodiments will be described with reference to the drawings. First, the configuration of an IC card 1 as a portable electronic device according to the embodiment will be described. FIG. 1 is a block diagram showing an example of the configuration of an IC card 1 as a portable electronic device according to an embodiment. The IC card 1 is an example of a portable electronic device that is activated (made operable) by power supplied from an external device. The IC card 1 executes processing in response to commands from a higher-level device. In this embodiment, the IC card 1 as a portable electronic device has a function of executing authentication using biometric information. For example, the IC card 1 is also called a smart card. The IC card 1 may also be implemented by replacing it with one function provided in a mobile terminal such as a smartphone, which is another example of a portable electronic device.

[0009] An IC card 1 as a portable electronic device according to an embodiment has a biometric authentication function that authenticates a person by biometric matching using biometric information acquired from the person. In the embodiment, the IC card 1 is described as having a biometric (fingerprint) authentication function that authenticates a person by fingerprint matching using a fingerprint as an example of biometric information. However, the biometric authentication function of the IC card 1 as a portable electronic device according to an embodiment is not limited to biometric matching using a fingerprint. For example, the portable electronic device exemplified by the IC card 1 may perform biometric authentication using biometric information other than a fingerprint.

[0010] In the configuration example shown in Fig. 1, the IC card 1 has a main body C. The main body C is formed in a card shape from, for example, plastic. The IC card 1 includes a module M as a control unit 11, a biometric matching unit 12, an LED 13, and the like within the main body C. For example, the module M is integrally formed with one or more IC chips connected to a communication interface. The module M as the control unit 11 is provided in the main body C in a state of being connected to the biometric matching unit 12 having an MPU 31 and a biometric sensor 32, and the LED 13.

[0011] In the configuration example shown in FIG. 1, a module M constituting the control unit 11 includes a processor 21, a ROM 22, a RAM 23, a data memory 24, and a communication interface 25. The processor 21 includes circuits that execute various processes. The processor 21 is, for example, a CPU (Central Processing Unit). The processor 21 controls the entire IC card 1. The processor 21 executes programs stored in the ROM 22 or the data memory 24 to realize various processing functions. However, some or all of the various functions executed by the processor 21, which will be described later, may be realized by a hardware circuit.

[0012] The ROM 22 is a non-volatile memory that functions as a program memory. The ROM 22 stores control programs, control data, and the like in advance. The ROM 22 is incorporated into the IC card 1 in a state in which the control programs, control data, and the like are stored during the manufacturing stage. The control programs and control data stored in the ROM 22 are incorporated in advance according to the specifications of the IC card 1. For example, the ROM 22 stores a program for the processor 21 to execute a process in response to a command received from an external device (card reader / writer).

[0013] The RAM 23 is a volatile memory that functions as a working memory. The RAM 23 also functions as a buffer that temporarily stores data being processed by the processor 21. For example, the RAM 23 functions as a communication buffer that temporarily stores data to be transmitted to and received from an external device via the communication interface 25.

[0014] The data memory 24 is a non-volatile memory in which data can be written and rewritten. The data memory 24 is composed of, for example, an EEPROM (registered trademark) (Electrically Erasable Programmable Read Only Memory). Programs and various data according to the operational use of the IC card 1 are written in the data memory 24. Program files or data files are defined in the data memory 24, and control programs and various data are written in these files. In addition, some or all of the areas of the data memory 24 are tamper-resistant, and data can be stored securely.

[0015] The data memory 24 includes a first memory for storing biometric information (authentication data) of a valid user (registered person) and a second memory for storing password registration data for password matching. The data memory 24 also stores various tables, which will be described later.

[0016] For example, the data memory 24 serving as the first memory stores biometric information (biometric registration data) of a registrant as data for performing biometric authentication. When the IC card 1 performs biometric authentication using a fingerprint, the data memory 24 stores fingerprint data of the registrant (fingerprint registration data). The fingerprint data of the registrant is a fingerprint image or fingerprint feature data for matching with fingerprint information acquired by a fingerprint sensor serving as the biometric sensor 32. Furthermore, fingerprint data for multiple fingers of one registrant may be registered in the data memory 24. Furthermore, when one IC card 1 is used by multiple users, the fingerprint data of multiple registrants who are legitimate users may be registered in the data memory 24.

[0017] The communication interface 25 has a communication control unit and an interface unit, and constitutes a communication unit. The communication interface 25 is an interface for communicating with a higher-level device that supplies power and commands to the IC card 1. The communication interface 25 realizes a communication function using a communication method corresponding to the interface of the external device. The communication interface 25 may also be configured to support multiple communication methods (for example, contact communication and non-contact communication).

[0018] When the IC card 1 is realized as a contact-type IC card, the communication interface 25 constitutes a communication unit that contacts and communicates with an external device. In this case, the communication interface 25 includes a contact unit that makes physical and electrical contact with a contact unit provided in a card reader / writer of the external device, and is constituted by a communication control circuit that controls the transmission and reception of signals via the contact unit.

[0019] Furthermore, when the IC card 1 is realized as a contactless IC card, the communication interface 25 constitutes a communication unit that communicates contactlessly (wirelessly) with a card reader / writer of an external device. In this case, the communication interface 25 includes an antenna that transmits and receives radio waves, and is composed of a modulation circuit for generating radio waves to be transmitted from the antenna, a demodulation circuit for generating a signal from the radio waves received by the antenna, and the like.

[0020] The biometric matching unit 12 has an MPU 31 and a biometric sensor 32, and is connected to a module M serving as the control unit 11. The biometric matching unit 12 also has a memory that stores an authentication program and the like that is used by the MPU 31 to perform biometric authentication by biometric (fingerprint) matching.

[0021] The biometric sensor 32 is an example of a biometric information acquisition unit that acquires fingerprint information as biometric information. In this embodiment, the biometric sensor 32 is a fingerprint sensor that reads the fingerprint information (fingerprint image) of a user. The fingerprint sensor as the biometric sensor 32 is provided so that a sensor for reading a fingerprint is exposed on the surface of the main body C of the IC card 1, and reads the fingerprint of a person's finger held over the exposed sensor portion. Note that the biometric sensor 32 is not limited to a fingerprint sensor, and may be one that acquires biometric information other than a fingerprint.

[0022] MPU 31 executes a biometric authentication program to perform biometric authentication using fingerprint information as biometric information acquired by biometric sensor 32. For example, MPU 31 extracts a fingerprint image from an image read by a fingerprint sensor as biometric sensor 32, and performs fingerprint authentication by comparing the fingerprint image extracted from the image read by the fingerprint sensor with a fingerprint image (or fingerprint feature data) of a registrant registered in data memory 24.

[0023] 1, MPU 31 provided separately from processor 21 executes biometric authentication by biometric (fingerprint) matching, but processor 21 may execute biometric authentication. When processor 21 executes biometric authentication, biometric information read by biometric sensor 32 may be supplied to processor 21. For example, processor 21 may extract fingerprint information from an image supplied from a fingerprint sensor serving as biometric sensor 32, and match the extracted fingerprint information with the fingerprint information of a registered person registered in data memory 24.

[0024] The LED 13 has a light emitting element. The light emitting state of the LED 13 is controlled by the control unit 11. The LED 13 is provided on the main body C such that the lit state can be visually recognized on the surface of the main body C, for example.

[0025] Next, the operation of the IC card 1 according to this embodiment will be described. The IC card 1 according to the embodiment has a function of operating in accordance with an existing communication protocol used for IC cards standardized by international standards, etc. The IC card 1 also has a biometric authentication function using biometric information acquired by a biometric sensor 32, and an authentication function by password matching. The IC card 1 stores (holds) at least one password data used for password matching. The IC card 1 according to the embodiment has a function capable of rewriting part or all of the password matching to biometric authentication.

[0026] Below, several operation examples will be described for rewriting the matching status (matching result) of some or all of the passwords to a matched status (matching successful, matching OK) in the IC card 1 when biometric authentication is successful. FIG. 2 is a flowchart showing an example of processing when the IC card 1 receives a verification command and an example of processing for replacing all password verification results with "verified" if biometric authentication in the IC card 1 is successful.

[0027] The IC card 1 is started up by receiving power from a host device and is ready to receive commands from the host device. The processor 21 of the IC card 1 receives commands in a specific format from the host device via the communication interface 25 and executes the process requested by the received command.

[0028] 2, when processor 21 of IC card 1 receives a command from a higher-level device via communication interface 25 (S11, YES), it determines whether the received command is a verification command requesting verification (S12). Here, it is assumed that the command supplied from the higher-level device to IC card 1 is configured in accordance with a predefined standard. Processor 21 of IC card 1 executes a program stored in ROM 22 or data memory 24 to interpret the command configured in accordance with the standard and executes processing according to the command.

[0029] In this embodiment, if the received command is not a verification command (S12, NO), the processor 21 executes the command processing specified by the command (S13). As an example of other command processing, processing for a binary data read command will be described later. If the received command is a verification command (S12, YES), processor 21 checks the parameters specified by the received verification command as information indicating the processing content, and executes the processing content specified by the parameters.

[0030] 3 to 5 are diagrams showing examples of the configuration of a verification command supplied from a higher-level device to the IC card 1. In FIG. In this embodiment, the command supplied from the higher-level device to the IC card 1 is configured in a format in which "CLA", "INS", P1", "P2", "Lc", and "Data" are arranged as shown in Figures 3 to 5. "CLA" and "INS" indicate the content of the command. For example, as shown in Figures 3 to 5, the collation command has "CLA" and "INS" as "00" and "20". Furthermore, "P1" and "P2" are parameters whose meanings are defined according to the command indicated by "CLA" and "INS". "Lc" indicates the length of the data stored in "Data", and "Data" indicates the data to be attached.

[0031] FIG. 6 is a diagram showing the meaning of the first parameter "P1" in the verification command. In the example shown in Fig. 6, when "P1" in the verification command is "00", this indicates that the verification command is a command requesting password verification. For example, the verification command shown in Fig. 5 indicates that it is a command requesting password verification because "P1" is "00". In the command shown in Fig. 5, password data (input password data) of the length (size) indicated by "Lc" is stored in "Data".

[0032] Also, in Fig. 6, when "P1" in the matching command is "01", it indicates that the matching command is a command requesting input and matching of fingerprint information (biometric authentication). For example, the matching command shown in Fig. 3 and Fig. 4 has "P1" of "01", which indicates that the command is a command requesting biometric authentication.

[0033] According to the definition exemplified in Fig. 6, the processor 21 judges whether or not the verification command specifies password verification (S14). Here, the processor 21 judges whether or not password verification is required based on whether or not the parameter "P1" in the verification command is "00". If P1 of the received verification command is "00", that is, if the verification command is a command requesting password verification (S14, YES), the processor 21 executes password verification (S15). The password verification process will be described in detail later.

[0034] If P1 of the received matching command is not “00”, that is, if the matching command is not a command requesting password matching (S14, NO), the processor 21 determines whether the matching command requests biometric (fingerprint) authentication (S16). If P1 of the received verification command is neither "00" nor "01", that is, if the verification command does not specify either password verification or biometric authentication (S16, NO), the processor 21 determines that the verification method specified by the verification command is unknown (the value of P1 is abnormal). In this case, the processor 21 generates a status word including an error notification indicating that the value of P1 in the verification command is abnormal, transmits the biometric status word to the upper device as a response to the command (S17), and enters a state of waiting for the next command to be received.

[0035] If P1 of the received matching command is "01", that is, if the matching command is a command requesting biometric matching (S16, YES), the processor 21 identifies a password that reflects the result of biometric authentication (a password that is to be matched if the biometric authentication is successful). Here, the processor 21 identifies a password that reflects the authentication result of biometric authentication based on the value of P2, which is a second parameter in the matching command.

[0036] FIG. 7 is a diagram showing the meaning of the second parameter "P2" in the verification command. In the setting example shown in Figure 7, when "P1" in the verification command is "00", the value stored in "P2" becomes information indicating a password that sets the verification status (verification result) to verified (verification successful, OK) depending on the success of the biometric authentication.

[0037] According to the definition shown in Fig. 7, when the IC card 1 receives a command with "P1" of "01" (a verification command requesting biometric authentication) with "P2" of "FF" from the higher-level device, the IC card 1 interprets this as meaning that the verification results for all passwords are set to verified (verification successful, verification OK) in response to the success of the biometric authentication. In other words, when the IC card 1 receives a verification command with "P2" of "FF" as shown in Fig. 3, the IC card 1 executes a process of setting the verification results for all passwords to verified in response to the success of the biometric authentication.

[0038] Furthermore, when "P2" in a matching command requesting biometric authentication is "FE," the IC card 1 interprets this as meaning that if biometric authentication is successful, the matching result for the password linked to the biometric information (fingerprint registration data) for which biometric matching was successful will be set to "matched" (matching successful, matching OK). In other words, when a matching command with "P2" of "FE" as shown in Fig. 4 is received, the IC card 1 executes a process of setting the matching result for the password linked to the fingerprint registration data used for biometric matching to "matched" in response to the success of biometric authentication.

[0039] Furthermore, if "P2" in a matching command requesting biometric authentication is a value other than special values ​​(e.g., "FF" and "FE"), the value of P2 is interpreted as a value (IEF: Internal Elementary File) indicating a password that sets the matching result as "matched" if the biometric authentication is successful. In other words, if "P2" in a matching command requesting biometric authentication is a value (IEF: Internal Elementary File) indicating a password, the IC card 1 interprets this as setting the matching result for the specified password (IEF) as "matched" (matching successful, matching OK) if the biometric authentication is successful.

[0040] Here, the processor 21 operates according to the definition exemplified in Fig. 7. In this case, when P2 of the received matching command is "FF", the processor 21 determines that all password matching results have been matched in response to the success of biometric authentication. In other words, when P1 of the received matching command is "01" and P2 is "FF" (S18, YES), the processor 21 interprets that all password matching results have been matched in response to the success of biometric authentication, and causes the biometric matching unit 12 to input biometric information and perform biometric matching (S20, S21).

[0041] For example, the processor 21 transmits the fingerprint data (fingerprint registration data) of the registrant registered in the data memory 24 to the biometric matching unit 12, and instructs the biometric matching unit 12 to input the fingerprint data (input fingerprint data) using the biometric sensor 32 and to compare the fingerprint registration data with the input fingerprint data. The MPU 31 of the biometric matching unit 12 holds the fingerprint registration data supplied under the control of the processor 21, and inputs the fingerprint data using the biometric sensor 32 (S20). When the biometric sensor 32 inputs the fingerprint data, the MPU 31 compares the fingerprint data acquired by the biometric sensor 32 (input fingerprint data) with the fingerprint registration data (S21), and supplies the comparison result to the processor 21.

[0042] The processor 21 determines whether or not the biometric authentication has been successful according to the matching result from the biometric matching unit 12. The processor 21 also lights up the LED 13 according to the result of the biometric authentication. For example, the processor 21 lights up the LED 13 in a lit state indicating that the biometric authentication is being performed while the input of biometric information and the biometric matching are being performed in the biometric matching unit 12. Furthermore, if the biometric authentication is successful, the processor 21 lights up the LED 13 in a lit state indicating that the biometric authentication has been successful, and if the biometric authentication has failed, the processor 21 lights up the LED 13 in a lit state indicating that the biometric authentication has failed.

[0043] If biometric authentication by biometric matching in the biometric matching unit 12 fails (S22, YES), the processor 21 generates a status word indicating matching failure (NG) and transmits the generated status word to the higher-level device that sent the matching command (S23). If biometric authentication by biometric matching in the biometric matching unit 12 is successful (S22, YES), the processor 21 stores information (flag) indicating that matching has been completed (successful, OK) for all passwords (IEF) (S24).

[0044] FIG. 8 is a diagram showing an example of the configuration of a password matching status table for recording the matching result (matching status) for a password. The example shown in Fig. 8 shows a state in which information indicating that the matching status for all passwords has been matched is stored in the matching status table. The matching status table as shown in Fig. 8 is provided in the data memory 24 or the RAM 23. For example, the processor 21 provides the matching status table as shown in Fig. 8 in the data memory 24, and when biometric authentication through biometric matching by the biometric matching unit 12 is successful, sets the matching results (matching status) for all passwords in the matching status table to information indicating that matching has been completed.

[0045] If the second parameter (P2) of the matching command requesting biometric authentication is "FF", and if biometric matching by the biometric matching unit 12 is successful (S22, YES), the processor 21 stores information (flag) indicating that matching results have been matched for all passwords (matching successful) (S24). After the matching results for all passwords are determined to be matched in response to the success of biometric authentication, the processor 21 transmits a status word indicating normal completion to the upper device that is the sender of the matching command (S25), and ends the series of processes for the matching command.

[0046] Next, the password verification process as the process at S15 shown in FIG. 2 will be described. FIG. 9 is a flowchart for explaining a process example of the password verification process in the IC card 1. As shown in FIG. As described above, in the process shown in FIG. 2, if the first parameter (P1) in the received verification command is "00" (S14, YES), the processor 21 executes the password verification process (S15).

[0047] 9, the processor 21 determines whether or not an IEF specified by a second parameter (P2) in the received verification command requesting password verification exists (S31). The IEF is a file that stores passwords stored in the data memory 24. The processor 21 determines whether or not the specified password exists based on whether or not an IEF specified by the received verification command requesting password verification exists.

[0048] FIG. 10 is a diagram illustrating an example of a password management table for managing passwords. In the example shown in Fig. 10, the password management table stores, for each IEF, password registration data, length information, a retry counter, and an initial value of the retry counter in association with each other. The IEF is identified by a number serving as identification information (ID) indicating the password (IEF). The password registration data is password data that is registered in advance. The length information indicates the length of the password data stored as the password registration data.

[0049] The retry counter stores a value indicating the remaining number of times (number of retries) that password matching can be performed using the corresponding password. The initial value of the retry counter indicates the upper limit of matching using the corresponding password. When the retry counter is reset, the initial value of the retry counter, which is the upper limit, is set, and the counter counts down each time matching fails. The retry counter is returned to its initial value when matching using the corresponding password is successful. However, when the retry counter is 0, the IC card 1 is in a locked state, and it becomes impossible to return the retry counter to its initial value by password matching, etc.

[0050] If the IEF specified by the received verification command does not exist (S31, NO), the processor 21 generates a status word indicating that the specified IEF (password) does not exist, and transmits the generated status word to the host device that is the sender of the verification command (S32). When a status word indicating that the specified IEF does not exist is transmitted, the processor 21 waits for the input of the next command.

[0051] If an IEF specified by the received verification command exists (S31, YES), the processor 21 determines whether or not the IEF specified by the received verification command is in a locked state (S33). The processor 21 determines whether or not the password (IEF) specified by the command is in a locked state based on the value of a retry counter stored in a password management table such as that shown in Fig. 10. For example, if the retry counter corresponding to the specified IEF is 0, the processor 21 determines that the IEF is in a locked state.

[0052] If the IEF specified by the verification command is in a locked state (S33, YES), the processor 21 generates a status word indicating the locked state and transmits the generated status word to the host device that is the sender of the verification command (S34). When the processor 21 transmits a status word indicating that the specified IEF is in a locked state, the processor 21 waits for input of the next command.

[0053] If the IEF specified by the comparison command is not in a locked state (unlocked state) (S33, YES), the processor 21 compares the password data (input password) stored in Data of the comparison command with the password data (password registration data) of the IEF specified by the comparison command (S35). If the input password matches the password registration data of the specified IEF, the processor 21 determines that the password comparison requested by the comparison command has been successful. On the other hand, if the input password does not match the password registration data of the specified IEF, the processor 21 determines that the password comparison requested by the comparison command has failed.

[0054] If the password verification fails (S36, NO), the processor 21 resets the number of retries by counting down the retry counter for the specified IEF, and resets the information (flag) indicating the verification result to an unverified state (S37). Furthermore, the processor 21 transmits a status word indicating that the password verification has failed to the higher-level device that sent the verification command (S38), and enters a state of waiting for the next command to be received.

[0055] If the password verification is successful (S36, YES), the processor 21 resets the number of retries to the initial value by setting the retry counter for the specified IEF to the initial value, and sets the information (flag) indicating the verification result to a verified (verification successful) state (S39). Furthermore, the processor 21 transmits a status word indicating that the password verification was successful to the higher-level device that sent the verification command (S40), and enters a state of waiting for the next command to be received.

[0056] Next, command processing (data read processing) for a binary read command requesting reading of binary data will be described as an example of command processing in the IC card 1. FIG. 11 is a flowchart for explaining a data read process in response to a binary read command as an example of command processing by the IC card 1. As shown in FIG. 2, if the received command is not a verification command (S12, NO), the processor 21 executes command processing according to the received command (S13). The processing example shown in FIG 11 shows a processing example when the received command is a binary read command requesting the reading of binary data.

[0057] Fig. 12 is a diagram showing an example of the configuration of a binary read command. Fig. 13 is a diagram showing an example of the configuration of a first parameter (P1) in the binary read command. Fig. 14 is a diagram showing an example of the configuration of a second parameter (P2) in the binary read command. As shown in FIG. 12, in the binary read command, "CLA" and "INS" are "00" and "B0". Furthermore, "P1" of the binary read command stores a value indicating the binary data to be read. In the example shown in FIG. 13, "P1" of the binary read command stores a value indicating the file (EF: Elementary File) in which the data to be read is stored. "P2" of the binary read command stores a value indicating the address to be read. In the example shown in FIG. 14, "P2" of the binary read command stores an address (relative address) indicating the read position in the EF specified by "P1".

[0058] Fig. 15 is a diagram showing an example of an EF management table that stores management information of the EFs that store data, and Fig. 16 is a diagram showing an example of the configuration of the EFs in the data memory 24. 15 is stored in, for example, the data memory 24. In the EF management table, data indicating the size, physical address, read access right, write access right, etc. are stored for each EF. The size indicates the size of the actual data in the EF. The physical address indicates the location (write start position) in the data memory 24 where the actual data of the EF is stored.

[0059] The read access right stores information indicating the authority to read data from the EF. For example, in the read access right, "00" indicates that access to the data in the EF is free. "0x" indicates that successful matching with the authentication information stored in IEF(0x) is required to access the data in the EF. Here, an IEF with a number (ID) of xx is referred to as IEF(xx).

[0060] In the EF management table as shown in Fig. 15, information indicating the read access rights and write access rights for the EF is stored. The read access right of "01" indicates that the password verification result of the password of IEF(01) must have been verified in order to read data from the EF. The read access right of "01", "02", "03", and "04" for EFs indicate that the password verification results of IEF(01), IEF(02), IEF(03), and IEF(04) must have been verified as a condition (authority) for reading data, and "00" indicates that access to the data of the EF is free.

[0061] This indicates that in order to read data from an EF with a write access right of "04", the password verification result of the IEF(04) password must have been verified. EFs with write access right of "01", "02", "03", and "04" indicate that the password verification results of IEF(01), IEF(02), IEF(03), and IEF(04) must have been verified as a condition (authority) for writing data, and "00" indicates that access to the data of the EF is free.

[0062] As shown in Fig. 16, in the EF, real data is stored at a physical address specified in the EF management table shown in Fig. 15. For example, "real data 1" stored at address "1000h" shown in Fig. 16 means that the size of EF "01" (EF with data number "01") shown in Fig. 15 is "100h" data, the read access right is "00", and the write access right is "04".

[0063] 11, if the received command is not a binary read command (S51, NO), the processor 21 executes command processing according to the received command (S52). If the received command is a binary read command (S51, YES), the processor 21 executes data read processing according to the values ​​stored in "P1" and "P2" of the received binary read command.

[0064] That is, when a binary read command is received (S51, YES), the processor 21 judges whether or not a file (EF) of data to be read, which is specified by the command, exists (S53). If the EF specified by the binary read command does not exist (S53, NO), the processor 21 transmits a status word indicating that the specified data (EF) does not exist to the higher-level device that sent the command (S54), and waits for the next command.

[0065] If the data (EF) specified by the received binary read command exists (S53, YES), the processor 21 checks the read access right for the specified EF (S55). For example, the processor 21 checks the read access right for the specified EF by referring to information stored in an EF management table such as that shown in FIG.

[0066] If the read access right for the EF specified in the binary read command is not satisfied (S56, NO), the processor 21 determines that it is not possible to read data from the EF specified in the binary read command. In this case, the processor 21 transmits a status word indicating that there is no authority (access right) to read data from the specified EF to the host device that is the sender of the binary read command (S57), and enters a state of waiting for reception of the next command.

[0067] Furthermore, if the access right to the EF specified in the binary read command is satisfied (S56, YES), the processor 21 reads the data of the EF specified in the command (S58). For example, the processor 21 refers to the information stored in the EF management table and reads the data of the EF from the read start position specified as a relative address in the command. After reading the data, the processor 21 transmits a status word including the read data and information indicating normal completion to the host device that transmitted the binary read command (S59), and waits to receive the next command.

[0068] The above process is an example of processing in which all password matching results are set to a matched (matching successful) state when biometric authentication is successful on the IC card 1. According to the above process, when biometric authentication is successful in response to a biometric matching request, the matching results for the passwords registered in the IC card 1 can be set to matched (matching successful) across the board, making it possible to replace password matching with a simple process and to replace password matching with a highly secure biometric authentication. Furthermore, according to the above process example, the IC card is able to perform not only biometric authentication but also password matching, so that password matching can be performed even if a malfunction occurs in the biometric authentication function.

[0069] Next, a process will be described in which the result of matching the password linked to the registered biometric information (registered fingerprint data) used in the biometric authentication is set to a matched state when the biometric authentication in the IC card 1 is successful. FIG. 17 is a flowchart showing an example of a process for setting the result of matching the password linked to the fingerprint registration data used in the biometric authentication to "matched" when the biometric authentication in the IC card 1 is successful. In the process shown in FIG. 2 as described above, if P1 of the received matching command is “01” and P2 is “FE” (S19, YES), the processor 21 performs a process to mark the matching result against the password linked to the fingerprint registration data as “matched” if the biometric authentication is successful, as shown in FIG. 3.

[0070] FIG. 18 is a diagram showing an example of a corresponding password setting table in which passwords are linked to fingerprint registration data as biometric information of a registrant used in fingerprint matching as biometric authentication. In the example shown in Fig. 18, multiple passwords (IEF) are linked to one fingerprint registration data in the corresponding password setting table. According to the example shown in Fig. 18, when biometric authentication using fingerprint registration data is successful, the password of IEF(01) and the password of IEF(03) are considered to have been matched (matching successful). Note that, if all passwords are linked to fingerprint registration data in the corresponding password setting table as shown in Fig. 18, it is also possible to make the matching results of all passwords matched when biometric authentication using the fingerprint registration data is successful.

[0071] That is, if P1 of the received matching command is “01” and P2 is “FE” (S17, YES), the processor 21 causes the biometric matching unit 12 to perform biometric authentication using the fingerprint registration data for which a corresponding password is set, as shown in FIG. 18 (S61, S62).

[0072] For example, processor 21 transmits the fingerprint data (fingerprint registration data) of a registrant registered in data memory 24 in a state linked to a corresponding password to biometric matching unit 12, and instructs biometric matching unit 12 to input fingerprint data (input fingerprint data) using biometric sensor 32 and compare the fingerprint registration data with the input fingerprint data. MPU 31 of biometric matching unit 12 inputs fingerprint data using biometric sensor 32 (S61), compares the fingerprint data input by biometric sensor 32 (input fingerprint data) with the fingerprint registration data (S62), and supplies the comparison result to processor 21.

[0073] The processor 21 determines whether or not the biometric authentication has been successful according to the matching result from the biometric matching unit 12. The processor 21 also lights up the LED 13 according to the result of the biometric authentication. For example, the processor 21 lights up the LED 13 in a lit state indicating that the biometric authentication is being performed while the input of biometric information and the biometric matching are being performed in the biometric matching unit 12. Furthermore, if the biometric authentication is successful, the processor 21 lights up the LED 13 in a lit state indicating that the biometric authentication has been successful, and if the biometric authentication has failed, the processor 21 lights up the LED 13 in a lit state indicating that the biometric authentication has failed.

[0074] If biometric authentication by biometric matching in the biometric matching unit 12 fails (S63, NO), the processor 21 generates a status word indicating a failure of biometric authentication (matching NG), transmits the generated status word to the higher-level device that sent the matching command (S64), and waits to receive the next command.

[0075] If biometric authentication by biometric matching in the biometric matching unit 12 is successful (S63, YES), the processor 21 stores information (flag) indicating that the matching result has been matched (matching successful, OK) with the password (IEF) linked to the fingerprint registration data used for the biometric authentication (S65).

[0076] FIG. 19 is a diagram showing an example of a matching state table in the case where the matching result for the password linked to the fingerprint registration data shown in FIG. 18 is "matched" (matching successful, OK). In the example shown in Fig. 19, the matching status of IEF(01) and IEF(03) is "matched", and the matching status of the other IEFs is "unmatched". Referring to the table shown in Fig. 18, when biometric authentication using the fingerprint registration data shown in Fig. 18 is successful, the processor 21 sets the matching status of IEF(01) and IEF(03) linked to the fingerprint registration data to "matched".

[0077] That is, when the second parameter (P2) of the received matching command is "FE", the processor 21 sets the matching result of the password linked to the biometric registration data used for the biometric matching to "matched" (matching successful) when the biometric matching by the biometric matching unit 12 is successful. After setting the matching result of the password linked to the fingerprint registration data as "matched" in response to the success of the biometric authentication, the processor 21 transmits a status word indicating normal completion to the upper device that is the sender of the matching command (S66), and enters a state of waiting for reception of the next command.

[0078] According to the above process, the IC card executes biometric authentication in response to a matching command requesting biometric matching, and when the biometric authentication is successful, the matching result of the password linked to the biometric registration information (fingerprint registration data) used in the biometric authentication is set to a matched (matching successful) state. As a result, when the biometric authentication in response to the biometric matching request is successful, the IC card can set the matching result of the password linked to the biometric registration information to a matched (matching successful), and can replace the matching of the password linked to the biometric registration information with biometric authentication with high security. Furthermore, according to the above process example, the IC card is able to perform not only biometric authentication but also password matching, so that password matching can be performed even if a malfunction occurs in the biometric authentication function.

[0079] Next, a process will be described in which the result of password verification of the IEF specified in the verification command is set to a verified state when biometric authentication in the IC card 1 is successful. FIG. 20 is a flowchart showing an example of processing for setting the result of matching for a password designated by a command to "matched" when biometric authentication in the IC card 1 is successful in the processing shown in FIG. 2, if P1 of the received collation command is "01" and P2 is a value other than "FF" and "FE" (S19, NO), the processor 21 judges whether or not an IEF specified by P2 of the received collation command exists (S71). If an IEF specified by P2 does not exist (S71, NO), the processor 21 transmits a status word indicating that the specified IEF does not exist to the host device that sent the command (S72), and enters a state of waiting for the next command.

[0080] If there is an IEF specified by P2 of the comparison command requesting biometric authentication (S71, YES), the processor 21 performs biometric authentication using the fingerprint registration data registered corresponding to the IEF specified in the received comparison command.

[0081] Processor 21 transmits the fingerprint registration data corresponding to the specified IEF to biometric matching unit 12, and instructs biometric matching unit 12 to input fingerprint data using biometric sensor 32 and to compare the fingerprint registration data with the input fingerprint data. MPU 31 of biometric matching unit 12 inputs fingerprint data using biometric sensor 32 (S73), compares the fingerprint data input by biometric sensor 32 (input fingerprint data) with the fingerprint registration data specified by processor 21 (S74), and supplies the comparison result to processor 21.

[0082] The processor 21 determines whether the biometric authentication has been successful or not according to the matching result from the biometric matching unit 12 (S75). The processor 21 also lights up the LED 13 according to the result of the biometric authentication. For example, the processor 21 lights up the LED 13 in a lit state indicating that the biometric authentication is being performed while the biometric information is being input and biometric matching is being performed in the biometric matching unit 12. Furthermore, if the biometric authentication is successful, the processor 21 lights up the LED 13 in a lit state indicating that the biometric authentication has been successful, and if the biometric authentication has failed, the processor 21 lights up the LED 13 in a lit state indicating that the biometric authentication has failed.

[0083] If biometric authentication using the fingerprint registration data corresponding to the specified IEF fails (S75, NO), processor 21 resets the information indicating the matching result for the password of the specified IEF to an unmatched state (S76), transmits a status word indicating biometric authentication failure (matching NG) to the higher-level device that sent the matching command (S77), and waits to receive the next command.

[0084] For example, FIG. 21 is a diagram showing an example of a matching state table when the matching result for the password is "matched" (matching successful, OK). If the IEF specified by P2 of the received matching command is IEF(01), when biometric authentication using the fingerprint registration data corresponding to IEF(01) fails, the processor 21 resets the matching status of IEF(01) to an unmatched state, as shown in the matching status table in FIG. 21.

[0085] If the biometric authentication using the fingerprint registration data corresponding to the specified IEF is successful (S75, YES), the processor 21 sets the password matching result of the specified IEF to information (flag) indicating that matching has been completed (matching successful, OK) (S78). For example, if the IEF specified by P2 of the received matching command is IEF(02) and the biometric authentication using the fingerprint registration data corresponding to IEF(02) is successful, the processor 21 sets the matching status of IEF(02) to "01", which is a value indicating that matching has been completed, as shown in the matching status table in FIG.

[0086] After determining that the password matching result of the specified IEF has been matched in response to successful biometric authentication, the processor 21 transmits a status word indicating successful completion to the upper device that sent the matching command (S79), and waits to receive the next command.

[0087] Next, a case will be described in which the IC card 1 sets an upper limit on the number of retries for the verification process for each IEF that stores a password. FIG. 23 is a diagram showing an example of the configuration of a management table (management table for registered data) for managing biometric registered data registered for each IEF. In the example shown in Fig. 23, the management table of registration data stores fingerprint registration data, length, retry counter, and initial value of the retry counter for each IEF that stores a password. Fingerprint registration data and passwords are registered in pairs using a table such as that shown in Fig. 23. This allows the IC card 1 to execute generation and authentication using fingerprint registration data paired with the password of the IEF (ID) specified by the command, and can mark the result of matching the paired password as having been matched if the biometric authentication is successful.

[0088] In addition, in the management table shown in Fig. 23, a retry counter is set for each fingerprint registration data corresponding to an IEF. The retry counter indicates the remaining number of matching attempts that can be made using the corresponding fingerprint registration data. The retry counter is set to the upper limit of the allowable number of matching attempts (number of matching failures) as its initial value, and counts down each time a matching fails. As a result, the retry counter stores a value indicating the remaining number of matching attempts (number of retries) that can be made using the fingerprint registration data.

[0089] The retry counter may be a common value for the paired biometric enrollment data (fingerprint enrollment data) and password. In the case where a common retry counter is used for the paired biometric enrollment data and password, the retry counter indicating the remaining number of times of biometric matching using the biometric enrollment data stored in the management table of enrollment data shown in Fig. 23 is shared with the remaining number of times of password matching for the paired password (the retry counter for the paired password).

[0090] For example, if a retry counter is shared between paired biometric registration data and a password, when password matching fails, the retry counter corresponding to the biometric registration data paired with the password is also counted down. Also, when biometric authentication using the biometric registration data fails, the retry counter corresponding to the password paired with the biometric registration data is also counted down.

[0091] The retry counter may have different values ​​for the paired biometric enrollment data and password. In this case, the remaining number of times of biometric matching using the biometric enrollment data in the management table of enrollment data is counted separately from the remaining number of times of password matching using the paired password.

[0092] For example, if the retry counters for the paired biometric registration data and password are managed with different values, when password matching fails, the retry counter for the password is counted down, but the retry counter for the biometric registration data paired with the password is not updated. Also, when biometric authentication using the biometric registration data fails, the retry counter for the biometric registration data is counted down, but the retry counter for the password paired with the biometric registration data is not updated (counted down).

[0093] In addition, when the retry counters for the paired biometric enrollment data and password are managed with different values, the processor 21 may lock both the paired biometric enrollment data and password when the retry counter for either the paired biometric enrollment data or password becomes 0 (the number of retries exceeds the upper limit). In this way, the IC card can lock the biometric authentication using the biometric enrollment data paired with the password when the number of retries for password matching exceeds the upper limit, and can lock the password matching using the password paired with the biometric enrollment data when the number of retries for biometric authentication using the biometric enrollment data exceeds the upper limit.

[0094] Depending on the operation of the IC card 1, even if the retry counters for the paired biometric enrollment data and password are managed with different values, the processor 21 may control the lock state for each of the paired biometric enrollment data and password separately. That is, even if the number of retries for password matching exceeds the upper limit, the IC card may not lock the biometric authentication using the biometric enrollment data if the retry counter for the biometric enrollment data paired with the password does not exceed the upper limit. In this case, the IC card 1 may also reset the retry counter corresponding to the paired password when the biometric authentication using the biometric enrollment data is successful.

[0095] In addition, even if the number of retries for biometric authentication using biometric registration data exceeds an upper limit, the IC card may not lock password verification using the password if the retry counter for the password paired with the biometric registration data does not exceed the upper limit. In this case, the IC card 1 may also reset the retry counter corresponding to the paired biometric registration data when password verification is successful.

[0096] In the processing example shown in Fig. 22, if an IEF specified by the command exists (S81, YES), the processor 21 judges whether or not the fingerprint registration data corresponding to the specified IEF is in a locked state (S83). For example, the processor 21 judges whether or not the fingerprint registration data corresponding to the specified IEF is in a locked state based on whether or not the retry counter for the fingerprint registration data corresponding to the specified IEF is 0 in the registration data management table as shown in Fig. 23.

[0097] If the biometric authentication retry counter corresponding to the specified IEF is 0, i.e., if the device is in a locked state (S83, YES), the processor 21 sends a status word indicating that the device is in a locked state to the higher-level device that sent the command (S84), and waits to receive the next command.

[0098] If the retry counter for the biometric authentication corresponding to the specified IEF is not 0, that is, if the device is not in a locked state (S83, NO), the processor 21 executes biometric authentication using the fingerprint registration data corresponding to the specified IEF. The processor 21 transmits the fingerprint registration data corresponding to the specified IEF to the biometric matching unit 12, and instructs the biometric matching unit 12 to input fingerprint data using the biometric sensor 32 and to compare the fingerprint registration data with the input fingerprint data. The MPU 31 of the biometric matching unit 12 inputs fingerprint data using the biometric sensor 32 (S85), compares the fingerprint data input by the biometric sensor 32 (input fingerprint data) with the fingerprint registration data specified by the processor 21 (S86), and supplies the comparison result to the processor 21.

[0099] The processor 21 determines whether or not the biometric authentication has been successful according to the matching result from the biometric matching unit 12. The processor 21 also lights up the LED 13 according to the result of the biometric authentication. For example, the processor 21 lights up the LED 13 in a lit state indicating that the biometric authentication is being performed while the input of biometric information and the biometric matching are being performed in the biometric matching unit 12. Furthermore, if the biometric authentication is successful, the processor 21 lights up the LED 13 in a lit state indicating that the biometric authentication has been successful, and if the biometric authentication has failed, the processor 21 lights up the LED 13 in a lit state indicating that the biometric authentication has failed.

[0100] If the biometric authentication using the fingerprint registration data corresponding to the specified IEF fails (S87, NO), the processor 21 counts down the retry counter for the biometric authentication using the fingerprint registration data corresponding to the specified IEF (S88).The processor 21 also resets the information indicating the result of matching the password for the IEF to an unmatched state (S89), transmits a status word indicating a failure of the biometric authentication (matching NG) to the higher-level device that is the sender of the matching command (S90), and waits for the next command.

[0101] If the biometric authentication using the fingerprint registration data corresponding to the specified IEF is successful (S87, YES), the processor 21 resets the retry counter for the biometric authentication using the fingerprint registration data corresponding to the IEF specified by the command, thereby setting the retry counter value to an initial value (S91). In addition, the processor 21 sets the password verification result for the IEF specified by the command to information (flag) indicating that verification has been completed (verification successful, OK) in response to the success of the biometric authentication (S92). After the password verification result for the IEF specified by the command is determined to be verified in response to the success of the biometric authentication, the processor 21 transmits a status word indicating normal completion to the upper device that is the sender of the verification command (S93), and waits for reception of the next command.

[0102] According to the above process, the IC card executes biometric authentication using biometric (fingerprint) registration data corresponding to the IEF specified in response to a matching command requesting biometric matching, and if the biometric authentication is successful, the password matching result of the IEF is considered to be matched (matching successful). This allows the IC card to replace password matching of the specified IEF with biometric authentication with high security. As a result, the fingerprint registration data and password used for biometric authentication can be managed as a pair, and matching of a specified password can be replaced with biometric authentication using biometric information previously set as a pair.

[0103] According to the above-mentioned processing example, a retry counter for biometric authentication can be set for each piece of biometric registration data, and biometric authentication can be limited for each piece of biometric registration data. The retry counter for biometric authentication set for each piece of biometric registration data can be shared with a retry counter for password matching using a paired password, thereby limiting the number of times authentication can be performed for a pair of passwords and biometric registration data as one set of authentication data.

[0104] Also, the retry counter for biometric authentication provided for each biometric registration data can be provided separately from the retry counter for password verification using the corresponding password. In this case, the IC card can control to lock both the password and biometric registration data when the retry counter for either the password or the biometric registration data exceeds the upper limit of the number of authentication attempts.

[0105] Next, a process example of performing biometric authentication when a specific command other than a verification command is received will be described. In the above-described processing example, a process was described in which the success of biometric authentication is reflected in the password matching result when a matching command requesting biometric authentication is received. However, the IC card 1 may also execute biometric authentication when a specific command other than the matching command is received. Here, a case will be described in which biometric authentication is performed prior to command processing when the IC card 1 as the portable electronic device according to the embodiment receives the command (first command) received first after the initial response and a select command as specific commands for executing biometric authentication.

[0106] FIG. 24 is a flowchart for explaining an example of a process for performing biometric authentication when the IC card 1 receives a select command. First, when the IC card 1 starts communication with the upper device, it receives power from the upper device and starts up. After being started up by the power supplied from the upper device, the processor 21 of the IC card 1 transmits an initial response to the upper device via the communication interface 25 (S101).

[0107] Immediately after transmitting the initial response, the processor 21 performs a self-diagnosis process to check whether the biometric (fingerprint) sensor 32 is operating normally (S102). If the self-diagnosis process determines that the fingerprint sensor 32 is not operating normally, the processor 21 stores the result of the self-diagnosis of the fingerprint sensor 32 that the fingerprint sensor is abnormal (S104). If the self-diagnosis process determines that the fingerprint sensor 32 is operating normally, the processor 21 stores the result of the self-diagnosis of the fingerprint sensor 32 that the fingerprint sensor is normal (S105). For example, the processor 21 stores the result of the self-diagnosis of the fingerprint sensor 32 in the RAM 23 or the data memory 24.

[0108] After the initial response (after self-diagnosis), the processor 21 of the IC card 1 enters a state of waiting to receive a command (S106). When a command is received from the upper device in this state (S106, YES), the processor 21 determines whether the received command is a select command (S107). When the received command is not a select command (S107, NO), the processor 21 proceeds to S114 and executes command processing according to the received command.

[0109] If the received command is a select command (S107, YES), the processor 21 determines whether the fingerprint sensor 32 is normal in the self-diagnosis process (S109). If the fingerprint sensor 32 is abnormal in the self-diagnosis process (S109, NO), the processor 21 proceeds to S114 and executes processing according to the received command (select command).

[0110] If the fingerprint sensor 32 is normal in the self-diagnosis process (S109, YES), the processor 21 proceeds to S114 and executes biometric authentication using the fingerprint registration data registered in the data memory 24. The processor 21 transmits the fingerprint registration data to the biometric matching unit 12 and instructs the biometric matching unit 12 to input fingerprint data by the biometric sensor 32 and to match the input fingerprint data with the fingerprint registration data. In this case, the processor 21 turns on the LED 13 in a lit state indicating that biometric (fingerprint) matching is in progress.

[0111] The MPU 31 of the biometric matching unit 12 inputs fingerprint data via the biometric sensor 32 (S110), compares the fingerprint data input via the biometric sensor 32 (input fingerprint data) with fingerprint registration data specified by the processor 21 (S111), and supplies the comparison result to the processor 21.

[0112] The processor 21 determines whether the biometric authentication is successful based on the matching result of the biometric matching unit 12. The processor 21 lights up the LED 13 in accordance with the result of the biometric authentication. For example, if the biometric authentication is successful, the processor 21 lights up the LED 13 in a lit state indicating that the biometric authentication is successful, and if the biometric authentication is unsuccessful, the processor 21 lights up the LED 13 in a lit state indicating that the biometric authentication is unsuccessful.

[0113] If the biometric authentication (matching) is successful (S112, YES), the processor 21 sets the password matching result, which reflects the authentication result of the biometric authentication, to "matched" (S113). For example, the processor 21 sets all password matching results to "matched" in response to the success of the biometric authentication. The processor 21 may also set the password matching result of the IEF under the DF from which the select command is selected to "matched". After setting the password matching result to "matched" in response to the success of the biometric authentication (matching), the processor 21 executes the command processing requested by the command (S114).

[0114] Moreover, if the biometric authentication (matching) fails (S112, NO), the processor 21 executes command processing according to the received command without changing the password matching result (S114). When the command processing is completed, the processor 21 transmits a status word indicating the execution result of the command processing to the host device (S115), and goes into a state of waiting for the next command.

[0115] According to the above process, the IC card executes biometric authentication when it receives a select command, and executes a process to set the password verification result as verified if the biometric authentication is successful. This allows the IC card to execute biometric authentication when it receives a select command, even if it does not receive a verification command requesting biometric authentication from the higher-level device. This makes it possible to omit the process of supplying biometric authentication or password verification from the higher-level device to the IC card, and further improves security through biometric authentication.

[0116] Next, a process example will be described in which biometric authentication is performed when a specific command other than a verification command is received, and command processing is not performed unless the biometric authentication is successful. 25 to 32 are flowcharts for explaining a processing example in which the IC card 1 does not execute command processing unless the biometric authentication executed when the IC card 1 receives a specific command is successful. In FIG. 25, biometric authentication is performed when the first command (first command) after the initial response is received as a specific command other than the verification command.

[0117] First, the IC card 1 is started by receiving power from the host device. After being started by the power supplied from the host device, the processor 21 of the IC card 1 transmits an initial response to the host device via the communication interface 25 (S121).

[0118] After the initial response, the processor 21 of the IC card 1 waits for a command after the initial response (self-diagnosis). However, the processor 21 may execute the self-diagnosis process of the biometric (fingerprint) sensor 32 as described in S102-S105 of FIG. 24 after the initial response.

[0119] When a command is received from a higher-level device while waiting for a command (S122, YES), the processor 21 determines whether the received command is the first command after the initial response (S123). Here, the first command after the initial response (first command) is a specific command for performing biometric authentication. If the received command is not the first command (S123, NO), the processor 21 proceeds to S129 and executes command processing according to the received command.

[0120] If the received command is the first command (S123, YES), the processor 21 executes biometric authentication using the fingerprint registration data registered in the data memory 24. The processor 21 transmits the fingerprint registration data to the biometric matching unit 12, and instructs the biometric matching unit 12 to input fingerprint data using the biometric sensor 32 and to match the input fingerprint data with the fingerprint registration data. During the execution of such biometric authentication, the processor 21 turns on the LED 13 in a lit state indicating that biometric (fingerprint) matching is in progress.

[0121] The MPU 31 of the biometric matching unit 12 inputs fingerprint data by the biometric sensor 32 (S125), compares the fingerprint data input by the biometric sensor 32 (input fingerprint data) with fingerprint registration data specified by the processor 21 (S126), and supplies the comparison result to the processor 21. The processor 21 determines whether the biometric authentication is successful or not based on the comparison result of the biometric matching unit 12. The processor 21 also lights up the LED 13 in accordance with the result of the biometric authentication. For example, if the biometric authentication is successful, the processor 21 lights up the LED 13 in a lit state indicating that the biometric authentication is successful, and if the biometric authentication is unsuccessful, the processor 21 lights up the LED 13 in a lit state indicating that the biometric authentication is unsuccessful.

[0122] If the biometric authentication (matching) is successful (S127, YES), the processor 21 performs a process of setting the password matching result to "matched" in response to the success of the biometric authentication (S128). After setting the password matching result to "matched" in response to the success of the biometric authentication, the processor 21 executes the command processing requested by the command (S129). When the command processing is completed, the processor 21 transmits a status word indicating the execution result of the command processing to the upper device (S130) and enters a state of waiting for the next command.

[0123] If the biometric authentication (matching) is unsuccessful (S127, NO), the processor 21 does not execute the command process and waits for the next command. In this case, the processor 21 may transmit to the upper device, as a response to the received command, a status word indicating that the command could not be executed because the biometric authentication was unsuccessful. If the biometric authentication executed in response to the first command after the initial response is unsuccessful, the processor 21 may proceed to the process of S125, regarding the next command received as a specific command, and execute biometric authentication.

[0124] FIG. 26 is a flowchart showing the flow of a process as a first modified example of the process shown in FIG. The process shown in Fig. 26 is a process for performing biometric authentication when the first command (first command) after the initial response is received as a specific command other than the verification command, similar to the process example shown in Fig. 25. However, the process shown in Fig. 26 differs from the process example shown in Fig. 25 in that biometric authentication is performed again if the biometric authentication fails.

[0125] That is, in the processing example shown in FIG. 26, if biometric authentication (matching) fails, the processor 21 of the IC card 1 returns to S125, re-inputs fingerprint data using the biometric sensor 32 (S125), and re-performs biometric matching between the fingerprint data re-input by the biometric sensor 32 (input fingerprint data) and the fingerprint registration data specified by the processor 21 (S126).

[0126] In the processing example shown in FIG. 26, when the number of times that the input and comparison of fingerprint data is successively performed exceeds a predetermined upper limit, the processor 21 may proceed to S130 and transmit to the higher-level device, in response to the received command, a status word indicating that the command could not be executed because the biometric authentication was not successful. According to the first modified example described above, when there is a problem with the input of fingerprint data by the biometric sensor 32, the IC card 1 is able to input and verify fingerprint data again.

[0127] FIG. 27 is a flowchart showing the flow of a process as a second modified example of the process shown in FIG. Fig. 27 shows a process example for performing biometric authentication when a select command is received as a specific command other than a verification command. However, the process shown in Fig. 27 is the same as the process example shown in Fig. 25 except that a specific command other than a verification command is received as a select command.

[0128] 27, if the received command is a select command (S124, YES), the processor 21 of the IC card 1 proceeds to S125 and executes biometric authentication using fingerprint registration data registered in the data memory 24. If the received command is a command other than the select command (S124, NO), the processor 21 proceeds to S129 and executes processing according to the received command. According to the second modified example described above, the IC card 1 can be configured to execute biometric authentication when a select command is received.

[0129] FIG. 28 is a flowchart showing the flow of a process as a third modified example of the process shown in FIG. Fig. 28 shows a processing example in which biometric authentication is performed when a select command is received as a specific command other than a comparison command, similar to the processing example in Fig. 27. However, the processing shown in Fig. 28 differs from the processing example shown in Fig. 27 in that biometric authentication is performed again if the biometric authentication fails.

[0130] That is, in the processing example shown in FIG. 28, if the processor 21 of the IC card 1 fails in biometric authentication (matching) performed after receiving the select command (S127, NO), it returns to S125, re-inputs fingerprint data using the biometric sensor 32 (S125), and re-performs biometric matching between the fingerprint data re-input by the biometric sensor 32 (input fingerprint data) and the fingerprint registration data specified by the processor 21 (S126).

[0131] In addition, in the processing example shown in FIG. 28, when the number of times that the input and comparison of fingerprint data is successively performed exceeds a predetermined upper limit, the processor 21 may proceed to S130 and transmit to the higher-level device a status word indicating that the biometric authentication was unsuccessful and therefore the select command could not be executed. According to the above-described third modified example, the IC card 1 can be configured to perform biometric authentication when it receives a select command, and further, if there is a problem with the input of fingerprint data by the biometric sensor 32, it can re-enter and re-compare the fingerprint data.

[0132] 29 to 32 are flowcharts showing fourth to seventh modified examples as further modified examples of the process shown in FIGS. 25 to 28. For example, FIG. 29 is a fourth modified example of the process shown in FIG. 25, and shows a processing example in which the process of S128 in the process shown in FIG. 25 is omitted. FIG. 30 is a fifth modified example of the process shown in FIG. 25, and shows a processing example in which the process of S128 in the process shown in FIG. 26 is omitted. FIG. 31 is a sixth modified example of the process shown in FIG. 25, and shows a processing example in which the process of S128 in the process shown in FIG. 27 is omitted. FIG. 32 is a seventh modified example of the process shown in FIG. 25, and shows a processing example in which the process of S128 in the process shown in FIG. 28 is omitted.

[0133] That is, the IC card 1 may omit the process of setting the password matching result to "matched" when the biometric authentication (matching) is successful, as shown in Figures 26 to 32. In this case, when the IC card receives a specific command such as the first command or the select command, it can execute command processing if the biometric authentication (matching) is successful, and can not execute command processing if the biometric authentication (matching) is unsuccessful.

[0134] According to the above process, the IC card executes biometric authentication when it receives the first command after the initial response or a specific command such as a select command, executes command processing if the biometric authentication is successful, and does not execute command processing for the command if the biometric authentication is unsuccessful. This allows the IC card to not execute command processing unless the biometric authentication executed when it receives a specific command such as the first command or a select command is successful.

[0135] Furthermore, if the biometric authentication executed when the IC card receives the first command after the initial response or a specific command such as a select command is successful, the IC card can set the password matching result to "matched" and execute command processing. This allows the IC card to set the password matching result to "matched" if the biometric authentication executed in response to a specific command is successful, thereby speeding up command processing.

[0136] The functions described in the above embodiments can be realized not only by using hardware but also by loading a program describing each function into a computer using software. Also, each function may be realized by selecting either software or hardware as appropriate.

[0137] Although some embodiments of the present invention have been described, these embodiments are presented as examples and are not intended to limit the scope of the invention. These novel embodiments can be implemented in various other forms, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and their modifications are included in the scope and spirit of the invention, and are included in the scope of the invention and its equivalents described in the claims. [Explanation of symbols]

[0138] 1...IC card (portable electronic device), C...main body, M...module, 11...control unit, 12...biometric matching unit, 13...LED, 21...processor, 22...ROM, 23...RAM, 24...data memory (first memory, second memory), 25...communication interface, 31...MPU, 32...biometric sensor (fingerprint sensor).

Claims

1. A biometric sensor for acquiring biometric information of a person; A communication interface for communicating with a higher-level device; a first memory for storing biometric information of a registrant; a second memory for storing a password; a processor that executes biometric authentication using the biometric information acquired by the biometric sensor and the biometric information stored in the first memory in response to a command requesting biometric authentication received from a host device via the communication interface, and sets a matching state of a password stored in the second memory that is associated with the biometric information stored in the first memory and used for the biometric authentication to a "matched" state when the biometric authentication is successful; A portable electronic device having:

2. A biosensor for acquiring biometric information of a person; A communication interface for communicating with a higher-level device; a first memory for storing biometric information of a registrant; a second memory for storing a password; the first memory stores biometric information associated with the password stored in the second memory; a processor that executes biometric authentication using biometric information acquired by the biometric sensor in response to a command requesting biometric authentication received from a host device via the communication interface and biometric information stored in the first memory that corresponds to a password specified in the command, and that sets a matching state of the password specified in the command among the passwords stored in the second memory to "matched" when the biometric authentication is successful; A portable electronic device having:

3. the processor manages, as a common retry number, a retry number for the password stored in the second memory and a retry number for the biometric information stored in the first memory corresponding to the password stored in the second memory.

3. The portable electronic device of claim 2.

4. The processor separately manages a number of retries for a password stored in the second memory and a number of retries for biometric information stored in the first memory corresponding to the password stored in the second memory.

3. The portable electronic device of claim 2.

5. the processor locks both biometric authentication using the biometric information and password verification when either one of the number of retries for the biometric information stored in the first memory and the number of retries for the password stored in the second memory exceeds an upper retry limit number.

3. The portable electronic device of claim 2.

6. the processor performs biometric authentication when a matching command requesting biometric authentication is received from a higher-level device via the communication interface; A portable electronic device according to any one of claims 1 to 5.

7. the processor performs biometric authentication when a specific command is received from a higher-level device via the communication interface; A portable electronic device according to any one of claims 1 to 5.

8. The specific command is a command that is first received after an initial response is output by the communication interface.

8. The portable electronic device of claim 7.

9. The specific command is an application selection command.

8. The portable electronic device of claim 7.

10. The processor executes a self-diagnosis of the biosensor after outputting an initial response via the communication interface, and performs biometric authentication if a result of the self-diagnosis of the biosensor is normal.

8. The portable electronic device of claim 7.

11. the processor does not execute a process requested by the specific command unless biometric authentication executed upon receiving the specific command is successful; 8. The portable electronic device of claim 7.

12. when the biometric authentication executed in response to receiving the specific command is unsuccessful, the processor acquires biometric information again using the biometric sensor, and executes biometric authentication again using the biometric information newly acquired by the biometric sensor and the biometric information stored in the first memory.

8. The portable electronic device of claim 7.

13. A light emitting diode (LED) whose illumination state is controlled, The processor controls a display state of an LED according to a result of the biometric authentication. A portable electronic device according to any one of the preceding claims.

14. The biometric sensor is a fingerprint sensor that acquires fingerprint information. A portable electronic device according to any one of the preceding claims.

15. A biosensor for acquiring biometric information of a person; a module having a communication interface for communicating with a higher-level device, a first memory for storing biometric information of a registered person, a second memory for storing a password, and a processor for executing biometric authentication using the biometric information acquired by the biometric sensor and the biometric information stored in the first memory in response to a command requesting biometric authentication received from the higher-level device via the communication interface, and for setting a matching state of the password specified by the command among the passwords stored in the second memory to "matched" if the biometric authentication is successful; a main body that maintains a state in which the biosensor and the module are connected; An IC card having the above configuration.

Citation Information

Patent Citations

  • Ic card terminal and individual authentication method

    JP2003123032A

  • Authentication management application, authentication application and ic card

    JP2003203213A

  • Confidential biometric testing of identity

    JP2006501583A

  • Service management apparatus, service management system, program, and recording medium

    JP2007157002A

  • Authentication system and its method

    JP2008090712A