Modular Multiplication Lookup Tables RNS
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing modular exponentiation algorithms in RSA-based cryptosystems are computationally expensive due to the use of large key sizes, particularly in naive algorithms, which require excessive processing time for calculations.
Innovation Solution
The implementation of a non-transitory machine-readable medium encoded with instructions for performing modular exponentiation using a residue number system (RNS) and lookup tables, where the modular exponentiation is calculated iteratively by squaring and conditionally multiplying a working value based on the bits of the exponent, utilizing precomputed lookup tables to reduce computational complexity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If a naïve algorithm is used for modular exponentiation with large key sizes, then the implementation is simple, but the processing time becomes excessively long
Solution Approach 1:
The patent precomputes and stores values of b^2^i mod N in lookup tables before the actual modular exponentiation operation. This preliminary action allows the algorithm to retrieve precomputed values during execution rather than calculating them on-the-fly, significantly reducing processing time while keeping the overall algorithm structure relatively simple
Solution Approach 2:
The patent segments the large exponent d into individual bits and processes each bit position separately. By breaking down the computation into smaller segments corresponding to each bit, the algorithm can use precomputed lookup table values for each segment, reducing the overall computational complexity and processing time
2Productivity
If the secret exponent d is used directly in the calculation, then the modular exponentiation can be computed, but the security is compromised in white-box cryptography
Solution Approach 1:
The patent introduces lookup tables as an intermediary structure that contains precomputed values based on the secret exponent d. The actual computation uses these table values without directly exposing d, allowing efficient computation while protecting the secret exponent from being revealed during the white-box cryptography operation
Solution Approach 2:
The patent creates copies of the secret exponent's computational effect through the lookup tables. Instead of using d directly in calculations, the system uses precomputed copies of b^2^i mod N values that capture the essential computational relationships without exposing the original secret exponent, thereby maintaining both efficiency and security
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Various embodiments relate to a method, system, and non-transitory machine-readable medium encoded with instructions for execution by a processor for performing modular exponentiation, the non-transitory machine-readable medium including: instructions for iteratively calculating a modular exponentiation, bd mod n, including: instructions for squaring a working value, c; and instructions for conditionally multiplying the working value, c, by a base value, b, dependent on a bit of an exponent, d, including: instructions for unconditionally multiplying the working value, c, by a lookup table entry associated with the base value.