Differences between DSA and RSA Algorithms Despite having learned much related to RSA and DSA, I cannot understand their differences. Can anyone tell me at least 4-5 differences between these algorithms? I have just used them for two-factor authentication (Linux OpenSSL).
If you're the user of some software using cryptography under the hood, knowing the mathematics of how RSA and DSA work won't help you. What you need to know is what configurations of your software are good for the way you use it, and the choice of algorithm is often not the most important factor, although between RSA and DSA the choice today is usually ECDSA, or failing that RSA over plain DSA.

RSA and DSA are both families of digital signature algorithms. A digital signature algorithm is a way to authenticate a message. When a message has a valid digital signature, it must have been signed by the holder of the private key that was used to sign. They are both instances of public-key cryptography: only the signer knows the private key, but the public key which is used to verify a signature can be known to everyone.

Today there are four families of digital signature algorithms in common use for computer users: RSA, DSA, ECDSA and EdDSA. The TLS protocol which powers most secure channels on the Internet can use RSA, DSA or ECDSA. SSH (specifically its most common implementation OpenSSH) can use RSA, ECDSA or EdDSA (older versions could use DSA). DSA has fallen into disuse; it isn't broken, but its performance is very poor compared to ECDSA for the same security level. EdDSA is still very new and not widely supported. RSA is on a slow path to obsolescence because it struggles to cope with the required increases of key sizes as computing power for cracking keys increases, but it still has a very broad installed base, and while it is much slower than ECDSA for signature generation, it is faster for verification.

Quantum cryptanalysis may come and force all these algorithms out, but for the time being it's still a research topic and nobody knows what post-quantum cryptography might end up looking like. There's an ongoing competition to find good algorithms that resist quantum cryptanalysis as it's currently thought to work.

If you're still using DSA, consider migrating to ECDSA. You're paying extra CPU power and using code that is probably not getting as much scrutiny these days. Don't migrate to any of the post-quantum algorithms because they haven't been studied much yet, and for all we know they'll be broken as soon as a cryptographer who isn't their author looks at them.

The security of RSA relies on the difficulty of the factoring problem, i.e. given only a product of two integers $p q$ the difficulty of finding $p$ and $q$ (with $p$ and $q$ chosen to make the problem difficult, i.e. being primes or at least probable primes). The security of DSA relies on the difficulty of the discrete logarithm problem, i.e. given $n$, $g$ and $y$ finding $x$ such that $g^x = y \bmod n$ (with $n$ and $g$ chosen to make the problem difficult). ECDSA and EdDSA also rely on the discrete logarithm problem, but on elliptic curves instead of $\mathbb{Z}/n\mathbb{Z}$.

There is also a family of public-key encryption algorithms called RSA. It uses the same mathematical problem under the hood, with different constructions on top. DSA does not have a corresponding encryption scheme in widespread use. ECIES is a standard for encryption using elliptic curve cryptography which can be thought of as a parallel to ECDSA, but it's markedly less common. The Edwards curves that power EdDSA can also be used for public-key encryption but I'm not aware of a standard for that.