at implement Montgomery arithmetic are described in the annual proceedings of the Cryptographic Hardware and Embedded Security (CHES) conference. For more information, consult either Cetin Kaya Koç's web site (http://islab.oregonstate .edu/koc/) or Christof Paar's web sites (www.ece.wpi.edu/faculty/cxp.html and http://crypto.ruhr uni-bochum.de). Many security coprocessors have an embedded specialized hardware unit that carries out Montgomery exponentiations in hardware, thereby tremendously accelerating the performance. COMMON PUBLIC-KEY CRYPTOGRAPHY ALGORITHMS Many hashing and keyed-hashing algorithms are available. However, the most common ones to aware of are the Secure Hashing Algorithm (SHA-1), which is very strong as it was designed by the National Security Agency (NSA) to preserve the integrity of messages. This has become a key ingre- dient of the Digital Signature Algorithm (DSA). The establishment of the new AES standard has launched an ongoing discussion about expanding the same hashing principle to larger block sizes that are commensurate with the higher performance afforded by the more modern and powerful algorithms such as Rijndael and other contestants of the AES. These discussions regarding SHA-256 and even longer along with the latest proposals are documented at the NIST cryptographic web site. Other widely known hashing algorithms include MD5 and RIPEMD. They are all documented in detail in essentially every good cryptography textbook. In the public-key cryptography arena, the undisputed leading technology in terms of years of use, several deployed solutions, and worldwide acceptance is RSA technology, which is based upon the difficulty of factoring very large numbers that are the product of two large primes. The steps taken in RSA-based security are as follows: 1. One first comes up with a number n that is the product of two large primes p and q, where p and q must remain secret and are eventually discarded at the end of an operation. 2. A number e is agreed upon, which is relatively prime to (