Data verification method, device and computer program product
By performing multiple verifications on the device information, location information and time information of the target device, the problem of low data upload security verification in the prior art is solved, and the security of the data upload process is improved.
Patent Information
- Application Number
- CN202210620634.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-06-01
- Publication Date
- 2025-05-30
- Estimated Expiration
- 2042-06-01
AI Technical Summary
The existing data upload security verification technology has the problem of low verification security, which is difficult to effectively prevent third parties from using user information to maliciously upload data or infringe on user rights.
Collect the device information, location information and time information of the target device, perform multiple verifications on the data upload request for the device dimension, location dimension and time dimension, and determine whether the target data corresponding to the data upload request is received.
Through multiple verification, the security of the data upload process is improved, and malicious data upload and user rights violations are effectively prevented.
Smart Images

Figure CN114925406B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of computer technologies, specifically to verification technologies, and particularly to data verification methods, apparatuses, electronic devices, storage media, and computer program products, which can be used in data upload scenarios. Background Art
[0002] In many scenarios of using mobile applications, the data upload function is used. For application developers and users, the data upload process is at risk of being attacked. For example, a third party steals user information and maliciously uploads data to damage the server, or a third party maliciously uploads data to the user account space to infringe on the user's rights. Existing data upload security verification technologies have problems with low verification security. Summary of the Invention
[0003] The present disclosure provides a data verification method, apparatus, electronic device, storage media, and computer program product.
[0004] According to a first aspect, a data verification method is provided, including: in response to determining that a data upload request from a target device is received, collecting device information, location information, and time information of the target device; performing multiple verifications on the data upload request in terms of device dimension, location dimension, and time dimension according to the device information, location information, and time information to obtain a verification result; and determining whether to receive the target data corresponding to the data upload request according to the verification result.
[0005] According to a second aspect, a data verification apparatus is provided, including: a collection unit configured to collect device information, location information, and time information of a target device in response to determining that a data upload request from the target device is received; a verification unit configured to perform multiple verifications on the data upload request in terms of device dimension, location dimension, and time dimension according to the device information, location information, and time information to obtain a verification result; and a determination unit configured to determine whether to receive the target data corresponding to the data upload request according to the verification result.
[0006] According to a third aspect, an electronic device is provided, including: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the method described in any implementation manner of the first aspect.
[0007] According to a fourth aspect, a non-transitory computer-readable storage medium storing computer instructions is provided, and the computer instructions are used to cause a computer to execute the method described in any implementation manner of the first aspect.
[0008] According to a fifth aspect, there is provided a computer program product, including: a computer program which, when executed by a processor, implements the method described in any implementation manner of the first aspect.
[0009] According to the technology of the present disclosure, there is provided a data verification method, which collects device information, location information, and time information of a target device that issues a data upload request, so as to perform multiple verifications on the data upload request in terms of device dimension, location dimension, and time dimension, and determine whether to receive the target data corresponding to the data upload request according to the verification result, thereby improving the security of the data upload process.
[0010] It should be understood that the content described in this part is not intended to identify the key or important features of the embodiments of the present disclosure, nor is it used to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] The drawings are used to better understand the solution and do not constitute a limitation to the present disclosure. Among them:
[0012] Figure 1 is an exemplary system architecture diagram to which an embodiment of the present disclosure can be applied;
[0013] Figure 2 is a flowchart of an embodiment of the data verification method according to the present disclosure;
[0014] Figure 3 is a schematic diagram of an application scenario of the data verification method according to this embodiment;
[0015] Figure 4 is a flowchart of another embodiment of the data verification method according to the present disclosure;
[0016] Figure 5 is a structural diagram of an embodiment of the data verification device according to the present disclosure;
[0017] Figure 6 is a schematic structural diagram of a computer system suitable for implementing the embodiments of the present disclosure. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0018] The following describes exemplary embodiments of the present disclosure with reference to the accompanying drawings. Various details of the embodiments of the present disclosure are included to assist in understanding, and they should be considered merely exemplary. Therefore, those of ordinary skill in the art should recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of the present disclosure. Similarly, for the sake of clarity and conciseness, the description of well-known functions and structures is omitted below.
[0019] In the technical solution of the present disclosure, the processing of the collection, storage, use, processing, transmission, provision, and disclosure of the user's personal information complies with the provisions of relevant laws and regulations and does not violate public order and good customs.
[0020] Figure 1 FIG. 100 shows an exemplary architecture to which the data verification method and apparatus of the present disclosure can be applied.
[0021] As shown in Figure 1 FIG. 100, the system architecture 100 may include terminal devices 101, 102, 103, a network 104, and a server 105. The terminal devices 101, 102, 103 are communicatively connected to form a topology network, and the network 104 is used as a medium for providing a communication link between the terminal devices 101, 102, 103 and the server 105. The network 104 may include various connection types, such as wired, wireless communication links, or fiber optic cables, etc.
[0022] The terminal devices 101, 102, 103 interact with the server 105 through the network 104 to receive or send messages, etc. The terminal devices 101, 102, 103 may be hardware devices or software that support network connections for data interaction and data processing. When the terminal devices 101, 102, 103 are hardware, they may be various electronic devices that support network connections, information acquisition, interaction, display, processing, etc., including but not limited to smartphones, tablets, e-book readers, laptop computers, and desktop computers, etc. When the terminal devices 101, 102, 103 are software, they may be installed in the above-listed electronic devices. It may be implemented as, for example, multiple software or software modules for providing distributed services, or it may be implemented as a single software or software module. No specific limitation is made here.
[0023] The server 105 may be a server that provides various services. For example, it receives data upload requests sent by the terminal devices 101, 102, 103, and collects the device information, location information, and time information of the terminal devices to perform multiple verifications on the data upload requests, and determines whether to receive the target data corresponding to the data upload requests according to the obtained verification results. As an example, the server 105 may be a cloud server.
[0024] It should be noted that the server may be hardware or software. When the server is hardware, it may be implemented as a distributed server cluster composed of multiple servers, or it may be implemented as a single server. When the server is software, it may be implemented as multiple software or software modules (such as software or software modules for providing distributed services), or it may be implemented as a single software or software module. No specific limitation is made here.
[0025] It should also be noted that the data verification method provided by the embodiments of the present disclosure can be executed by a server, or by a terminal device, or by the server and the terminal device in cooperation with each other. Correspondingly, each part (such as each unit) included in the data verification device can be all arranged in the server, or all arranged in the terminal device, or respectively arranged in the server and the terminal device.
[0026] It should be understood that Figure 1 the numbers of the terminal devices, networks, and servers in
[0027] Please refer to Figure 2 , Figure 2 which is a flowchart of a data verification method provided by an embodiment of the present disclosure. Among them, process 200 includes the following steps:
[0028] Step 201, in response to determining that a data upload request from a target device is received, collect the device information, location information, and time information of the target device.
[0029] In this embodiment, the execution entity of the data verification method (for example, Figure 1 the terminal device or the server in
[0030] can receive a data upload request from a target device, and in response to determining that the data upload request from the target device is received, collect the device information, location information, and time information of the target device.
[0031] The data upload request can be request information for requesting to upload target data, and the target data can be data in any form and carrying any content. As an example, in the field of instant messaging, the target data can be data in various word, excel, and PowerPoint formats; in the field of short videos, the target data can be video data.
[0032] The location information is the location information of the target device when it sends a data upload request. As an example, the location information of the target device can be determined based on GPS (Global Positioning System).
[0033] The time information is the time information of the target device when it sends a data upload request. As an example, after receiving the data upload request, the above-mentioned execution entity determines the local time and determines the determined local time as the time information of the target device.
[0034] In some alternative implementation manners of this embodiment, the above-mentioned execution entity may execute step 201 in the following manner:
[0035] First, in response to determining that a data upload request from the target device is received, perform front-end verification on the target data corresponding to the data upload request.
[0036] Front-end verification, that is, front-end legality verification. After the front-end selects the target data, the target data will be temporarily cached at the front-end. The front-end can obtain data information such as the file name, file size, and file content. The front-end parses the file content to perform legality verification, and the verification content includes verification of file extensions, file sizes, the number of files, empty files, etc.
[0037] Taking the file extension as an example, a JavaScript script for performing extension name verification can be used to verify the extension of the uploaded data, which can be in the form of a whitelist or a blacklist. When using the whitelist form, if the extension of the target data is in the whitelist, it is considered to pass the verification; when using the blacklist form, if the extension of the target data is not in the blacklist, it is considered to pass the verification.
[0038] Then, in response to determining that the data upload request passes the front-end verification, collect device information, location information, and time information.
[0039] In this implementation manner, combining front-end verification with multiple verifications based on device information, location information, and time information, first performing front-end verification and then performing multiple verifications after passing the front-end verification further improves the verification accuracy and comprehensiveness of the target data.
[0040] Step 202, perform multiple verifications on the data upload request in terms of device dimension, location dimension, and time dimension according to the device information, location information, and time information.
[0041] In this embodiment, the above-mentioned execution entity may perform multiple verifications on the data upload request in terms of device dimension, location dimension, and time dimension according to the device information, location information, and time information.
[0042] As an example, the above-mentioned execution entity can perform verification of the data upload request in the corresponding dimension for each of the device information, location information, and time information.
[0043] For device information, the above-mentioned execution entity can determine whether the device information set authorized for login by the account that issued the file upload request includes the currently collected device information. When the device information set includes the currently collected device information, it indicates that the verification for device information has passed; otherwise, it indicates that the verification for device information has failed. For each account, the above-mentioned execution entity or the electronic device communicatively connected to the above-mentioned execution entity is provided with a device information set corresponding to the account.
[0044] For location information, the above-mentioned execution entity can determine whether the location information set of the target device that issued the file upload request includes the currently collected location information. Among them, the location information set represents the location range where the terminal device is usually located. When the location information set includes the currently collected location information, it indicates that the verification for location information has passed; otherwise, it indicates that the verification for location information has failed. For each account, the above-mentioned execution entity or the electronic device communicatively connected to the above-mentioned execution entity is provided with a location information set corresponding to the account.
[0045] In some special scenarios, each location information in the location information sequence corresponding to the data upload requests issued by the target device multiple times is fixed. The above-mentioned execution entity can determine whether the location information at the time of each data upload request issued matches the location information in the location information sequence. In response to determining that the location information matches, it is determined that the verification has passed; otherwise, the verification has failed.
[0046] For time information, the above-mentioned execution entity can determine whether the time information set of the target device that issued the file upload request includes the currently collected time information. Among them, the time information set indicates the time range when the terminal device usually performs file upload operations. When the time information set includes the currently collected time information, it indicates that the verification for time information has passed; otherwise, it indicates that the verification for time information has failed. For each account, the above-mentioned execution entity or the electronic device communicatively connected to the above-mentioned execution entity is provided with a time information set corresponding to the account.
[0047] In some special scenarios, each time information in the time information sequence corresponding to the data upload requests issued by the target device multiple times is fixed. The above-mentioned execution entity can determine whether the time information at the time of each data upload request issued matches the time information in the time information sequence. In response to determining that the time information matches, it is determined that the verification has passed; otherwise, the verification has failed.
[0048] As another example, the above-mentioned execution entity can perform multiple-dimensional multiple validations on the data upload request by combining device information, location information, and time information. For example, for two data upload requests continuously sent by the same target device at different locations, the above-mentioned execution entity can determine the possibility that the target device transfers from the location where the first data upload request is sent to the location where the second data upload request is sent according to the time interval between the two data upload requests. In response to determining that there is a possibility, it is determined to pass the validation; otherwise, it fails the validation.
[0049] Again, for example, in some specific scenarios, the location information and time information corresponding to each data upload request sent by the target device are in one-to-one correspondence. The above-mentioned execution entity can determine whether the correspondence between the location information and the time information when each data upload request is sent is correct. In response to determining that the correspondence between the location information and the time information is correct, it is determined to pass the validation; otherwise, it fails the validation.
[0050] It should be noted that when validating the data upload request in multiple ways according to the device information, location information, and time information, it is necessary that each method passes the validation to determine that the data upload request passes the validation.
[0051] In some alternative implementation manners of this embodiment, the above-mentioned execution entity can execute the above step 202 in the following manner:
[0052] For the user account corresponding to the data upload request, combine the device information, location information, and time information corresponding to each data upload request sent by the user account, and perform multiple validations on the data upload request in terms of device dimension, location dimension, and time dimension to obtain a validation result.
[0053] As an example, within a preset time period, determine the location information sequence formed by the location information when the user account sends each data upload request, the time information sequence formed by the time information, and the device information sequence in the case where the user account binds multiple devices. Determine whether there is abnormal information in the device information sequence, location information sequence, and time information sequence according to the corresponding relationships between the corresponding information in the preset device information sequence, location information sequence, and time information sequence. In response to determining that there is, obtain a validation result of failing the validation; otherwise, obtain a validation result of passing the validation.
[0054] In this implementation manner, by combining the device information, location information, and time information corresponding to each data upload request sent by the user account and performing multiple validations, the validation accuracy is further improved.
[0055] In some alternative implementation manners of this embodiment, the above-mentioned execution entity may perform multiple verifications in the following manner: First, for the user account corresponding to the data upload request, in combination with the device information, location information, and time information corresponding to the user account each time a data upload request is sent, determine whether there are any preset unreasonable situations in the device dimension, location dimension, and time dimension of the user account; then, in response to determining that there are, determine that the data upload request fails the multiple verifications.
[0056] The preset unreasonable situation is used to represent a situation that should not occur determined in terms of logic or relevant determination parameters regarding device information, location information, and time information based on artificial regulations.
[0057] As an example, the preset unreasonable situations include: Multiple data upload requests are sent by multiple target devices based on more than a preset quantity threshold at the same time and at the same location; Multiple data upload requests are sent by multiple target devices based on more than a preset quantity threshold at different times and / or at different locations.
[0058] In this implementation manner, a method for conveniently performing multiple verifications on a data upload request based on a preset unreasonable situation is provided, further improving the convenience and accuracy of data verification.
[0059] In some alternative implementation manners of this embodiment, the above-mentioned execution entity determines that the data upload request passes the multiple verifications in response to determining that there is no unreasonable situation.
[0060] In this implementation manner, in order to prevent the problem that inaccurate multiple verifications are caused by incomplete setting of the preset unreasonable situation, the above-mentioned execution entity may also set preset reasonable situations. As an example, the preset reasonable situations include:
[0061] (1) Based on a target device, at a certain time, at a certain location, send a data upload request; For example, the account sends a data upload request based on a target device for the first time.
[0062] (2) Based on the same target device, at different times, at different locations, send multiple data upload requests; For example, according to the recorded data corresponding to the account, multiple data upload requests sent by the account are always through the same target device, but the time information and location information corresponding to different data upload requests are different.
[0063] (3) Based on no more than a preset quantity threshold of multiple target devices, at the same time, at the same location, send multiple data upload requests; For example, the account allows multiple devices to log in simultaneously, but the number of multiple devices logging in simultaneously is limited by a preset quantity threshold, where the preset quantity threshold can be specifically set according to actual situations and is not limited here.
[0064] (4) Based on multiple target devices that are no more than a preset quantity threshold, at different times and / or in different locations, send multiple data upload requests; for example, multiple target devices that are no more than a preset quantity threshold, send multiple data upload requests at different times; or, multiple target devices that are no more than a preset quantity threshold, send multiple data upload requests in different locations
[0065] In this implementation manner, the above execution entity can count the device information, location information, and time information when each account sends a data upload request, so as to determine whether the account corresponding to the currently received data upload request has one of the above situations.
[0066] Then, in response to determining the existence, determine that the data upload request passes multiple validations.
[0067] In this implementation manner, in response to determining that the account corresponding to the data upload request has any of the above situations, determine that the data upload request passes multiple validations.
[0068] In this implementation manner, specific situation data for the data upload request to pass multiple validations is provided, and the data upload request is multiply validated based on the listed various situations, further improving the accuracy of the validation.
[0069] Step 203, according to the verification result, determine whether to receive the target data corresponding to the data upload request.
[0070] In this embodiment, the above execution entity can, in response to determining that the data upload request passes multiple validations, receive the target data corresponding to the data upload request.
[0071] As an example, when the verification result indicates that the data upload request passes multiple validations, receive and store the target data through a specified storage device; otherwise, prohibit receiving the target data corresponding to the data upload request.
[0072] After receiving the target data, the above execution entity can also perform a data processing task based on the target data. For example, in the field of instant messaging, for target data in word, excel, and PowerPoint formats, update and modify the target data based on the received editing operations; in the field of short videos, clip and synthesize the video data according to the received editing operations.
[0073] In some optional implementation manners of this embodiment, the above execution entity can execute the above step 203 in the following manner:
[0074] First, in response to determining that the data upload request passes multiple validations, perform a server - side verification on the target data corresponding to the data upload request.
[0075] Server - side verification includes, for example, verification of the content - type field in the file header, verification of the file content header, verification against a blacklist of file extensions, verification against a whitelist of file extensions, custom regular expression verification, and verification by a WAF (Web Application Firewall) device.
[0076] In this implementation, the above - mentioned execution entity can, according to the actual situation, use one or more server - side verification methods to verify the target data.
[0077] Then, in response to determining that the data upload request passes the server - side verification, the target data corresponding to the data upload request is received.
[0078] In this implementation, the above - mentioned execution entity combines multiple verifications based on device information, location information, and time information with server - side verification. After passing the multiple verifications, further server - side verification is performed, thereby further improving the accuracy and comprehensiveness of the verification of the target data.
[0079] Continue to refer to Figure 3 , Figure 3 is a schematic diagram 300 of the application scenario of the data verification method according to this embodiment. In the Figure 3 application scenario, the target device 301 sends a data upload request to the server 302. First, in response to determining that the data upload request from the target device 301 is received, the server 302 collects the device information 303, location information 304, and time information 305 of the target device; then, based on the device information 303, location information 304, and time information 305, multiple verifications in the device dimension, location dimension, and time dimension are performed on the data upload request to obtain a verification result; finally, according to the verification result, it is determined whether to receive the target data corresponding to the data upload request.
[0080] In this embodiment, a data verification method is provided. The device information, location information, and time information of the target device that sends the data upload request are collected to perform multiple verifications in the device dimension, location dimension, and time dimension on the data upload request, so as to determine whether to receive the target data corresponding to the data upload request according to the verification result, improving the accuracy of data verification and the security of the data upload process.
[0081] In some optional implementation manners of this embodiment, the above - mentioned execution entity can also perform the following operation: in response to determining that the data upload request fails the verification, reject the target data corresponding to the data upload request.
[0082] In this implementation, when the target data fails any one of the front - end verification, multiple verifications, and server - side verification, it is determined that the data upload request fails the verification. At this time, the above - mentioned execution entity rejects the target data corresponding to the data upload request.
[0083] In this implementation manner, the above-mentioned execution entity can display the specific reasons why the data upload request fails to pass the verification through the target device.
[0084] In this implementation manner, when the target data fails any one of the front-end verification, multiple verifications, and server-side verification, the target data corresponding to the file upload request is prohibited from being received, which improves the security of the target data upload process.
[0085] Continue to refer to Figure 4 , which shows a schematic flowchart 400 of another embodiment of the data verification method according to the present disclosure, including the following steps:
[0086] Step 401, in response to determining that a data upload request from a target device is received, perform front-end verification on the target data corresponding to the data upload request.
[0087] Step 402, in response to determining that the data upload request passes the front-end verification, collect device information, location information, and time information.
[0088] Step 403, perform multiple verifications on the data upload request in terms of device dimension, location dimension, and time dimension according to the device information, location information, and time information.
[0089] Step 404, in response to determining that the data upload request passes the multiple verifications, perform server-side verification on the target data corresponding to the data upload request.
[0090] Step 405, in response to determining that the data upload request passes the server-side verification, receive the target data corresponding to the data upload request.
[0091] Step 406, in response to determining that the data upload request fails to pass the verification, prohibit receiving the target data corresponding to the data upload request.
[0092] It can be seen from this embodiment that compared with the Figure 2 corresponding embodiment, the flowchart 400 of the data verification method in this embodiment specifically describes the process of verifying data upload by combining three verification methods: front-end verification, multiple verifications, and server-side verification, further improving the verification accuracy and the security of the data upload process.
[0093] Continue to refer to Figure 5 , as an implementation of the methods shown in the above figures, the present disclosure provides an embodiment of a data verification device. This device embodiment corresponds to the Figure 2 shown method embodiment and can be specifically applied to various electronic devices.
[0094] As shown in Figure 5As shown in the figure, the data verification device includes: a collection unit 501, configured to collect the device information, location information, and time information of the target device in response to determining that a data upload request from the target device is received; a verification unit 502, configured to perform multiple verifications on the data upload request in terms of device dimension, location dimension, and time dimension based on the device information, location information, and time information; and a determination unit 503, configured to determine whether to receive the target data corresponding to the data upload request according to the verification result.
[0095] In some alternative implementation manners of this embodiment, the verification unit 502 is further configured to: for the user account corresponding to the data upload request, combine the device information, location information, and time information corresponding to each time the user account issues a data upload request, and perform multiple verifications on the data upload request in terms of device dimension, location dimension, and time dimension to obtain a verification result.
[0096] In some alternative implementation manners of this embodiment, the verification unit 502 is further configured to: for the user account corresponding to the data upload request, combine the device information, location information, and time information corresponding to each time the user account issues a data upload request, and determine whether there are preset unreasonable situations for the user account in terms of device dimension, location dimension, and time dimension; in response to determining that there are, determine that the data upload request fails the multiple verifications.
[0097] In some alternative implementation manners of this embodiment, the verification unit 502 is further configured to: in response to determining that there are none, determine that the data upload request passes the multiple verifications.
[0098] In some alternative implementation manners of this embodiment, the collection unit 501 is further configured to: in response to determining that a data upload request from the target device is received, perform a front-end verification on the target data corresponding to the data upload request; in response to determining that the data upload request passes the front-end verification, collect the device information, location information, and time information.
[0099] In some alternative implementation manners of this embodiment, the determination unit 503 is further configured to: in response to determining that the data upload request passes the multiple verifications, perform a server-side verification on the target data corresponding to the data upload request; in response to determining that the data upload request passes the server-side verification, receive the target data corresponding to the data upload request.
[0100] In some alternative implementation manners of this embodiment, the determination unit 503 is further configured to, in response to determining that the data upload request fails the verification, prohibit receiving the target data corresponding to the data upload request.
[0101] In this embodiment, a data verification device is provided, which collects the device information, location information, and time information of the target device that issues a data upload request, so as to perform multiple verifications on the data upload request in terms of device dimension, location dimension, and time dimension, and determine whether to receive the target data corresponding to the data upload request according to the verification result, improving the accuracy of data verification and the security of the data upload process.
[0102] According to an embodiment of the present disclosure, the present disclosure also provides an electronic device, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein, the memory stores instructions executable by the at least one processor, and when the instructions are executed by the at least one processor, the at least one processor is enabled to implement the data verification method described in any of the above embodiments.
[0103] According to an embodiment of the present disclosure, the present disclosure also provides a readable storage medium, which stores computer instructions, and when the computer instructions are used to cause a computer to execute, the computer is enabled to implement the data verification method described in any of the above embodiments.
[0104] The embodiments of the present disclosure provide a computer program product, which can implement the data verification method described in any of the above embodiments when executed by a processor.
[0105] Figure 6 FIG. shows a schematic block diagram of an exemplary electronic device 600 that can be used to implement the embodiments of the present disclosure. The electronic device is intended to represent various forms of digital computers, such as, a laptop computer, a desktop computer, a workbench, a personal digital assistant, a server, a blade server, a mainframe computer, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as, a personal digital processor, a cellular phone, a smart phone, a wearable device, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely exemplary and are not intended to limit the implementation of the present disclosure described and / or claimed herein.
[0106] As Figure 6 shown, the device 600 includes a computing unit 601, which can execute various appropriate actions and processes according to the computer program stored in the read-only memory (ROM) 602 or the computer program loaded from the storage unit 608 into the random access memory (RAM) 603. In the RAM 603, various programs and data required for the operation of the device 600 can also be stored. The computing unit 601, the ROM 602, and the RAM 603 are connected to each other through a bus 604. The input / output (I / O) interface 605 is also connected to the bus 604.
[0107] Multiple components in device 600 are connected to I / O interface 605, including: input unit 606, such as a keyboard, mouse, etc.; output unit 607, such as various types of displays, speakers, etc.; storage unit 608, such as a disk, optical disc, etc.; and communication unit 609, such as a network card, modem, wireless communication transceiver, etc. Communication unit 609 allows device 600 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.
[0108] Computing unit 601 can be various general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of computing unit 601 include but are not limited to a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. Computing unit 601 executes the various methods and processes described above, such as the data verification method. For example, in some embodiments, the data verification method can be implemented as a computer software program tangibly embodied in a machine-readable medium, such as storage unit 608. In some embodiments, part or all of the computer program can be loaded and / or installed onto device 600 via ROM 602 and / or communication unit 609. When the computer program is loaded into RAM 603 and executed by computing unit 601, one or more steps of the data verification method described above can be executed. Alternatively, in other embodiments, computing unit 601 can be configured to execute the data verification method by any other suitable means (e.g., by means of firmware).
[0109] The various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuitry, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SOCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include: implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special or general-purpose programmable processor, and can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit the data and instructions to the storage system, the at least one input device, and the at least one output device.
[0110] The program code for implementing the methods of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable data processing device, such that the program codes, when executed by the processor or controller, cause the functions / operations specified in the flowchart and / or block diagram to be implemented. The program code may execute entirely on the machine, partly on the machine, as a stand-alone software package partly on the machine and partly on a remote machine, or entirely on the remote machine or server.
[0111] In the context of the present disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0112] In order to provide interaction with a user, the systems and techniques described herein may be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the computer. Other kinds of devices may also be used to provide interaction with the user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form (including acoustic input, voice input, or tactile input).
[0113] The systems and techniques described herein can be implemented in a computing system including backend components (e.g., as a data server), or a computing system including middleware components (e.g., an application server), or a computing system including frontend components (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described herein), or a computing system including any combination of such backend components, middleware components, or frontend components. The components of the system can be interconnected with each other by digital data communication in any form or medium (e.g., a communication network). Examples of communication networks include: local area network (LAN), wide area network (WAN), and the Internet.
[0114] A computer system can include clients and servers. The clients and servers are generally far from each other and usually interact through a communication network. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. A server can be a cloud server, also known as a cloud computing server or a cloud host, which is a host product in the cloud computing service system to solve the defects of difficult management and weak business scalability existing in traditional physical hosts and virtual private server (VPS, Virtual Private Server) services; it can also be a server of a distributed system, or a server combined with blockchain.
[0115] According to the technical solution of the embodiment of the present disclosure, a data verification method is provided, which collects the device information, location information, and time information of a target device that issues a data upload request to perform multiple verifications on the data upload request in terms of device dimension, location dimension, and time dimension, so as to determine whether to receive the target data corresponding to the data upload request according to the verification result, improving the accuracy of data verification and the security of the data upload process.
[0116] It should be understood that various forms of the processes shown above can be used, with steps reordered, added, or deleted. For example, the steps recited in the present disclosure can be executed in parallel, sequentially, or in a different order, as long as the desired results of the technical solution provided by the present disclosure can be achieved, and no limitation is imposed herein.
[0117] The above specific implementation manners do not constitute a limitation on the protection scope of the present disclosure. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principle of the present disclosure shall be included within the protection scope of the present disclosure.
Claims
1. A data verification method, including: In response to determining that a data upload request from a target device is received, collecting device information, location information, and time information of the target device; According to the device information, the location information, and the time information, performing multiple verifications on the data upload request in terms of device dimension, location dimension, and time dimension to obtain a verification result, including: determining a set of device information, a set of location information, and a set of time information corresponding to the user account that issues the data upload request, where the set of device information, the set of location information, and the set of time information respectively include device information of devices authorized by the user account to log in, the location range where the user is usually located, and the time range when data upload operations are usually performed; based on the judgment result of whether the device information is included in the set of device information, the judgment result of whether the location information is included in the set of location information, and the judgment result of whether the time information is included in the set of time information, determining the verification result; According to the verification result, determining whether to receive the target data corresponding to the data upload request.
2. The method according to claim 1, wherein, The step of performing multiple verifications on the data upload request in terms of device dimension, location dimension, and time dimension according to the device information, the location information, and the time information to obtain a verification result further includes: Based on the device information, location information, and time information corresponding to each time the user account issues a data upload request, performing multiple verifications on the data upload request in terms of device dimension, location dimension, and time dimension to obtain the verification result.
3. The method according to claim 2, wherein, The step of performing multiple verifications on the data upload request in terms of device dimension, location dimension, and time dimension based on the device information, location information, and time information corresponding to each time the user account issues a data upload request to obtain the verification result includes: Based on the device information, location information, and time information corresponding to each time the user account issues a data upload request, determining whether there are preset unreasonable situations in the device dimension, location dimension, and time dimension of the user account, where the preset unreasonable situations include: multiple target devices exceeding a preset quantity threshold sending multiple data upload requests at the same time and at the same location; In response to determining the existence, determining that the data upload request fails the multiple verifications.
4. The method according to claim 3, wherein, The step of performing multiple verifications on the data upload request in terms of device dimension, location dimension, and time dimension based on the device information, location information, and time information corresponding to each time the user account issues a data upload request to obtain the verification result further includes: In response to determining the non - existence, determining that the data upload request passes the multiple verifications.
5. The method according to claim 1, wherein, The step of, in response to determining that a data upload request from a target device is received, collecting device information, location information, and time information of the target device includes: In response to determining that the data upload request of the target device is received, perform front-end verification on the target data corresponding to the data upload request; In response to determining that the data upload request passes the front-end verification, collect the device information, the location information, and the time information.
6. The method according to claim 1, wherein, determining whether to receive the target data corresponding to the data upload request according to the verification result includes: In response to determining that the data upload request passes multiple verifications, perform server-side verification on the target data corresponding to the data upload request; In response to determining that the data upload request passes the server-side verification, receive the target data corresponding to the data upload request.
7. The method according to claim 6, wherein, determining whether to receive the target data corresponding to the data upload request according to the verification result further includes: In response to determining that the data upload request fails the verification, prohibit receiving the target data corresponding to the data upload request.
8. A data verification device, comprising: a collection unit configured to collect the device information, location information, and time information of the target device in response to determining that a data upload request of the target device is received; a verification unit configured to perform multiple verifications on the data upload request in terms of device dimension, location dimension, and time dimension according to the device information, the location information, and the time information, to obtain a verification result, including: determining a set of device information, a set of location information, and a set of time information corresponding to the user account that issues the data upload request, wherein the set of device information, the set of location information, and the set of time information respectively include the device information of the devices authorized by the user account to log in, the location range where the user is usually located, and the time range when data upload operations are usually performed; based on the judgment result of whether the device information set contains the device information, the judgment result of whether the location information set contains the location information, and the judgment result of whether the time information set contains the time information, determine the verification result; a determination unit configured to determine whether to receive the target data corresponding to the data upload request according to the verification result.
9. The device according to claim 8, wherein, the verification unit is further configured to: Based on the device information, location information, and time information corresponding to each data upload request issued by the user account, perform multiple verifications on the data upload request in terms of device dimension, location dimension, and time dimension, to obtain the verification result.
10. The device according to claim 9, wherein, the verification unit is further configured to: Based on the device information, location information, and time information corresponding to each data upload request issued by the user account, determine whether there are preset unreasonable situations in the device dimension, location dimension, and time dimension of the user account, and the preset unreasonable situations include: multiple target devices exceeding a preset quantity threshold issuing multiple data upload requests at the same time and at the same location; in response to determining that there are, determine that the data upload request fails the multiple verifications.
11. The apparatus according to claim 10, wherein, the verification unit is further configured to: in response to determining non-existence, determine that the data upload request passes multiple verifications.
12. The apparatus according to claim 8, wherein, the acquisition unit is further configured to: in response to determining that the data upload request of the target device is received, perform front-end verification on the target data corresponding to the data upload request; in response to determining that the data upload request passes the front-end verification, acquire the device information, the location information, and the time information.
13. The apparatus according to claim 8, wherein, the determination unit is further configured to: in response to determining that the data upload request passes multiple verifications, perform server-side verification on the target data corresponding to the data upload request; in response to determining that the data upload request passes the server-side verification, receive the target data corresponding to the data upload request.
14. The apparatus according to claim 13, wherein, the determination unit is further configured to: in response to determining that the data upload request fails the verification, prohibit receiving the target data corresponding to the data upload request.
15. An electronic device, characterized in that, it includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein, the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the method according to any one of claims 1-7.
16. A non-transitory computer-readable storage medium storing computer instructions, characterized in that, the computer instructions are used to cause the computer to execute the method according to any one of claims 1-7.
17. A computer program product, including: a computer program, which when executed by a processor implements the method according to any one of claims 1-7.
Citation Information
Patent Citations
UWB-based positioning method, UWB device and positioning system
CN112367612A