INTERNATIONAL JOURNAL OF RESEARCH IN TECHNOLOGY AND MANAGEMENT (IJRTM) ISSN 2454-6240 www.ijrtm.com 26 Volume 1 Issue 2, Oct. 2015 IMPLEMENTATION OF MODULAR EXPONENTIATION USING MONTGOMERY ALGORITHMS Manish Bansal, manishbansal635@gmail.com, Amit Kumar, amit989762@gmail.com, Aakanksha Devrari, aks.uit08@gmail.com, Electronics & Communication Engg, Faculty of Technology,Womens Institute of Technology, UTU Dehradun, INDIA ABSTRACT Several algorithms for Public Key Cryptography (PKC), such as RSA, Diffie-Hellman, and Elliptic Curve Cryptography are used for secure communications. These algorithms require modular exponentiation as their basic operation. Modular exponentiation implies repeated modular multiplication which is computationally very costly as the large operands are used. Therefore computation time is very large. This computation time can be reduced by Montgomery multiplication algorithm. Montgomery multiplication algorithm involves three basic phases 1. Conversion of operands from integer domain to Montgomery domain. 2. Multiplication of operands. 3. Conversion of operands back from Montgomery domain to integer domain. A architecture designed to implement Montgomery Modular exponentiation using right to left exponentiation approach, which allows the parallel execution of modular operations “square and multiplications”. The implementation of Montgomery modular exponentiation is achieved on Spartan3E, virtex4 and virtex6 series of FPGAs for 4, 8, 16 and 32 bits respectively Index terms- Cryptography, RSA, Modular multiplication, Montgomery algorithm. 1. INTRODUCTION Cryptography is the branch of study dealing with information security and authentication techniques. The recent advancements in the wireless communications area and personal communications systems have made providing information security a more and more important subject. This feature becomes more complicated when future technology system requirements and real-time computation speed are considered. To solve these security problems, a lot of research and development is being carried out in this matter, and cryptography has been playing a very important role in any communication system in the recent times. Cryptography is the science of using mathematics to encrypt and decrypt data. Cryptography enables you to store sensitive information or transmit it across insecure networks (like the internet) so that it cannot be read by anyone except the intended recipient. Cryptography involves the application of algorithms to transform a message into a representation of the message that is then referred to as the cipher-text. This algorithm must be able to then take that cipher-text and reverse the transformation to obtain the original message. In the field of cryptography, symmetric and asymmetric cryptography constitute two of the major categories of algorithms. Symmetric cryptography is defined by encryption and decryption with a single identical key and is often much more efficient than the alternative method of asymmetric cryptography. Figure 1 Symmetric Cryptosystem Asymmetric cryptography has the characteristic of using two different keys in which one key is used for encryption and one key is used for decryption. This allows one or more parties to encrypt messages with a public key, and only the party that possesses the private key to decrypt the messages. Asymmetric cryptography enables digital signatures and public-key infrastructures, but is generally accepted to be much more computationally difficult. Although there are methods to greatly improve the efficiency of certain types of asymmetric algorithms, there is still a large focus to increase the computational efficiency of asymmetric cryptography. Figure 2 Asymmetric Cryptosystem