Encrypted Convolution via Discrete Fourier Transform

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Deep learning methods face significant computational challenges when operating on encrypted data, particularly in convolution operations required for image recognition, due to the complexity of executing operations on encrypted data, which slows down processing.

Innovation Solution

The method employs Discrete Fourier Transformation (DFT) to transform encrypted input and kernel matrices, allowing for faster convolution computations by integrating DFT within the SPDZ encryption protocol, reducing the number of expensive multiplications required for convolution operations on encrypted data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If convolution operations are performed on encrypted data using standard methods, then data privacy is preserved, but processing speed decreases significantly

Engineering Contradiction:
Improvedata privacyVSAvoidprocessing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent transforms the convolution operation from the spatial domain to the frequency domain using Discrete Fourier Transformation. This parameter change in the mathematical domain allows multiplication operations to replace complex convolution operations, significantly reducing computational complexity while maintaining encrypted data processing capabilities through the SPDZ protocol

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent replaces the traditional mechanical convolution operation (which requires multiple multiplications and additions) with a substitution based on the convolution theorem in the frequency domain. By transforming encrypted data and kernels to frequency domain, performing element-wise multiplication, and transforming back, the system achieves faster computation without sacrificing security

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Productivity

If Discrete Fourier Transformation is applied to encrypted data, then convolution computation speed increases, but computational complexity of transformation steps increases

Engineering Contradiction:
Improveconvolution computation speedVSAvoidcomputational complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent performs the Discrete Fourier Transformation as a preliminary step before the actual convolution operation. By transforming the encrypted input data and encrypted kernels to the frequency domain in advance, the system converts complex convolution operations into simpler element-wise multiplications, reducing the overall computational burden during the main processing phase

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The frequency domain acts as an intermediary space that simplifies the computation. Instead of performing direct spatial domain convolution on encrypted data, the system uses the frequency domain as a mediator where multiplication operations are computationally cheaper, then transforms the result back to obtain the final convolution output

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11429386B2Method and apparatus for an advanced convolution on encrypted data
Publication Date: 2022.08.30 ROBERT BOSCH GMBH
  • US11429386B2 patent drawing
  • US11429386B2 patent drawing
  • US11429386B2 patent drawing

AI summary

An apparatus includes a processor programmed to define an input matrix and kernel matrix based upon the encrypted data, identify an algebraic structure of an encryption method applied to the encrypted data, determine a primitive root of unity in the algebraic structure in response to an input matrix size and a kernel matrix size, transform the input matrix and kernel matrix utilizing the primitive root of unity into a transformed input matrix and a transformed kernel matrix, compute an element-wise multiplication of the transformed input matrix and transformed kernel matrix, apply a reverse discrete Fourier transformation, and output a convolution of the input matrix and the kernel matrix based upon the encrypted data.