home news blogs forums events research newsletter whitepapers careers


UBM Network Computing
TechWeb
Visit our SOA/Web Services Immersion Center

IMMERSE YOURSELF:

SOA

  |

Data Center

  |

802.11n

  |

Data Privacy

  |
APO  |

Virtualization

  |

NAC

  |

Security

  |

Network Mgmt

  |

Enterprise Apps

  |

Storage & Servers


Security
F E A T U R E  
Online Only: The Anatomy of an SSL Handshake

  June 11, 2001
  By Lori MacVittie


The negotiation of cipher suites, verification of certificates and exchange of public keys that occur when you request a secured resource from a Web server via SSL is known as the SSL handshake. Much like the process that occurs during the initiation of a TCP session, this handshake exchanges information necessary for a client and server to set up a secure channel over which to communicate. This process is by far the most expensive in terms of CPU cycles when communicating via SSL.



Understanding what occurs during the SSL handshake can shed some light on why the process is so burdensome and why SSL accelerators can improve the performance of your SSL-enabled Web server by off-loading expensive handshake routines to hardware.

First, the client sends the server its SSL version number, cipher settings and a random number with a time stamp. The server then sends the client its SSL version numbers, cipher settings and randomly generated data. The server also sends its certificate and, if the client is requesting a server resource that requires client authentication, requests that the client certificate be sent back to the server.

The client then attempts to authenticate the server using information in the server's certificate. If the certificate is deemed valid or the client decides to accept the certificate regardless of the validity of the certificate (not a good idea!), the client will create the premaster secret for the session; encrypt it with the server's public key, which was obtained from the server's certificate; and send the encrypted premaster secret to the server. If the server has requested client authentication, the client computes a hash of all the SSL messages that have been exchanged, encrypts the result with its private key and sends this data along with the client's own certificate to the server.

If the server has requested client authentication, the server attempts to authenticate the client. The server uses its private key to decrypt the premaster secret, then performs a series of steps (which the client also performs, starting from the same premaster secret) to generate the master secret. Both the client and the server use the master secret to generate the session keys, which are symmetric keys used to encrypt and decrypt information exchanged during the SSL session and verify its integrity. The generation of keys is aided by SSL accelerators because they perform the CPU-intensive cryptographic processing necessary to create these symmetric keys in silicon, rather than in software.

Encryption and decryption, known as bulk encryption, are also CPU-intensive and can be aided by SSL acceleration devices. But the real value of an SSL accelerator lies in its ability to perform hundreds of key signings per second, something that software simply can't do.

The client sends a message to the server informing it that future messages from the client will be encrypted with the session key. The client then sends a separate (encrypted) message indicating that the client portion of the handshake is finished. The server sends a message to the client informing it that future messages from the server will be encrypted with the session key. The server then sends a separate (encrypted) message indicating that the server portion of the handshake is finished. Once the handshake is complete, data is transferred between the client and the server in an encrypted mode. Since private keys are never exchanged and data encrypted with the public key can be decrypted using only the matching private key pair, data is secure.

This handshake occurs every time a session is initiated. With Microsoft Internet Explorer (IE) 5.0 and later, SSL sessions are set to time out every two minutes, requiring renegotiation of the session -- and a new SSL handshake. SSL handshaking is incredibly expensive in terms of resources for the Web server, and the renegotiation caused by IE 5.x adds unprecedented burdens to SSL-enabled Web servers. SSL accelerators can alleviate much of this burden, but users of IE 5.x need to be aware of this and should visit Microsoft's Web site (support.microsoft.com/support/kb/articles/Q265/3/69.ASP) to find out how to fix this problem. Your Web server will thank you for it.


   Page: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | First Page





Ready to take that job and shove it?

Function:

Keyword(s):

State:
SPONSOR
RECENT JOB POSTINGS
CAREER NEWS
Go beyond Google and get vertical. These specialized search sites will help you find the business information you need -- fast.

Ari Balogh was named to the post of chief technology officer as the companys for a "realignment" of employees.










InformationWeek U.S. IT Salary Survey 2008
Salaries for business technology professionals are falling. Here's what you need to know in order to make good hiring decisions and personal career choices. Purchase Today: $299
 
ROLLING RIGHT ALONG
Follow key Network Computing Reviews from conception to completion. This Week: Holistic APM.



Network Computing Reports Emerging Enterprise Podcast Series: Secrets to Success








TechSearch


Microsite of the Week


Powerful Information at Your Fingertips



App Infrastructure   |   Messaging & Collaboration   |   Network & Systems Mgmt   |   Network Infrastructure   |   Security  |   Storage & Servers   |   Wireless   |   Enterprise Apps
About Us  |  Contact Us  |  Site Map  |  Media Kit  |   Briefing Centers
Other Techweb Sites:   InformationWeek Reports  |  Intelligent Enterprise  |  Light Reading  |  InformationWeek
Techweb  |  Dark Reading  |  Network Computing Germany  |   Byte & Switch  |  bMighty  |  Small Biz Resource  |  InformationWeek Analytics
Copyright © 2008  United Business Media LLC  |  Privacy Statement  |  Terms of Service  |  Your California Privacy Rights