**1. Rivest-Shamir-Adleman (RSA) algorithm :**

RSA stands for **Rivest-Shamir-Adleman**. It is a cryptosystem used for secure data transmission. In RSA algorithm, encryption key is public but decryption key is private. This algorithm is based on mathematical fact that factoring the product of two large prime numbers is not easy. It was developed by **Ron Rivest**, **Adi Shamir** and **Leonard Adleman** in 1977.

**2. Digital Signature Algorithm (DSA) :**

DSA stand for **Digital Signature Algorithm**. It is used for digital signature and its verification. It is based on mathematical concept of modular exponentiation and discrete logarithm. It was developed by **National Institute of Standards and Technology (NIST)** in 1991.

It involves four operations:

- Key Generation
- Key Distribution
- Signing
- Signature Verification

**Difference between RSA algorithm and DSA :**

RSA | DSA |
---|---|

It is a cryptosystem algorithm. | It is digital signature algorithm. |

It is used for secure data transmission. | It is used for digital signature and its verification. |

It was developed in 1977. | While it was developed in 1991. |

It was developed by Ron Rivest, Adi Shamir and Leonard Adleman. |
It was developed by National Institute of Standards and Technology (NIST). |

It uses mathematical concept of factorization of product of two large primes. | It uses modular exponentiation and discrete logarithm. |

It is slower in key generation. | While it is faster in key generation as compared to RSA. |

It in faster than DSA in encryption. | While it is slower in encryption. |

It is slower in decryption. | While it is faster in decryption. |

It is best suited for verification and encryption. | It is best suited for signing in and decryption. |

Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the **CS Theory Course** at a student-friendly price and become industry ready.