# RSA Cryptosystem

# Cryptosystem

A cryptosystem is nothing but a set of cryptographic algorithms with a key management system that is responsible for ensuring confidentiality, integrity and availability of data in some application context.

# RSA

RSA(**Rivest–Shamir–Adleman**) is a Public Key Cryptosystem that is widely used for secure data transmission.

The operation includes 4 phases:

**Key Generation:**

- Choose two distinct prime numbers of large value.

2. Compute n = p * q

3. Compute Euler’s totient function

4. Find the decryption key d such that d is the multiplicative inverse of e in the class module

**Key Distribution**

In Public Key Cryptography, the key distribution of public keys is done through public key servers. When a person creates a key-pair, they keep one key private and the other, known as the *public-key*, is uploaded to a server where it can be accessed by anyone.

**Key Encryption**

The message is encrypted using the shared public key. Data encrypted with the public key can only be decrypted with the private key, and data encrypted with the private key can only be decrypted with the public key. Public key encryption is also known as asymmetric encryption.

**Key Decryption**

The receiver decrypts the message using the private key.

**Limitation of RSA Encryption Algorithm:**

## Using small or close prime numbers is a weakness

RSA Encryption is a reliable cryptographic algorithm only if the prime numbers are large numbers. If the primes are small then RSA encryption algorithm does not prove to be effective. Similarly, use of prime numbers that are relatively close makes the encryption system weak and obvious.

## Leaks a single plaintext bit in every ciphertext

One of the drawbacks to the RSA encryption algorithm as originally defined is that it leaks a single plaintext bit in every ciphertext. This bit is the Jacobi symbol of the plaintext, and is either “1” or “−1.” Since e is odd it is straightforward to see that J (m/n) =J (m e /n) for all valid RSA plaintexts m.

## Timing Attack

if a third person (Eve) has sufficient details about Alice’s hardware then she is able to measure the decryption times for several known ciphertexts. In this way Eve can deduce the decryption d easily and quickly.