Homomorphic CNN Convolution for Encrypted Image Batches
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for performing operations on convolutional neural networks require decryption, which consumes resources and time, and are vulnerable to data leaks when decrypted.
Innovation Solution
A method using homomorphic encryption to perform convolutional neural network operations by grouping pixel values into vectors, generating polynomials, and performing operations on unencrypted matrices, with the use of polynomial matrices and modulo operations to ensure privacy and security.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If decryption is performed to perform operations on convolutional neural networks, then the operations can be executed, but resources and time are wasted and data security is compromised
Solution Approach 1:
The patent introduces homomorphic encryption as an intermediary mechanism that allows convolutional neural network operations to be performed on encrypted data without decryption. The encrypted input images undergo convolution operations while remaining encrypted, eliminating the need for decryption intermediaries and thus resolving the contradiction between operation execution and data security.
Solution Approach 2:
The patent replaces the mechanical decryption process with a homomorphic encryption-based system. Instead of decrypting then operating (traditional mechanical approach), the system operates on encrypted data directly using homomorphic encryption algorithms, substituting the decryption mechanism with a cryptographic operation that preserves both functionality and security.
2Ease of operation
If decryption is performed to perform operations on convolutional neural networks, then the operations can be executed, but resource consumption increases
Solution Approach 1:
Homomorphic encryption serves as an intermediary that enables direct operation on encrypted data, eliminating the resource-intensive decryption step. By performing convolution operations directly on homomorphically encrypted images, the system reduces computational resource consumption compared to the traditional decrypt-then-process approach.
3Ease of operation
If decryption is performed to perform operations on convolutional neural networks, then the operations can be executed, but time is wasted
Solution Approach 1:
Homomorphic encryption acts as an intermediary that allows convolutional neural network operations to proceed directly on encrypted data without the time-consuming decryption step. This intermediary mechanism enables parallel processing and eliminates the sequential bottleneck of decrypt-then-process, thereby reducing overall processing time.
4Ease of operation
If messages are decrypted for operation, then operations can be performed, but messages may be leaked to third parties
Solution Approach 1:
Homomorphic encryption serves as a secure intermediary that enables operation execution without exposing plaintext data to third parties. The encrypted data remains encrypted throughout the processing pipeline, including during convolution operations, thereby eliminating the data leakage vulnerability associated with temporary decryption.
Data Source
AI summary
Provided are a method and an electronic device for performing convolutional neural network operations on a batch of input images using homomorphic encryption. The method includes: for each channel of the batch of the input images, grouping pixel values at the same location in the images included in the batch into a single vector, and encrypting the grouped vectors using a homomorphic encryption method to obtain a first ciphertext; for each channel and each coefficient of the ciphertext, grouping coefficients of the first ciphertext corresponding to all pixel locations to generate polynomials, and configuring the polynomials into a single matrix; multiplying the matrix by a polynomial matrix representing a convolution filter to obtain a result matrix, and performing a modulo operation on each element of the result matrix to generate an encrypted convolution operation result, the operation being performed on unencrypted matrices; and rearranging polynomial coefficients of the result matrix to generate a second ciphertext for the batch of the images after the convolution layer is applied, in which the second ciphertext is encrypted by the same homomorphic encryption method as the first ciphertext.


