Password generation method using dynamically changeable regular expression, system and program

The password generation method employs dynamically changeable regular expressions based on user information and activity, providing personalized and secure password creation by validating and encrypting passwords on the client side, addressing the inflexibility of pre-defined rules.

JP2025178201APending Publication Date: 2025-12-05LINE PLUS +1
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2025086008
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-05-23
Filing Date
2025-05-23
Publication Date
2025-12-05

AI Technical Summary

Technical Problem

Existing password generation methods require users to adhere to pre-defined rules set by each web-based solution or service, lacking flexibility and personalization.

Method used

A password generation method and system that utilizes dynamically changeable regular expressions based on user information and activity, allowing servers to generate unique rules for each user and enabling clients to validate and encrypt passwords before transmission.

Benefits of technology

Enables personalized and secure password generation, ensuring compliance with dynamically generated rules without disclosing the password to the server, enhancing security and user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025178201000001_ABST
    Figure 2025178201000001_ABST
Patent Text Reader

Abstract

To provide a password generation method using dynamically changeable regular expression, and a system.SOLUTION: A password generation method includes the steps of: transmitting a password generation request from a user of a computer device to a server; receiving regular expression generated in the server on the basis of a password generation rule and user information, from the server, according to the password generation request; confirming validity of the password input by the user, on the basis of the regular expression; and subjecting the password in which the validity is confirmed to hash processing, and transmitting the password to the server.SELECTED DRAWING: Figure 3
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The following description relates to a method and system for changing passwords that utilizes dynamically modifiable regular expressions. [Background technology]

[0002] In web-based solutions and services, user IDs and passwords are registered and used for the purpose of user identification and authentication. Users enter their registered IDs and passwords to use web-based solutions and services.

[0003] When a user first registers a password or changes a registered password, the password must be generated to conform to pre-defined rules. For example, in the past, each web-based solution or service had its own pre-defined password generation rules. Users had to generate and register a password that conformed to the pre-defined rules of the web-based solution or service for which they were registering the password. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] Korean Patent Registration No. 10-1467930 Summary of the Invention [Problem to be solved by the invention]

[0005] A password generation method and system using dynamically changeable regular expressions is provided. [Means for solving the problem]

[0006] Provided is a password generation method for a computer device including at least one processor, the password generation method including the steps of: transmitting a password generation request from a user of the computer device to a server by the at least one processor; receiving from the server, by the at least one processor, a regular expression generated by the server based on password generation rules and user information in accordance with the password generation request; confirming, by the at least one processor, the validity of the password entered by the user based on the regular expression; and hashing the password whose validity has been confirmed by the at least one processor and transmitting the hashed password to the server.

[0007] According to one aspect, the regular expressions may be characterized as including password generation rules that are determined based on user information or user activity in applications associated with the computing device.

[0008] According to another aspect, the password generation method may further include providing a user with information about regular expressions to guide the user to enter a new password according to the password generation rules.

[0009] According to yet another aspect, the regular expression may be characterized as being determined based on user information and differing from regular expressions generated for other users.

[0010] According to yet another aspect, the regular expressions may be characterized as being generated differently as user information changes.

[0011] According to yet another aspect, at least a portion of the user information may include information that is not stored on a computer device, not managed by a computer program, or stored solely on a server.

[0012] According to another aspect, the step of receiving the regular expression generated by the server from the server may further include a step of receiving from the server one or more error message information generated based on the password generation rules or the regular expression, and the step of validating the password may include a step of displaying an error message based on the received error message information if the password entered by the user violates the regular expression.

[0013] According to yet another aspect, the step of displaying an error message may include displaying a different error message based on the received error message information, according to a validity rule that is violated by the password entered by the user, among a plurality of validity rules associated with the regular expression.

[0014] Provided is a password generation method for a computer device including at least one processor, the password generation method including the steps of: receiving, by the at least one processor, a password generation request sent from a user terminal under the control of a client installed in the user terminal; generating, by the at least one processor, a regular expression based on password generation rules and user information in accordance with the password generation request; transmitting, by the at least one processor, the regular expression to the user terminal; receiving, by the at least one processor, a password from the user terminal whose validity has been confirmed based on the regular expression and hashed at the user terminal; and registering the hashed password for the user.

[0015] A computer program is provided that is recorded on a computer-readable recording medium and that, when combined with a computer device, causes the computer device to execute the method.

[0016] A computer-readable recording medium is provided, on which a program for causing a computer device to execute the method is recorded. Also provided is a program for causing a computer device to execute the method.

[0017] Provided is a computer device including at least one processor configured to execute computer-readable instructions, wherein the at least one processor transmits a password generation request from a user of the computer device to a server, receives from the server a regular expression generated by the server based on password generation rules and user information in accordance with the password generation request, verifies the validity of the password entered by the user based on the regular expression, and hash-processes the validated password and transmits it to the server.

[0018] Provided is a computer device comprising at least one processor configured to execute computer-readable instructions, wherein the at least one processor, under the control of a client installed in a user terminal, receives a password generation request sent from the user terminal, generates a regular expression based on password generation rules and user information in accordance with the password generation request, sends the regular expression to the user terminal, confirms validity from the user terminal based on the regular expression, receives a hashed password from the user terminal, and registers the hashed password for the user. [Effects of the Invention]

[0019] It is possible to provide a password generation method and system that utilizes dynamically changeable regular expressions. [Brief explanation of the drawings]

[0020] [Figure 1] FIG. 1 is a diagram illustrating an example of a network environment according to an embodiment of the present invention. [Figure 2] FIG. 1 is a block diagram illustrating an example of a computing device according to an embodiment of the present invention. [Figure 3]1 is a schematic illustration of a password generation system according to an embodiment of the present invention; [Figure 4] 1 is a flowchart illustrating an exemplary method for generating a password in accordance with an embodiment of the present invention. [Figure 5] 1 is a flowchart illustrating an exemplary method for generating a password in accordance with an embodiment of the present invention. [Figure 6] FIG. 10 illustrates an example of a user interface for changing a password in accordance with an embodiment of the present invention. [Figure 7] FIG. 10 illustrates an example of a user interface for changing a password in accordance with an embodiment of the present invention. [Figure 8] FIG. 10 illustrates an example of a user interface for changing a password in accordance with an embodiment of the present invention. [Figure 9] FIG. 10 illustrates an example of a user interface for changing a password in accordance with an embodiment of the present invention. [Figure 10] FIG. 10 illustrates an example of a user interface for changing a password in accordance with an embodiment of the present invention. [Figure 11] FIG. 10 illustrates an example of a user interface for changing a password in accordance with an embodiment of the present invention. DETAILED DESCRIPTION OF THE INVENTION

[0021] Hereinafter, the embodiments will be described in detail with reference to the accompanying drawings.

[0022] A password generation system according to an embodiment of the present invention may be implemented by at least one computer device. In this case, a computer program according to an embodiment of the present invention may be installed and executed in the computer device, and the computer device may execute a password generation method according to an embodiment of the present invention under the control of the executed computer program. The computer program may be recorded on a computer-readable recording medium so as to be combined with the computer device and cause the computer to execute the password generation method.

[0023] FIG. 1 is a diagram showing an example of a network environment in one embodiment of the present invention. The network environment in FIG. 1 shows an example including multiple electronic devices 110, 120, 130, and 140, multiple servers 150 and 160, and a network 170. FIG. 1 is merely an example for explaining the invention, and the number of electronic devices and the number of servers are not limited to those shown in FIG. 1. Furthermore, the network environment in FIG. 1 is merely an example of an environment applicable to this embodiment, and environments applicable to this embodiment are not limited to the network environment in FIG. 1.

[0024] The electronic devices 110, 120, 130, and 140 may be fixed or mobile terminals implemented by computers. Examples of the electronic devices 110, 120, 130, and 140 include smartphones, mobile phones, navigation systems, personal computers (PCs), notebook PCs, digital broadcasting terminals, personal digital assistants (PDAs), portable multimedia players (PMPs), and tablets. While FIG. 1 illustrates a smartphone as an example of the electronic device 110, in embodiments of the present invention, the electronic device 110 may represent one of a variety of physical computer devices capable of communicating with the other electronic devices 120, 130, and 140 and / or the servers 150 and 160 via the network 170 using a substantially wireless or wired communication method.

[0025] The communication method is not limited, and may include not only communication methods using communication networks (for example, a mobile communication network, a wired Internet, a wireless Internet, and a broadcast network) that can be included in network 170, but also short-range wireless communication between devices. For example, network 170 may include any one or more of networks such as a personal area network (PAN), a local area network (LAN), a campus area network (CAN), a metropolitan area network (MAN), a wide area network (WAN), a broadband network (BBN), and the Internet. Furthermore, network 170 may include any one or more of network topologies including, but not limited to, a bus network, a star network, a ring network, a mesh network, a star-bus network, a tree or hierarchical network, etc.

[0026] Each of the servers 150, 160 may be implemented by one or more computing devices that communicate with the multiple electronic devices 110, 120, 130, 140 via the network 170 to provide instructions, code, files, content, services, etc. For example, the server 150 may be a system that provides services to the multiple electronic devices 110, 120, 130, 140 connected via the network 170.

[0027] 2 is a block diagram showing an example of a computer device according to an embodiment of the present invention. Each of the electronic devices 110, 120, 130, and 140 and each of the servers 150 and 160 described above may be realized by a computer device 200 shown in FIG.

[0028] As shown in FIG. 2 , such a computer device 200 may include a memory 210, a processor 220, a communication interface 230, and an input / output interface 240. The memory 210 is a computer-readable recording medium and may include random access memory (RAM), read-only memory (ROM), and a persistent mass storage device such as a disk drive. Here, a persistent mass storage device such as a ROM or a disk drive may be included in the computer device 200 as a separate persistent storage device distinct from the memory 210. The memory 210 may also store an operating system and at least one program code. Such software components may be loaded into the memory 210 from a computer-readable recording medium separate from the memory 210. Such separate computer-readable recording medium may include a computer-readable recording medium such as a floppy drive, a disk, a tape, a DVD / CD-ROM drive, or a memory card. In another embodiment, the software components may be loaded into the memory 210 through a communication interface 230, which is not a computer-readable recording medium. For example, the software components may be loaded into the memory 210 of the computer device 200 based on a computer program installed by a file received over the network 170 .

[0029] Processor 220 may be configured to process computer program instructions by performing basic arithmetic, logic, and input / output operations. The instructions may be provided to processor 220 by memory 210 or by communication interface 230. For example, processor 220 may be configured to execute instructions received according to program code stored in a storage device such as memory 210.

[0030] The communication interface 230 may provide a function for the computer device 200 to communicate with other devices (e.g., the above-mentioned storage device) via the network 170. For example, requests, instructions, data, files, etc. generated by the processor 220 of the computer device 200 in accordance with program code stored in a storage device such as the memory 210 may be transmitted to other devices via the network 170 under the control of the communication interface 230. Conversely, signals, instructions, data, files, etc. from other devices may be received by the computer device 200 via the communication interface 230 of the computer device 200 via the network 170. The signals, instructions, data, etc. received via the communication interface 230 may be transmitted to the processor 220 or the memory 210, and files, etc. may be recorded on a storage medium (e.g., the above-mentioned permanent storage device) that may further be included in the computer device 200.

[0031] The input / output interface 240 may be a means for interfacing with the input / output device 250. For example, the input device may include a device such as a microphone, keyboard, or mouse, and the output device may include a device such as a display or speaker. As another example, the input / output interface 240 may be a means for interfacing with a device that integrates input and output functions into one, such as a touchscreen. The input / output device 250 may be configured as a single device together with the computer device 200. For example, like a smartphone, the touchscreen, microphone, speaker, etc. may be implemented in a manner in which they are mounted on the computer device 200.

[0032] Also, in other embodiments, computing device 200 may include fewer or more components than those shown in Figure 2. However, most prior art components need not be explicitly shown in the figures. For example, computing device 200 may be implemented to include at least some of the input / output devices 250 described above, and may further include other components such as a transceiver, a database, etc.

[0033] FIG. 3 is a schematic diagram illustrating an exemplary password generation system according to an embodiment of the present invention. The password generation system 300 according to the embodiment of FIG. 3 may include a server 310 that provides a web-based service and a user terminal 320 that accesses the server 310 to receive the web-based service. In reality, there are many users who access the server 310 to receive the web-based service and many terminals used by the users, but these are not shown in FIG. 3. The user terminal 320 and the server 310 may each be implemented by at least one computer device 200. A client 321 that cooperates with the web-based service provided by the server 310 may be installed and executed in the user terminal 320, and the client 321 may control the user terminal 320 to access the server 310 and receive the web-based service.

[0034] The server 310 may basically provide a login service for identifying and authenticating a user, and may also provide various other services. A user may register an ID and password with the server 310 through the login service, and the server 310 may identify and authenticate a user who is attempting to use a web-based service provided by the server 310 using the registered ID and password.

[0035] A user must generate a password when registering the password for the first time and / or when changing a registered password. At this time, the server 310 may dynamically generate a regular expression using preset password generation rules and user information in response to a password generation request from the client 321, and provide the generated regular expression to the client 321. The client 321 may then verify the validity of the password entered by the user based on the regular expression provided by the server.

[0036] As an example, the server 310 may generate a regular expression including new password generation rules that are generated by dynamically changing the password generation rules according to user information. Here, the password generation rules may include at least some of various rules, such as the number of characters that the password should contain, whether the password should contain uppercase letters, whether the password should contain lowercase letters, whether the password should contain numerals, whether the password should contain symbols, the number of numerals that the password should contain, the number of symbols that the password should contain, etc. In this case, instead of requiring all users to use the same password generation rules, the server 310 may guide users to generate passwords according to regular expressions that include new password generation rules that are dynamically changed according to user information.

[0037] The user information may include at least some of various items of information that can be collected about the user, such as the user's name, the user's phone number, the user's address, the user's email address, the model and version of the user terminal 320, the user's current location, and profile information for the user's social networking service. In particular, at least some of the user information used by the server 310 to generate a regular expression may include information that is not stored in the user terminal 320, not managed by the client 321, and / or stored only in the server 310. As an example, some of the various items of user information described above may not need to be stored in the user terminal 320 or managed by the client 321. In this case, the server 310 may generate a regular expression including a new password generation rule using user information including information that can be managed only by the server 310. For example, user-related information such as the user's birthday or the last four digits of the phone number may be extracted from the user information, and the regular expression may be generated using the extracted user-related information. As a specific example, if it is confirmed that a user's birthday is 1 / 11, a regular expression may be generated that states that the password must not contain "111." Alternatively, if it is confirmed that the last four digits of a user's phone number are "9876," a regular expression may be generated that states that the password must not contain "9876."

[0038] Such regular expressions may be generated differently for at least two or more users based on user information, or may be generated differently for the same user depending on changes in user information. Therefore, even if the same password generation rules are preset in server 310, different password generation rules can be applied to different users or different versions of user information, making it possible to use passwords generated under various rules even for the same service.

[0039] The server 310 may generate one or more error message information for each password generation rule or regular expression based on the password generation rule or regular expression, and may transmit the one or more error message information to the user terminal 320 together with the password generation rule or regular expression.

[0040] The client 321 may provide the user with information about such regular expressions to guide the user in generating a password in accordance with new password generation rules, and may verify the validity of the password entered by the user by verifying that the password entered by the user conforms to the regular expressions (including the new password generation rules). According to the present invention, if it is determined that the password entered by the user does not conform to the regular expressions, an error message may be displayed depending on which validity rule has been violated. In this case, the error message may be determined depending on which validity rule was applied to the user. As a result, even if different users enter the same password as a new password, different validity rules may be applied to each user, and different error messages may be displayed. For example, if user 1 and user 2 enter the same password, "0111abc!", an error message stating "The same digits cannot be used consecutively" may be displayed to user 1, and an error message stating "Passwords containing birthdays cannot be used" may be displayed to user 2. Once the validity of the password entered by the user is verified, the client 321 may encrypt the verified password and send it to the server 310. According to another example, the client 321 may hash the validated password and send it to the server 310. Essentially, the client 321 may control the user terminal 320 so that the operations of the client 321 described above are performed on the user terminal 320.

[0041] The server 310 may receive an encrypted or hashed password from the client 321 and register the received password for the user. If the password generation request is for changing a password and a registered password exists, the server 310 may change the registered password to the newly received password.

[0042] FIG. 4 is a flowchart illustrating an example of a password generation method according to an embodiment of the present invention. The password generation method according to this embodiment may be executed by at least one computer device 200 that implements a user terminal 320. In this case, the processor 220 of the computer device 200 may be implemented to execute control instructions provided by operating system code and at least one computer program code contained in the memory 210. Here, the processor 220 may control the computer device 200 to execute steps 410 to 450 included in the method of FIG. 4 in accordance with the control instructions provided by the code recorded on the computer device 200.

[0043] In step 410, the computer device 200 may send a password generation request from a user of the computer device 200 to a server. Here, the server may correspond to the server 310 described with reference to FIG. 3. As an example, under the control of a computer program installed and executed on the computer device 200, which is the client 321, the computer device 200 may send a password generation request generated by a user's input to the server. Such a password generation request may occur when the user initially attempts to register for a service provided by the server and / or when the user attempts to change their password.

[0044] In step 420, the computer device 200 may receive from the server, in response to the password generation request, a regular expression generated by the server based on password generation rules and user information. As described above, in response to the password generation request, the server may dynamically change the generated password generation rules in accordance with the user information to generate a regular expression including new password generation rules, and may send the generated regular expression to the client. In this case, the regular expression may be generated differently for at least two or more users based on the user information, and / or may be generated differently for the same user due to changes in the user information. According to another embodiment, in step 420, the computer device 200 may receive from the server, in response to the password generation request, a regular expression dynamically generated by the server based at least on the user information.

[0045] According to an embodiment, at least some of the user information may include information that is not stored on computing device 200, not managed by a client computer program, or stored solely on a server.

[0046] In yet another embodiment, the regular expression may be determined based on the user's activity on the social networking service associated with client 321. For example, if the social networking service is accessed at or above a predetermined frequency, the regular expression may be generated to include a password with fewer digits than if the social networking service is accessed less than the predetermined frequency.

[0047] In step 430, the computer device 200 may provide the user with information about the regular expression to guide the user to enter a password in accordance with the new password generation rules. As an example, the computer device 200 may display the information about the regular expression on a display of the computer device 200.

[0048] In step 440, the computer device 200 may validate the password entered by the user based on the regular expression. As an example, the computer device 200 may determine whether the password entered by the user complies with new password generation rules contained in the regular expression. In other words, the generation of the regular expression may be performed on the server, and the validation of the password based on such regular expression may be performed on the client.

[0049] According to an embodiment, when the computer device 200 receives the regular expression from the server in step 420, the computer device 200 may further receive one or more error message information generated based on the password generation rules or the regular expression from the server. Such error message information may be used by the client to display an appropriate error message if the password entered by the user violates a validity rule according to the validation. In other words, in step 440, if the password entered by the user violates the regular expression, the computer device 200 may display an error message based on the received error message information. In this case, the computer device 200 may display a different error message based on the received error message information according to the validity rule that the password entered by the user violates, among multiple validity rules associated with the regular expression.

[0050] In step 450, the computer device 200 may encrypt the password whose validity has been confirmed and send it to the server. In this case, the server may register the encrypted password for the user. In other words, while the server dynamically generates password generation rules, the client may check the validity of the password, and it becomes possible to register a password that conforms to the password generation rules that have been dynamically generated by the server without disclosing the password to the server in order to provide the encrypted password to the server. According to another example, in step 450, the computer device 200 may hash the password whose validity has been confirmed and send it to the server. In this case, the server may register the hashed password for the user. In other words, while the server dynamically generates password generation rules, the client may check the validity of the password, and it becomes possible to register a password that conforms to the password generation rules that have been dynamically generated by the server without disclosing the password to the server in order to provide the hashed password to the server.

[0051] FIG. 5 is a flowchart illustrating an example of a password generation method according to an embodiment of the present invention. The password generation method according to this embodiment may be executed by at least one computer device 200 that implements server 310. In this case, processor 220 of computer device 200 may be implemented to execute control instructions provided by operating system code and at least one computer program code contained in memory 210. Here, processor 220 may control computer device 200 to execute steps 510 to 550 included in the method of FIG. 5 in accordance with the control instructions provided by the code recorded in computer device 200.

[0052] In step 510, the computer device 200 may receive a password generation request sent from a user terminal under the control of a client installed on the user terminal. Here, the user terminal and the client may correspond to the user terminal 320 and the client 321 described with reference to FIG. 3. As described above, the password generation request may occur when the user initially attempts to register for a service provided by the server and / or when the user attempts to change their password.

[0053] In step 520, the computer device 200 may generate a regular expression based on the password generation rules and user information in accordance with the password generation request. As an example, the computer device 200 may generate a regular expression including new password generation rules generated by dynamically changing the password generation rules in accordance with the user information. As described above, the regular expression may be generated differently for at least two or more users based on the user information, and / or may be generated differently for the same user due to changes in the user information. According to another embodiment, in step 520, the computer device 200 may receive from the server a regular expression dynamically generated by the server based at least on the user information in accordance with the password generation request.

[0054] According to an embodiment, at least some of the user information may include information that is not stored on the user terminal, not managed by a client installed and running on the user terminal, or stored solely on the computing device 200 implementing the server 310.

[0055] According to still another embodiment, the regular expression may be determined based on the user's activity on the social network service linked to server 310. For example, if the social network service is accessed at a predetermined frequency or more, a less strict regular expression may be generated than if the access frequency is less than the predetermined frequency. A less strict regular expression may include a regular expression requiring a password with fewer digits or including fewer conditions, and a more strict regular expression may include a regular expression requiring a password with more digits or including more conditions.

[0056] In step 530, the computer device 200 may send the regular expression to the user terminal. In this case, the user terminal may validate the password entered by the user based on the regular expression. For example, the user terminal may determine, under the control of the client, whether the password entered by the user complies with the new password generation rules included in the regular expression. The user terminal may also encrypt or hash the validated password and send it to the server.

[0057] In step 540, the computing device 200 may receive from the user terminal a password that has been validated based on the regular expression and encrypted or hashed at the user terminal.

[0058] In step 550, computer device 200 may register the encrypted or hashed password for the user. In this way, while the password generation rules are dynamically generated by the server, the validity of the password is confirmed by the client, and it becomes possible to register a password that conforms to the password generation rules dynamically generated by the server without disclosing the password to the server in order to provide the encrypted or hashed password to the server.

[0059] 6 to 11 are diagrams showing examples of a user interface for changing a password in one embodiment of the present invention.

[0060] FIG. 6 shows an example of a screen for confirming the user's intention to change their password in response to the user's request. If the user selects the "Continue" button, a screen for the user to enter a new password may be provided, as shown in FIGS. 7, 8, and 9. In this case, FIGS. 7, 8, and 9 each show an example of a different regular expression. As a more specific example, FIG. 7 shows an example of a regular expression that requests the entry of a password consisting of 10 or more characters and a combination of three or more of uppercase letters, lowercase letters, numbers, and symbols. FIG. 8 shows an example of a regular expression that requests the entry of a password consisting of 8 or more characters and a combination of one or more of uppercase letters, lowercase letters, numbers, and symbols. FIG. 9 shows an example of a regular expression that requests the entry of a password consisting of 8 to 20 characters and a combination of two or more of uppercase letters, lowercase letters, numbers, and symbols. In the examples of FIGS. 7 to 9, the items of the password generation rules are fixed, but different values ​​are applied to each item. Depending on the example, the items of the password generation rules themselves may be changed. In this case, the example of FIG. 7 requires stricter password generation rules than the example of FIG. 8. In this way, it is possible to provide stricter password generation rules for some users and relatively less strict password generation rules for other users based on the user information. For example, if the user information indicates that a password change is requested within a certain period of time from the time the password was created or changed, stricter password generation rules may be required.

[0061] In particular, the server may dynamically generate password generation rules based on user information, and the client may verify the validity of the password based on the generated rules. As an example, FIG. 10 shows an example of a screen on which the client notifies the user that the password has been changed when a valid password is entered, and FIG. 11 shows an example of a screen on which the client re-notifies the user of the password generation rules when an invalid password is entered. The client may encrypt or hash the password whose validity has been confirmed and send it to the server. This allows the server to generate and register a password in accordance with the password generation rules dynamically generated by the server, without disclosing the password to the server. Furthermore, the client may provide an appropriate error message for the password entered by the user.

[0062] As described above, according to the embodiment of the present invention, it is possible to provide a method and system for generating a password using a dynamically changeable regular expression.

[0063] The above-described systems or devices may be realized using hardware components or a combination of hardware and software components. For example, the devices and components described in the embodiments may be realized using one or more general-purpose or special-purpose computers, such as a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA), a programmable logic unit (PLU), a microprocessor, or various devices capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications running on the OS. The processing device may also access, record, manipulate, process, and generate data in response to the execution of the software. For ease of understanding, a single processing device may be described. However, those skilled in the art will understand that a processing device may include multiple processing elements and / or multiple types of processing elements. For example, a processing device may include multiple processors or one processor and one controller. Other processing configurations, such as parallel processors, are also possible.

[0064] Software may include computer programs, codes, instructions, or a combination of one or more of these, which may configure a processing device to operate as desired or may independently or collectively instruct the processing device. The software and / or data may be embodied in any type of machine, component, physical device, virtual device, computer storage medium, or device to be interpreted by the processing device or to provide instructions or data to the processing device. The software may be distributed and stored and executed in a distributed manner on computer systems connected by a network. The software and data may be stored on one or more computer-readable storage media.

[0065] Methods according to embodiments may be implemented in the form of program instructions executable by various computer means and recorded on a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The medium may continuously store a computer-executable program or may temporarily store the program for execution or download. The medium may also be various recording or storage means, including a single or multiple hardware devices, and may be directly connected to a computer system or distributed over a network. Examples of media include magnetic media such as hard disks, floppy disks, and magnetic tapes; optical media such as CD-ROMs and DVDs; magneto-optical media such as floptical disks; and media configured to store program instructions, such as ROM, RAM, and flash memory. Other examples of media include recording media or storage media managed by app stores that distribute applications, or by websites or servers that provide or distribute various software. Examples of program instructions include not only machine language code, such as that generated by a compiler, but also high-level language code executed by a computer using an interpreter or the like.

[0066] Although the embodiments have been described above based on limited examples and drawings, those skilled in the art will appreciate that various modifications and variations may be made from the above description. For example, the described techniques may be performed in an order different from that described, and / or the described system, structure, device, circuit, or other element may be coupled or combined in a manner different from that described, or may be substituted or replaced by other elements or equivalents, and still achieve suitable results.

[0067] Therefore, different embodiments are within the scope of the appended claims, provided that they are equivalent to the claims.

[0068] This application claims priority based on Patent Application No. 10-2024-067227, filed with the Korean Intellectual Property Office on May 23, 2024, the entire contents of which are incorporated herein by reference. [Explanation of symbols]

[0069] 300: Password generation system 310: Server 320: User terminal 321: Client

Claims

1. A program for combining with a computer device to cause the computer device to execute a password generation method, The password generation method includes: sending a password generation request from a user of the computer device to a server; receiving from the server a regular expression generated by the server based on password generation rules and user information in accordance with the password generation request; verifying the validity of the password entered by the user based on the regular expression; and hashing the password whose validity has been confirmed and transmitting the hashed password to the server.

2. 2. The program of claim 1, wherein the regular expression includes password generation rules determined based on the user information or user activity in an application associated with the computer device.

3. The password generation method includes:

2. The program according to claim 1, further comprising the step of providing the user with information about the regular expression to guide the user to enter a new password in accordance with the password generation rules.

4. 2. The program according to claim 1, wherein the regular expression is determined based on the user information and is different from regular expressions generated for other users.

5. 2. The program according to claim 1, wherein the regular expression is generated so as to vary depending on changes in the user information.

6. 2. The program of claim 1, wherein at least a portion of the user information includes information that is not stored on the computer device, not managed by the program, or stored only on the server.

7. The step of receiving the regular expression generated by the server from the server includes: further receiving, from the server, one or more error message information generated based on the password generation rules or the regular expression; The step of validating the password includes:

2. The program according to claim 1, further comprising a step of displaying an error message based on the received error message information when the password entered by the user violates the regular expression.

8. The step of displaying an error message includes:

8. The program of claim 7, wherein, based on the received error message information, a different error message is displayed according to a validity rule that the password entered by the user violates, among a plurality of validity rules associated with the regular expression.

9. 1. A method for generating a password for a computer device including at least one processor, comprising: transmitting, by the at least one processor, a password generation request from a user of the computing device to a server; receiving, by the at least one processor, from the server in accordance with the password generation request, a regular expression generated by the server based on password generation rules and user information; validating, by the at least one processor, a password entered by the user based on the regular expression; hashing, by the at least one processor, the validated password and transmitting the hashed password to the server; Password generation methods, including:

10. 10. The method of claim 9, wherein the regular expression includes password generation rules determined based on the user information or user activity in an application associated with the computer device.

11. 10. The password generation method of claim 9, wherein the regular expression is determined based on the user information and is different from regular expressions generated for other users.

12. 10. The password generation method according to claim 9, wherein the regular expression is generated so as to vary depending on changes in the user information.

13. 10. The password generation method of claim 9, wherein at least a portion of the user information includes information that is not stored on the computer device, not managed by a computer program, or stored only on the server.

14. A computer-readable recording medium having recorded thereon a program for causing a computer device to execute the password generation method according to any one of claims 9 to 13.

15. at least one processor configured to execute computer device readable instructions; by the at least one processor receiving a password generation request transmitted from the user terminal under the control of a client installed in the user terminal; generating a regular expression based on password generation rules and user information in accordance with the password generation request; Sending the regular expression to the user terminal; receiving a hashed password from the user terminal, the validity of which is confirmed based on the regular expression; A computer device that registers the hashed password for a user.

16. by the at least one processor The computer device of claim 15, wherein the regular expression is generated to include a password generation rule determined based on the user information or user activity in an application associated with the user terminal.

17. The regular expression is generated differently for at least two or more users based on the user information.

16. A computer device according to claim 15.

18. 16. The computer device of claim 15, wherein the regular expression is generated differently as the user information changes.

19. 16. The computer device of claim 15, wherein at least a portion of the user information includes information that is not stored on the user terminal, not managed by the client, or stored solely on the computer device.

20. by the at least one processor generating one or more error message information based on the password generation rules or the regular expressions; Further transmitting the generated one or more error message information to the user terminal; In the user terminal, if the password entered by the user violates the regular expression, an error message is displayed based on the error message information.

16. The computer device of claim 15.

Citation Information

Patent Citations

  • Method for changing password, device for managing password and computer readable recording medium

    KR101467930B1