Number theory in science and communication
Number theory in science and communication
Some observations on parallel algorithms for fast exponentiation in GF(2n)
SIAM Journal on Computing
Public-key cryptography
IEEE Transactions on Computers
An algorithm for modular exponentiation
Information Processing Letters
New Efficient Structure for a Modular Multiplier for RNS
IEEE Transactions on Computers
A method for obtaining digital signatures and public-key cryptosystems
Communications of the ACM
Cryptography: Theory and Practice
Cryptography: Theory and Practice
A Systolic, Linear-Array Multiplier for a Class of Right-Shift Algorithms
IEEE Transactions on Computers
Exponentiation Using Division Chains
IEEE Transactions on Computers
An RNS Montgomery Modular Multiplication Algorithm
IEEE Transactions on Computers
Fast exponentiation with precomputation
EUROCRYPT'92 Proceedings of the 11th annual international conference on Theory and application of cryptographic techniques
ICA3PP '09 Proceedings of the 9th International Conference on Algorithms and Architectures for Parallel Processing
A high performance ROM-based structure for modular exponentiation
Computers and Electrical Engineering
Hi-index | 0.00 |
In many problems, modular exponentiation |xb|m is a basic computation, often responsible for the overall time performance, as in some cryptosystems, since its implementation requires a large number of multiplications.It is known that |xb|m = |x|b|φ(m)|m for any x in [1, m- 1] if m is prime; in this case the number of multiplications depends on φ(m) instead of depending on b. It was also stated that previous relation holds in the case m = pq, with p and q prime; this case occurs in the RSA method.In this paper it is proved that such a relation holds in general for any x in [1, m - 1] when m is a product of any number n of distinct primes and that it does not hold in the other cases for the whole range [1, m - 1].Moreover, a general method is given to compute |xb|m without any hypothesis on m, for any x in [1, m - 1], with a number of modular multiplications not exceeding those required when m is a product of primes.Next, it is shown that representing x in a residue number system (RNS) with proper moduli mi allows to compute |xb|m by n modular exponentiations |xib|mi in parallel and, in turn, to replace b by |b|φ(mi in the worst case, thus executing a very low number of multiplications, namely ⌈log2mi⌉ for each residue digit.A general architecture is also proposed and evaluated, as a possible implementation of the proposed method for the modular exponentiation.