Data integrity is also ensured because for data to be modified by an attacker, it requires the attacker to have B's, the recipient's, private key (Kizza 2009). Various algorithms exist for public key encryption including RSA, DSA, and PGP.
RSA stands for Ron Rivest, Adi Shamir and Leonard Adleman, who first publicly described it in 1978. DSA stands for Digital Signature Algorithm. The security of the RSA algorithm is based on factorization of large integers, whereas DSA security is based on the discrete logarithm problem.
PGP stands for Pretty Good Privacy. PGP is regarded as hard encryption, that which is impossible to crack in the foreseeable future. Its strength is based on algorithms that have survived extensive public review and are already considered by many to be secure. Among these algorithms are RSA which PGP uses for encryption, DSS, and Diffie-Hellman for public key encryption; CAST-128, IDEA, and 3DES for conventional encryption; and SHA-1 for hashing. The actual operation of PGP is based on five services: authentication, confidentiality, compression, e-mail compatibility, and segmentation (Kizza 2009).
Problems with Public Key Encryption (Kizza 2009):
 |
The biggest problem for public key cryptographic scheme is speed. Public key algorithms are extremely slow |
|
compared to symmetric algorithms. This is because public key calculations take longer than symmetric key calculations since they involve the use of exponentiation of very large numbers which in turn take longer to compute. |
 |
It suffers from the man-in-the-middle attack. The man-in-the-middle where an attacker sniffs packets off a |
|
communication channel, modifies them, and inserts them back on to the channel. In case of an encryption channel attack, the intruder convinces one of the correspondents that the intruder is the legitimate... |