Verification method, electronic device, computer-readable storage medium and program product

CN123031231APending Publication Date: 2026-11-03MIGU CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611096956.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-07-22
Publication Date
2026-11-03

AI Technical Summary

Technical Problem

[0004]然而,目前的验证方法,均容易被机器识别,其验证过程不够安全

Benefits of technology

处理器,用于执行存储器中存储的计算机可执行指令或者计算机程序时,实现本申请实施例提供的验证方法。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN123031231A_ABST
    Figure CN123031231A_ABST
Patent Text Reader

Abstract

The application provides a verification method, an electronic device, a computer readable storage medium and a program product; the method comprises the following steps: sending a first request to a server; the server generates verification information of a client based on the first request and sends the verification information to the client; the verification information comprises verification area information, prompt word information and movable object information; a verification area is displayed according to the verification area information fed back by the server, wherein the verification area is provided with a verification control; in response to a verification start operation triggered for the verification control, a prompt word is displayed in the verification area according to the prompt word information, and a movable object set is displayed in the verification area according to the movable object information, wherein a plurality of movable objects in the movable object set are in a moving state, and the movable object set at least comprises a target verification object; the prompt word is used to prompt a user to trigger a verification end operation of the verification control after the position of the target verification object meets a preset position condition; in response to the verification end operation triggered for the verification control, a second request is submitted to the server; the server verifies whether the position of the target verification object meets the preset position condition based on the second request and sends a verification result to the client. The method improves the security of the verification process.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to verification technology, and more particularly to a verification method, electronic device, computer-readable storage medium, and program product. Background Technology

[0002] In various scenarios such as registration, login, and balance inquiry, to enhance security, verification codes are typically used to determine whether the action was triggered by a bot or a real user. Only after the verification code is passed and it is confirmed that the action was triggered by a real user can subsequent interactions proceed.

[0003] Currently, to prevent bots from cracking the code, most CAPTCHAs use image-based CAPTCHAs, such as: 1. Simple image CAPTCHAs, which generally consist of 4 to 6 digits or letters. Users need to re-enter the CAPTCHA in the verification area according to the given information; 2. Slide puzzle verification: Users drag a part of the image to the designated gap to complete the puzzle; 3. Click image verification: Users click on the images in sequence according to the prompts to complete the verification.

[0004] However, current verification methods are easily recognized by machines, and their verification process is not secure enough. Summary of the Invention

[0005] This application provides a verification method, electronic device, computer-readable storage medium, and computer program product, which improves the security of the verification process.

[0006] This application provides a verification method applied to a client, the method including: The server sends a first request; the server generates verification information for the client based on the first request and sends the verification information to the client; the verification information includes verification area information, prompt word information, and movable object information; The verification area is displayed based on the verification area information returned by the server, and verification controls are set within the verification area. In response to a verification start operation triggered by a verification control, a prompt word is displayed in the verification area based on the prompt word information, and a set of movable objects is displayed in the verification area based on the movable object information. Multiple movable objects in the set of movable objects are in a moving state, and the set of movable objects includes at least the target verification object. The prompt word is used to prompt the user to trigger the verification end operation of the verification control after the position of the target verification object meets the preset position conditions. In response to the verification end operation triggered by the verification control, a second request is submitted to the server; the server verifies whether the position of the target verification object meets the preset position conditions based on the second request, and sends the verification result to the client.

[0007] In the above scheme, sending a first request to the server includes: In response to a trigger operation on the verification interface, obtain the distance information between the user and the terminal corresponding to the client, as well as the environmental information and user operation information corresponding to the client; Based on distance information, environmental information, user operation information, and the preset interface color and preset interface size of the verification interface, a first request is generated. A first request is sent to the server; the server generates verification area information based on the preset interface size in the first request, generates movable object information based on the preset interface color, distance information, pre-stored age identifier, environmental information and operation information, and generates prompt word information based on the preset interface color, distance information and pre-stored age identifier.

[0008] In the above scheme, the movable object information includes target verification object information; based on the movable object information, a set of movable objects is displayed within the verification area, including: The target verification object is displayed within the verification area based on the target verification object information; the size of the target verification object is determined by the server based on pre-stored age identifiers and distance information; the color of the target verification object is determined by the server based on preset interface colors.

[0009] In the above scheme, the set of movable objects also includes a set of interfering objects; the movable object information also includes information about the set of interfering objects; displaying the set of movable objects within the verification area based on the movable object information includes: The set of interfering objects is displayed in the verification area based on the information of the set of interfering objects. The number of interfering objects in the set, the movement trajectory of each interfering object, and the similarity between each interfering object and the target verification object are all determined by the server based on environmental information and user operation information.

[0010] In the above scheme, the verification information also includes target line information; the method also includes: In response to a verification start operation triggered by the verification control, a target line is displayed on the verification area based on the target line information; the moving speed of the target line is different from the moving speed of the target verification object; a prompt is used to inform the user that the verification end operation of the verification control is triggered after the position difference between the target verification object and the target line meets a preset position difference threshold.

[0011] This application also provides another verification method, applied to a server, which includes: Get the first request sent by the client; Based on the first request, verification information for the client is generated and sent to the client. The verification information includes verification area information, prompt word information, and movable object information. The client displays the verification area based on the verification area information and responds to a verification start operation triggered by a verification control set within the verification area. Based on the prompt word information, the client displays a prompt word within the verification area and a set of movable objects within the verification area based on the movable object information. The client also responds to a verification end operation triggered by a verification control and submits a second request to the server. Multiple movable objects in the set of movable objects are in a moving state, and the set of movable objects includes at least the target verification object. The prompt word is used to indicate that the verification end operation of the verification control is triggered after the position of the target verification object meets a preset position condition. Based on the second request submitted by the client, the position of the target verification object is verified to see if it meets the preset position conditions, the verification result is obtained, and the verification result is sent to the client.

[0012] In the above scheme, the first request includes distance information between the user and the terminal corresponding to the client, environmental information and user operation information of the client corresponding to the trigger operation for the verification interface, and the preset interface color and preset interface size of the verification interface; the movable object information includes target verification object information and interference object set information; the target verification object information is used to display the target verification object on the verification interface; the interference object set information is used to display the interference object set on the verification interface. Based on the first request, the verification information for the verification interface is generated, including: Generate verification area information based on the preset interface size; Based on pre-stored age identifiers, distance information, and preset interface colors, generate target verification object information; Generate prompt information based on the target verification object information; The security level of the first request is determined based on environmental information and user operation information, and information on the set of interfering objects is generated based on the security level.

[0013] This application provides an electronic device, which includes: Memory is used to store executable instructions or computer programs. When a processor executes computer-executable instructions or computer programs stored in memory, it implements the verification method provided in the embodiments of this application.

[0014] This application provides a computer-readable storage medium storing a computer program or computer-executable instructions, which, when executed by a processor, implements the verification method provided in this application.

[0015] This application provides a computer program product, including a computer program or computer executable instructions. When the computer program or computer executable instructions are executed by a processor, they implement the verification method provided in this application.

[0016] In this embodiment, the client sends a first request to the server. The server generates verification information for the client based on the first request and sends the verification information back to the client. The client displays a verification area based on the verification area information fed back by the server. The verification area includes verification controls. In response to a verification start operation targeting the verification controls, the client displays a prompt word within the verification area and a set of movable objects within the verification area based on the movable object information. This makes it difficult for attackers to identify, thus enhancing the verification process. Furthermore, multiple movable objects in the set are in motion. Only after the position of the target verification object in the set meets a preset position condition is the user triggered to end the verification operation of the verification control, and the client submits a second request to the server. The server verifies whether the position of the target verification object meets the preset position condition based on the second request, and the client obtains the verification result sent by the server. Compared to graphical verification methods in related technologies, this method, where the user triggers the verification end operation only under specific conditions, tests the user's flexible thinking ability more effectively and has stronger resistance to machine recognition. Therefore, the verification process of this application can eliminate the possibility of attackers using machines to crack the verification, making it more secure. Attached Figure Description

[0017] Figure 1 This is a schematic diagram of the verification system architecture provided in the embodiments of this application; Figure 2 This is a flowchart illustrating the client-side verification method provided in an embodiment of this application; Figure 3 This is a schematic diagram of the verification interface provided in an embodiment of this application before the user triggers the verification to start the operation; Figure 4 This is a schematic diagram of the verification interface after the user triggers the verification start operation, as provided in an embodiment of this application. Figure 5 This is a schematic diagram of a verification area including a target line provided in an embodiment of this application; Figure 6 This is a schematic diagram of a verification area when the verification control is released, provided in an embodiment of this application; Figure 7 This is a schematic flowchart of the server execution verification method provided in the embodiments of this application; Figure 8 This is a schematic diagram of the verification area displayed in the verification interface at time t1 provided in the embodiments of this application; Figure 9 This is a schematic diagram of the verification area displayed in the verification interface at time t2 provided in the embodiments of this application; Figure 10 This is a schematic diagram of the verification area displayed in the verification interface at time t3 provided in the embodiments of this application; Figure 11 This is a schematic diagram of the structure of the electronic device provided in the embodiments of this application. Detailed Implementation

[0018] To make the objectives, technical solutions, and advantages of this application clearer, the application will be further described in detail below with reference to the accompanying drawings. The described embodiments should not be regarded as limitations on this application. All other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0019] In scenarios such as registration and login, coupon redemption, and data anti-scraping, in order to increase security, CAPTCHA verification is generally used to determine whether the operation is triggered by a robot or a real user. Only after the CAPTCHA verification is passed and it is confirmed that the operation is triggered by a real user can subsequent scene interactions proceed.

[0020] Currently, to prevent bots from cracking the code, most verification methods use image-based CAPTCHAs. Typically, image-based CAPTCHAs appear in the following ways: (1) Simple graphic verification code: It is generally composed of 4 to 6 digits or letters. In order to increase the difficulty of cracking, interference lines, character tilting, noise points, etc. can be added. (2) Sliding puzzle verification: Drag the slider to the specified gap to complete the puzzle. Attackers not only need to use image recognition to find out where to drag the slider, but also need to imitate human sliding gestures. Currently, sliding puzzle verification is widely used.

[0021] (3) Click-to-verify image: Generally, a background image will be provided on the verification interface, allowing users to click on a picture or text on the background image according to the prompts to complete the verification.

[0022] However, with the improvement of attackers' technical skills, the above-mentioned image CAPTCHA verification methods are too simplistic, and corresponding cracking methods can be found in related technologies. Therefore, the above-mentioned image CAPTCHA verification methods are easily recognized by machines, posing certain security risks.

[0023] In view of the shortcomings of the above-mentioned related technologies, this application provides a verification method that can improve the security of the verification process. To illustrate the technical solution of the present invention, specific embodiments are described below.

[0024] This application provides a verification method, which is applied to verification system 101, such as... Figure 1 As shown, the verification system 101 includes a client 102 and a server 103, which communicate bidirectionally via a network. The client 102 has a verification interface 104. The verification interface 104 can display a verification area 105 based on the verification information fed back by the server 103, and within the verification area 105, display prompts 106 and a set of movable objects 107, such as... Figure 1 The objects include a rhomboid 108, a teardrop 109, and a pentagonal 110, etc. The verification area 105 also includes a verification control 111, such as... Figure 1 A solid circular object. In other embodiments, the prompt 106 may also be displayed outside the verification area 105, for example, above or below the verification area 105.

[0025] For example, taking the scenario where a user needs to post on an app, only verified users can post. In this case, client 102 responds to the user's posting action, pushes verification interface 104 to the user, and sends a first request to server 103. Server 103 generates verification information for client 102 based on the first request and sends the verification information to client 102. The verification information includes verification area information, prompt words, and movable object information. Client 102 displays verification area 105 on verification interface 104 based on the verification area information fed back by server 103. Verification control 111 is set within verification area 105.

[0026] When a user sees the displayed verification area 105, they trigger the verification start operation by continuously clicking or long-pressing the verification control 111. In response to the verification start operation, client 102 displays a prompt word 106 within the verification area 105 based on the prompt word information, and displays a set of movable objects 107 within the verification area 105 based on the movable object information. Multiple movable objects in the set of movable objects 107 are in a moving state. The set of movable objects 107 includes at least the target verification object. For example, when the target verification object is a rhombus-shaped object 108, the prompt word could be "Stop triggering verification control 111 when rhombus-shaped object 108 is in the lower left corner of verification area 105." Similarly, when the target verification object is a teardrop-shaped object 109, and a specific target line is displayed within verification area 105, the prompt word could be "Stop triggering verification control 111 when the position of teardrop-shaped object 109 is higher than the target line." After the user confirms that the position of the target verification object meets the preset position condition based on prompt word 106, they cancel the continuous clicking or long-pressing of the verification control 111.

[0027] Client 102 responds to the verification completion operation and submits a second request to server 103. Server 103 verifies whether the position of the target verification object meets the preset position conditions based on the second request and sends the verification result to client 102. If the verification result indicates that the verification is successful, client 102 jumps from verification interface 104 to posting interface.

[0028] Figure 2 A flowchart of a verification method provided in this application embodiment, taking the method applied to client 102 as an example, the verification method provided in this application includes the following steps: S201, Send the first request to the server.

[0029] The server generates verification information for the client based on the first request and sends the verification information to the client; the verification information includes verification area information, prompt word information, and movable object information.

[0030] The first request is a request sent by the client to the server for verification information. After receiving the verification information from the server, the client can render the server's verification interface based on the verification information. Specifically, the client renders the verification area on the verification interface based on the verification area information; the client renders the prompt words on the verification interface based on the prompt words information; and the client renders the set of movable objects on the verification interface based on the movable object information.

[0031] The first request includes client environment information, verification interface information, and user information. Specifically: The client's environmental information includes, but is not limited to, the client's attribute information, running status information, and network environment information. For example, the client's attribute information includes, but is not limited to, the client's UI (User Interface) design; the running status information includes, but is not limited to, the client's process information, running permissions, and running time; and the network environment information includes, but is not limited to, the client's IP address, operating system, network type, and network latency.

[0032] The relevant information for the verification interface includes, but is not limited to, the interface size, interface color, and other related information.

[0033] User-related information includes, but is not limited to, user operation information, distance information between the user and the corresponding terminal of the client, and user object identification information. User operation information is behavioral data generated by the user's interactive behavior on the client side, including but not limited to the frequency of two consecutive user operations, page switching behavior, pop-up window interaction, and page dwell time.

[0034] The verification area information is used to display the verification area within the verification interface. The verification area is a specified spatial range used to complete the verification; if the verification action exceeds this range, the verification process fails. The verification area information includes, but is not limited to, the verification area size, background color, shape, location information, and verification control information. The location information indicates the specific position of the verification area on the verification interface, and the verification control information is used to display verification controls within the verification area. Verification control information includes, but is not limited to, control size, location information, shape, and color.

[0035] The movable object information is used to display a set of movable objects within the verification area. Movable objects in this set are those whose positions change within the verification area. The number of movable objects can be one or more, and the set must include at least the target verification object. The movable object information must include at least the target verification object information. The target verification object information includes, but is not limited to, the target verification object's appearance, first initial position information, first appearance duration, and first movement trajectory. The object appearance includes the object's size, color, and shape. The first appearance duration refers to the interval between when the user triggers the verification operation and when the target verification object appears within the verification area. The first initial position information refers to the initial position of the target verification object within the verification area.

[0036] In some embodiments, the movable object set also includes a set of interfering objects. The set of interfering objects is used to interfere with the user's judgment on whether the position of the target verification object meets the preset position conditions. For example, when the target verification object is a red sphere, the interfering objects in the set of interfering objects may be red cylinders. An attacker may misjudge the interfering object as the target verification object, and thus trigger the verification end operation of the verification control when the position of the interfering object meets the preset position conditions. At this time, the position of the target verification object may not necessarily meet the preset position conditions, causing the verification process to fail. Therefore, by setting interfering objects, the security of verification can be improved to a certain extent.

[0037] The movable object information also includes the interference object set information corresponding to the interference object set. The interference object set information includes, but is not limited to, the number of interference objects, the similarity between each interference object and the target verification object, the appearance of each interference object, the second initial position information, the second appearance duration, and the second movement trajectory. The appearance of the interference object includes the size, color, and shape of the interference object. The second movement trajectory refers to the movement trajectory of the interference object displayed in the verification area. The second appearance duration refers to the interval between when the user triggers the verification operation and when the interference object is displayed in the verification area. The second initial position information refers to the initial position of the interference object displayed in the verification area.

[0038] The prompt message is used to display prompts within the verification area. These prompts guide the user to complete the verification process. The prompt message includes the preset position conditions of the target verification object and how the user triggers the verification completion action. For example, the prompt message might state that the user should release the verification control when the red ball is in the upper left corner of the verification area. Here, the red ball being in the upper left corner corresponds to the preset position condition of the target verification object, and releasing the verification control corresponds to how the user triggers the verification completion action for the verification control.

[0039] In this application embodiment, currently, in order to improve the security of user operations, when a user opens an APP or purchases goods in a browser, the user needs to be verified before the user can perform the corresponding operation.

[0040] The client displays a verification interface in response to a user-triggered business operation, such as a user-triggered comment posting operation. It collects client environment information, verification interface information, and user information. For example, the client can collect client attribute information, running status information, network environment information, etc.; the client can also collect verification interface information such as interface size and color; and user information such as user operation information, distance between the user and the client's corresponding terminal, and user object identifier. Based on the collected information, the client generates a first request and sends it to the server. The server, based on the client's environment information, verification interface information, and user information in the first request, generates verification information for the client. This verification information includes verification area information, prompt words, and movable object information.

[0041] In this embodiment, the server generates verification area information based on relevant information collected by the client from the verification interface. For example, the server can determine the verification area size based on the preset interface size of the verification interface, meaning the verification area size needs to be smaller than the preset interface size. Alternatively, the server can determine the background color of the verification area based on the preset interface color of the verification interface. The server can also generate verification area information based on the client's environmental information, such as determining the appropriate location for displaying the verification area based on the client's UI design, thus obtaining the verification area's location information. Furthermore, the server can configure the verification area shape or verification control information itself or according to the user's actual needs.

[0042] In this embodiment of the application, the server generates movable object information based on the client's environmental information, the relevant information of the verification interface, and the relevant information of the user. For example, the server can determine the security level of the first request based on the client's environmental information and user operation information, and determine the complexity of the movement trajectory of the movable object based on the security level. The complexity refers to the degree of disorder in the positional changes during the object's movement. Another example is that the server can determine the size of the movable object based on the user's age identifier and the distance between the user and the client's corresponding terminal. When the age identifier indicates an elderly user, the movable object size is configured to be large; when the distance between the user and the client's corresponding terminal exceeds a preset distance threshold, the movable object size is configured to be large, ensuring the user can clearly see the movable object. Yet another example is that the color of the movable object can be determined based on the verification interface's color, either setting the movable object's color to be the same as or different from the preset interface color. The color of each movable object does not necessarily have to be the same. Furthermore, the server can randomly or according to actual needs configure other information about the movable object, such as the target verification object's appearance, first initial position information, first appearance duration, and first movement trajectory, as well as the color, shape, second initial position information, and second appearance duration of interfering objects. When the movable object includes a set of target verification objects and interfering objects, the server can also determine the number of interfering objects and the similarity between each interfering object and the target verification object based on the security level.

[0043] In some embodiments, the verification information generated by the server also includes target line information. The target line information is used to display the target line in the verification area. The target line is used to provide a reference for the verification process of whether the position of the target verification object meets the preset position conditions. That is, when the position difference between the target verification object and the target line meets the preset position difference threshold, the position of the target verification object can be considered to meet the preset position conditions.

[0044] S202, the verification area is displayed based on the verification area information returned by the server.

[0045] The verification area contains verification controls. These controls are triggered by the user, and the methods for initiating verification include, but are not limited to, long-pressing or continuous clicking. When the user long-presses or continuously clicks the verification control, the client responds to the user's verification start action. The methods for ending verification include, but are not limited to, the user actively canceling the long press or continuous clicking. When the user actively cancels the long press or continuous clicking, the client responds to the user's verification end action.

[0046] In this embodiment, the client renders the verification area on the verification interface based on the verification area information, so that the verification area is displayed on the verification interface. It should be explained that the verification interface is a complete interactive page, such as the entire login page or the entire pop-up page. The verification interface includes the verification area, basic page elements (such as the interface title, help instructions, etc.), and auxiliary display areas (such as refresh buttons, close buttons, back buttons, etc.). The verification area is a local area within the verification interface specifically used for verification. Furthermore, the server renders the verification area based on its size, background color, shape, location information, and control information.

[0047] In this embodiment, the server generates verification area information based on one or more of the client's environment information, verification interface information, and user information in the first request. For example, the server can determine the verification area size by using the preset interface size of the verification interface, meaning the verification area size needs to be smaller than the preset interface size. The server can also determine the background color of the verification area by using the interface color of the verification interface. For example, the background color of the verification area can be set to match the interface color to make the verification area adapt to the front-end page style, or the background color of the verification area can be set to be different from the interface color to increase the recognizability of the verification area. The server can also determine the location information of the verification area by using the UI design in the client's environment information to make the verification area coordinate with the client's original UI. In addition, the server can configure the verification area shape or verification control information of the verification area itself or according to the user's actual needs.

[0048] Furthermore, the server determines the verification control information, including: the server can determine the control position information of the verification control based on the area location information of the verification area, that is, the position of the verification control needs to be within the area defined by the verification area; the server can also determine the control color of the verification control based on the preset interface color of the verification interface, for example, setting the preset interface color of the verification interface to be the same as the control color; in practical applications, the control color of the verification control cannot be the same as the background color of the area, and the appearance of the verification control cannot be completely consistent with the movable object, so as to avoid the user being unable to identify the verification control.

[0049] The specific generation method of the above verification area information is not limited here. When the above verification area information is generated randomly, the generated verification information needs to meet the size constraint and position constraint conditions. For example, the size of the verification control cannot be larger than the size of the verification area, the size of the verification area cannot be larger than the preset size of the verification interface, the position of the verification control needs to be within the area of ​​the verification area, and the position of the verification area needs to be within the area of ​​the verification interface.

[0050] S203, in response to a verification start operation triggered by a verification control, displays a prompt word in the verification area based on the prompt word information, and displays a set of movable objects in the verification area based on the movable object information.

[0051] Among them, multiple movable objects in the movable object set are in a moving state, and the movable object set includes at least the target verification object; the prompt word is used to prompt the user to trigger the verification end operation of the verification control after the position of the target verification object meets the preset position conditions.

[0052] The verification start operation can be triggered by the user through methods such as long-pressing or repeatedly clicking the verification control. The verification end operation is the corresponding operation to the verification start operation. The verification end operation is triggered by the user. When the user triggers the verification start operation by long-pressing, the user can trigger the verification end operation by canceling the long press; when the user triggers the verification start operation by repeatedly clicking, the user can trigger the verification end operation by canceling the repeated clicks.

[0053] The preset position conditions are not unique. For example, the preset position conditions can be that the target verification object is located at a specific position in the verification area, or that the target verification object is located above the positions of all movable objects in the set of movable objects, or that the target verification object is located above the position of a certain target line. There are no limitations on this.

[0054] In this embodiment, the client's verification interface displays a verification area with verification controls. When the user long-presses or continuously clicks the verification controls, the client responds to the verification start operation triggered by the controls. Since the server pre-sends the prompt message and movable object information, the client does not need to retrieve verification information from the server again. Instead, it quickly renders the prompt message within the verification area based on the prompt message information and renders the movable object set within the verification area based on the movable object information. This reduces the time required to retrieve verification information from the server in real time and improves the display efficiency of the prompt message and movable object set.

[0055] Furthermore, after a user long-presses and repeatedly clicks the verification control, the shape of the verification control can change. The changed shape is determined according to the user's needs and can be changed to a fingerprint-like object, a gear-like object, a rectangular object, etc. For example... Figure 3 The image shown is a schematic diagram of the verification interface before the user triggers the verification process in one embodiment. Figure 4The diagram shown is a schematic of the verification interface after a user triggers the verification start operation in one embodiment. It can be seen that before the user triggers the verification start operation, a verification area is displayed on the verification interface, and a circular object 301 is displayed in the verification area. The circular object 301 is the verification control. After the user triggers the verification start operation of the verification control, the circular object 301 is transformed into a gear-shaped object 401, and a piece of text 402, a four-pointed star object 403 and a cone object 404 are displayed in the verification area. Among them, the text 402 is a prompt, which is "Release the verification control after the cone object is in the upper left corner", the four-pointed star object 403 is a distraction object, and the cone object 404 is the target verification object.

[0056] In this embodiment, the prompt information includes preset position conditions of the target verification object and how the user triggers the verification end operation. The client displays the prompt within the verification area based on these conditions. The prompt prompt instructs the user to actively trigger the verification end operation of the verification control once the target verification object's position meets the preset position conditions. For example, the prompt might include: "Release the verification control after the red ball is in the upper left corner of the verification area." The user observes the position of the red ball and actively releases the control once it is in the upper left corner. In other embodiments, the prompt is not limited to the verification area; it can also be displayed in a specific area of ​​the verification interface, such as above or below the verification area, depending on the user's actual needs.

[0057] In this embodiment of the application, the movable object set information includes at least target verification object information. The client displays the target verification object in the verification area based on the object appearance, first initial position information, first appearance duration and first movement trajectory of the target verification object.

[0058] In this embodiment of the application, the movable object set information may also include interference object set information. The client displays the interference objects in the verification area based on the number of interference objects, the similarity between each interference object and the target verification object, the appearance of each interference object, the second initial position information, the second appearance duration, the second movement trajectory, and the appearance of the interference objects including the size, color, and shape of the interference objects.

[0059] S204, in response to the verification end operation triggered by the verification control, submits a second request to the server.

[0060] The server verifies whether the position of the target verification object meets the preset position conditions based on the second request, and sends the verification result to the client.

[0061] In this embodiment of the application, although the user will trigger the verification end operation of the verification control after judging that the position of the target verification object meets the preset position conditions, this is a manual judgment by the user. This verification process still needs to be verified by the server to determine whether the user's judgment on the position of the target verification object is correct. If the user's judgment is correct, the user passes the verification.

[0062] Therefore, in response to the verification end operation triggered by the verification control, the client submits a second request to the server. The server then determines, based on this second request, whether the position of the target verification object meets the preset position conditions when the verification end operation is triggered. Since machines cannot easily determine when the verification end operation of the verification control will be triggered, the position of the target verification object often does not meet the preset position conditions when the verification end operation is triggered. Therefore, if the position of the target verification object meets the preset position conditions, it indicates that the verification process is a genuine human operation, and the user passes the verification. If it does not meet the conditions, it indicates that the user fails the verification, and the verification process may be the verification used by an attacker to launch a machine attack. The server then sends the verification result to the client.

[0063] In this embodiment of the application, the second request generated by the client includes the first position information of the target verification object when the verification end operation is triggered. Based on the first position information of the target verification object in the second request, the server verifies whether the position of the target verification object meets the preset position conditions, that is, determines whether the target verification object is within a specific area of ​​the verification area, and obtains the verification result.

[0064] In this embodiment, the second request generated by the client includes first position information of the target verification object when the verification end operation is triggered, first initial position information of the target verification object when the verification start operation is triggered, first movement trajectory of the target verification object, and verification duration. The verification duration refers to the interval between triggering the verification start operation and triggering the verification end operation. The server verifies whether the position of the target verification object meets preset position conditions based on the first position information, first initial position information, first movement trajectory, and verification duration. Specifically, let the first position information be (x... qend y qend The first initial position information is (x) qstart y qstart The first movement trajectory is f. q The verification time is t. end -t q (△x, △y) represents the positional tolerance of the target verification object from the start of the verification operation to the end of the verification operation, and [a1, b1]~[a2, b2] represents a specific region range on the verification area; then the position of the target verification object needs to meet the following preset positional conditions: (x) qend y qend )∈[a1, b1]~[a2, b2] (x) qend y qend )-(x qstart y qstart ) <f q (t end -t q )-(△x, △y) In other words, the first position information of the target verification object needs to characterize the specific area range of the target verification object on the verification area, and the actual position difference of the target verification object from the triggering of the verification end operation to the triggering of the verification start operation needs to satisfy the theoretical position difference calculated by the first movement trajectory.

[0065] In this embodiment, when the preset position condition is that the position of the target verification object is higher than the position of the target line, the second request generated by the client includes the first position information of the target verification object and the second position information of the target line when the verification end operation is triggered. The server verifies whether the position of the target verification object meets the preset position condition based on the first and second position information, and obtains the verification result. For example, when the preset position condition is that the height of the target line is lower than the position of the target verification object, the server determines whether the height of the target line is lower than the vertical coordinate position of the target verification object based on the first and second position information. Let the first position information of the target verification object be (x... qend y qend When the verification operation is completed, the height of the target line is y. Hend △h is a preset position difference threshold, and the preset position condition can be: y qend -y Hend <△h.

[0066] In the above verification method, the client sends a first request to the server, the server generates verification information for the client based on the first request, and sends the verification information back to the client. The client displays the verification area based on the verification area information fed back by the server. The verification area contains verification controls. In response to a verification start operation targeting the verification controls, the client displays a prompt word in the verification area based on the prompt word information, and displays a set of movable objects in the verification area based on the movable object information. This makes it difficult for attackers to identify, thus making the verification process more secure. Simultaneously, multiple movable objects in the set of movable objects are in motion. Only when the position of the target verification object in the set of movable objects meets the preset position condition will the user actively trigger the verification end operation of the verification control, and the client submits a second request to the server. The server verifies whether the position of the target verification object meets the preset position condition based on the second request, and the client obtains the verification result sent by the server. Compared with related technologies such as graphic verification, this method, where the user actively triggers the verification end operation only under specific conditions, tests the user's flexible thinking ability more and has stronger resistance to machine recognition. Therefore, the verification process of this application can eliminate the possibility of attackers using machines to crack the verification, making it more secure.

[0067] In other embodiments of this application, sending a first request to the server includes: In response to a trigger operation on the verification interface, the system obtains distance information between the user and the terminal corresponding to the client, as well as environmental information and user operation information corresponding to the client; based on the distance information, environmental information, user operation information, and the preset interface color and preset interface size of the verification interface, the system generates a first request; and sends the first request to the server.

[0068] Specifically, the server generates verification area information based on the preset interface size in the first request, generates movable object information based on the preset interface color, distance information, pre-stored age identifier, environmental information, and operation information, and generates prompt word information based on the preset interface color, distance information, and pre-stored age identifier.

[0069] The triggering operation for the verification interface can be the opening of the verification interface, or it can be the user clicking, double-clicking, or other operations on any area of ​​the verification interface after it has been opened. There are no restrictions on this.

[0070] The client-side terminal is a physical device, such as a mobile phone or computer. The distance information between the user and the client-side terminal can be the distance between the user's eye and the terminal, or the distance between the user's hand and the terminal; there are no specific limitations. By obtaining this distance information, the size of the set of movable objects can be determined. For example, if the distance between the user's eye and the terminal is far, and the movable objects are too small, the user may not be able to see them clearly. Therefore, the size of the movable objects needs to be set to match the distance information.

[0071] In this embodiment of the application, when the client displays the verification interface, in response to the opening operation of the verification interface, the client collects the distance information between the user and the terminal corresponding to the client, as well as the environmental information and user operation information corresponding to the client, and generates a first request based on the distance information, environmental information, user operation information, and the preset interface color and preset interface size of the verification interface, and sends the first request to the server.

[0072] The server receives the first request, generates verification area information based on the preset interface size in the first request, generates movable object information based on the preset interface color, distance information, pre-stored age identifier, environmental information and operation information, and generates prompt word information based on the preset interface color, distance information and pre-stored age identifier.

[0073] In this embodiment, when the server generates verification area information based on the preset interface size in the first request, the preset interface size is used to limit the verification area size, that is, the verification area size needs to be smaller than the preset interface size. Furthermore, the generation of verification area information not only requires the preset interface size, but can also be achieved by configuring the verification area's background color, location information, shape, and control information, etc., and generating the verification area information based on the verification area size, the configured background color, location information, shape, and control information.

[0074] In other embodiments, the server may also determine the verification area size based on the distance information between the user and the terminal corresponding to the client in the first request, at least one of the pre-stored age identifiers, and a preset interface size. Specifically, the distance between the user and the terminal corresponding to the client is proportional to the verification area size, and the age represented by the age identifier is proportional to the verification area size. That is, the farther the distance between the user and the terminal corresponding to the client, the greater the age represented by the age identifier, the larger the verification area size will be configured to be to avoid the user not being able to see the verification area clearly. At the same time, the verification area size also needs to be smaller than the preset interface size.

[0075] In this embodiment of the application, when the server generates movable object information based on preset interface color, distance information, pre-stored age identifier, environmental information and operation information, the server generates target verification object information based on at least one of preset interface color, distance information between the user and the terminal corresponding to the client, and pre-stored age identifier, and generates interference object set information based on at least one of distance information, pre-stored age identifier, environmental information and user operation information.

[0076] The target verification object information includes, but is not limited to, the object's appearance, initial position information, initial appearance duration, and initial movement trajectory. The object's appearance includes its size, color, and shape. The server can determine the target verification object information based on a preset interface color; for example, configuring the target verification object's color to be the same as the preset interface color. The server can also determine the object's size based on pre-stored age identifiers and distance information. Specifically, the distance between the user and the client's corresponding terminal is proportional to the object's size, and the age represented by the age identifier is proportional to the object's size. That is, the greater the distance between the user and the client's corresponding terminal, and the greater the age represented by the age identifier, the larger the object's size will be configured to prevent the user from not being able to see the object clearly. The server can also determine the first movement trajectory based on the client's environmental information and user operation information; that is, it determines the security level of the first request based on the client's environmental information and user operation information, and determines the target verification object's movement trajectory based on the security level. Other information can be randomly configured by the server or configured according to a certain rule, which is not limited here. In practical applications, the object size is also limited by the verification area size in the verification area information; the object size needs to be smaller than the verification area size.

[0077] The information regarding the set of interfering objects includes, but is not limited to, the number of interfering objects, the similarity between each interfering object and the target verification object, the appearance of each interfering object, second initial position information, second appearance duration, and second movement trajectory. The appearance of the interfering objects includes their size, color, and shape. The server can determine the size of the interfering objects based on pre-stored age identifiers and distance information. The server can also determine the client's security level based on environmental and operational information, and determine the number of interfering objects in the set, the second movement trajectory of each interfering object, and the similarity between each interfering object and the target verification object based on the security level. Other information in the set of interfering objects can be randomly configured by the server or configured according to a certain rule, and is not limited here.

[0078] In this embodiment, the server can also generate prompt information based on a preset interface color, distance information, and pre-stored age identifiers. For example, the server can determine the object color of the target verification object based on the preset interface color, determine the object size of the target verification object based on the distance information and pre-stored age identifiers, and generate prompt information based on the object color, object size, and configured object shape in the target verification object information. For example, when the object color in the target verification object information is red, the object size is a large object, and the object shape is a sphere, the prompt information can represent the prompt message as "Release the verification control when the large red sphere is in the upper left corner." Simultaneously, the font size of the prompt message can also be determined based on the distance information between the user and the client's corresponding terminal and the pre-stored age identifiers, ensuring that the user can clearly see the prompt message displayed in the verification area.

[0079] In the above embodiments, by collecting distance information between the user and the terminal corresponding to the client, as well as environmental information and user operation information corresponding to the client, the server can accurately generate verification information such as verification area information, movable object information, and prompt word information based on this information. This makes the generated verification information not only suitable for the style of the front-end page, but also easy for the elderly to operate, and can also improve the security of the target verification object for verification.

[0080] In other embodiments of this application, the movable object information includes target verification object information; displaying a set of movable objects within the verification area based on the movable object information includes: Display the target verification object within the verification area based on the target verification object information.

[0081] The size of the target verification object is determined by the server based on pre-stored age identifiers and distance information; the color of the target verification object is determined by the server based on preset interface colors.

[0082] In this embodiment, the server generates target verification object information based on pre-stored age identifiers, distance information, and preset interface colors. Specifically, the server determines the object size of the target verification object based on the pre-stored age identifiers and distance information, and determines the object color of the target verification object based on the preset interface colors. The server then generates target verification object information based on the object size and object color. Subsequently, the client can display the target verification object within the verification area based on the object size and object color in the target verification object information.

[0083] In this embodiment, the age represented by the age identifier is directly proportional to the size of the target verification object; the larger the age represented by the age identifier, the larger the size of the target verification object. The distance information is directly proportional to the size of the target verification object; the farther the distance represented by the distance information, the larger the size of the target verification object.

[0084] For example, Table 1 below shows the method of determining the object size based on the pre-stored age identifier and distance information, where s0 is the set distance threshold, the object size is Size, and Size1>Size2>Size3>Size4.

[0085] Table 1 Examples of object dimensions

[0086] In other words, when the age identifier represents an elderly user and the distance information represents a distance greater than a preset distance threshold, the object size is configured as Size1; when the age identifier represents an elderly user and the distance information represents a distance less than a preset distance threshold, the object size is configured as Size2; when the age identifier represents a non-elderly user and the distance information represents a distance greater than a preset distance threshold, the object size is configured as Size3; and when the age identifier represents a non-elderly user and the distance information represents a distance less than a preset distance threshold, the object size is configured as Size4.

[0087] In this embodiment of the application, when the server determines the object color of the target verification object based on the preset interface color, the object color can be consistent with the preset interface color so that the target verification object can adapt to the front-end page style. Alternatively, the object color can be inconsistent with the preset interface color to avoid the user not being able to see the target verification object due to the same color.

[0088] In this embodiment, the target verification object information includes not only the object size and object color of the target verification object, but also the first movement trajectory, first appearance duration, first initial position information and object shape of the target verification object. The first appearance duration refers to the interval from the start of the verification operation to the display of the target verification object on the verification interface. The first initial position information is the initial position of the target verification object on the verification interface. Based on this information, the server accurately displays the target verification object within the verification area.

[0089] In the above embodiments, the server determines the size of the target verification object based on pre-stored age identifiers and distance information, which makes it easier for elderly people or users at a distance to see the target verification object clearly and improves the adaptability of the verification process to multiple application scenarios. At the same time, it can also determine the color of the target verification object based on the preset interface color, so that when the object color is the same as the preset interface color, it matches the style of the front-end page, or when it is different from the preset interface color, it makes it easier for users to identify the target verification object.

[0090] In this embodiment of the application, the set of movable objects further includes a set of interfering objects; the movable object information further includes information on the set of interfering objects; displaying the set of movable objects within the verification area according to the movable object information includes: Display the set of interfering objects within the verification area based on the information about the set of interfering objects.

[0091] The number of interfering objects in the set of interfering objects, the movement trajectory of each interfering object, and the similarity between each interfering object and the target verification object are all determined by the server based on environmental information and user operation information.

[0092] In this embodiment, the information of the interfering object set includes, but is not limited to, the number of interfering objects in the set, the movement trajectory of each interfering object, and the similarity between each interfering object and the target verification object. The client displays the set of interfering objects within the verification area based on the number of interfering objects, the movement trajectory of each interfering object, and the similarity between each interfering object and the target verification object.

[0093] In this embodiment, the server determines the number of interfering objects in the interfering object set, the movement trajectory of each interfering object, and the similarity between each interfering object and the target verification object based on the client's environmental information and user operation information. Specifically, the server determines the security level of the client's current operating environment when the first request is sent using the client's environmental information and user operation information. Different security levels correspond to different numbers of interfering objects in the interfering object set, different complexity of the movement trajectories of the interfering objects, and different similarities between each interfering object and the target verification object. Therefore, the number of interfering objects in the interfering object set, the complexity of the movement trajectories of the interfering objects, and the similarity between each interfering object and the target verification object can be determined based on the security level, and the movement trajectory of each interfering object can be determined based on the complexity of the movement trajectories of the interfering objects.

[0094] One method for determining the security level includes: the server comparing the client's environment information and user operation information with a preset standard operating environment to obtain the security level of the client's current operating environment at the time the first request is sent. For example, if the differences between the environment information and the standard operating environment, and between the user operation information and the standard operating information, are too large, it indicates that the client's current operating environment is relatively dangerous, and the corresponding security level is low.

[0095] Another method for determining the security level includes: the server obtains the client's historical environment information sequence and the user's historical operation information sequence at multiple historical moments; based on the historical environment information sequence and the environment information, it determines the environment difference information; and based on the user's historical operation information sequence and the operation information, it determines the operation difference information; and based on the environment difference information and the operation difference information, it determines the security level. For example, when the difference between the environment difference information and the historical environment information at any historical moment is large, and the difference between the operation difference information and the historical operation information at any historical moment is large, it indicates that the client is currently not stable enough, and the corresponding security level is low.

[0096] In practical applications, security levels can be divided into extremely high risk, high risk, medium risk, and low risk, from low to high. When the security level is low, it means that the client's operating environment is relatively dangerous and there is a high possibility of an attacker attacking. Therefore, it is necessary to configure a larger number of interfering objects, and each interfering object should have a higher similarity to the target verification object and a more complex movement trajectory.

[0097] For example, Table 2 below provides several examples of determining the set of interfering objects based on the security level: Table 2. Several methods for determining information about the set of interfering objects based on security level.

[0098] It should be noted that the similarity between each interfering object and the target verification object is not necessarily the same, but it must be within the similarity range corresponding to the security level.

[0099] In this embodiment, the interference object set information includes not only the number of interference objects, the movement trajectory of each interference object, and the similarity between each interference object and the target verification object, but also information such as the appearance of each interference object, the second appearance duration, and the second initial position information. The second appearance duration refers to the interval from the start of the verification operation to the appearance of the interference object on the verification interface, and the second initial position information is the initial position of the interference object on the verification interface. Based on this information, the interference object set is accurately displayed within the verification area.

[0100] For example, let the interfering object w i The trajectory of movement is f i (t), the second occurrence duration of the interfering object is t i The second initial position information of the interfering object is (x i y i If the set of interfering objects is W = {w0, ..., w...}, then the information of the set of interfering objects is W = {w0, ..., w...}. n}, where n represents the number of interfering objects, w i ={(x istart y istart ), t i f i (t)}.

[0101] In the above embodiments, the server determines the security level of the client based on environmental information and user operation information, and determines the number of interfering objects in the interfering object set, the movement trajectory of each interfering object, and the similarity between each interfering object and the target verification object based on the security level. This makes the information of the interfering object set more complex in an operating environment with a low security level, reducing the possibility of the machine passing the verification and improving the security of the verification.

[0102] In other embodiments of this application, the verification information further includes target line information; the method further includes: In response to a verification start operation triggered by a verification control, the target line is displayed on the verification area based on the target line information.

[0103] The target line moves at a different speed than the target verification object; the prompt word is used to remind the user that the verification control will terminate the verification operation once the position difference between the target verification object and the target line meets the preset position difference threshold.

[0104] The target line is a special straight line or curve. Its speed can be zero or non-zero. When its speed is zero, the target line is stationary; when its speed is non-zero, it is moving. The difference between the target line's speed and the target verification object's speed allows their relative positions to change. For example, the target line may be higher or lower than the target verification object.

[0105] In this embodiment, in response to a verification start operation triggered by a verification control, not only is a prompt word displayed in the verification area based on the prompt word information, and a set of movable objects displayed in the verification area based on the movable object information, but a target line is also displayed in the verification area based on the target line information. For example... Figure 5 The image shows a verification area within a verification interface. This area displays a horizontal line 501, a circular object 502, a four-pointed star object 503, a five-pointed star object 504, and a text message 505. The horizontal line 501 is the target line, the circular object 502 is the verification control, the four-pointed star object 503 is a distractor, the five-pointed star object 504 is the target verification object, and the text 505 is a prompt: release the verification control when the five-pointed star object 504 is higher than the horizontal line 501. Figure 6As shown, in this case, release the verification control after the pentagram object 504 is above the horizontal line 501.

[0106] In this embodiment, the target line information is one type of verification information generated by the server, and the target line information includes, but is not limited to, the initial height H of the target line. start And the trajectory S of the target line l Specifically, the server randomly configures or configures the initial height H of the target line according to a preset pattern. start And the trajectory S of the target line l Based on the initial height of the target line and its movement trajectory, target line information L is generated. start ={H start S l When the target line's speed is 0, its trajectory is a constant; when the target line's speed is not 0, its trajectory is a trajectory function.

[0107] In this embodiment of the application, the trajectory of the target line can also be determined by the server based on environmental information and user operation information. That is, the server determines the security level corresponding to the first request based on environmental information and user operation information, and determines the trajectory of the target line based on the security level. The higher the security level, the simpler the trajectory of the target line. Conversely, the lower the security level, the more complex the trajectory of the target line.

[0108] In this embodiment of the application, after the position difference between the target verification object and the target line meets the preset position difference threshold, the user triggers the verification end operation of the verification control. At this time, the client can send the first position information of the target verification object, the second position information of the target line and the verification duration to the server. The verification duration is the interval between triggering the verification start operation and triggering the verification end operation.

[0109] The server verifies whether the position of the target verification object meets preset position conditions based on the verification duration, the first position information, and the second position information. Specifically, it determines whether the position difference between the target verification object and the target line meets a preset position difference threshold. It should be noted that when the target line is curved, the position difference between the target verification object and the target line refers to the position difference between the vertical coordinate of the target verification object and the height of the target line at the same horizontal coordinate. Simultaneously, the server also needs to determine whether the actual position difference between the target verification object from its initial position to its final position meets the theoretical position difference calculated from the theoretical trajectory of the target verification object.

[0110] In other words, let the first position information of the target verification object be (x) qend y qend The second position information of the target line is (x)Hend y Hend The preset location conditions can be: y qend -y Hend <△h (x) qend y qend )-(x qstart y qstart ) <f q (t end -t q )-(△x, △y) Among them, the first initial position information of the target verification object is (x qstart y qstart The first trajectory of the target verification object is f. q The verification time is t. end -t q △h is the preset position difference threshold, and (△x, △y) is the position tolerance of the target verification object from the start of the verification operation to the end of the verification operation. That is, the position difference between the target verification object and the target line must be less than the preset threshold △h. The actual position difference between the target verification object from the initial position to the final position must meet the theoretical position difference (△x, △y) calculated from the theoretical movement trajectory of the target verification object.

[0111] In the above embodiments, the target line is displayed on the verification area through the target line information. The target line can provide a reference for the position of the target verification object. Since the moving speed of the target line is different from the moving speed of the target verification object, the user can trigger the verification end operation of the verification control after the position difference between the target verification object and the target line meets the preset position difference threshold.

[0112] Figure 7 A flowchart of a verification method provided in this application embodiment, taking the method applied to server 103 as an example, the verification method provided in this application includes the following steps: S301, retrieve the first request sent by the client.

[0113] The first request includes distance information between the user and the terminal corresponding to the client, environmental information and user operation information corresponding to the client, as well as the preset interface color and preset interface size of the verification interface.

[0114] In this embodiment, in response to a trigger operation on the verification interface, the client obtains distance information between the user and the terminal corresponding to the client, as well as environmental information and user operation information corresponding to the client; based on the distance information, environmental information, user operation information, and the preset interface color and preset interface size of the verification interface, the client generates a first request and sends the first request to the server. The server obtains the first request sent by the client and generates verification information based on the information carried in the first request.

[0115] S302, Based on the first request, generate the client's verification information and send the verification information to the client.

[0116] The verification information includes verification area information, prompt word information, and movable object information. The client displays the verification area based on the verification area information and responds to the verification start operation triggered by the verification control set within the verification area. Based on the prompt word information, the client displays the prompt word within the verification area and displays a set of movable objects within the verification area based on the movable object information. The client also responds to the verification end operation triggered by the verification control and submits a second request to the server. Multiple movable objects in the set of movable objects are in a moving state, and the set of movable objects includes at least the target verification object. The prompt word is used to prompt the user to trigger the verification end operation of the verification control after the position of the target verification object meets the preset position conditions.

[0117] In this embodiment, the verification information includes verification area information, prompt word information, and movable object information. The server generates the client's verification information based on the first request, specifically: Regarding the verification area information: The server determines the verification area size based on the preset interface size in the first request, and configures the verification area background color, area location information, verification control information, and verification area shape. The server then generates the verification area information based on the verification area size, area background color, verification area location information, verification control information, and verification area shape.

[0118] Regarding movable object information: The server generates movable object information based on the preset interface color, distance information, pre-stored age identifier, environmental information, and user operation information in the first request. This movable object information includes target verification object information and interference object set information.

[0119] More specifically, the server determines the object color of the target verification object based on the preset interface color in the first request, determines the object size of the target verification object based on distance information and pre-stored age identifiers, and configures the first movement trajectory, first appearance duration, first initial position information, and object shape of the target verification object. The first movement trajectory refers to the movement trajectory of the target verification object displayed within the verification area; the first appearance duration refers to the interval between the user triggering the verification operation and the target verification object appearing within the verification area; and the first initial position information refers to the initial position of the target verification object displayed within the verification area. The server can also determine the client's security level based on the environmental information and operation information in the first request, and determine the first movement trajectory of the target verification object according to the client's security level. Furthermore, the server generates target verification object information based on the object shape, object size, object color, first movement trajectory, first appearance duration, and first initial position information of the target verification object.

[0120] The server can also determine the client's security level based on the environmental and operational information in the first request, and determine the number of interfering objects in the interfering object set, the movement trajectory of each interfering object, and the similarity between each interfering object and the target verification object based on the client's security level. It also configures the interfering object color, second appearance duration, and second initial position information for each interfering object. The second appearance duration refers to the interval from the start of the verification operation to the display of the interfering object on the verification interface, and the second initial position information is the initial position of the interfering object on the verification interface. Simultaneously, the server can also determine the size of the interfering objects based on pre-stored age identifiers and distance information. Based on the interfering object color, size, second appearance duration, second initial position information, number of interfering objects in the interfering object set, second movement trajectory of each interfering object, and similarity between each interfering object and the target verification object, interfering object set information is generated.

[0121] Regarding the prompt message information: The server generates prompt message information based on preset interface colors, distance information, and pre-stored age identifiers. Specifically, the server can generate the object color of the target verification object based on the preset interface colors, generate the object size of the target verification object based on the distance information and pre-stored age identifiers, and generate prompt message information based on the object color, object size, and object shape of the target verification object. Simultaneously, the font size of the prompt message information can also be determined based on the distance information between the user and the corresponding terminal of the client and the pre-stored age identifiers, ensuring that the user can clearly see the prompt message displayed in the verification area.

[0122] In this embodiment, after the server generates verification information for the client, it can send the verification information to the client. The client displays a verification area based on the verification area information, which includes verification controls. When the user triggers a verification start operation on the verification controls (e.g., long-pressing the verification control), the client responds by displaying a prompt message within the verification area based on the prompt message information, and displaying a set of movable objects within the verification area based on the movable object information. If the user actively triggers a verification end operation on the verification controls after the target verification object's position meets preset position conditions (e.g., releasing the verification control), the client responds by submitting a second request to the server. The specific process has been described in detail in the above embodiments and will not be repeated here.

[0123] In this embodiment, the verification information also includes target line information. The target line information is used to display a target line within the verification area. The position of the target line provides a reference for the verification process of whether the position of the target verification object meets the preset position conditions. That is, when the position difference between the target verification object and the target line meets the preset position difference threshold, the position of the target verification object can be considered to meet the preset position conditions. Subsequently, when the client responds to the verification start operation, the client displays the target line within the verification area according to the target line information. Based on the prompt, the user actively triggers the verification end operation of the verification control after the position difference between the target verification object and the target line meets the preset position difference threshold.

[0124] S303, based on the second request submitted by the client, verify whether the position of the target verification object meets the preset position conditions, obtain the verification result, and send the verification result to the client.

[0125] In this embodiment of the application, the client submits a second request to the server. Based on the second request, the server verifies whether the position of the target verification object meets the preset position conditions, obtains the verification result, and sends the verification result to the client.

[0126] In this application embodiment, verifying whether the position of the target verification object meets the preset position conditions includes one or more of the following methods: 1. The second request generated by the client includes the first position information of the target verification object when the verification end operation is triggered. Based on the first position information of the target verification object in the second request, the server verifies whether the position of the target verification object meets the preset position conditions and obtains the verification result. For example, based on the first position information, the server verifies whether the target verification object is within a preset specific area within the verification area when the user triggers the verification end operation.

[0127] 2. The second request generated by the client also includes the first initial position information of the target verification object when the verification start operation is triggered, the first movement trajectory of the target verification object, and the verification duration. The verification duration refers to the interval between triggering the verification start operation and triggering the verification end operation. The server verifies whether the position of the target verification object meets the preset position conditions based on the first position information, the first initial position information, the first movement trajectory, and the verification duration in the second request. That is, it verifies whether the actual position difference of the target verification object between triggering the verification start operation and triggering the verification end operation meets the theoretical position difference calculated from the first movement trajectory.

[0128] 3. The second request generated by the client also includes the second position information of the target line when the verification end operation is triggered. The server can also determine, based on the first and second position information, whether the position difference between the target verification object and the target line meets a preset position difference threshold when the verification end operation is triggered.

[0129] In the above verification method, the client sends a first request to the server, the server generates verification information for the client based on the first request, and sends the verification information back to the client. The client displays the verification area based on the verification area information fed back by the server. The verification area contains verification controls. In response to the verification start operation targeting the verification controls, the client displays a prompt word in the verification area based on the prompt word information, and displays a set of movable objects in the verification area based on the movable object information. This makes it difficult for attackers to identify, thus making the verification process more secure. Simultaneously, multiple movable objects in the set of movable objects are in motion. Only after the position of the target verification object in the set of movable objects meets the preset position conditions does the user trigger the verification end operation of the verification control, and the client submits a second request to the server. The server verifies whether the position of the target verification object meets the preset position conditions based on the second request, and the client obtains the verification result sent by the server. Compared with related technologies such as graphic verification, this method, where the user triggers the verification end operation only under specific conditions, tests the user's flexible thinking ability more and has stronger resistance to machine recognition. Therefore, the verification process of this application can eliminate the possibility of attackers using machines to crack the verification, making it more secure.

[0130] In other embodiments of this application, the first request includes distance information between the user and the terminal corresponding to the client, environmental information and user operation information of the client corresponding to the trigger operation for the verification interface, and preset interface color and preset interface size of the verification interface; the movable object information includes target verification object information and interference object set information; the target verification object information is used to display the target verification object on the verification interface; the interference object set information is used to display the interference object set on the verification interface; Based on the first request, the verification information for the verification interface is generated, including: The system generates verification area information based on the preset interface size; it generates target verification object information based on pre-stored age identifiers, distance information, and preset interface colors; it generates prompt word information based on the target verification object information; it determines the security level of the first request based on environmental information and user operation information, and generates a set of interfering objects based on the security level.

[0131] In this embodiment, the server generates a verification area size based on the preset interface size in the first request, and generates verification area information based on the verification area size. In practical applications, the background color of the area can be configured to be the same as the preset interface color to match the style of the verification interface, or it can be configured to be different from the preset interface color to improve the recognizability of the verification area and the verification interface. Furthermore, the verification area information not only includes the verification area size, but can also be generated based on the verification area size, as well as the background color of the area configured by the server, the verification area location information, the verification control information, and the verification area shape.

[0132] The server determines the object color of the target verification object based on the preset interface color in the first request, and determines the object size based on distance information and pre-stored age identifiers. It then generates target verification object information based on the object color and size. Furthermore, the server can determine the client's security level based on environmental and operational information in the first request, and determine the first movement trajectory of the target verification object based on the client's security level. It also configures the first appearance duration, first initial position information, and object shape of the target verification object. The server generates target verification object information based on the object shape, object size, object color, first movement trajectory, first appearance duration, and first initial position information.

[0133] The server can also determine the number of interfering objects in the interfering object set, the movement trajectory of each interfering object, and the similarity between each interfering object and the target verification object based on the client's security level, and configure the interfering object color, second appearance duration, and second initial position information for each interfering object; furthermore, the server can also determine the size of the interfering objects based on pre-stored age identifiers and distance information. Based on the interfering object color, size, second appearance duration, second initial position information, number of interfering objects in the interfering object set, movement trajectory of each interfering object, and similarity between each interfering object and the target verification object, interfering object set information is generated.

[0134] The server generates prompt information based on preset interface colors, distance information, and pre-stored age identifiers. Specifically, the server can generate the object color of the target verification object based on preset interface colors, generate the object size of the target verification object based on distance information and pre-stored age identifiers, and generate prompt information based on the object color, object size, and object shape of the target verification object.

[0135] In the above embodiments, the verification information of the verification interface is accurately generated using various information carried in the first request. Furthermore, when generating the verification information, the generated verification area information, target verification object information, prompt word information, and interference object set information are all adapted to the verification interface. This embodiment can also determine the risk level of the user's operating environment based on the client's environmental information and the user's historical operation information. Different risk levels correspond to different numbers, similarities, and movement trajectories of interference objects, improving the security of the verification. Simultaneously, the size of the movable object set can vary according to the user's age tag and the distance between the user and the device, facilitating operation for elderly users.

[0136] To facilitate understanding of the technical solution of this application by those skilled in the art, the verification method of this application will be described below with a detailed embodiment, as follows: S1. The client obtains the distance information between the user and the terminal corresponding to the client, as well as the environmental information and user operation information corresponding to the client. Based on the distance information, environmental information, user operation information, and the preset interface color and preset interface size of the verification interface, the client generates a first request. The client sends the first request to the server.

[0137] S2. The server generates verification information based on the first request and returns the verification information to the client. The verification information includes verification area information, target line information, movable object information and prompt word information. The movable object information includes target verification object information and interference object set information.

[0138] The process of generating verification information is as follows: (1) Verification Area Information: The verification area information includes, but is not limited to, the verification area size, background color, shape, location information, and verification control information. The server can configure this information, such as determining the verification area size based on the preset interface size of the verification interface, i.e., the verification area size needs to be smaller than the preset interface size; or, determining the background color of the verification area based on the preset interface color of the verification interface. In this embodiment, the verification control information is represented in the form of buttons.

[0139] (2) Target verification of object information: The target verification object information includes, but is not limited to, the object's appearance, initial position information, initial appearance duration, and initial movement trajectory. The object's appearance includes its size, color, and shape. The server can configure this information; for example, it can determine the object's size based on the user's phone number's age tag and the distance between the user's phone and the user, and determine the object's color based on the preset interface color of the verification interface.

[0140] (3) Information about the set of interfering objects: The information regarding the set of interfering objects includes, but is not limited to, the number of interfering objects, the similarity between each interfering object and the target verification object, the appearance of each interfering object, the second initial position information, the second appearance duration, and the second movement trajectory. The appearance of the interfering objects includes their size, color, and shape. The server can configure this information. For example, it can determine the security level corresponding to the first request based on the client's environmental information and the user's operation information, and determine the number of interfering objects, the similarity between each interfering object and the target verification object, and the second movement trajectory of each interfering object based on the security level. Alternatively, it can determine the size of the interfering objects based on the user's age identifier and distance information.

[0141] (4) Target line information: Target line information L start ={H start S l}, H start S represents the initial height of the target line. l This indicates the trajectory of the target line.

[0142] (5) Prompt information: Generate prompts for the target verification object based on the target verification object information.

[0143] S3. At time t0, the client displays the verification area on the verification interface based on the verification area information returned by the server, and prompts the user to press and hold the button to start verification. Figure 3 Taking time t0 in this embodiment as an example, the circular object 301 is a verification control displayed in the form of a button.

[0144] S4. After the user long-presses the verification control, the client displays the prompt word in the verification area based on the prompt word information, the target verification object in the verification area based on the target verification object information, the set of interfering objects in the verification area based on the interfering object set information, and the target line in the verification area based on the target line information. For example... Figure 8As shown, at time t1, when the user long-presses the verification control, the circular object 301 transforms into a gear-shaped object 801. This gear-shaped object 801 is the verified control after being triggered. The verification area also newly displays a five-pointed star-shaped object 802, a circular object 803, a horizontal line 804, and a piece of text 805. Object 802 is the target verification object, object 803 is a distractor object, the horizontal line 804 is the target line, and the text 805 at the top is a prompt: "Release the verification control to submit verification after the hollow five-pointed star-shaped object crosses the horizontal line." Objects 802, 803, and the horizontal line 804 move within the verification area. Simultaneously, because the appearance duration of each distractor object in the distractor object set is different, the number of distractor objects in the verification area will increase. A schematic diagram of the verification area at time t2 is shown below. Figure 9 As shown, interference objects such as a water droplet-shaped object 901 were added to the verification area at time t2.

[0145] S5. The user observes the position of object 802, such as... Figure 10 As shown, at time t3, after the position of object 802 meets the preset position condition indicated in the prompt, that is, after object 802 is higher than the horizontal line 804, the user releases the verification control.

[0146] S6. After the user releases the verification control, the client collects the first position information (x) of object 802. qend y qend ), the first initial position information of object 802 (x) qstart y qstart The trajectory f of object 802 q The height H of the horizontal line 804 when the verification control is released. end The verification time from when the user presses the verification control t1 to when they release the verification control t3.

[0147] S7: The server verifies whether a user is a legitimate user based on the information submitted by the client and sends the verification result back to the client. The specific verification logic is as follows: y qend -H end <△h (x) qend y qend )-(x qstart y qstart ) <f q (t3-t1)-(△x, △y) Where △h, △x, and △y represent the configured tolerance errors.

[0148] It should be understood that the sequence number of each step in the above embodiments does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.

[0149] It should be understood that, when used in this specification and the appended claims, the terms "comprising" and "including" indicate the presence of the described features, integrals, steps, operations, elements and / or components, but do not exclude the presence or addition of one or more other features, integrals, steps, operations, elements, components and / or collections thereof.

[0150] It should be noted that the technical solutions described in the embodiments of the present invention can be combined arbitrarily without conflict.

[0151] In addition, in the embodiments of the present invention, "first," "second," etc. are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence.

[0152] The verification method in this application embodiment can be implemented by a processor in an electronic device, such as a central processing unit (CPU), a digital signal processor (DSP), a microcontroller unit (MCU), or a field-programmable gate array (FPGA).

[0153] To implement the method of the embodiments of this application, the embodiments of this application also provide an electronic device. Figure 11 This is a schematic diagram of the hardware composition structure of an electronic device provided in an embodiment of this application, such as... Figure 11 As shown, a verification system is deployed on the electronic device, which includes: The communication interface 1101 is capable of exchanging information with other devices, such as electronic devices; The processor 1102 is connected to the communication interface 1101 to enable information exchange with other devices and to execute the methods provided by one or more of the above-mentioned technical solutions when running a computer program. The computer program is stored in the memory 1103.

[0154] Of course, in practical applications, the various components in an electronic device are coupled together through a bus system 1104. It can be understood that the bus system 1104 is used to achieve communication and connection between these components. In addition to a data bus, the bus system also includes a power bus, a control bus, and a status signal bus. However, for clarity, in... Figure 11 The general designated all buses as Bus System 1104.

[0155] The memory 1103 in this embodiment is used to store various types of data to support the operation of the computer device. Examples of such data include any computer program used to operate on the electronic device.

[0156] It is understood that memory can be volatile or non-volatile, or both. Non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), ferromagnetic random access memory (FRAM), flash memory, magnetic surface memory, optical disc, or compact disc read-only memory (CD-ROM); magnetic surface memory can be disk storage or magnetic tape storage. Volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Synchronous Static Random Access Memory (SSRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic Random Access Memory (SDRAM), Double Data Rate Synchronous Dynamic Random Access Memory (DDRSDRAM), Enhanced Synchronous Dynamic Random Access Memory (ESDRAM), SyncLink Dynamic Random Access Memory (SLDRAM), and Direct Rambus Random Access Memory (DRRAM).The memories described in the embodiments of this application are intended to include, but are not limited to, these and any other suitable types of memories.

[0157] The methods disclosed in the embodiments of this application can be applied to a processor or implemented by a processor. The processor may be an integrated circuit chip with signal processing capabilities. During implementation, each step of the above method can be completed by integrated logic circuits in the processor's hardware or by instructions in software form. The processor may be a general-purpose processor, a DSP, or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The processor can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. A general-purpose processor may be a microprocessor or any conventional processor, etc. The steps of the methods disclosed in the embodiments of this application can be directly manifested as execution by a hardware decoding processor, or execution by a combination of hardware and software modules in the decoding processor. The software modules may be located in a storage medium, which is located in memory. The processor reads the program from the memory and, in conjunction with its hardware, completes the steps of the aforementioned method.

[0158] Optionally, when the processor executes the program, it implements the corresponding processes implemented by the electronic device in the various methods of the embodiments of this application. For the sake of brevity, these will not be described in detail here.

[0159] In an exemplary embodiment, this application also provides a storage medium, namely a computer storage medium, specifically a computer-readable storage medium, such as a first memory storing a computer program, which can be executed by a processor of a computer device to complete the aforementioned method steps. The computer-readable storage medium may be a memory such as FRAM, ROM, PROM, EPROM, EEPROM, Flash Memory, magnetic surface memory, optical disc, or CD-ROM.

[0160] In the several embodiments provided in this application, it should be understood that the disclosed apparatus, computer devices, and methods can be implemented in other ways. The device embodiments described above are merely illustrative. For example, the division of units is only a logical functional division, and in actual implementation, there may be other division methods, such as: multiple units or components may be combined, or integrated into another system, or some features may be ignored or not executed. In addition, the coupling, direct coupling, or communication connection between the various components shown or discussed may be through some interfaces, and the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.

[0161] The units described above as separate components may or may not be physically separate. The components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of the units may be selected to achieve the purpose of this embodiment according to actual needs.

[0162] In addition, each functional unit in the various embodiments of this application can be integrated into one processing unit, or each unit can be a separate unit, or two or more units can be integrated into one unit; the integrated unit can be implemented in hardware or in the form of hardware plus software functional units.

[0163] Those skilled in the art will understand that all or part of the steps of the above method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When the program is executed, it performs the steps of the above method embodiments. The aforementioned storage medium includes various media that can store program code, such as mobile storage devices, ROM, RAM, magnetic disks, or optical disks.

[0164] Alternatively, if the integrated units described above are implemented as software functional modules and sold or used as independent products, they can also be stored in a computer-readable storage medium. Based on this understanding, the technical solutions of the embodiments of this application, or the parts that contribute to related technologies, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, electronic device, etc.) to execute all or part of the methods of the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as mobile storage devices, ROM, RAM, magnetic disks, or optical disks.

[0165] In an exemplary embodiment, this application also provides a computer program product, including a computer program that can be executed by a processor 1102 of an electronic device to complete the steps of the verification method in this application embodiment.

[0166] It should be noted that terms such as "first" and "second" are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence.

[0167] Furthermore, the technical solutions described in the embodiments of this application can be combined arbitrarily without conflict.

[0168] The above are merely specific embodiments of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A verification method applied to a client, characterized in that, The method includes: A first request is sent to the server; the server generates verification information for the client based on the first request and sends the verification information to the client; the verification information includes verification area information, prompt word information, and movable object information; The verification area is displayed based on the verification area information fed back by the server, wherein verification controls are set in the verification area; In response to a verification start operation triggered by the verification control, a prompt word is displayed in the verification area according to the prompt word information, and a set of movable objects is displayed in the verification area according to the movable object information, wherein multiple movable objects in the set of movable objects are in a moving state, and the set of movable objects includes at least the target verification object; the prompt word is used to prompt the user to trigger the verification end operation of the verification control after the position of the target verification object meets a preset position condition; In response to the verification end operation triggered by the verification control, a second request is submitted to the server; the server verifies whether the position of the target verification object meets the preset position conditions based on the second request, and sends the verification result to the client.

2. The method according to claim 1, characterized in that, Sending the first request to the server includes: In response to a trigger operation on the verification interface, the distance information between the user and the terminal corresponding to the client, as well as the environmental information and user operation information corresponding to the client are obtained; Based on the distance information, the environment information, the user operation information, and the preset interface color and preset interface size of the verification interface, a first request is generated; The server sends the first request to the server; the server generates verification area information based on the preset interface size in the first request, generates movable object information based on the preset interface color, the distance information, the pre-stored age identifier, the environmental information and the operation information, and generates prompt word information based on the preset interface color, the distance information and the pre-stored age identifier.

3. The method according to claim 2, characterized in that, The movable object information includes target verification object information; the step of displaying a set of movable objects within the verification area based on the movable object information includes: The target verification object is displayed in the verification area according to the target verification object information; the size of the target verification object is determined by the server based on the pre-stored age identifier and the distance information; the color of the target verification object is determined by the server based on the preset interface color.

4. The method according to claim 2, characterized in that, The set of movable objects also includes a set of interfering objects; the information about the movable objects also includes information about the set of interfering objects. Based on the movable object information, a set of movable objects is displayed within the verification area, including: The set of interfering objects is displayed in the verification area according to the information on the set of interfering objects. The number of interfering objects in the set of interfering objects, the movement trajectory of each interfering object, and the similarity between each interfering object and the target verification object are all determined by the server based on the environmental information and the user operation information.

5. The method according to claim 1, characterized in that, The verification information also includes target line information; the method further includes: In response to a verification start operation triggered by the verification control, the target line is displayed on the verification area according to the target line information; the moving speed of the target line is different from the moving speed of the target verification object; the prompt word is used to prompt the user to trigger the verification end operation of the verification control after the position difference between the target verification object and the target line meets a preset position difference threshold.

6. A verification method applied to a server, characterized in that, The method includes: Get the first request sent by the client; Based on the first request, verification information for the client is generated and sent to the client. The verification information includes verification area information, prompt word information, and movable object information. The client displays the verification area based on the verification area information, and responds to a verification start operation triggered by a verification control set within the verification area. It also displays a prompt word within the verification area based on the prompt word information, and displays a set of movable objects within the verification area based on the movable object information. In response to a verification end operation triggered by the verification control, the client submits a second request to the server. Multiple movable objects in the set of movable objects are in a moving state, and the set of movable objects includes at least a target verification object. The prompt word is used to prompt the user to trigger the verification end operation of the verification control after the position of the target verification object meets a preset position condition. Based on the second request submitted by the client, the position of the target verification object is verified to see if it meets the preset position conditions, the verification result is obtained, and the verification result is sent to the client.

7. The method according to claim 6, characterized in that, The first request includes distance information between the user and the terminal corresponding to the client, environmental information and user operation information of the client corresponding to the trigger operation for the verification interface, and the preset interface color and preset interface size of the verification interface; the movable object information includes target verification object information and interference object set information. The target verification object information is used to display the target verification object on the verification interface; The information on the set of interfering objects is used to display the set of interfering objects on the verification interface; The step of generating verification information for the verification interface according to the first request includes: Generate verification area information based on the preset interface size; The target verification object information is generated based on the pre-stored age identifier, the distance information, and the preset interface color. Based on the target verification object information, generate prompt word information; The security level of the first request is determined based on the environmental information and the user operation information, and the information on the set of interfering objects is generated based on the security level.

8. An electronic device, characterized in that, The electronic device includes: Memory is used to store executable instructions or computer programs. A processor, when executing computer-executable instructions or computer programs stored in the memory, implements the method according to any one of claims 1 to 7.

9. A computer storage medium storing a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 7.

10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method as described in any one of claims 1 to 7.