RSA Cryptosystem High Radix Montgomery Algorithm

RSA Cryptosystem High Radix Montgomery Algorithm


Category: Crypto Core

Created: September 25, 2001

Updated: January 27, 2020

Other project properties

Development Status: Planning

WishBone compliant: No

WishBone version: n/a

License: n/a


RSA Cryptosystem is widely used in information technology. It encrypts
and decrypts messages using public key mechanism. The security of this
cryptosystem is based on the fact that it's very difficult to factorize
large prime number.

RSA algorithm was proposed in 1978 by Rivest, Shamir, and
Adleman. Since 1978 its algorithm has changed to get an efficient
cryptosystem. The high radix Montgomery algorithm is used to get the
faster calculation of modular exponential which used in RSA algorithm.
This algorithm was proposed by Peter Montgomery in 1985 and now widely used in modern RSA cryptosystem.


- Uses public key and private key to encrypt and decrypt messages
- Uses 512 bit private key exponent(the minimum size recommended by RSA Laboratories)
- Uses Fermat prime as public key exponent(as recommended by International Telecommunications Union)
- Uses 512 bit modulus n
- Blocks 512 bit to encrypt plaintext and decrypt ciphertext
- Uses Radix 256 Montgomery reduction modul and Radix 256 Blakley multiplication modul to calculate the modular exponential

Design stages

- Making core specification
- Designing behavioral and structural
- Converting to symbolic layout
- Verifying and simulating
- Making full report


- see Download section

The cores

1. Montgomery modular multiplication module
2. Montgomery modular exponentiation module