Flexible Bit-Length Moduli on Block Montgomery Machine
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Montgomery machines with fixed block lengths face difficulties in performing arithmetic operations with moduli of non-block length bit lengths, leading to incorrect results due to insufficient reduction during modular addition or subtraction, particularly in cryptographic schemes like RSA, DSA, and elliptic curve computations.
Innovation Solution
A method to utilize a shifted or scaled modulus with a block length equal to the Montgomery machine's block length, allowing for correct and efficient modular operations by generating a new modulus n' for additive operations and using the original modulus n for multiplicative operations, ensuring sufficient reduction and maintaining results in Montgomery form.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a block Montgomery machine with fixed block length is used, then computational efficiency is improved through optimized block operations, but it cannot correctly perform modular arithmetic operations with moduli of non-block length bit lengths
Solution Approach 1:
The patent changes the parameter of the modulus by introducing a scaled modulus n' = n << s (where s is a shift amount) that has bit length equal to the machine's block length. This allows the fixed block-length Montgomery machine to correctly process moduli of non-block length by transforming the original modulus into a compatible form through bit shifting and scaling operations.
Solution Approach 2:
The patent introduces an intermediary scaled modulus n' that acts as a bridge between the original modulus n (of non-block length) and the fixed block-length Montgomery machine. This intermediary modulus enables correct modular addition and subtraction operations while maintaining compatibility with the machine's fixed block structure.
2Ease of operation
If modular addition or subtraction is performed with non-block length moduli on a fixed block-length machine, then operations can be executed, but incorrect results occur due to insufficient reduction
Solution Approach 1:
The patent modifies the modulus parameter by scaling it to n' = n << s, where the scaled modulus has bit length equal to the machine's block length. This ensures that modular addition and subtraction operations produce correct results with sufficient reduction, eliminating the precision errors that occur when using the original non-block length modulus directly.
Data Source
AI summary
Techniques are disclosed for utilizing a block Montgomery machine designed only to operate at a fixed block length to perform operations using non-block length (flexible)moduli. In one embodiment, a new modulus n′ is obtained having a block length equal to the fixed block length of the Montgomery machine or a multiple thereof. At least one modular additive operation is performed with the new modulus n′, and at least one modular multiplicative operation is performed with the non-block length modulus n. In this way, the result of the at least one additive operation is sufficiently reduced when a carry stems from the additive operation.


