FHE Convolution Encoding for Deep CNN Latency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current homomorphic encryption schemes are not practical for use with deep or wide Convolutional Neural Networks (CNNs due to increased computational complexity, leading to processing bottlenecks in latency when performing convolutions with encrypted data.
Innovation Solution
The implementation of a new encoding and decoding scheme for Fully Homomorphic Encryption (FHE) that encodes and decodes message vectors directly into or from coefficients of plaintext polynomials, facilitating homomorphic computation of polynomial addition and multiplication, and using a modified bootstrapping process to reduce noise and error, enabling efficient evaluation of convolutional layers with encrypted data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If homomorphic encryption schemes are used to perform arithmetic operations on encrypted data, then data security is improved, but computational complexity increases significantly
Solution Approach 1:
The patent changes the parameter representation by encoding message vectors directly into coefficients of plaintext polynomials, transforming the data structure to enable more efficient homomorphic operations. This parameter transformation reduces the computational overhead associated with traditional homomorphic encryption operations on deep CNNs.
Solution Approach 2:
The patent segments the computational tasks by separating encoding/decoding operations from the homomorphic computation itself. The encoding scheme divides the message vector into polynomial coefficients that can be processed independently during homomorphic operations, reducing the complexity burden on the computing system.
2Reliability
If homomorphic encryption is used with deep or wide CNNs, then privacy protection is improved, but processing latency increases
Solution Approach 1:
The patent performs preliminary encoding of message vectors into polynomial coefficients before homomorphic operations. This pre-processing step optimizes the data structure for faster computation during the actual neural network inference, reducing the latency that would otherwise be incurred during encryption operations.
Solution Approach 2:
The patent transitions from vector-based message representation to polynomial coefficient-based representation. This dimensional transformation enables more efficient computation by leveraging the algebraic structure of polynomials, which can be processed more rapidly through homomorphic operations compared to traditional vector arithmetic.
3Ease of manufacture
If traditional encoding schemes are used for FHE, then implementation simplicity is maintained, but the number of multiplications and rotations required increases
Solution Approach 1:
The patent creates a universal encoding scheme that handles both the message vector representation and the polynomial coefficient transformation in a single integrated approach. This multi-functional encoding reduces the need for separate encoding steps and minimizes the number of multiplications and rotations required during homomorphic operations.
Solution Approach 2:
The patent uses a copying approach where the message vector is directly copied into polynomial coefficients through a structured encoding process. This direct copying mechanism avoids complex transformations and reduces computational overhead by eliminating unnecessary intermediate steps in the encoding process.
Data Source
AI summary
A client device encodes one or more input datasets of real numbers into a plaintext polynomial with integral coefficients that do not include an imaginary component and generates an input ciphertext by encrypting the plaintext polynomial according to a Fully Homomorphic Encryption (FHE) scheme. The input ciphertext includes at least encrypted coefficients of an input polynomial. A server receives the input ciphertext and performs a convolution on the input ciphertext using a kernel by at least in part separately multiplying the input polynomial by one or more kernel polynomials to result in one or more corresponding convolved polynomials. The one or more kernel polynomials include kernel coefficients encoded using kernel values for the kernel. At least a plurality of coefficients is used from each of the one or more convolved polynomials to derive an output ciphertext representing an output of the convolution on the input ciphertext using the kernel.


