Secret-key-leakage-resistant data secret state aggregation method and system in power internet-of-things edge scene
By combining Paillier homomorphic encryption and threshold decryption technology in the edge scenario of power IoT, using secret sharing algorithms for data aggregation and decryption, the problems of system performance bottlenecks and low user data security are solved, and efficient and secure user data processing is achieved.
Patent Information
- Application Number
- CN202411850667.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-16
- Publication Date
- 2025-04-25
AI Technical Summary
In the edge scenario of the power IoT, there are problems such as system performance bottlenecks and low security of user data, especially when faced with possible eavesdropping, tampering and forgery by malicious attackers, user privacy information is easily leaked, causing serious security risks.
Using a method that combines Paillier homomorphic encryption system with threshold decryption technology, the target sensing terminal is determined through a secret sharing algorithm, and the aggregated ciphertext is sent to it, and the secret sharing of sub-keys and decryption key recovery is achieved to achieve secure aggregation and decryption of multi-dimensional user data to avoid private key leakage.
It effectively improves the security of user data, avoids private key leakage, disperses the computing power burden of the decryption process, improves system processing efficiency, and reduces network transmission delay.
Smart Images

Figure CN119892347A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of edge technology of power Internet of Things, and in particular to a method and system for confidential data aggregation in a power Internet of Things edge scenario that resists key leakage. Background Art
[0002] At present, the edge scenarios of the power Internet of Things generally use edge IoT agents and other devices to conduct on-site monitoring, intelligent analysis and processing of collected data, realize real-time status perception and monitoring of various energy facilities, energy-consuming equipment and electric vehicles on the edge side of the power, and collaborative optimization control, etc., support regional autonomy and cloud-edge collaboration, effectively reduce network transmission delays, and improve business processing response speed. However, in the edge scenarios of the power Internet of Things, there are often some malicious attackers who eavesdrop, tamper with, and forge data. If the data is not effectively protected, it will lead to the leakage of user privacy information, causing serious security risks, and may even threaten the safe and reliable operation of the system.
[0003] In order to protect the privacy of users from malicious attackers, researchers have proposed a large number of data aggregation schemes based on homomorphic encryption in recent years. However, in practical applications, the computing resources of sensor terminals and edge IoT agents are limited, while user data collection is very frequent. Moreover, the verification and aggregation operations of a large amount of confidential user data by edge IoT agents occur almost at the same time, which can easily cause system performance bottlenecks. At the same time, most of the current encryption schemes store private keys directly to the decryption party, which poses serious security risks. Summary of the invention
[0004] In order to overcome the system performance bottleneck and low security of user data in the above-mentioned power Internet of Things edge scenario, the present invention provides a method, device and system for confidential data aggregation that is resistant to key leakage in a power Internet of Things edge scenario.
[0005] On the one hand, the present invention provides a method for data confidentiality aggregation in an edge scenario of power Internet of Things to resist key leakage, comprising:
[0006] Sending aggregated ciphertext to each target sensor terminal determined based on the secret sharing algorithm;
[0007] Receiving a subkey corresponding to the secret sharing algorithm sent by each target sensor terminal;
[0008] If the number of received subkeys is greater than or equal to a preset threshold of the secret sharing algorithm, decrypt the aggregated ciphertext based on each received subkey to obtain an aggregated result of the plaintext;
[0009] Among them, the aggregated ciphertext is obtained by aggregating the encryption results of homomorphic encryption of multidimensional user data sent by each sensor terminal by the edge IoT agent; the subkey is determined by each target sensor terminal based on the obtained aggregated ciphertext and the pre-stored private key corresponding to the homomorphic encryption.
[0010] Optionally, before sending the aggregated ciphertext to each target sensor terminal determined based on the secret sharing algorithm, the method further includes:
[0011] Setting a threshold value of the number of sensor terminals required for decryption based on a preset threshold value of the secret sharing algorithm;
[0012] Based on the device quantity threshold, randomly selecting multiple sensor terminals to form a decryption device set, wherein the number of sensor terminals in the decryption device set is greater than or equal to the device quantity threshold;
[0013] The sensor terminals in the decryption device set are taken as target sensor terminals.
[0014] Optionally, the decrypting the aggregated ciphertext based on each received subkey to obtain a plaintext aggregated result includes:
[0015] Based on the shared parameters of the pre-stored secret sharing algorithm and each received subkey, a key recovery parameter corresponding to each subkey is calculated;
[0016] Recovering the decryption key of the aggregated ciphertext based on the key recovery parameters corresponding to each subkey;
[0017] The aggregate ciphertext is decrypted based on the decryption key.
[0018] Optionally, before sending the aggregated ciphertext to each target sensor terminal determined based on the secret sharing algorithm, the method further includes:
[0019] Receive a hash value corresponding to the encryption result of the multi-dimensional user data sent by the edge IoT agent;
[0020] After decrypting the aggregated ciphertext based on each received subkey to obtain an aggregated result of the plaintext, the method further includes:
[0021] The aggregation result of the plaintext is verified based on a hash value corresponding to the encryption result of the multi-dimensional user data and a pre-stored hash algorithm.
[0022] Optionally, before sending the aggregated ciphertext to each target sensor terminal determined based on the secret sharing algorithm, the method further includes:
[0023] Receiving a message authentication code generated based on a hash value corresponding to an encryption result of the multi-dimensional user data and sent by the edge IoT agent;
[0024] Based on the message authentication code and the pre-stored message authentication code function, the hash value corresponding to the encryption result of the multi-dimensional user data is verified; if the verification is successful, the aggregated ciphertext sent by the edge IoT agent is received.
[0025] Optionally, the encryption result of the multi-dimensional user data is obtained based on a super-increasing sequence. After the aggregated ciphertext is decrypted based on each received subkey to obtain an aggregated result of plaintext, the method further includes:
[0026] Solving the aggregation results of the user data in each data dimension for the aggregation results of the plaintext based on the increasing property of the super-increasing sequence, to obtain the aggregation results of the user data in each data dimension;
[0027] Perform statistical analysis on the corresponding data dimension based on the aggregation results of user data in each data dimension.
[0028] On the other hand, the present invention also provides a cloud-side device in a power IoT edge scenario, including:
[0029] A sending module, used to send the aggregated ciphertext to each target sensor terminal determined based on the secret sharing algorithm;
[0030] A receiving module, used for receiving a subkey corresponding to the secret sharing algorithm sent by each target sensor terminal;
[0031] A decryption module, configured to decrypt the aggregated ciphertext based on each received subkey to obtain an aggregated result of the plaintext if the number of received subkeys is greater than or equal to a preset threshold of the secret sharing algorithm;
[0032] Among them, the aggregated ciphertext is obtained by aggregating the encryption results of homomorphic encryption of multidimensional user data sent by each sensor terminal by the edge IoT agent; the subkey is determined by each target sensor terminal based on the obtained aggregated ciphertext and the pre-stored private key corresponding to the homomorphic encryption.
[0033] Optionally, the cloud-side device further includes a target device determination module, and the target device determination module is used to:
[0034] Setting a threshold value of the number of sensor terminals required for decryption based on a preset threshold value of the secret sharing algorithm;
[0035] Based on the device quantity threshold, randomly selecting multiple sensor terminals to form a decryption device set, wherein the number of sensor terminals in the decryption device set is greater than or equal to the device quantity threshold;
[0036] The sensor terminals in the decryption device set are taken as target sensor terminals.
[0037] Optionally, the decryption module includes:
[0038] A parameter calculation submodule, used to calculate a key recovery parameter corresponding to each subkey based on the pre-stored sharing parameters of the secret sharing algorithm and each received subkey;
[0039] A decryption key recovery submodule, used to recover the decryption key of the aggregate ciphertext based on the key recovery parameters corresponding to each subkey;
[0040] A decryption submodule is used to decrypt the aggregate ciphertext based on the decryption key.
[0041] Optionally, the receiving module is further used for:
[0042] Receive a hash value corresponding to the encryption result of the multi-dimensional user data sent by the edge IoT agent;
[0043] The cloud-side device further includes:
[0044] The first verification module is used to verify the aggregation result of the plaintext based on the hash value corresponding to the encryption result of the multi-dimensional user data and a pre-stored hash algorithm.
[0045] Optionally, the receiving module is further used to receive a message authentication code generated based on a hash value corresponding to an encryption result of the multi-dimensional user data and sent by the edge IoT agent; if the verification based on the message authentication code is passed, receiving the aggregated ciphertext sent by the edge IoT agent;
[0046] The cloud-side device further includes:
[0047] The second verification module is used to verify the hash value corresponding to the encryption result of the multi-dimensional user data based on the message authentication code and a pre-stored message authentication code function.
[0048] Optionally, the encryption result of the multi-dimensional user data is obtained based on a super increasing sequence, and the cloud-side device further includes a statistical analysis module, which is used to:
[0049] Solving the aggregation results of the user data in each data dimension for the aggregation results of the plaintext based on the increasing property of the super-increasing sequence, to obtain the aggregation results of the user data in each data dimension;
[0050] Based on the aggregation results of user data in each data dimension, statistical analysis of the corresponding data dimension is performed to obtain statistical results for each data dimension.
[0051] On the other hand, the present invention also provides a method for data confidentiality aggregation in an edge scenario of power IoT to resist key leakage, comprising:
[0052] Receive the aggregated ciphertext sent by the cloud-side device;
[0053] Determining a subkey required to decrypt the aggregated ciphertext based on the aggregated ciphertext and a pre-stored secret sharing corresponding to a secret sharing algorithm;
[0054] Sending the subkey to the cloud-side device;
[0055] Among them, the aggregated ciphertext is obtained by aggregating the encryption results of homomorphic encryption of multi-dimensional user data sent by each sensor terminal by the edge IoT agent; the subkey is associated with the private key corresponding to the homomorphic encryption, and the subkey is used by the cloud-side device to decrypt the aggregated ciphertext.
[0056] Optionally, before receiving the aggregated ciphertext sent by the cloud-side device, the method further includes:
[0057] Based on the super-increasing sequence, the multi-dimensional user data collected by itself is homomorphically encrypted to obtain the encryption result of the multi-dimensional user data corresponding to the current sensor terminal;
[0058] The encryption result of the multi-dimensional user data corresponding to the current sensor terminal is sent to the edge IoT proxy, so that the edge IoT proxy obtains the aggregated ciphertext and sends it to the cloud-side device.
[0059] Optionally, after homomorphically encrypting the multidimensional user data collected by itself based on the super-increasing sequence to obtain the encryption result of the multidimensional user data corresponding to the current sensor terminal, the method further includes:
[0060] Generate a hash value associated with the encryption result of the multi-dimensional user data corresponding to the current sensor terminal using a linear homomorphic hash algorithm;
[0061] A hash value associated with the encryption result of the multidimensional user data corresponding to the current sensor terminal is sent to the edge IoT proxy, so that the edge IoT proxy obtains the hash value and sends it to the cloud side device, and the cloud side device verifies the decryption result based on the obtained hash value and the linear homomorphic hash algorithm.
[0062] On the other hand, the present invention also provides a sensor terminal, comprising:
[0063] A receiving module, used to receive the aggregated ciphertext sent by the cloud-side device;
[0064] A subkey determination module, configured to determine a subkey required to decrypt the aggregated ciphertext based on the aggregated ciphertext and a pre-stored secret sharing corresponding to a secret sharing algorithm;
[0065] A sending module, used for sending the subkey to the cloud-side device;
[0066] Among them, the aggregated ciphertext is obtained by aggregating the encryption results of homomorphic encryption of multi-dimensional user data sent by each sensor terminal by the edge IoT agent; the subkey is associated with the private key corresponding to the homomorphic encryption, and the subkey is used by the cloud-side device to decrypt the aggregated ciphertext.
[0067] Optionally, the sensor terminal further includes an encryption module, which is used to homomorphically encrypt the multidimensional user data collected by itself based on a super-increasing sequence to obtain an encryption result of the multidimensional user data corresponding to the current sensor terminal;
[0068] The sending module is also used to send the encryption result of the multi-dimensional user data corresponding to the current sensor terminal to the edge IoT proxy, so that the edge IoT proxy obtains the aggregated ciphertext and sends it to the cloud side device.
[0069] Optionally, the encryption module is further used for:
[0070] Generate a hash value associated with the encryption result of the multi-dimensional user data corresponding to the current sensor terminal using a linear homomorphic hash algorithm;
[0071] A hash value associated with the encryption result of the multidimensional user data corresponding to the current sensor terminal is sent to the edge IoT proxy, so that the edge IoT proxy obtains the hash value and sends it to the cloud side device, and the cloud side device verifies the decryption result based on the obtained hash value and the linear homomorphic hash algorithm.
[0072] On the other hand, the present invention also provides a data confidential aggregation system that is resistant to key leakage in the edge scenario of the power Internet of Things, characterized in that the system includes the cloud-side device described in any of the above embodiments and the sensor terminal described in any of the above embodiments.
[0073] Compared with the prior art, the present invention has the following beneficial effects:
[0074] The present invention provides a method and system for confidential data aggregation in an edge scenario of power Internet of Things that is resistant to key leakage. On the one hand, a cloud-side device receives subkeys corresponding to the secret sharing algorithm and sent by each target sensor terminal; if the number of received subkeys is greater than or equal to a preset threshold of the secret sharing algorithm, the aggregated ciphertext is decrypted based on each received subkey to obtain a plaintext aggregation result, and the subkeys are determined by each target sensor terminal based on the obtained aggregated ciphertext and the secret sharing of the pre-stored homomorphic encryption corresponding private key, that is, homomorphic encryption and a threshold-based secret sharing algorithm are combined to avoid the private key leakage problem of multi-dimensional user data and improve the user data security of the interaction process. On the other hand, the edge IoT agent aggregates the encryption results of the multi-dimensional user data sent by each sensor terminal through homomorphic encryption to obtain an aggregated ciphertext, and sends the aggregated ciphertext to each target sensor terminal determined based on the secret sharing algorithm, so that the target sensor terminal obtains the sub-key corresponding to the secret sharing algorithm based on the aggregated ciphertext and sends it to the cloud-side device for decryption. The process of solving and decrypting the sub-key is dispersed in different sensor terminals and cloud-side devices, avoiding the problem of system processing performance bottleneck and improving system processing efficiency. BRIEF DESCRIPTION OF THE DRAWINGS
[0075] Figure 1 This is one of the flow diagrams of a method for confidential data aggregation in an electric power IoT edge scenario to resist key leakage according to the present invention;
[0076] Figure 2 The second flowchart of the method for confidential data aggregation against key leakage in the edge scenario of the power Internet of Things of the present invention;
[0077] Figure 3 It is a schematic structural diagram of the electronic device of the present invention. DETAILED DESCRIPTION
[0078] The specific implementation modes of the present invention are further described in detail below with reference to the accompanying drawings.
[0079] Embodiment 1:
[0080] The present invention provides a method for anti-key leakage data secret aggregation in the edge scenario of power Internet of Things, which is applied to cloud-side equipment or cloud-side application system, as shown in the schematic diagram Figure 1 As shown, including:
[0081] Step S110, sending an aggregated ciphertext to each target sensor terminal determined based on the secret sharing algorithm; the aggregated ciphertext is obtained by aggregating the encryption results of the homomorphic encryption of the multi-dimensional user data sent by each sensor terminal by the edge IoT agent;
[0082] Step S120, receiving a subkey corresponding to the secret sharing algorithm sent by each target sensor terminal; the subkey is associated with a private key corresponding to the homomorphic encryption;
[0083] Step S130: If the number of received subkeys is greater than or equal to a preset threshold of the secret sharing algorithm, the aggregated ciphertext is decrypted based on each received subkey to obtain an aggregated result of the plaintext.
[0084] In this example implementation, the power IoT edge scenario can be a cloud-edge collaborative interaction scenario formed by sensor terminals, edge IoT agents, and cloud-side devices in the power IoT. For example, in the power IoT edge scenario, the user's electricity usage behavior habits can be inferred by collecting and analyzing user data, so as to better regulate the power grid, and specific users can be monitored to ensure the user's electricity usage is standardized. The executor of this example is a cloud-side device, such as a cloud-side server. Multi-dimensional user data may include data such as the user's electricity consumption, electricity usage time, electricity usage habits, and electricity usage duration. The target sensor terminal is a plurality of sensor terminals used to support the decryption process, which are determined based on a preset threshold of a secret sharing algorithm after the cloud-side device receives the aggregated ciphertext sent by the edge IoT agent, wherein the number of target sensor terminals is greater than or equal to the preset threshold. Each sensor terminal is used to collect the multi-dimensional electricity consumption data of the user, and homomorphically encrypt the multi-dimensional electricity consumption data, and send the encryption result to the edge IoT agent. The edge IoT agent aggregates the encryption results sent by each sensor terminal (such as multiplying the encryption results sent by each sensor terminal) to obtain an aggregated ciphertext. The edge IoT agent sends the aggregated ciphertext to the cloud-side device. The cloud-side device determines and sends the aggregated ciphertext to the target sensor terminal. The target sensor terminal solves the subkey based on the obtained aggregated ciphertext and the secret sharing of the pre-stored homomorphic encryption corresponding private key and returns it to the cloud-side device. After receiving each subkey, the cloud-side device first determines whether the number of subkeys is greater than or equal to the preset threshold. If it is not satisfied, the key recovery operation cannot be performed, and this aggregation is invalid. If it is satisfied, the aggregated ciphertext is decrypted based on each received subkey. Exemplarily, the secret sharing algorithm is the Shamir secret sharing algorithm. The Shamir secret sharing algorithm divides the secret S into n sub-secrets. Any t sub-secrets can recover S, while any t-1 sub-secrets cannot recover S. Exemplarily, homomorphic encryption is Paillier encryption, and the Pai1lier encryption system satisfies the additive homomorphic property, that is, the product of two ciphertexts is decrypted to the sum of plaintexts. This example distributes the homomorphic encryption private key on different sensor terminals through a secret sharing algorithm, which not only avoids the leakage of private keys, but also prevents each sensor terminal from knowing other user data. At the same time, it also disperses the computing power burden of the decryption process, improves user data security and system security, and also improves the data processing efficiency of the system.
[0085] Exemplarily, in the cloud-edge collaboration scenario of the power Internet of Things, a trusted party can also be configured. The trusted party can be a third party recognized by all participants, or it can be the cloud side of the power Internet of Things recognized by all participants. In the system initialization phase, the trusted party generates the system's public parameters, message authentication code functions, random numbers to be used for encryption, and secret sharing of private keys, and then distributes the generated parameters to the corresponding participants in the system (such as each sensor terminal and cloud-side device). Specifically, the trusted party generates the public key {N, gg} and private key {λ, μ} corresponding to homomorphic encryption according to the Paillier homomorphic cryptographic system. The trusted party generates a key sharing polynomial: Assuming that the number of sensor terminal devices is n, the number of sensor terminal devices required for decryption is t (t≤n). Trusted computing sharing parameters v=n! , n! represents the factorial of n. The trusted party randomly selects two random numbers r and β, and selects a t-dimensional polynomial f(x)=a0+a1x+a2x 2 +…+a t-1 x t-1 , where a0=v·λ·β, a1,...,a t-1 are t-1 integers randomly selected by the trusted party, and x is the independent variable of the key analysis polynomial function f; at the same time, the trusted party calculates the parameter θ=(λ·β)mod N, where mod represents the modulus operation, and uses θ as a public key of the system. Finally, the trusted party discloses the public parameters of the system including {N, g, θ}, and sends the random number r to n sensor terminals, using the generated polynomial f(x)=a0+a1x+a2x 2 +…+a t-1 x t-1 calculate And send it as the secret sharing of the private key λ to n sensor terminals respectively, where f(n) is the value of the key analysis polynomial when the independent variable takes the value of n. N 2 The value of the Euler function.
[0086] In an example implementation, before sending the aggregated ciphertext to each target sensor terminal determined based on the secret sharing algorithm in step S110, the method further includes the following process:
[0087] Setting a threshold value of the number of sensor terminals required for decryption based on a preset threshold value of the secret sharing algorithm;
[0088] Based on the device quantity threshold, randomly selecting multiple sensor terminals to form a decryption device set, wherein the number of sensor terminals in the decryption device set is greater than or equal to the device quantity threshold;
[0089] The sensor terminals in the decryption device set are taken as target sensor terminals.
[0090] In this example implementation, the preset threshold is the parameter t of the secret sharing algorithm, that is, the number of sub-secrets required for decryption; the cloud-side device presets the device number threshold t of the sensor terminals required for decryption, and based on the device number threshold t, the cloud-side device randomly selects a decryption device set T, where the number of sensor terminals included in the decryption device set is greater than or equal to t, and takes the sensor terminals included in the decryption device set as target sensor terminals.
[0091] In an example implementation, before sending the aggregated ciphertext to each target sensor terminal determined based on the secret sharing algorithm in step S110, the method further includes:
[0092] Receive a hash value corresponding to the encryption result of the multi-dimensional user data sent by the edge IoT agent;
[0093] After decrypting the aggregated ciphertext based on the received subkeys to obtain the aggregated result of the plaintext, the method further includes: verifying the aggregated result of the plaintext based on a hash value corresponding to the encryption result of the multi-dimensional user data and a pre-stored hash algorithm.
[0094] In this example implementation, in order to ensure the integrity and correctness of information in the cloud-edge interaction process, each sensor terminal, while performing homomorphic encryption on the multi-dimensional user data, also needs to generate a hash value corresponding to the encryption result through a hash algorithm, and send the encryption result and the corresponding hash value to the edge IoT agent. The edge IoT agent aggregates the encryption results sent by each sensor terminal, and then sends the obtained aggregated ciphertext and hash value to the cloud-side device. Correspondingly, after the cloud-side device decrypts the aggregated ciphertext, it verifies the decryption result (i.e., the aggregated result of the plaintext) based on the pre-stored hash algorithm and the received hash value. Exemplarily, the trusted party generates linear homomorphic hash parameters during the system initialization phase, that is, selects a linear homomorphic hash parameter through the LHH.HGen algorithm. Cyclic group of order Its generator is and will As a system public parameter, it is disclosed to all participants. Each sensor terminal SM i (i=1, 2, 3, ..., n) The hash value corresponding to the encryption result is calculated by the LHH.Hash algorithm: Among them, h i The hash value corresponding to the encryption result of the multi-dimensional user data calculated by the i-th sensor terminal, m i is the plaintext corresponding to the encryption result of the multi-dimensional user data in the i-th sensor terminal. The hash value is forwarded to the cloud-side device through the edge IoT agent. After the cloud-side device completes the decryption, it verifies the decryption result based on the hash algorithm (such as the linear homomorphic hash algorithm). For example, the cloud-side device verifies whether the equation is true: Among them, m is the decryption result, hn is the hash value corresponding to the encryption result of the multi-dimensional user data of the nth sensor terminal. The linear homomorphic hash algorithm consists of three polynomial algorithms. LHH.Hash and LHH.Eval are the polynomial functions of linear homomorphic hash respectively; Indicates that the equation is to be verified. If the equation is true, the decryption result is correct and can be accepted. Otherwise, the decryption result is incorrect, and the aggregation process ends or data is retransmitted.
[0095] In an example implementation, before sending the aggregated ciphertext to each target sensor terminal determined based on the secret sharing algorithm in step S110, the method further includes:
[0096] Receiving a message authentication code generated based on a hash value corresponding to an encryption result of the multi-dimensional user data and sent by the edge IoT agent;
[0097] Based on the message authentication code and the pre-stored message authentication code function, the hash value corresponding to the encryption result of the multi-dimensional user data is verified; if the verification is successful, the aggregated ciphertext sent by the edge IoT agent is received.
[0098] In this example implementation, after generating a hash value corresponding to the encryption result of the multi-dimensional user, each sensor terminal may further generate a hash value h based on a message authentication code function. i The message authentication code is: i =HMAC(key,h i ), where σ i is the hash value h i The message authentication code is a key of the message authentication code function. The message authentication code function can also be generated by a trusted party during the system initialization phase. For example, the message authentication code function is HMAC(key, mesg), mesg is the message to be authenticated, and the HMAC function is a key-based message integrity verification method. Its security is based on the encryption algorithm. It requires the communicating parties to share keys, agree on algorithms, and perform hash operations on messages to form a fixed-length authentication code. The communicating parties determine the legitimacy of the message by verifying the authentication code. The HMAC algorithm can be used for encryption, digital signatures, message verification, etc. This example can be considered to add a digital signature to the transmitted information. The trusted party sends the message authentication code function HMAC(key, mesg) to each sensor terminal and cloud-side device, so that each sensor terminal generates a message authentication code based on the function and forwards it to the cloud-side device through the edge IoT agent; the cloud-side device performs hash value verification based on the function. Specifically, the cloud-side device verifies the message authentication code σ of the hash value hi i , that is, determine whether the equation holds If not, the aggregation ends; if true, the aggregation ciphertext is received.
[0099] In the above example, the integrity of the ciphertext can be verified on the cloud side through hash value verification, and the correctness of the hash value can be ensured through message authentication code-based verification, thereby ensuring the integrity and correctness of the information during the interaction process.
[0100] In an example implementation, the encryption process of the multi-dimensional user data of each sensor terminal is as follows:
[0101] Based on the super-increasing sequence, the multi-dimensional user data collected by itself is homomorphically encrypted to obtain the encryption result of the multi-dimensional user data corresponding to the current sensor terminal.
[0102] In this example implementation, a super-increasing sequence refers to a set of positive real number sequences, each element in the sequence is greater than the sum of all previous elements; a super-increasing sequence for encryption can be generated during the system initialization phase. Specifically, the generation process of the super-increasing sequence is as follows: assuming that each sensor terminal can collect k-dimensional user data, the trusted party generates a super-increasing sequence of 2k positive integers {ω1, ..., ω k ,ω k+1 ,…,ω 2k},satisfy: Among them, ω1=1, α=2, 3,..., 2k, ω j is the jth element of the super-increasing sequence; when j = 1, 2, ..., k, η j is the upper bound of the jth data; when k<j≤2k, η k+1 =η1 2 , η k+2 =η2 2 ,…,η 2k =η k 2 ,ω α is the αth element of the super-increasing sequence, ω k is the kth element of the super-increasing sequence, ω k+1 is the k+1th element of the super-increasing sequence, ω 2k is the 2kth element of the super-increasing sequence. The key generation process of the trusted party's homomorphic encryption (such as Paillier encryption) is as follows: randomly select two large prime numbers p and q, satisfying gcd(pq, (p-1)*(q-1))=1, where gcd(a, b) represents the greatest common divisor of a and b; calculate the public key N=p*q, g=N+1, and the private key is the value of the Euler function for N, for The public key of homomorphic encryption is (N, gg) and the private key is (λ, μ). The trusted party will α As a public parameter, each sensor terminal SM is made public to all participants.i (i=1,2,3,…,n) Based on the super increasing sequence, the k-dimensional user data m collected by itself i1 , m i2 ,…,m ik Perform Paillier encryption to obtain the encryption result (i.e., encrypted ciphertext) of the multidimensional user data of each sensor terminal:
[0103]
[0104] Among them, ct i is the encryption result of the multi-dimensional user data of the i-th sensor terminal, m ik is the kth user data collected by the i-th sensor terminal, m ij The j-th user data collected by the i-th sensor terminal.
[0105] Afterwards, the encryption result of the multi-dimensional user data corresponding to the current sensor terminal is sent to the edge IoT proxy, so that the edge IoT proxy aggregates the encryption results to obtain the aggregated ciphertext, and sends the aggregated ciphertext to the cloud-side device. Specifically, the edge IoT proxy aggregates the encryption results received from each sensor terminal to obtain the aggregated ciphertext ct:
[0106]
[0107] In some embodiments, the edge IoT agent aggregates the set of ciphertext ct, hash value and message authentication code {h i , σ i}Sent to the cloud-side device.
[0108] In an example implementation, decrypting the aggregated ciphertext based on each received subkey in step S130 to obtain a plaintext aggregated result includes the following process:
[0109] Based on the shared parameters of the pre-stored secret sharing algorithm and each received subkey, a key recovery parameter corresponding to each subkey is calculated;
[0110] Recovering the decryption key of the aggregated ciphertext based on the key recovery parameters corresponding to each subkey;
[0111] The aggregate ciphertext is decrypted based on the decryption key.
[0112] In this example implementation, the key recovery parameter may be calculated based on the secret sharing algorithm by the following formula:
[0113]
[0114] Among them, l i′is the intermediate parameter of the key recovery process of the subkey corresponding to the i′th target sensor terminal, i′ and j′ are the serial numbers of the target sensor terminals, T is the set of decryption devices, v is the sharing parameter of the secret sharing algorithm, and C i′ is the subkey corresponding to the i′th target sensor terminal, is the key recovery parameter of the subkey corresponding to the i′th target sensor terminal.
[0115] The recovery formula for the decryption key is:
[0116]
[0117] in, is the decryption key.
[0118] The cloud-side device calculates the decryption key Decrypt the aggregated ciphertext to obtain the aggregated result m (i.e., decrypted message) of the plaintext. The decryption of the aggregated ciphertext is performed using the following formula:
[0119]
[0120] Among them, L(·) is the calculation function, y is the independent variable of the function.
[0121] Finally, the aggregated result of the solved plaintext is:
[0122] In view of the problem that most cloud-side devices in existing solutions only focus on the total power consumption of all users in each area, that is, they can only obtain the sum of the power consumption of all users in the end, but cannot meet the cloud-side's needs for more fine-grained analysis of user power consumption data. In some implementations, accordingly, the cloud-side device decrypts the aggregated ciphertext based on each received subkey, and after obtaining the aggregated result of the plaintext, performs the following process:
[0123] Solving the aggregation results of the user data in each data dimension for the aggregation results of the plaintext based on the increasing property of the super-increasing sequence, to obtain the aggregation results of the user data in each data dimension;
[0124] Perform statistical analysis on the corresponding data dimension based on the aggregation results of user data in each data dimension.
[0125] In this example implementation, the aggregated result of the decrypted plaintext is According to the increasing property of the super-increasing sequence, the aggregation result of the user data in each data dimension can be solved to obtain the aggregation result of the user data in each data dimension, that is, the aggregation result of the user data in each data dimension {M1, ..., M j, ..., M k} and {QM1, ..., QM j , ..., QM k},in, is the sum of the j-th dimension user data, is the sum of squares of the j-th dimension user data, j = 1, 2, ..., k. This solution algorithm is based on the increasing property of the super-increasing sequence, and solves one by one from the back to the front. The calculation idea of the specific algorithm execution process is as follows:
[0126]
[0127] The first four lines are used to calculate QM j , the fourth to eighth lines are used to calculate M j The first and fifth lines indicate that the value of j decreases from k to 1, and the last line indicates that the program returns to QM after the program runs. j 、M j The value of .
[0128] Through the above process, the sum of user data M of each data dimension can be obtained j and square sum QM j , so as to conduct statistical analysis of the corresponding data dimension. For example, the average value AVR of each type / dimensional data can be further calculated j and variance VAR j : AVR j =M j / n, Among them, AVR j is the average value of the j-th dimension user data among n users, VAR i is the variance of the n-dimensional user data among n users. This enables statistical analysis of different users on the same data dimension and fine-grained analysis of the user data dimension. The privacy-preserving data aggregation solution that can meet the needs of fine-grained analysis is of great significance to the development of edge scenarios of the power Internet of Things. This example implements secure and efficient multi-dimensional secret data aggregation based on the properties of super-increasing sequences, which can be used to collect multi-dimensional user data and obtain more fine-grained data statistics without exposing personal data.
[0129] Example 2
[0130] Based on the same inventive concept, the present invention also provides a method for data aggregation in a power IoT edge scenario to resist key leakage, which is applied to a sensor terminal and includes the following steps:
[0131] Receive the aggregated ciphertext sent by the cloud-side device;
[0132] Determining a subkey required to decrypt the aggregated ciphertext based on the aggregated ciphertext and a pre-stored secret sharing corresponding to a secret sharing algorithm;
[0133] Sending the subkey to the cloud-side device;
[0134] Among them, the aggregated ciphertext is obtained by aggregating the encryption results of homomorphic encryption of multi-dimensional user data sent by each sensor terminal by the edge IoT agent; the subkey is associated with the private key corresponding to the homomorphic encryption, and the subkey is used by the cloud-side device to decrypt the aggregated ciphertext.
[0135] In this example implementation, the execution subject of this embodiment is the sensor terminal, where the target sensor terminal selected by the cloud-side device receives the aggregated ciphertext sent by the cloud-side device, and then uses the aggregated ciphertext and the secret sharing corresponding to the secret sharing algorithm received by each in the system initialization phase (i.e., the secret sharing of the private key λ corresponding to the homomorphic encryption) to calculate the subkey required for decryption. Specifically, the cloud-side device sends the aggregated ciphertext ct to each target sensor terminal in the decryption device set T, and each target sensor terminal calculates the corresponding subkey C i′ =ct f(i′) , f(i′) is the secret sharing polynomial function value corresponding to the i′th target sensor terminal. Each target sensor terminal will subkey {C i′ (i′∈T)} is sent to the cloud-side device so that the cloud-side device decrypts the aggregated ciphertext based on each subkey.
[0136] In some implementations, before receiving the aggregated ciphertext sent by the cloud-side device, the method further includes:
[0137] Based on the super-increasing sequence, the multi-dimensional user data collected by itself is homomorphically encrypted to obtain the encryption result of the multi-dimensional user data corresponding to the current sensor terminal;
[0138] The encryption result of the multi-dimensional user data corresponding to the current sensor terminal is sent to the edge IoT proxy, so that the edge IoT proxy obtains the aggregated ciphertext and sends it to the cloud-side device.
[0139] Most existing data aggregation schemes use computationally complex homomorphic encryption schemes to encrypt electricity data, and a large number of bilinear pairing operations need to be performed during the signature verification process, which brings a heavy computational burden to the sensor terminal and the edge IoT agent or gateway. In some embodiments, after homomorphically encrypting the multidimensional user data collected by itself based on the super-increasing sequence to obtain the encryption result of the multidimensional user data corresponding to the current sensor terminal, the method also includes the following process:
[0140] Generate a hash value associated with the encryption result of the multi-dimensional user data corresponding to the current sensor terminal using a linear homomorphic hash algorithm;
[0141] A hash value associated with the encryption result of the multidimensional user data corresponding to the current sensor terminal is sent to the edge IoT proxy, so that the edge IoT proxy obtains the hash value and sends it to the cloud side device, and the cloud side device verifies the decryption result based on the obtained hash value and the linear homomorphic hash algorithm.
[0142] In this example implementation, the linear homomorphic hash algorithm is composed of three polynomial algorithms, namely LHH.HGen, LHH.Hash, and LHH.Eval, wherein LHH.HGen is used to generate the public parameter LHH pp , including prime numbers Cyclic group of order Its generator is LHH.Hash is used to perform linear homomorphic hashing on the message m′, that is: Where h is the linear homomorphic hash of message m′; LHH.Eval is used for a set of ε messages m γ ′(γ=1,2,…,ε), we can get ε hash values h γ and the coefficients α corresponding to ε γ , calculate the linear combination h of ε hash values * ,Right now: During the system initialization phase, the trusted party can generate linear homomorphic hash parameters, that is, select a Cyclic group of order Its generator is And the parameters It is disclosed to all participants as a public parameter. After each sensor terminal homomorphically encrypts the multi-dimensional user data, the hash value corresponding to the encryption result can be calculated by the LHH.Hash algorithm, that is, the hash value of the plaintext of the encryption result: The hash value and the corresponding encryption result are sent to the edge IoT proxy. After the edge IoT proxy aggregates the encryption results of each sensor terminal, it sends the aggregated result and the hash value to the cloud side device. The cloud side device uses the hash value h i The decryption result is verified by using a linear homomorphic hash algorithm. In some implementations, each sensor terminal can also generate a hash value h i The message authentication code σ i , σ i =HMAC(key,h i ), and finally each sensor terminal will report {ct i ,h i , σ iThis example constructs a linear homomorphic hash to avoid the computational burden of a large number of traditional bilinear pairing operations, achieves lightweight result verification, and improves data processing efficiency.
[0143] The following is a specific example to illustrate the specific steps of a method for anti-key leakage data confidential aggregation in a power IoT edge scenario of the present invention. Figure 2 As shown, the following processes may be included:
[0144] (1) During the system initialization phase, the trusted party (such as the cloud side in the power IoT approved by all participants) generates the system public parameters, message authentication code function, random numbers to be used for encryption, and secret sharing of private keys, and then distributes the generated parameters to the corresponding participants in the system.
[0145] (2) In the data reporting phase, the sensor terminal uses Paillier to encrypt the k-dimensional data collected by itself to generate encrypted ciphertext. At the same time, it uses the linear homomorphic hashing method to generate the hash value of the encrypted ciphertext, and uses the HMAC function to generate the message authentication code of the hash value. Among them, the hash value can verify the integrity of the ciphertext in the cloud-side application system, and the message authentication code can ensure the correctness of the hash value. The sensor terminal then sends the generated encrypted ciphertext, the corresponding hash value, and the message authentication code to the edge IoT agent.
[0146] (3) In the report aggregation phase, the edge IoT agent receives the encrypted ciphertext, hash value, and message authentication code reported by the sensor terminal, multiplies all the encrypted ciphertexts to obtain the aggregated ciphertext, and does not process the hash value and message authentication code. Then, the aggregated ciphertext, hash value, and message authentication code are sent to the cloud-side device.
[0147] (4) During the message verification phase, the cloud-side device uses the HMAC function to verify the message authentication code. If the verification fails, it means that the hash value of the ciphertext has been tampered with and the aggregation process ends. If the verification succeeds, it means that the current message can be received and the process proceeds to (5).
[0148] (5) In the key recovery phase, the cloud measurement device sends the aggregated ciphertext to the target sensor terminal. The target sensor terminal calculates the subkey C based on the aggregated ciphertext and the secret sharing of the private key received in step (1). i′ , and sent to the cloud-side device. The cloud-side device recovers the key used for this decryption through a secret sharing scheme.
[0149] (6) Decryption and verification phase: After the cloud-side device calculates the decryption key, it decrypts the aggregated ciphertext according to the Paillier scheme to obtain the aggregated result of the plaintext, and then uses the hash value to verify it through linear homomorphic hashing. If the verification fails, it means that the aggregation result is incorrect and the aggregation process ends. If the verification succeeds, it means that the decryption result can be obtained and go to (7).
[0150] (7) In the result acquisition phase, for the decrypted message m, the cloud-side device can solve the aggregation results of each data dimension in turn (such as the sum of squares of user data and the sum of user data), and can also perform statistical analysis based on each type of user data, such as obtaining the average value and variance of different users in the same data dimension.
[0151] The present invention aims at the information security issues such as user information leakage that may occur due to improper data processing during the edge communication of the power Internet of Things, and the attacker obtains the user's electricity usage habits and user behavior habits through long-term monitoring and analysis of user data, thereby monitoring specific users, threatening the safety of users' lives and property, as well as the communication and storage overhead caused by data encryption, ciphertext aggregation, message signature and signature verification in the actual data processing process, and low processing efficiency. In addition to the problems in efficiency and security, the existing scheme is also aimed at the problem that the cloud side cannot meet the needs of fine-grained analysis of electricity consumption data. That is, for the data privacy problem of data in the interaction process in the edge scenario of the power Internet of Things, and the existing edge secret state computing scheme directly stores the private key to the decryption party, focuses on the single data and is inefficient, the scheme is based on the technical framework of the edge scenario of the power Internet of Things, and proposes a novel protocol, which combines the Paillier homomorphic encryption system with the threshold decryption technology to ensure that the private key will not be leaked. And according to the properties of the super-increasing sequence, a safe and efficient multi-dimensional secret state data aggregation is realized, which can be used to collect multi-dimensional user data and obtain the statistical results of multi-dimensional data without exposing personal data. The present invention adopts a lightweight aggregation verification algorithm, linear homomorphic hashing, to efficiently ensure the integrity and correctness of the results. Through this scheme, the encrypted transmission and dense aggregation of multidimensional user data in the edge scenario of the power Internet of Things can be realized, and then the statistical information of the multidimensional data of users in a region, including the mean and variance, can be obtained. At the same time, the original data of individuals and the private key of the system are not disclosed, ensuring the privacy of personal data. In addition, the method will perform verification after obtaining the results, and determine whether there are privacy issues in the transmission process in a simple and efficient way, ensuring the integrity of the data and realizing the verifiability of the transmission.
[0152] Embodiment 3:
[0153] Based on the same inventive concept, the present invention also provides a cloud-side device in an edge scenario of power Internet of Things, including:
[0154] A sending module, used for sending the aggregated ciphertext to each target sensor terminal determined based on the secret sharing algorithm;
[0155] A receiving module, used for receiving a subkey corresponding to the secret sharing algorithm sent by each target sensor terminal;
[0156] A decryption module, configured to decrypt the aggregated ciphertext based on each received subkey to obtain an aggregated result of the plaintext if the number of received subkeys is greater than or equal to a preset threshold of the secret sharing algorithm;
[0157] Among them, the aggregated ciphertext is obtained by aggregating the encryption results of homomorphic encryption of multidimensional user data sent by each sensor terminal by the edge IoT agent; the subkey is determined by each target sensor terminal based on the obtained aggregated ciphertext and the pre-stored private key corresponding to the homomorphic encryption.
[0158] In a possible implementation, the cloud-side device further includes a target device determination module, and the target device determination module is used to:
[0159] Setting a threshold value of the number of sensor terminals required for decryption based on a preset threshold value of the secret sharing algorithm;
[0160] Based on the device quantity threshold, randomly selecting multiple sensor terminals to form a decryption device set, wherein the number of sensor terminals in the decryption device set is greater than or equal to the device quantity threshold;
[0161] The sensor terminals in the decryption device set are taken as target sensor terminals.
[0162] In a possible implementation, the decryption module includes:
[0163] A parameter calculation submodule, used to calculate a key recovery parameter corresponding to each subkey based on the pre-stored sharing parameters of the secret sharing algorithm and each received subkey;
[0164] A decryption key recovery submodule, used to recover the decryption key of the aggregate ciphertext based on the key recovery parameters corresponding to each subkey;
[0165] A decryption submodule is used to decrypt the aggregate ciphertext based on the decryption key.
[0166] In a possible implementation manner, the receiving module is further used for:
[0167] Receive a hash value corresponding to the encryption result of the multi-dimensional user data sent by the edge IoT agent;
[0168] The cloud-side device further includes:
[0169] The first verification module is used to verify the aggregation result of the plaintext based on the hash value corresponding to the encryption result of the multi-dimensional user data and a pre-stored hash algorithm.
[0170] In a possible implementation, the receiving module is further used to receive a message authentication code generated based on a hash value corresponding to an encryption result of the multi-dimensional user data and sent by the edge IoT agent; if the verification based on the message authentication code is passed, receiving the aggregated ciphertext sent by the edge IoT agent;
[0171] The cloud-side device further includes:
[0172] The second verification module is used to verify the hash value corresponding to the encryption result of the multi-dimensional user data based on the message authentication code and a pre-stored message authentication code function.
[0173] In a possible implementation, the encryption result of the multi-dimensional user data is obtained based on a super-increasing sequence, and the cloud-side device further includes a statistical analysis module, which is used to:
[0174] Solving the aggregation results of the user data in each data dimension for the aggregation results of the plaintext based on the increasing property of the super-increasing sequence, to obtain the aggregation results of the user data in each data dimension;
[0175] Based on the aggregation results of user data in each data dimension, statistical analysis of the corresponding data dimension is performed to obtain statistical results for each data dimension.
[0176] Embodiment 4:
[0177] Based on the same inventive concept, the present invention also provides a sensor terminal, comprising:
[0178] A receiving module, used to receive the aggregated ciphertext sent by the cloud-side device;
[0179] A subkey determination module, configured to determine a subkey required to decrypt the aggregated ciphertext based on the aggregated ciphertext and a pre-stored secret sharing corresponding to a secret sharing algorithm;
[0180] A sending module, used for sending the subkey to the cloud-side device;
[0181] Among them, the aggregated ciphertext is obtained by aggregating the encryption results of homomorphic encryption of multi-dimensional user data sent by each sensor terminal by the edge IoT agent; the subkey is associated with the private key corresponding to the homomorphic encryption, and the subkey is used by the cloud-side device to decrypt the aggregated ciphertext.
[0182] In a possible implementation, the sensor terminal further includes an encryption module, which is used to homomorphically encrypt the multidimensional user data collected by itself based on a super-increasing sequence to obtain an encryption result of the multidimensional user data corresponding to the current sensor terminal;
[0183] The sending module is also used to send the encryption result of the multi-dimensional user data corresponding to the current sensor terminal to the edge IoT proxy, so that the edge IoT proxy obtains the aggregated ciphertext and sends it to the cloud side device.
[0184] In a possible implementation manner, the encryption module is further used for:
[0185] Generate a hash value associated with the encryption result of the multi-dimensional user data corresponding to the current sensor terminal using a linear homomorphic hash algorithm;
[0186] A hash value associated with the encryption result of the multidimensional user data corresponding to the current sensor terminal is sent to the edge IoT proxy, so that the edge IoT proxy obtains the hash value and sends it to the cloud side device, and the cloud side device verifies the decryption result based on the obtained hash value and the linear homomorphic hash algorithm.
[0187] Embodiment 5:
[0188] Based on the same inventive concept, the present invention also provides a data confidential aggregation system that is resistant to key leakage in the edge scenario of the power Internet of Things. The system includes the cloud-side device described in any implementation manner in the above-mentioned Example 3 and the sensor terminal described in any implementation manner in the above-mentioned Example 4.
[0189] In a possible implementation, the system may further include an edge IoT agent, which is used to receive encryption results from each sensor terminal and aggregate the encryption results.
[0190] In a possible implementation, the system may further include a trusted party, which is used to generate secret sharing of system parameters, encryption keys, and decryption keys during the system initialization phase, and then distribute the generated parameters and keys to the corresponding participants in the system. The trusted party may be a third party or a power IoT cloud-side device recognized by the participants.
[0191] It should be noted that the methods in Embodiment 1 and Embodiment 2 may be implemented by an electronic device, which may be a computer device, a single-chip device, an intelligent mobile device, etc. Figure 3 As shown, the electronic device in this embodiment may include a processor, a memory, a transceiver component, etc. The memory, the processor, and the transceiver component are connected via a bus; the memory may be used to store an execution program, and an exemplary execution program may include instructions; the processor is used to execute the instructions stored in the memory. The memory may also be used to store data, which may be called and / or modified when the instructions are executed.
[0192] The processor may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc. It is the computing core and control core of the terminal, which is suitable for implementing one or more instructions, and is specifically suitable for loading and executing one or more instructions in a storage medium to implement the corresponding method flow or corresponding functions, so as to implement the steps of a data confidential aggregation method for resisting key leakage in an edge scenario of the power Internet of Things in the above-mentioned embodiment.
[0193] In addition, the methods in Example 1 and Example 2 can also be implemented by a readable storage medium, specifically an electronic device readable storage medium (Memory), which is a memory device in an electronic device for storing programs and data. It can be understood that the storage medium here can include both built-in storage media in electronic devices and, of course, extended storage media supported by electronic devices. The storage medium provides a storage space that stores the operating system of the terminal. In addition, one or more instructions suitable for being loaded and executed by a processor are also stored in the storage space, and these instructions can be one or more execution programs (including program codes). It should be noted that the storage medium here can be a high-speed RAM memory or a non-volatile memory (non-volatile memory), such as at least one disk storage. The processor loads and executes one or more instructions stored in the storage medium, which can implement the steps of a method for anti-key leakage data confidentiality aggregation in an edge scenario of the power Internet of Things in the above embodiment.
[0194] Those skilled in the art will appreciate that embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0195] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0196] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0197] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.
[0198] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention rather than to limit its protection scope. Although the present invention has been described in detail with reference to the above embodiments, ordinary technicians in the field should understand that after reading the present invention, those skilled in the art can still make various changes, modifications or equivalent substitutions to the specific implementation methods of the application, but these changes, modifications or equivalent substitutions are all within the protection scope of the claims to be approved.
Claims
1. A method for data aggregation in a power IoT edge scenario to prevent key leakage, characterized in that: include: Sending aggregated ciphertext to each target sensor terminal determined based on the secret sharing algorithm; Receiving a subkey corresponding to the secret sharing algorithm sent by each target sensor terminal; If the number of received subkeys is greater than or equal to a preset threshold of the secret sharing algorithm, decrypt the aggregated ciphertext based on each received subkey to obtain an aggregated result of the plaintext; The aggregated ciphertext is obtained by aggregating the encryption results of the homomorphic encryption of the multi-dimensional user data sent by each sensor terminal by the edge IoT agent; The subkey is determined by each target sensor terminal based on the obtained aggregated ciphertext and the pre-stored homomorphic encryption corresponding private key secret sharing.
2. The method according to claim 1, characterized in that Before sending the aggregated ciphertext to each target sensor terminal determined based on the secret sharing algorithm, the method further includes: Setting a threshold value of the number of sensor terminals required for decryption based on a preset threshold value of the secret sharing algorithm; Based on the device quantity threshold, randomly selecting multiple sensor terminals to form a decryption device set, wherein the number of sensor terminals in the decryption device set is greater than or equal to the device quantity threshold; The sensor terminals in the decryption device set are taken as target sensor terminals.
3. The method according to claim 2, characterized in that The decrypting the aggregated ciphertext based on each received subkey to obtain a plaintext aggregated result includes: Based on the shared parameters of the pre-stored secret sharing algorithm and each received subkey, a key recovery parameter corresponding to each subkey is calculated; Recovering the decryption key of the aggregated ciphertext based on the key recovery parameters corresponding to each subkey; The aggregate ciphertext is decrypted based on the decryption key.
4. The method according to claim 1, characterized in that: Before sending the aggregated ciphertext to each target sensor terminal determined based on the secret sharing algorithm, the method further includes: Receive a hash value corresponding to the encryption result of the multi-dimensional user data sent by the edge IoT agent; After decrypting the aggregated ciphertext based on each received subkey to obtain an aggregated result of the plaintext, the method further includes: The aggregation result of the plaintext is verified based on a hash value corresponding to the encryption result of the multi-dimensional user data and a pre-stored hash algorithm.
5. The method according to claim 4, characterized in that Before sending the aggregated ciphertext to each target sensor terminal determined based on the secret sharing algorithm, the method further includes: Receiving a message authentication code generated based on a hash value corresponding to an encryption result of the multi-dimensional user data and sent by the edge IoT agent; Based on the message authentication code and the pre-stored message authentication code function, the hash value corresponding to the encryption result of the multi-dimensional user data is verified; if the verification is successful, the aggregated ciphertext sent by the edge IoT agent is received.
6. The method according to any one of claims 1 to 5, characterized in that: The encryption result of the multi-dimensional user data is obtained based on a super-increasing sequence. After the aggregated ciphertext is decrypted based on each received subkey to obtain an aggregated result of a plaintext, the method further includes: Solving the aggregation results of the user data in each data dimension for the aggregation results of the plaintext based on the increasing property of the super-increasing sequence, to obtain the aggregation results of the user data in each data dimension; Perform statistical analysis on the corresponding data dimension based on the aggregation results of user data in each data dimension.
7. A cloud-side device in an edge scenario of power Internet of Things, characterized in that: include: A sending module, used to send the aggregated ciphertext to each target sensor terminal determined based on the secret sharing algorithm; A receiving module, used for receiving a subkey corresponding to the secret sharing algorithm sent by each target sensor terminal; A decryption module, configured to decrypt the aggregated ciphertext based on each received subkey to obtain an aggregated result of the plaintext if the number of received subkeys is greater than or equal to a preset threshold of the secret sharing algorithm; The aggregated ciphertext is obtained by aggregating the encryption results of the homomorphic encryption of the multi-dimensional user data sent by each sensor terminal by the edge IoT agent; The subkey is determined by each target sensor terminal based on the obtained aggregated ciphertext and the pre-stored homomorphic encryption corresponding private key secret sharing.
8. The device according to claim 7, characterized in that The cloud-side device further includes a target device determination module, and the target device determination module is used to: Setting a threshold value of the number of sensor terminals required for decryption based on a preset threshold value of the secret sharing algorithm; Based on the device quantity threshold, randomly selecting multiple sensor terminals to form a decryption device set, wherein the number of sensor terminals in the decryption device set is greater than or equal to the device quantity threshold; The sensor terminals in the decryption device set are taken as target sensor terminals.
9. The device according to claim 8, characterized in that The decryption module comprises: A parameter calculation submodule, used to calculate a key recovery parameter corresponding to each subkey based on the pre-stored sharing parameters of the secret sharing algorithm and each received subkey; A decryption key recovery submodule, used to recover the decryption key of the aggregate ciphertext based on the key recovery parameters corresponding to each subkey; A decryption submodule is used to decrypt the aggregate ciphertext based on the decryption key.
10. The device according to claim 7, characterized in that The receiving module is also used for: Receive a hash value corresponding to the encryption result of the multi-dimensional user data sent by the edge IoT agent; The cloud-side device further includes: The first verification module is used to verify the aggregation result of the plaintext based on the hash value corresponding to the encryption result of the multi-dimensional user data and a pre-stored hash algorithm.
11. The device according to claim 10, characterized in that The receiving module is also used to receive a message authentication code generated based on a hash value corresponding to the encryption result of the multi-dimensional user data and sent by the edge IoT agent; If the verification based on the message authentication code is passed, receiving the aggregated ciphertext sent by the edge IoT agent; The cloud-side device further includes: The second verification module is used to verify the hash value corresponding to the encryption result of the multi-dimensional user data based on the message authentication code and a pre-stored message authentication code function.
12. The device according to any one of claims 7 to 11, characterized in that: The encryption result of the multi-dimensional user data is obtained based on a super-increasing sequence, and the cloud-side device further includes a statistical analysis module, which is used to: Solving the aggregation results of the user data in each data dimension for the aggregation results of the plaintext based on the increasing property of the super-increasing sequence, to obtain the aggregation results of the user data in each data dimension; Based on the aggregation results of user data in each data dimension, statistical analysis of the corresponding data dimension is performed to obtain statistical results for each data dimension.
13. A method for data aggregation in a power IoT edge scenario to prevent key leakage, characterized in that: include: Receive the aggregated ciphertext sent by the cloud-side device; Determining a subkey required to decrypt the aggregated ciphertext based on the aggregated ciphertext and a pre-stored secret sharing corresponding to a secret sharing algorithm; Sending the subkey to the cloud-side device; Among them, the aggregated ciphertext is obtained by aggregating the encryption results of the homomorphic encryption of the multi-dimensional user data sent by each sensor terminal by the edge IoT agent; the subkey is associated with the private key corresponding to the homomorphic encryption, and the subkey is used by the cloud-side device to decrypt the aggregated ciphertext.
14. The method according to claim 13, characterized in that Before receiving the aggregated ciphertext sent by the cloud-side device, the method further includes: Based on the super-increasing sequence, the multi-dimensional user data collected by itself is homomorphically encrypted to obtain the encryption result of the multi-dimensional user data corresponding to the current sensor terminal; The encryption result of the multi-dimensional user data corresponding to the current sensor terminal is sent to the edge IoT proxy, so that the edge IoT proxy obtains the aggregated ciphertext and sends it to the cloud-side device.
15. The method according to claim 14, characterized in that After homomorphically encrypting the multidimensional user data collected by itself based on the super-increasing sequence to obtain the encryption result of the multidimensional user data corresponding to the current sensor terminal, the method further includes: Generate a hash value associated with the encryption result of the multi-dimensional user data corresponding to the current sensor terminal using a linear homomorphic hash algorithm; A hash value associated with the encryption result of the multidimensional user data corresponding to the current sensor terminal is sent to the edge IoT proxy, so that the edge IoT proxy obtains the hash value and sends it to the cloud side device, and the cloud side device verifies the decryption result based on the obtained hash value and the linear homomorphic hash algorithm.
16. A sensor terminal, characterized in that: include: A receiving module, used to receive the aggregated ciphertext sent by the cloud-side device; A subkey determination module, configured to determine a subkey required to decrypt the aggregated ciphertext based on the aggregated ciphertext and a pre-stored secret sharing corresponding to a secret sharing algorithm; A sending module, used for sending the subkey to the cloud-side device; Among them, the aggregated ciphertext is obtained by aggregating the encryption results of the homomorphic encryption of the multi-dimensional user data sent by each sensor terminal by the edge IoT agent; the subkey is associated with the private key corresponding to the homomorphic encryption, and the subkey is used by the cloud-side device to decrypt the aggregated ciphertext.
17. The sensor terminal according to claim 16, characterized in that: The sensor terminal further includes an encryption module, which is used to homomorphically encrypt the multidimensional user data collected by itself based on a super-increasing sequence to obtain an encryption result of the multidimensional user data corresponding to the current sensor terminal; The sending module is also used to send the encryption result of the multi-dimensional user data corresponding to the current sensor terminal to the edge IoT proxy, so that the edge IoT proxy obtains the aggregated ciphertext and sends it to the cloud side device.
18. The sensor terminal according to claim 17, characterized in that: The encryption module is also used for: Generate a hash value associated with the encryption result of the multi-dimensional user data corresponding to the current sensor terminal using a linear homomorphic hash algorithm; A hash value associated with the encryption result of the multidimensional user data corresponding to the current sensor terminal is sent to the edge IoT proxy, so that the edge IoT proxy obtains the hash value and sends it to the cloud side device, and the cloud side device verifies the decryption result based on the obtained hash value and the linear homomorphic hash algorithm.
19. A data aggregation system for resisting key leakage in the edge scenario of power Internet of Things, characterized in that: The system comprises the cloud-side device according to any one of claims 7 to 12 and the sensor terminal according to any one of claims 16 to 18.
Citation Information
Cited By
Electric power data multi-dimensional multi-subset edge dense state fusion calculation system
CN121098472A