Distributed matrix security calculation method and system for unbalanced edge computing resources

By employing a matrix allocation method involving unequal partitioning and encryption, the inefficiency and data security issues caused by unbalanced edge computing resources are resolved, achieving efficient and secure distributed matrix computation.

CN119892503BActive Publication Date: 2026-02-10山东三未信安信息科技有限公司 +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510361297.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-03-26
Publication Date
2026-02-10
Estimated Expiration
2045-03-26

AI Technical Summary

Technical Problem

In edge computing scenarios where computing resources are unevenly distributed, the equal division of computing tasks in existing technologies leads to low efficiency and makes it difficult to guarantee data security and privacy.

Method used

An unequal block matrix allocation method is adopted to divide the matrix into sub-matrix blocks of different sizes, and encryption processing is performed through permutation matrix and perturbation matrix. Tasks are allocated according to the computing power of the edge server, while correctness verification and decryption operations are performed on the client.

Benefits of technology

It enables efficient distributed computing in resource-unbalanced environments, ensuring data security and the correctness of calculation results, and fully utilizing the computing advantages of edge servers.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119892503B_ABST
    Figure CN119892503B_ABST
Patent Text Reader

Abstract

The application discloses a distributed matrix security calculation method and system for unbalanced edge calculation resources, and the method comprises the following steps: a client performs non-equal block division on two original matrices to be calculated to generate a plurality of corresponding sub-matrix blocks; a key generation center generates an encryption key and sends the encryption key to the client; the client performs encryption processing on the plurality of sub-matrix blocks by using the encryption key to generate corresponding encrypted sub-matrices; according to the calculation capacity of a plurality of edge servers, different sizes of encrypted sub-tasks corresponding to the encrypted sub-matrices are distributed to corresponding edge servers; each edge server performs distributed calculation on the matrices in the encrypted state to generate encrypted intermediate results and return the encrypted intermediate results to the client; and the client performs correctness verification on the encrypted intermediate results, decrypts the results that pass the verification, and obtains a final calculation result. The application can effectively utilize the calculation capacity of the edge servers in the resource unbalanced environment and ensure the security and privacy of the data.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of data security technology, and more specifically to a distributed matrix secure computing method and system for unbalanced edge computing resources. Background Technology

[0002] Edge computing, as a distributed computing architecture, can execute distributed computing tasks on numerous edge devices, effectively solving the problems of insufficient terminal computing resources and over-concentration of cloud computing tasks, forming a cloud-edge-device collaborative computing system among cloud devices, edge devices, and terminal devices. In some edge computing scenarios, the computing resources of edge computing devices are unbalanced, requiring the allocation of computing tasks of different scales according to the different sizes of computing resources of the edge computing devices, thereby achieving higher computing efficiency.

[0003] Distributed edge computing decomposes complex computational tasks, distributing smaller subtasks to multiple edge devices for simultaneous computation, thereby effectively improving the efficiency of completing complex computational tasks. In the field of machine learning, various data are often organized in the form of matrices; therefore, matrix multiplication is widely used in various algorithms such as data clustering and dimensionality reduction. For example, principal component analysis of image data and the computation of fully connected layers in convolutional neural networks both involve large-scale matrix multiplication operations. However, the time complexity of matrix multiplication is O(n log n), and large-scale matrix multiplication operations impose a significant computational burden on users. Applying distributed edge computing has become a reliable method to improve the efficiency of matrix multiplication computation.

[0004] Currently, existing distributed computing solutions divide computational tasks equally, with each server executing tasks of the same scale. However, in edge computing scenarios with unbalanced computing resources, a slow edge server can slow down the entire computation process. Furthermore, when distributed computing delegates tasks to various edge servers, untrusted edge servers may spy on user data and privacy, leading to data leaks. Therefore, it is necessary to encrypt data on the client side, ensuring that edge servers perform computations in encrypted form.

[0005] In summary, how to unequally divide computing tasks, allocate computing tasks of different scales to servers based on computing power, and protect the confidentiality and privacy of data in distributed computing are problems that urgently need to be solved by those skilled in the art. Summary of the Invention

[0006] In view of this, the present invention provides a distributed matrix secure computing method and system for unbalanced edge computing resources, which can solve the problems of low efficiency and lack of data security caused by the equal division of computing tasks in edge computing environments.

[0007] To achieve the above objectives, the present invention adopts the following technical solution:

[0008] In a first aspect, embodiments of the present invention provide a distributed matrix secure computation method for unbalanced edge computing resources, comprising the following steps:

[0009] S10. The client divides the two original matrices to be calculated into unequal blocks to generate multiple corresponding sub-matrix blocks.

[0010] S20. The key generation center generates a permutation matrix and a perturbation matrix as the encryption key and sends them to the client.

[0011] S30. The client uses the encryption key to encrypt multiple sub-matrix blocks to generate corresponding encrypted sub-matrixes.

[0012] S40. Based on the computing power of multiple edge servers, assign encryption subtasks of different sizes corresponding to the encryption submatrix to the corresponding edge servers.

[0013] S50: Each edge server performs distributed computation on the matrix in the encrypted state, generates encrypted intermediate results, and returns them to the client.

[0014] S60. The client verifies the correctness of the encrypted intermediate result, identifies malicious servers, and removes them.

[0015] S70. The client decrypts and concatenates the verified encrypted intermediate results to obtain the final calculation results of the two original matrices.

[0016] Furthermore, the non-uniform block division in step S10 is as follows:

[0017] Based on the dimensions of the original matrix and the differences in computing power of the edge servers, the matrix is ​​divided into sub-matrix blocks of different sizes, and the block dimensions are positively correlated with the server computing power.

[0018] Furthermore, the non-uniform partitioning in step S10 also includes: when the matrix partition sizes do not match, filling the smaller matrix with zero vectors to make its dimensions match those of the larger matrix.

[0019] Furthermore, in step S20:

[0020] Method of generating the permutation matrix: by the permutation function and Kronecker function generate;

[0021] Method for generating the perturbation matrix: Let the perturbation matrix be... ,in , R represents the set of real numbers, x represents the number of rows in the plaintext data matrix, y represents the number of columns in the plaintext data matrix, and v and w are both non-zero vectors. Set security parameters. Vector elements from Randomly selected from the range.

[0022] Furthermore, the encryption process in step S30 includes:

[0023] The rows or columns of a submatrix block are sequentially permuted using a permutation matrix;

[0024] Random noise is added to the submatrix blocks by perturbation matrix to generate a confused encrypted submatrix.

[0025] Furthermore, in step S50, the distributed computing divides the matrix into sub-matrices of inconsistent sizes, optimizes the computing path through unequal block partitioning, and reduces redundant computing on edge servers.

[0026] Furthermore, the correctness verification in step S60 includes:

[0027] The client constructs a verification vector and performs a linear operation on the returned result;

[0028] By comparing the calculation result with the expected value, if they do not match, it is determined that the edge server corresponding to the returned result is malicious.

[0029] Furthermore, the decryption and splicing in step S70 includes:

[0030] Random noise is removed from the received encrypted intermediate results to obtain the final calculation result.

[0031] Secondly, embodiments of the present invention also provide a distributed matrix secure computing system based on unbalanced edge computing resources, applying the distributed matrix secure computing method based on unbalanced edge computing resources as described in any embodiment of the first aspect, including:

[0032] The client is used to perform matrix partitioning, encryption, task allocation, verification, and decryption operations;

[0033] The key generation center is used to generate permutation and perturbation matrices as encryption keys and send them to the client.

[0034] Edge servers are used to receive encrypted subtasks sent by clients, perform distributed computations, generate encrypted intermediate results, and return them to the clients.

[0035] As can be seen from the above technical solution, compared with the prior art, the present invention has the following advantages:

[0036] This invention addresses edge computing scenarios with unbalanced computing resources by unevenly dividing computing tasks according to the varying scales of computing resources on edge servers, fully leveraging the advantages of distributed computing across multiple edge servers. Through effective matrix blinding and distributed secure computing, data is encrypted on the client side, ensuring the security and privacy of user data. Simultaneously, it supports verification of the returned results, guaranteeing the correctness of the computational results. Attached Figure Description

[0037] 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, the drawings described below are only embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on the provided drawings without creative effort.

[0038] Figure 1 The flowchart illustrates the distributed matrix secure computation method for unbalanced edge computing resources provided by this invention.

[0039] Figure 2 This is a schematic diagram of a distributed matrix secure computing system for unbalanced edge computing resources provided by the present invention. Detailed Implementation

[0040] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0041] This invention discloses a distributed matrix secure computation method for unbalanced edge computing resources, involving multiple parties such as clients, edge servers, and key generation centers, wherein:

[0042] 1) Client: The client has limited computing power but requires large-scale matrix multiplication. It needs to divide the computational task into subtasks and delegate the computation to multiple edge servers. Simultaneously, it needs to encrypt the original plaintext matrix data, verify the correctness of the returned ciphertext result, and decrypt it to obtain the plaintext result.

[0043] 2) Edge Servers: Multiple edge servers with varying computing capabilities. Edge servers with more computing resources undertake larger-scale computing tasks. However, edge servers can be malicious, potentially spying on users' private data or returning incorrect calculation results.

[0044] 3) Key Generation Center: Generates keys for encryption and decryption for the client and securely sends them to the client.

[0045] Reference Figure 1 As shown, it includes the following steps:

[0046] S10. The client divides the two original matrices to be calculated into unequal blocks to generate multiple corresponding sub-matrix blocks.

[0047] In this non-uniform partitioning method, the matrix is ​​divided into sub-matrix blocks of different sizes based on the dimensions of the original matrix and the differences in computing power of the edge servers, with the block dimensions being positively correlated with the server's computing power. When the matrix block sizes do not match, zero vectors are padded in the smaller matrix to match its dimensions with those of the larger matrix.

[0048] For example, given that users already know the dimensions of the original matrix and the computing power of the edge server, they can manually set the size parameters of the matrix partitioning. This allows for manual setting of block sizes based on the server's actual computing power.

[0049] S20. The key generation center generates a permutation matrix and a perturbation matrix as the encryption key and sends them to the client.

[0050] S30. The client uses the encryption key to encrypt multiple sub-matrix blocks, generating corresponding encrypted sub-matrixes. For example, the client can use a permutation matrix to sequentially permutate the rows or columns of the sub-matrix blocks; then, a perturbation matrix can be used to add random noise to the sub-matrix blocks to achieve data obfuscation, generating obfuscated encrypted sub-matrixes. In this way, even if the edge server sees the encrypted data, it cannot obtain the original information.

[0051] S40. Based on the computing power of multiple edge servers, assign encryption subtasks of different sizes corresponding to the encryption submatrix to the corresponding edge servers.

[0052] S50. Each edge server performs distributed computation on the encrypted matrix, generates encrypted intermediate results, and returns them to the client. The edge server divides the matrix into sub-matrices of inconsistent sizes and optimizes the computation path through unequal block partitioning, which can reduce redundant computation on the edge server.

[0053] S60. The client verifies the correctness of the encrypted intermediate result, identifies malicious servers and removes them. In this step, the client constructs a verification vector and performs a linear operation on the returned result. By comparing whether the operation result matches the expected value, if they do not match, it is determined that the edge server corresponding to the returned result is malicious.

[0054] S70. The client decrypts and concatenates the verified encrypted intermediate results to obtain the final calculation results of the two original matrices. For example, random noise is removed from the received encrypted intermediate results to obtain the final result.

[0055] This invention achieves distributed and secure matrix multiplication based on a matrix blinding algorithm and a distributed computing architecture. The scheme supports unequal partitioning of computing tasks in resource-unbalanced environments, fully leveraging the advantages of distributed computing on edge servers with varying computing capabilities, and offers scalability and flexibility. Furthermore, the scheme ensures data security during edge server computation by encrypting the original matrix submitted by the client with a noise term; and it allows the client to verify the returned computation results, guaranteeing data availability.

[0056] Blinding is a key technology in this invention to ensure data security. It transforms the original data into an incomprehensible ciphertext matrix by adding interference items to the plaintext matrix and performing row and column permutations, thereby preventing malicious servers from spying on user data.

[0057] The following example illustrates a distributed secure computing scheme for matrix multiplication in an edge computing scenario using one client and seven edge servers. Figure 2 The following diagram illustrates specific embodiments of the present invention.

[0058] 1) The client needs to calculate the product of two large-scale matrices, respectively. and Where R represents the set of real numbers, m represents the number of rows in matrix A, n represents the number of columns in matrix A and the number of rows in matrix B, s represents the number of columns in matrix B, and A and B are partitioned into unbalanced blocks. , .

[0059] in:

[0060] a) and , and ;

[0061] b) and , and .

[0062] 2) Through the designed algorithm, Perform addition and subtraction operations. During the operation, if the two matrices have different dimensions, the smaller matrix is ​​padded with a zero vector. For example, when the number of rows or columns of a certain submatrix is ​​less than that of other submatrices, it is considered a smaller matrix and padded with a zero vector to expand it to the same dimension as the largest submatrix (i.e., the larger matrix), ensuring that addition, subtraction, and matrix multiplication operations can be correctly performed in subsequent calculations. Specifically:

[0063] a) .

[0064] b) .

[0065] c) .

[0066] d) .

[0067] e) .

[0068] in:

[0069] a) yes Fill with zero vector,

[0070] b) yes Fill with a zero vector;

[0071] c) yes Fill with zero vector,

[0072] d) yes Fill with a zero vector.

[0073] The purpose of padding is to allow smaller-dimensional matrices to be added or subtracted from larger-dimensional matrices. The final result is... There are 10 matrices in total.

[0074] 3) K (Key Generation Center) generates the permutation matrix according to the designed algorithm. and perturbation matrix As a key.

[0075] A. Using substitution functions and Kronecker function Generate the permutation matrix:

[0076] a) For set Permutation function It is a bijective function from S to itself, which rearranges all the elements in S into a different order.

[0077] b) Kronecker function Its function is to be a variable Output 1 if they are equal, otherwise output 0. A sparse orthogonal permutation matrix can be constructed.

[0078] B. Perturbation Matrix The generation method is ,in , And both v and w are non-zero vectors, with vector elements ranging from... Randomly selected from within a range. Constructed .

[0079] CK transmits via a secure communication channel and Send to .

[0080] 4) After receiving the key, according to the designed encryption algorithm, a perturbation term is added to the plaintext matrix and the rows or columns of the matrix are permuted. The key is then used to pair the data. A total of 14 matrices were encrypted, and the encrypted matrix is ​​as follows: The specific encryption algorithm is as follows:

[0081] a) .

[0082] b) .

[0083] c) .

[0084] d) .

[0085] e) .

[0086] f) .

[0087] g) .

[0088] Send the encrypted matrix to 7 (Edge server).

[0089] 5) Performing operations on the matrix yields the following result: Among them, the assumptions are... , , It has greater computing power and needs to undertake more computing tasks. Specifically:

[0090] a) take over ,calculate ;

[0091] b) take over ,calculate ;

[0092] c) take over ,calculate ;

[0093] d) take over ,calculate ;

[0094] e) take over ,calculate ;

[0095] f) take over ,calculate ;

[0096] g) take over ,calculate ;

[0097] The seven edge servers above perform calculations simultaneously to obtain... .

[0098] Then:

[0099] a) calculate ,in yes Fill with zero vector, yes Fill with a zero vector;

[0100] b) calculate ,in yes Fill with zero vector, yes Fill with a zero vector;

[0101] c) calculate , .

[0102] The above three edge servers perform calculations simultaneously to obtain... Return the calculation results to .

[0103] 6) The results are validated using the designed algorithm. If validation passes, the result is received. If validation fails, the result is not received. It is possible to know Which of these are malicious servers, and which should be blacklisted?

[0104] The specific steps are as follows:

[0105] Construct 0-1 vectors ,calculate:

[0106] a) ;

[0107] b) ;

[0108] c) ;

[0109] d) .

[0110] in, and from and It is obtained by filling with the zero vector.

[0111] if If the client accepts the returned result, it will receive it; otherwise, it will reject the returned result and can identify malicious activity. And added to the blacklist.

[0112] The above verification process is repeated t times. Usually, t=20 can be set to ensure the correctness of the verification results.

[0113] 7) right The designed decryption algorithm eliminates perturbation terms in the ciphertext matrix and restores the row and column permutations of the ciphertext matrix, thus obtaining the final calculation result. The specific operation is as follows: calculate:

[0114] a) .

[0115] b) .

[0116] c) .

[0117] d) .

[0118] in, and yes and Obtained by filling with zero vector. From Extracted from the middle and From and Extracted from the middle and From and This was taken from the middle.

[0119] Depend on Obtain the final result of matrix multiplication. .

[0120] Compared with the prior art, the beneficial effects of the present invention are:

[0121] (1) Based on the different computing capabilities of each edge server, the present invention distributes computing tasks unevenly. The tasks can be divided according to actual needs to form sub-tasks of different scales facing unbalanced computing power, giving full play to the distributed computing advantages of edge servers in an environment of unbalanced resources.

[0122] (2) The present invention encrypts the data through lightweight operations such as sparse matrix multiplication and vector matrix multiplication to ensure the security and privacy of the data; at the same time, it designs a scheme to verify the returned results to ensure the correctness of the data.

[0123] (3) In the distributed edge computing scenario with unbalanced resources, the present invention proposes a method for non-uniformly dividing the matrix. By cutting and filling the sub-matrices, the Strassen matrix multiplication operation can be realized using sub-matrices of different sizes, which improves the distributed computing efficiency of the edge computing server and avoids resource waste caused by the mismatch between the scale of the computing task and the computing capacity of the server.

[0124] Based on the same inventive concept, referring to Figure 2 As shown, the present invention also provides a distributed matrix secure computing system based on unbalanced edge computing resources, applying the distributed matrix secure computing method based on unbalanced edge computing resources as described in the above embodiments, including:

[0125] The client is used to perform matrix partitioning, encryption, task allocation, verification, and decryption operations;

[0126] The key generation center is used to generate permutation and perturbation matrices as encryption keys and send them to the client.

[0127] Edge servers are used to receive encrypted subtasks sent by clients, perform distributed computations, generate encrypted intermediate results, and return them to the clients.

[0128] The client, edge server, and key generation center work together to achieve efficient distributed matrix multiplication calculations under data encryption protection, and ensure the correctness of the calculation results and data privacy.

[0129] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For the apparatus disclosed in the embodiments, since they correspond to the methods disclosed in the embodiments, the description is relatively simple; relevant parts can be referred to the method section.

[0130] The above description of the disclosed embodiments enables those skilled in the art to make or use the invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the invention. Therefore, the invention is not to be limited to the embodiments shown herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A distributed matrix secure computation method for unbalanced edge computing resources, characterized in that, Includes the following steps: S10. The client divides the two original matrices to be calculated into unequal blocks, generating multiple corresponding sub-matrix blocks; the unequal block division in step S10 is as follows: Based on the dimensions of the original matrix and the differences in computing power of the edge servers, the matrix is ​​divided into sub-matrix blocks of different sizes, and the block dimensions are positively correlated with the server computing power; when the matrix block sizes do not match, zero vectors are filled into the smaller matrix to make its dimensions match those of the larger matrix. S20. The key generation center generates a permutation matrix and a perturbation matrix as the encryption key and sends them to the client. S30. The client uses the encryption key to encrypt multiple sub-matrix blocks to generate corresponding encrypted sub-matrixes. S40. Based on the computing power of multiple edge servers, assign encryption subtasks of different sizes corresponding to the encryption submatrix to the corresponding edge servers. S50: Each edge server performs distributed computation on the matrix in the encrypted state, generates encrypted intermediate results, and returns them to the client. S60. The client verifies the correctness of the encrypted intermediate result, identifies malicious servers, and removes them. S70. The client decrypts and concatenates the verified encrypted intermediate results to obtain the final calculation results of the two original matrices. In step S20: Permutation matrix generation method: using the permutation function π and the Kronecker function δ i,j generate; How the perturbation matrix is ​​generated: Let the perturbation matrix Q∈R x×y Q = vw, where v ∈ R x×1 w∈R 1×y R represents the set of real numbers, x represents the number of rows in the plaintext data matrix, y represents the number of columns in the plaintext data matrix, and v and w are both non-zero vectors. The security parameter λ = 128 is set, and the vector elements range from (-2...) λ-1 ,0)∪(0,2 λ-1 Randomly select from the range of ); The encryption process in step S30 includes: The rows or columns of a submatrix block are sequentially permuted using a permutation matrix; Random noise is added to the submatrix blocks by perturbation matrix to generate a confused encrypted submatrix.

2. The distributed matrix secure computation method for unbalanced edge computing resources according to claim 1, characterized in that, The distributed computing in step S50 divides the matrix into sub-matrices of inconsistent sizes, optimizes the computing path through unequal block partitioning, and reduces redundant computing on edge servers.

3. The distributed matrix secure computation method for unbalanced edge computing resources according to claim 1, characterized in that, The correctness verification in step S60 includes: The client constructs a verification vector and performs a linear operation on the returned result; By comparing the calculation result with the expected value, if they do not match, it is determined that the edge server corresponding to the returned result is malicious.

4. The distributed matrix secure computation method for unbalanced edge computing resources according to claim 1, characterized in that, Step S70, decryption and splicing, includes: Random noise is removed from the received encrypted intermediate results to obtain the final calculation result.

5. A distributed matrix secure computing system with unbalanced edge computing resources, characterized in that, The distributed matrix secure computation method using unbalanced edge computing resources as described in any one of claims 1-4 includes: The client is used to perform matrix partitioning, encryption, task allocation, verification, and decryption operations; The key generation center is used to generate permutation and perturbation matrices as encryption keys and send them to the client. Edge servers are used to receive encrypted subtasks sent by clients, perform distributed computations, generate encrypted intermediate results, and return them to the clients.

Citation Information

Patent Citations

  • Task management method and device based on edge computing

    CN111475276A

  • Privacy protection method based on edge computing

    CN114417414A