Currently I am learning about Hybrid Encryption but I was not able to find any good study material.
Below is my understanding:
One of the reason why we use Hybrid Encryption
because public-key cryptosystems
often rely on complicated mathematical computations and are thus generally much more inefficient than comparable symmetric-key cryptosystems
. A hybrid cryptosystem
is one which combines the convenience of a public-key cryptosystem with the efficiency of a symmetric-key cryptosystem.
Steps of Hybrid Encryption:
To encrypt a message addressed to Alice in a hybrid cryptosystem, Bob does the following:
- Obtains Alice's public key.
- Generates a fresh symmetric key for the data encapsulation scheme.
- Encrypts the message under the data encapsulation scheme, using the symmetric key just generated.
- Encrypt the symmetric key under the key encapsulation scheme, using Alice's public key.
- Send both of these encryptions to Alice.
To decrypt this hybrid ciphertext, Alice does the following:
- uses her private key to decrypt the symmetric key contained in the key encapsulation segment.
- uses this symmetric key to decrypt the message contained in the data encapsulation segment.
I am pretty much understood how Hybrid Encryption
works but I don't see how this is better than Public Key Cryptography
.
Question :- Why is Hybrid Encryption superior?
- It is doing an extra work for generating a symmetric key by using Alice's public key. This will also involve complex mathematical computation.
- Along with sending data here it also needs to key along.
- Alice also needs to first decrypt the
symmetric key
and then decrypt themessage
. It almost seems like a double work.
I found some answers here but still it seems incomplete link1 and link2