Homomorphic Encryption Multiplication Unit for Neural Networks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current homomorphic encryption technologies face challenges in processing encrypted data within neural networks, particularly with activation functions like sigmoid and ReLU, leading to increased communication volume and processing time, and limited capabilities with additive homomorphic encryption, which restricts executable processes.

Innovation Solution

A processing apparatus and method that utilizes homomorphic encryption to perform calculations on encrypted data by separating multipliers into components, allowing for the execution of multiplication and addition operations while maintaining encryption, enabling wider processing capabilities without revealing sensitive information.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If homomorphic encryption is used to process encrypted data in neural networks, then data confidentiality is maintained, but processing capabilities are limited and processing load increases

Engineering Contradiction:
Improvedata confidentialityVSAvoidprocessing capabilities
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent segments the multiplier into multiple components (integer part, fractional part, sign bit) and processes each component separately using appropriate homomorphic encryption operations. This segmentation enables complex multiplication operations while maintaining data confidentiality, resolving the contradiction between limited processing capabilities and confidentiality requirements.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transforms the multiplication operation by changing parameters - converting multiplication by a fractional multiplier into a series of operations including integer multiplication, bit shifting, and addition. This parameter transformation allows the system to perform operations that would otherwise be impossible with standard additive homomorphic encryption, thereby expanding processing capabilities while maintaining encryption.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If additive homomorphic encryption is used to reduce processing load, then simpler operations are enabled, but available calculations are limited

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidexecutable processes
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent segments the multiplier value into integer and fractional components, allowing the system to use efficient integer-based homomorphic multiplication for the integer part while handling the fractional part through alternative operations. This segmentation enables the system to maintain processing efficiency while expanding the range of executable processes beyond what standard additive homomorphic encryption allows.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension to the calculation by separating the multiplication process into multiple operational dimensions - integer multiplication in the ciphertext space, bit manipulation operations, and final result combination. This dimensional approach allows the system to overcome the limitations of additive homomorphic encryption while maintaining processing efficiency.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Reliability

If encrypted data is processed using conventional homomorphic encryption, then data security is maintained, but multiplication by non-integer values cannot be executed

Engineering Contradiction:
Improvedata securityVSAvoidoperation types
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent changes the parameters of the multiplication operation by decomposing the fractional multiplier into binary representation and using bit shifting operations. This parameter transformation allows the system to perform multiplication by non-integer values while maintaining data security through homomorphic encryption, as the operation is executed in the ciphertext space without decrypting the data.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent introduces intermediate calculation steps including bit manipulation and conditional addition operations that act as mediators between the encrypted input and the final result. These intermediary operations enable multiplication by non-integer values while keeping the data encrypted throughout the process, thus maintaining security while expanding operational capabilities.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11374735B2Processing apparatus, processing method, storage medium, and encryption processing system
Publication Date: 2022.06.28 AKUSERU KK
  • US11374735B2 patent drawing
  • US11374735B2 patent drawing
  • US11374735B2 patent drawing

AI summary

A processing apparatus includes at least one processor configured to function as: an input unit that receives encrypted data based on homomorphic encryption; and a process execution unit that executes a predetermined process by using the encrypted data while maintaining a secret state and includes one or more processing units. At least one of the processing units is a multiplication corresponding processing unit for executing a calculation corresponding to a processing of multiplying plaintext data by a predetermined multiplier. The multiplication corresponding processing unit generates a first calculation result based on a first multiplier component of the predetermined multiplier that is not used in a calculation of encrypted data, generates a second calculation result by executing a calculation to encrypted data in a ciphertext space corresponding to multiplication of the plaintext data by a second multiplier component of the predetermined multiplier other than the first multiplier component, and outputs the first calculation result and the second calculation result in association with each other.