Verification method, device, storage medium and apparatus based on verification code

By providing a fill-in CAPTCHA that includes obstacle areas and areas to be filled, and verifying the filling result based on the user's operation position, the problem of existing CAPTCHAs being easily cracked is solved, thus improving security.

CN114840845BActive Publication Date: 2026-01-30MIGU CO LTD +1
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202210455649.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-04-27
Publication Date
2026-01-30
Estimated Expiration
2042-04-27

AI Technical Summary

Technical Problem

Existing CAPTCHAs are low in complexity and easy to crack, resulting in poor security.

Method used

Provide a fill-in CAPTCHA, which includes an obstacle area and a fill-in area. By obtaining the user's operation location and verifying the fill-in result, the complexity of the CAPTCHA is increased.

Benefits of technology

The complexity of the CAPTCHA has been increased to prevent it from being cracked and to enhance security.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114840845B_ABST
    Figure CN114840845B_ABST
Patent Text Reader

Abstract

This invention relates to the field of security verification technology, and discloses a verification method, device, storage medium, and apparatus based on CAPTCHA. The method includes: providing a fillable CAPTCHA corresponding to the service to be verified, wherein the fillable CAPTCHA includes an obstacle area and a region to be filled; obtaining the user's operation position based on the fillable CAPTCHA; filling the region to be filled according to the operation position and the obstacle area; and verifying the user based on the filling result. Because this invention proposes a fillable CAPTCHA and fills the CAPTCHA based on the user's click operation on the fillable CAPTCHA, and verifies the user based on the filling result, the complexity of the CAPTCHA can be increased, preventing the CAPTCHA from being cracked and improving security.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of security verification technology, and in particular to a verification method, device, storage medium and apparatus based on verification codes. Background Technology

[0002] Currently, there are many types of CAPTCHAs, including puzzle sliding, number calculation, pattern comparison, and text (including mixed numbers and letters) recognition. However, existing CAPTCHAs have low complexity and are easily cracked, resulting in poor security. Summary of the Invention

[0003] The main objective of this invention is to provide a verification method, device, storage medium, and apparatus based on verification codes, aiming to solve the technical problem that verification codes in the prior art are of low complexity, easy to crack, and thus have poor security.

[0004] To achieve the above objectives, the present invention provides a verification method based on a verification code, the verification method comprising the following steps:

[0005] Provide a fillable CAPTCHA corresponding to the business to be verified, wherein the fillable CAPTCHA includes an obstacle area and a fillable area;

[0006] Obtain the user's operation location based on the populated CAPTCHA;

[0007] The area to be filled is filled according to the operation position and the obstacle area;

[0008] The user is verified based on the results of the data entry.

[0009] Optionally, before the step of verifying the user based on the fill result, the method further includes:

[0010] Obtain the number of operations performed by the user, and determine whether the number of operations is less than the limit number of operations corresponding to the filler CAPTCHA;

[0011] Accordingly, the step of verifying the user based on the filling result includes:

[0012] If not, the user is verified based on the filling result.

[0013] Optionally, after the step of obtaining the user's number of operations and determining whether the number of operations is less than the limit number corresponding to the filler CAPTCHA, the method further includes:

[0014] If so, display the filled-in CAPTCHA and return to the step of obtaining the user's operation location based on the filled-in CAPTCHA, until the number of operations is greater than or equal to the limit number of times.

[0015] Optionally, the step of providing a filled-in CAPTCHA corresponding to the service to be verified includes:

[0016] Provide a fill-in CAPTCHA corresponding to the business to be verified and a reminder of the fill-in steps for the CAPTCHA;

[0017] Accordingly, the step of obtaining the user's operation location based on the filled-in CAPTCHA includes:

[0018] Obtain the user's operation location based on the fill-in CAPTCHA and the fill-in step reminder feedback.

[0019] Optionally, the fill-in CAPTCHA is a grid-style CAPTCHA, wherein both the obstacle area and the area to be filled contain at least one grid.

[0020] or,

[0021] The filled CAPTCHA is a dot matrix CAPTCHA, and both the obstacle area and the area to be filled contain at least one dot matrix.

[0022] Optionally, before the step of obtaining the user's operation location based on the fill-in-the-blank CAPTCHA feedback, the method further includes:

[0023] Select the decoding location within the preset area;

[0024] The area to be filled is obtained by expanding the selection with the decoding position as the center point;

[0025] Based on the area to be filled, an obstacle area is set in the preset area to obtain a fillable verification code.

[0026] Optionally, before the step of selecting the decoding position in the preset area, the method further includes:

[0027] Determine the complexity of the verification code based on the business requirements of the business to be verified.

[0028] Based on the complexity of the CAPTCHA, a preset area corresponding to the service to be verified is generated.

[0029] Furthermore, to achieve the above objectives, the present invention also proposes a verification device based on a verification code, the verification device based on a verification code including a memory, a processor, and a verification program based on a verification code stored in the memory and executable on the processor, the verification program based on a verification code being configured to implement the verification method based on a verification code as described above.

[0030] In addition, to achieve the above objectives, the present invention also proposes a storage medium storing a verification program based on a verification code, wherein the verification program based on the verification code is executed by a processor to implement the verification method based on the verification code as described above.

[0031] In addition, to achieve the above objectives, the present invention also proposes a verification device based on a verification code, which includes: a verification code providing module, an operation acquisition module, an area filling module, and a user verification module.

[0032] The verification code providing module is used to provide a filled verification code corresponding to the business to be verified, wherein the filled verification code includes an obstacle area and a filling area;

[0033] The operation acquisition module is used to acquire the operation position fed back by the user based on the fill-in CAPTCHA, wherein the fill-in CAPTCHA includes an obstacle area and a region to be filled.

[0034] The area filling module is used to fill the area to be filled according to the operation position and the obstacle area;

[0035] The user verification module is used to verify the user based on the filling result.

[0036] This invention discloses a fill-in-the-blank CAPTCHA corresponding to a business to be verified. The fill-in-the-blank CAPTCHA includes an obstacle area and a region to be filled. The user's operation position based on the fill-in-the-blank CAPTCHA is obtained, and the region to be filled is filled according to the operation position and the obstacle area. The user is verified based on the filling result. Because this invention proposes a fill-in-the-blank CAPTCHA and fills the CAPTCHA based on the user's click operation, and verifies the user based on the filling result, the complexity of the CAPTCHA can be increased, preventing the CAPTCHA from being cracked and improving security. Attached Figure Description

[0037] Figure 1 This is a schematic diagram of the structure of a verification device based on a verification code in the hardware operating environment involved in the embodiments of the present invention;

[0038] Figure 2 This is a flowchart illustrating the first embodiment of the verification method based on verification codes of the present invention;

[0039] Figure 3 This is a schematic diagram of a grid-format verification code according to an embodiment of the verification code-based verification method of the present invention;

[0040] Figure 4 This is a schematic diagram of a dot matrix CAPTCHA, representing an embodiment of the CAPTCHA-based verification method of the present invention.

[0041] Figure 5 This is a schematic diagram of the first expansion padding in an embodiment of the verification method based on CAPTCHA of the present invention;

[0042] Figure 6 This is a schematic diagram of the second extended padding in an embodiment of the verification method based on CAPTCHA of the present invention;

[0043] Figure 7 This is a flowchart illustrating the second embodiment of the verification method based on verification codes of the present invention;

[0044] Figure 8 This is a schematic diagram illustrating the limitation on the number of operations in an embodiment of the verification method based on CAPTCHA of the present invention;

[0045] Figure 9 This is a schematic diagram illustrating a restricted click area reminder in an embodiment of the verification method based on CAPTCHA of the present invention;

[0046] Figure 10 This is a flowchart illustrating the third embodiment of the verification method based on verification codes of the present invention;

[0047] Figure 11 This is a schematic diagram of a preset area in an embodiment of the verification method based on a verification code according to the present invention;

[0048] Figure 12 This is a schematic diagram illustrating the decoding position selection in an embodiment of the verification method based on CAPTCHA of the present invention;

[0049] Figure 13 This is a schematic diagram illustrating the selection of the region to be filled in according to an embodiment of the verification method based on CAPTCHA of the present invention;

[0050] Figure 14 This is a structural block diagram of the first embodiment of the verification device based on CAPTCHA of the present invention.

[0051] The realization of the objective, functional features and advantages of the present invention will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation

[0052] It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.

[0053] Reference Figure 1 , Figure 1 This is a schematic diagram of the structure of a verification device based on a verification code in the hardware operating environment involved in the embodiments of the present invention.

[0054] like Figure 1As shown, the verification device based on the verification code may include: a processor 1001, such as a central processing unit (CPU), a communication bus 1002, a user interface 1003, a network interface 1004, and a memory 1005. The communication bus 1002 is used to enable communication between these components. The user interface 1003 may include a display screen, and optionally, it may also include a standard wired interface or a wireless interface. In this invention, the wired interface of the user interface 1003 may be a USB interface. The network interface 1004 may optionally include a standard wired interface or a wireless interface (such as a Wireless-Fidelity (Wi-Fi) interface). The memory 1005 may be high-speed random access memory (RAM) or non-volatile memory (NVM), such as a disk storage device. The memory 1005 may also optionally be a storage device independent of the aforementioned processor 1001.

[0055] Those skilled in the art will understand that Figure 1 The structure shown does not constitute a limitation on CAPTCHA-based verification devices and may include more or fewer components than shown, or combine certain components, or have different component arrangements.

[0056] like Figure 1 As shown, the memory 1005, which is identified as a computer storage medium, may include an operating system, a network communication module, a user interface module, and a verification program based on a verification code.

[0057] exist Figure 1 In the verification device based on CAPTCHA shown, the network interface 1004 is mainly used to connect to the backend server and communicate data with the backend server; the user interface 1003 is mainly used to connect to the user equipment; the verification device based on CAPTCHA calls the verification program based on CAPTCHA stored in the memory 1005 through the processor 1001 and executes the verification method based on CAPTCHA provided in this embodiment of the invention.

[0058] Based on the above hardware structure, an embodiment of the verification method based on CAPTCHA of the present invention is proposed.

[0059] Reference Figure 2 , Figure 2 This is a flowchart illustrating the first embodiment of the verification method based on CAPTCHA of the present invention, which presents the first embodiment of the verification method based on CAPTCHA of the present invention.

[0060] In the first embodiment, the verification method based on the verification code includes the following steps:

[0061] Step S10: Provide a fillable CAPTCHA corresponding to the service to be verified, wherein the fillable CAPTCHA contains an obstacle area and a fillable area.

[0062] It should be understood that the execution subject of the method in this embodiment can be a verification device based on a verification code that has data processing, network communication and program running functions, such as a computer or mobile phone, or other electronic devices that can achieve the same or similar functions. This embodiment does not limit this.

[0063] It should be noted that the fill-in CAPTCHA can be a grid-style CAPTCHA, where both the obstacle area and the area to be filled contain at least one grid.

[0064] For ease of understanding, please refer to Figure 3 This explanation does not limit the scope of this solution. Figure 3 This is a diagram of a grid-style CAPTCHA. In the diagram, grids filled with solid circles represent obstacle areas, while grids without solid circles represent areas to be filled. Users can click on each grid in the CAPTCHA to complete the verification.

[0065] It should be noted that fill-in CAPTCHAs can also be dot matrix CAPTCHAs, where both the obstacle area and the area to be filled contain at least one dot.

[0066] For ease of understanding, please refer to Figure 4 This explanation does not limit the scope of this solution. Figure 4 This is a dot matrix CAPTCHA. In the image, solid dots represent obstacle areas, and hollow dots represent areas to be filled. Users can click on the dots in the CAPTCHA to complete the verification.

[0067] It is understandable that when receiving a verification request from a user based on a service to be verified, a populated CAPTCHA corresponding to that service can be provided. This service to be verified can be human-machine authentication, etc.

[0068] Step S20: Obtain the user's operation location based on the filled verification code.

[0069] It should be noted that the operation location can refer to the position where the user operates the fill-in CAPTCHA, and the user's operation can be a click operation, a touch operation, a swipe operation, etc.

[0070] In a practical implementation, for example, after viewing the fill-in-the-blank CAPTCHA, a user can click on the fill-in-the-blank CAPTCHA to start the verification process.

[0071] Step S30: Fill the area to be filled according to the operation position and the obstacle area.

[0072] For ease of understanding, please refer to Figure 5 and 6 This explanation does not limit the scope of this solution. Figure 5 This is a diagram illustrating the initial expansion fill. In the image, the user first clicks on the location marked "1". The area above, below, to the left, and to the right of "1" will then be filled until an obstacle is encountered within the obstacle area. In the diagram, after the user clicks on "1", the areas (2,4), (2,2), (2,1), (1,3), (3,3), and (4,3) will be filled, shown as solid squares.

[0073] Figure 6 This is a diagram illustrating the second round of expansion filling. In the diagram, after the first filling is completed, four blank spaces remain. The user needs to find another point to fill these four blank spaces. As can be observed, clicking... Figure 6 The position "2" in the code is filled with the areas (4,3), (4,4), (3,2), and (5,2) to fill all positions. In the actual implementation, filling in a certain direction will only stop when an obstacle is encountered in the up, down, left, or right direction. If it is the expanded filling area when the user clicks on the verification code, it will not block the continued filling. Therefore, the expanded filling area at position "2" with coordinates (4,3) will not block the filling of the space at (4,4).

[0074] Step S40: Verify the user based on the filling results.

[0075] It is understandable that verifying a user based on the filling result could mean that the user passes verification if the area to be filled in the fill-in CAPTCHA is completely filled, and fails verification if the area to be filled in the fill-in CAPTCHA is not completely filled.

[0076] It should be understood that, in order to improve security, in this embodiment, the coordinates of the filled area can also be sent to the server so that the server can verify the coordinates of the filled area.

[0077] In the first embodiment, a fill-in-the-blank CAPTCHA corresponding to the service to be verified is disclosed. The fill-in-the-blank CAPTCHA includes an obstacle area and a region to be filled. The user's operation position based on the fill-in-the-blank CAPTCHA is obtained, and the region to be filled is filled according to the operation position and the obstacle area. The user is verified based on the filling result. Since this embodiment proposes a fill-in-the-blank CAPTCHA and fills the fill-in-the-blank CAPTCHA based on the user's click operation on the fill-in-the-blank CAPTCHA, and verifies the user based on the filling result, the complexity of the CAPTCHA can be increased, preventing the CAPTCHA from being cracked and improving security.

[0078] Reference Figure 7 , Figure 7This is a flowchart illustrating the second embodiment of the verification method based on CAPTCHA of the present invention. Figure 2 The first embodiment shown presents a second embodiment of the verification method based on CAPTCHA of the present invention.

[0079] In the second embodiment, step S10 includes:

[0080] Step S10': Provide a fill-in verification code corresponding to the service to be verified and a reminder of the fill-in steps corresponding to the fill-in verification code.

[0081] It should be understood that displaying only a fill-in-the-blank CAPTCHA would make verification difficult for users. Therefore, to overcome the aforementioned shortcomings, this embodiment can also simultaneously display the fill-in-the-blank CAPTCHA and corresponding prompts for filling it in.

[0082] It should be noted that the fill-in step reminder can be generated simultaneously with the fill-in CAPTCHA generation. For example, the fill-in step reminder can be a limit on the number of operations for the fill-in CAPTCHA, or a limit on the clickable area for the fill-in CAPTCHA; this embodiment does not impose any restrictions on this.

[0083] For ease of understanding, please refer to Figure 8 and Figure 9 This explanation does not limit the scope of this solution. Figure 8 This is an illustration to remind you to limit the number of operations. Figure 9 This is an illustration to illustrate the restricted click area. In the image, the steps to fill in the CAPTCHA are shown above the CAPTCHA.

[0084] Accordingly, step S20 includes:

[0085] Step S20': Obtain the user's operation location based on the fill-in verification code and the fill-in step reminder feedback.

[0086] Understandably, after viewing the CAPTCHA and its corresponding steps, users can click on the CAPTCHA to begin verification. This embodiment retrieves the user's location based on the CAPTCHA and the step-by-step instructions after the user begins verification.

[0087] In the second embodiment, a fill-in-the-blank CAPTCHA corresponding to the business to be verified and a fill-in-the-blank step reminder corresponding to the fill-in-the-blank CAPTCHA are provided, and the user's operation position based on the fill-in-the-blank CAPTCHA and the fill-in-the-blank step reminder is obtained. Since this embodiment displays both the fill-in-the-blank CAPTCHA and the fill-in-the-blank step reminder corresponding to the fill-in-the-blank CAPTCHA, it can avoid the fill-in-the-blank CAPTCHA being too difficult and resulting in a poor user experience.

[0088] In the second embodiment, before step S40, the method further includes:

[0089] Step S310: Obtain the number of operations performed by the user and determine whether the number of operations is less than the limit number of operations corresponding to the filler CAPTCHA.

[0090] It should be understood that, in order to avoid brute-force attacks on the filler CAPTCHA, in this embodiment, before verifying the user, the number of user operations is also obtained, and subsequent steps are executed according to the relationship between the number of operations and the limit number of operations corresponding to the filler CAPTCHA.

[0091] It should be noted that the limit on the number of times a user can click on the fill-in-the-code CAPTCHA is limited. This limit can be preset when generating the CAPTCHA; for example, if the CAPTCHA has two decoding positions, then the limit for the fill-in-the-code CAPTCHA is two times.

[0092] Accordingly, step S40 includes:

[0093] Step S40': If not, verify the user based on the filling result.

[0094] It should be understood that if not, it means the user has used up all their limit attempts. In this case, user verification is required based on the populated results.

[0095] Furthermore, after step S310, the method further includes:

[0096] Step S40": If yes, then display the filled-in CAPTCHA and return to the step of obtaining the user's operation location based on the filled-in CAPTCHA, until the number of operations is greater than or equal to the limit number of operations.

[0097] Understandably, if so, it means the user has not used up all the limit attempts. In this case, it is necessary to display the filled-in CAPTCHA so that the user can continue to click on the filled-in CAPTCHA and obtain the user's operation position based on the filled-in CAPTCHA until the user has used up all the limit attempts.

[0098] In the second embodiment, the number of user operations is obtained, and it is determined whether the number of operations is less than the limit number of times the fill-in CAPTCHA is used. If not, the user is verified based on the fill-in result. Since this embodiment obtains the number of user operations before verifying the user and performs subsequent steps based on the relationship between the number of operations and the limit number of times the fill-in CAPTCHA is used, brute-force cracking of the fill-in CAPTCHA can be avoided.

[0099] Reference Figure 10 , Figure 10 This is a flowchart illustrating the third embodiment of the verification method based on CAPTCHA of the present invention. Figure 2The first embodiment shown presents a third embodiment of the verification method based on CAPTCHA of the present invention.

[0100] In the third embodiment, before step S10, the method further includes:

[0101] Step S01: Select a decoding location in the preset area.

[0102] It should be understood that in order to pre-generate a filled CAPTCHA, this embodiment first selects a decoding position in a preset area, then expands the selection with the decoding position as the center point to obtain the area to be filled, and then sets an obstacle area in the preset area according to the area to be filled to obtain the filled CAPTCHA.

[0103] It should be noted that the preset area can be set in advance, and the preset area can be a grid or a dot matrix. For example, the preset area can be an M×N grid, where the values ​​of M and N can be set in advance.

[0104] For ease of understanding, please refer to Figure 11 This explanation does not limit the scope of this solution. Figure 11 This is a schematic diagram of a preset area. In the diagram, an M×N grid is preset, where M=5 and N=4.

[0105] It should be noted that the decoding location can be the location that needs to be clicked to decrypt a filler CAPTCHA.

[0106] It is understandable that selecting a decoding position in the preset area can be either a random selection within the preset area or the display of a preset dot matrix, with the decoding position selected based on the administrator's selection operation within the preset area.

[0107] For ease of understanding, please refer to Figure 12 This explanation does not limit the scope of this solution. Figure 12 The diagram shows the selection of decoding positions. The grid filled with solid triangles in the diagram represents the decoding positions. In the M×N grid, two positions are randomly selected, and the area corresponding to these positions is taken as the decoding position.

[0108] Furthermore, considering that different types of services have different security requirements, in order to meet the verification requirements of the service to be verified, prior to step S01, the following steps are also included:

[0109] Determine the complexity of the verification code based on the business requirements of the business to be verified.

[0110] Based on the complexity of the CAPTCHA, a preset area corresponding to the service to be verified is generated.

[0111] It should be understood that business requirements can be security requirements of the business to be verified; the higher the security requirements, the more complex the CAPTCHA.

[0112] It is understandable that generating a preset area corresponding to the business to be verified based on the complexity of the CAPTCHA can be done by first determining the size of the preset area based on the complexity of the CAPTCHA, and then constructing the preset area corresponding to the business to be verified based on the size of the preset area.

[0113] In practical implementation, for example, the complexity of the CAPTCHA is first determined based on the business requirements, then the values ​​of M and N are determined based on the complexity of the CAPTCHA, and then an M×N grid is generated.

[0114] Step S02: Expand the selection with the decoding position as the center point to obtain the area to be filled.

[0115] It is understandable that expanding the selection with the decoding position as the center point to obtain the area to be filled can be done by taking the decoding position as the center point and taking the decoding position and the areas adjacent to the decoding position above, below, left and right as the areas to be filled.

[0116] For ease of understanding, please refer to Figure 13 This explanation does not limit the scope of this solution. Figure 13 The diagram shows the selection of the area to be filled. In the diagram, the decoding position is the center point, and the areas adjacent to the decoding position (up, down, left, and right) are the areas to be filled. In the diagram, the grid containing solid triangles and solid squares is the area to be filled.

[0117] Step S03: Set an obstacle area in the preset area according to the area to be filled, and obtain a fillable verification code.

[0118] It should be understood that setting obstacle areas in a preset area based on the area to be filled to obtain a filled CAPTCHA can be done by using other areas in the preset area besides the area to be filled as obstacle areas and setting obstacle images in the obstacle areas to obtain a filled CAPTCHA.

[0119] The third embodiment first selects a decoding position in a preset area, then expands the selection with the decoding position as the center point to obtain a region to be filled, and then sets an obstacle region in the preset area according to the region to be filled to obtain a filled verification code, thereby enabling the pre-generation of a filled verification code.

[0120] Furthermore, this embodiment of the invention also proposes a storage medium storing a verification program based on a verification code, wherein the verification program based on the verification code is executed by a processor to implement the verification method based on the verification code as described above.

[0121] In addition, refer to Figure 14The present invention also proposes a verification device based on a verification code, which includes: a verification code providing module 10, an operation acquisition module 20, an area filling module 30, and a user verification module 40.

[0122] The verification code providing module 10 is used to provide a filled verification code corresponding to the business to be verified. The filled verification code includes an obstacle area and a filling area.

[0123] It should be noted that the fill-in CAPTCHA can be a grid-style CAPTCHA, where both the obstacle area and the area to be filled contain at least one grid.

[0124] For ease of understanding, please refer to Figure 3 This explanation does not limit the scope of this solution. Figure 3 This is a diagram of a grid-style CAPTCHA. In the diagram, grids filled with solid circles represent obstacle areas, while grids without solid circles represent areas to be filled. Users can click on each grid in the CAPTCHA to complete the verification.

[0125] It should be noted that fill-in CAPTCHAs can also be dot matrix CAPTCHAs, where both the obstacle area and the area to be filled contain at least one dot.

[0126] For ease of understanding, please refer to Figure 4 This explanation does not limit the scope of this solution. Figure 4 This is a dot matrix CAPTCHA. In the image, solid dots represent obstacle areas, and hollow dots represent areas to be filled. Users can click on the dots in the CAPTCHA to complete the verification.

[0127] It is understandable that when receiving a verification request from a user based on a service to be verified, a populated CAPTCHA corresponding to that service can be provided. This service to be verified can be human-machine authentication, etc.

[0128] The operation acquisition module 20 is used to acquire the operation location fed back by the user based on the fill-in verification code.

[0129] It should be noted that the operation location can be the location where the user clicks or slides the fill-in CAPTCHA.

[0130] In a practical implementation, for example, after viewing the fill-in-the-blank CAPTCHA, a user can click on the fill-in-the-blank CAPTCHA to start the verification process.

[0131] The area filling module 30 is used to fill the area to be filled according to the operation position and the obstacle area.

[0132] For ease of understanding, please refer to Figure 5 and 6This explanation does not limit the scope of this solution. Figure 5 This is a diagram illustrating the initial expansion fill. In the image, the user first clicks on the location marked "1". The area above, below, to the left, and to the right of "1" will then be filled until an obstacle is encountered within the obstacle area. In the diagram, after the user clicks on "1", the areas (2,4), (2,2), (2,1), (1,3), (3,3), and (4,3) will be filled, shown as solid squares.

[0133] Figure 6 This is a diagram illustrating the second round of expansion filling. In the diagram, after the first filling is completed, four blank spaces remain. The user needs to find another point to fill these four blank spaces. As can be observed, clicking... Figure 6 The position "2" in the code is filled with the areas (4,3), (4,4), (3,2), and (5,2) to fill all positions. In the actual implementation, filling in a certain direction will only stop when an obstacle is encountered in the up, down, left, or right direction. If it is the expanded filling area when the user clicks on the verification code, it will not block the continued filling. Therefore, the expanded filling area at position "2" with coordinates (4,3) will not block the filling of the space at (4,4).

[0134] The user verification module 40 is used to verify the user based on the filling result.

[0135] It is understandable that verifying a user based on the filling result could mean that the user passes verification if the area to be filled in the fill-in CAPTCHA is completely filled, and fails verification if the area to be filled in the fill-in CAPTCHA is not completely filled.

[0136] It should be understood that, in order to improve security, in this embodiment, the coordinates of the filled area can also be sent to the server so that the server can verify the coordinates of the filled area.

[0137] In this embodiment, a fill-in-the-blank CAPTCHA corresponding to the service to be verified is disclosed. The fill-in-the-blank CAPTCHA includes an obstacle area and a region to be filled. The user's operation position based on the fill-in-the-blank CAPTCHA is obtained, and the region to be filled is filled according to the operation position and the obstacle area. The user is verified based on the filling result. Since this embodiment proposes a fill-in-the-blank CAPTCHA and fills the fill-in-the-blank CAPTCHA based on the user's click operation on the fill-in-the-blank CAPTCHA, and verifies the user based on the filling result, the complexity of the CAPTCHA can be increased, preventing the CAPTCHA from being cracked and improving security.

[0138] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or system that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or system. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or system that includes that element.

[0139] The sequence numbers of the above embodiments of the present invention are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.

[0140] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as a read-only memory image (ROM) / random access memory (RAM), magnetic disk, optical disk), and includes several instructions to cause a terminal device (which may be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in the various embodiments of the present invention.

[0141] The above are merely preferred embodiments of the present invention and do not limit the scope of the patent. Any equivalent structural or procedural transformations made based on the description and drawings of the present invention, or direct or indirect applications in other related technical fields, are similarly included within the scope of patent protection of the present invention.

Claims

1. A verification method based on a verification code, characterized in that, The verification method based on the verification code comprises the following steps: A filled verification code corresponding to a service to be verified is provided, wherein the filled verification code comprises an obstacle region and a to-be-filled region; An operation position fed back by a user based on the filled verification code is obtained; The to-be-filled region is filled according to the operation position and the obstacle region; The user is verified according to a filling result; The to-be-filled region is filled according to the operation position and the obstacle region, which comprises: The to-be-filled region above, below, left and right of the operation position is extended and filled until an obstacle in the obstacle region is encountered.

2. The authentication method based on a verification code according to claim 1, characterized in that, Before the step of verifying the user according to the filling result, the following steps are further included: The number of operations of the user is obtained, and it is determined whether the number of operations is less than a limit number corresponding to the filled verification code; Accordingly, the step of verifying the user according to the filling result comprises: If not, the user is verified according to the filling result.

3. The authentication method based on a verification code according to claim 2, characterized in that, After the step of obtaining the number of operations of the user and determining whether the number of operations is less than the limit number corresponding to the filled verification code, the following steps are further included: If yes, the filled filled verification code is displayed, and the step of obtaining the operation position fed back by the user based on the filled verification code is returned until the number of operations is greater than or equal to the limit number.

4. The authentication method based on a verification code according to any one of claims 1 to 3, characterized in that, The step of providing the filled verification code corresponding to the service to be verified comprises: The filled verification code corresponding to the service to be verified and a filling step reminder corresponding to the filled verification code are provided; Accordingly, the step of obtaining the operation position fed back by the user based on the filled verification code comprises: The operation position fed back by the user based on the filled verification code and the filling step reminder is obtained.

5. The authentication method based on a verification code according to any one of claims 1 to 3, characterized in that, The filled verification code is a grid verification code, and the obstacle region and the to-be-filled region each comprise at least one grid; Or, The filled verification code is a dot matrix verification code, and the obstacle region and the to-be-filled region each comprise at least one dot.

6. The authentication method based on a verification code according to any one of claims 1 to 3, characterized in that, Before the step of obtaining the operation position fed back by the user based on the filled verification code, the following steps are further included: A decoding position is selected in a preset region; The to-be-filled region is obtained by extending and selecting the decoding position as a center point; The obstacle region is set in the preset region according to the to-be-filled region, and the filled verification code is obtained.

7. The authentication method based on a verification code according to claim 6, characterized in that, Before the step of selecting the decoding position in the preset region, the following steps are further included: The complexity of the verification code is determined according to the service demand of the service to be verified; The preset region corresponding to the service to be verified is generated based on the complexity of the verification code.

8. An authentication device based on a verification code, characterized by The verification device based on the verification code comprises a memory, a processor and a verification program based on the verification code stored on the memory and executable on the processor, and the verification program based on the verification code is executed by the processor to implement the verification method based on the verification code in any one of claims 1 to 7.

9. A storage medium, characterized by The storage medium stores the verification program based on the verification code, and the verification program based on the verification code is executed by the processor to implement the verification method based on the verification code in any one of claims 1 to 7.

10. An authentication apparatus based on a verification code, characterized by, The verification device based on the verification code comprises a verification code providing module, an operation obtaining module, a region filling module and a user verification module. The verification code providing module is configured to provide a filling type verification code corresponding to a to-be-verified service, wherein the filling type verification code comprises an obstacle region and a to-be-filled region. The operation obtaining module is configured to obtain an operation position fed back by a user based on the filling type verification code, wherein the filling type verification code comprises an obstacle region and a to-be-filled region. The region filling module is configured to fill the to-be-filled region according to the operation position and the obstacle region. The user verification module is configured to verify the user according to a filling result. The region filling module is further configured to perform extended filling on the to-be-filled regions above, below, left and right of the operation position until an obstacle in the obstacle region is encountered.

Citation Information

Patent Citations

  • Verification method and system of verification code, client device and server device

    CN112199658A