Many public-key encryption and digital signature schemes, and some hash functions (see x9.4.3), require computations in Zm, the integers modulo m (m is a large positive integer whichmay or may not be a prime). For example, the RSA, Rabin, and ElGamal schemes require efficient methods for performingmultiplication and exponentiation in Zm.