Paillier Encryption Using Lookup Tables for Faster Modular Exponentiation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The Paillier cryptosystem, widely used in cloud computing and data aggregation, faces performance bottlenecks due to complex mathematical computations, particularly in modular exponentiation operations, which consume significant energy and processing resources.
Innovation Solution
The implementation of a mixed window-based lookup table and AVX512-IFMA instructions to optimize modular exponentiation calculations, replacing the original method to improve performance when plaintext data length is large, and using a modular multiplicative inverse to reduce computational overhead.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the Paillier cryptosystem uses standard modular exponentiation operations for encryption, then security is maintained, but processing time and energy consumption increase significantly
Solution Approach 1:
The patent segments the modular exponentiation operation into two independent parts: pre-computing powers of the random value r (r^1, r^2, ..., r^k) and then combining them using only addition operations. This segmentation transforms the complex single operation into simpler sequential operations that are easier to optimize and execute efficiently.
Solution Approach 2:
The patent applies preliminary action by pre-computing the powers of the random value r before the actual encryption computation. By calculating r^1, r^2, ..., r^k in advance and storing them in a lookup table, the system avoids repeating complex modular exponentiations during the encryption process, significantly reducing processing time.
2Ease of operation
If the Paillier cryptosystem performs modular exponentiation operations, then encryption functionality is achieved, but energy consumption increases
Solution Approach 1:
The patent segments the energy-intensive modular exponentiation into pre-computed lookup table entries and simple addition operations. This segmentation reduces the computational burden during actual encryption, thereby lowering energy consumption while maintaining encryption functionality.
Solution Approach 2:
By pre-computing and storing powers of r in a lookup table during a separate initialization phase, the system performs the energy-intensive work beforehand. During actual encryption operations, only lightweight addition operations are required, significantly reducing real-time energy consumption.
3Reliability
If the Paillier cryptosystem uses complex mathematical computations, then cryptographic security is ensured, but processing resources are consumed excessively
Solution Approach 1:
The patent segments the complex mathematical computation into two phases: a pre-computation phase that builds lookup table entries, and an execution phase that uses simple table lookups and additions. This segmentation reduces the computational complexity during critical encryption operations while preserving security through the use of random values and modular arithmetic.
Solution Approach 2:
The patent creates a lookup table that stores pre-computed powers of the random value r. By copying these pre-computed values into the table, the system replaces complex real-time modular exponentiations with simple table lookups and additions, reducing computational complexity while maintaining cryptographic security.
Data Source
AI summary
An improved Paillier cryptosystem generates a product of ciphertext data and plaintext data by inverting ciphertext data using a square of a public encryption key to generate a modular multiplicative inverse of the ciphertext data; subtracting plaintext data from the public encryption key to generate negative plaintext data; and generating a modular exponentiation of the modular multiplicative inverse of the ciphertext data, the negative plaintext data and the square of the public encryption key.


