A method and apparatus for user authentication

By generating random periodic patterns and calculating the overlap of user-drawn patterns, the problem of existing CAPTCHAs being easily cracked is solved, realizing a user verification method that combines security and simplicity.

CN115422519BActive Publication Date: 2025-11-04MIGU CO LTD +1
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202211107048.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-09-11
Publication Date
2025-11-04
Estimated Expiration
2042-09-11

AI Technical Summary

Technical Problem

Existing CAPTCHA formats are easily cracked by artificial intelligence, leading to a decline in the security of user identity authentication.

Method used

By generating random periodic patterns, the overlap between the simulated pattern drawn by the user and the verification pattern in the simulated verification area is detected. The verification pattern is generated using the number of sampling periods, the number of sampling points, and the generation function, and its feature point data is calculated to determine the overlap, and then verification is performed.

Benefits of technology

It improves the security of CAPTCHAs, making them difficult for machines to crack, and is easy to operate and simple and effective to judge.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115422519B_ABST
    Figure CN115422519B_ABST
Patent Text Reader

Abstract

The application discloses a user verification method and device, a computing device and a computer storage medium, wherein the user verification method comprises the following steps: detecting an access operation of a verification page, and sending a request for loading a verification pattern; receiving the verification pattern, and displaying the verification pattern and a simulated verification area on the verification page; detecting a simulated pattern input by a user in the simulated verification area, and submitting feature point data of the simulated pattern, so as to calculate an overlapping degree of the simulated pattern and the verification pattern according to the feature point data of the simulated pattern and the feature point data of the verification pattern, and obtain a verification result according to the overlapping degree. The verification pattern of the application is novel and simple to operate. The verification pattern of the application is various and difficult to be cracked by a machine, so that the security of the verification can be improved. The verification result can be obtained according to the overlapping degree of the verification pattern and the simulated pattern, and the application has the advantages of simple and effective judgment.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of Internet, in particular to a user verification method and device, a computing device and a computer storage medium. BACKGROUND

[0002] The registration, login, like, forward, haggling and power-up business scenarios on the Internet today all involve user identity authentication, and the user identity authentication link is often a disaster area of network attacks. In order to ensure the security of user identity authentication, various kinds of verification codes have been generated to strengthen user verification.

[0003] The existing verification code forms include inputting alphanumeric, picture jigsaw, sliding unlocking and identifying specified type pictures, etc., but these verification codes can be easily cracked with the rise of artificial intelligence. Therefore, new verification code verification needs to be proposed for security reinforcement. SUMMARY

[0004] In view of the above problems, the present application is proposed in order to provide a user verification method and device, a computing device and a computer storage medium which overcome the above problems or at least partially solve the above problems.

[0005] According to a first aspect of the present application, a user verification method is provided, comprising the following steps:

[0006] Detecting an access operation of a verification page, sending a request to load a verification pattern;

[0007] Receiving the verification pattern, displaying the verification pattern and a simulated verification area on the verification page;

[0008] Detecting a simulated pattern input by a user in the simulated verification area, submitting feature point data of the simulated pattern, so as to calculate an overlap degree of the simulated pattern and the verification pattern according to the feature point data of the simulated pattern and the feature point data of the verification pattern, and obtain a verification result according to the overlap degree.

[0009] Further, the verification pattern is a random periodic pattern with a sampling period number as a first random value, a sampling point number of any period as a second random value, a sampling interval as a third random value and / or a generation function as a random function;

[0010] The feature point data of the verification pattern includes highest point coordinate data and lowest point coordinate data of the verification pattern in each sampling period, and the feature point data of the simulated pattern includes highest point coordinate data and lowest point coordinate data of the simulated pattern in each sampling period.

[0011] Further, the displaying of the verification pattern and the simulated verification area on the verification page is specifically:

[0012] The verification page displays a coordinate axis region, the verification pattern is displayed in a part of the coordinate axis region, and the simulation verification region is arranged in another part of the coordinate axis region.

[0013] According to a second aspect of the present application, a user verification method is provided, comprising the following steps:

[0014] receiving a request for loading a verification pattern;

[0015] generating and returning a verification pattern according to the request;

[0016] obtaining feature point data of a simulation pattern input by a user in a simulation verification region;

[0017] calculating an overlap degree of the simulation pattern and the verification pattern according to the feature point data of the simulation pattern and the feature point data of the verification pattern, and obtaining a verification result according to the overlap degree.

[0018] Further, the generating and returning a verification pattern according to the request further comprises:

[0019] obtaining a random sampling period number, a sampling interval, a sampling point number of any period and / or a generating function according to the request;

[0020] generating a random periodic pattern as the verification pattern according to the random sampling period number, the sampling interval, the sampling point number of any period and / or the generating function;

[0021] After the generating and returning a verification pattern according to the request, the method further comprises:

[0022] obtaining highest point coordinate data and lowest point coordinate data of the verification pattern in each sampling period as the feature point data of the verification pattern.

[0023] Further, the calculating an overlap degree of the simulation pattern and the verification pattern according to the feature point data of the simulation pattern and the feature point data of the verification pattern, and obtaining a verification result according to the overlap degree further comprises:

[0024] calculating the overlap degree of the simulation pattern and the verification pattern according to the highest point coordinate data and the lowest point coordinate data of the verification pattern in each sampling period, the highest point coordinate data and the lowest point coordinate data of the simulation pattern in each sampling period, the sampling period number and a wavelength;

[0025] obtaining a verification result according to a comparison of the overlap degree and a preset overlap degree threshold.

[0026] According to a third aspect of the present application, a user verification device is provided, comprising:

[0027] a sending module configured to detect an access operation of a verification page and send a request for loading a verification pattern;

[0028] a display module configured to receive the verification pattern and display the verification pattern and a simulated verification area on the verification page;

[0029] a submission module configured to detect a simulated pattern input by a user in the simulated verification area, submit feature point data of the simulated pattern, calculate an overlap degree between the simulated pattern and the verification pattern according to the feature point data of the simulated pattern and the feature point data of the verification pattern, and obtain a verification result according to the overlap degree.

[0030] According to a fourth aspect of the present application, a user verification device is provided, comprising:

[0031] a first receiving module configured to receive a request for loading a verification pattern;

[0032] a generating module configured to generate and return the verification pattern according to the request;

[0033] a second receiving module configured to acquire feature point data of a simulated pattern input by a user in a simulated verification area;

[0034] a verification module configured to calculate an overlap degree between the simulated pattern and the verification pattern according to the feature point data of the simulated pattern and the feature point data of the verification pattern, and obtain a verification result according to the overlap degree.

[0035] According to a fifth aspect of the present application, a computing device is provided, comprising a processor, a memory, a communication interface and a communication bus, the processor, the memory and the communication interface being capable of communicating with each other through the communication bus;

[0036] the memory is configured to store at least one executable instruction, and the executable instruction is configured to enable the processor to perform operations corresponding to any of the above-mentioned user verification methods.

[0037] According to a sixth aspect of the present application, a computer storage medium is provided, and the storage medium stores at least one executable instruction, and the executable instruction is configured to enable a processor to perform operations corresponding to any of the above-mentioned user verification methods.

[0038] According to the user verification method of the present application, the following beneficial effects are achieved:

[0039] The verification pattern of the present application is novel and easy to operate; the verification pattern of the present application is various and difficult to be cracked by machines, so that the security of verification can be improved; the checking result can be obtained according to the overlapping degree of the verification pattern and the simulation pattern, and the method has the advantages of simple and effective judgment.

[0040] The above description is only a summary of the technical scheme of the present application, in order to more clearly understand the technical means of the present application, and can be implemented according to the content of the specification, and in order to make the above and other purposes, characteristics and advantages of the present application more obvious and easy to understand, the following specific embodiments of the present application are described. BRIEF DESCRIPTION OF DRAWINGS

[0041] Various other advantages and benefits will become apparent to those of ordinary skill in the art upon reading the following detailed description of the preferred embodiments. The accompanying drawings are included to provide a description of the preferred embodiments and are not intended to limit the scope of the application. Furthermore, the same reference numerals are used throughout the several views that follow.

[0042] Figure 1 A flowchart of a method for user verification of a front end of a client is shown;

[0043] Figure 2 A schematic diagram of a verification page is shown;

[0044] Figure 3 A flowchart of a method for user verification of a back end of a client is shown;

[0045] Figure 4 A structural schematic diagram of a device for user verification of a front end of a client is shown;

[0046] Figure 5 A structural schematic diagram of a device for user verification of a back end of a client is shown;

[0047] Figure 6 A structural schematic diagram of a computing device is shown. DETAILED DESCRIPTION

[0048] Exemplary embodiments of the present application will be described hereinafter with reference to the accompanying drawings. Although exemplary embodiments of the present application are shown in the drawings, it should be understood that the present application can be implemented in various forms and should not be limited by the embodiments set forth herein. Rather, these embodiments are provided so that the present application will be thoroughly and completely understood, and so that the scope of the present application will be completely conveyed to those skilled in the art.

[0049] Figure 1 A flowchart illustrating an embodiment of the present invention provides a user verification method applied to a client-side front-end, which is implemented in a computing device. The computing device includes a processor, a memory, a communication interface, and a communication bus. The processor, the memory, and the communication interface communicate with each other via the communication bus. The memory stores at least one executable instruction, which causes the processor to perform an operation corresponding to the user verification method. Figure 1 As shown, the method includes the following steps:

[0050] Step 110: Detect access to the verification page and send a request to load the verification image;

[0051] Step 120: Receive the verification graphic, and display the verification graphic and the simulated verification area on the verification page;

[0052] Step 130: Detect the simulated graphic input by the user in the simulated verification area, submit the feature point data of the simulated graphic, so that the overlap between the simulated graphic and the verification graphic can be calculated based on the feature point data of the simulated graphic and the feature point data of the verification graphic, and obtain the verification result based on the overlap.

[0053] In this embodiment, when a user opens the verification page on the client, the front end detects the user's access operation to the verification page. When the user's access operation is detected as loading a verification graphic, the front end sends a request to load the verification graphic. The generation of the verification graphic is done on the client's back end. After the client's back end generates the verification graphic, it sends the verification graphic to the front end. After receiving the verification graphic, the front end displays the verification graphic and a simulated verification area on the verification page. The purpose of displaying the simulated verification area is to facilitate the user to draw a simulated graphic in the simulated verification area. When the front end detects that the user has entered a simulated graphic in the simulated verification area, it submits the feature point data of the simulated graphic to the back end, so that the back end can calculate the overlap between the simulated graphic and the verification graphic based on the feature point data of the simulated graphic and the verification graphic, and thus obtain the verification result based on the overlap.

[0054] In one alternative approach, the verification pattern is a random periodic pattern with the number of sampling periods as the first random value, the number of sampling points in any period as the second random value, the sampling interval as the third random value, and / or the generating function as a random function.

[0055] The feature point data of the verification graphic includes the coordinates of the highest and lowest points of the verification graphic in each sampling period, and the feature point data of the simulation graphic includes the coordinates of the highest and lowest points of the simulation graphic in each sampling period.

[0056] In the optional mode, since the user manually draws the simulation figure for verification, considering the uncertainty of manual drawing and the fault tolerance of verification, the embodiment of the application only calculates the coordinate data of the highest point and the lowest point. In actual implementation, other feature points can also be added for verification.

[0057] In an optional mode, the verification figure and the simulation verification area displayed on the verification page are specifically:

[0058] The coordinate axis area is displayed on the verification page, the verification figure is displayed on a part of the coordinate axis area, and the simulation verification area is arranged on another part of the coordinate axis area.

[0059] Figure 2 A schematic diagram of a verification page of an embodiment of the application is shown in FIG. 1. Figure 2 As shown in FIG. 1, the display figure is located in the left region of the coordinate axis area, and the simulation verification area is arranged in the right region of the coordinate axis area. The user can input the simulation figure in the simulation verification area on the right side of the coordinate axis area for verification.

[0060] In the above embodiment, the front end performs verification according to the simulation figure and the verification figure, which has the advantages of novel verification style and simple operation; the verification figure is a random periodic figure with the sampling period number as the first random value, the sampling point number of any period as the second random value, the sampling interval as the third random value, and / or the generation function as the random function, so that the style of the verification figure is various, it is difficult to be cracked in advance by a machine, and the security of verification can be improved.

[0061] Figure 3 A flowchart of a method for user verification of a back end applied to a client is shown in FIG. 2. The method is applied to a computing device. The computing device includes a processor, a memory, a communication interface, and a communication bus, and the processor, the memory, and the communication interface complete communication with each other through the communication bus; the memory is used to store at least one executable instruction, and the executable instruction causes the processor to perform the operation corresponding to the method for user verification. As shown in FIG. 2, the method includes the following steps: Figure 3

[0062] Step 210: receiving a request for loading a verification figure;

[0063] Step 220: generating and returning the verification figure according to the request;

[0064] Step 230: obtaining feature point data of a simulation figure input by a user in a simulation verification area;

[0065] ​Step 240: calculating the overlap degree of the simulation graph and the verification graph according to the feature point data of the simulation graph and the feature point data of the verification graph, and obtaining the verification result according to the overlap degree.

[0066] In this embodiment, when a user opens a verification page on a client, if the front end detects that the user's access operation is an operation of loading a verification graph, the front end sends a request for loading the verification graph. After the back end receives the verification request sent by the front end, the back end generates a verification graph according to the verification request and returns the verification graph to the client front end. After the user draws a simulation graph according to the verification graph on the front end, the back end obtains the feature point data of the simulation graph input by the user, calculates the overlap degree of the simulation graph and the verification graph according to the feature point data of the simulation graph and the feature point data of the verification graph, and obtains the verification result according to the overlap degree.

[0067] In an optional manner, the generating and returning the verification graph according to the request further includes:

[0068] obtaining a random sampling period number, a sampling interval, a sampling point number of any period, and / or a generating function according to the request;

[0069] generating a random periodic graph as the verification graph according to the random sampling period number, the sampling interval, the sampling point number of any period, and / or the generating function;

[0070] After the generating and returning the verification graph according to the request, the method further includes:

[0071] obtaining the highest point coordinate data and the lowest point coordinate data of the verification graph in each sampling period as the feature point data of the verification graph.

[0072] In an optional manner, the calculating the overlap degree of the simulation graph and the verification graph according to the feature point data of the simulation graph and the feature point data of the verification graph, and obtaining the verification result according to the overlap degree further includes:

[0073] calculating the overlap degree of the simulation graph and the verification graph according to the highest point coordinate data and the lowest point coordinate data of the verification graph in each sampling period, the highest point coordinate data and the lowest point coordinate data of the simulation graph in each sampling period, the sampling period number, and the wavelength;

[0074] obtaining the verification result according to the comparison between the overlap degree and a preset overlap degree threshold.

[0075] In the optional mode, the comparison of the overlap degree and the preset overlap degree threshold value obtains a verification result, specifically: if the calculated overlap degree is within the preset overlap degree threshold value range, the verification passes, and if the calculated overlap degree is not within the preset overlap degree threshold value range, the verification fails, and the front end will again issue a request to load the verification pattern for verification again.

[0076] In the above embodiment, the verification is performed according to the overlap degree of the simulation pattern and the verification pattern, which has the advantage of accurate verification; in addition, the overlap degree determination can switch the granularity to improve the verification difficulty and reduce the risk of machine cracking.

[0077] In order to facilitate the understanding of the above-mentioned embodiments of the present application, the following will be described in detail through an embodiment related to a specific application scenario.

[0078] In the process of user browsing the client, when verification is needed, the front end issues a request to load the verification pattern, and after the back end receives the verification request issued by the front end, the verification pattern is generated according to the verification request and returned to the client front end, and the generation process of the verification pattern is as follows:

[0079] The number of sampling periods is set to T_NUM, the number of sampling points in any period is equal and is P_NUM, the range of the sampling sub-interval corresponding to each sampling period can be obtained according to the random sampling interval A and the number of sampling periods T_NUM, and thus the interval set N between adjacent two sampling points in each sampling period can be obtained according to the range of the sampling sub-interval and the number of sampling points in any period.

[0080] The random generation function is set to a sine function, and thus the basic waveform can be generated through Y=sin(2πFN), wherein F is the sampling frequency, and T_NUM times of accumulation of the Y direction coordinate value are performed on the generated basic waveform within the number of sampling periods T_NUM, to obtain a waveform with a period number of T_NUM, which is the verification pattern to be generated.

[0081] After the front end receives the verification pattern, the verification pattern and the simulation verification area are displayed on the verification page, the user draws the simulation pattern in the simulation verification area by taking the verification pattern as a reference after reading the verification pattern on the verification page, and after the front end detects that the user inputs the simulation pattern in the simulation verification area, the feature point data of the simulation pattern is submitted to the back end, and the back end also obtains the feature point data of the verification pattern. Specifically, the feature point data is the highest point coordinate data and the lowest point coordinate data in each sampling period, and the feature point data set of the verification pattern is represented by LOCATION_VALUE, and thus:

[0082]

[0083] Use U_LOCATION_VALUE to represent the feature point data set of the simulation graph, then:

[0084]

[0085] Finally, the backend calculates the overlap of the simulation graph and the verification graph according to the feature point data of the simulation graph and the feature point data of the verification graph, and uses OVERLAP_VAL to represent the overlap of the simulation graph and the verification graph, then the calculation formula of the overlap is:

[0086]

[0087] In the formula, u_x i is the corresponding x coordinate in the feature point data set of the simulation graph, u_y i is the corresponding y coordinate in the feature point data set of the simulation graph, x i is the corresponding x coordinate in the feature point data set of the verification graph, and y i is the corresponding y coordinate in the feature point data set of the verification graph.

[0088] Finally, according to the overlap of the verification graph and the simulation graph, it can be determined whether the overlap is within the preset overlap threshold range to obtain the verification result.

[0089] The user verification method of the embodiment of the application verifies by the overlap of the verification graph and the simulation graph, has the advantages of novel verification style and simple operation; in addition, different verification graphs can be generated according to different functions, so the style of the verification graph is various and difficult to be cracked by a machine; the embodiment of the application can switch the granularity according to the overlap of the verification graph and the simulation graph, improve the verification difficulty, and reduce the risk of machine cracking.

[0090] Figure 4 A structure schematic diagram of a user verification device applied to a front end of a client is shown. Figure 4 As shown in the figure, the device comprises a sending module 310, a display module 320 and a submission module 330, wherein:

[0091] The sending module 310 is used for detecting the access operation of a verification page, and sending a request for loading a verification graph;

[0092] The display module 320 is used for receiving the verification graph, and displaying the verification graph and a simulation verification area on the verification page;

[0093] The submitting module 330 is configured to detect a simulation graph input by a user in the simulation verification area, and submit feature point data of the simulation graph, so as to calculate an overlap degree of the simulation graph and the verification graph according to the feature point data of the simulation graph and the feature point data of the verification graph, and obtain a verification result according to the overlap degree.

[0094] In this embodiment, when a user opens a verification page on a client, a front end detects an access operation of the user on the verification page, and sends a request for loading a verification graph when detecting that the access operation of the user is the operation of loading the verification graph. The verification graph is generated on a back end of the client, and the back end of the client sends the verification graph to the front end after generating the verification graph. The front end displays the verification graph and a simulation verification area on the verification page after receiving the verification graph. The purpose of displaying the simulation verification area is to facilitate the user to draw a simulation graph in the simulation verification area. After the front end detects that the user inputs the simulation graph in the simulation verification area, the front end submits feature point data of the simulation graph to the back end, so that the back end calculates an overlap degree of the simulation graph and the verification graph according to the feature point data of the simulation graph and the feature point data of the verification graph, and obtains a verification result according to the overlap degree.

[0095] In an optional manner, the verification graph received by the displaying module 320 is a random periodic graph with a sampling period number as a first random value, a sampling point number of any period as a second random value, a sampling interval as a third random value, and / or a random function as a generating function.

[0096] The feature point data of the verification graph includes highest point coordinate data and lowest point coordinate data of the verification graph in each sampling period, and the feature point data of the simulation graph submitted by the submitting module 330 includes highest point coordinate data and lowest point coordinate data of the simulation graph in each sampling period.

[0097] In this optional manner, since the user manually draws the simulation graph for verification, considering the uncertainty of manual drawing and the fault tolerance of verification, the embodiment only calculates the coordinate data of the highest point and the lowest point. In actual implementation, other feature points can also be added for verification.

[0098] In an optional manner, the displaying of the verification graph and the simulation verification area on the verification page by the displaying module 320 is specifically as follows.

[0099] The displaying module 320 displays a coordinate axis region on the verification page, the verification graph is displayed on a part of the coordinate axis region by the displaying module 320, and the simulation verification area is set on another part of the coordinate axis region by the displaying module 320.

[0100] In the above embodiment, the front end verifies according to the simulation pattern and the verification pattern, has the advantages of novel verification pattern and simple operation; the verification pattern is a random periodic pattern with a sampling period number as a first random value, a sampling point number of any period as a second random value, a sampling interval as a third random value and / or a generating function as a random function, so the pattern of the verification pattern is various, difficult to be cracked in advance by a machine, and the security of verification can be improved.

[0101] Figure 5 A structure schematic diagram of a device for user verification of a back end applied to a client is shown, as Figure 5 As shown, the device comprises a first receiving module 410, a generating module 420, a second receiving module 430 and a verification module 440, wherein:

[0102] The first receiving module 410 is used for receiving a request for loading a verification pattern.

[0103] The generating module 420 is used for generating and returning a verification pattern according to the request.

[0104] The second receiving module 430 is used for obtaining feature point data of a simulation pattern input by a user in a simulation verification area.

[0105] The verification module 440 is used for calculating an overlap degree of the simulation pattern and the verification pattern according to the feature point data of the simulation pattern and the feature point data of the verification pattern, and obtaining a verification result according to the overlap degree.

[0106] In this embodiment, when a user opens a verification page on a client, the front end detects that the access operation of the user is a loading operation of a verification pattern, the front end sends a request for loading the verification pattern, the back end receives the verification request sent by the front end, generates a verification pattern according to the verification request and returns the verification pattern to the front end of the client, the user draws a simulation pattern according to the verification pattern on the front end, the back end obtains feature point data of the simulation pattern input by the user, calculates an overlap degree of the simulation pattern and the verification pattern according to the feature point data of the simulation pattern and the feature point data of the verification pattern, and obtains a verification result according to the overlap degree.

[0107] In an optional manner, the generating module 420 generating and returning a verification pattern according to the request further comprises:

[0108] The generating module 420 obtains a random sampling period number, a sampling interval, a sampling point number of any period and / or a generating function according to the request.

[0109] The generating module 420 generates a random periodic pattern as the verification pattern according to the random sampling point number of any period, the sampling interval, the sampling period number and / or the generating function.

[0110] After the generation module 420 generates and returns the verification graphic according to the request, the device further includes a third receiving module, which is used to receive the highest point coordinate data and the lowest point coordinate data of the verification graphic in each sampling period, as feature point data of the verification graphic.

[0111] In an optional manner, the verification module 440 calculates the overlap between the simulated graphic and the verification graphic based on the feature point data of the simulated graphic and the feature point data of the verification graphic, and obtains the verification result based on the overlap, further including:

[0112] The verification module 440 calculates the overlap between the simulated graphic and the verification graphic based on the highest and lowest point coordinates of the verification graphic in each sampling period, the highest and lowest point coordinates of the simulated graphic in each sampling period, the number of sampling periods, and the wavelength.

[0113] The verification module 440 obtains the verification result by comparing the overlap with the preset overlap threshold.

[0114] In this optional method, the verification module 440 obtains the verification result by comparing the overlap with the preset overlap threshold. Specifically, if the calculated overlap is within the preset overlap threshold range, the verification module 440 determines that the simulated graphic passes the verification. If the calculated overlap is not within the preset overlap threshold range, the verification module 440 determines that the simulated graphic fails the verification. After the verification fails, the front end will send a request to load the verification graphic again so that the verification can be performed again.

[0115] In the above embodiments, verification is performed based on the overlap between the simulated graphic and the verification graphic, which has the advantage of accurate verification. In addition, the granularity of the overlap determination can be switched, which increases the verification difficulty and reduces the risk of machine cracking.

[0116] This invention provides a non-volatile computer storage medium storing at least one executable instruction that can execute a user verification method in any of the above method embodiments.

[0117] Figure 6 The diagram shows a structural schematic of an embodiment of a computing device according to the present invention. The specific embodiments of the present invention do not limit the specific implementation of the computing device.

[0118] like Figure 6 As shown, the computing device may include: a processor 510, a communications interface 520, a memory 530, and a communications bus 540.

[0119] The processor 510, the communication interface 520, and the memory 530 communicate with each other through the communication bus 540. The communication interface 520 is configured to communicate with network elements such as clients or other servers. The processor 510 is configured to execute the program 550, and particularly configured to execute the steps of the method for user verification of any of the above method embodiments.

[0120] In particular, the program 550 can include program codes containing computer operation instructions.

[0121] The processor 510 can be a central processing unit (CPU), or an application specific integrated circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of the present application. The one or more processors of the apparatus for user verification can be of the same type, such as one or more CPUs, or can be of different types, such as one or more CPUs and one or more ASICs.

[0122] The memory 530 is configured to store the program 550. The memory 530 can include a high-speed RAM memory, and can also include a non-volatile memory such as at least one disk memory.

[0123] The program 550 can be particularly configured to cause the processor 510 to execute the method for user verification of any of the above method embodiments.

[0124] The algorithms and displays presented herein are not inherently related to any particular computer, virtual system, or other apparatus. Various general purpose systems can be used with these teachings, or with modifications that take into account the teachings herein. In accordance with the foregoing description, various aspects of the present application are implemented in hardware and / or software. The present application can be realized using a specially constructed virtual machine, production system, or other apparatus as is readily apparent to one skilled in the art. The present application is not related to any particular programming language. It will be appreciated that a variety of programming languages can be used to implement the present application as described herein, and any references below to specific languages are provided for disclosure of enablement only.

[0125] In the description provided herein, numerous specific details are set forth. However, it is understood that embodiments of the application can be practiced without these specific details. In some instances, well-known methods, structures and techniques have not been described in detail in order not to obscure the understanding of this description.

[0126] Similarly, it is to be understood that the embodiments of the application can be alternately grouped together in a single embodiment, drawing, or description thereof for the purpose of conciseness and to help with the understanding of one or more of the various aspects of the application. However, this method of disclosure is not to be interpreted as reflecting an intention that the claimed application requires more features than the claims do. On the contrary, as the following claims reflect, a separate aspect of the application lies in each separate feature individually. Thus, any claim that depends on another is to be interpreted as alternatively requiring the features of the other claim. In other words, each claim is to be interpreted independently of any other claim.

[0127] Those skilled in the art will appreciate that the modules in the apparatuses of the embodiments can be adapted and placed in one or more apparatuses other than the embodiments. The modules or units or components in the embodiments can be combined into one module or unit or component, and further can be divided into more sub-modules or sub-units or sub-components. Any combination of all the features disclosed in the specification (including the accompanying claims, abstract and drawings), and any method or of the apparatuses so disclosed, can be taken, excepting that at least some of such features and / or processes are mutually exclusive, unless explicitly stated otherwise. Each feature disclosed in the specification (including the accompanying claims, abstract and drawings) can be replaced by alternative features serving the same, equivalent or similar purpose, unless explicitly stated otherwise.

[0128] Furthermore, those skilled in the art will appreciate that the features of the different embodiments can be combined in any combination with one another, as the scope of the present application is not limited by the features of any one embodiment. For example, in the following claims, any of the claims can be read limiting as the other claims by virtue of their term "comprising".

[0129] The various component embodiments of the present application can be implemented in hardware, or as software modules running in one or more processors, or in combinations thereof. Those skilled in the art will appreciate that a microprocessor or digital signal processor (DSP) can be used in practice to implement some or all of the functionality of some or all of the components according to the embodiments of the present application. The present application can also be implemented as a program of instructions for performing part or all of the methods described herein, e.g., a computer program and a computer program product. Such program of instructions of the present application can be stored on a computer readable medium, or can be in the form of one or more signals. Such signals can be downloaded from an Internet website, or provided on a carrier signal, or in any other form.

[0130] It should be noted that the above-mentioned embodiments illustrate rather than limit the application, and that those skilled in the art will be able to design many alternative embodiments without departing from the scope of the appended claims. In the claims, any reference signs placed between parentheses shall not be construed as limiting the claim. The word 'comprising' does not exclude the presence of elements or steps other than those listed in a claim. The word 'a' or 'an' preceding an element does not exclude the presence of a plurality of such elements. The application can be implemented by means of both hardware and software, and any combination thereof. In a unitary claim, several devices, systems or means can be listed, comprising means for carrying out a certain task. The use of the term'means' in a claim is intended to refer to a combination of devices, systems or means for performing a task. The word 'first','second', 'third', etc. do not imply any order. The use of these terms is to be construed as use of the terms 'first','second', 'third', etc. to name the names. The steps of the above-described embodiments, unless otherwise specified, are not to be construed as limiting the order of execution.

Claims

1. A method for user verification, characterized in that, Includes the following steps: Detect access to the verification page and send a request to load the verification image; Receive the verification graphic and display the verification graphic and simulated verification area on the verification page; The system detects the simulated graphic input by the user in the simulated verification area, submits the feature point data of the simulated graphic, and calculates the overlap between the simulated graphic and the verification graphic based on the feature point data of the simulated graphic and the feature point data of the verification graphic, and obtains the verification result based on the overlap. The verification graph is a random periodic graph with the number of sampling periods as the first random value, the number of sampling points in any period as the second random value, the sampling interval as the third random value, and / or the generating function as a random function; the feature point data of the verification graph includes the coordinate data of the highest point and the coordinate data of the lowest point of the verification graph in each sampling period, and the feature point data of the simulation graph includes the coordinate data of the highest point and the coordinate data of the lowest point of the simulation graph in each sampling period.

2. The method according to claim 1, characterized in that, The specific steps for displaying the verification graphic and simulated verification area on the verification page are as follows: The verification page displays a coordinate axis area, the verification graph is displayed in a portion of the coordinate axis area, and the simulated verification area is set in another portion of the coordinate axis area.

3. A method for user verification, characterized in that, Includes the following steps: Receive a request to load the verification image; Generate and return a verification graph based on the request; Acquire feature point data of the simulated graphic input by the user in the simulation verification area; The overlap between the simulated graphic and the verification graphic is calculated based on the feature point data of the simulated graphic and the feature point data of the verification graphic, and the verification result is obtained based on the overlap. The step of generating and returning the verification graph according to the request further includes: According to the request, obtain the random number of sampling periods, sampling interval, number of sampling points in any period, and / or generating function; Based on the random number of sampling periods, sampling interval, number of sampling points in any period, and / or generating function, a random periodic graph is generated as a verification graph. After generating and returning the verification graph according to the request, the method further includes: The highest and lowest point coordinates of the verification graphic within each sampling period are obtained and used as the feature point data of the verification graphic.

4. The method according to claim 3, characterized in that, The step of calculating the overlap between the simulated graphic and the verification graphic based on the feature point data of the simulated graphic and the feature point data of the verification graphic, and obtaining the verification result based on the overlap, further includes: The overlap between the simulated graphic and the verified graphic is calculated based on the coordinates of the highest and lowest points of the verified graphic in each sampling period, the coordinates of the highest and lowest points of the simulated graphic in each sampling period, the number of sampling periods, and the wavelength. The verification result is obtained by comparing the overlap with the preset overlap threshold.

5. A user verification device, characterized in that, include: The sending module is used to detect access operations to the verification page and send a request to load the verification image. The display module is used to receive the verification image and simultaneously display the verification image and the simulated verification area on the verification page. The submission module is used to detect the simulated graphic input by the user in the simulated verification area, submit the feature point data of the simulated graphic, so that the overlap between the simulated graphic and the verification graphic can be calculated based on the feature point data of the simulated graphic and the feature point data of the verification graphic, and the verification result can be obtained based on the overlap. The verification graphic received by the display module is a random periodic graphic with the number of sampling periods as the first random value, the number of sampling points in any period as the second random value, the sampling interval as the third random value, and / or the generating function as a random function. The feature point data of the verification graphic includes the coordinate data of the highest point and the coordinate data of the lowest point of the verification graphic in each sampling period, and the feature point data of the simulation graphic includes the coordinate data of the highest point and the coordinate data of the lowest point of the simulation graphic in each sampling period.

6. A user verification device, characterized in that, include: The first receiving module is used to receive requests to load verification graphics; The generation module is used to generate and return a verification image based on the request; The second receiving module is used to acquire feature point data of the simulated graphic input by the user in the simulated verification area; The verification module is used to calculate the overlap between the simulated graphic and the verification graphic based on the feature point data of the simulated graphic and the feature point data of the verification graphic, and to obtain the verification result based on the overlap. The generation module generates and returns a verification graph based on the request, further including: The generation module obtains a random number of sampling periods, a sampling interval, the number of sampling points in any period, and / or a generation function according to the request; and The generation module generates a random periodic graph as a verification graph based on the number of sampling points, sampling interval, number of sampling periods and / or generation function of any random period. After generating and returning the verification graph according to the request, the device further includes a third receiving module, which is used to: The highest and lowest point coordinates of the verification graphic within each sampling period are obtained and used as the feature point data of the verification graphic.

7. A computing device, comprising: The processor, memory, communication interface, and communication bus are provided, wherein the processor, memory, and communication interface communicate with each other via the communication bus. The memory is used to store at least one executable instruction that causes the processor to perform an operation corresponding to a user verification method as described in any one of claims 1-4.

8. A computer storage medium storing at least one executable instruction that causes a processor to perform an operation corresponding to a user verification method as described in any one of claims 1-4.

Citation Information

Patent Citations

  • Verification method and device based on verification code, electronic equipment and storage medium

    CN109933971A