IT Security Basic - CH.2.1 Public Key


Public Key

Since it is hard to distribute symmetric key [DES/AES/... described last ch.] securely, people start to think

  1. Can we use a key to encrypt and use another key to decrypt?
  2. One of the two keys can be viewed by anyone, and it will not affect the security level
That is public & private key
In this chapter, we will go through the concept of public and private key without handling mathematic stuff.
Sending a private message

*Public key - Key that can give anybody
*Private key - Key that can owned by private owner
  1. User encrypt message using the Public Key
  2. Send the ciphertext to Key owner
  3. Key owner use the private key to decrypt the message
  4. Since only the owner have the private key, message is protected.
Authenticating a private user
How can we know a bill is really send from the bank? But not a hacker flicking us?
  1. Private Key owner encrypt the message using his private key
  2. Other users use its public key to decrypt the message
  3. Since only the owner have the private key, the message must be sent by the owner



Encrypt Large message

Since it is slow for public/private key to encrypt messages, it will be very harsh to encrypt large message, we need another approach...
  1. Encrypt the message with the session key
  2. Encrypt the session key with the public key
  3. Send the ciphertext and the encrypted session key to recipient
  4. The private key owner decrypt the session key first
  5. And then use the session key to decrypt the message
Other approach on encrypting large message - Diffie-Hellman Key Exchange
Diffie and Hellman are one of the teams to introduce Public/Private keys
  1. Bob has public Key (Xa) and Private Key (Ya)
  2. Alice has public Key (Xb) and Private Key (Yb)
  3. From mathematics we know, (Xa)*(Yb)=(Ya)*(Xb)
  4. So, Bob send Alice (Xa) and Alas send Bob (Xb)
  5. Then Bob has (Ya)*(Xb) and Alice has (Xa)*(Yb)
  6. Now they have the same key (as 3.) and they can use it to encrypt and decrypt messages
Public Key algorithms
  1. Merkle/Hellman (Knapsack), subsequently found to be insecure

  2. El Gamal (Discrete logarithm Problem)
  3. Miller/Koblitz (Elliptic curves)
  4. Digital Signature Standard (DSS) (Discrete logarithm Problem)

  5. RSA algorithm, by the name of- [ Ron Rivest, Adi Shamir, Len Adleman ]

1206, No. 1388 New Jinqiao Road, Jinqiao district, Shanghai, China
General Enquiry: info@yubis.net
Website: http://www.yubis.net