Information processing device, control method for information processing device, and program
The information processing device ensures secure credential storage by comparing device authentication levels with recommended standards, preventing credential leakage and maintaining security compliance.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-09-05
- Publication Date
- 2026-03-17
AI Technical Summary
Existing FIDO systems face challenges in securely synchronizing credentials to devices with lower authentication levels, potentially compromising security and violating organizational or user policies.
An information processing device that acquires service information from a first server, determines the recommended authentication level, and controls the credential storage process based on a comparison with the device's authentication level, ensuring credentials are only stored on devices meeting the recommended security standards.
Prevents credential leakage by ensuring credentials are stored only on devices with sufficient security levels, enhancing the security and compliance of service usage.
Smart Images

Figure 2026048204000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to an information processing apparatus, a control method for an information processing apparatus, and a program.
Background Art
[0002] There is FIDO (registered trademark) as an authentication system including biometric authentication. FIDO is an abbreviation for "Fast Identity Online". In addition, as an extended specification of credentials handled by FIDO (hereinafter referred to as "FIDO credentials"), multi-device FIDO credentials have been a topic of recent discussion.
[0003] In FIDO, by performing a registration operation in advance between an authenticator such as a user's terminal at hand and an authentication server, credentials such as a private key and a user ID are registered in the authenticator, and a public key is registered in the authentication server. Here, in the conventional FIDO, there was no specification for transmitting and storing credentials from the terminal where the credentials were registered to another terminal or server. For this reason, it was impossible to synchronize the credentials with a terminal different from the terminal used by the user in the registration operation of the credentials, and thus it was a problem that account recovery was impossible.
[0004] Patent Document 1 discloses a technique for permitting account recovery when a recovery request for an account is transmitted from a terminal of a synchronization destination to an authentication server in a state where an authenticator of a credential issuer and a FIDO authenticator of a credential synchronization destination are linked and the authentication conditions are satisfied.
[0005] In contrast, multi-device FIDO credentials transmit credentials from the FIDO client module of the registration terminal to the server that manages the client module during the credential registration process. This makes it possible to synchronize FIDO credentials to other terminals handled by the user. Means of synchronizing credentials include requesting the acquisition of credentials from the backup server from the terminal's FIDO client module, or transmitting credentials using BLE (Bluetooth Low Energy) terminal-to-terminal communication.
[0006] Here, the authenticator needs to prevent situations where, for example, malware is infected on the user's device, allowing for the easy theft of FIDO credentials stored on the device and subsequent account hijacking. For this reason, FIDO has established "authentication device security levels" from the perspective of hardware and software requirements and the scope of protection. Hereafter, the "authentication device security level" will be referred to as the "authentication level."
[0007] There are currently four authentication levels: L1, L1+, L2, L2+, L3, and L3+. Higher levels, or levels with a plus sign if the same number is used, offer higher security because it is more difficult to illegally retrieve the FIDO credentials stored internally. In this way, the higher the authentication level of the authenticator, the lower the risk of credential leakage and the lower the risk of account hijacking. [Prior art documents] [Patent Documents]
[0008] [Patent Document 1] Japanese Patent Publication No. 2023-000715 [Overview of the project] [Problems that the invention aims to solve]
[0009] As mentioned above, when syncing credentials to a device different from the one used for registration, there is a risk of syncing the credentials to a device with a lower authentication level. In such cases, it may not align with the organization's or the user's policies, and the security level may decrease, potentially increasing the relative risk.
[0010] This invention was made to solve the above-mentioned problems. The purpose of this invention is to provide a mechanism that can prevent credentials from being stored on terminals with low security levels that pose a risk of credential leakage, thereby enabling more secure use of services. [Means for solving the problem]
[0011] The present invention relates to an information processing device capable of communicating with a first server that provides a service and a second server that holds credentials associated with the service, comprising: a first acquisition means for acquiring service information associated with credentials held by the second server from the second server; a second acquisition means for acquiring a first authentication level indicating the authentication level recommended by the service, using the service information acquired by the first acquisition means, from the first server; and a control means for controlling the execution of a process that compares the first authentication level with a second authentication level indicating the authentication level of the information processing device, and, according to the result of the comparison, acquires the credentials associated with the service held by the second server from the second server and stores them in the information processing device, wherein the control means executes the process when the second authentication level satisfies the first authentication level, and does not execute the process when the second authentication level does not satisfy the first authentication level. [Effects of the Invention]
[0012] According to the present invention, it is possible to prevent credentials from being stored on terminals with low security levels that pose a risk of credential leakage, thereby enabling more secure use of services.
Brief Description of the Drawings
[0013] [Figure 1] A diagram illustrating the overall configuration of the system in the first embodiment. [Figure 2] A diagram illustrating the hardware configuration of each device in the first embodiment. Sequence diagram illustrating the credential synchronization process in the third embodiment. [Figure 18] Flowchart illustrating the credential synchronization determination process in the third embodiment. [Figure 19] Diagram illustrating the module configuration of each device in the fourth embodiment. [Figure 20] Sequence diagram illustrating the credential synchronization process in the fourth embodiment. [Figure 21] Flowchart illustrating the credential synchronization determination process in the fourth embodiment. **Embodiments for Carrying Out the Invention**
[0014] Hereinafter, embodiments for carrying out the present invention will be described with reference to the drawings. **[First Embodiment]** In this embodiment, when there is an authentication level recommended by the service provided by the application server, a mechanism for restricting the registration and synchronization of credential information is disclosed. In this embodiment, the FIDO client module of the terminal requests the backup server to obtain credentials.
[0015] **<System Configuration>** FIG. 1 is a diagram illustrating the overall configuration of the system in the first embodiment of the present invention. In FIG. 1, 101 and 102 are authentication terminals. The authentication terminals 101 and 102 send a request to create credential information to the application server 103, and obtain information on the challenge and the recommended authentication level from the authentication server 104. Then, the authentication terminals 101 and 102 create credential information and send the creation result of the credential information to the authentication server 104. In addition, the authentication terminals 101 and 102 send a request to register the credential information to the credential information management server 105 and obtain the registration result from the credential information management server 105. The detailed sequence of the credential information registration process is shown in FIG. 6.
[0016] In addition, authentication terminals 101 and 102 send a request to the credential information management server 105 to retrieve registered credential information (synchronization request). When sending this request to retrieve credential information (synchronization request), authentication terminals 101 and 102 must perform an authentication request to the credential information management server 105 and succeed in authentication. Furthermore, authentication terminals 101 and 102 send a request to the application server 103 to retrieve information on the recommended authentication level and retrieve information on the recommended authentication level from the application server 103. The authentication level of authentication terminals 101 and 102 must then meet the recommended authentication level obtained above. The detailed sequence of the credential information synchronization process is shown in Figure 8.
[0017] When application server 103 receives a request to create credential information from authentication terminals 101 and 102, it sends the request to authentication server 104. Furthermore, when application server 103 receives the result of the credential information creation from authentication server 104, it sends the result to authentication terminals 101 and 102. Additionally, when application server 103 receives a request from authentication terminals 101 and 102 to obtain information on the recommended authentication level, it sends the recommended authentication level information to authentication terminals 101 and 102.
[0018] When the authentication server 104 receives a request to create credentials, it sends a challenge and recommended authentication level information to the authentication terminals 101 and 102. Furthermore, upon receiving the results of the credentials creation from the authentication terminals 101 and 102, it registers the public key with the authentication server 104 and sends the results of the credentials creation to the application server 103.
[0019] The authentication server 104 may be implemented on the same server device as the application server 103. Furthermore, the application server 103, authentication server 104, and credential information management server 105 may each be implemented by a single computer or by multiple computers. For example, these servers may be implemented using cloud services or the like.
[0020] The credential information management server 105 manages credential information. When the credential information management server 105 receives a request to register credential information from authentication terminals 101 and 102, it registers the credential information on the credential information management server 105 and sends the credential information registration result to authentication terminals 101 and 102. In addition, when the credential information management server 105 receives a request to acquire credential information (synchronization request) from authentication terminals 101 and 102, it sends the credential information to authentication terminals 101 and 102. Furthermore, when using the synchronization function, the credential information management server 105 requires authentication of the user using authentication terminals 101 and 102 and provides the authentication function to authentication terminals 101 and 102.
[0021] As shown in Figure 1, authentication terminal 101 is connected to the global network 108 via the local network 106, and authentication terminal 102 is connected to the global network 108 via the local network 107. Furthermore, the authentication terminals 101 and 102, the application server 103, the authentication server 104, and the credential information management server 105 are connected to each other via the global network 108.
[0022] Local networks 106 and 107 are communication networks implemented by one or a combination of, for example, LANs, WANs, telephone lines, dedicated digital lines, ATM or frame relay lines, cable television lines, wireless lines for data broadcasting, etc. Global network 108 has the same configuration as local networks 106 and 107.
[0023] <Hardware configuration of authentication terminal and server> First, let's describe the hardware configuration of authentication terminals 101 and 102. Figure 2(a) shows an example of the hardware configuration of the information processing devices (devices) that make up the authentication terminals 101 and 102. Here, the information processing devices that make up the authentication terminals 101 and 102 are referred to as "authentication terminals".
[0024] The authentication terminal is equipped with a CPU 201 that executes software stored on a hard disk drive (HDD) 203, which is a storage device. The CPU 201 comprehensively controls each piece of hardware connected to the system bus 204.
[0025] Memory 202 functions as the main memory, work area, etc., of CPU 201. The HDD203 records data as a high-capacity storage device. Alternatively, other storage devices such as SSDs (Solid State Drives) or eMMCs (embedded MultiMediaCards) may be used in place of or in conjunction with the HDD.
[0026] The UI control unit 205 controls input from an input device 206, such as a touch panel. The network control unit 207 exchanges data bidirectionally with other nodes via the network.
[0027] The TPM (Trusted Platform Module) 208 is a storage device with tamper resistance to prevent external reading of stored data, intended for processing and maintaining confidential information. In this embodiment, the TPM 208 manages credential information such as biometric information itself used for authentication and private keys corresponding to biometric information.
[0028] The biometric information sensor 209 is a sensor that reads the biometric information of a user using an authentication terminal, such as the user's fingerprints, veins, voiceprint, iris, and facial image, and converts this information into a signal. The biometric information sensor 209 is implemented using a dedicated reader such as a fingerprint sensor, a camera, a microphone, etc.
[0029] Next, we will describe the hardware configuration of the application server 103, the authentication server 104, and the credential information management server 105. Figure 2(b) shows an example of the hardware configuration of each information processing device that makes up the application server 103, authentication server 104, and credential information management server 105. Here, each information processing device that makes up the application server 103, authentication server 104, and credential information management server 105 is referred to as a "server device".
[0030] The server device includes a CPU 210 that executes software stored on the HDD 212, which is a storage device. The CPU 210 comprehensively controls each piece of hardware connected to the system bus 213.
[0031] Memory 211 functions as the main memory, work area, etc., of the CPU 210. The HDD212 records data as a high-capacity storage device. Alternatively, other storage devices such as SSDs or eMMCs may be used in place of or in conjunction with the HDD.
[0032] The input control unit 214 controls input from an input device 215, such as a keyboard. Depending on the role of the server device, a configuration without the input control unit 214 and input device 215 is also possible.
[0033] The display control unit 216 controls the display on the display device 217, such as a liquid crystal display. Depending on the role of the server device, a configuration without the display control unit 216 and display device 217 is also possible. The network control unit 218 exchanges data bidirectionally with other nodes via the network.
[0034] In this embodiment, the information processing devices constituting the application server 103, authentication server 104, and credential information management server 105 are implemented by information processing devices provided as a cloud computing service. Cloud computing includes serverless computing and virtual machines. In cloud computing, multiple hardware resources as shown in Figure 2 are used. The application server 103, authentication server 104, and credential information management server 105 may each be implemented on a single physical machine, or they may be implemented on multiple physical machines.
[0035] <Functional Configuration> Figure 3 is a block diagram showing an example of the functional configuration of the authentication terminals 101 and 102, application server 103, authentication server 104, and credential information management server 105 in the first embodiment.
[0036] (Authentication terminal) The authentication terminals 101 and 102 are equipped with a browser 310, an authentication client 320, and an authenticator 330.
[0037] The browser (Web browser) 310 provides functions such as interpreting HTML (HyperText Markup Language), displaying web pages, receiving input from the user, and sending requests. In this embodiment, the browser 310 provides a function for displaying the credential information registration screen provided by the application server 103. An example of the credential information registration screen is shown in Figure 4.
[0038] Figure 4 shows an example of a credential information registration screen. The credential information registration screen is displayed in the browser 310 of the authentication terminal where the credential information is registered. When the "Yes" button is selected on the credential information registration screen, as shown in Figure 4, the credential information is registered.
[0039] Now, let's return to the explanation of Figure 3. The authentication client 320 provides functions to control the authentication process and registration of credential information required when a user registers their credential information. The credential information will be described in the function description of the credential information storage unit 332, which will be described later. In addition, the authentication client 320 provides a function to control the synchronization of credential information. Furthermore, the authentication client 320 maintains the authentication level of the authenticator 330, which is certified by a FIDO certification authority.
[0040] Table 1 shows an example of the authentication level of the authenticator maintained by the authentication client 320 of the authentication terminal 101. [Table 1] Table 2 shows an example of the authentication level of the authenticator maintained by the authentication client 320 of the authentication terminal 102. [Table 2]
[0041] In systems where FIDO is applied, the authentication client 320 corresponds to a FIDO client. Furthermore, the authentication client 320 may provide functions to control general FIDO-based credential information registration and authentication processing, in addition to these functions.
[0042] The authenticator 330 comprises a biometric authentication processing unit 331, a credential information storage unit 332, and a biometric information management unit 333. The biometric authentication processing unit 331 provides functions for requesting biometric information input from the user and for performing biometric authentication. Biometric authentication is performed by confirming that the biometric information received from the user exists in the biometric information table held by the biometric information management unit 333. The biometric information and the biometric information table are described in the function description of the biometric information management unit 333. In addition, the biometric authentication processing unit 331 provides a function for creating credential information. The credential information is described in the function configuration of the credential information storage unit 332.
[0043] The credential information storage unit 332 provides a function to store, for example, the credential information created when the public key for using the services provided by the application server 103 is registered with the authentication server 104 in the TPM 208.
[0044] Table 3 shows an example of a credential information table held in the credential information storage unit 332 of the authentication terminal 101. [Table 3] Table 4 shows an example of a credential information table held in the credential information storage unit 332 of the authentication terminal 102. [Table 4]
[0045] As shown in Tables 3 and 4, the credential information record in the credential information table includes the authentication information ID, private key, user ID, and service URL. The authentication information ID is an ID that uniquely identifies the authentication information. The user ID is an ID that uniquely identifies the user information (user identification information). The service URL is the URL of the service provided by application server 103.
[0046] The biometric information management unit 333 manages the biometric information stored in the authenticator 330. Table 5 shows an example of a biometric information table managed by the biometric information management unit 333 of the authentication terminal 101. [Table 5] Table 6 shows an example of a biometric information table managed by the biometric information management unit 333 of the authentication terminal 102. [Table 6] As shown in Tables 5 and 6, each biometric record in the biometrics table includes a user ID and a biometrics ID, which is an ID that uniquely identifies the biometric information.
[0047] (Application Server 103) The application server 103 includes an authentication level management unit 340, an authentication processing unit 341, and a credential registration processing unit 342. The authentication level management unit 340 provides a function to transmit the authentication level of the authenticator that is recommended when using the services provided by the application server 103. The authentication level management unit 340 also maintains the authentication level that is recommended when using the services.
[0048] Table 7 shows an example of an authentication level information table for authenticators maintained by the authentication level management unit 340. [Table 7] As shown in Table 7, the authentication level information includes the service name, service URL, and the authentication level, which is the security level of the authenticator as defined by FIDO.
[0049] The authentication processing unit 341 provides a function to request the credential information management server 105 to obtain information about users who use the services provided by the application server 103. The authentication processing unit 341 obtains the user authentication result from the credential information management server 105. In this embodiment, OpenID Connect is used for user authentication, but other authentication methods such as HTTP authentication (Basic authentication / Digest authentication) may also be used.
[0050] The credential registration processing unit 342 receives credential registration requests from authentication terminals 101 and 102 and provides the function of sending credential registration requests to the authentication server 104. The credential registration processing unit 342 also receives credential registration results from authentication terminals 101 and 102 and provides the function of sending a request to the authentication server 104 to verify the credential registration results.
[0051] (Authentication Server 104) The authentication server 104 includes an authentication request management unit 350 and a public key management unit 351. The authentication request management unit 350 receives a request to create credential information sent from the application server 103 and provides a function to send a challenge and a recommended authentication level for credential registration. The recommended authentication level is obtained by sending a request to the application server 103 to obtain the recommended authentication level. In addition, the authentication request management unit 350 provides a function to verify the results of the credential information creation sent from the authentication terminals 101 and 102 and send the creation results to the application server 103. Furthermore, the authentication request management unit 350 provides a function to send a request to the public key management unit 351 to save the public key information included in the results of the credential information creation.
[0052] The public key management unit 351 receives a public key storage request sent from the authentication request management unit 350 and provides a function to store the public key. Table 8 shows an example of a public key table managed by the public key management unit 351. [Table 8] As shown in Table 8, the public key record in the public key table contains the authentication information ID and the public key.
[0053] (Credential information management server 105) The credential information management server 105 comprises a credential information management unit 360, a credential synchronization control unit 361, and a user management unit 362. The credential information management unit 360 receives credential information registration requests from authentication terminals 101 and 102 and stores the credential information. In addition, the credential information management unit 360 receives requests from authentication terminals 101 and 102 to send URLs associated with the credential information and provides a function to send URLs of the credential information associated with users using authentication terminals 101 and 102 in bulk.
[0054] Table 9 shows an example of a credential information table maintained by the credential information management unit 360. [Table 9] As shown in Table 9, the credential information records in the credential information table include the authentication information ID, private key, user ID, and service URL.
[0055] The credential synchronization control unit 361 receives credential information synchronization requests from authentication terminals 101 and 102 and provides the function of transmitting credential information associated with users using authentication terminals 101 and 102 to authentication terminals 101 and 102.
[0056] The user management unit 362 provides a function to store user information of users who use the authentication terminals 101 and 102. The user management unit 362 also receives user authentication requests from the application server 103, performs user authentication processing, and issues token information for using the application server 103. Furthermore, when using the function to synchronize credential information provided by the credential management server, the user management unit 362 provides a function to authenticate users using the credential management server. In this embodiment, authentication using the HTTP authentication method (Basic authentication / Digest authentication) is employed, but other authentication methods such as OpenID Connect may also be used.
[0057] Table 10 shows an example of a user information table maintained by the user management unit 362. [Table 10] As shown in Table 10, the user information record in the user information table includes the user ID and password.
[0058] <User Authentication Process> The user authentication process will be explained using Figure 5. In order to register the credential information associated with users using authentication terminals 101 and 102, it is necessary to verify whether the user is registered with the service. This process uses the authentication information of users using the credential information management server 105 to authenticate the service provided by the application server 103.
[0059] Figure 5 is a sequence diagram illustrating the processes of the authentication terminal 101, application server 103, and credential information management server 105 in the user authentication process of the first embodiment. Here, the authentication terminal 101 is used as an example of an authentication terminal for explanation, but the same applies to other authentication terminals (such as authentication terminal 102). In this figure, the processing of the authentication terminal 101 is achieved by the CPU 201 of the authentication terminal 101 reading a program stored in the HDD 203 into memory 202 and executing it. The processing of the application server 103 and the credential information management server 105 is achieved by the CPU 210 of each server reading a program stored in the HDD 212 into memory 211 and executing it.
[0060] When the user authentication process begins, in S501, the browser 310 of the authentication terminal 101 sends a login request to the application server 103. Upon receiving this request, the application server 103 proceeds to S502.
[0061] In S502, the authentication processing unit 341 of the application server 103 creates and stores a nonce (number used once) associated with the session. A nonce is a one-time random character used during encrypted communication. A specific example would be "1 999 888 777 666 555 444".
[0062] Next, in S503, the authentication processing unit 341 of the application server 103 sends an access request to the credential information management server 105 to the authentication terminal 101. For example, it adds a callback URL (set to the application server 103 itself) and the nonce created in S502 above as parameters, and redirects to the credential information management server 105. In response, the browser 310 of the authentication terminal 101 redirects to the credential information management server 105, and the authentication screen (not shown) of the credential information management server 105 is displayed in the browser 310. When the authentication information of the user using the authentication terminal 101 (explained here as user ID and password) is entered on this authentication screen and authentication is instructed to be performed, the browser 310 of the authentication terminal 101 proceeds to S504.
[0063] In S504, the browser 310 of the authentication terminal 101 sends an authentication request to the credential information management server 105. This authentication request includes the user ID and password of the user using the authentication terminal 101. Here, we will assume that the user ID is "user001" and the password is "userpass1". When the credential information management server 105 receives the above authentication request, it proceeds to process S505.
[0064] In S505, the user management unit 362 of the credential information management server 105 verifies the user ID and password included in the authentication request received from the authentication terminal 101. If this combination of user ID and password exists in a user information table like Table 11 held by the user management unit 362 (i.e., verification is successful), the user management unit 362 saves the nonce that was assigned as a parameter associated with the session and proceeds to S506.
[0065] Table 11 shows an example of a nonsense information table maintained by the user management unit 362. [Table 11] As shown in Table 11, the nonce information record in the nonce information table contains the session ID, which is the session identifier, and the nonce.
[0066] In S506, the user management unit 362 of the credential information management server 105 sends an authorization code to the authentication terminal 101. For example, the authorization code is attached as a parameter, and the terminal is redirected to the application server 103, which is set as the callback URL. In response, the authentication terminal 101 proceeds to S507. The authorization code is a time-limited token issued from the authorization endpoint, and a specific example is "dd1231FBC3123a987=".
[0067] In S507, the browser 310 of the authentication terminal 101 sends an authorization code to the application server 103. Upon receiving this authorization code, the application server 103 proceeds to S508.
[0068] In S508, the authentication processing unit 341 of the application server 103 sends a request to the credential information management server 105 for the acquisition of an ID token and a nonce, along with an authorization code. An ID token is a token defined in OpenID Connect that proves that the user who requested the issuance has been authenticated.
[0069] Now, let's explain ID tokens. An ID token consists of a header, payload, and signature, in that order. Note that it may not include a signature. The following are specific examples of ID tokens, but they are not exhaustive.
[0070] (Header) { “typ”: “assertion”, “alg”: “ES256”, “kid”: “aaaaaaaa-bbbb-1111-8888-999999999999”} (payload) { “response_type”: “id_token”, “redirect_url”: “http: / / example_srv.com / customer”, “iss”: “ODBIMWUwasdasd123UUUMXw”, “sub”: “dXIIMM123KKllss”, “iat”: 1903144999, “exp”: 1903149999 } (signature)
[0071] When the credential information management server 105 receives the request to obtain the above ID token and nonce, it proceeds to process S509. In S509, the user management unit 362 of the credential information management server 105 sends the ID token and the nonce from S505 to the application server 103. For example, it sends an ID token including the nonce. When the application server 103 receives the ID token and nonce, it proceeds to S510.
[0072] In S510, the authentication processing unit 341 of the application server 103 verifies the ID token and nonce. For example, in nonce verification, it verifies whether it matches the nonce issued and stored in S502 in association with the session. If the nonce verification is successful, the authentication processing unit 341 deletes the nonce stored in S502. The authentication processing unit 341 determines that authentication is successful if the verification of the ID token and nonce is successful, and that authentication is unsuccessful if these verifications fail. Next, in S511, the authentication processing unit 341 of the application server 103 sends the authentication result to the authentication terminal 101 and terminates the process.
[0073] Note that the user authentication process is not limited to the example shown in this embodiment. For example, authentication may be performed directly to the application server 103 using the user ID and password for using the application server 103, or authentication may be performed using FIDO with the credential information for using the application server 103 and biometric information stored in the authentication terminals 101 and 102 in advance.
[0074] <Credential Information Registration Process> The credential information registration process will be explained using Figure 6. The credential information registration process registers the credential information associated with the user using the credential information management server 105 with the credential information management server 105, and registers the public key associated with the credential information with the authentication server 104. This process can only be executed if the user authentication process is successful. Furthermore, this process enables the registration of credential information only if the authentication level of the authentication terminal 101, which is the terminal that registers the credential information, is equal to or higher than the authentication level recommended by the application server 103.
[0075] Figure 6 is a sequence diagram showing the processes of the authentication terminal 101, application server 103, authentication server 104, and credential information management server 105 in the credential information registration process of the first embodiment. In this figure, the process of the authentication terminal 101 is realized by the CPU 201 of the authentication terminal 101 reading the program stored in the HDD 203 into memory 202 and executing it. The processes of the application server 103, authentication server 104, and credential information management server 105 are realized by the CPU 210 of each server reading the program stored in the HDD 212 into memory 211 and executing it.
[0076] When the credential information registration process begins, in S601, the browser 310 of the authentication terminal 101 sends a request to the application server 103 to create credential information for the user using the authentication terminal 101. Upon receiving this credential information creation request, the application server 103 proceeds to S602.
[0077] In S602, the credential registration processing unit 342 of the application server 104 sends a credential information creation request to the authentication server 104. Upon receiving the credential information creation request, the authentication server 104 proceeds to S603.
[0078] In S603, the authentication request management unit 350 of the authentication server 104 sends a request to application 104 to obtain a recommended authentication level. Upon receiving the request to obtain a recommended authentication level, application 104 proceeds to process S604.
[0079] In S604, the authentication level management unit 340 of the application server 104 sends a recommended authentication level to the authentication server 104. Upon receiving the recommended authentication level, the authentication server 104 proceeds to S605.
[0080] In S605, the authentication request management unit 350 of the authentication server 104 sends a credential information registration request to the authentication terminal 101, along with the recommended authentication level and challenge. The following are specific examples of requests included in the credential information registration sent from the authentication request management unit 350, but are not limited to these.
[0081] { challenge: “ASD123tre12312FE”, medicalLevel: “L2”, rp: { name: “AdminPage”, id: “https: / / example_srv.com / admin”, User: { id: “user001”, name: “user001”, displayName: “user001”, }, pubKeyCredParams: [ {alg: -7, type: “public-key”}, {alg: -257, type: “public-key”}], AuthenticatorSelection: { authenticatorAttachment: “platform”, requireResidentKey: true, } } }
[0082] When the authentication terminal 101 receives the recommended authentication level, challenge, and credential information registration request, it proceeds to process S606. In S606, the authentication client 320 of the authentication terminal 101 sets the "Continue Credential Registration" flag, an internal variable used to determine whether to continue registering credential information, to "True," and then performs the credential creation decision process. The details of this process are explained in Figure 7 below. If the credential registration continuation flag becomes "False" as a result of this credential creation decision process, the process in Figure 6 is terminated. On the other hand, if it becomes "True," the process proceeds to S607.
[0083] In S607, the authentication terminal 101 acquires the biometric information of the user using the authentication terminal 101. Specifically, the authentication client 320 of the authentication terminal 101 sends a biometric information acquisition request to the biometric authentication processing unit 331. Upon receiving the biometric information acquisition request, the biometric authentication processing unit 331 waits until the user's biometric information is entered. Once the user's biometric information is entered, the biometric authentication processing unit 331 acquires the feature quantities of the entered biometric information. The feature quantities of biometric information are values obtained by converting something unique to each individual, such as a fingerprint pattern, iris pattern, or vein shape, into values that do not impair uniqueness. Biometric authentication is the process of identifying an individual using these unique feature quantities. It is desirable that the biometric information transmitted in this process be encrypted using a known encryption technology so that only the authenticator 103 can decrypt it.
[0084] Next, in S608, the biometric authentication processing unit 331 of the authentication terminal 101 performs the authentication process. It sends a request to the biometric information management unit 333 to confirm that the biometric information acquired in S607 is registered. Specifically, the biometric authentication processing unit 331 of the authentication terminal 101 sends a request to the biometric information management unit 333 to confirm that the biometric information acquired in S607 is registered. If the biometric authentication processing unit 331 receives from the biometric information management unit 333 that the biometric information is already registered, it determines that the authentication was successful; otherwise, it terminates this process.
[0085] If the biometric authentication process in S608 is successful, the biometric authentication processing unit 331 of the authentication terminal 102 proceeds to S609. In S609, the biometric authentication processing unit 331 of the authentication terminal 101 creates credential information including a private key and a public key pair and sends a request to the credential information storage unit 332 to store it. When the credential information storage unit 332 receives the request to store the credential information, it stores the credential information. Table 12 shows an example of a credential information table after the credential information has been created. [Table 12]
[0086] Next, in S610, the authentication client 320 of the authentication terminal 101 sends the result of creating the credential information to the authentication server 104. The following is a specific example of the result of creating the credential information to be sent to the authentication server 104, but it is not limited to this example.
[0087] { “id”: “asda13123fdcccc9786546”, “rawId”: “10004”, “response”: { “clientDataJson”: { “type”: “webauthn.create”, “challenge”: “NKX1239887823ASd”, “origin”: “https: / / device101.me”, “crossOrigin”: false }, “attestationObject”: { “aaguid”: 0000000-0000-0000-0000-000000000000, “credentialId”: “10004”, “credentialPublicKey”: {"kty": "RSA", “alg”: “ECDSA_alg_sha256”, “crv”: p-256, “x”: “1aasdaVERSSDfs / werwcsdfsdf”, “y”: “oisdfsdbfsbdhs / easdas,casdasd” } }, “authenticatorAttachment”: “platform”, “type”: “public-key” }
[0088] The resulting credential information includes the challenge received in S605 and the public key created in 609, and is signed with the private key for the attestation. The attestation private key is a key corresponding to the model of the authentication terminal 101 and is pre-stored in the authentication terminal 101.
[0089] Upon receiving the above credential information creation result, the authentication server 104 proceeds to process S611. In S611, the authentication request management unit 350 of the authentication server 104 verifies the signature to the challenge included in the credential information creation result. If the verification is successful, it obtains the public key included in the credential information creation result, sends a public key storage request to the public key management unit 351, and stores the public key. On the other hand, if the verification fails, it notifies the authentication terminal 101 via the application server 103 that the challenge verification failed, and terminates this process.
[0090] Table 13 shows an example of a public key table managed by the public key management unit 351 after public key registration. [Table 13]
[0091] Next, in S612, the authentication request management unit 350 of the authentication server 104 sends the result of creating the credential information to the application server 104. Upon receiving the result of creating the credential information, the application server 103 proceeds to S613.
[0092] In S613, the credential registration processing unit 342 of the application server 103 sends the result of creating the credential information to the authentication terminal 101. Upon receiving the result of creating the credential information, the authentication terminal 101 proceeds to S614.
[0093] In S614, the authentication client 320 of the authentication terminal 101 sends a request to retrieve the credential information registered in the credential storage unit 332, and sends the retrieved credential information to the credential information management server 105. This communication uses known encrypted communication such as SSL (Secure Sockets Layer). When the credential information management server 105 receives the credential information, it proceeds to processing in S615.
[0094] In S615, the credential information management unit 360 of the credential information management server 105 stores the credential information. Table 14 shows an example of a registered credential information table in the credential information management unit 360 of the credential information management server 105. [Table 14]
[0095] In other words, this indicates that if the authentication terminal 101 meets the authentication level required by the application server 103, the credential information can be registered. Furthermore, in step S615, the credential information management server 105 sends the credential information registration result to the authentication terminal 101 and terminates this process.
[0096] <Credential creation decision process> The credential creation decision process executed by the authentication client 320 of the authentication terminal 101 at S609 in Figure 6 above will be explained with reference to Figure 7. Figure 7 is a flowchart showing an example of the credential creation decision process in the first embodiment. This process is performed in the credential information registration process to determine whether to create credential information. This process is realized by the CPU 201 of the authentication terminal 101 reading the program stored in the HDD 203 into the memory 202 and executing it.
[0097] First, when the credential creation decision process is initiated, in S701, the authentication client 320 of the authentication terminal 101 obtains the authentication level of the authenticator 330. Next, in S702, when the authentication client 320 receives a credential registration request, it compares the authentication level sent from the authentication server 104 (the authentication level recommended by the application server 103, hereinafter referred to as the "recommended authentication level") with the authentication level of the authenticator 330.
[0098] Then, if the authentication client 320 determines that the authentication level of the authenticator 330 is equal to or higher than the recommended authentication level (if the answer is YES in S702), it proceeds to S703. At S703, the authentication client 320 changes the credential registration continuation flag to "True" and terminates the processing of this flowchart.
[0099] On the other hand, if the authentication client 320 determines that the authentication level of the authenticator 330 is lower than the recommended authentication level (i.e., the answer is NO in S702), it proceeds to S704. At S704, the authentication client 320 changes the credential registration continuation flag to "False" and terminates the processing of this flowchart.
[0100] <Credential Information Synchronization Processing> The credential information synchronization process will be explained below using Figure 8. The credential information synchronization process synchronizes the credential information registered in the application server 103 with the authentication terminal 102 of the user utilizing the credential information management server 105. This process enables the synchronization of credential information only if the authentication level of the authentication terminal 102, which is the destination of the credential information synchronization, is equal to or higher than the authentication level recommended by the application server 103.
[0101] Figure 8 is a sequence diagram showing the processing of the authentication terminal 102, application server 103, and credential information management server 105 in the credential information synchronization process of the first embodiment. In this figure, the processing of the authentication terminal 102 is realized by the CPU 201 of the authentication terminal 102 reading the program stored in the HDD 203 into memory 202 and executing it. The processing of the application server 103 and the credential information management server 105 is realized by the CPU 210 of each server reading the program stored in the HDD 212 into memory 211 and executing it.
[0102] When the credential information registration process begins, in S801, the browser 310 of the authentication terminal 102 sends an authentication request to the credential information management server 105. Upon receiving this authentication request, the application server 103 proceeds to S802.
[0103] In S802, the user management unit 362 of the credential information management server 105 sends a user information acquisition request to the authentication terminal 102. Upon receiving the user information acquisition request, the authentication terminal 102 proceeds to S803.
[0104] In S803, the browser 310 of the authentication terminal 102 displays the authentication screen (not shown) of the credential information management server 105 and accepts the user ID and password of the user using the authentication terminal 102. Upon receiving input from the user, the browser 310 of the authentication terminal 102 sends the user ID and password to the credential information management server 105. In this embodiment, the user ID is assumed to be "user002" and the password is assumed to be "userpass2". Upon receiving the user ID and password, the credential information management server 105 proceeds to S804.
[0105] In S804, the user management unit 362 of the credential information management server 105 performs verification of user information (user ID and password). If the matching user ID and password combination exists in the user information table, the authentication result is set to authentication success; otherwise, the authentication result is set to authentication failure.
[0106] Next, at S805, the user management unit 362 of the credential information management server 105 sends the verification result to the authentication terminal 102. Upon receiving the verification result, the authentication terminal 102 continues the process if the authentication result is successful, and terminates the process shown in Figure 8 if the authentication fails.
[0107] Next, in S806, the authentication terminal 102 sends a request to the credential information management server 105 to retrieve information about services provided by the application server 103, which is associated with the credential information to be synchronized and linked to the successfully authenticated user. Upon receiving this request, the credential information management server 105 proceeds to S807.
[0108] In S807, the credential synchronization control unit 361 of the credential information management server 105 sends a request to the credential information management unit 360 to obtain information about the application server associated with the credential information to be synchronized, which is linked to the authenticated user, and obtains it. The credential synchronization control unit 361 then sends the URLs of the services (service URLs) provided by the application server 103 that it has obtained to the authentication terminal 102 in a batch.
[0109] An example of a response sent from the credential synchronization control unit 361 is shown below. {"services": [“https: / / example_srv.com / customer”, “https: / / example_srv.com / distributor”, “https: / / example_srv.com / admin”] }
[0110] When authentication terminal 102 receives the service URL sent in bulk, it proceeds to process S808. In S808, the authentication terminal 102 processes each URL obtained from the credential information management server 105. In the loop of S808, the URL being processed is called the "current URL".
[0111] First, at S809, the authentication client 320 of the authentication terminal 102 sends a request to the application server 102 corresponding to the current URL to obtain the recommended authentication level. Upon receiving this request, the application server 102 corresponding to the current URL proceeds to S810 for processing.
[0112] In S810, the authentication level management unit 340 of the application server 103 corresponding to the current URL sends a recommended authentication level to the authentication terminal 102. Upon receiving the recommended authentication level, the authentication terminal 102 proceeds to S811.
[0113] In S811, the authentication client 320 of the authentication terminal 102 sets the credential synchronization continuation flag, an internal variable that determines whether to continue synchronizing credential information, to "True," and then performs the credential synchronization decision process. Details of the credential synchronization decision process are explained in Figure 9 below. If the credential synchronization continuation flag becomes "False" as a result of this credential synchronization decision process, the process proceeds to the next URL. On the other hand, if it becomes "True," the process proceeds to S812.
[0114] In S812, the authentication client 320 of the authentication terminal 102 sends a request to the credential information management server 105 to retrieve user credential information associated with the service corresponding to the current URL. Upon receiving this request, the credential information management server 105 proceeds to S813.
[0115] In S813, the credential synchronization control unit 361 of the credential information management server 105 obtains the user's credential information associated with the service specified in the acquisition request from the credential information management unit 360. The credential synchronization control unit 361 transmits the user's credential information associated with the service specified in the acquisition request to the authentication terminal 102. Upon receiving the credential information, the authentication terminal 102 proceeds to S814.
[0116] In S814, the authentication client 320 of the authentication terminal 102 sends a request to register credential information to the credential information storage unit 332, registers the credential information, and proceeds to the process associated with the following URL. Once authentication terminal 102 has finished processing all URLs received by 807, it exits the loop at S808 and proceeds to process S815.
[0117] In S815, the authentication client 320 of the authentication terminal 102 confirms that all processing of the credential information associated with the application server information obtained in S807 has been completed, and terminates this process.
[0118] Table 15 shows an example of the credential information table in the credential information storage unit 332 of the authentication terminal 102 after this process. [Table 15] Table 15 shows that this process allowed for the synchronization of only credential information that met the authentication level recommended by the service provided by the application server 103.
[0119] <Credential synchronization determination process> The credential synchronization determination process performed by the authentication client 320 of the authentication terminal 102 at S811 in Figure 8 above will be explained with reference to Figure 9. Figure 9 is a flowchart showing an example of the credential synchronization determination process in the first embodiment. This process is performed to determine the synchronization of credential information in the credential information synchronization process. This process is realized by the CPU 201 of the authentication terminal 101 reading the program stored in the HDD 203 into the memory 202 and executing it.
[0120] First, when the credential synchronization determination process is initiated, at S901, the authentication client 320 obtains the authentication level of the authenticator 330. Next, in S902, when the authentication client 320 receives a credential synchronization request, it compares the authentication level sent from the application server 103 (referred to as the "recommended authentication level") with the authentication level of the authenticator 330 obtained in S901.
[0121] Then, if the authentication client 320 determines that the authentication level of the authenticator 330 is equal to or higher than the recommended authentication level (if the answer in S902 is YES), it proceeds to S903. At S903, the authentication client 320 changes the credential synchronization continuation flag to "True" and terminates the processing of this flowchart.
[0122] On the other hand, if the authentication client 320 determines that the authentication level of the authenticator 330 is lower than the recommended authentication level (i.e., NO in S902), it proceeds to S904. At S904, the authentication client 320 changes the credential synchronization continuation flag to "False" and terminates the processing of this flowchart.
[0123] As described above, in the first embodiment, credentials are registered or synchronized with the terminal only if the authentication level recommended by the server providing the resources is met. This prevents credentials from being stored on terminals with an authentication level lower than the one recommended by the application server, making it possible to use the server providing resources more securely.
[0124] [Second Embodiment] In the second embodiment, when synchronizing credential information between authentication terminals, a configuration is shown in which the synchronization of credential information performed between authentication terminals is restricted when there is a recommended authentication level in the service provided by the application server.
[0125] <System Configuration> Figure 10 is a diagram illustrating the overall configuration of the system in the second embodiment. In Figure 10, the authentication terminal 101, application server 103, authentication server 104, and credential information management server 105 are the same as in the system configuration of the first embodiment, so their explanation is omitted. 1001 is the authentication terminal. 1002 is the credential information management server, which manages the credential information of the authentication terminal 1001.
[0126] The authentication terminal 1001 sends a request to the application server 103 to create credential information and obtains challenge and recommended authentication level information from the authentication server 104. The authentication terminal 1001 then sends the registration result of the credential information to the authentication server 104. The authentication terminal 1001 also sends a request to the credential information management server 1002 to register the credential information and obtains the registration result from the credential information management server 1002. In addition, the authentication terminal 1001 sends a request to the credential information management server 1002 to retrieve the registered credential information. When sending this request to retrieve credential information (synchronization request), the authentication terminal 1001 must perform an authentication request to the credential information management server 1002 and succeed in authentication. Furthermore, the authentication terminal 1001 sends a request to the application server 103 to retrieve recommended authentication level information and obtains the recommended authentication level information from the application server 103. Furthermore, the authentication level of authentication terminal 1001 must meet the recommended authentication level obtained above.
[0127] When the credential information management server 1002 receives a request from the authentication terminal 1001 to register credential information, it registers the credential information in the credential information management server 1002 and sends the credential information registration result to the authentication terminal 1001. In addition, when the credential information management server 1002 receives a request to acquire credential information (synchronization request) from the authentication terminal 1001, it sends the credential information to the authentication terminal 1001. Furthermore, when using the synchronization function, the credential information management server 1002 requires authentication of the user using the authentication terminal 1001 and provides the authentication function to the authentication terminal 1001.
[0128] The authentication terminal 1001 is connected to the global network 108 via the local network 107. Additionally, the authentication terminals 101, 1001, application server 103, authentication server 104, and credential information management servers 105 and 1002 are connected via the global network 108.
[0129] <Hardware configuration of authentication terminal and server> Regarding the hardware configuration of the authentication terminal, the CPU, memory, hard disk drive (HDD), system bus, UI control unit, input device, network control unit, TPM, and biometric information sensor are the same as in the first embodiment and are therefore omitted. In the second embodiment, authentication terminals 101 and 1001 are each equipped with a proximity communication interface in addition to the above configuration. This proximity communication interface is a network interface for proximity communication such as NFC (Near Field Communication) or Bluetooth®. Authentication terminal 101 and authentication terminal 1001 communicate and exchange data using this proximity communication interface. Furthermore, authentication terminals 101 and 1001 are equipped with a camera in addition to the above configuration and process the input from the camera as an image.
[0130] Note that the hardware configurations of the information processing devices comprising the application server 103, authentication server 104, and credential information management server 105 are the same as those in the first embodiment and are therefore omitted.
[0131] <Functional Configuration> Figure 11 is a block diagram showing an example of the functional configuration of authentication terminals 101, 1001, application server 103, authentication server 104, and credential information management servers 105, 1002 in the second embodiment, and components identical to those in Figure 3 are denoted by the same reference numerals.
[0132] The authentication terminals 101 and 1001 each include a browser 1110, an authentication client 1120, an image processing unit 1130, and an authenticator 330. In addition to the functions provided by the browser 310 of the first embodiment, the browser 1110 also provides the function of receiving a request from the authentication terminal of the authentication client 1120 and displaying a QR code (registered trademark). Here, it is described as a QR code, but other two-dimensional codes, barcodes, or other types of codes may also be used.
[0133] In addition to the functions provided by the authentication client 320 of the first embodiment, the authentication client 1120 provides a function to control the synchronization of credential information between authentication terminals. Furthermore, when the authentication client 1120 receives an authentication level acquisition request sent from another authentication terminal, it provides a function to send the authentication level of the authentication terminal on which it is operating. In this embodiment, the authentication level managed by the authentication client 1120 of authentication terminal 101 is L2, and the authentication level managed by the authentication client 1120 of authentication terminal 1001 is L1.
[0134] The image processing unit 1130 provides a function for analyzing image information input by the user. In particular, in this embodiment, the image processing unit 1130 acquires and analyzes a QR code input by the user from the camera installed in the authentication terminal. Furthermore, if the image processing unit 1130 determines from the results of the analysis that it is a request for credential information synchronization processing, it sends a request for credential information synchronization processing to the authentication client 1120. The credential information synchronization processing is shown in Figure 13, which will be described later. Note that the authenticator 330, biometric authentication processing unit 331, credential information storage unit 332, and biometric information management unit 33 have the same configuration as in the first embodiment and are therefore omitted from this description.
[0135] Here, we will illustrate the credential information held by the credential information storage unit 332 of authentication terminals 101 and 102, and the biometric information table held by the biometric information management unit 333 of authentication terminals 101 and 1001.
[0136] Table 16 shows an example of a credential information table held by the credential information storage unit 332 of the authentication terminal 101. [Table 16] Table 17 shows an example of a credential information table held by the credential information storage unit 332 of the authentication terminal 1001. [Table 17]
[0137] Table 18 shows an example of a biometric information table maintained by the biometric information management unit 333 of the authentication terminal 101. [Table 18] Table 19 shows an example of a biometric information table maintained by the biometric information management unit 333 of the authentication terminal 1001. [Table 19]
[0138] The authentication level management unit 340, authentication processing unit 341, and credential registration processing unit 342 of the application server 103 have the same configuration as in the first embodiment, so they are omitted from this description. The authentication request management unit 350 and the public key management unit 351 of the authentication server 104 have the same configuration as in the first embodiment, so they are omitted here. The credential information management unit 360, credential synchronization control unit 361, and user management unit 362 of the credential information management servers 105 and 1002 have the same configuration as in the first embodiment and are therefore omitted from this description.
[0139] Here, we will illustrate the user information tables maintained by the user management unit 362 of the credential information management servers 105 and 1002. The structure of the credential information records and user information records is the same as in the first embodiment.
[0140] Table 20 shows an example of a user information table maintained by the user management unit 362 of the credential information management server 105. [Table 20] Table 21 shows an example of a user information table maintained by the user management unit 362 of the credential information management server 1002. [Table 21]
[0141] <Credential Management Server Authentication Process> The authentication process for the credential information management server will be explained using Figure 12. In this process, authentication is performed before authentication terminals 101 and 1001 perform the credential information synchronization process with credential information management servers 105 and 1002, respectively.
[0142] Figure 12 is a sequence diagram illustrating the processing of authentication terminals 101 and 1001 and credential information management servers 105 and 1002 in the credential information management server authentication process of the second embodiment. In this figure, the processing of authentication terminals 101 and 1001 is achieved by the CPU 201 of each authentication terminal reading a program stored in HDD 203 into memory 202 and executing it. The processing of credential information management servers 105 and 1002 is achieved by the CPU 210 of each credential information management server reading a program stored in HDD 212 into memory 211 and executing it.
[0143] When the credential information management server authentication process starts, in S1201, the browser 1110 of the authentication terminal sends an authentication request to the credential information management server. For example, in the case of authentication terminal 101, the request is sent to the credential information management server 105. In the case of authentication terminal 1001, the request is sent to the credential information management server 1002.
[0144] When the credential information management server receives this authentication request, it proceeds to S1202. In S1202, the user management unit 362 of the credential information management server sends a user information acquisition request to the authentication terminal. For example, in the case of credential information management server 105, the request is sent to authentication terminal 101. In the case of credential information management server 1002, the request is sent to authentication terminal 1001.
[0145] When the authentication terminal receives this user information acquisition request, it proceeds to S1203. In S1203, the authentication terminal's browser 1110 accepts input of the user ID and password of the user using the authentication terminal. After obtaining the input from the user, the authentication terminal's browser 1110 sends the acquired user ID and password to the credential information management server. For example, in the case of authentication terminal 101, the request is sent to the credential information management server 105. In the case of authentication terminal 1001, the request is sent to the credential information management server 1002. In this embodiment, for example, the user ID sent from authentication terminal 101 is "user001" and the password is "userpass1". Also, the user ID sent from authentication terminal 1001 is "user003" and the password is "userpass3".
[0146] When the credential information management server receives the user ID and password, it proceeds to process S1204. In S1204, the user management unit 362 of the credential information management server verifies the user information (the received user ID and password). For example, if the matching user ID and password combination exists in the user information table, the authentication result is set to "authentication successful"; otherwise, the authentication result is set to "authentication failed".
[0147] Next, in S1205, the user management unit 362 of the credential information management server sends the verification result to the authentication terminal and terminates this process. For example, in the case of credential information management server 105, the request is sent to the authentication terminal 101. In the case of credential information management server 1002, the request is sent to the authentication terminal 1001.
[0148] <Credential Information Synchronization Processing> The credential information synchronization process will be explained using Figure 13. In this process, the authentication terminal 1001 is synchronized with the credential information registered by the application server 103 held by the authentication terminal 101. In this process, the credential information can be registered only if the authentication level of the authentication terminal 1001, which is the terminal that registers the credential information, is equal to or higher than the authentication level recommended by the application server 103. On the other hand, if the authentication level of the authentication terminal 1001, which is the terminal that registers the credential information, is lower than the authentication level recommended by the application server 103, it will not be possible to register the credential information.
[0149] Figure 13 is a sequence diagram illustrating the processing of authentication terminal 101, authentication terminal 1001, and application server 103 in the credential information synchronization process of the second embodiment. In this figure, the processing of authentication terminals 101 and 1001 is achieved by the CPU 201 of each authentication terminal reading a program stored in HDD 203 into memory 202 and executing it. The processing of application server 103 is achieved by the CPU 210 of each credential information management server reading a program stored in HDD 212 into memory 211 and executing it.
[0150] When the credential information synchronization process starts, in S1301, the authentication client 1120 of the authentication terminal 101 sends a request to the browser 1110 to display a QR code. As a result, a QR code is displayed on the touch panel 206 of the authentication terminal 101.
[0151] When a user reads this QR code using a camera (not shown) mounted on the authentication terminal 1001, in S1302, the image processing unit 1130 of the authentication terminal 1001 acquires the image information of the QR code entered by the user and performs analysis of the QR code. If the analysis determines that the QR code is a request for credential information synchronization processing, the authentication terminal 1001 starts communication with the authentication terminal 101, for example, using BLE (Bluetooth Low Energy). Since BLE is a well-known technology, an explanation is omitted here. Note that communication between the authentication terminal 1001 and the authentication terminal 101 is not limited to BLE and may use other communication methods.
[0152] Next, in S1303, processing is performed for each piece of credential information held in the credential information storage unit 332. In the loop of S1303, the credential information being processed is called the "current credential information".
[0153] First, in S1304, the authentication client 1120 of the authentication terminal 101 sends a request to the application server 103 to obtain a recommended authentication level associated with the credential information. Upon receiving this request for obtaining a recommended authentication level, the application server 103 proceeds to S1305.
[0154] In S1305, the authentication level management unit 340 of the application server 103 sends a recommended authentication level associated with the requested credential information to the authentication terminal 101. Upon receiving this recommended authentication level, the authentication terminal 101 proceeds to S1306.
[0155] In S1306, the authentication client 1120 of the authentication terminal 101 sends an authentication level acquisition request to the authentication terminal 1001. Upon receiving this authentication level acquisition request, the authentication terminal 1001 proceeds to S1307.
[0156] In S1307, the authentication client 1120 of the authentication terminal 1001 transmits the authentication level of the authentication terminal 1001 to the authentication terminal 101. Upon receiving this authentication level, the authentication terminal 101 proceeds to S1308.
[0157] In S1308, the authentication client 1120 of the authentication terminal 101 sets the credential synchronization continuation flag to "True" and then performs the credential synchronization determination process. This process will be explained in detail in Figure 14 below. If the credential synchronization continuation flag becomes "False" as a result of this process, the authentication terminal 101 proceeds to the process associated with the next set of credential information. On the other hand, if it becomes "True", the authentication terminal 101 proceeds to S1309.
[0158] In S1309, the authentication client 1120 of the authentication terminal 101 transmits the relevant credential information to the authentication terminal 1001. This communication utilizes known encrypted communication such as SSL. Upon receiving this credential information, the authentication terminal 1001 proceeds to S1310.
[0159] In S1310, the authentication client 1120 of the authentication terminal 1001 sends a request to the credential information storage unit 332 to save the credential information received in 1309, and saves the credential information in the credential information storage unit 332. Furthermore, the authentication terminal 101 proceeds to the processing associated with the next set of credential information. Once the authentication terminal 101 has finished processing all the credential information held in the credential information storage unit 332, it exits the loop in S1303 and proceeds to S1311.
[0160] In S1311, the authentication client 1120 of the authentication terminal 101 confirms that processing has been completed for all credential information held in the credential information storage unit 332, and terminates this process.
[0161] In the loop described in S1303, the authentication terminal 101 retains the authentication level of the authentication terminal 1001 obtained in S1306 and S1307, and in the second and subsequent iterations of the loop, it may skip S1306 and S1307 and use the authentication level that has been retained.
[0162] Table 22 shows an example of the credential information table in the credential information storage unit 332 of the authentication terminal 1001 after this process. [Table 22]
[0163] Here, the authentication level of the service URL corresponding to the credential information held by the authentication terminal 101 shown in Table 16 above is shown based on Table 7 above. • Authentication level "L1" for the customer service "https: / / example.erv.com / customer" • Authentication level "L1" for the sales service "https: / / example.erv.com / distributor" • Authentication level "L2" for the system administrator service "https: / / example.erv.com / admin" Furthermore, as mentioned above, the authentication level managed by the authentication client 1120 of the authentication terminal 1001 is set to "L1". In this case, the authentication terminal 1001 satisfies the authentication level "L1" for customer services and sales services, but does not satisfy the authentication level "L2" for system operator services. In other words, Table 22 shows that, as a result of the process in Figure 13, only the credential information for customer services and sales services that meet the authentication level recommended by the application server 103 was synchronized, while the credential information for system operator services that do not meet the authentication level was not synchronized.
[0164] <Credential creation decision process> The credential creation decision process, which is performed by the authentication client 1120 of the authentication terminal 101, will be explained using Figure 14. Figure 14 is a flowchart showing an example of the credential synchronization determination process in the second embodiment. This process is the process of determining the synchronization of credential information in the credential information synchronization process. This process is realized by the CPU 201 of the authentication terminal 101 reading the program stored in the HDD 203 into the memory 202 and executing it.
[0165] When this process begins, in S1401, the authentication client 1120 of the authentication terminal 101 obtains the authentication level of the authentication terminal 1001. Next, in S1402, the authentication client 1120 of the authentication terminal 101 compares the recommended authentication level sent from the application server 103 with the authentication level of the authentication terminal 1001 obtained in S1401 when it receives a credential synchronization request.
[0166] Then, if it is determined that the authentication level of the authentication terminal 1001 is equal to or higher than the recommended authentication level (if the answer is YES in S1402), the authentication client 1120 of the authentication terminal 101 proceeds to S1403. In S1403, the authentication client 1120 of the authentication terminal 101 changes the credential synchronization continuation flag to "True" and terminates the processing of this flowchart.
[0167] On the other hand, if it is determined that the authentication level of the authentication terminal 1001 is below the recommended authentication level (i.e., NO in S1402), the authentication client 1120 of the authentication terminal 101 proceeds to S1404. At S1404, the authentication client 1120 of the authentication terminal 101 changes the credential synchronization continuation flag to "False" and terminates the processing of this flowchart.
[0168] As described above, according to the second embodiment, credentials will not be stored on terminals with an authentication level lower than the authentication level recommended by the application server, making it possible to use a server that provides resources more securely.
[0169] [Third Embodiment] In the third embodiment, a configuration is shown in which the synchronization of credential information registered by a service provided by the application server is restricted to authentication terminals with an authentication level lower than that of the authentication terminal from which the information was registered. When credential information is synchronized, the terminal with the lowest authentication level among the synchronizing authentication terminals becomes a security vulnerability. Therefore, by restricting synchronization to terminals with an authentication level lower than that at the time of registration, it is possible to prevent a decrease in security across all authentication terminals managed by the user.
[0170] <System Configuration> The system configuration is the same as in the first embodiment, so we will omit the explanation. <Hardware configuration of authentication terminal and server> The hardware configuration is the same as in the first embodiment, so we will omit the explanation.
[0171] <Functional Configuration> Figure 15 is a block diagram showing an example of the functional configuration of the authentication terminals 101 and 102, application server 103, authentication server 104, and credential information management server 105 in the third embodiment, with the same reference numerals used for components identical to those in Figure 3.
[0172] The authentication terminals 101 and 102 are equipped with a browser 310, an authentication client 1501, and an authenticator 330. Since browser 310 has the same configuration as in the first embodiment, its description will be omitted. In addition to the functions of the first embodiment, the authentication client 1501 provides a function to control synchronization based on the authentication level at the time of registration of the credential information to be synchronized (i.e., the authentication level of the device that created and registered the credential information). The credential information will be described in the credential information storage unit 1503.
[0173] The authenticator 330 comprises a biometric authentication processing unit 1502, a credential information storage unit 1503, and a biometric information management unit 333. Since the biological information management unit 333 has the same configuration as in the first embodiment, its description will be omitted. In addition to the functions of the first embodiment, the biometric authentication processing unit 1502 provides a function to maintain the authentication level of the authentication terminal at the time of registration when registering credential information. The credential information storage unit 1503 provides a function to store the credential information created when the public key for using the services provided by the application server 103 is registered with the authentication server 104.
[0174] Table 23 shows an example of a credential information table held in the credential information storage unit 1503 of the authentication terminal 101. [Table 23] Table 24 shows an example of a credential information table held in the credential information storage unit 1503 of the authentication terminal 102. [Table 24] As shown in Tables 23 and 24, the credential information record includes the authentication information ID, private key, user ID, service URL, and the authentication level at the time of registration, which is the authentication level of the authentication terminal at the time of registration.
[0175] The functional configuration of the application server 103 is the same as in the first embodiment, so a description will be omitted. The functional configuration of the authentication server 104 is the same as in the first embodiment, so a description will be omitted.
[0176] The credential information management server 105 comprises a credential information management unit 1504, a credential synchronization control unit 361, and a user management unit 362. The credential synchronization control unit 361 and the user management unit 362 are the same as in the first embodiment, so their description is omitted. In addition to the functions of the credential information management unit 360 in the first embodiment, the credential information management unit 1504 also saves the authentication level at the time of registration of the credential information when saving the credential information.
[0177] Table 25 shows an example of a credential information table in the credential information management unit 360 of the credential information management server 105. [Table 25] As shown in Table 25, the credential information record includes the authentication information ID, private key, user ID, service URL, and authentication level at registration.
[0178] <User Authentication Process> The user authentication process is the same as in the first embodiment, so we will omit its explanation. <Credential Information Registration Process> The credential information registration process will be explained using Figure 16. This process, in addition to the credential information registration process in the first embodiment, shows a configuration that maintains the authentication level at the time of credential information registration for both the authentication terminal and the credential information management server.
[0179] FIG. 16 is a sequence diagram illustrating the processes of the authentication terminal 101, application server 103, authentication server 104, and credential information management server 105 in the credential information registration process according to the third embodiment. In this figure, the process of the authentication terminal 101 is realized by the CPU 201 of the authentication terminal 101 reading the program stored in the HDD 203 into the memory 202 and executing it. Also, the processes of the application server 103, authentication server 104, and credential information management server 105 are respectively realized by the CPU 210 of each credential information management server reading the program stored in the HDD 212 into the memory 211 and executing it.
[0180] Regarding the credential information registration processes S1601 to S1608, since they are the same as S601 to S608 in the first embodiment, the description thereof is omitted. Subsequently, in S1609, the biometric authentication unit 1502 of the authentication terminal 101 creates credential information and transmits a request to save it in the credential storage unit 1503. When the credential storage unit 1503 receives the request to save the credential information, it stores the credential information.
[0181] Table 26 shows an example of the credential information table after the creation of the credential information.
Table 26
[0182] Regarding the credential information registration processes S1610 to S1614, since they are the same as S610 to S614 in the first embodiment, the description thereof is omitted. When the credential information management server 105 receives the credential information transmitted from the authentication terminal 101 in S1614, it proceeds to S1615. In S1615, the credential information management unit 1504 of the credential information management server 105 stores the credential information. Table 27 shows an example of the credential information table after registration. [Table 27]
[0183] Furthermore, in the above S1615, the credential information management server 105 transmits the credential information registration result to the authentication terminal 101 and ends this process.
[0184] <0۰00912><Credential Creation Judgment Process>[ The credential creation judgment process is the same as that of the first embodiment, and the description thereof is omitted.
[0185] [[ID=十八]] <Credential Information Synchronization Process>[ The credential information synchronization process will be described with reference to FIG. 17. [ In this process, the credential information registered by the application server 103 is synchronized to the authentication terminal 102 of the user who uses the credential information management server 105. Note that in this process, the credential information is synchronized only when the authentication level of the authentication terminal 102, which is the synchronization destination of the credential information, is equal to or higher than the authentication level recommended by the application server 103 and is equal to or higher than the authentication level of the authentication terminal at the time of registration.
[0186] FIG. 17 is a sequence diagram showing the processes of the authentication terminal 102, the application server 103, the authentication server 104, and the credential information management server 105 in the credential information synchronization process of the third embodiment. In this figure, the process of the authentication terminal 102 is realized by the CPU 201 of the authentication terminal 102 reading the program stored in the HDD 203 into the memory 202 and executing it. Also, the processes of the application server 130 and the credential information management server 105 are realized by the CPU 210 of each credential information management server reading the program stored in the HDD 212 into the memory 211 and executing it, respectively.
[0187] Sections S1701 to S1706 are the same as those in S801 to S806 of the first embodiment, so their explanation will be omitted.
[0188] In S807, the credential synchronization control unit 361 of the credential information management server 105 sends a request to the credential information management unit 360 to obtain information about the application server associated with the credential information to be synchronized, which is linked to the authenticated user, and obtains it. The credential synchronization control unit 361 then sends the URL of the service provided by the application server 103 (service URL) and the authentication level at the time of registration to the authentication terminal 102 in a single transmission. Alternatively, the authentication terminal 102 may obtain the service URL and the authentication level at the time of registration separately.
[0189] Furthermore, since sections S1708 to S1710 are the same as those in sections S808 to S810 of the first embodiment, their explanation will be omitted.
[0190] In S1711, the authentication client 1501 of the authentication terminal 102 sets the credential synchronization continuation flag to "True" and then performs the credential synchronization determination process. This process is shown in Figure 18, which will be described later. If the credential synchronization continuation flag becomes "False" as a result of this credential synchronization determination process, the process proceeds to the next URL. On the other hand, if it becomes "True", the process proceeds to S1712.
[0191] Next, regarding S1712 to S1714, since they are the same as S812 to S814 in the first embodiment, we will omit the explanation. In step S1715, the authentication client 320 of the authentication terminal 102 confirms that all processing of the credential information associated with the acquired application server information has been completed, and terminates this process.
[0192] Table 28 shows an example of the credential information table in the credential information storage unit 1503 of the authentication terminal 102 after this process. [Table 28] Table 28 shows that this process allowed only credential information whose authentication level on the synchronization-side authentication terminal was equal to or higher than the authentication level of the authenticator at the time of registration to be synchronized.
[0193] <Credential creation decision process> The credential creation decision process, which is performed by the authentication client 1501 of the authentication terminal 102, will be explained using Figure 18. This process is the process that performs the synchronization decision of credential information in the credential information synchronization process.
[0194] Figure 18 is a flowchart showing an example of the credential synchronization determination process in the third embodiment. This process is implemented by the CPU 201 of the authentication terminal 102 reading the program stored in the HDD 203 into the memory 202 and executing it.
[0195] When this process begins, in S1801, the authentication client 1501 of the authentication terminal 102 obtains the authentication level of the authenticator 330 of the authentication terminal 102. Next, in S1802, the authentication client 1501 of the authenticator 330 compares the recommended authentication level sent from the application server 103, the registration authentication level sent from the credential information management server 105, and the authentication level of the authentication terminal 102 obtained in S1801.
[0196] Then, if the authentication client 1501 determines that the authentication level of the authentication terminal 102 is equal to or greater than the authentication level sent from the application server 103, and also equal to or greater than the authentication level at the time of registration (if the answer is YES in S1802), the process proceeds to S1803. In S1803, authentication client 1501 changes the credential registration continuation flag to "True" and terminates the processing of this flowchart.
[0197] On the other hand, when the authentication client 1501 determines that the authentication level of the authentication terminal 102 is less than the authentication level transmitted from the application server 103 or less than the registration-time authentication level (when the answer in S1802 is NO), the process proceeds to S1804. In S1804, the authentication client 1501 changes the credential registration continuation flag to "False" and ends the processing of this flowchart.
[0198] Note that the registration-time authentication level should satisfy the authentication level recommended by the application server. Therefore, in S1802 described above, only the registration-time authentication level transmitted from the credential information management server 105 and the authentication level of the authentication terminal 102 obtained in S1801 may be compared. And when it is determined that the authentication level of the authentication terminal 102 is equal to or higher than the registration-time authentication level, the credential registration continuation flag is changed to "True". On the other hand, when it is determined that the authentication level of the authentication terminal 102 is less than the registration-time authentication level, the credential registration continuation flag may be changed to "False".
[0199] As described above, according to the third embodiment, since credentials are not saved on terminals with a low security level lower than the authentication level at the time of credential information registration, it becomes possible to use a server that provides resources more securely.
[0200] 〔Fourth Embodiment〕 Figure 19 is a block diagram showing an example of the functional configuration of authentication terminals 101, 1001, application server 103, authentication server 104, and credential information management servers 105, 1002 in the fourth embodiment.
[0203] The authentication terminals 101 and 1001 each include a browser 1110, an authentication client 1910, an image processing unit 1130, and an authenticator 330. The browser 1110, image processing unit 1130, authenticator 330, and biometric information management unit 333 have the same configuration as in the second embodiment, so their description is omitted. The biometric authentication processing unit 1502 and credential information storage unit 1503 have the same configuration as in the third embodiment, so their description is omitted. In addition to the functions of the authentication client of the second embodiment, the authentication client 1910 provides a function to control synchronization based on the authentication level at the time of registration of the credential information to be synchronized.
[0204] Here, we show an example of the credential information held by the credential information storage unit 1503 of authentication terminals 101 and 1001, an example of the biometric information table held by the biometric information management unit 333 of authentication terminals 101 and 1001, and an example of the authentication level held by the authentication client 1910 of authentication terminals 101 and 1001. In this embodiment, the authentication level managed by the authentication client 1910 of the authentication terminal 101 is described as L2, and the authentication level managed by the authentication client 1910 of the authentication terminal 1001 is described as L1.
[0205] Table 29 shows an example of a credential information table held by the credential information storage unit 1503 of the authentication terminal 101. [Table 29] Table 30 shows an example of a credential information table held by the credential information storage unit 1910 of the authentication terminal 1001. [Table 30] Table 31 shows an example of a biometric information table maintained by the biometric information management unit 333 of the authentication terminal 101. [Table 31] Table 32 shows an example of a biometric information table maintained by the biometric information management unit 333 of the authentication terminal 1001. [Table 32]
[0206] The authentication level management unit 340, authentication processing unit 341, and credential registration processing unit 342 of the application server 103 have the same configuration as in the first embodiment, so they are omitted from this description. The authentication request management unit 350 and the public key management unit 351 of the authentication server 104 have the same configuration as in the first embodiment, so they are omitted here. The credential information management unit 1504, credential synchronization control unit 361, and user management unit 362 of the credential information management servers 105 and 1002 have the same configuration as in the first embodiment and are therefore omitted from this description.
[0207] Here, an example of a user information table maintained by the user management unit 362 of the credential information management servers 105 and 1002 is shown. The structure of the credential information record and the user information record is the same as in the first embodiment.
[0208] Table 33 shows an example of a user information table maintained by the user management unit 362 of the credential information management server 105. [Table 33] Table 34 shows an example of a user information table maintained by the user management unit 362 of the credential information management server 1001. [Table 34]
[0209] <Credential Management Server Authentication Process> Since the configuration is the same as that of the second embodiment, the explanation will be omitted. <Credential Information Synchronization Processing> The credential information synchronization process will be explained using Figure 20. In this process, the credential information registered in the application server 103 held by the authentication terminal 101 is synchronized with the authentication terminal 1001. In this process, the credential information can only be synchronized if the authentication level of the authentication terminal 1001, which is the destination for the credential information synchronization, is equal to or higher than the authentication level recommended by the application server 103, and is higher than the authentication level of the authentication terminal at the time of registration.
[0210] Figure 20 is a sequence diagram showing the processing of authentication terminals 101, 1001, and application server 103 in the credential information synchronization process of the fourth embodiment. In this figure, the processing of authentication terminals 1001 and 101 is achieved by the CPU 201 of each authentication terminal reading a program stored in HDD 203 into memory 202 and executing it. The processing of application server 130 and credential information management server 105 is achieved by the CPU 210 of each credential information management server reading a program stored in HDD 212 into memory 211 and executing it.
[0211] Since sections S2001 to S2007 have the same configuration as sections S1301 to S1307 of the second embodiment, their explanation will be omitted. In S2008, the authentication client 1910 of the authentication terminal 101 sets the credential synchronization continuation flag to True and then performs the credential synchronization determination process. This process is shown in Figure 21, which will be described later. If the credential synchronization continuation flag becomes "False" as a result of this credential synchronization determination process, the process proceeds to the next credential information. On the other hand, if it becomes "True", the process proceeds to S2009.
[0212] Next, regarding S2009 to S2010, the configuration is the same as S1309 to S1310 in the second embodiment, so we will omit the explanation. Next, in S2011, the authentication client 1910 of the authentication terminal 101 confirms that processing has been completed for all credential information held in the credential information storage unit 1503, and terminates this process.
[0213] In the loop of S2003 described above, the authentication terminal 101 retains the authentication level of the authentication terminal 1001 obtained in S2006 and S2007, and in the second and subsequent iterations of the loop, S2006 and S2007 may be skipped and the retained authentication level may be used.
[0214] Table 35 shows an example of the credential information table in the credential information storage unit 1503 of the authentication terminal 1001 after this process. [Table 35] Table 35 shows that this process allowed only credential information whose authentication level on the synchronization-side authentication terminal was equal to or higher than the authentication level of the authenticator at the time of registration to be synchronized.
[0215] <Credential synchronization determination process> The credential synchronization determination process performed by the authentication client 1910 of the authentication terminal 101 will be explained using Figure 21. This process is the process that performs the synchronization determination of credential information in the credential information synchronization process.
[0216] Figure 21 is a flowchart showing an example of the credential synchronization determination process in the fourth embodiment. This process is implemented by the CPU 201 of the authentication terminal 101 reading the program stored in the HDD 203 into the memory 202 and executing it.
[0217] First, when this process begins, at S2101, the authentication client 1910 of the authentication terminal 101 obtains the authentication level of the authentication terminal 1001. Next, in S2102, the authentication client 1910 compares the recommended authentication level sent from the application server 103 with the authentication level at the time of registration held in the credential information storage unit 1503 of the authentication terminal 101 and the authentication level of the authentication terminal 1001.
[0218] Then, if the authentication client 1910 determines that the authentication level of the authentication terminal 102 is equal to or higher than the authentication level recommended by the application server 103, and also equal to or higher than the authentication level at the time of registration (if the answer is YES in S2102), it proceeds to S2103. In S2103, authentication client 1910 changes the credential registration continuation flag to "True" and terminates the processing of this flowchart.
[0219] On the other hand, if the authentication client 1910 determines that the authentication level of the authentication terminal 102 is lower than the authentication level recommended by the application server 103, or lower than the authentication level at the time of registration (if the answer in S2102 is NO), it proceeds to S2104. In S2104, authentication client 1910 changes the credential registration continuation flag to "False" and terminates the processing of this flowchart.
[0220] The authentication level at the time of registration should meet the authentication level recommended by the application server. Therefore, in S2102 described above, it is sufficient to compare only the authentication level at the time of registration held by the credential information storage unit 1503 of the authentication terminal 101 with the authentication level of the authentication terminal 1001. If it is determined that the authentication level of the authentication terminal 1001 is equal to or greater than the authentication level at the time of registration, the credential registration continuation flag is changed to "True". On the other hand, if it is determined that the authentication level of the authentication terminal 1001 is less than the authentication level at the time of registration, the credential registration continuation flag may be changed to "False".
[0221] As described above, according to the fourth embodiment, credentials will not be stored on terminals with a lower security level than the authentication level at the time of credential information registration, making it possible to use a server (service) that provides resources more securely.
[0222] [Fifth Embodiment] In the fifth embodiment, a configuration is shown in which the synchronization of credential information performed between authentication terminals is restricted when the authentication level of the registration destination is lower than the authentication level of the synchronization source.
[0223] <Credential Information Synchronization Processing> The credential information synchronization process in this embodiment is the same as in the fourth embodiment, excluding steps S2004 and S2005 in Figure 20. Also, the credential synchronization determination process in S2008 performs a step of comparing the authentication level of the authenticator 330 of the authentication terminal 101 (synchronization source device) with the authentication level of the authentication terminal 1001 (synchronization destination device) instead of S2102 in Figure 21. If it is determined that the authentication level of the authentication terminal 1001 is equal to or greater than the authentication level of the authentication terminal 101, the credential registration continuation flag is changed to "True". On the other hand, if it is determined that the authentication level of the authentication terminal 1001 is less than the authentication level of the authentication terminal 101, the credential registration continuation flag is changed to "False". Other processes are the same as in the fourth embodiment.
[0224] As described above, in the fifth embodiment, during the credential information synchronization process, if the authentication level of the synchronization destination is lower than the authentication level of the synchronization source, the credential synchronization is canceled. This prevents the credential from being stored on a terminal with a lower security level, making it possible to use a server that provides resources more securely.
[0225] As described above, according to each embodiment, credentials will no longer be stored on terminals with low security levels that pose a risk of credential leakage, making it possible to use servers that provide resources more securely. Therefore, the possibility of a decrease in security level and a relative increase in risk can be suppressed.
[0226] For example, even if a user possesses multiple devices, each with different authentication levels from the same authenticator, the above embodiments prevent the synchronization of credentials to devices that do not meet the authentication level recommended by the server providing the resources. Since credentials are not synchronized to such devices, it is possible to prevent the leakage of credentials from these devices even if they are lost. Furthermore, it is possible to prevent situations that do not conform to the policies of the organization or the user.
[0227] It should be noted that the structure and content of the various data described above are not limited to those mentioned, and it goes without saying that they can be composed of various structures and contents depending on the use and purpose. Although one embodiment has been described above, the present invention can take the form of, for example, a system, apparatus, method, program, or storage medium. Specifically, it may be applied to a system consisting of multiple devices, or to an apparatus consisting of a single device. Furthermore, any configurations combining the above embodiments are also included in the present invention.
[0228] [Other Embodiments] The present invention can also be realized by supplying a program that implements one or more of the functions of the above-described embodiments to a system or device via a network or storage medium, and by having one or more processors in the computer of that system or device read and execute the program. It can also be realized by a circuit (e.g., an ASIC) that implements one or more functions. Furthermore, the present invention may be applied to a system consisting of multiple devices or to a device consisting of a single device. The present invention is not limited to the embodiments described above, and various modifications (including organic combinations of each embodiment) are possible based on the spirit of the invention, and these are not excluded from the scope of the invention. That is, all configurations that combine the above-described embodiments and their modified forms are included in the present invention.
[0229] This embodiment includes the following configurations, methods, and programs. (Composition 1) An information processing device capable of communicating with a first server that provides a service and a second server that holds credentials associated with the service, A first acquisition means for obtaining service information associated with credentials held by the second server from the second server, A second acquisition means obtains a first authentication level, which indicates the authentication level recommended by the service, from the first server, using the service information obtained by the first acquisition means. The system includes control means that compares the first authentication level with a second authentication level indicating the authentication level of the information processing device, and controls the execution of a process that retrieves the credentials associated with the service held by the second server from the second server and stores them in the information processing device, according to the result of the comparison. The control means is characterized in that it executes the process when the second authentication level satisfies the first authentication level, and does not execute the process when the second authentication level does not satisfy the first authentication level. (Configuration 2) The system includes a third acquisition means that acquires from the second server a third authentication level indicating the authentication level of the device on which credentials linked to the service information acquired by the first acquisition means have been created. The information processing apparatus according to Configuration 1, characterized in that the control means does not perform the process if the second authentication level is lower than the third authentication level, even if the second authentication level is lower than the first authentication level. (Composition 3) An information processing device capable of communicating with a first server that provides a service and a second server that holds credentials associated with the service, A first acquisition means for obtaining service information associated with credentials held by the second server from the second server, A third acquisition means obtains from the second server a third authentication level indicating the authentication level of the device for which credentials linked to the service information acquired by the first acquisition means have been created, The system includes control means that compares the third authentication level with a second authentication level indicating the authentication level of the information processing device, and controls the execution of a process that retrieves the credentials associated with the service held by the second server from the second server and stores them in the information processing device, according to the result of the comparison. The control means is characterized in that it executes the process when the second authentication level is equal to or greater than the third authentication level, and does not execute the process when the second authentication level is lower than the third authentication level. (Composition 4) An information processing device capable of communicating with a server that provides services, A holding means for holding credentials associated with the aforementioned service, A fourth acquisition means that obtains from the server a fourth authentication level indicating the authentication level recommended by the service associated with the credentials held in the aforementioned holding means, A means of communication for communicating with other information processing devices, A fifth acquisition means that uses the aforementioned communication means to acquire a fifth authentication level indicating the authentication level of another information processing device from the other information processing device, The system includes control means for comparing the fourth authentication level and the fifth authentication level, and controlling the execution of a process for transmitting the credentials associated with the service held by the holding means to the other information processing device, according to the result of the comparison. The control means is characterized in that it executes the process when the fifth authentication level is equal to or greater than the fourth authentication level, and does not execute the process when the fifth authentication level is lower than the fourth authentication level. (Composition 5) The storage means stores the credentials associated with the service and a sixth authentication level indicating the authentication level of the device on which the credentials were created. The system has a sixth acquisition means for obtaining the sixth authentication level from the holding means, The information processing apparatus according to configuration 4, characterized in that the control means does not perform the process if the fifth authentication level is lower than or equal to the fourth authentication level, even if the fifth authentication level is lower than the sixth authentication level. (Composition 6) An information processing device capable of communicating with a server that provides services, A holding means that holds credentials associated with the aforementioned service and a sixth authentication level indicating the authentication level of the device on which the credentials were created, A means of communication for communicating with other information processing devices, A fifth acquisition means that uses the aforementioned communication means to acquire a fifth authentication level indicating the authentication level of another information processing device from the other information processing device, A sixth acquisition means for obtaining the sixth authentication level from the holding means, The system includes control means for comparing the sixth authentication level with the fifth authentication level and controlling the execution of a process for transmitting the credentials associated with the service held by the holding means to the other information processing device, according to the result of the comparison. The control means is characterized in that it executes the process when the fifth authentication level is equal to or greater than the sixth authentication level, and does not execute the process when the fifth authentication level is lower than the sixth authentication level. (Composition 7) An information processing device capable of communicating with a server that provides services, A holding means for holding credentials associated with the aforementioned service, A means of communication for communicating with other information processing devices, A fifth acquisition means that uses the aforementioned communication means to acquire a fifth authentication level indicating the authentication level of another information processing device from the other information processing device, The system includes a control means that compares a seventh authentication level indicating the authentication level of the information processing device with the fifth authentication level, and controls the execution of a process to transmit the credentials associated with the service held by the holding means to the other information processing device, according to the result of the comparison. The control means is characterized in that it executes the process when the fifth authentication level is equal to or greater than the seventh authentication level, and does not execute the process when the fifth authentication level is lower than the seventh authentication level. (Method 1) A control method for an information processing device that can communicate with a first server that provides a service and a second server that holds credentials associated with the service, A first acquisition step involves obtaining service information associated with the credentials held by the second server from the second server, A second acquisition step involves using the service information acquired in the first acquisition step to acquire a first authentication level, which indicates the authentication level recommended by the service, from the first server. The system includes a control step that compares the first authentication level with a second authentication level indicating the authentication level of the information processing device, and controls the execution of a process that retrieves the credentials associated with the service held by the second server from the second server and stores them in the information processing device, according to the result of the comparison. A control method for an information processing device, characterized in that the control step involves executing the process when the second authentication level satisfies the first authentication level, and not executing the process when the second authentication level does not satisfy the first authentication level. (Method 2) A control method for an information processing device that can communicate with a first server that provides a service and a second server that holds credentials associated with the service, A first acquisition step involves obtaining service information associated with the credentials held by the second server from the second server, A third acquisition step involves obtaining a third authentication level from the second server, which indicates the authentication level of the device for which credentials linked to the service information obtained in the first acquisition step have been created. The system includes a control step that compares the third authentication level with a second authentication level indicating the authentication level of the information processing device, and controls the execution of a process that retrieves the credentials associated with the service held by the second server from the second server and stores them in the information processing device, according to the result of the comparison. A control method for an information processing device, characterized in that, in the control step, the process is executed when the second authentication level is equal to or greater than the third authentication level, and the process is not executed when the second authentication level is lower than the third authentication level. (Method 3) A control method for an information processing device having a holding means that can communicate with a server that provides a service and holds credentials associated with the service, and a communication means for communicating with other information processing devices, A fourth acquisition step involves obtaining a fourth authentication level from the server, which indicates the authentication level recommended by the service associated with the credentials held in the aforementioned holding means. A fifth acquisition step of obtaining a fifth authentication level indicating the authentication level of another information processing device from the other information processing device using the aforementioned communication means, The system includes a control step that compares the fourth authentication level with the fifth authentication level and controls the execution of a process that transmits the credentials associated with the service held by the holding means to the other information processing device, according to the result of the comparison. A control method for an information processing device, characterized in that the control step involves executing the process when the fifth authentication level is equal to or greater than the fourth authentication level, and not executing the process when the fifth authentication level is lower than the fourth authentication level. (Method 4) A control method for an information processing device that is capable of communicating with a server providing a service, and has a holding means for holding credentials associated with the service and a sixth authentication level indicating the authentication level of the device on which the credentials were created, and a communication means for communicating with other information processing devices, A fifth acquisition step of obtaining a fifth authentication level indicating the authentication level of another information processing device from the other information processing device using the aforementioned communication means, A sixth acquisition step of obtaining the sixth authentication level from the holding means, The system includes a control step that compares the sixth authentication level with the fifth authentication level and controls the execution of a process that transmits the credentials associated with the service held by the holding means to the other information processing device, according to the result of the comparison. A control method for an information processing device, characterized in that the control step involves executing the process when the fifth authentication level is equal to or greater than the sixth authentication level, and not executing the process when the fifth authentication level is lower than the sixth authentication level. (Method 5) A control method for an information processing device having a holding means that can communicate with a server that provides a service and holds credentials associated with the service, and a communication means for communicating with other information processing devices, A fifth acquisition step of obtaining a fifth authentication level indicating the authentication level of another information processing device from the other information processing device using the aforementioned communication means, The system includes a control step that compares a seventh authentication level indicating the authentication level of the information processing device with the fifth authentication level, and controls the execution of a process that transmits the credentials associated with the service held by the holding means to the other information processing device according to the result of the comparison, A control method for an information processing device, characterized in that the control step involves executing the process when the fifth authentication level is equal to or greater than the seventh authentication level, and not executing the process when the fifth authentication level is lower than the seventh authentication level. (Program 1) A program that causes a computer to perform one of the control methods described in Methods 1 through 5.
Claims
1. An information processing device capable of communicating with a first server that provides a service and a second server that holds credentials associated with the service, A first acquisition means for obtaining service information associated with credentials held by the second server from the second server, A second acquisition means obtains a first authentication level, which indicates the authentication level recommended by the service, from the first server, using the service information obtained by the first acquisition means. The system includes control means that compares the first authentication level with a second authentication level indicating the authentication level of the information processing device, and controls the execution of a process that retrieves the credentials associated with the service held by the second server from the second server and stores them in the information processing device, according to the result of the comparison. The control means is characterized in that it executes the process when the second authentication level satisfies the first authentication level, and does not execute the process when the second authentication level does not satisfy the first authentication level.
2. The system includes a third acquisition means that acquires from the second server a third authentication level indicating the authentication level of the device on which credentials linked to the service information acquired by the first acquisition means have been created. The information processing apparatus according to claim 1, characterized in that the control means does not perform the process if the second authentication level is lower than the third authentication level, even if the second authentication level is lower than the first authentication level.
3. An information processing device capable of communicating with a first server that provides a service and a second server that holds credentials associated with the service, A first acquisition means for obtaining service information associated with credentials held by the second server from the second server, A third acquisition means obtains from the second server a third authentication level indicating the authentication level of the device for which credentials linked to the service information acquired by the first acquisition means have been created, The system includes control means that compares the third authentication level with a second authentication level indicating the authentication level of the information processing device, and controls the execution of a process that retrieves the credentials associated with the service held by the second server from the second server and stores them in the information processing device, according to the result of the comparison. The control means is characterized in that it executes the process when the second authentication level is equal to or greater than the third authentication level, and does not execute the process when the second authentication level is lower than the third authentication level.
4. An information processing device capable of communicating with a server that provides services, A holding means for holding credentials associated with the aforementioned service, A fourth acquisition means that obtains from the server a fourth authentication level indicating the authentication level recommended by the service associated with the credentials held in the aforementioned holding means, A means of communication for communicating with other information processing devices, A fifth acquisition means that uses the aforementioned communication means to acquire a fifth authentication level indicating the authentication level of another information processing device from the other information processing device, The system includes control means for comparing the fourth authentication level and the fifth authentication level, and controlling the execution of a process to transmit the credentials associated with the service held by the holding means to the other information processing device, according to the result of the comparison. The control means is characterized in that it executes the process when the fifth authentication level is equal to or greater than the fourth authentication level, and does not execute the process when the fifth authentication level is lower than the fourth authentication level.
5. The storage means stores the credentials associated with the service and a sixth authentication level indicating the authentication level of the device on which the credentials were created. The system has a sixth acquisition means for obtaining the sixth authentication level from the holding means, The information processing apparatus according to claim 4, characterized in that the control means does not perform the process if the fifth authentication level is lower than or equal to the fourth authentication level, even if the fifth authentication level is lower than the sixth authentication level.
6. An information processing device capable of communicating with a server that provides services, A holding means that holds credentials associated with the aforementioned service and a sixth authentication level indicating the authentication level of the device on which the credentials were created, A means of communication for communicating with other information processing devices, A fifth acquisition means that uses the aforementioned communication means to acquire a fifth authentication level indicating the authentication level of another information processing device from the other information processing device, A sixth acquisition means for obtaining the sixth authentication level from the holding means, The system includes control means that compares the sixth authentication level with the fifth authentication level and controls the execution of a process that transmits the credentials associated with the service held by the holding means to the other information processing device, according to the result of the comparison. The control means is characterized in that it executes the process when the fifth authentication level is equal to or greater than the sixth authentication level, and does not execute the process when the fifth authentication level is lower than the sixth authentication level.
7. An information processing device capable of communicating with a server that provides services, A holding means for holding credentials associated with the aforementioned service, A means of communication for communicating with other information processing devices, A fifth acquisition means that uses the aforementioned communication means to acquire a fifth authentication level indicating the authentication level of another information processing device from the other information processing device, The system includes a control means that compares a seventh authentication level indicating the authentication level of the information processing device with the fifth authentication level, and controls the execution of a process that transmits the credentials associated with the service held by the holding means to the other information processing device, according to the result of the comparison. The control means is characterized in that it executes the process when the fifth authentication level is equal to or greater than the seventh authentication level, and does not execute the process when the fifth authentication level is lower than the seventh authentication level.
8. A control method for an information processing device that can communicate with a first server that provides a service and a second server that holds credentials associated with the service, A first acquisition step involves obtaining service information associated with the credentials held by the second server from the second server, A second acquisition step involves using the service information acquired in the first acquisition step to acquire a first authentication level, which indicates the authentication level recommended by the service, from the first server. The system includes a control step that compares the first authentication level with a second authentication level indicating the authentication level of the information processing device, and controls the execution of a process that retrieves the credentials associated with the service held by the second server from the second server and stores them in the information processing device, according to the result of the comparison. A control method for an information processing device, characterized in that the control step involves executing the process when the second authentication level satisfies the first authentication level, and not executing the process when the second authentication level does not satisfy the first authentication level.
9. A control method for an information processing device that can communicate with a first server that provides a service and a second server that holds credentials associated with the service, A first acquisition step involves obtaining service information associated with the credentials held by the second server from the second server, A third acquisition step involves obtaining a third authentication level from the second server, which indicates the authentication level of the device for which credentials linked to the service information obtained in the first acquisition step have been created. The system includes a control step that compares the third authentication level with a second authentication level indicating the authentication level of the information processing device, and controls the execution of a process that retrieves the credentials associated with the service held by the second server from the second server and stores them in the information processing device, according to the result of the comparison. A control method for an information processing device, characterized in that, in the control step, the process is executed when the second authentication level is equal to or greater than the third authentication level, and the process is not executed when the second authentication level is lower than the third authentication level.
10. A control method for an information processing device having a holding means that can communicate with a server that provides a service and holds credentials associated with the service, and a communication means for communicating with other information processing devices, A fourth acquisition step involves obtaining a fourth authentication level from the server, which indicates the authentication level recommended by the service associated with the credentials held in the aforementioned holding means. A fifth acquisition step of obtaining a fifth authentication level indicating the authentication level of another information processing device from the other information processing device using the aforementioned communication means, The system includes a control step that compares the fourth authentication level with the fifth authentication level and controls the execution of a process that transmits the credentials associated with the service held by the holding means to the other information processing device, according to the result of the comparison. A control method for an information processing device, characterized in that the control step involves executing the process when the fifth authentication level is equal to or greater than the fourth authentication level, and not executing the process when the fifth authentication level is lower than the fourth authentication level.
11. A control method for an information processing device that is capable of communicating with a server providing a service, and has a holding means for holding credentials associated with the service and a sixth authentication level indicating the authentication level of the device on which the credentials were created, and a communication means for communicating with other information processing devices, A fifth acquisition step of obtaining a fifth authentication level indicating the authentication level of another information processing device from the other information processing device using the aforementioned communication means, A sixth acquisition step of obtaining the sixth authentication level from the holding means, The system includes a control step that compares the sixth authentication level with the fifth authentication level and controls the execution of a process that transmits the credentials associated with the service held by the holding means to the other information processing device, according to the result of the comparison. A control method for an information processing device, characterized in that the control step involves executing the process when the fifth authentication level is equal to or greater than the sixth authentication level, and not executing the process when the fifth authentication level is lower than the sixth authentication level.
12. A control method for an information processing device having a holding means that can communicate with a server that provides a service and holds credentials associated with the service, and a communication means for communicating with other information processing devices, A fifth acquisition step of obtaining a fifth authentication level indicating the authentication level of another information processing device from the other information processing device using the aforementioned communication means, The system includes a control step that compares a seventh authentication level indicating the authentication level of the information processing device with the fifth authentication level, and controls the execution of a process that transmits the credentials associated with the service held by the holding means to the other information processing device according to the result of the comparison, A control method for an information processing device, characterized in that the control step involves executing the process when the fifth authentication level is equal to or greater than the seventh authentication level, and not executing the process when the fifth authentication level is lower than the seventh authentication level.
13. A program for causing a computer to execute the control method described in any one of claims 8 to 12.
Citation Information
Patent Citations
Information processing device, information processing method and information processing program
JP2023000715A