- Asymmetric encryption is a form of cryptosystem in which encryption and decryption are performed using the different keys one a public key and one a private key. It is also known as public-key encryption.
- Asymmetric encryption can be used for confidentiality, authentication, or both.
- The difficulty of attacking RSA is based on the difficulty of finding the prime factors of a composite number.
- In fact, the security of any encryption scheme depends on the length of the key and the computational work involved in breaking a cipher.
- Public-Key encryption techniques suffer from the computational overhead. This supports the need for using Private-Key encryption.
Principles of Public-Key Cryptosystems
The concept of public-key cryptography evolved from an attempt to attack two of the most difficult problems associated with symmetric encryption:
That was done using either:
- Two communicants already share a key, which somehow has been distributed to them.
- The use of a key distribution center.
Need for digital signature.
- That is, could a method be devised that would stipulate, to the satisfaction of all parties, that a digital message had been sent by a particular person? (authentication purpose).
Characteristics of public-key cryptosystem:
- It is computationally infeasible to determine the decryption key given only knowledge of the cryptographic algorithm and the encryption key.
- In RSA, either of the two related keys can be used for encryption, with the other used for decryption.
- 261-Essential steps for the encryption process.
- The disadvantage of this last approach is that the public-key algorithm, which is complex, must be exercised four times rather than two in each communication.
Classification of public key cryptosystem:
- Digital Signature.
- Key Exchange.
Requirements for public-key cryptography:
- It is computationally easy for a party B to generate a pair (public key PUb, private key PRb).
- It is computationally easy for a sender A, knowing the public key and the message to be encrypted, M, to generate the corresponding ciphertext: C = E(PUb, M).
- It is computationally easy for the receiver B to decrypt the resulting ciphertext using the private key to recover the original message: M = D(PRb, C) = D[PRb, E(PUb, M)].
- It is computationally infeasible for an adversary, knowing the public key, PUb, to determine the private key, PRb.
- It is computationally infeasible for an adversary, knowing the public key, PUb, and a ciphertext, C, to recover the original message, M.
- The two keys can be applied in either order: M = D[PUb, E(PRb, M)] = D[PRb, E(PUb, M)].