Public Key Cryptography
Public Key Cryptography
Introduction
Public Key Cryptography
Unlike symmetric key, there is no need
for Alice and Bob to share a common
secret
Alice can convey her public key to Bob in a
public communication:
Encrypting w/ Public Keys
Public key schemes encrypt large blocks
of data:
Smallest system with reasonable security has
block sizes at least 160 bits (Elliptic Curves)
Key size generally equal to or close to block
size
Orders of magnitude less efficient than
symmetric key encryption
Why public key?
The reason public keys are used is to
establish secure communication when there is
no way to exchange a key beforehand.
Confidential/authenticated channels for free?
Must ensure that the public key belongs to the
correct party (binding of identity to key). The
public key directory may be corrupted:
Solution: Use a Public Key Infrastructure to
certify your keys (PKI)
Encryption: Details
Alice knows Bob’s public key PBob
Uses the encryption algorithm:
Enc(PBob, Message) = C
Anybody may encrypt messages that
only Bob may read, since he knows the
private key SBob
Message = Dec(SBob, C)
How does Bob know SBob?
How did Bob come to know his private
key to start with?
The answer is that Bob generates the pair
(PBob, SBob) jointly. The key generation
procedure is probabilistic and one-way.
The security of such methods is closely
related to a class of mathematical
problems from modular arithmetic