Password authentication system, user terminal, service server, and program
Through the collaboration between user terminals and servers, passwordized information is used for authentication processing, the problems of information leakage and key management complexity in single sign-in are solved, high-speed security authentication is achieved in a confidential state, and user convenience and service collaboration capabilities are improved.
Patent Information
- Application Number
- CN202180014718.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-02-18
- Filing Date
- 2021-02-15
- Publication Date
- 2025-08-12
- Estimated Expiration
- 2041-02-15
AI Technical Summary
The existing single sign-in methods have problems such as information leakage, key management complexity and personal information management difficulties, especially when providing secure and high-speed authentication services while keeping users' personal information confidential.
The password authentication system is adopted, through the collaboration of user terminals, password servers and computing servers, temporary keys and pre-registered password information are used for comparison and processing, ensuring that personal information is authenticated in a confidential state and avoiding information leakage and complex key management.
It realizes the provision of high-speed and secure comprehensive authentication services while keeping user personal information confidential, reducing the implementation complexity and management costs, and improving user convenience and service collaboration capabilities.
Smart Images

Figure CN115136541B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to a password authentication system, and more particularly to a password authentication system, a user terminal, a service server, and a program for verifying input information. Background Art
[0002] Technologies for processing encrypted information have been developed.
[0003] For example, there is a so-called single sign-on technology (Japanese Patent Publication No. 2002-032340) that proxies authentication for any website that requires user authentication. In this technology, multiple websites that require user authentication are placed in a system accessed from a user terminal, and a proxy acts as a proxy between the network server and the user terminal. By proxying authentication for the websites, the proxy reduces the number of user authentication operations.
[0004] Another technology related to single sign-on is a technique that achieves single sign-on functionality without requiring a centralized authentication status management server to manage authentication status, thereby reducing system construction costs and operational management costs (Japanese Patent Publication No. 2002-335239). In this technique, a user's authentication status is shared across multiple servers, and each server compares authentication levels with the other, thereby managing the user's authentication status in a decentralized manner.
[0005] Another technology related to single sign-on is an authentication system that is independent of the PC's setup environment or does not require the user to carry a separate physical device for authentication (Japanese Patent Application Laid-Open No. 2011-238036). In this technology, a server authenticates the user of the client PC that sent the login request corresponding to the client session ID based on the individual identification number received from the mobile phone, and manages the login information.
[0006] In addition, as a technology related to single sign-on, a conventional proxy technology (Patent No. 6518378) stores all authentication information in advance to mitigate risks. In this technology, users and service servers are pre-registered using a resource server and an authentication server, and authentication is performed using this pre-registered information. Summary of the Invention
[0007] The conventional single sign-on methods described in Patent Documents 1 to 3 use the so-called Kerberos authentication method, which issues a ticket as a user's identity certificate. However, there is a risk of information leakage due to eavesdropping on the ticket. Furthermore, a key is required to ensure secure communication between users. This approach, in order to fully guarantee security, introduces implementation complexity and high costs.
[0008] Furthermore, while the method described in Patent Document 4 does not utilize a proxy, it requires the user to manage the generated access token, posing risks of information leakage and impersonation in the event of eavesdropping. Furthermore, while personal information is not provided to the service server, it is managed in a database on the resource server as non-encrypted user personal information. Therefore, management issues regarding personal information processing remain. Furthermore, the authentication server distributes an authentication-side decryption key, and the resource server distributes a unique decryption key to the service server, where user information is decrypted. This also presents the complexity of key management, as well as the risks of eavesdropping on the decryption key and information leakage from the decryption process itself.
[0009] Furthermore, the management of IDs and passwords used for single sign-on authentication is complex and delegated to individuals, posing a fundamental risk of leakage. Furthermore, biometric information is sensitive and therefore should be avoided.
[0010] As described above, although the single sign-on structure is highly convenient, it has various problems from the perspectives of risk and management cost.
[0011] The present disclosure has been made in view of the above circumstances, and its object is to provide a password authentication system, a user terminal, a service server, and a program that can provide comprehensive authentication services quickly and securely while keeping the user's personal information confidential.
[0012] To achieve the above-mentioned objectives, a first aspect of the present disclosure relates to a password authentication system comprising a user terminal, one or more encryption servers, a calculation server, and a service server connected via a network. Upon receiving a request from the user terminal, the service server calculates third encryption information based on second plaintext information used for authentication and a third key serving as a temporary key, and transmits the result to the user terminal. The user terminal calculates fourth encryption information based on the received third encryption information and first plaintext information used for authentication, and transmits the result to the encryption server. The encryption server and the calculation server collaborate to perform a predetermined process based on a predetermined encryption comparison function, calculate encryption information to be compared based on the fourth encryption information, the fourth key serving as a temporary key, and pre-registered encryption information including first and second encryption information and the first key, and transmit the result to the service server. The service server determines the degree of consistency between the first and second plaintext information included in the encryption information to be compared using a comparison function using the third key and the second key used to calculate the registration encryption information, and transmits an authentication result corresponding to the degree of consistency to the user terminal.
[0013] Furthermore, a user terminal according to the present disclosure receives, from a service server, third encrypted information calculated based on second plaintext information used for authentication and a third key serving as a temporary key, calculates fourth encrypted information based on the received third encrypted information and first plaintext information used for authentication, transmits the fourth encrypted information to the encryption server, and receives an authentication result from the service server. The authentication result is subjected to prescribed processing based on a predetermined encryption comparison function in collaboration between the encryption server and a calculation server. Using encrypted information of a comparison target calculated based on the fourth encrypted information, the fourth key serving as a temporary key, and registered password information including pre-registered first and second encrypted information, and the first key, the service server determines the respective degrees of consistency between the first and second plaintext information included in the encrypted information of the comparison target using a comparison function using the third key and the second key used to calculate the registered password information.
[0014] Furthermore, the service server according to the present disclosure calculates third encrypted information based on second plaintext information used for authentication and a third key serving as a temporary key, upon receiving a request from a user terminal, and transmits the third encrypted information to the user terminal. The service server receives encrypted information to be compared, determines a degree of consistency between the first plaintext information and the second plaintext information included in the encrypted information to be compared using a comparison function using the third key and the second key used for calculation of the registered password information, and transmits an authentication result corresponding to the degree of consistency to the user terminal. The encrypted information to be compared is calculated by the user terminal based on the fourth encrypted information, the fourth key serving as the temporary key, and registered password information including the pre-registered first encrypted information, the second encrypted information, and the first key, by performing predetermined processing based on a predetermined encryption comparison function, using the collaboration between the encryption server that receives fourth encrypted information calculated based on the third encrypted information and the first plaintext information used for authentication and the calculation server.
[0015] In addition, for the second mode of password authentication system involved in the present disclosure, the comparison cryptographic server maintains a first key used for calculating the first cryptographic information of the user terminal when registering, the service server maintains a second key used for calculating the second cryptographic information of the service server when registering, and the calculation server maintains the first cryptographic information and the second cryptographic information. In response to a specified request from the user terminal to the service server, the comparison cryptographic server, the service server and the calculation server collaborate to perform calculations using the first key, the second key, the first cryptographic information and the second cryptographic information, and send the authentication result from the service server to the user terminal.
[0016] Furthermore, the program disclosed herein calculates third encrypted information based on the second plaintext information used during authentication and a third key serving as a temporary key upon receiving a request from a user terminal. The program then receives encrypted information for comparison, calculated based on the fourth encrypted information, the fourth key serving as a temporary key, and pre-registered first and second encrypted information, and the first key, through a predetermined process based on a predetermined encryption comparison function. The fourth encrypted information is calculated based on the third encrypted information and the user's first plaintext information used during authentication. The program then determines the degree of consistency between the first and second plaintext information included in the encrypted information for comparison using a comparison function using the third key and the second key used in the calculation of the registration password information, and transmits an authentication result corresponding to the degree of consistency to the user terminal. This program causes a computer to execute the above process.
[0017] Effects of the Invention
[0018] According to the password authentication system, user terminal, service server and program disclosed herein, it is possible to provide comprehensive authentication services quickly and securely while keeping the user's personal information confidential. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] Figure 1 It is a schematic diagram of an introduction scenario of the password authentication system disclosed in the present invention.
[0020] Figure 2 This is a diagram showing a simple configuration of the password authentication system of the present disclosure.
[0021] Figure 3 This is a block diagram showing the hardware configuration of the computer corresponding to the user terminal and each server.
[0022] Figure 4It is a processing flow chart schematically illustrating a registration sequence and an authentication proxy sequence of the password authentication system of the present disclosure.
[0023] Figure 5 This is a sequence diagram showing the flow of the registration procedure of a user terminal.
[0024] Figure 6 This is a sequence diagram showing the flow of the registration procedure for the service server.
[0025] Figure 7 This is a sequence diagram showing the flow of the authentication proxy sequence (checking sequence).
[0026] Figure 8 This is a block diagram showing the specific functional configuration of a user terminal and a service server.
[0027] Figure 9 This is a diagram showing an example of keys stored in the registration key storage unit and the temporary key storage unit of the service server.
[0028] Figure 10 This is a block diagram showing the specific functional structure of the registration encryption server, the comparison encryption server, and the calculation server.
[0029] Figure 11 This is a diagram showing an example of keys stored in the user key storage unit and the temporary key storage unit of the cross-encryption server.
[0030] Figure 12 This is a diagram showing an example of encryption information stored in the user encryption information storage unit and the service encryption information storage unit of the account server.
[0031] Figure 13 This is a diagram showing an example of the comparison speed of the method disclosed in the present invention.
[0032] Figure 14 This is a diagram showing an example of a comparison between other methods and the method disclosed herein. DETAILED DESCRIPTION
[0033] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings.
[0034] First, the background of the technology in the embodiments of the present disclosure will be described.
[0035] Authentication proxy services are services that facilitate logins to various services on the Internet. Several methods are proposed and implemented. To ensure login security and convenience, authentication proxy services utilize authentication information based on a single user ID and password, or personal information other than biometric information. The single sign-on architecture provided by authentication proxy services eliminates the need to store individual login information for each service, presenting only a ticket issued by the authentication proxy service. This improves user convenience and reduces security risks such as impersonation and eavesdropping on login information, even when using individual services.
[0036] However, as the aforementioned issues indicate, conventional single sign-on architectures present various challenges, including implementation complexity, ensuring the reliability of the authentication proxy service itself, the difficulty of managing personal information, managing the risks associated with the use of biometric information, and managing the authentication proxy service domain.
[0037] Here, the method proposed in the present disclosure proposes an authentication method using collable encrypted information. As a prerequisite technology, there is the technology of Reference 1 developed by the inventors of the technology of the present disclosure.
[0038] Reference 1: International Publication No. 2019 / 124164
[0039] The technology in Reference 1 proposes a password authentication system that maintains the confidentiality of personal information in multiple encryption devices and performs high-speed verification. The technology in Reference 1 uses a structure that maintains personal information in an encrypted state and performs high-speed verification without decrypting it during authentication. This structure, as described in Reference 1, achieves a highly secure and convenient authentication structure in a case where, for example, hotel check-in / check-out is managed using arbitrary user information (e.g., a user's card, fingerprint, etc.).
[0040] The method disclosed herein shares the same principle as Reference 1 in that it performs a check while maintaining the confidentiality of personal information. By distributing and managing keys on both the authentication proxy service and the service side, the disclosed method implements a password authentication system capable of rapidly performing the check required for single sign-on authentication while maintaining the confidentiality of personal information. The disclosed password authentication system is configured to manage personal information while maintaining the confidentiality of the authentication proxy service, while performing the final check on the service provider side. Furthermore, a secure structure is ensured that single sign-on implementation is simplified and less complex.
[0041] Through the password authentication system disclosed in the present invention, in a single sign-on structure, authentication can be performed on the services of multiple service providers without transmitting the user's personal information. As a result, even if the service operator does not manage personal information, it can make various services cooperate and provide comprehensive services through Web applications, etc. In addition, since personal information is managed while keeping it confidential, there is an advantage in that authentication is highly convenient for users using inherent personal information other than information such as IDs and passwords that are worried about being leaked. In addition, since the authentication proxy service side manages the encrypted personal information as registration information, there is no need to manage tickets, etc. on the user side, so users can safely use the various services comprehensively launched by the service operator.
[0042] Figure 1 This is a schematic diagram illustrating a scenario for implementing the password authentication system disclosed herein. A user encrypts their personal information and registers it with an authentication proxy service. Within the authentication proxy service, personal information is encrypted and managed confidentially. When a user requests service authentication from any of multiple service providers, authentication-related processing occurs between the service provider, the user, and the authentication proxy service. Authentication is performed on the service provider's side while maintaining the confidentiality of personal information.
[0043] Let's take an example of a scenario where a password authentication system is introduced. For example, if a service provider A, providing a certain service, introduces an application authentication system for office equipment, it can utilize the authentication proxy service that manages the password authentication system disclosed herein. In this case, by introducing the authentication proxy service, service provider A's customers or employees become target users. These users can not only use the applications on service provider A's office equipment, but also, through a single sign-on structure, access related services, sub-services, and third-party applications from other service providers. The authentication proxy service can charge the service provider a usage fee and an authentication proxy fee for its service servers. Depending on the service provider's services, the service servers can be servers for various services, such as a cloud management system for dental records, a database for video content, or a smart front desk at an accommodation facility. This can improve user convenience and significantly reduce the cost and security risks of managing the personal information of its customers or employees, who are users, by the service provider (such as a medical institution, broadcasting company, or travel agency). Even in such a scenario where a service provider collaborates and provides comprehensive services, users only need to register their personal information as encrypted information with the authentication proxy service.
[0044] Hereinafter, the password authentication method of the present disclosure will be described in detail.
[0045] Figure 2: is a diagram showing a simple structure of the password authentication system disclosed in the present invention. Figure 2 As shown, the password authentication system 100 includes a user terminal 110, a service server 120, a registration encryption server 130, a cross-encryption server 140, and a calculation server 150. The various devices of the password authentication system 100 are connected via a network N. The service server 120 is a server for authentication requesters, which is provided by various service providers. The registration encryption server 130, the cross-encryption server 140, and the calculation server 150 are servers that are assumed to exist in the cloud and are servers on the authentication proxy service side. The multiple service servers 120 are optional servers on the cloud or physical servers. Furthermore, the registration encryption server 130 and the cross-encryption server 140 may be integrated servers. Furthermore, the registration encryption server 130, the cross-encryption server 140, and the calculation server 150 may also be managed by other authentication proxy service providers.
[0046] Figure 3 This is a block diagram showing the hardware structure of the computer corresponding to the user terminal 110 and each server (120, 130, 140, 150). Since the hardware structure can be common in each device, it is explained in one figure. Figure 3 As shown in FIG. 1 , each device includes a CPU (Central Processing Unit) 11, a ROM (Read Only Memory) 12, a RAM (Random Access Memory) 13, a memory 14, an input unit 15, a display unit 16, and a communication interface (I / F) 17. Each structure is connected to each other via a bus 19 so as to be able to communicate with each other. Figure 3 For example, if the user terminal 110 is CPU 11, the service server can be replaced by CPU 21, the registration encryption server 130 can be replaced by CPU 31, the comparison encryption server 140 can be replaced by CPU 41, and the calculation server 150 can be replaced by CPU 51. The same applies to other blocks.
[0047] The CPU 11 is a central processing unit (CPU) that executes various programs and controls various components. Specifically, the CPU 11 reads programs from the ROM 12 or memory 14 and executes them using the RAM 13 as a workspace. The CPU 11 controls the various components described above and performs various calculations according to the programs stored in the ROM 12 or memory 14. In this embodiment, the ROM 12 or memory 14 stores an object tracking program.
[0048] The ROM 12 stores various programs and various data. The RAM 13 temporarily stores programs and data as a work area. The memory 14 is composed of a storage device such as an HDD (Hard Disk Drive) or an SSD (Solid State Drive), and stores various programs including an operating system and various data.
[0049] The input unit 15 includes a pointing device such as a mouse and a keyboard, and is used to perform various inputs.
[0050] The display unit 16 is, for example, a liquid crystal display, and displays various information. The display unit 16 may also be a touch panel type, and function as the input unit 15 .
[0051] The communication interface 17 is an interface for communicating with other devices such as a terminal, and uses, for example, standards such as Ethernet (registered trademark), FDDI, and Wi-Fi (registered trademark). The above is a description of the hardware configuration of each device.
[0052] The user terminal 110 also includes a program and interface capable of executing an application capable of performing encryption processing. Furthermore, the application reads and utilizes specified information (e.g., card information or biometric information) as personal information p1 (p1'). Furthermore, different collaborations are pre-set for each of the multiple service servers 120 in the user terminal 110. By setting these collaborations, for example, the timing for sending authentication requests required for a user to utilize multiple services is predetermined. For example, an accommodation facility may require both authentication of the facility itself and authentication for the video service provided by the facility. In this case, authentication with the accommodation facility's service server 120 and authentication with the video service's service server 120 are required. In this case, collaboration can be set up so that authentication is performed simultaneously upon check-in. Alternatively, authentication with the video service's service server 120 can be performed after successful authentication with the accommodation facility's service server 120 is confirmed. Even in situations where authentication for multiple services occurs at a concentrated time, users can seamlessly utilize multiple services without having to request authentication each time. These collaboration settings can also be received from the cross-check-in encryption server 140. Furthermore, the personal information p1 (p1′) is an example of the first plain text information of the present disclosure.
[0053] The service server 120 is capable of performing encryption and verification, and has a program and interface capable of executing an application for key management. Furthermore, the application utilizes arbitrary information p2 (p2') from the service server 120. Arbitrary information p2 (p2') is an example of the second plaintext information disclosed herein.
[0054] The password authentication system method disclosed herein is broadly divided into a registration sequence and an authentication proxy sequence. Figure 4 Schematically shows the registration sequence and the processing flow of the authentication proxy sequence of the password authentication system disclosed in the present invention. Figure 4 Among the various paths, the paths that ensure secure communication are the path between the user terminal 110 and the registration encryption server 130, the path between the user terminal 110 and the comparison encryption server 140, and the path between the registration encryption server 130 and the comparison encryption server 140. Other paths may also use non-secure paths. Secure paths are represented by solid lines, and non-secure paths are represented by dashed lines. Furthermore, regarding the symbols, p represents plain text information, c represents encrypted information, and k represents the key. The numbers attached to each symbol correspond to the numbers of the plain text information, encrypted information, and key disclosed herein. The registration sequence and authentication proxy sequence are described in detail below.
[0055] [Registration Order]
[0056] The registration procedure is performed separately for the registration of the user terminal 110 and the registration of the service server 120. The structure of the registration process itself is the same as that of the method of Reference 1.
[0057] First, the registration procedure of the user terminal 110 will be described. Figure 5 This is a sequence diagram showing the flow of the registration procedure of the user terminal 110.
[0058] 1-1. The user terminal 110 transmits the personal information p1 to the registration encryption server 130 using a secure communication path. The secure communication path is direct input to the registration encryption server 130 or SSL / TSL communication.
[0059] 1-2. The registration encryption server 130 generates a secret key k1 as a one-time key.
[0060] 1-3. Registration The encryption server 130 calculates the encryption information c1 using the following formula (1): The operation symbol in the formula is exclusive OR.
[0061] [Formula 1]
[0062]
[0063] 1-4. Registration The encryption server 130 sends c1 to the calculation server 150 using the non-secure communication path c1.
[0064] 1-5. The registration encryption server 130 sends k1 to the comparison encryption server 140 using a secure communication path.
[0065] 1-6. The calculation server 150 holds c1.
[0066] 1-7. The comparison encryption server 140 holds k1.
[0067] 1-8. The registration encryption server 130 discards p1, k1, and c1.
[0068] Next, the registration procedure of the service server 120 will be described. Registration of the service server 120 is performed for each service server 120 . Figure 6 This is a sequence diagram showing the flow of the registration procedure of the service server 120 .
[0069] 2-1. The service server 120 transmits arbitrary information p2 to the registration encryption server 130 using a secure communication path.
[0070] 2-2. Registration The encryption server 130 generates a secret key k2 which is a one-time key.
[0071] 2-3. Registration The encryption server 130 calculates the encryption information c2 using the following formula (2).
[0072] [Formula 2]
[0073]
[0074] 2-4. Registration The encryption server 130 sends c2 to the calculation server 150 using an insecure communication path.
[0075] 2-5. Registration The encryption server 130 sends k2 to the service server 120 using a secure communication path.
[0076] 2-6. The calculation server 150 holds c2.
[0077] 2-7. The service server 120 holds k2.
[0078] 2-8. The registration encryption server 130 discards p2, k2, and c2.
[0079] As described above, the point that the service server 120 holds k2 is different from the registration of the user terminal 110. The above is the description of the registration procedure.
[0080] [Authentication Proxy Order]
[0081] The authentication proxy procedure (checking procedure) when the user terminal 110 utilizes the service provided by the service server 120 will be described. Figure 7 This is a sequence diagram showing the flow of the authentication proxy sequence (checking sequence).
[0082] Here, the user terminal 110 uses the personal information p1', and the server 120 uses the arbitrary information p2'. When the authentication is successful, the condition 1 of the following formula (3) is satisfied.
[0083] [Formula 3]
[0084] p1=p1′ and p2=p2′
[0085] or
[0086] p1=p2 and p1′=p2′
[0087] or
[0088] p1=p2′ and p2=p1′
[0089] For (condition 1)...(3)
[0090] 3-1. The user terminal 110 transmits a request for authentication for service utilization to the service server 120 .
[0091] 3-2. When the service server 120 receives the request, it generates a secret key k3 which is a one-time key.
[0092] 3-3. The service server 120 calculates the encrypted information c3 using the following formula (4).
[0093] [Formula 4]
[0094]
[0095] 3-4. The service server 120 transmits c3 to the user terminal 110 using an insecure communication path.
[0096] 3-5. The user terminal 110 calculates the encrypted information c4 using the following formula (5).
[0097] [Formula 5]
[0098]
[0099] 3-6. The user terminal 110 transmits c4 to the cross-encryption server 140 using a secure communication path.
[0100] 3-7. When the encryption server 140 receives c4, it generates a secret key k4 which is a one-time key.
[0101] 3-8. Comparison The encryption server 140 calculates the encrypted information c5 using the following formula (6).
[0102] [Formula 6]
[0103]
[0104] 3-9. The comparison encryption server 140 sends c5 to the calculation server 150 using an insecure communication path.
[0105] 3-10. The calculation server 150 calculates the encrypted information c6 using the following formula (7).
[0106] [Formula 7]
[0107]
[0108] Here, c6 can be expanded as shown in the following formula (8): Therefore, the encrypted information c6 is encrypted information that can be compared with p1 and p1', and p2 and p2'.
[0109] [Formula 8]
[0110]
[0111] 3-11. The calculation server 150 sends c6 to the comparison and encryption server 140 using an insecure communication path.
[0112] 3-12. The encryption server 140 calculates the encrypted information c7 using the following formula (9).
[0113] [Formula 9]
[0114]
[0115] Here, c7 can be expanded as shown in the following formula (10): Therefore, if the key k2 and the key k3 exist, they can be compared.
[0116] [Formula 10]
[0117]
[0118] 3-13. Comparison The encryption server 140 sends c7 to the service server 120 using an insecure communication path. The above equations (6) to (10) are examples of the encryption comparison function of the present disclosure. c7 is an example of the encrypted information to be compared in the present disclosure.
[0119] 3-14. The service server 120 calculates r using the following formula (11). In addition, formula (11) is an example of the comparison function of the present disclosure.
[0120] [Formula 11]
[0121]
[0122] 3-15. The service server 120 determines that if r=0, it returns an authentication success message to the user terminal 110 (3-16); if r≠0, it returns an authentication failure message to the user terminal 110 (3-17).
[0123] The above is an explanation of the authentication proxy sequence.
[0124] Next, the functional configuration of each device will be described.
[0125] The functional configurations of the user terminal 110 and the service server 120 will be described. Figure 8 This is a block diagram showing the specific functional configurations of the user terminal 110 and the service server 120. The user terminal 110 includes a personal information processing unit 111 and a user encryption unit 112. The service server 120 includes a service encryption unit 121, a registration key storage unit 122, a temporary key storage unit 123, and a comparison unit 124.
[0126] The personal information processing unit 111 acquires personal information through various interfaces provided with the user terminal 110, acquiring plain text information to be encrypted. For cards, the unit acquires the card number and character string; for fingerprints or eyelid information, the unit acquires an image. The acquired personal information is used in the processes described above in steps 1-1 and 3-5.
[0127] The user encryption unit 112 performs the above-described processes 3-1 and 3-5 as various encryption-related processes in the user terminal 110 .
[0128] The service encryption unit 121 performs the above-described processes 2-1, 3-2, and 3-4 as various encryption-related processes in the service server 120.
[0129] Figure 9 This diagram shows an example of the keys stored in the registration key storage unit 122 and the temporary key storage unit 123 of the service server 120. The registration key storage unit 122 stores the key k2 stored in 2-7 above. The temporary key storage unit 123 stores the key k3, which is the one-time key generated in 3-2 above, for each user ID. If multiple requests are made simultaneously, multiple one-time keys are stored for each user ID. The one-time key is discarded after a certain period of time.
[0130] The comparison unit 124 performs the above-described processes 3-14 to 3-17 as a comparison process.
[0131] The functional structures of the registration encryption server 130 , the comparison encryption server 140 , and the calculation server 150 will be described. Figure 101 is a block diagram showing the specific functional structure of the registration encryption server 130, the comparison encryption server 140 and the calculation server 150. Figure 10 As shown, the registration encryption server 130 includes a registration encryption unit 131. The comparison encryption server 140 includes a comparison encryption unit 141, a user key storage unit 142, and a temporary key storage unit 143. The calculation server 150 includes a calculation unit 151, a user encryption information storage unit 152, and a service encryption information storage unit 153.
[0132] The registration encryption unit 131 performs the above-described processes 1-2 to 1-5 and 2-2 to 2-5 as processes during registration.
[0133] The comparison encryption unit 141 performs the processes 3-7 to 3-9, 3-12, and 3-13 as the comparison process.
[0134] Figure 11 This diagram shows an example of keys stored in the user key storage unit 142 and the temporary key storage unit 143 of the cross-encryption server 140. In the user key storage unit 142, the key k1 stored in step 1-7 above is stored for each user ID. In the temporary key storage unit 143, the key k7, which is a one-time key generated in step 3-7 above, is stored for each request ID. The request ID is an ID used to identify the authentication request.
[0135] The calculation unit 151 performs the above-mentioned processes 3-10 and 3-11 as processing at the time of comparison.
[0136] Figure 12 This diagram shows an example of encryption information stored in the user encryption information storage unit 152 and the service encryption information storage unit 153 of the calculation server 150. In the user encryption information storage unit 152, the encryption information c1 stored in 1-6 is stored for each user ID. In the service encryption information storage unit 153, the encryption information c2 stored in 2-6 is stored for each service ID.
[0137] As described above, the password authentication system according to the embodiment of the present disclosure can provide a comprehensive authentication service quickly and securely while keeping the user's personal information confidential.
[0138] [Experimental example]
[0139] An experimental example of the method according to the embodiment of the present disclosure will be described. Figure 13 This is a diagram showing an example of the comparison speed of the method disclosed in the present invention. Figure 14 This is a diagram showing an example of a comparison between other methods and the method disclosed herein. Figure 13In the example, the execution speed is shown when the size of the plain text (p1, p2) is changed. It is clear that the execution speed is less than 1ms in 8192 bits. Since the comparison is performed at a high speed, real-time authentication is possible. Figure 14 The present invention compares the personal information, cryptographic methods, and key distribution requirements that can be used with Kerberos, smart cards, open IDs, and VE (the method disclosed herein). The method disclosed herein can not only process arbitrary personal information, but also requires only k2 to be distributed to the service server 120. Therefore, there is no need for numerous complex key management processes, and the complexity of key management during implementation is also reduced. Other methods require key distribution across multiple devices, resulting in complexity and high implementation costs.
[0140] As described above, by performing a comparison while maintaining the encrypted information, the comparison result is obtained for the encrypted information. Even if the information exchanged on the network is obtained, the original information cannot be determined from the encrypted information. This provides the advantage of single sign-on authentication while maintaining confidentiality. Furthermore, since authentication is performed quickly and securely, a highly convenient service can be provided for both users and service providers.
[0141] In addition, the present disclosure is not limited to the above-described implementation method, and various modifications and applications are possible without departing from the gist of the present invention.
[0142] In addition, in the above-mentioned embodiment, various processes executed by the CPU reading the software (program) can also be executed by various processors other than the CPU. As processors in this case, a dedicated circuit of a processor having a circuit structure specially designed for executing specific processes, such as a PLD (Programmable Logic Device) whose circuit structure can be changed after manufacturing, such as an FPGA (Field Programmable Gate Array), and an ASIC (Application Specific Integrated Circuit), etc., can be exemplified. In addition, various processes can be executed by one of these various processors, or by a combination of two or more processors of the same type or different types (for example, a plurality of FPGAs and a combination of a CPU and an FPGA, etc.). In addition, the hardware structure of these various processors is more specifically a circuit combining circuit elements such as semiconductor elements.
[0143] In addition, in the above embodiment, the program is pre-stored (installed) in the memory 14, but the present invention is not limited to this. The program can also be provided in the form of a non-transitory storage medium such as a CD-ROM (Compact Disk Read Only Memory), a DVD-ROM (Digital Versatile Disk Read Only Memory), or a USB (Universal Serial Bus) memory. In addition, the program can also be downloaded from an external device via a network.
[0144] The disclosure of Japanese Patent Application No. 2020-25659 filed on February 18, 2020 is incorporated herein by reference in its entirety.
[0145] All documents, patent applications, and technical standards described in this specification are incorporated herein by reference to the same extent as if each individual reference, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.
Claims
1. A password authentication system comprising a user terminal, one or more encryption servers, a calculation server, and a service server connected via a network, characterized in that: When receiving a request from the user terminal, the service server calculates third encrypted information based on the second plain text information used during authentication and the third key as a temporary key, and sends the third encrypted information to the user terminal. The user terminal calculates fourth encrypted information based on the received third encrypted information and the first plain text information during authentication, and sends the fourth encrypted information to the encryption server. The encryption server and the calculation server cooperate to perform a predetermined process based on a predetermined encryption comparison function. The encryption information to be compared is calculated based on the fourth encryption information, the fourth key serving as a temporary key, and the registered password information including the pre-registered first encryption information, the second encryption information, and the first key. The encryption information is then transmitted to the service server. The first key and the fourth key are offset in the calculated encryption information by an exclusive OR operation. The service server calculates the consistency between the first plain text information at the time of registration and the first plain text information at the time of authentication, as well as the consistency between the second plain text information at the time of registration and the second plain text information at the time of authentication, by using a comparison function of the encrypted information of the comparison object, the third key, and the second key used in calculating the registration password information, and sends an authentication result corresponding to the consistency to the user terminal.
2. The password authentication system according to claim 1, wherein: The service server is provided as a plurality of service servers. The encryption server and the calculation server calculate the encryption information of the comparison target for each of the plurality of service servers.
3. The password authentication system according to claim 2, wherein: In the user terminal or the encryption server, a predetermined collaboration is set with respect to the plurality of service servers. In response to the setting, the user terminal transmits authentication requests to the plurality of service servers simultaneously or in a predetermined sequence.
4. The password authentication system according to claim 1, wherein: The user terminal uses the first plain text information during the authentication as information related to the user, and reads and utilizes predetermined information including card information or biometric information.
5. The password authentication system according to claim 1, wherein: The encryption server includes a registration encryption server and a reference encryption server. The registration encryption server registers the first encryption information calculated using the first key and the first plain text information of the user terminal when registering, and the second encryption information calculated using the second key and the second plain text information of the service server when registering as the registration password information in the calculation server. The second key is transmitted to the service server.
6. The password authentication system according to claim 5, wherein: The comparison encryption server transmits fifth encryption information obtained by encrypting the fourth encryption information using a fourth key serving as a temporary key to the calculation server. The calculation server calculates sixth encryption information related to the comparison with the plain text information for the fifth encryption information based on the first encryption information and the second encryption information, and sends the sixth encryption information to the encryption server. The comparison encryption server calculates the encryption information of the comparison target for the sixth encryption information based on the first key and the fourth key.
7. The password authentication system according to claim 6, wherein: The computing server calculates, using the encryption comparison function, the sixth encrypted information for determining the degree of consistency between the first plain text information at the time of registration and the first plain text information at the time of authentication, and the degree of consistency between the second plain text information at the time of registration and the second plain text information at the time of authentication, based on the fifth encrypted information encrypted using the fourth key, the first encrypted information, and the second encrypted information.
8. The password authentication system according to claim 5, wherein: The paths between the user terminal and the registration encryption server, the path between the user terminal and the comparison encryption server, and the path between the registration encryption server and the comparison encryption server are designed to be secure paths.
9. A user terminal comprising a personal information processing unit and a user encryption unit, characterized in that: The personal information processing unit and the user encryption unit cooperate to receive third encrypted information calculated based on the second plain text information used in authentication and a third key serving as a temporary key from the service server, calculate fourth encrypted information based on the received third encrypted information and the first plain text information used in authentication, and send the fourth encrypted information to the encryption server, and receive an authentication result from the service server. The authentication result is processed based on a predetermined encryption comparison function through the collaboration of the encryption server and the calculation server. The encryption information of the comparison object is calculated based on the fourth encryption information, the fourth key serving as a temporary key, and the registration password information including the pre-registered first encryption information, the second encryption information, and the first key. The service server calculates the consistency between the first plain text information at the time of registration and the first plain text information at the time of authentication, and the consistency between the second plain text information at the time of registration and the second plain text information at the time of authentication, by a comparison function using the third key and the second key used in the calculation of the registration password information. The first key and the fourth key are offset in the calculated encryption information through an exclusive OR operation.
10. A service server comprising a service encryption unit, a registration key storage unit, a temporary key storage unit, and a comparison unit, characterized in that: The service encryption unit, the registration key storage unit, the temporary key storage unit, and the comparison unit cooperate to calculate, upon receiving a request from a user terminal, third encrypted information based on the second plain text information at the time of authentication and the third key serving as a temporary key, and transmit the third encrypted information to the user terminal; receive encrypted information to be compared; and determine the degree of consistency between the first plain text information at the time of registration and the first plain text information at the time of authentication, and the degree of consistency between the second plain text information at the time of registration and the second plain text information at the time of authentication, using a comparison function using the third key and the second key used in calculating the registration password information. The cryptographic information of the comparison object is calculated by the user terminal based on the fourth cryptographic information, a fourth key serving as a temporary key, and registered cryptographic information including the pre-registered first cryptographic information, the second cryptographic information, and the first key, using a predetermined processing performed by a predetermined cryptographic comparison function, using a cryptographic server that has received fourth cryptographic information calculated based on the third cryptographic information and the first plain text information during authentication, and a calculation server. The first key and the fourth key are offset in the calculated cryptographic information through an exclusive OR operation.
11. A password authentication system comprising a user terminal, a comparison and encryption server, a calculation server, and a service server connected via a network, characterized in that: The comparison encryption server stores the first key used by the user terminal to calculate the first encryption information when registering. The service server holds a second key used by the service server to calculate the second encrypted information at the time of registration. The computing server stores the first encrypted information and the second encrypted information. In response to a specified request from the user terminal to the service server, the control encryption server, the service server, and the calculation server collaborate to perform calculations using the first key, the second key, the first encryption information, and the second encryption information, calculate the consistency between the first plain text information at the time of registration and the first plain text information at the time of authentication, and the consistency between the second plain text information at the time of registration and the second plain text information at the time of authentication, and send an authentication result corresponding to the consistency from the service server to the user terminal.
12. The password authentication system according to claim 11, wherein: Also includes registration password server, The registration encryption server generates the first key and calculates the first encrypted information when receiving the first plain text information from the user terminal; upon receiving second plain text information from the service server, generating the second key and calculating the second encrypted information; The first encryption information and the second encryption information are registered in the calculation server.
13. The password authentication system according to claim 12, wherein: The registration encryption server discards the first plain text information, the first key, and the first encrypted information after registering the first encrypted information, and discards the second plain text information, the second key, and the second encrypted information after registering the second encrypted information.
14. A storage medium storing a program for causing a computer to execute the following processing, characterized in that: When receiving a request from the user terminal, calculating third encrypted information based on the second plain text information during authentication and a third key serving as a temporary key; receiving cryptographic information of a comparison object calculated by performing a predetermined processing using a predetermined cryptographic comparison function based on fourth cryptographic information, a fourth key serving as a temporary key, and registered cryptographic information including pre-registered first cryptographic information, second cryptographic information, and the first key, wherein the fourth cryptographic information is calculated based on the third cryptographic information and first plain text information of the user during authentication, and the first key and the fourth key are offset in the calculated cryptographic information by an exclusive-OR operation; and By using a comparison function of the encrypted information of the comparison object, the third key, and the second key used in calculating the registration password information, the consistency between the first plain text information at the time of registration and the first plain text information at the time of authentication, as well as the consistency between the second plain text information at the time of registration and the second plain text information at the time of authentication, an authentication result corresponding to the consistency is sent to the user terminal.
Citation Information
Patent Citations
System and method for single sign-on web site and recording medium
JP2002032340A
Method and system device for authenticating single sign- on
JP2002335239A
Authentication system, single sign-on system, server device and program
JP2011238036A
Game machine
JP2020025659A
Encrypted data processing system and program
WO2019124164A1