A cloud chain fusion distributed computing offloading method
Patent Information
- Application Number
- CN202311586649.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-11-27
- Publication Date
- 2026-09-15
- Estimated Expiration
- 2043-11-27
AI Technical Summary
[0009]鉴于此,本发明公开提供了一种云链融合分布式计算卸载方法,以解决智能电网领域复杂计算卸载过程中的数据隐私问题、结果可验证问题和单点故障问题
[0047] This invention provides a cloud-chain integrated distributed computing offloading method. This method protects the privacy of outsourced computing requests through encryption and introduces a blinding factor to enhance the confidentiality of computing requests. Furthermore, it addresses single points of failure and shortens computing request response time through distributed computing. This method is applicable to smart grid services with various complex computing needs and has broad practical value.
Smart Images

Figure CN117608689B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the fields of privacy protection and distributed computing technology, and in particular to a cloud-chain integrated distributed computing offloading method. Background Technology
[0002] With the development of power grids integrating 5G, the number of power service terminals and the resulting traffic are increasing, posing challenges to the existing power grid architecture. One solution is to offload computing tasks from the power system to cloud servers to improve computing efficiency and reduce energy consumption. However, traditional cloud computing solutions suffer from transmission costs and communication latency issues when handling latency-sensitive computing tasks in the power grid.
[0003] Edge computing, as a new computing paradigm, offers a solution for handling massive amounts of data. Current optimization solutions primarily offload tasks to mobile edge computing servers, reducing core network load and transmission distance. However, relying on MEC servers for task processing still suffers from queuing latency and resource contention. Terminal-assisted computing (TAC) is emerging as a potential solution, reducing transmission latency and improving computational efficiency. However, existing solutions still lack accuracy in offloading and allocating edge computing tasks to nearby terminals.
[0004] Computational tasks in power systems may involve trade secrets or sensitive information. In the power industry, some computational tasks may involve trade secrets, such as collaborations between suppliers, services offered, and pricing strategies. Therefore, when performing computational tasks, it is essential to ensure that this sensitive information remains confidential. However, current methods pose certain risks in protecting trade secrets.
[0005] Secondly, computation requests in power systems may contain sensitive data such as location information and user privacy data. When users or devices submit computation requests, these requests may contain information about user location, personal information, or other sensitive data. To protect user privacy and data security, appropriate privacy protection measures must be taken. However, current methods still have some problems in ensuring the privacy of computation requests.
[0006] Furthermore, once data or computational tasks in the power system are offloaded to edge computing servers, direct control over them is lost, leading to the risk of computational results being tampered with. Edge computing servers are typically located at the edge or remote locations of the power system, and may be affected by physical environment, network security, and other factors, thus impacting the integrity and reliability of computational tasks. This can result in the risk of malicious tampering of computational results or data corruption, thereby affecting the accuracy and reliability of the power system's operation.
[0007] Traditional centralized computing suffers from a single point of failure. In this model, all computational tasks are processed on one or a few central servers. If one of these servers fails, the entire computational task is disrupted, severely violating the power system's requirements for computational response latency. This single point of failure can lead to delays or failures in computational tasks, thus impacting the normal operation of the power system.
[0008] In summary, while current methods can be used to perform computational tasks in power systems, they still have some shortcomings in terms of protecting trade secrets, privacy, reliability, and computational response latency. Therefore, we need to further research and improve related technologies to address these issues and ensure the security, reliability, and efficiency of power systems. Summary of the Invention
[0009] In view of this, the present invention discloses a cloud-chain integrated distributed computing offloading method to solve the problems of data privacy, result verifiability and single point of failure in the complex computing offloading process in the field of smart grid.
[0010] The technical solution provided by this invention is specifically a cloud-chain integrated distributed computing offloading method.
[0011] include:
[0012] The edge server uses the public key pk to encrypt and decompose the initialized computation function to generate a distributed computation pattern; the blockchain network stores the computation pattern and generates verification evidence.
[0013] The smart terminal initiates a computation request, generates a blinding factor based on the public key pk, and blinds the input x using the blinding factor r to obtain the blinded input σ. x =x+r;
[0014] The edge server assigns values to the distributed computing model and sends computing requests to the cloud server;
[0015] The computing nodes in the cloud server perform calculations based on the parameters of the received computing request and return the intermediate results to the blockchain network for verification.
[0016] The blockchain network uses the verification evidence to verify the calculated intermediate results, and after receiving a sufficient number of correct results, returns the intermediate result set to the edge server.
[0017] The edge server decrypts the intermediate results using the private key sk. After decryption, it uses the polynomial difference method to solve the blinded calculation result f(x+r) and returns the result to the smart terminal.
[0018] The intelligent terminal performs deblinding processing on the blinded calculation result f(x+r) by combining the blinding factor r, and solves for the final calculation result f(x).
[0019] The computation function, public key, and private key received by the edge server are after initialization processing;
[0020] The initialization process involves the service provider using homomorphic encryption and blinding methods to encrypt complex computational functions and user parameters in the smart grid, resulting in an initialized computational function f(x) = a0 + a1x. 1 +...+a k-1 x k-1 and the public key cloud chain integrated distributed computing offloading method and private key sk = Paillier.sk;
[0021] The encryption process involves the service provider initializing a univariate k-1 degree polynomial function family F. Call the key generation algorithm Paillier.KeyGen(1) in the homomorphic encryption algorithm. λ Generate a public-private key pair (Paillier.pk, Paillier.sk), where λ represents the security parameter; select a random number R as the boundary of the blinding factor, such that R > max(F); upload the function f(x) = a0 + a1x. 1 +...+a k-1 x k-1 The public key pk = {Paillier.pk, R} and the private key sk = Paillier.sk are sent to the edge server.
[0022] Furthermore, the edge server uses the public key pk to encrypt and decompose the initialized computation function:
[0023] Edge server let A = [a0 a1 ... a k-1 The coefficient vector of the polynomial f uploaded by the service provider is used, combined with the public key pk received during the initialization phase, to encrypt the coefficient vector A using Paillier.Enc(pk, A), resulting in the encrypted result σ. A =[c0 c1 ... c k-1 ] and the corresponding function expression σ f (x)=c0+c1x 1 +...+c k-1 x k-1 ;
[0024] The edge server uses the encrypted function σ f Generate the coding coefficient matrix Δ = [c i,j ], where c i,j =c i×n+j, i∈[n], j∈[n], This leads to the encrypted function σ. f (x)=x z Δz, where x z =[1 x n ...x n(n-1) ], z = [1 x ... x n-1 ] T x i This represents a placeholder variable input by the user. The coefficient matrix Δ is then decomposed row-wise to obtain the decomposed expression Δ=[Δ0 Δ1 ... Δ n-1 ] T ;
[0025] According to the expression, let in This represents a placeholder variable for the cloud server number during the calculation of the encoding result. The value is assigned during the online calculation and unloading process, where i∈[n], j∈[n]. make get
[0026] The expression for the intermediate encoded result of the generated vector multiplication is: Thus, the decomposed calculation model is obtained. Save calculation mode
[0027] The blockchain network uses a pseudo-random number generator G to generate a random verification matrix ρ of size m×n, where m is a positive integer; then it calculates the verification evidence τ=zρ used to verify the results of distributed computing, and saves the verification parameters π={ρ,τ}.
[0028] Furthermore, the smart terminal initiates a computation request, generates a blinding factor r based on the public key pk, and blinds the input of the blinding factor r to obtain σ. x =x+r:
[0029] The smart terminal accesses the edge server to obtain a random number R from the public key, generates a local blinding factor r such that r ≥ R; and uses the blinding factor r to encode the input to obtain the encoded input σ. x =x+r, save the blinding factor r and upload the encoded input σ when initiating the calculation request. x .
[0030] Furthermore, the edge server assigns values to the distributed computing mode and initiates a computing request to the cloud server:
[0031] The edge server, based on the received input σ x Assign values to the calculation patterns generated during the data processing stage, and then assign the calculation parameters. Send to the cloud server;
[0032] The compute nodes in the cloud server parse the received compute parameters. Obtain cloud server ID i and encoding request σ x and intermediate encoded result expression Substitute the cloud server number i into the expression Calculated Encode request σ x Substitute into expression Calculated Calculate intermediate encoding results Send distributed computing results Verification is performed on the blockchain network.
[0033] Furthermore,
[0034] The blockchain network parses the distributed computing results sent by the cloud server computing nodes. Obtain intermediate encoding results and intermediate vector Query the locally stored verification evidence π = {ρ, τ} and calculate respectively. and Verify equation pf l =pf r If the result is valid, accept it; otherwise, ignore it. After verifying s different distributed computing results, send the set of distributed computing results. To the edge server, P is the set of the first s verified cloud server IDs.
[0035] Furthermore,
[0036] The edge server calls Paillier.Dec(sk, σ) w The method applies to the distributed computing results σ w Decode to obtain in To verify the successful distributed computing results The corresponding plaintext; using the decoded distributed computation result w, the corresponding polynomial coefficient vector D = [d0 d1 ... d...] is obtained through Lagrange interpolation using LagrangeForm(w). n-1 ] T Generate vectors Connect the polynomial coefficient vector D with the vector The encoding result is obtained by right multiplication. Return the blinding result σ y To smart terminals.
[0037] Furthermore, the smart terminal receives the blinding result σ returned by the edge server. y Then, the blinding factor r stored locally is used to deblind the sample, resulting in the final result y = σ. y mod r.
[0038] This invention proposes a cloud-chain integrated distributed computing offloading system, comprising:
[0039] An edge server is used to encrypt and decompose the initialized computation function using a public key (pk) to generate a distributed computing model; the blockchain network stores the distributed computing model and generates verification evidence.
[0040] The smart terminal initiates a computation request, generates a blinding factor based on the public key pk, and blinds the input x using the blinding factor r to obtain the blinded input σ. x =x+r;
[0041] The edge server assigns a value to the distributed computing mode and initiates a computing request to the cloud server;
[0042] The cloud server performs calculations based on the parameters of the received calculation request and returns the intermediate results to the blockchain network for verification.
[0043] The blockchain network uses the verification evidence to verify the calculated intermediate results, and after receiving a sufficient number of correct results, returns the intermediate result set to the edge server.
[0044] The edge server decrypts the intermediate result set using the private key sk, and after decryption, it uses the polynomial difference method to solve the blinded calculation result f(x+r) and returns the result to the smart terminal.
[0045] The intelligent terminal performs deblinding processing on the blinded calculation result f(x+r) by combining the blinding factor r, and solves for the final calculation result.
[0046] Another aspect of the present invention provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the cloud-chain converged distributed computing offloading method described above.
[0047] This invention provides a cloud-chain integrated distributed computing offloading method. This method protects the privacy of outsourced computing requests through encryption and introduces a blinding factor to enhance the confidentiality of computing requests. Furthermore, it addresses single points of failure and shortens computing request response time through distributed computing. This method is applicable to smart grid services with various complex computing needs and has broad practical value.
[0048] The method of this invention can effectively protect the privacy and security of computing services and user data, and improve computing efficiency while ensuring the correctness of calculations.
[0049] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and do not limit the disclosure of the present invention. Attached Figure Description
[0050] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with the invention and, together with the description, serve to explain the principles of the invention.
[0051] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0052] Figure 1 A system model diagram of a cloud-chain integrated distributed computing offloading method provided in an embodiment of the present invention;
[0053] Figure 2 This is a flowchart illustrating the implementation of a cloud-chain integrated distributed computing offloading method according to an embodiment of the present invention. Detailed Implementation
[0054] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numerals in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present invention. Rather, they are merely examples of systems consistent with some aspects of the invention as detailed in the appended claims.
[0055] To address issues such as privacy leaks, high computational latency, and weak fault tolerance, this implementation plan proposes a cloud-chain integrated privacy-preserving distributed computing offloading scheme. It uses distributed computing to solve single-point-of-failure problems and shorten the response time for computation requests; it uses encryption to protect the privacy of outsourced computation requests; and it introduces a blinding factor to protect the confidentiality of computation requests.
[0056] like Figure 1 As shown, the system architecture for implementing this method includes the following roles:
[0057] (1) Service Providers: Owners of compute-intensive services who choose to outsource these services to cloud servers, thereby providing high-performance computing services to smart terminals. This decision enables smart terminals to access resources far exceeding their own computing capabilities to meet the demands of complex tasks and applications. One of the key tasks of service providers is to ensure the efficient use of computing resources while protecting user privacy and data security.
[0058] (2) Smart Terminals: Intelligent devices equipped with sensors, communication modules, and computing units. They can not only sense the environment and collect data, but also initiate service requests to cloud servers and respond to network communications within the power grid. This enables smart terminals to proactively participate in the offloading and execution of computing tasks, thereby optimizing the performance and efficiency of the power grid. These terminals may include various forms such as smart home devices, mobile devices, and industrial sensors, and their role in the power grid is becoming increasingly important, providing support for the realization and operation of smart grids.
[0059] (3) Edge servers: Computing and communication nodes distributed around smart terminals. These servers possess certain computing, storage, and communication capabilities, and can communicate with smart terminals and remote cloud servers via wireless networks. When unloading computing tasks, they execute offline initialization algorithms in the offline phase to decompose the original computing tasks and generate the computational patterns required by the algorithms, and execute recovery algorithms in the online phase to compute the encoded results. Edge servers play a crucial role in reducing latency and improving response speed, especially important for applications requiring real-time decision-making.
[0060] (4) Cloud servers: Large-scale distributed server clusters with enormous storage and computing capabilities. They provide computing resources and offload computation for the power grid's computationally intensive business applications. These cloud servers are highly scalable in executing computationally intensive tasks, but ensuring data security and privacy protection is a complex task. Cloud servers typically work in conjunction with edge servers to achieve efficient task distribution and execution.
[0061] (5) Blockchain Network: Composed of edge server nodes, its main function is to store the computing patterns generated by the edge servers and verify the computing results of the cloud servers. It provides stable and traceable information storage for the network model and ensures the credibility and transparency of the computing results by executing verification algorithms through smart contracts. This blockchain network plays an important role in maintaining the security and traceability of power grid computing tasks, enabling all parties in the power grid to trust the execution and results of computing tasks.
[0062] like Figure 2 As shown, the above method includes the following steps:
[0063] The service provider initializes the service and the public / private key pair;
[0064] Specifically, S1: Initialization phase: The service provider initializes the complex calculation functions and user parameters in the smart grid, obtains the initialized calculation functions and public-private key pairs (sk, pk), and uploads the initialized calculation functions and public-private key pairs (sk, pk) to the edge server;
[0065] Specifically, in the initialization phase: the service provider initializes a family of univariate k-1 degree polynomial functions F. Call the key generation algorithm Paillier.KeyGen(1) in the homomorphic encryption algorithm. λ Generate a public-private key pair (Paillier.pk, Paillier.sk); select a random number R as the boundary of the blinding factor, such that R > max(F); output the public key pk = {Paillier.pk, R} and the private key sk = Paillier.sk. The upload function f(x) = a0 + a1x 1 +...+a k-1 x k-1 The public key pk = {Paillier.pk, R} and the private key sk = Paillier.sk are sent to the edge server.
[0066] Pseudocode for the initialization method used by the service provider:
[0067]
[0068] The edge server uses homomorphic encryption to encrypt the polynomial coefficients and factorizes the polynomial calculation; the blockchain network generates verification evidence; the smart terminal initiates a calculation request and performs blinding processing on the input;
[0069] To protect the privacy of computational tasks and requests, homomorphic encryption and polynomial congruence are employed. Homomorphic encryption ensures that computational tasks remain encrypted during transmission and processing, allowing only nodes with the corresponding private key to decrypt and perform computations. Simultaneously, a blinding factor is introduced using polynomial congruence theory to hide the specific content of the computational tasks, preventing nodes from accessing detailed information and protecting user data privacy. This privacy protection scheme effectively prevents data leakage and privacy theft while maintaining high efficiency in computation offloading, providing a safer and more reliable guarantee for power grid computation offloading.
[0070] S2: Data processing stage: The edge server uses the public key pk to encrypt and decompose the initialized calculation function to generate a distributed computing model; the blockchain network stores the computing model and generates verification evidence.
[0071] The smart terminal initiates a computation request and uses the public key pk to blind its input;
[0072] Step S2 involves calculating the encoding algorithm, requesting the encoding algorithm, and offline initialization algorithm;
[0073] The computational encoding algorithm is used to encode the function f∈F to protect the data privacy and security of function f.
[0074] The edge server uses a computational encoding algorithm to encode the computational function to protect the data privacy and security of the computational function. The computational encoding algorithm is as follows:
[0075] The expression for the function f without loss of generality is:
[0076] f(x) = a0 + a1x 1 +...+a k-1 x k-1
[0077] Let A=[a0 a1 ... a k-1 ] is the coefficient vector of polynomial f.
[0078] The coefficient vector A is encoded using Paillier.Enc(pk, A) to obtain the encoded result:
[0079] σ A =[c0 c1 ... c k-1 ]
[0080] Output the encoded function:
[0081] σ f (x)=c0+c1x 1 +...+c k-1 x k-1 ;
[0082] Pseudocode for computational encoding algorithm:
[0083]
[0084] The request encoding algorithm is used to blind the input x of the mobile terminal based on the random number R in the public key pk, thereby protecting the privacy of the query request. The smart terminal initiates a computation request and blinds its input using the public key pk; this achieves the protection of the query request's privacy. The specific execution steps are as follows:
[0085] The public key pk is parsed into {Paillier.pk, R}.
[0086] Randomly select a blinding factor r such that r ≥ R.
[0087] The input x is encoded as follows:
[0088] σ x =x+r
[0089] Output encoded input σ x .
[0090] The offline initialization algorithm InitOffline(σ) f (n): This mainly involves decomposing the encoding function into a computational pattern of n vector multiplications. And π, used as evidence to verify the calculation results. The specific algorithm execution steps are as follows:
[0091] According to the encoded function σ f Generate coding coefficient matrix
[0092] Δ=[c i,j ]
[0093] Where c i,j =c i×n+j , i∈[n], j∈[n],
[0094] This leads to the encoded function σ. f The expression is:
[0095] σ f (x)=x z Δz
[0096] Where x z =[1 x n ... x n(n-1) ], z = [1 x ... x n-1 ] T ;x in i This represents a placeholder variable for user input.
[0097] By decomposing the coefficient matrix Δ by rows, we can obtain the decomposed expression:
[0098] Δ=[Δ0 Δ1 ... Δ n-1 ] T
[0099] According to the above expression, let in This represents a placeholder variable for the cloud server number during the calculation of the encoding result. The value is assigned during the online calculation and unloading process, where i∈[n], j∈[n]. make Final conclusion:
[0100]
[0101] Based on the above initialization, the expression for generating the intermediate encoded result of vector multiplication is:
[0102]
[0103] Thus, the decomposed calculation model is obtained.
[0104] A pseudo-random number generator G is used to generate a random verification matrix ρ of size m×n, where m is a positive integer.
[0105] Calculate validation evidence used to verify the results of distributed computing:
[0106] τ=zρ
[0107] Output calculation mode And verify the parameters π = {ρ, τ}.
[0108] Offline initialization algorithm pseudocode:
[0109]
[0110]
[0111] Specifically, S2 includes:
[0112] S21: Edge server lets A = [a0 a1 ... a k-1 The coefficient vector of the polynomial f uploaded by the service provider is used, combined with the public key pk received during the initialization phase, to encrypt the coefficient vector A using Paillier.Enc(pk, A), resulting in the encrypted result σ. A =[c0 c1 ... c k-1 ] and the corresponding function expression σ f (x)=c0+c1x 1 +...+c k-1 x k-1 ;
[0113] S22: The edge server uses the encrypted function σ f Generate the coding coefficient matrix Δ = [c i,j ], where c i,j =c i×n+j Let i∈[n], j∈[n], and then we obtain the encrypted function σ. f (x)=x z Δz, where x z =[1 x n ... x n(n-1) ], z = [1 x ... x n-1 ], x iThis represents a placeholder variable input by the user. The coefficient matrix Δ is then decomposed row-wise to obtain the decomposed expression Δ=[Δ0 Δ1 ... Δ n-1 ] T ;
[0114] According to the expression, let in This represents a placeholder variable for the cloud server number during the calculation of the encoding result. The value is assigned during the online calculation and unloading process, where i∈[n], j∈[n]. make get
[0115] The expression for the intermediate encoded result of the generated vector multiplication is: Thus, the decomposed calculation model is obtained. Save calculation mode
[0116] S23: The blockchain network uses a pseudo-random number generator G to generate a random verification matrix ρ of size m×n, where m is a positive integer; then it calculates the verification evidence τ=zρ used to verify the results of distributed computing, and saves the verification parameters π={ρ,τ};
[0117] S24: Before initiating a computation request, the smart terminal accesses the edge server to obtain a random number R from the public key, generating a local blinding factor r such that r ≥ R; the input is encoded using the blinding factor r to obtain the encoded input σ. x =x+r, save the blinding factor r and upload the encoded input σ when initiating the calculation request. x .
[0118] This invention utilizes blockchain technology in power grid computational offloading to ensure the traceability of the computation process. By recording verification data related to the computational task on the blockchain, the entire computational process can be tracked and traced. The participation record of each computational node, the computation results, and the verification process are all written to the blockchain in an immutable manner, ensuring data transparency and credibility. This traceability not only enables the detection and resolution of errors and disputes in the computation but also provides effective auditing methods to prevent potential fraud. Therefore, ensuring the traceability of computational offloading through blockchain technology further enhances the security and reliability of power grid computational offloading.
[0119] Cloud servers enable distributed computing;
[0120] S3: Distributed computing phase: The edge server assigns values to the distributed computing mode and sends a computing request to the cloud server; the computing nodes in the cloud server perform calculations according to the parameters of the received computing request and return the intermediate results to the blockchain network for verification.
[0121] S3 employs a distributed computing algorithm The computational pattern generated based on the offline initialization algorithm Calculate the results of the distributed computation. The specific algorithm execution steps are as follows:
[0122] Analysis Obtain the cloud server number i and the encoded input σ x and intermediate encoded result expression
[0123] Substitute the data i into the expression Calculated Encode request σ x Substitute into expression Calculated Calculate the intermediate encoding result:
[0124]
[0125] Output distributed computing results
[0126] Distributed computing algorithm pseudocode:
[0127]
[0128] Specifically, S3: The distributed computing phase specifically includes:
[0129] S31: The edge server, based on the received input σ x Assign values to the calculation patterns generated during the data processing stage, and then assign the calculation parameters. Send to cloud server;
[0130] S32: The compute nodes in the cloud server parse the received compute parameters. Obtain cloud server ID i and encoding request σ x and intermediate encoded result expression Substitute the cloud server number i into the expression Calculated Encode request σ x Substitute into expression Calculated Calculate intermediate encoding results Send distributed computing results Verification is performed on the blockchain network.
[0131] The blockchain network verifies the results;
[0132] This invention significantly improves computational efficiency by distributing computational tasks to a specified number of computing nodes for simultaneous processing using a distributed computing approach. It also includes a computing mode with additional computing nodes, allowing for the addition or removal of nodes based on computational needs to adapt to tasks of different scales. Even if one node fails, the others can continue processing the task, ensuring fault tolerance during computational offloading and avoiding single-point-of-failure problems, thus providing strong technical support for the power grid sector.
[0133] S4: Verification Phase: The blockchain network uses the verification evidence to verify the calculation results returned by the cloud server computing nodes. After receiving a sufficient number of correct results, it returns an intermediate result set to the edge server.
[0134] This stage employs a verification algorithm. The main purpose is to use the verification parameter π to verify the distributed computing results returned by the cloud server. The specific algorithm execution steps are as follows:
[0135] Analysis Obtain intermediate encoding results and intermediate vector π = {ρ, τ}.
[0136] Calculate the following verification content:
[0137]
[0138]
[0139] Verify whether the following equation holds true:
[0140] pf l =pf r
[0141] If true, output 1; otherwise, output 0.
[0142] Verification algorithm pseudocode:
[0143]
[0144] The verification phase specifically includes:
[0145] The blockchain network parses the distributed computing results sent by the cloud server computing nodes. Obtain intermediate encoding results and intermediate vector Query the locally stored verification evidence π = {ρ, τ} and calculate respectively. and Verify equation pf l =pf rIf the result is valid, accept it; otherwise, ignore it. After verifying s different distributed computing results, send the set of distributed computing results. To the edge server, P is the set of the first s verified cloud server IDs.
[0146] This invention guarantees the verifiability of computation results through verifiable computation. Verifiable computation, using mathematical methods and cryptographic principles, ensures the correct execution of computational tasks in a distributed environment. After the computation task is completed, participating nodes can provide evidence to prove the correctness of their computation results. This guarantee of verifiability gives grid computation offloading higher credibility and immutability, further improving the security and reliability of grid computation offloading and providing stronger technical support for grid operation.
[0147] S5: Blinding Result Calculation Stage: The edge server decrypts the intermediate result using the private key sk. After decryption, it uses the polynomial difference method to solve the blinded calculation result and returns the result to the smart terminal.
[0148] The blinding result calculation stage uses the recovery algorithm Recover(σ) w , σ f , σ x ,sk): mainly refers to the distributed computing result σ w Decryption is performed, and the encoded result is calculated using the decrypted data. The specific algorithm execution steps are as follows:
[0149] Receive the set of distributed computing results returned by the blockchain network P is the set of the first s verified cloud server IDs.
[0150] Call Paillier.Dec(sk, σ) w The method applies to the distributed computing results σ w Decoding yields:
[0151]
[0152] in To verify the successful distributed computing results The corresponding plaintext.
[0153] Using the decoded distributed computation result w, the corresponding polynomial coefficient vector is obtained through Lagrange interpolation LagrangeForm(w):
[0154] D = [d0 d1 ... d n-1 ] T
[0155] Generate vectors
[0156]
[0157] Connect the polynomial coefficient vector D with the vector Right multiplication yields the encoded result:
[0158]
[0159] Output encoding result σ y .
[0160] Recovery algorithm pseudocode:
[0161]
[0162]
[0163] The blinding result calculation stage:
[0164] The edge server calls Paillier.Dec(sk, σ) w The method applies to the distributed computing results σ w Decode to obtain in To verify the successful distributed computing results The corresponding plaintext; using the decoded distributed computation result w, the corresponding polynomial coefficient vector D = [d0 d1 ... d...] is obtained through Lagrange interpolation using LagrangeForm(w). n-1 ] T Generate vectors Connect the polynomial coefficient vector D with the vector The encoding result is obtained by right multiplication. Return the blinding result σ y To smart terminals.
[0165] S6: Final Result Calculation Stage: The smart terminal performs deblinding processing on the blinded calculation result by combining it with the public key pk, and solves for the final calculation result.
[0166] This stage employs the result decoding algorithm DecodeR(σ). y ,pk): The main task is to use a random number r to encode the result σ y Decoding is then performed. The specific algorithm execution steps are as follows:
[0167] For the encoding result σ y Decode the code to obtain the final result:
[0168] y = σ y mod r
[0169] Output the final result y.
[0170] Specifically, the smart terminal receives the blinding result σ returned by the edge server. y Then, the blinding factor r stored locally is used to deblind the sample, resulting in the final result y = σ. y mod r.
[0171] On the one hand, this implementation plan also proposes a cloud-chain integrated distributed computing offloading system, including:
[0172] Data processing module: used to generate and store distributed computing patterns and generate verification evidence; and to perform blinding processing on computing requests;
[0173] Distributed computing module: used to assign values to the distributed computing mode and send computing requests to the cloud server; and to perform calculations according to the parameters of the computing request, and verify the results of the calculations;
[0174] Verification module: Used to verify the calculation results returned by the cloud server computing nodes and to aggregate a sufficient number of correct results to the edge server;
[0175] Blinding result calculation module: used to decrypt intermediate results using private key sk, and then solve the blinded calculation result using polynomial difference method;
[0176] Furthermore, the system also includes an initialization module for encrypting complex calculation functions and user parameters in the smart grid.
[0177] Finally, this embodiment provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the cloud-chain converged distributed computing offloading method.
[0178] In summary, this invention discloses a privacy-preserving and verifiable distributed computing offloading method for smart grids that integrates blockchain and cloud computing. It employs homomorphic encryption and blinding methods to encrypt complex calculations and user parameters in the smart grid and upload them to edge servers and cloud servers. The edge servers decompose the computation in the encrypted state, and the cloud servers solve the decomposed computation based on the encrypted data in a distributed manner. This effectively protects privacy during the computation process and improves computational efficiency. During the computation process, redundant computation methods are used to verify the computation results returned by the cloud server in the blockchain network, ensuring the correctness of the computation results and the traceability of the computation process. Furthermore, by designing redundant nodes in the distributed computation process executed in the cloud server, the fault tolerance of the computation process is improved.
[0179] This method employs homomorphic encryption, blinding techniques, and redundant computation, and integrates blockchain and cloud computing technologies to address data privacy, result verifiability, and single point of failure issues in the complex computational offloading process of the smart grid.
[0180] This invention can be widely applied to various complex polynomial-based calculations in smart grids, such as load forecasting and optimization, and large-scale data analysis.
[0181] Other embodiments of the invention will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of the invention that follow the general principles of the invention and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of the invention are indicated by the claims.
Claims
1. A cloud-chain fusion distributed computing offloading method, characterized in that, include: Edge servers use public keys The initial computation function is encrypted and decomposed to generate a distributed computing pattern; the blockchain network stores the distributed computing pattern and generates verification evidence. The smart terminal initiates a computing request based on the public key. Generate blinding factor, combine blinding factor For input Perform blinding to obtain the blinded input ; The edge server assigns a value to the distributed computing mode and initiates a computing request to the cloud server; The cloud server performs calculations based on the parameters of the received calculation request and returns the intermediate results to the blockchain network for verification. The blockchain network uses the verification evidence to verify the calculated intermediate results, and after receiving a sufficient number of correct results, returns the intermediate result set to the edge server. The edge server uses a private key The intermediate result set is decrypted, and the blinded calculation result is obtained by combining the polynomial interpolation method after decryption. The result will then be returned to the smart terminal. The intelligent terminal calculates the results after blinding. Combined with blinding factor Perform deblinding and solve for the final calculation result. ; The edge server uses a public key. The initialized calculation function is encrypted and then decomposed: Edge server command Polynomials uploaded by service providers The coefficient vector, combined with the public key received during the initialization phase. use For coefficient vector Encryption is performed to obtain the encrypted result. and the corresponding function expression ; The edge server uses the encrypted function Generate coding coefficient matrix ,in , , , This leads to the encrypted function. ,in , , This represents placeholder variables input by the user, and then the coefficient matrix is... Decompose by row to obtain the decomposed expression. ; According to the expression, let ,in This is a placeholder variable representing the cloud server number during the calculation of the encoding result. The value is assigned during the online calculation and unloading process. , , ;make ,get , ; The expression for the intermediate encoded result of the generated vector multiplication is: Thus, the decomposed calculation model is obtained. Save calculation parameters ; The blockchain network utilizes a pseudo-random number generator. Generate size is Random verification matrix , It is a positive integer; then, verification evidence is calculated to validate the results of distributed computing. Save verification parameters ; The edge server assigns values to the distributed computing mode and initiates a computing request to the cloud server: The edge server, based on the received input The distributed computing mode is assigned values, and the computing parameters are then processed after the assignment is complete. Send to the cloud server; The compute nodes in the cloud server parse the received compute parameters. Obtain cloud server number Encoding request and intermediate encoded result expression Cloud server number Substitute into expression Calculated , will encode request Substitute into expression Calculated Calculate the intermediate encoding result Send distributed computing results Verification is performed on the blockchain network; The blockchain network parses the distributed computing results sent by the cloud server computing nodes. Obtain intermediate encoding results and intermediate vector Query locally stored verification evidence Calculate separately and Verify the equation If the statement is true, accept the result; otherwise, ignore the result. Verification passed. After obtaining different distributed computing results, send the distributed computing result set. To the edge server, It was before A collection of verified cloud server IDs.
2. The cloud-chain integrated distributed computing offloading method according to claim 1, characterized in that, Edge servers use public keys Before encrypting and decomposing the initialized computation function, the following steps are also included; Service providers employ homomorphic encryption and blinding methods to encrypt complex computational functions and user parameters in the smart grid, obtaining an initialized computational function. and public key cloud chain integrated distributed computing offloading method and private key ; as well as Service provider initialization unary Family of polynomial functions , Call the key generation algorithm in the homomorphic encryption algorithm. Generate public / private key pairs , Indicates security parameters; select a random number. As the boundary of the blinding factor, it makes ; Upload function Public key and private key To the edge server.
3. The cloud-chain integrated distributed computing offloading method according to claim 1, characterized in that, The smart terminal initiates a computation request based on the public key. Generate blinding factor Regarding the blinding factor The input is blinded to obtain : The smart terminal accesses the edge server to obtain a random number from the public key. Generate local blinding factor , making ; The smart terminal uses a blinding factor. Encode the input to obtain the encoded input. Preserve blinding factors Upload the encoded input when initiating a calculation request. .
4. The cloud-chain integrated distributed computing offloading method according to claim 1, characterized in that, The edge server call The method for distributed computing results Decode to obtain ,in To verify the successful distributed computing results The corresponding plaintext; using the decoded distributed computing results Using Lagrange interpolation Obtain the corresponding polynomial coefficient vector Generate vectors , polynomial coefficient vector with vector The encoding result is obtained by right multiplication. Return the blinding result To smart terminals.
5. The cloud-chain integrated distributed computing offloading method according to claim 1, characterized in that, The smart terminal receives the blinding result returned by the edge server. Then use the blinding factor stored locally. The blinding process was then performed to obtain the final result. .
6. A cloud-chain integrated distributed computing offloading system, used to execute the method as described in any one of claims 1 to 5, characterized in that, include: Edge servers, used to use public keys The initial computation function is encrypted and decomposed to generate a distributed computing pattern; the blockchain network stores the distributed computing pattern and generates verification evidence. The smart terminal is used to initiate computing requests based on the public key. Generate blinding factor, combine blinding factor For input Perform blinding to obtain the blinded input ; The edge server assigns a value to the distributed computing mode and initiates a computing request to the cloud server; The cloud server performs calculations based on the parameters of the received calculation request and returns the intermediate results to the blockchain network for verification. The blockchain network uses the verification evidence to verify the calculated intermediate results, and after receiving a sufficient number of correct results, returns the intermediate result set to the edge server. The edge server uses a private key The intermediate result set is decrypted, and the blinded calculation result is obtained by combining the polynomial interpolation method after decryption. The result will then be returned to the smart terminal. The intelligent terminal calculates the results after blinding. Combined with blinding factor Perform deblinding processing and solve for the final calculation result.
7. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the cloud-chain converged distributed computing offloading method as described in any one of claims 1 to 5.
Citation Information
Patent Citations
Privacy protection verifiable polynomial calculation outsourcing method based on block chain
CN117034334A
Dynamic service discovery and offloading framework for edge computing based cellular network systems
WO2021194583A1