CN111753280A - Verification code verification method and device and electronic equipment - Google Patents

Verification code verification method and device and electronic equipment Download PDF

Info

Publication number
CN111753280A
CN111753280A CN202010609804.7A CN202010609804A CN111753280A CN 111753280 A CN111753280 A CN 111753280A CN 202010609804 A CN202010609804 A CN 202010609804A CN 111753280 A CN111753280 A CN 111753280A
Authority
CN
China
Prior art keywords
verification
matching point
matching
verification code
point pairs
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010609804.7A
Other languages
Chinese (zh)
Inventor
曹汝帅
何宏丽
李琳
周冰
周效军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Mobile Communications Group Co Ltd
MIGU Culture Technology Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
MIGU Culture Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Mobile Communications Group Co Ltd, MIGU Culture Technology Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN202010609804.7A priority Critical patent/CN111753280A/en
Publication of CN111753280A publication Critical patent/CN111753280A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/36User authentication by graphic or iconic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2133Verifying human interaction, e.g., Captcha

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Collating Specific Patterns (AREA)

Abstract

The embodiment of the invention provides a verification code verification method, a verification code verification device and electronic equipment, wherein the method comprises the following steps: sending a verification code generation request to a server, and receiving verification code information generated by the server according to the verification code generation request; displaying a plurality of matching point pairs and verification prompt information according to the verification code information; the verification prompt information is used for prompting a user to connect all the matching points in the multiple matching point pairs; and acquiring a connection result of the user to the matching point, and sending the connection result to the server so that the server verifies the connection result. The verification code verification method, the verification code verification device and the verification code provided by the electronic equipment require a user to realize the connection of the matching point pairs aiming at the matching point pairs, and the connection line of any matching point pair cannot be intersected with the connection lines of other matching point pairs, so that the verification complexity is improved, the machine identification is better avoided, and the network safety is improved.

Description

Verification code verification method and device and electronic equipment
Technical Field
The invention relates to the field of network security, in particular to a verification code verification method and device and electronic equipment.
Background
Authentication codes are a common fully automated program used to distinguish whether a user is a computer or a person. The method is widely applied to the Internet, and can prevent behaviors such as malicious password cracking, ticket swiping, forum water filling and the like realized in a computer mode.
The verification code in the prior art has various expression forms, such as random combination of numbers and letters, specific characters or specific elements contained in pictures, four arithmetic operations for randomly generating two elements, sliding verification code and the like. The verification codes themselves adopt certain anti-computer identification measures, such as distorting and deforming pictures containing information to be identified, and randomly adding straight lines or points on the background of the information to be identified. These measures have a certain effect. However, with the progress of computer technology, the defect of low complexity of the verification code in the prior art is discovered and utilized, more and more verification codes are cracked, and hidden danger is brought to network security.
Disclosure of Invention
The embodiment of the invention provides a verification code verification method, a verification code verification device and electronic equipment, which are used for solving the defects that in the prior art, verification codes are low in complexity and easy to crack.
An embodiment of a first aspect of the present invention provides a verification code verification method, applied to a client, including:
sending a verification code generation request to a server, and receiving verification code information generated by the server according to the verification code generation request; the verification code information comprises a plurality of matching point pairs and verification prompt information; connecting lines connecting all matching points in different matching point pairs are not intersected;
displaying the plurality of matching point pairs and the verification prompt information according to the verification code information; the verification prompt information is used for prompting a user to connect all the matching points in the multiple matching point pairs;
and acquiring a connection result of the user to the matching point, and sending the connection result to the server so that the server verifies the connection result.
In the above technical solution, the verification code information further includes auxiliary verification information, and the auxiliary verification information is at least used for displaying an auxiliary area;
the obtaining of the connection result of the user to the matching point includes:
acquiring coordinates of an auxiliary area through which a connecting line of a user connecting any one matching point in the matching point pair passes;
and acquiring the connection result of the user to the matching points in all the matching point pairs according to the coordinates.
In the above technical solution, the obtaining, according to the coordinates, a connection result of the user to the matching points in all the matching point pairs includes:
when a connecting line of a user connecting any matching point in the matching point pair is an effective connecting line and an auxiliary area through which the connecting line passes is not passed by other effective connecting lines, determining the obtained coordinate as an effective coordinate;
when the obtained coordinates are effective coordinates, obtaining connection results of the user to the matching points in all the matching point pairs according to the coordinates;
the effective connecting line is a connecting line which passes through all the matching points in the same matching point pair, and passes through all the matching points in the same matching point pair only once; and the other effective connecting lines are effective connecting lines which are connected with the matching points in the other matching point pairs except the current matching point pair.
The embodiment of the second aspect of the invention provides a verification code verification method, which is applied to a server and comprises the following steps:
generating verification code information according to the received verification code generation request; the verification code information comprises a plurality of matching point pairs and verification prompt information; connecting lines connecting all matching points in different matching point pairs are not intersected;
sending the verification code information to a client so that the client displays the plurality of matching point pairs and the verification prompt information according to the verification code information; the verification prompt information is used for prompting a user to connect all the matching points in the multiple matching point pairs;
and receiving a connection result of the user to the matching point, returned by the client, and verifying the connection result.
In the above technical solution, the generating the verification code information includes: generating a plurality of matching point pairs; the generating a plurality of matching point pairs specifically includes:
randomly generating a plurality of non-intersected connecting lines in a preset graphic area;
and generating a plurality of matching point pairs according to the end points of the connecting lines.
In the above technical solution, an area ratio of a graphic region where the randomly generated connecting line is located to the preset graphic region is smaller than a preset threshold; any of the randomly generated connecting lines comprises at least one line segment; when the same randomly generated connecting line comprises a plurality of line segments, the line segments are perpendicular to each other, or the line segments are not perpendicular to each other.
In the above technical solution, the verifying the verification result includes:
when the connecting lines connecting the matching points in each matching point pair are all effective connecting lines according to the connecting result, and the auxiliary areas through which the connecting lines connecting the matching points in each matching point pair pass are not passed by other effective connecting lines, the verification is determined to be successful;
the effective connecting line is a connecting line which passes through all the matching points in the same matching point pair, and passes through all the matching points in the same matching point pair only once; and the other effective connecting lines are effective connecting lines which are connected with the matching points in the other matching point pairs except the current matching point pair.
An embodiment of a third aspect of the present invention provides a verification code verification apparatus, applied to a client, including:
the verification code information receiving module is used for sending a verification code generation request to a server and receiving verification code information generated by the server according to the verification code generation request; the verification code information comprises a plurality of matching point pairs and verification prompt information; connecting lines connecting all matching points in different matching point pairs are not intersected;
the display module is used for displaying the plurality of matching point pairs and the verification prompt information according to the verification code information; the verification prompt information is used for prompting a user to connect all the matching points in the multiple matching point pairs;
and the connection result sending module is used for obtaining the connection result of the user to the matching point and sending the connection result to the server so that the server verifies the connection result.
An embodiment of a fourth aspect of the present invention provides an apparatus for verifying a verification code, which is applied to a server, and includes:
the verification code information generation module is used for generating verification code information according to the received verification code generation request; the verification code information comprises a plurality of matching point pairs and verification prompt information; connecting lines connecting all matching points in different matching point pairs are not intersected;
the verification code information sending module is used for sending the verification code information to a client so that the client can display the plurality of matching point pairs and the verification prompt information according to the verification code information; the verification prompt information is used for prompting a user to connect all the matching points in the multiple matching point pairs;
and the verification module is used for receiving the connection result of the user to the matching point returned by the client and verifying the connection result.
An embodiment of a fifth aspect of the present invention provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, where the processor implements the steps of the verification code verification method according to the first aspect of the present invention or implements the steps of the verification code verification method according to the second aspect of the present invention when executing the program.
A sixth aspect embodiment of the present invention provides a non-transitory computer readable storage medium having stored thereon a computer program which, when executed by a processor, implements the steps of the captcha verification method as described in the first aspect embodiment of the present invention, or implements the steps of the captcha verification method as described in the second aspect embodiment of the present invention.
The verification code verification method, the verification code verification device and the verification code provided by the electronic equipment require a user to realize the connection of the matching point pairs aiming at the matching point pairs, and the connection line of any matching point pair cannot be intersected with the connection lines of other matching point pairs, so that the verification complexity is improved, the machine identification is better avoided, and the network safety is improved.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, and it is obvious that the drawings in the following description are some embodiments of the present invention, and those skilled in the art can also obtain other drawings according to the drawings without creative efforts.
Fig. 1 is a flowchart of a verification code verification method applied to a client according to an embodiment of the present invention;
fig. 2 is a flowchart of an authentication code authentication method applied to a server according to an embodiment of the present invention;
fig. 3 is a schematic diagram illustrating a plurality of disjoint connection lines generated in a background diagram in a verification method for a verification code applied to a server according to an embodiment of the present invention;
fig. 4 is a schematic diagram illustrating matching point pairs selected on a plurality of disjoint connecting lines in the verification method for a verification code applied to a server according to an embodiment of the present invention;
FIG. 5 is a diagram illustrating a client in a verification code verification system according to an embodiment of the present invention;
FIG. 6 is a diagram illustrating a server in a verification code verification system according to an embodiment of the present invention;
fig. 7 illustrates a physical structure diagram of an electronic device.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are some, but not all, embodiments of the present invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Fig. 1 is a flowchart of a verification code verification method according to an embodiment of the present invention, and as shown in fig. 1, the verification code verification method according to the embodiment of the present invention is applied to a client, and specifically includes the following steps:
step 101, sending a verification code generation request to a server, and receiving verification code information generated by the server according to the verification code generation request; the verification code information comprises a plurality of matching point pairs and verification prompt information; connecting lines connecting all matching points in different pairs of matching points do not intersect.
In the embodiment of the present invention, the operation of sending the verification code generation request may have a variety of triggering manners. For example, after clicking a button of "acquire the verification code" on the verification interface, the user sends a verification code generation request to the server. For another example, after the client captures that the user inputs other authentication information (such as a user name and a password) except the authentication code on the authentication interface, the client sends an authentication code generation request to the server. In embodiments of the present invention, the latter approach may be employed, which helps to reduce the waiting time for the user.
The verification code information comprises a plurality of matching point pairs and verification prompt information.
The matching point pairs represent two matching points in pairs, the matching points in the same matching point pair have the same characteristics, such as things with the same attribute (such as the same shape, the same color and the same name of an article) or the same character marks (such as the same letter, the same Chinese character and the like), and the characteristics of the matching points in different matching point pairs are different. Such as two matching points that belong to different pairs of matching points, one yellow and one blue. The information of the matching point pair includes the respective coordinate information of the matching points in the matching point pair, and the characteristic information of the matching points in the matching point pair.
Note that, any two points may not form a matching point pair, and the matching point pair needs to satisfy a certain condition, that is: connecting lines connecting all matching points in different pairs of matching points do not intersect. For example, there are a matching point pair a including point a1 and point a2, and a matching point pair B including point B1 and point B2. The connecting line A1a2 between point A1 and point a2 cannot intersect the connecting line B1B2 between point B1 and point B2.
The verification prompt information is used for describing a mode of completing the verification of the user. For example, the user is prompted to connect all of the matching points in the plurality of matching point pairs, and connecting lines in any matching point pair cannot intersect with connecting lines in other matching point pairs.
And 102, displaying the plurality of matching point pairs and the verification prompt information according to the verification code information.
In the previous step, the authentication code information has been described. In this step, after receiving the verification code information sent by the server, the plurality of matching point pairs and the verification prompt information are displayed according to the verification code information.
And when a plurality of matching point pairs are displayed, determining the position of the point to be matched in the area to be displayed according to the coordinate information of the matching points contained in the matching point pairs. The information of the matching point pair further includes characteristic information of the matching point, and characteristics of the matching points need to be displayed when the matching point pair is displayed. For example, if a matching point has a characteristic of blue, then the matching point needs to be displayed as blue when the matching point is displayed. For another example, if a matching point is characterized by the letter a, then when displaying the matching point, the letter a needs to be displayed in the vicinity of the matching point.
When the verification prompt information is displayed, corresponding text content can be displayed around the displayed multiple matching point pairs according to the verification prompt information.
And 103, acquiring a connection result of the user to the matching point, and sending the connection result to the server so that the server verifies the connection result.
According to the verification prompt information, the user needs to connect the matching points in the matching point pairs through sliding operation during verification, and the connecting line in any matching point pair cannot intersect with the connecting lines in other matching point pairs.
The sliding operation performed by the user at the time of authentication is referred to as a sliding event, and one sliding event includes one pressing action, a plurality of moving actions, and one lifting action.
When the user connects the matching points through the client, the client records the connection result through the corresponding data structure, and the connection result comprises: the coordinates and characteristics of the matching points, and the coordinates and characteristics of the points through which the connecting line passes. And sending the connection result recorded by the client to the server, and verifying whether the connection result meets the verification condition by the server so as to obtain the result of whether the verification operation is successful.
The verification code provided by the verification code verification method provided by the embodiment of the invention requires a user to realize the connection of the matching point pairs aiming at a plurality of matching point pairs, and the connection line of any matching point pair cannot be intersected with the connection lines of other matching point pairs, so that the verification complexity is improved, the machine identification is better avoided, and the network security is improved.
Based on any one of the above embodiments, in an embodiment of the present invention, the verification code information further includes auxiliary verification information, where the auxiliary verification information is at least used for displaying an auxiliary area;
the obtaining of the connection result of the user to the matching point includes:
acquiring coordinates of an auxiliary area through which a connecting line of a user connecting any one matching point in the matching point pair passes;
and acquiring the connection result of the user to the matching points in all the matching point pairs according to the coordinates.
The client can be various types of electronic equipment, such as a personal computer, an intelligent mobile terminal and the like. When a user completes verification operations on some electronic devices, the problems of small screen, low sensitivity of clicking devices (such as a mouse) and the like are encountered, and the completion of the verification operations by the user is influenced.
In the embodiment of the present invention, in order to improve the success rate of verification, the verification code information further includes auxiliary verification information, and the auxiliary verification information is at least used for displaying an auxiliary area. The auxiliary area can be a graphic area such as a dot and a rectangle. In the embodiment of the present invention, the auxiliary area is a grid formed by rectangles.
Based on the auxiliary verification information of the auxiliary area, in the step of obtaining the connection result of the user to the matching points, the coordinates of the auxiliary area through which the connection line of the user to the matching points in any one of the matching point pairs passes may be obtained first, and then the connection result of the user to the matching points in all the matching point pairs may be obtained according to the coordinates of the auxiliary area.
The area of the auxiliary area is larger than that of the matching points or other points through which the connecting lines between the matching points pass, so that the requirement on the equipment of the client is reduced, and even if the screen of the electronic equipment is small and the sensitivity of clicking the equipment is not high, a user can still smoothly execute verification operation, and the possibility of successful verification is improved.
The verification code verification method provided by the embodiment of the invention reduces the requirement on the equipment of the client and improves the possibility of successful verification by setting the auxiliary area.
Based on any of the above embodiments, in an embodiment of the present invention, the obtaining, according to the coordinates, a connection result of the user to the matching points in all the matching point pairs includes:
when a connecting line of a user connecting any matching point in the matching point pair is an effective connecting line and an auxiliary area through which the connecting line passes is not passed by other effective connecting lines, determining the obtained coordinate as an effective coordinate;
when the obtained coordinates are effective coordinates, obtaining connection results of the user to the matching points in all the matching point pairs according to the coordinates;
the effective connecting line is a connecting line which passes through all the matching points in the same matching point pair, and passes through all the matching points in the same matching point pair only once; and the other effective connecting lines are effective connecting lines which are connected with the matching points in the other matching point pairs except the current matching point pair.
In the embodiment of the present invention, the generation process of the connection result is further described in conjunction with the related data structure.
Before user verification, a corresponding data structure, such as a doubly linked list, needs to be created for each matching point pair in advance, and is used for recording related data of the matching point pair in a wiring process. For example, if an authentication code includes 4 matching point pairs, 4 doubly linked lists need to be created, and the 4 doubly linked lists respectively record the relevant data of the 4 matching point pairs during connection. It has been mentioned in the foregoing that each matching point pair has a respective characteristic, and the characteristics of different matching point pairs are not the same, so that a doubly linked list can also be considered as the characteristic corresponding to a matching point pair.
According to the verification prompt message, the user firstly clicks one matching point in one matching point pair during verification. This matching point pair is also referred to as the current matching point pair. In the embodiment of the present invention, the operation of clicking the matching point by the user is actually clicking an auxiliary area (such as a grid) where the matching point is located. The characteristic of the auxiliary area where the matching point is located is the characteristic of the matching point, so that the user can obtain the characteristic of the auxiliary area, such as blue, by clicking the auxiliary area where the matching point is located. This property information is stored in a doubly linked list of corresponding pairs of matching points. It should be noted that, if the characteristics of the auxiliary area where the matching point is located are stored in the corresponding doubly linked list, and the doubly linked list is not empty, the doubly linked list is emptied first and then stored.
In actual operation, if a point is mistakenly clicked, if a user fails to accurately click an auxiliary area where a matching point is located, the characteristic of the auxiliary area obtained by clicking the point is null, and a subsequent movement event of the user is not recorded, that is, the current user drag is invalid.
After a user has clicked one of the matching points, the user needs to move the focus to realize the connection within the matching point pair. With the movement of the focus, it is determined whether or not the characteristic of the auxiliary area through which the focus passes is empty.
When the characteristic of the auxiliary area passed by the focus is null, the characteristic is given to the auxiliary area passed by the focus, for example, the characteristic of blue is given, and the coordinates of the auxiliary area given with the characteristic are uniformly recorded in the doubly linked list corresponding to the matching point in the point. It should be noted that, when the user moves the focus, the focus should be moved in the horizontal or vertical direction, that is, the auxiliary area through which the focus passes next must have a parallel or vertical relationship with the auxiliary area in which the focus is located next step (in a specific implementation, since the change of the focus coordinate is very sensitive, it is difficult to ensure that the focus can be moved in the horizontal or vertical direction by manual operation, so the focus is generally mapped to the auxiliary area, the coordinate of the auxiliary area mapped by the focus is changed according to the moving direction of the focus, and it is ensured that the focus is moved only in the horizontal or vertical direction by ensuring that only one axis (x axis or y axis) of the auxiliary area coordinate changes during each movement). If the user moves the focus obliquely, such moving operation will not be accepted, the auxiliary area passed by the focus will not be endowed with characteristics, and the coordinates of the auxiliary area passed by the oblique movement will not be recorded in the corresponding doubly-linked list.
When the characteristic of the auxiliary area through which the focus passes is not empty, it is determined whether the characteristic before the auxiliary area is the same as the characteristic to be given. When the two are different, the auxiliary area is proved to have been experienced by the connecting lines in other matching point pairs before, the bidirectional linked list corresponding to the characteristics before the auxiliary area needs to be emptied, then the auxiliary area is endowed with new characteristics, and the coordinates of the auxiliary area are added into the bidirectional linked list corresponding to the matching points in the points. For example, when a connecting line from a blue matching point passes through the auxiliary area a, it is found that the characteristic of the auxiliary area a already exists and the characteristic is red. This indicates that the connecting line from the red matching point has already passed through the auxiliary area a before, and there is an intersection between the connecting line from the blue matching point and the connecting line from the red matching point. According to the verification requirement, the two connecting lines cannot intersect, so that the doubly linked list corresponding to the red characteristic (namely, the doubly linked list corresponding to the red matching point) needs to be cleared, a new characteristic blue is given to the auxiliary area A, and the coordinate of the auxiliary area A is added to the doubly linked list corresponding to the blue characteristic.
When the characteristic of the auxiliary area passed by the focus is not null, the characteristic of the auxiliary area is the same as the characteristic to be endowed, and the coordinate of the auxiliary area is stored in the corresponding doubly-linked list before, clearing the nodes behind the first node in the corresponding doubly-linked list, wherein the first node is the node in which the coordinate of the auxiliary area passed by the focus is stored before.
The data structure of the doubly linked list is differentiated from one another. When constructing a node in the doubly linked list, the data structure of the node is: forward pointer + data volume + backward pointer. And the nodes behind the first node are nodes obtained by sequentially traversing from the first node according to the backward pointer.
According to the related knowledge in the computer field, the auxiliary area coordinates stored in the doubly linked list adopt a set concept, that is, the auxiliary area coordinates stored in the doubly linked list must be different auxiliary area coordinates, and if the same auxiliary area coordinate is repeatedly stored in the doubly linked list, all the auxiliary area coordinates between two same auxiliary area coordinates are invalid. For example, if starting from one matching point a, in the process of random movement, the user returns to the matching point a again (instead of the other matching point b paired with the matching point a). For this case, although the characteristic of the auxiliary area through which the focus passes (i.e., the auxiliary area where the matching point a is located) is not null, and the characteristic before the auxiliary area is the same as the characteristic to be given, the auxiliary area coordinates recorded in the doubly linked list between two passes of the matching point a are invalid.
When the characteristic of the auxiliary area passed by the focus is not empty, and the characteristic before the auxiliary area is the same as the characteristic to be endowed, and the coordinate of the auxiliary area is not stored in the corresponding doubly-linked list before, the characteristic of the auxiliary area is proved to exist before, the auxiliary area is the auxiliary area where another matching point in the matching point pair is located, therefore, the construction of the connecting line in the matching point pair is completed, and the connecting line is an effective connecting line. Subsequent move operations by the user within the same sliding event will no longer assign characteristics to the experienced secondary region and will also no longer add the coordinates of the secondary region experienced by the subsequent move operations within the corresponding doubly linked list.
In a particular case, when the user completes the lifting action of the sliding event in the process of moving the focus, the auxiliary area corresponding to the focus is not the auxiliary area where the matching point is located, which means that the complete connection action is not completed, and the corresponding doubly linked list needs to be cleared.
With reference to the above description, the connection of all the matching point pairs in the image to be verified can be realized.
And after the user completes the verification operation, all the bidirectional linked lists corresponding to all the matching point pairs are the obtained verification result. The doubly linked list includes the coordinates of the auxiliary area through which the connecting line between the two matching points in the pair passes.
After the authentication result is transmitted to the server, the authentication is completed by the server. How the server completes the verification is further set forth in other embodiments of the invention.
The verification code provided by the verification code verification method provided by the embodiment of the invention requires a user to realize the connection of the matching point pairs aiming at a plurality of matching point pairs, and the connection line of any matching point pair cannot be intersected with the connection lines of other matching point pairs, so that the verification complexity is improved, the machine identification is better avoided, and the network security is improved.
Based on any one of the above embodiments, in an embodiment of the present invention, the sending the verification result to the server includes:
and packaging and encrypting the verification result, and sending the packaged and encrypted verification result to a server.
The data encryption method in the prior art, such as MD5 algorithm, SHA1 algorithm, AES algorithm, etc., can be used for the package encryption of the verification result.
The verification code verification method provided by the embodiment of the invention further ensures the network security by encrypting the verification result.
Based on any of the above embodiments, fig. 2 is a flowchart of a verification code verification method provided in an embodiment of the present invention, and as shown in fig. 2, the verification code verification method provided in an embodiment of the present invention is applied to a server, and specifically includes the following steps:
step 201, generating verification code information and verification code check information according to the received verification code generation request.
The verification code information comprises a plurality of matching point pairs and verification prompt information; connecting lines connecting all matching points in different pairs of matching points do not intersect.
A pair of matching points represents two pairs of matching points, the matching points within the same pair having the same characteristics, such as the same color or the same character designation, and the matching points within different pairs having different characteristics, such as different colors or different character designations. The information of the matching point pair includes the respective coordinate information of the matching points in the matching point pair, and the characteristic information of the matching points in the matching point pair.
In the embodiment of the present invention, the matching point pairs are randomly generated, but the matching point pairs generated randomly need to satisfy non-intersection, that is, a connecting line in any matching point pair cannot intersect with connecting lines in other matching point pairs.
Step 202, sending the verification code information to a client, so that the client displays the plurality of matching point pairs and the verification prompt information according to the verification code information; and the verification prompt information is used for prompting a user to connect all the matching points in the plurality of matching point pairs.
And 203, receiving a connection result of the user to the matching point, which is returned by the client, and verifying the connection result.
The verification code verification method provided by the embodiment of the invention can generate verification code information comprising a plurality of matching point pairs, and the connecting lines in the matching point pairs cannot be intersected with the connecting lines in other matching point pairs, so that the verification complexity is improved, the verification code is better prevented from being identified by a machine, and the network security is improved.
Based on any one of the above embodiments, in an embodiment of the present invention, the generating verification code information includes: generating a plurality of matching point pairs; the generating a plurality of matching point pairs specifically includes:
randomly generating a plurality of non-intersected connecting lines in a preset graphic area;
and generating a plurality of matching point pairs according to the end points of the connecting lines.
The area ratio of the graph area where the randomly generated connecting line is located to the preset graph area is smaller than a preset threshold value; any of the randomly generated connecting lines comprises at least one line segment; when the same randomly generated connecting line comprises a plurality of line segments, the line segments are perpendicular to each other, or the line segments are not perpendicular to each other.
The specific generation process of the plurality of matching point pairs is further described below.
The process of randomly generating a plurality of disjoint connecting lines in the preset graph area is similar to the process of generating one connecting line, so the generation process of one connecting line is described first by taking the generation of one connecting line as an example.
Firstly, randomly selecting an auxiliary area in a preset graphic area as a starting point of a connecting line, and then randomly generating a step value. Wherein the step value reflects the number of auxiliary areas through which the connection line passes.
Then, the moving direction of the next step is preliminarily determined in a random manner.
In the embodiment of the invention, the moving direction of the next step is preliminarily determined by random numbers.
For example, a long sequence S is obtained, which may be randomly generated. In one embodiment, the long sequence S may be generated from a unique identification code of the client, a timestamp of when the passcode was requested, and a hash encoding of an object that the server serves the passcode for the client. As shown in the following equation (1):
S=[UUID+TimeStamp+HashCode]%[8](1)
the UUID is the unique identification code of the client, the TimeStamp is the time stamp when the verification code is requested, and the HashCode is the hash code of the object of the server for providing the verification code service for the client. When these data are added, each bit is calculated modulo 8, for example:
1+5=6;4+3=7;5+4=1;4+4=0;8+9=1。
after each bit is calculated according to the modulo 8, the numerical range of each bit in the long sequence S is between 0 and 7.
After the long sequence S is obtained, M bits are randomly extracted from the long sequence S according to a randomly generated step value (the step value is assumed to be M). For example, if the long sequence S is an 11-bit number and the step size is 8, then the 8-bit number can be randomly truncated from the 11-bit number. The intercepted 8-bit number may be the first 8 bits of the 11-bit number, the last 8 bits of the 11-bit number, the middle 8 bits of the 11-bit number, or even the discontinuous 8-bit number of the 11-bit number.
For any bit N of the M numbers, the remainder can be divided by 4 to obtain the remainder. If the remainder value is 0, the next movement direction is set to be upward movement, if the remainder value is 1, the next movement direction is set to be downward movement, if the remainder value is 2, the next movement direction is set to be leftward movement, and if the remainder value is 3, the next movement direction is set to be rightward movement. As can be seen from the description herein, the calculation is performed modulo-8 when generating the long sequence S, so that the probabilities in the four directions of up, down, left, and right are the same.
Since the number M corresponds to the step value M, the moving direction of the next step can be preliminarily determined based on the number M obtained from the long sequence S.
Then, the final moving direction of the next step is determined based on the preliminarily determined moving direction of the next step in combination with external conditions.
When the preliminarily determined auxiliary area for the direction of the next movement does not satisfy the condition for continuing the movement, the direction needs to be readjusted.
The condition that the movement is not continued may be various conditions, for example, the preliminarily determined auxiliary area in the next movement direction is already occupied by other connecting lines, or the preliminarily determined auxiliary area in the next movement direction does not exist (that is, the current auxiliary area belongs to the edge auxiliary area of the preset graphic area, and the auxiliary area in the next movement direction is outside the edge auxiliary area), and the next movement direction is opposite to the movement direction of the previous step (which is equivalent to performing a rewinding operation), or other conditions that do not affect the movement to be continued, which are described herein.
For example, in one example, the auxiliary area a is moved downward to the auxiliary area B, and the auxiliary area B preliminarily determines that the left movement is required to the auxiliary area C according to a random number when determining the moving direction of the next step. But it is found that the auxiliary area C is already occupied by another connecting line and therefore the direction of movement needs to be adjusted, either to the right to the auxiliary area D, or to the down to the auxiliary area E, or to the up to the auxiliary area a. But since the moving direction of the previous step is from the top to the bottom, it cannot move up to the auxiliary area a. Finally, the auxiliary area B moves to the right or to the auxiliary area D or to the auxiliary area E. The specific moving direction can be determined in the order of up, down, left and right, or can be randomly selected from possible moving directions.
In practical applications, there is a possibility that the four directions, i.e., up, down, left, and right, cannot be moved any further, and at this time, the current process of randomly generating the connecting line is exited even though the preset step value has not been reached. And keeping the current connecting line as long as the number of times of random movement of the current connecting line exceeds 1 time (does not contain 1 time), and otherwise, abandoning the current connecting line.
And finally, moving according to the final moving direction determined in the previous step until the step value is reached, and exiting the random generation process of the current connecting line.
Referring to the above-described one connection line generation process, a plurality of connection lines may be generated. It should be noted that, the more connecting lines are generated in the background diagram, the more difficult the generation of the following connecting lines is due to the limitation that the connecting lines cannot intersect. In order to leave room for the generation of the following connection lines, it is therefore possible, on the one hand, to set a range for the step values of the preceding connection lines when they are generated, for example to generate step values in the integer range of 6-15. On the other hand, after a connecting line is generated each time, the proportion of the auxiliary area occupied by the connecting line in the preset graphic area to all the auxiliary areas in the preset graphic area is judged, and if the proportion is larger than a preset threshold value, the generating process of the connecting line is stopped. For example, if the auxiliary area in the predetermined graphic area has 6 rows and 10 columns, that is, there are 60 auxiliary areas in total, and the number of auxiliary areas currently occupied by the connecting lines (including all the connecting lines generated previously) is 20, then the ratio is 20/60-33.3%. If the preset threshold value is 30%, the proportion value exceeds the preset threshold value, and the subsequent connecting line generation process is stopped.
Fig. 3 is a schematic diagram of generating a plurality of non-intersecting connecting lines in the background diagram, in which the connecting lines 1, 2 and 3 are randomly generated non-intersecting connecting lines.
And selecting matching point pairs from the generated plurality of disjoint connecting lines.
In the previous step, a plurality of disjoint connecting lines have been generated, and two points are selected on one connecting line, the two points forming a matching point pair. Similarly, multiple pairs of matching points may be chosen from multiple disjoint connecting lines. Because the connecting lines are not intersected, the connecting lines between the matching point pairs generated based on the connecting lines are ensured not to be intersected with the connecting lines in other matching point pairs.
It should be noted that, when selecting the matching point from the connection line, it is not required to select two end points of the connection line as the matching point, and the middle point of the connection line may be selected as the matching point. Fig. 4 is a schematic diagram of selecting matching point pairs on a plurality of disjoint connecting lines in the verification method according to the embodiment of the present invention, and as shown in fig. 4, an end point of a connecting line 2 is selected as a matching point, for a connecting line 1, an end point and a middle point are selected as matching points, and for a connecting line 3, an end point and a middle point are also selected as matching points.
Due to the randomness of the selection of the matching points from the connecting lines, the operation of selecting the matching point pairs for multiple times can be realized according to the multiple non-intersecting connecting lines generated at one time, and the matching point pairs selected at each time are different from each other. This helps to save computational resources and shorten the time to generate the verification code.
The verification code verification method provided by the embodiment of the invention can generate verification code information comprising a plurality of matching point pairs, and the connecting lines in the matching point pairs cannot be intersected with the connecting lines in other matching point pairs, so that the verification complexity is improved, the verification code is better prevented from being identified by a machine, and the network security is improved.
Based on any one of the above embodiments, in an embodiment of the present invention, the verifying the verification result includes:
when the connecting lines connecting the matching points in each matching point pair are all effective connecting lines according to the connecting result, and the auxiliary areas through which the connecting lines connecting the matching points in each matching point pair pass are not passed by other effective connecting lines, the verification is determined to be successful;
the effective connecting line is a connecting line which passes through all the matching points in the same matching point pair, and passes through all the matching points in the same matching point pair only once; and the other effective connecting lines are effective connecting lines which are connected with the matching points in the other matching point pairs except the current matching point pair.
In the previous embodiment of the present invention, after the user completes the verification operation, each of the two-way linked lists corresponding to all the matching point pairs is the obtained verification result. The doubly linked list includes the coordinates of the auxiliary area through which the connecting line between the two matching points in the pair passes.
Whether the verification is successful can be judged according to the contents stored in the doubly linked list.
When verifying the verification result, one verification method is that if all the two-way linked lists meet the following conditions, the user verification is successful:
the head and tail of the double linked list respectively correspond to the coordinates of the auxiliary area where the two matching points in the matching point pair are located, and the double linked list is not empty.
This is because if the user is in verification, the connection line in the first matching point pair intersects with the connection line in the second matching point pair, and then the corresponding doubly linked list (which may be the doubly linked list corresponding to the first matching point pair, or the doubly linked list corresponding to the second matching point pair, specifically which doubly linked list is generated first) is emptied; if the user does not complete the connection between the two matching points in the matching point pair during the verification of the user, the head and the tail of the doubly linked list cannot correspond to the coordinates of the auxiliary area where the two matching points in the matching point pair are located. Both of these occurrences result in authentication failures, and thus user authentication is proven to be successful once it is ensured that both of these occurrences do not occur.
When the verification result is verified, another verification mode is as follows: and if and only if the head node and the tail node in all the double linked lists are consistent with the matching points in the corresponding matching point pairs and the path is reproduced according to the coordinates recorded by all the double linked lists, any one auxiliary area is accessed at most once, and the verification is successful. If the head node and the tail node in any two-way linked list are inconsistent with the matching points in the corresponding matching point pair, or if an auxiliary area stored in one two-way linked list is accessed more than once (or more than one characteristic is given), the verification fails, and the two-way linked list directly exits without judging the contents of other two-way linked lists.
After the server generates the verification code message, the server stores information of a plurality of matching point pairs in the verification code message, such as coordinate information, characteristic information and the like, when in verification, the auxiliary area coordinates stored by a first node and a tail node in the two-way linked list are compared with the auxiliary area coordinates of the matching points in the corresponding matching point pair, the verification is continued if the auxiliary area coordinates are consistent, and the verification fails as long as any first node or tail node in any two-way linked list is inconsistent.
When the verification is continued, the verification can be successful only if the auxiliary areas stored in the doubly linked list are accessed at most once according to the auxiliary area coordinate reproduction paths stored in all the doubly linked lists. Verification fails as long as any one secondary area stored in any one doubly linked list is accessed more than once.
The verification code verification method provided by the embodiment of the invention can generate verification code information comprising a plurality of matching point pairs, and the connecting lines in the matching point pairs cannot be intersected with the connecting lines in other matching point pairs, so that the verification complexity is improved, the verification code is better prevented from being identified by a machine, and the network security is improved.
Based on any one of the above embodiments, an embodiment of the present invention further provides a verification code verification system, including: a client and a server; and the client is in communication connection with the server.
Fig. 5 is a schematic diagram of a client in the verification code verification system provided in the embodiment of the present invention, and as shown in fig. 5, the client in the verification code verification system provided in the embodiment of the present invention includes:
the verification code information receiving module 501 is configured to send a verification code generation request to a server, and receive verification code information generated by the server according to the verification code generation request; the verification code information comprises a plurality of matching point pairs and verification prompt information; connecting lines connecting all matching points in different matching point pairs are not intersected;
a display module 502, configured to display the plurality of matching point pairs and the verification prompt information according to the verification code information; the verification prompt information is used for prompting a user to connect all the matching points in the multiple matching point pairs;
a connection result sending module 503, configured to obtain a connection result of the user to the matching point, and send the connection result to the server, so that the server verifies the connection result.
The client in the verification code verification system provided by the embodiment of the invention requires a user to realize the connection of the matching point pairs aiming at the matching point pairs, and the connection of any matching point pair cannot be intersected with the connection of other matching point pairs, so that the verification complexity is improved, the verification code is better prevented from being identified by a machine, and the network security is improved.
Fig. 6 is a schematic diagram of a server in an authentication code authentication system according to an embodiment of the present invention, and as shown in fig. 6, the server in the authentication code authentication system according to the embodiment of the present invention includes:
the verification code information generating module 601 is configured to generate verification code information according to the received verification code generation request; the verification code information comprises a plurality of matching point pairs and verification prompt information; connecting lines connecting all matching points in different matching point pairs are not intersected;
a verification code information sending module 602, configured to send the verification code information to a client, so that the client displays the plurality of matching point pairs and the verification prompt information according to the verification code information; the verification prompt information is used for prompting a user to connect all the matching points in the multiple matching point pairs;
the verification module 603 is configured to receive a connection result of the user to the matching point, where the connection result is returned by the client, and verify the connection result.
The server in the verification code verification system provided by the embodiment of the invention can generate verification code information comprising a plurality of matching point pairs, and the connecting lines in the matching point pairs cannot be intersected with the connecting lines in other matching point pairs, so that the verification complexity is improved, the verification code is better prevented from being identified by a machine, and the network security is improved.
Fig. 7 illustrates a physical structure diagram of an electronic device, and as shown in fig. 7, the electronic device may include: a processor (processor)710, a communication Interface (Communications Interface)720, a memory (memory)730, and a communication bus 740, wherein the processor 710, the communication Interface 720, and the memory 730 communicate with each other via the communication bus 740. Processor 710 may call logic instructions in memory 730 to perform the following method: sending a verification code generation request to a server, and receiving verification code information generated by the server according to the verification code generation request; the verification code information comprises a plurality of matching point pairs and verification prompt information; connecting lines connecting all matching points in different matching point pairs are not intersected; displaying the plurality of matching point pairs and the verification prompt information according to the verification code information; the verification prompt information is used for prompting a user to connect all the matching points in the multiple matching point pairs; and acquiring a connection result of the user to the matching point, and sending the connection result to the server so that the server verifies the connection result. Or performing the following method: generating verification code information according to the received verification code generation request; the verification code information comprises a plurality of matching point pairs and verification prompt information; connecting lines connecting all matching points in different matching point pairs are not intersected; sending the verification code information to a client so that the client displays the plurality of matching point pairs and the verification prompt information according to the verification code information; the verification prompt information is used for prompting a user to connect all the matching points in the multiple matching point pairs; and receiving a connection result of the user to the matching point, returned by the client, and verifying the connection result.
It should be noted that, when being implemented specifically, the electronic device in this embodiment may be a server, a PC, or other devices, as long as the structure includes the processor 710, the communication interface 720, the memory 730, and the communication bus 740 shown in fig. 7, where the processor 710, the communication interface 720, and the memory 730 complete mutual communication through the communication bus 740, and the processor 710 may call the logic instructions in the memory 730 to execute the above method. The embodiment does not limit the specific implementation form of the electronic device.
In addition, the logic instructions in the memory 730 can be implemented in the form of software functional units and stored in a computer readable storage medium when the software functional units are sold or used as independent products. Based on such understanding, the technical solution of the present invention may be embodied in the form of a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and other various media capable of storing program codes.
Further, embodiments of the present invention disclose a computer program product comprising a computer program stored on a non-transitory computer-readable storage medium, the computer program comprising program instructions, which when executed by a computer, the computer is capable of performing the methods provided by the above-mentioned method embodiments, for example, comprising: sending a verification code generation request to a server, and receiving verification code information generated by the server according to the verification code generation request; the verification code information comprises a plurality of matching point pairs and verification prompt information; connecting lines connecting all matching points in different matching point pairs are not intersected; displaying the plurality of matching point pairs and the verification prompt information according to the verification code information; the verification prompt information is used for prompting a user to connect all the matching points in the multiple matching point pairs; and acquiring a connection result of the user to the matching point, and sending the connection result to the server so that the server verifies the connection result. Or for example, include: generating verification code information according to the received verification code generation request; the verification code information comprises a plurality of matching point pairs and verification prompt information; connecting lines connecting all matching points in different matching point pairs are not intersected; sending the verification code information to a client so that the client displays the plurality of matching point pairs and the verification prompt information according to the verification code information; the verification prompt information is used for prompting a user to connect all the matching points in the multiple matching point pairs; and receiving a connection result of the user to the matching point, returned by the client, and verifying the connection result.
In another aspect, an embodiment of the present invention further provides a non-transitory computer-readable storage medium, on which a computer program is stored, where the computer program is implemented by a processor to perform the method provided by the foregoing embodiments, for example, including: sending a verification code generation request to a server, and receiving verification code information generated by the server according to the verification code generation request; the verification code information comprises a plurality of matching point pairs and verification prompt information; connecting lines connecting all matching points in different matching point pairs are not intersected; displaying the plurality of matching point pairs and the verification prompt information according to the verification code information; the verification prompt information is used for prompting a user to connect all the matching points in the multiple matching point pairs; and acquiring a connection result of the user to the matching point, and sending the connection result to the server so that the server verifies the connection result. Or for example, include: generating verification code information according to the received verification code generation request; the verification code information comprises a plurality of matching point pairs and verification prompt information; connecting lines connecting all matching points in different matching point pairs are not intersected; sending the verification code information to a client so that the client displays the plurality of matching point pairs and the verification prompt information according to the verification code information; the verification prompt information is used for prompting a user to connect all the matching points in the multiple matching point pairs; and receiving a connection result of the user to the matching point, returned by the client, and verifying the connection result.
The above-described embodiments of the apparatus are merely illustrative, and the units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the present embodiment. One of ordinary skill in the art can understand and implement it without inventive effort.
Through the above description of the embodiments, those skilled in the art will clearly understand that each embodiment can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware. With this understanding in mind, the above-described technical solutions may be embodied in the form of a software product, which can be stored in a computer-readable storage medium such as ROM/RAM, magnetic disk, optical disk, etc., and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the methods described in the embodiments or some parts of the embodiments.
Finally, it should be noted that: the above examples are only intended to illustrate the technical solution of the present invention, but not to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions of the embodiments of the present invention.

Claims (10)

1. A verification code verification method is applied to a client and comprises the following steps:
sending a verification code generation request to a server, and receiving verification code information generated by the server according to the verification code generation request; the verification code information comprises a plurality of matching point pairs and verification prompt information; connecting lines connecting all matching points in different matching point pairs are not intersected;
displaying the plurality of matching point pairs and the verification prompt information according to the verification code information; the verification prompt information is used for prompting a user to connect all the matching points in the multiple matching point pairs;
and acquiring a connection result of the user to the matching point, and sending the connection result to the server so that the server verifies the connection result.
2. The captcha verification method of claim 1, wherein the captcha information further comprises auxiliary verification information, the auxiliary verification information being used at least for displaying an auxiliary area;
the obtaining of the connection result of the user to the matching point includes:
acquiring coordinates of an auxiliary area through which a connecting line of a user connecting any one matching point in the matching point pair passes;
and acquiring the connection result of the user to the matching points in all the matching point pairs according to the coordinates.
3. The verification code verification method according to claim 2, wherein the obtaining a connection result of the user to the matching points in all the matching point pairs according to the coordinates comprises:
when a connecting line of a user connecting any matching point in the matching point pair is an effective connecting line and an auxiliary area through which the connecting line passes is not passed by other effective connecting lines, determining the obtained coordinate as an effective coordinate;
when the obtained coordinates are effective coordinates, obtaining connection results of the user to the matching points in all the matching point pairs according to the coordinates;
the effective connecting line is a connecting line which passes through all the matching points in the same matching point pair, and passes through all the matching points in the same matching point pair only once; and the other effective connecting lines are effective connecting lines which are connected with the matching points in the other matching point pairs except the current matching point pair.
4. A verification code verification method is applied to a server and comprises the following steps:
generating verification code information according to the received verification code generation request; the verification code information comprises a plurality of matching point pairs and verification prompt information; connecting lines connecting all matching points in different matching point pairs are not intersected;
sending the verification code information to a client so that the client displays the plurality of matching point pairs and the verification prompt information according to the verification code information; the verification prompt information is used for prompting a user to connect all the matching points in the multiple matching point pairs;
and receiving a connection result of the user to the matching point, returned by the client, and verifying the connection result.
5. The captcha verification method of claim 4, wherein the generating captcha information comprises: generating a plurality of matching point pairs; the generating a plurality of matching point pairs specifically includes:
randomly generating a plurality of non-intersected connecting lines in a preset graphic area;
and generating a plurality of matching point pairs according to the end points of the connecting lines.
6. The verification code verification method according to claim 5, wherein the area ratio of the graphic region in which the randomly generated connecting line is located to the preset graphic region is smaller than a preset threshold; any of the randomly generated connecting lines comprises at least one line segment; when the same randomly generated connecting line comprises a plurality of line segments, the line segments are perpendicular to each other, or the line segments are not perpendicular to each other.
7. The verification code verification method according to claim 4, wherein the verifying the verification result comprises:
when the connecting lines connecting the matching points in each matching point pair are all effective connecting lines according to the connecting result, and the auxiliary areas through which the connecting lines connecting the matching points in each matching point pair pass are not passed by other effective connecting lines, the verification is determined to be successful;
the effective connecting line is a connecting line which passes through all the matching points in the same matching point pair, and passes through all the matching points in the same matching point pair only once; and the other effective connecting lines are effective connecting lines which are connected with the matching points in the other matching point pairs except the current matching point pair.
8. An authentication code authentication device, applied to a client, includes:
the verification code information receiving module is used for sending a verification code generation request to a server and receiving verification code information generated by the server according to the verification code generation request; the verification code information comprises a plurality of matching point pairs and verification prompt information; connecting lines connecting all matching points in different matching point pairs are not intersected;
the display module is used for displaying the plurality of matching point pairs and the verification prompt information according to the verification code information; the verification prompt information is used for prompting a user to connect all the matching points in the multiple matching point pairs;
and the connection result sending module is used for obtaining the connection result of the user to the matching point and sending the connection result to the server so that the server verifies the connection result.
9. An authentication code authentication device, applied to a server, includes:
the verification code information generation module is used for generating verification code information according to the received verification code generation request; the verification code information comprises a plurality of matching point pairs and verification prompt information; connecting lines connecting all matching points in different matching point pairs are not intersected;
the verification code information sending module is used for sending the verification code information to a client so that the client can display the plurality of matching point pairs and the verification prompt information according to the verification code information; the verification prompt information is used for prompting a user to connect all the matching points in the multiple matching point pairs;
and the verification module is used for receiving the connection result of the user to the matching point returned by the client and verifying the connection result.
10. An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the processor implements the steps of the captcha verification method according to one of claims 1 to 3 or the steps of the captcha verification method according to one of claims 4 to 7 when executing the program.
CN202010609804.7A 2020-06-29 2020-06-29 Verification code verification method and device and electronic equipment Pending CN111753280A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010609804.7A CN111753280A (en) 2020-06-29 2020-06-29 Verification code verification method and device and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010609804.7A CN111753280A (en) 2020-06-29 2020-06-29 Verification code verification method and device and electronic equipment

Publications (1)

Publication Number Publication Date
CN111753280A true CN111753280A (en) 2020-10-09

Family

ID=72678239

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010609804.7A Pending CN111753280A (en) 2020-06-29 2020-06-29 Verification code verification method and device and electronic equipment

Country Status (1)

Country Link
CN (1) CN111753280A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112257052A (en) * 2020-10-22 2021-01-22 上海悦易网络信息技术有限公司 Verification method and device based on picture
CN114465724A (en) * 2022-02-24 2022-05-10 深圳软牛科技有限公司 Verification code generation and verification method, client, server and system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004112531A (en) * 2002-09-19 2004-04-08 Ntt Docomo Inc Authentication system, authentication method, and authentication server and communication terminal
CN105260647A (en) * 2015-09-17 2016-01-20 Tcl移动通信科技(宁波)有限公司 Method and system for unlocking screen of mobile terminal
CN106250753A (en) * 2016-07-14 2016-12-21 广东小天才科技有限公司 The screen-unblocking control method of a kind of user terminal and user terminal
US20170323093A1 (en) * 2016-05-05 2017-11-09 Baidu Online Network Technology (Beijing) Co., Ltd. Verification method and apparatus for distinguishing man from machine

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004112531A (en) * 2002-09-19 2004-04-08 Ntt Docomo Inc Authentication system, authentication method, and authentication server and communication terminal
CN105260647A (en) * 2015-09-17 2016-01-20 Tcl移动通信科技(宁波)有限公司 Method and system for unlocking screen of mobile terminal
US20170323093A1 (en) * 2016-05-05 2017-11-09 Baidu Online Network Technology (Beijing) Co., Ltd. Verification method and apparatus for distinguishing man from machine
CN106250753A (en) * 2016-07-14 2016-12-21 广东小天才科技有限公司 The screen-unblocking control method of a kind of user terminal and user terminal

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张艳,彭华熹,何申: "基于行为的安全验证码生成及验证方案研究", 信息安全研究, pages 3 - 4 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112257052A (en) * 2020-10-22 2021-01-22 上海悦易网络信息技术有限公司 Verification method and device based on picture
CN114465724A (en) * 2022-02-24 2022-05-10 深圳软牛科技有限公司 Verification code generation and verification method, client, server and system
CN114465724B (en) * 2022-02-24 2023-11-03 深圳软牛科技有限公司 Verification code generation and verification method, client, server and system

Similar Documents

Publication Publication Date Title
US9450969B2 (en) System and method for key challenge validation
US20220284085A1 (en) Verification method and device
US20180253542A1 (en) Variation Analysis-Based Public Turing Test to Tell Computers and Humans Apart
CN108229956A (en) Network bank business method, apparatus, system and mobile terminal
US20140173713A1 (en) Verification Code Generation and Verification Method and Apparatus
EP2569727B1 (en) Overlay human interactive proof system and techniques
CN107872438B (en) Verification method, device and terminal
CN111753280A (en) Verification code verification method and device and electronic equipment
CN103793659A (en) Method and system for setting password and method and system for verifying password
WO2018072403A1 (en) Password reset method, apparatus, terminal device and server, and computer-readable medium
CN111143812B (en) Login authentication method based on graphics
CN115225362A (en) Verification method, device, equipment and storage medium of man-machine behavior
CN108182355B (en) Login verification method, server and computer readable storage medium
CN107613496B (en) Queuing method, system and authentication server
US11888841B2 (en) Multi-factor authentication using symbols
CN108959901B (en) Verification code prompting method based on picture carousel
CN103812822A (en) Method and system for safety certificate
US20140101742A1 (en) Method, Client and Server of Password Verification, and Password Terminal System
CN106936840B (en) Information prompting method and device
KR101331172B1 (en) Method for identifying a user and apparatus therefor
CN112948799B (en) Verification method of graphic verification code and related device thereof
CN104717064A (en) Password peep-prevention method and user terminal
KR101659809B1 (en) Apparatus for input password for user authentication and method for thereof and system for thereof
CN117473560B (en) Method and device for realizing work of online OTP (one time programmable) equipment
CN114465724B (en) Verification code generation and verification method, client, server and system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination