Data processing method, computer device and storage medium

Through multi-layer encryption processing and dynamic selection encryption algorithm methods, the problems of multiple computing resources, high power consumption and large delay in data transmission in scenarios such as the Internet of Things are solved, and data integrity verification and security guarantee are realized. It is suitable for low-level Power consumption and low latency scenarios.

CN119210766APending Publication Date: 2024-12-27IPLOOK NETWORKS CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411136332.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-19
Publication Date
2024-12-27

AI Technical Summary

Technical Problem

In data transmission, due to the large computing resources, high power consumption and large latency, it is difficult to effectively ensure data integrity in low power consumption and low latency scenarios such as the Internet of Things.

Method used

Using multi-layer encryption processing method, including obtaining original data, attaching data for multiple encryption processing, and selecting symmetric or asymmetric encryption algorithms based on the data volume, sending original data, first encrypted data and third encrypted data, and the receiver decrypts it Data Verify data integrity.

Benefits of technology

It improves the success rate and security of data transmission, reduces the demand for computing resources, and is suitable for low-power and low-latency scenarios such as the Internet of Things.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119210766A_ABST
    Figure CN119210766A_ABST
Patent Text Reader

Abstract

The invention discloses a data processing method, a computer device and a storage medium, and the method comprises the steps: carrying out first encryption processing on additional data to obtain first encrypted data, carrying out second encryption processing on original data and the first encrypted data to obtain second encrypted data, and performing third encryption processing on the second encrypted data to obtain a third encrypted number, and the like. The data receiving end can check the data integrity of the original data according to the first encrypted data and the third encrypted data, the data transmission success rate and efficiency can be guaranteed, the data transmission safety is guaranteed, few computing resources are needed, the light weight of an algorithm is facilitated, and the data transmission efficiency is improved. Therefore, the method can be applied to scenes with low power consumption and low delay requirements, such as the Internet of Things; the method can accurately verify the integrity of the received data, needs few computing resources, is high in efficiency, is low in energy consumption, and is suitable for occasions with low power consumption and low delay requirements, such as the Internet of Things. The method is widely applied to the technical field of computers.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer technology, and in particular to a data processing method, a computer device and a storage medium. Background Art

[0002] During the data transmission process, the integrity of the data may be affected due to noise interference or malicious attacks. For example, the original data may be interfered with by noise during the transmission process, and errors may occur, so that the amount of data received by the receiving end is less than the amount of the original data, or it cannot be restored to the same content as the original data, and becomes garbled data with no practical meaning; the original data is intercepted by the middleman during the transmission process, and the middleman maliciously modifies the original data after eavesdropping on the original data, and the receiving end receives the modified data. In this way, although the content obtained by the receiving end may be meaningful, it is different from the content of the original data, resulting in consequences such as network attacks.

[0003] Therefore, in order to successfully transmit data and protect data transmission security, it is necessary to ensure data integrity during data transmission. At present, some related technologies use the characteristics of blockchain technology such as immutability and decentralization to transmit data using blockchain technology to ensure data integrity. However, blockchain technology consumes more computing resources and is not suitable for low-power applications such as the Internet of Things. Moreover, the implementation of blockchain technology often causes large delays, which does not match the requirements of high speed and low latency in applications such as the Internet of Things. Summary of the invention

[0004] In view of the technical problems that the current data integrity protection related technologies require a lot of computing resources, high power consumption, and large delays, the purpose of the present invention is to provide a data processing method, a computer device, and a storage medium.

[0005] In one aspect, an embodiment of the present invention includes a data processing method, the data processing method comprising the following steps:

[0006] Get the original data;

[0007] Get additional data;

[0008] Performing a first encryption process on the additional data to obtain first encrypted data;

[0009] Performing a second encryption process on the original data and the first encrypted data to obtain second encrypted data;

[0010] Perform a third encryption process on the second encrypted data to obtain third encrypted data.

[0011] Furthermore, the data processing method further includes:

[0012] The original data, the first encrypted data and the third encrypted data are sent to a data receiving end.

[0013] Further, sending the original data, the first encrypted data, and the third encrypted data to a data receiving end includes:

[0014] Performing a fourth encryption process on the original data to obtain fourth encrypted data;

[0015] The fourth encrypted data, the first encrypted data and the third encrypted data are sent to a data receiving end.

[0016] Further, the obtaining of additional data includes:

[0017] generating a random number as the additional data;

[0018] or

[0019] Performing hash processing on the original data to obtain a hash value of the original data as the additional data;

[0020] or

[0021] The sending time information and the expected receiving time information of the original data are acquired, and the additional data is generated according to the sending time information and the expected receiving time information.

[0022] Further, performing a third encryption process on the second encrypted data to obtain third encrypted data includes:

[0023] Determine a third encryption algorithm according to the original data;

[0024] The second encrypted data is subjected to a third encryption process using the third encryption algorithm to obtain the third encrypted data.

[0025] Further, determining a third encryption algorithm according to the original data includes:

[0026] Set data volume threshold;

[0027] Acquire the data volume of the original data;

[0028] When the amount of the original data is greater than the data amount threshold, using a symmetric encryption algorithm as the third encryption algorithm;

[0029] When the data volume of the original data is less than or equal to the data volume threshold, an asymmetric encryption algorithm is used as the third encryption algorithm.

[0030] On the other hand, an embodiment of the present invention further includes a data processing method, which is applied to a data receiving end. The data processing method includes:

[0031] Receiving original data, first encrypted data and third encrypted data; the original data, the first encrypted data and the third encrypted data are obtained by a data processing method applied to a data sending end;

[0032] Performing a first decryption process on the first encrypted data to obtain first decrypted data;

[0033] Performing a second decryption process on the original data and the first decrypted data to obtain second decrypted data;

[0034] Performing a third decryption process on the third encrypted data to obtain third decrypted data;

[0035] The integrity of the original data is determined according to the second decrypted data and the third decrypted data.

[0036] Further, determining the integrity of the original data according to the second decrypted data and the third decrypted data includes:

[0037] comparing the second decrypted data with the third decrypted data;

[0038] When the second decrypted data is consistent with the third decrypted data, it is determined that the original data is complete;

[0039] When the second decrypted data is inconsistent with the third decrypted data, it is determined that the original data is incomplete.

[0040] On the other hand, an embodiment of the present invention also includes a computer device, including a memory and a processor, the memory is used to store at least one program, and the processor is used to load at least one program to execute the data processing method in the embodiment.

[0041] On the other hand, an embodiment of the present invention further includes a computer-readable storage medium, in which a program executable by a processor is stored. When the program executable by the processor is executed by the processor, it is used to execute the data processing method in the embodiment.

[0042] The beneficial effects of the present invention are as follows: the data processing method applied to the data sending end in the embodiment enables the data receiving end to verify the data integrity of the original data based on the first encrypted data and the third encrypted data, which is beneficial to ensuring the success rate and efficiency of data transmission, ensuring the security of data transmission, requiring fewer computing resources, and being beneficial to the lightweight algorithm, so that it can be applied in scenarios with low power consumption and low latency requirements such as the Internet of Things; the data processing method applied to the data receiving end in the embodiment can accurately verify the integrity of the received data, requires fewer computing resources, has high efficiency and low energy consumption, and is suitable for occasions with low power consumption and low latency requirements such as the Internet of Things. BRIEF DESCRIPTION OF THE DRAWINGS

[0043] Figure 1 is a schematic diagram of the structure of a communication system to which the data processing method can be applied in the embodiment;

[0044] Figure 2 A schematic diagram of the steps of a data processing method applied to a data sending end in an embodiment;

[0045] Figure 3 Schematic diagram of the steps of the data processing method applied to the data receiving end in the embodiment. DETAILED DESCRIPTION

[0046] Terminology explanation:

[0047] Symmetric encryption algorithm: also called private key encryption algorithm, refers to an encryption algorithm that uses the same key for encryption and decryption, sometimes called a traditional cryptographic algorithm, that is, the encryption key can be deduced from the decryption key, and the decryption key can also be deduced from the encryption key; in most symmetric algorithms, the encryption key and the decryption key are the same, so this encryption algorithm is also called a secret key algorithm or a single key algorithm; symmetric encryption algorithms require the sender and receiver to agree on a key before secure communication. The security of symmetric algorithms depends on the key, and leaking the key means that anyone can decrypt the messages they send or receive;

[0048] Asymmetric encryption algorithm: refers to an encryption algorithm that uses different keys for encryption and decryption. Generally speaking, a public key is used for encryption and a private key is used for decryption. The public key can be made public to anyone, while the private key is known only to specific people.

[0049] Hash algorithm: Hash algorithm is an algorithm that transforms input of any length into output of fixed length through a hash algorithm;

[0050] AES: Advanced Encryption Standard, a symmetric encryption algorithm;

[0051] RSA: is an asymmetric encryption algorithm;

[0052] MD5: MD5 Message-Digest Algorithm, a cryptographic hash function, is a type of hash algorithm that can generate a 128-bit (16-byte) hash value for input of any length.

[0053] SHA256: It is an algorithm in the Secure Hash Algorithm (SHA) family. It is a type of hash algorithm that can calculate a fixed-length string (also known as a message digest) corresponding to a digital message.

[0054] In this embodiment, the data processing method can be applied to Figure 1 In the communication system shown.

[0055] Reference Figure 1 The communication network system includes a data sending end and a data receiving end, and a communication connection is established between the data sending end and the data receiving end through a transmission medium.

[0056] Specifically, the data sending end can be a mobile phone, tablet computer, distributed sensor unit and other devices with data collection and transmission functions, and the data receiving end can be a mobile phone, tablet computer, base station, gateway, server, core network and other devices with data transmission and processing functions.

[0057] In this embodiment, the data sending end is a device in the form of performing a data sending function. This device may also have a data receiving function, that is, the same device may be used as a data receiving end in other tasks. Similarly, the data receiving end has similar properties. The data sending end and the data receiving end may be different software programs in the same device.

[0058] In this embodiment, an Internet of Things sensor is used as an example of a data sending end, and an Internet of Things server is used as an example of a data receiving end for description. Figure 1 In the communication, the transmission medium may be a data line or air, that is, the data sending end and the data receiving end may communicate via a wired communication protocol or a wireless communication protocol.

[0059] In this embodiment, it is assumed that before executing each step in the data processing method, the data sending end and the data receiving end have made necessary preparations for communication. For example, a physical layer connection is established between the data sender and the data receiver, and the communication protocol used for communication is confirmed; the encryption key is negotiated between the data sender and the data receiver, so that the data sender can run a symmetric encryption algorithm, encrypt data using the negotiated encryption key and send it to the data receiver, and the data receiver can use the encryption key for decryption; the public key and private key are negotiated between the data sender and the data receiver, so that the data sender can run an asymmetric encryption algorithm, encrypt data using the negotiated public key and send it to the data receiver, and the data receiver can use the private key for decryption; the data (original data) that the data sender needs to send to the data receiver is located in a limited space, and the output space of the hash algorithm is negotiated between the data sender and the data receiver, that is, when the data sender uses the hash algorithm to encrypt the data, the output value will be limited to a specific space, and this specific space has been negotiated with the data receiver in advance, and the original data is also in a limited space, so that after the data receiver receives the hash algorithm encryption result sent by the data sender, it can find and restore the data before encryption, that is, the original data, from the corresponding relationship between the two specific spaces to achieve the inverse operation of the hash algorithm.

[0060] In this embodiment, the data processing method executed by the data sending end is as follows: Figure 2 As shown, the following steps are included:

[0061] P1. Get the original data;

[0062] P2. Get additional data;

[0063] P3 performs a first encryption process on the additional data to obtain the first encrypted data;

[0064] P4. Perform a second encryption process on the original data and the first encrypted data to obtain a second encrypted data;

[0065] P5. Perform a third encryption process on the second encrypted data to obtain third encrypted data.

[0066] In this embodiment, refer to Figure 1 The data sending end is provided with a data acquisition module and an encryption module. The data acquisition module can execute step P1, and the encryption module can execute steps P2-P5.

[0067] In step P1, taking the IoT sensor as an example, the IoT sensor can collect raw data A through its data collection function, and hopes to send the raw data A to the data receiving end, that is, in this embodiment, the raw data A is the main part of the data to be sent.

[0068] In step P2, the data sending end may obtain the additional data a by table lookup or generation, etc. The content of the additional data a may be related to the original data A, or may be unrelated to the original data A.

[0069] In step P3, the data sending end runs the first encryption algorithm f1() to perform a first encryption process on the additional data a obtained in step P2, thereby obtaining the first encrypted data H. That is, in this embodiment, the first encrypted data H can be obtained by the following process:

[0070] H=f1(a)

[0071] In this embodiment, the first encryption algorithm f1() used for the first encryption process may be a symmetric encryption algorithm, an asymmetric encryption algorithm, or a hash algorithm.

[0072] In step P4, the data sending end runs the second encryption algorithm f2(), performs a second encryption process on the original data A obtained in step P1 and the first encrypted data H obtained in step P3, and obtains the second encrypted data B. That is, in this embodiment, the second encrypted data B can be obtained by the following process:

[0073] B=f2(A,H)

[0074] In this embodiment, the second encryption algorithm f2() used for the second encryption process may be a symmetric encryption algorithm, an asymmetric encryption algorithm, or a hash algorithm.

[0075] In step P5, the data sending end runs the third encryption algorithm f3(), performs the third encryption processing on the second encrypted data B obtained in step P4, and obtains the third encrypted data C. That is, in this embodiment, the third encrypted data C can be obtained by the following processing:

[0076] C=f3(B)

[0077] In this embodiment, the third encryption algorithm f3() used for the third encryption process may be a symmetric encryption algorithm, an asymmetric encryption algorithm, or a hash algorithm.

[0078] In this embodiment, by executing steps P1-P5 by the data sending end, the obtained original data A, first encrypted data H and third encrypted data C can be sent to the data receiving end, so that the data receiving end can verify the data integrity of the original data A according to the first encrypted data H and the third encrypted data C, and judge whether the original data A is complete or tampered with through the data integrity check result, which is conducive to ensuring the success rate and efficiency of data transmission and ensuring the security of data transmission; the computing resources required to execute steps P1-P5 are relatively small, which is conducive to the lightweight algorithm, so that it can be applied in scenarios with low power consumption and low latency requirements such as the Internet of Things.

[0079] In this embodiment, when the data sending end executes step P3 to perform the first encryption process, the first encryption algorithm f1() used may be a hash algorithm, such as the MD5 algorithm. That is, in this embodiment, the first encrypted data H may be obtained by the following process:

[0080] H=MD5(a)

[0081] In this embodiment, when the data sending end executes step P4 to perform the second encryption process, the second encryption algorithm f2() used may be a hash algorithm, such as the SHA256 algorithm. For example, in this embodiment, the second encrypted data B may be obtained by the following process:

[0082] B=SHA256[SHA256(A)+H]

[0083] or

[0084] B = SHA256[SHA256(A)+a]

[0085] In this embodiment, when the data sending end executes step P5, that is, the step of performing the third encryption process on the second encrypted data to obtain the third encrypted data, the following steps may be specifically performed:

[0086] P501. Determine the third encryption algorithm based on the original data;

[0087] P502. Use the third encryption algorithm to perform a third encryption process on the second encrypted data to obtain third encrypted data.

[0088] In step P501, the data sending end determines the specific type of the third encryption algorithm f3() to be used according to the properties of the original data A.

[0089] For example, the data sending end can set a data volume threshold (for example, 1KB) and obtain the data volume of the original data A. If the data volume of the original data A is greater than the data volume threshold, then it can be determined that the data volume of the original data A is large, and a symmetric encryption algorithm (for example, AES algorithm) is used as the third encryption algorithm f3(); if the data volume of the original data A is less than or equal to the data volume threshold, then it can be determined that the data volume of the original data A is large, and an asymmetric encryption algorithm (for example, RSA algorithm) is used as the third encryption algorithm f3().

[0090] Therefore, in step P502, if the amount of original data A is large, the third encrypted data C can be obtained by the following processing:

[0091] C=AES(B)

[0092] If the amount of original data A is small, the third encrypted data C can be obtained by the following processing:

[0093] C=RSA(B)

[0094] In this embodiment, by executing steps P501-P502, a suitable third encryption algorithm can be selected, taking advantage of the characteristics of the symmetric encryption algorithm being faster and the asymmetric encryption algorithm being slower, so as to match the size of the original data A to be processed.

[0095] In this embodiment, when the data sending end executes step P2, that is, the step of obtaining additional data, the following steps may be specifically performed:

[0096] P201A. Generate a random number as additional data;

[0097] or

[0098] P201B. Hash the original data to obtain the hash value of the original data as additional data;

[0099] or

[0100] P201C. Obtain the sending time information and the expected receiving time information of the original data, and generate additional data based on the sending time information and the expected receiving time information.

[0101] Step P201A, step P201B and step P201C are three independent ways of obtaining additional data a.

[0102] In step P201A, the data transmitting end may generate a random number as additional data a. By executing step P201A, the pseudo-randomness of the random number is utilized, that is, the probability of the additional data a being repeated is extremely low, so such additional data a is used as the subsequent first encryption process, the second encryption process, the third encryption process, and other encryption processes, which is conducive to enhancing the anti-attack performance.

[0103] In step P201B, the data sending end may perform hash processing on the original data A, and use the obtained hash value of the original data as the additional data a, that is, the additional data a may be obtained by the following processing:

[0104] a=HASH(A)

[0105] In step P201B, the obtained additional data a is related to the original data A, and the additional data a can be quickly acquired.

[0106] In step P201C, for the original data A, even if the original data A is not actually sent out, the data sending end can accurately determine the time when the original data A is sent out, thereby obtaining the sending time information t of the original data A. send , and because the data transmission rate and delay between the data transmitter and the data receiver can be estimated under normal circumstances, the data transmitter can estimate the send When sending original data A, the time when the data receiving end can receive the original data A, thereby obtaining the estimated receiving time information t of the original data A received , the data sender can make a loose estimate, so that the expected receiving time information t received is relatively late, so that the estimated receiving time information t received It is possible to be after the actual receiving time with a high probability; the data sending end can send the data according to the sending time information t send and the estimated receiving time information t received Generate additional data a. Specifically, the data sender can use a hash algorithm to send the time information t send and the estimated receiving time information t received Processing is performed to obtain additional data a, that is, additional data a can be obtained by the following processing:

[0107] a=HASH(t send , t received )

[0108] In step P201C, since the sending time information t of the original data A send Related to the data sending task, it is random, and similarly, the expected receiving time information t received It is also random, and the expected receiving time information t receivedIt is obtained based on the parameters between the data sending end and the data receiving end, which eliminates the influence of the middleman. Therefore, the additional data a is obtained by executing step P201C. On the one hand, it has randomness, and on the other hand, it has the characteristics that the middleman does not comply with or understand, which is conducive to avoiding the risk of interception and tampering by the middleman.

[0109] In this embodiment, after executing steps P1-P5, the data sending end may further execute the following steps:

[0110] P6. Send the original data, the first encrypted data and the third encrypted data to the data receiving end.

[0111] In this embodiment, when executing step P6, the data sending end may send the plain text of the original data A, the first encrypted data H and the third encrypted data C to the data receiving end.

[0112] In this embodiment, when the data sending end executes step P6, that is, the step of sending the original data, the first encrypted data and the third encrypted data to the data receiving end, the following steps may be specifically performed:

[0113] P601. Perform a fourth encryption process on the original data to obtain fourth encrypted data;

[0114] P602. Send the fourth encrypted data, the first encrypted data and the third encrypted data to the data receiving end.

[0115] In this embodiment, the data sending end executes step P601 to perform a fourth encryption process on the original data A, thereby obtaining fourth encrypted data, where the fourth encrypted data is the ciphertext of the original data A.

[0116] The data sending end executes step P602 to send the fourth encrypted data, the first encrypted data H and the third encrypted data C to the data receiving end, that is, the data sending end sends the plaintext of the original data A, the first encrypted data H and the third encrypted data C to the data receiving end.

[0117] By executing steps P601-P602, the data sending end sends the ciphertext of the original data A to the data receiving end instead of the plaintext, which is conducive to ensuring the transmission security of the original data A.

[0118] In this embodiment, after the data sending end executes steps P1-P5, step P6 is executed to send out the original data A, the first encrypted data H and the third encrypted data C. Next, the data receiving end executes the data processing method.

[0119] In this embodiment, the data processing method executed by the data receiving end is as follows: Figure 3 As shown, the following steps are included:

[0120] S1. Receive original data, first encrypted data and third encrypted data;

[0121] S2. Perform a first decryption process on the first encrypted data to obtain first decrypted data;

[0122] S3. Perform a second decryption process on the original data and the first decrypted data to obtain the second decrypted data;

[0123] S4. Perform a third decryption process on the third encrypted data to obtain third decrypted data;

[0124] S5. Determine the integrity of the original data based on the second decrypted data and the third decrypted data.

[0125] In this embodiment, refer to Figure 1 , an integrity verification module is provided in the data receiving end, and steps S1-S5 can be executed by the integrity verification module.

[0126] In step S1, the original data A, the first encrypted data H and the third encrypted data C received by the data receiving end are obtained by the data sending end by executing steps P1-P5 and are sent by executing step P6.

[0127] In step S2, the data receiving end runs the first decryption algorithm The first encrypted data H obtained in step S1 is subjected to a first decryption process to obtain first decrypted data I. That is, in this embodiment, the first decrypted data can be obtained by the following process:

[0128]

[0129] In this embodiment, the first decryption algorithm used in step S2 The first encryption algorithm f1() used in step P3 may belong to the same set of algorithms, and the first decryption algorithm It is the inverse operation of the first encryption algorithm f1().

[0130] In step S3, the data receiving end runs the second decryption algorithm The original data A obtained in step S1 and the first decrypted data obtained in step S2 are subjected to a second decryption process to obtain the second decrypted data J. That is, in this embodiment, the second decrypted data J can be obtained by the following process:

[0131]

[0132] In this embodiment, the second decryption algorithm used in step S3 The second encryption algorithm f2() used in step P4 may belong to the same set of algorithms, and the second decryption algorithm It is the inverse operation of the second encryption algorithm f2().

[0133] In step S4, the data receiving end runs the third decryption algorithm The third encrypted data C obtained in step S1 is subjected to a third decryption process to obtain third decrypted data Q. That is, in this embodiment, the third decrypted data Q can be obtained by the following process:

[0134]

[0135] In this embodiment, the third decryption algorithm used in step S4 The third encryption algorithm f3() used in step P5 may belong to the same set of algorithms, and the third decryption algorithm It is the inverse operation of the third encryption algorithm f3().

[0136] After executing step S3 to obtain the second decrypted data J and executing step S4 to obtain the third decrypted data Q, the data receiving end executes step S5 to verify the integrity of the received original data A based on the second decrypted data and the third decrypted data Q.

[0137] In this embodiment, when the data receiving end executes step S5, that is, the step of determining the integrity of the original data according to the second decrypted data and the third decrypted data, the following steps may be specifically performed:

[0138] S501. Compare the second decrypted data with the third decrypted data;

[0139] S502. When the second decrypted data is consistent with the third decrypted data, it is determined that the original data is complete;

[0140] S503. When the second decrypted data is inconsistent with the third decrypted data, it is determined that the original data is incomplete.

[0141] In step S501, the data receiving end can compare the second decrypted data obtained in step S3 with the third decrypted data Q obtained in step S4 bit by bit; if the second decrypted data J and the third decrypted data Q have the same number of bits, and the value of each bit in the same order is the same, then the second decrypted data is determined to be consistent with the third decrypted data Q; if the second decrypted data J and the third decrypted data Q have different number of bits, or the second decrypted data J and the third decrypted data Q have at least one bit in the same order that has a different value, then the second decrypted data is determined to be inconsistent with the third decrypted data Q.

[0142] If step S501 is executed to determine that the second decrypted data is consistent with the third decrypted data Q, then the data receiving end executes step S502 to determine that the original data A is complete; if step S501 is executed to determine that the second decrypted data is inconsistent with the third decrypted data Q, then the data receiving end executes step S503 to determine that the original data A is incomplete, that is, the original data A may have been lost, erroneous or tampered with during the transmission process.

[0143] In this embodiment, the principle of executing steps S1-S5 is that if an event that destroys the integrity (such as noise interference or malicious attack, etc.) occurs during the transmission of the original data A, the first encrypted data H, and the third encrypted data C, resulting in changes in one or more of the original data A, the first encrypted data H, and the third encrypted data C, then the data receiving end may face the following situation when executing S1-S5:

[0144] ① If the original data A changes, and the first encrypted data H and the third encrypted data C remain unchanged, then since the second decrypted data is related to the original data A, the data receiving end will find that the second decrypted data J obtained by decrypting the original data A is inconsistent with the third decrypted data Q obtained by decrypting the third encrypted data C;

[0145] ② If the third encrypted data C changes, and the original data A and the first encrypted data H remain unchanged, then since the third decrypted data Q is related to the third encrypted data C, the data receiving end will find that the third decrypted data Q obtained by decrypting the third encrypted data C is inconsistent with the second decrypted data;

[0146] ③ If the first encrypted data H changes, and the original data A and the third encrypted data C remain unchanged, then since the second decrypted data is related to the first encrypted data H, the data receiving end will find that the first decrypted data obtained by decrypting the first encrypted data H, and the second decrypted data J obtained by further decryption, are inconsistent with the third decrypted data Q obtained by decrypting the third encrypted data C;

[0147] ④ If the original data A, the first encrypted data H and the third encrypted data C are all changed, then the second decrypted data and the third decrypted data Q will be affected, and the data receiving end will find that the second decrypted data J is inconsistent with the third decrypted data Q.

[0148] From the above four situations, it can be seen that if the original data A, the first encrypted data H or the third encrypted data C are changed during the transmission process, it can lead to the event of "the second decrypted data is inconsistent with the third decrypted data Q". Therefore, the data receiving end can determine that the integrity verification of the original data A, the first encrypted data H and / or the third encrypted data C fails when it detects that "the second decrypted data is inconsistent with the third decrypted data Q".

[0149] For example, the content of the original data A is abcde, the value of the first encrypted data H obtained by calculation is ee096cd31f4100d9c4e657676e32067d, and the value of the second encrypted data B is 36955434a4b801b3b93fc9270bcbf25b748f1c561c5a07c5e729e453708ef216. The data sending end sends the original data A, the first encrypted data H and the third encrypted data C to the data receiving end. In this process, the data a is attached as a ciphertext (i.e., the first encrypted data H is the encrypted data of the data receiving end). The first encrypted data H is transmitted in the form of first decrypted data I, thereby ensuring that the additional data a is not leaked; the data receiving end decrypts the first encrypted data H to obtain the first decrypted data I, thereby recovering the additional data a, and the first decrypted data I (additional data a) and the original data A, i.e., abcdef, are calculated by a hash function f(x) to obtain the second decrypted data K, and then the third encrypted data C is decrypted to obtain the third decrypted data Q. If the second decrypted data obtained is consistent with the third decrypted data Q, the integrity verification is passed; if the second decrypted data obtained is inconsistent with the third decrypted data Q, the integrity verification fails.

[0150] In this embodiment, the data receiving end executes steps S1-S5, which has the advantages of being able to accurately verify the integrity of the received data, requiring less computing resources, being highly efficient, and having low energy consumption, and is suitable for occasions such as the Internet of Things that require low power consumption and low latency.

[0151] A computer program that executes the data processing method in this embodiment can be written and written into a computer device or storage medium. When the computer program is read out and executed, the data processing method in this embodiment is executed, thereby achieving the same technical effect as the data processing method in the embodiment.

[0152] It should be noted that, unless otherwise specified, when a feature is referred to as being "fixed" or "connected" to another feature, it may be directly fixed or connected to the other feature, or it may be indirectly fixed or connected to the other feature. In addition, the descriptions of up, down, left, right, etc. used in the present disclosure are only relative to the relative positional relationship of the components of the present disclosure in the accompanying drawings. The singular forms of "a", "" and "the" used in the present disclosure are also intended to include the plural forms, unless the context clearly indicates other meanings. In addition, unless otherwise defined, all technical and scientific terms used in this embodiment have the same meaning as those generally understood by those skilled in the art. The terms used in the specification of this embodiment are only for describing specific embodiments and are not intended to limit the present invention. The term "and / or" used in this embodiment includes any combination of one or more related listed items.

[0153] It should be understood that, although the term first, second, third etc. may be adopted to describe various elements in the present disclosure, these elements should not be limited to these terms. These terms are only used to distinguish the same type of elements from each other. For example, without departing from the scope of the present disclosure, the first element may also be referred to as the second element, and similarly, the second element may also be referred to as the first element. The use of any and all examples or exemplary language ("for example", "such as" etc.) provided by the present embodiment is only intended to better illustrate embodiments of the present invention, and unless otherwise required, the scope of the present invention will not be limited.

[0154] It should be appreciated that embodiments of the present invention may be implemented or enforced by computer hardware, a combination of hardware and software, or by computer instructions stored in a non-transitory computer-readable memory. The method may be implemented in a computer program using standard programming techniques - including a non-transitory computer-readable storage medium configured with a computer program, wherein the storage medium so configured causes the computer to operate in a specific and predefined manner - according to the methods and drawings described in the specific embodiments. Each program may be implemented in a high-level procedural or object-oriented programming language to communicate with a computer system. However, if desired, the program may be implemented in assembly or machine language. In any case, the language may be a compiled or interpreted language. In addition, the program may be run on a programmed dedicated integrated circuit for this purpose.

[0155] In addition, the operations of the process described in this embodiment may be performed in any suitable order, unless otherwise indicated in this embodiment or otherwise clearly contradicted by the context. The process described in this embodiment (or variations and / or combinations thereof) may be performed under the control of one or more computer systems configured with executable instructions, and may be implemented as a code (e.g., executable instructions, one or more computer programs, or one or more applications) executed on one or more processors in common, by hardware or a combination thereof. A computer program includes a plurality of instructions that may be executed by one or more processors.

[0156] Further, the method can be implemented in any type of computing platform that is operably connected to a suitable computer, including but not limited to a personal computer, a minicomputer, a mainframe, a workstation, a network or distributed computing environment, a separate or integrated computer platform, or in communication with a charged particle tool or other imaging device, etc. Various aspects of the present invention can be implemented in machine-readable code stored on a non-transitory storage medium or device, whether removable or integrated into a computing platform, such as a hard disk, an optical read and / or write storage medium, a RAM, a ROM, etc., so that it can be read by a programmable computer, and when the storage medium or device is read by the computer, it can be used to configure and operate the computer to perform the process described herein. In addition, the machine-readable code, or part thereof, can be transmitted via a wired or wireless network. When such media includes instructions or programs that implement the above steps in conjunction with a microprocessor or other data processor, the invention of this embodiment includes these and other different types of non-transitory computer-readable storage media. When programmed according to the methods and techniques of the present invention, the present invention also includes the computer itself.

[0157] The computer program can be applied to input data to perform the functions of the present embodiment, thereby converting the input data to generate output data stored in a non-volatile memory. The output information can also be applied to one or more output devices such as a display. In a preferred embodiment of the present invention, the converted data represents a physical and tangible object, including a specific visual depiction of the physical and tangible object produced on the display.

[0158] The above are only preferred embodiments of the present invention. The present invention is not limited to the above embodiments. As long as the technical effects of the present invention are achieved by the same means, any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present invention shall be included in the scope of protection of the present invention. Within the scope of protection of the present invention, its technical solutions and / or implementation methods may have various modifications and changes.

Claims

1. A data processing method, applied to a data sending end, characterized in that: The data processing method comprises: Get the original data; Get additional data; Performing a first encryption process on the additional data to obtain first encrypted data; Performing a second encryption process on the original data and the first encrypted data to obtain second encrypted data; Perform a third encryption process on the second encrypted data to obtain third encrypted data.

2. The data processing method according to claim 1, characterized in that: The data processing method further includes: The original data, the first encrypted data and the third encrypted data are sent to a data receiving end.

3. The data processing method according to claim 2, characterized in that: The sending the original data, the first encrypted data, and the third encrypted data to the data receiving end includes: Performing a fourth encryption process on the original data to obtain fourth encrypted data; The fourth encrypted data, the first encrypted data and the third encrypted data are sent to a data receiving end.

4. The data processing method according to claim 1, characterized in that: The obtaining of additional data includes: generating a random number as the additional data; or Performing hash processing on the original data to obtain a hash value of the original data as the additional data; or The sending time information and the expected receiving time information of the original data are acquired, and the additional data is generated according to the sending time information and the expected receiving time information.

5. The data processing method according to claim 1, characterized in that: The performing a third encryption process on the second encrypted data to obtain third encrypted data includes: Determine a third encryption algorithm according to the original data; The second encrypted data is subjected to a third encryption process using the third encryption algorithm to obtain the third encrypted data.

6. The data processing method according to claim 5, characterized in that: The determining a third encryption algorithm according to the original data comprises: Set data volume threshold; Acquire the data volume of the original data; When the amount of the original data is greater than the data amount threshold, using a symmetric encryption algorithm as the third encryption algorithm; When the data volume of the original data is less than or equal to the data volume threshold, an asymmetric encryption algorithm is used as the third encryption algorithm.

7. A data processing method, applied to a data receiving end, characterized in that: The data processing method comprises: Receiving original data, first encrypted data and third encrypted data; the original data, the first encrypted data and the third encrypted data are obtained by the data processing method according to any one of claims 1 to 6; Performing a first decryption process on the first encrypted data to obtain first decrypted data; Performing a second decryption process on the original data and the first decrypted data to obtain second decrypted data; Performing a third decryption process on the third encrypted data to obtain third decrypted data; The integrity of the original data is determined according to the second decrypted data and the third decrypted data.

8. The data processing method according to claim 7, characterized in that: The determining the integrity of the original data according to the second decrypted data and the third decrypted data comprises: comparing the second decrypted data with the third decrypted data; When the second decrypted data is consistent with the third decrypted data, it is determined that the original data is complete; When the second decrypted data is inconsistent with the third decrypted data, it is determined that the original data is incomplete.

9. A computer device, characterized in that: It comprises a memory and a processor, the memory is used to store at least one program, and the processor is used to load at least one program to execute the data processing method according to any one of claims 1 to 8.

10. A computer-readable storage medium storing a program executable by a processor, characterized in that: The program executable by the processor is used to execute the data processing method described in any one of claims 1 to 8 when executed by the processor.