A method and apparatus for cryptographic data processing, includes
determining a first modulus having up to a first number of binary digits.
A large integer is received which has up to a second number of binary
digits that is greater than the first number of binary digits. The first
modulus and the large integer are sent to a first processor for computing
a first residue of the large integer modulo the first modulus. Before the
first processor finishes computing the first residue, the first modulus
is also sent to a second processor for computing a second residue of two
raised to a power of twice the first number of binary digits modulo the
first modulus. The first residue and the second residue are used as input
to a third processor that computes a cryptographic result based on the
large integer.