CN117113323A - Verification method, device, equipment and storage medium - Google Patents

Verification method, device, equipment and storage medium Download PDF

Info

Publication number
CN117113323A
CN117113323A CN202310863008.XA CN202310863008A CN117113323A CN 117113323 A CN117113323 A CN 117113323A CN 202310863008 A CN202310863008 A CN 202310863008A CN 117113323 A CN117113323 A CN 117113323A
Authority
CN
China
Prior art keywords
target track
track
distance
point
current
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
CN202310863008.XA
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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202310863008.XA priority Critical patent/CN117113323A/en
Publication of CN117113323A publication Critical patent/CN117113323A/en
Pending legal-status Critical Current

Links

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
    • 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/45Structures or tools for the administration of authentication

Abstract

The disclosure provides a verification method, a device, equipment and a storage medium, relates to the technical field of computers, and in particular relates to the technical fields of network security, anti-cheating, verification codes and the like. The verification method comprises the following steps: generating a target track and displaying the target track; acquiring a current track drawn by a user based on the target track; acquiring a target track point and a current track point with the same direction based on the time information of the target track point on the target track and the time information of the current track point on the current track; and determining the distance between the target track and the current track based on the target track point and the current track point which are consistent in direction, and acquiring a verification result based on the distance. The method and the device can reduce verification difficulty on the basis of ensuring track verification accuracy.

Description

Verification method, device, equipment and storage medium
Technical Field
The disclosure relates to the technical field of computers, in particular to the technical fields of network security, anti-cheating, verification codes and the like, and particularly relates to a verification method, device, equipment and storage medium.
Background
One type of verification code is a track verification code. The track verification code is used for displaying a background picture and a target track to a user during verification, the user needs to slide along the target track in the background picture through a touch screen or a mouse, the verification code server side can collect track data drawn by the user, whether the track drawn by the user accords with the target track or not is judged, and if so, the user passes the verification.
Because the track verification code is a new verification code, a corresponding track matching scheme is lacking in the related technology.
Disclosure of Invention
The present disclosure provides an authentication method, apparatus, device, and storage medium.
According to an aspect of the present disclosure, there is provided a verification method including: generating a target track and displaying the target track; acquiring a current track drawn by a user based on the target track; acquiring a target track point and a current track point with the same direction based on the time information of the target track point on the target track and the time information of the current track point on the current track; and determining the distance between the target track and the current track based on the target track point and the current track point which are consistent in direction, and acquiring a verification result based on the distance.
According to another aspect of the present disclosure, there is provided an authentication apparatus including: the display module is used for generating a target track and displaying the target track; the first acquisition module is used for acquiring a current track drawn by a user based on the target track; the second acquisition module is used for acquiring a target track point and a current track point with the same direction based on the time information of the target track point on the target track and the time information of the current track point on the current track; and the determining module is used for determining the distance between the target track and the current track based on the target track point and the current track point which are consistent in the direction, and acquiring a verification result based on the distance.
According to another aspect of the present disclosure, there is provided an electronic device including: at least one processor; and a memory communicatively coupled to the at least one processor; wherein the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of any one of the above aspects.
According to another aspect of the present disclosure, there is provided a non-transitory computer readable storage medium storing computer instructions for causing the computer to perform the method according to any one of the above aspects.
According to another aspect of the present disclosure, there is provided a computer program product comprising a computer program which, when executed by a processor, implements a method according to any of the above aspects.
According to the technical scheme, the verification difficulty can be reduced on the basis of ensuring the track verification accuracy.
It should be understood that the description in this section is not intended to identify key or critical features of the embodiments of the disclosure, nor is it intended to be used to limit the scope of the disclosure. Other features of the present disclosure will become apparent from the following specification.
Drawings
The drawings are for a better understanding of the present solution and are not to be construed as limiting the present disclosure. Wherein:
FIG. 1 is a schematic diagram according to a first embodiment of the present disclosure;
FIG. 2 is a schematic diagram of a verification flow of a track verification code provided in accordance with an embodiment of the present disclosure;
fig. 3 is a schematic diagram of an application scenario provided according to an embodiment of the present disclosure;
FIG. 4 is a schematic diagram according to a second embodiment of the present disclosure;
FIG. 5 is a schematic diagram according to a third embodiment of the present disclosure;
fig. 6 is a schematic diagram of an electronic device for implementing the verification method of an embodiment of the present disclosure.
Detailed Description
Exemplary embodiments of the present disclosure are described below in conjunction with the accompanying drawings, which include various details of the embodiments of the present disclosure to facilitate understanding, and should be considered as merely exemplary. Accordingly, one of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the present disclosure. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
Fig. 1 is a schematic diagram of a first embodiment of the present disclosure, which provides a verification method, including:
101. and generating a target track and displaying the target track.
102. And acquiring the current track drawn by the user based on the target track.
103. And acquiring a target track point sequence and a current track point sequence with the same direction based on the time information of the target track point on the target track and the time information of the current track point on the current track.
104. And determining the distance between the target track and the current track based on the target track point sequence and the current track point sequence with the consistent directions, and acquiring a verification result based on the distance.
As shown in fig. 2, for the track verification code, a background picture and a target track 201 may be displayed on the verification interface, then, the user draws a current track 202 based on the target track, and if the current track 202 matches with the target track 201, verification is passed.
Because the track verification code is a new verification code, the problem of how to determine whether the current track and the target track are matched needs to be solved.
In this embodiment, whether the current track and the target track are matched is determined based on the distance between the current track and the target track, for example, if the distance between the current track and the target track is less than or equal to a preset threshold, verification is passed, otherwise verification is not passed.
The target track and the current track are both composed of a series of track points, wherein the track points on the target track are called target track points, and the track points on the current track are called current track points.
In this embodiment, the distance between the current track and the target track may be determined based on the coordinate information of the target track point and the coordinate information of the current track point.
Each track point has corresponding time information, and the direction of the corresponding track can be determined based on the time information of different track points. For example, if the track points of a certain track include a first track point and a second track point, the time information of the first track point is t1, the time information of the second track point is t2, and if t1 is earlier than t2, and the second track point is located below the first track point, the track direction can be considered as the top-to-bottom direction.
As shown in fig. 2, it is assumed that the direction of the target track defaults to a top-to-bottom direction. However, the user may draw the current track from different directions when drawing the current track, for example, the user may draw the current track from top to bottom, or may draw the current track from bottom to top.
Since the user can draw in a top-to-bottom or bottom-to-top direction, the current track and the target track may be in the same direction or in different directions.
In order to improve the operation accuracy and reduce the operation complexity, the target track point and the current track point may be adjusted to be consistent in direction before calculating the distance based on the coordinate information of the target track point and the coordinate information of the current track point. Namely, if the direction of the current track drawn by the user is consistent with that of the target track, calculating the distance between the current track and the target track directly based on the coordinate information of the current track point and the coordinate information of the target track point; or if the direction of the current track drawn by the user is inconsistent with the direction of the target track, the direction of the target track point can be adjusted, and the distance between the current track and the target track is calculated based on the coordinate information of the current track point and the coordinate information of the adjusted target track point.
In this embodiment, the distance between the target track and the current track is determined based on the target track point and the current track point with the same direction, and the verification result is obtained based on the distance. In addition, the distance is determined based on the target track point and the current track point with the same direction, so that the complexity of distance calculation can be reduced. Therefore, the verification difficulty can be reduced on the basis of ensuring the track verification accuracy.
For better understanding of the present disclosure, application scenarios of embodiments of the present disclosure are described.
Fig. 3 is a schematic diagram of an application scenario provided according to an embodiment of the present disclosure. As shown in fig. 3, in the scenario of verification based on a track verification code, the overall system may include: a user terminal 301 and a server 302, the user interacting with the server 302 through the user terminal 301. The user terminal may include: personal computers (Personal Computer, PCs), mobile devices, smart home devices, wearable devices, and the like, wherein the mobile devices include mobile phones, portable computers, tablet computers, and the like, the smart home devices include smart speakers, smart televisions, and the like, and the wearable devices include smart watches, smart glasses, and the like. The server may be a local server or a cloud server. The user terminal interacts with the server based on a communication network, which may comprise a wired and/or a wireless communication network.
When the user needs to verify, for example, when logging in, a login request is sent to a server through a user terminal; after receiving the login request, the server sends a track verification code to the user terminal, wherein the track verification code comprises a background picture and a target track; after the user draws the current track based on the target track and sends a verification request (such as clicking a submit button), the server verifies the current track drawn by the user and the target track generated by the system, if the verification is passed, the user is allowed to log in, otherwise, if the verification is not passed, the user is refused to log in.
The traditional verification mode based on the verification code is that a user inputs characters in the verification code in an input box for verification, but the problems of low cracking difficulty and poor safety exist.
In this embodiment, authentication is performed based on the operation behavior of the user. The verification is specifically performed based on a current track drawn by a user and a target track generated by a system.
The target track may be randomly generated by the system, i.e. the system may randomly generate a curve, which is taken as the target track.
After the system generates and displays the target track, the user can draw the current track based on the target track, and then the system can compare the current track and the target track, and when the current track and the target track are matched, the current track and the target track are verified to pass, otherwise the current track and the target track do not pass.
Whether the current track and the target track are matched or not can be determined based on the distance between the current track and the target track, wherein if the distance between the current track and the target track is smaller than or equal to a preset threshold value, the current track and the target track are matched, namely verification is passed; otherwise, if the distance between the current track and the target track is larger than the preset threshold, the current track and the target track are not matched, namely verification is not passed.
In combination with the application scenario, the present disclosure further provides a verification method.
Fig. 4 is a schematic diagram of a second embodiment of the present disclosure, which provides a verification method, including:
401. randomly generating a target track and displaying the target track.
Wherein, a random curve can be generated based on the random type and the random control point, and the random curve is taken as a target track.
Specifically, the target trajectory may be a bezier curve, and the type of bezier curve may be a first-order bezier curve or a second-order bezier curve.
For the first-order Bezier curve, the control points are three, and P is used 0 、P 1 、P 2 In this case, the first order bezier curve may be expressed as follows, assuming that the target trajectory is n (n is a set value):
B(t)=(1-t) 2 P 0 +2t(1-t)P 1 +t 2 P 2 ,t=1/n,2/n,...(n-1)/n,1
where t is an index of a target track point on the target track, and B (t) represents coordinates of a t-th target track point. The coordinate information of each target track point can be expressed as:
[[x t1 ,y t1 ],[x t2 ,y t2 ],...,[x t(n-1) ,y t(n-1) ],[x tn ,y tn ]],
the x value and the y value of each target track point can be calculated based on the x value and the y value of the control point and the calculation formula; since the control points are randomly generated, the x and y values of the random points are also randomly generated.
For the second-order Bezier curve, the control points are four, and P is used 0 、P 1 、P 2 、P 3 In this case, the expression of the target trajectory of the second-order bezier curve may be as follows, assuming that the target trajectory is n (n is a set value):
B(t)=P 0 (1-t) 3 +3P 1 t(1-t) 2 +3P 2 t 2 (1-t)+P 3 t 3 ,t=1/n,2/n,...,(n-1)/n,1
where t is an index of a target track point on the target track, and B (t) represents coordinates of a t-th target track point. The coordinate information of each target track point can be expressed as:
[[x t1 ,y t1 ],[x t2 ,y t2 ],...,[x t(n-1) ,y t(n-1) ],[x tn ,y tn ]],
the x value and the y value of each target track point can be calculated based on the x value and the y value of the control point and the calculation formula; since the control points are randomly generated, the x and y values of the random points are also randomly generated.
In this embodiment, the target track is generated based on the random type and the random control point, so that the randomness of the target track can be improved, and the security of verification of the verification code can be improved.
402. And acquiring the current track drawn by the user based on the target track.
After displaying the target track, the user may draw the current track based on the target track.
The user may draw the current track in different directions, and the current track and the target track may have the same or different directions assuming that the direction of the target track defaults from top to bottom.
When the information of the current track point on the current track is collected, the coordinate information and the time information of the current track point can be collected. Each current track point can be collected according to a preset period, and if the number of the current track points is m, the coordinate information and the time information of each current track point can be expressed as follows:
[[x u1 ,y u1 ,t u1 ],[x t2 ,y t2 ,t u2 ],...,[x t(m-1) ,y t(m-1) ,t u(m-1) ],[x tm ,y tm ,t um ]]。
403. and judging whether the directions of the current track and the target track are consistent, if so, executing 405, otherwise executing 404.
Wherein, the first target track point and the last target track point can be determined based on the time information of the target track points; determining a first current track point and a last current track point based on the time information of the current track points; determining a first distance between the first current track point and the first target track point, a second distance between the first current track point and the last target track point, a third distance between the last current track point and the first target track point, and a fourth distance between the last current track point and the last target track point; if the first distance is larger than the second distance and the third distance is smaller than the fourth distance, determining that the directions of the current track and the target track are inconsistent, otherwise, determining that the directions of the current track and the target track are consistent.
Specifically, the target track is t as time information, the first target track point is the target track point corresponding to t=1/n, that is, the coordinate information of the first target track point is [ x ] t1 ,y t1 ]Similarly, the coordinate information of the last target track point is [ x ] tn ,y tn ]。
The current track is represented by t u As time information, the first current track point is t u The earliest point in time (t u1 ) The corresponding current track point, i.e. the coordinate information of the first current track point is [ x ] u1 ,y u1 ]Similarly, the coordinate information of the last current track point is [ x ] tm ,y tm ]。
The calculation formula of the first distance D1 is:
the calculation formula of the second distance D2 is:
the calculation formula of the third distance D3 is:
the calculation formula of the fourth distance D4 is:
if the following conditions are satisfied:
d1 is greater than D2, and D3 is less than D4
Then it is determined that the current track and the target track are not in the same direction, and 404 is performed accordingly;
otherwise, the current track and the target track are consistent in direction, and the sequence of the target track points does not need to be adjusted.
404. The order of the target track points is adjusted.
The order of the target track points is that the first target track point after adjustment is used as the last target track point after adjustment, the last target track point before adjustment is used as the first target track point after adjustment, and the rest is similar. Expressed by the formula:
Tr(i)=T(n-(i-1)),i=1,2,...,n
where Tr (i) is the i-th target track point after adjustment, and T (n- (i-1)) is the (n- (i-1)) th target track point before adjustment.
405. And acquiring the target track point and the current track point which are consistent in direction.
If the target track point is adjusted, the adjusted target track point and the current track point are used as target track points and current track points with the same direction; if the target track point is not adjusted, the original target track point and the current track point are used as target track points and current track points with the same direction.
In this embodiment, based on the first distance, the second distance, the third distance, and the fourth distance, whether the target track point is in the order of the target track point can be simply and efficiently determined, and the processing efficiency is improved.
406. And determining the distance between the target track and the current track based on the target track point and the current track point which are consistent in the direction.
Wherein, the distance between the target track and the current track can be determined based on the distance between the target track point and the current track point which correspond to each other.
Specifically, if the number of the target track points is consistent with the number of the current track points, determining the distance between each pair of track points; wherein each pair of track points comprises a target track point and a current track point which have the same direction sequence; and taking the average value of the distances between the track points of each pair as the distance between the target track and the current track.
Expressed by the formula:
where s is the distance between the target track and the current track; the number of the target track points and the current track points is n; i is the direction order index, i.e., [ [ x ] ui ,y ui ],[x ti ,y ti ]]Is the coordinate information of a pair of track points, [ x ] ui ,y ui ]Is the coordinate information of the current track point in the ith pair of track points, [ x ] ti ,y ti ]Is the coordinate information of the target track point in the ith pair of track points.
In this embodiment, the distance between the current track and the target track is determined based on the distance between the corresponding target track point and the current track point, so that the operation complexity can be reduced, and the processing efficiency can be improved.
The distance between the target track and the current track can be determined based on the shortest distance between each target track point and the current track.
Specifically, for each target track point, determining a current track point to be processed based on the direction of the current track point, and determining the shortest distance between each target track point and the current track point to be processed; and taking the average value of the shortest distance corresponding to each target track point as the distance between the target track and the current track.
Expressed by the formula:
where s is the distance between the target track and the current track; the number of target track points is n, i is the direction order index of the target track points, i.e., [ x ] ti ,y ti ]Coordinate information of the ith target track point according to the direction sequence; the number of the current track points is m, j is the direction sequence index of the current track points, namely [ x ] uj ,y uj ]Is the coordinate information of the j-th current track point in the direction order.
In this embodiment, the distance between the current track and the target track is determined based on the shortest distance between each target track point and the current track point, so that the operation accuracy can be improved, and the complexity is controllable.
407. And judging whether the distance is smaller than or equal to a preset threshold value, if so, executing 408, otherwise executing 409.
408. It is determined that the user is authenticated.
409. It is determined that the user is not authenticated.
In this embodiment, the verification result of the user can be simply, conveniently and efficiently obtained by comparing the distance between the target track and the current track with the preset threshold.
Fig. 5 is a schematic diagram of a third embodiment of the present disclosure, which provides a verification apparatus. The apparatus 500 includes: a display module 501, a first acquisition module 502, a second acquisition module 503, and a determination module 504.
The display module 501 is configured to generate a target track and display the target track; the first obtaining module 502 is configured to obtain a current track drawn by a user based on the target track; the second obtaining module 503 is configured to obtain a target track point and a current track point with the same direction based on time information of the target track point on the target track and time information of the current track point on the current track; the determining module 504 is configured to determine a distance between the target track and the current track based on the target track point and the current track point that are consistent in the direction, and obtain a verification result based on the distance.
In this embodiment, the distance between the target track and the current track is determined based on the target track point and the current track point with the same direction, and the verification result is obtained based on the distance. In addition, the distance is determined based on the target track point and the current track point with the same direction, so that the complexity of distance calculation can be reduced. Therefore, the verification difficulty can be reduced on the basis of ensuring the track verification accuracy.
In some embodiments, the second obtaining module 503 is further configured to:
determining a first target track point and a last target track point based on the time information of the target track points;
determining a first current track point and a last current track point based on the time information of the current track points;
determining a first distance between the first current track point and the first target track point, a second distance between the first current track point and the last target track point, a third distance between the last current track point and the first target track point, and a fourth distance between the last current track point and the last target track point;
and if the first distance is greater than the second distance and the third distance is less than the fourth distance, adjusting the sequence of the target track points, and taking the target track points and the current track points after the sequence adjustment as target track points and current track points with consistent directions.
In this embodiment, based on the first distance, the second distance, the third distance, and the fourth distance, whether the target track point is in the order of the target track point can be simply and efficiently determined, and the processing efficiency is improved.
In some embodiments, the determining module 504 is further configured to:
if the number of the target track points is consistent with that of the current track points, determining the distance between each pair of track points; wherein each pair of track points comprises a target track point and a current track point which have the same direction sequence;
and taking the average value of the distances between the track points of each pair as the distance between the target track and the current track.
In this embodiment, the distance between the current track and the target track is determined based on the distance between the corresponding target track point and the current track point, so that the operation complexity can be reduced, and the processing efficiency can be improved.
In some embodiments, the determining module 504 is further configured to:
determining a current track point to be processed based on the direction of the current track point for each target track point, and determining the shortest distance between each target track point and the current track point to be processed;
and taking the average value of the shortest distance corresponding to each target track point as the distance between the target track and the current track.
In this embodiment, the distance between the current track and the target track is determined based on the shortest distance between each target track point and the current track point, so that the operation accuracy can be improved, and the complexity is controllable.
In some embodiments, the display module 501 is further configured to:
and generating a random curve based on the random type and the random control point, and taking the random curve as the target track.
In this embodiment, the target track is generated based on the random type and the random control point, so that the randomness of the target track can be improved, and the security of verification of the verification code can be improved.
In some embodiments, the determining module 504 is further configured to:
and if the distance is smaller than or equal to a preset threshold value, determining that verification is passed.
In this embodiment, the verification result of the user can be simply, conveniently and efficiently obtained by comparing the distance between the target track and the current track with the preset threshold.
It is to be understood that in the embodiments of the disclosure, the same or similar content in different embodiments may be referred to each other.
It can be understood that "first", "second", etc. in the embodiments of the present disclosure are only used for distinguishing, and do not indicate the importance level, the time sequence, etc.
In the technical scheme of the disclosure, the related processes of collecting, storing, using, processing, transmitting, providing, disclosing and the like of the personal information of the user accord with the regulations of related laws and regulations, and the public order colloquial is not violated.
According to embodiments of the present disclosure, the present disclosure also provides an electronic device, a readable storage medium and a computer program product.
Fig. 6 illustrates a schematic block diagram of an example electronic device 600 that may be used to implement embodiments of the present disclosure. Electronic devices are intended to represent various forms of digital computers, such as laptops, desktops, workstations, servers, blade servers, mainframes, and other appropriate computers. The electronic device 600 may also represent various forms of mobile apparatuses, such as personal digital assistants, cellular telephones, smartphones, wearable devices, and other similar computing apparatuses. The components shown herein, their connections and relationships, and their functions, are meant to be exemplary only, and are not meant to limit implementations of the disclosure described and/or claimed herein.
As shown in fig. 6, the electronic device 600 includes a computing unit 601 that can perform various appropriate actions and processes according to a computer program stored in a Read Only Memory (ROM) 602 or a computer program loaded from a storage unit 608 into a Random Access Memory (RAM) 603. In the RAM 603, various programs and data required for the operation of the electronic device 600 can also be stored. The computing unit 601, ROM 602, and RAM 603 are connected to each other by a bus 604. An input/output (I/O) interface 605 is also connected to bus 604.
A number of components in the electronic device 600 are connected to the I/O interface 605, including: an input unit 606 such as a keyboard, mouse, etc.; an output unit 607 such as various types of displays, speakers, and the like; a storage unit 608, such as a magnetic disk, optical disk, or the like; and a communication unit 609 such as a network card, modem, wireless communication transceiver, etc. The communication unit 609 allows the electronic device 600 to exchange information/data with other devices through a computer network, such as the internet, and/or various telecommunication networks.
The computing unit 601 may be a variety of general and/or special purpose processing components having processing and computing capabilities. Some examples of computing unit 601 include, but are not limited to, a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), various specialized Artificial Intelligence (AI) computing chips, various computing units running machine learning model algorithms, a Digital Signal Processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 601 performs the respective methods and processes described above, such as the authentication method. For example, in some embodiments, the verification method may be implemented as a computer software program tangibly embodied on a machine-readable medium, such as storage unit 608. In some embodiments, part or all of the computer program may be loaded and/or installed onto the electronic device 600 via the ROM 602 and/or the communication unit 609. When the computer program is loaded into the RAM 603 and executed by the computing unit 601, one or more steps of the verification method described above may be performed. Alternatively, in other embodiments, the computing unit 601 may be configured to perform the verification method by any other suitable means (e.g., by means of firmware).
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuitry, field Programmable Gate Arrays (FPGAs), application Specific Integrated Circuits (ASICs), application Specific Standard Products (ASSPs), systems-on-chips (SOCs), complex Programmable Logic Devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs, the one or more computer programs may be executed and/or interpreted on a programmable system including at least one programmable processor, which may be a special purpose or general-purpose programmable processor, that may receive data and instructions from, and transmit data and instructions to, a storage system, at least one input device, and at least one output device.
Program code for carrying out methods of the present disclosure may be written in any combination of one or more programming languages. These program code may be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable load balancing apparatus, such that the program code, when executed by the processor or controller, causes the functions/operations specified in the flowchart and/or block diagram to be implemented. The program code may execute entirely on the machine, partly on the machine, as a stand-alone software package, partly on the machine and partly on a remote machine or entirely on the remote machine or server.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. The machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and pointing device (e.g., a mouse or trackball) by which a user can provide input to the computer. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic input, speech input, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a background component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such background, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), wide Area Networks (WANs), and the internet.
The computer system may include a client and a server. The client and server are typically remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The server can be a cloud server, also called a cloud computing server or a cloud host, and is a host product in a cloud computing service system, so that the defects of high management difficulty and weak service expansibility in the traditional physical hosts and VPS service ("Virtual Private Server" or simply "VPS") are overcome. The server may also be a server of a distributed system or a server that incorporates a blockchain.
It should be appreciated that various forms of the flows shown above may be used to reorder, add, or delete steps. For example, the steps recited in the present disclosure may be performed in parallel or sequentially or in a different order, provided that the desired results of the technical solutions of the present disclosure are achieved, and are not limited herein.
The above detailed description should not be taken as limiting the scope of the present disclosure. It will be apparent to those skilled in the art that various modifications, combinations, sub-combinations and alternatives are possible, depending on design requirements and other factors. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present disclosure are intended to be included within the scope of the present disclosure.

Claims (15)

1. A method of authentication, comprising:
generating a target track and displaying the target track;
acquiring a current track drawn by a user based on the target track;
acquiring a target track point and a current track point with the same direction based on the time information of the target track point on the target track and the time information of the current track point on the current track;
and determining the distance between the target track and the current track based on the target track point and the current track point which are consistent in direction, and acquiring a verification result based on the distance.
2. The method of claim 1, wherein the obtaining the target track point and the current track point with the same direction based on the time information of the target track point on the target track and the time information of the current track point on the current track comprises:
determining a first target track point and a last target track point based on the time information of the target track points;
determining a first current track point and a last current track point based on the time information of the current track points;
determining a first distance between the first current track point and the first target track point, a second distance between the first current track point and the last target track point, a third distance between the last current track point and the first target track point, and a fourth distance between the last current track point and the last target track point;
and if the first distance is greater than the second distance and the third distance is less than the fourth distance, adjusting the sequence of the target track points, and taking the target track points and the current track points after the sequence adjustment as target track points and current track points with consistent directions.
3. The method of claim 1, wherein the determining a distance between the target track and the current track based on the target track point and the current track point that are coincident in the direction comprises:
if the number of the target track points is consistent with that of the current track points, determining the distance between each pair of track points; wherein each pair of track points comprises a target track point and a current track point which have the same direction sequence;
and taking the average value of the distances between the track points of each pair as the distance between the target track and the current track.
4. The method of claim 1, wherein the determining a distance between the target track and the current track based on the target track point and the current track point that are coincident in the direction comprises:
determining a current track point to be processed based on the direction of the current track point for each target track point, and determining the shortest distance between each target track point and the current track point to be processed;
and taking the average value of the shortest distance corresponding to each target track point as the distance between the target track and the current track.
5. The method of claim 1, wherein the generating the target trajectory comprises:
and generating a random curve based on the random type and the random control point, and taking the random curve as the target track.
6. The method of claim 1, wherein the obtaining a verification result based on the distance comprises:
and if the distance is smaller than or equal to a preset threshold value, determining that verification is passed.
7. An authentication apparatus comprising:
the display module is used for generating a target track and displaying the target track;
the first acquisition module is used for acquiring a current track drawn by a user based on the target track;
the second acquisition module is used for acquiring a target track point and a current track point with the same direction based on the time information of the target track point on the target track and the time information of the current track point on the current track;
and the determining module is used for determining the distance between the target track and the current track based on the target track point and the current track point which are consistent in the direction, and acquiring a verification result based on the distance.
8. The apparatus of claim 7, wherein the second acquisition module is further to:
determining a first target track point and a last target track point based on the time information of the target track points;
determining a first current track point and a last current track point based on the time information of the current track points;
determining a first distance between the first current track point and the first target track point, a second distance between the first current track point and the last target track point, a third distance between the last current track point and the first target track point, and a fourth distance between the last current track point and the last target track point;
and if the first distance is greater than the second distance and the third distance is less than the fourth distance, adjusting the sequence of the target track points, and taking the target track points and the current track points after the sequence adjustment as target track points and current track points with consistent directions.
9. The apparatus of claim 7, wherein the means for determining is further for:
if the number of the target track points is consistent with that of the current track points, determining the distance between each pair of track points; wherein each pair of track points comprises a target track point and a current track point which have the same direction sequence;
and taking the average value of the distances between the track points of each pair as the distance between the target track and the current track.
10. The apparatus of claim 7, wherein the means for determining is further for:
determining a current track point to be processed based on the direction of the current track point for each target track point, and determining the shortest distance between each target track point and the current track point to be processed;
and taking the average value of the shortest distance corresponding to each target track point as the distance between the target track and the current track.
11. The apparatus of claim 7, wherein the display module is further to:
and generating a random curve based on the random type and the random control point, and taking the random curve as the target track.
12. The apparatus of any of claims 7-11, wherein the determining module is further to:
and if the distance is smaller than or equal to a preset threshold value, determining that verification is passed.
13. An electronic device, comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-6.
14. A non-transitory computer readable storage medium storing computer instructions for causing the computer to perform the method of any one of claims 1-6.
15. A computer program product comprising a computer program which, when executed by a processor, implements the method according to any of claims 1-6.
CN202310863008.XA 2023-07-13 2023-07-13 Verification method, device, equipment and storage medium Pending CN117113323A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310863008.XA CN117113323A (en) 2023-07-13 2023-07-13 Verification method, device, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310863008.XA CN117113323A (en) 2023-07-13 2023-07-13 Verification method, device, equipment and storage medium

Publications (1)

Publication Number Publication Date
CN117113323A true CN117113323A (en) 2023-11-24

Family

ID=88801041

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310863008.XA Pending CN117113323A (en) 2023-07-13 2023-07-13 Verification method, device, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN117113323A (en)

Similar Documents

Publication Publication Date Title
CN105991590B (en) A kind of method, system, client and server for verifying user identity
CN113657289B (en) Training method and device of threshold estimation model and electronic equipment
CN113010896B (en) Method, apparatus, device, medium and program product for determining abnormal object
CN113205041B (en) Structured information extraction method, device, equipment and storage medium
CN114565513A (en) Method and device for generating confrontation image, electronic equipment and storage medium
CN113657397A (en) Training method for circularly generating network model, and method and device for establishing word stock
CN113780098A (en) Character recognition method, character recognition device, electronic equipment and storage medium
CN111178139A (en) Identity authentication method, payment method and payment equipment
CN114120414A (en) Image processing method, image processing apparatus, electronic device, and medium
CN115344753A (en) Federal diagram calculation method, federal diagram calculation configuration method, device and electronic equipment
CN113627361B (en) Training method and device for face recognition model and computer program product
CN114494747A (en) Model training method, image processing method, device, electronic device and medium
CN114157480A (en) Method, device, equipment and storage medium for determining network attack scheme
CN114218931A (en) Information extraction method and device, electronic equipment and readable storage medium
CN115170919B (en) Image processing model training and image processing method, device, equipment and storage medium
CN117113323A (en) Verification method, device, equipment and storage medium
CN113935069A (en) Data verification method, device and equipment based on block chain and storage medium
CN113033373A (en) Method and related device for training face recognition model and recognizing face
CN115131453B (en) Color filling model training, color filling method and device and electronic equipment
CN114115640B (en) Icon determination method, device, equipment and storage medium
CN116738404A (en) Verification method, device, equipment and storage medium
CN117792643A (en) Point pre-stored table generation method, decryption method, device, equipment and medium thereof
CN114972469A (en) Method and device for generating depth map, electronic equipment and readable storage medium
CN116319039A (en) Identity verification method and device in edge computing scene, electronic equipment and medium
CN114036476A (en) User login authentication method, device, equipment, storage medium and product

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