Public key cryptography
Public key cryptography is a cryptographic system that uses two keys: one for encryption and one for decryption. One of the keys is made public and the other is kept private.
Public key cryptography is most commonly used to target two use cases. One for confidentiality and the other is for authentication. In case of confidentiality, the sender encrypts the message using the receiver's public key and sends it over. Since the private key is in possession of the receiver, the receiver uses the private key to decrypt the message.
In the case of authentication to serve as a digital signature, a sender uses their private key to encrypt the message (in most use cases, it is the hash of the message that is encrypted and not the entire message) and makes it available. Anyone with a public key can access it and be certain that the message comes from the sender.
Both the use cases are shown in the following screenshot:
In the following section, we discuss two common public key cryptography...