Page 553 - StudyBook.pdf
P. 553

Basis of Cryptography • Chapter 9  537

                 El Gamal

                 The El Gamal algorithm is essentially an updated and extended version of the orig-
                 inal Diffie-Hellman algorithm based on discrete logarithms.The security of the
                 algorithm is roughly on par with that of the RSA algorithm. El Gamal has a few
                 drawbacks, mainly its larger output and random input requirement. Encrypted El
                 Gamal ciphertext is much longer than the original plaintext input, so it should not
                 be used in places where bandwidth is a limiting factor, such as over slow wide area
                 network (WAN) links.The El Gamal algorithm also requires a suitable source of
                 randomness to function properly. It is worth noting that the Digital Signature
                 Algorithm (DSA) was based on the El Gamal algorithm. DSA is a complementary
                 protocol to RSA that is widely used in the OpenSSH implementation of the
                 Secure Shell (SSH) protocol.

                 RSA

                 Shortly after the appearance of the Diffie-Hellman algorithm, Ron Rivest,Adi
                 Shamir, and Leonard Adleman proposed another public key encryption system.
                 Their proposal is now known as the RSA algorithm, named for the last initials of
                 the researchers.


                 TEST DAY TIP

                      Depending on the literature you read, public-key cryptography and
                      public-key encryption systems are terms that are used interchangeably.




                    The RSA algorithm shares many similarities with the Diffie-Hellman algorithm
                 in that RSA is also based on multiplying and factoring large integers. However,
                 RSA is significantly faster than Diffie-Hellman, leading to a split in the asymmetric
                 cryptography field that refers to Diffie-Hellman and similar algorithms as Public
                 Key Distribution Systems (PKDS), and RSA and similar algorithms as Public Key
                 Encryption (PKE). PKDS systems are used as session-key exchange mechanisms,
                 while PKE systems are considered fast enough to encrypt small messages. However,
                 PKE systems like RSA are not considered fast enough to encrypt large amounts of
                 data such as entire file systems or high-speed communications lines.








                                                                              www.syngress.com
   548   549   550   551   552   553   554   555   556   557   558