What is SSL?


SSL Definition (from Webopedia) - (pronounced as separate letters) Short for Secure Sockets Layer, a protocol developed by Netscape for transmitting private documents via the Internet. SSL works by using a private key to encrypt data that's transferred over the SSL connection. Both Netscape Navigator and Internet Explorer support SSL, and many Web sites use the protocol to obtain confidential user information, such as credit card numbers. By convention, URLs that require an SSL connection start with "https:" instead of "http:".

Another protocol for transmitting data securely over the World Wide Web is Secure HTTP (S-HTTP). Whereas SSL creates a secure connection between a client and a server, over which any amount of data can be sent securely, S-HTTP is designed to transmit individual messages securely. SSL and S-HTTP, therefore, can be seen as complementary rather than competing technologies. Both protocols have been approved by the Internet Engineering Task Force (IETF) as a standard.

SSL is the industry de-facto method for hiding the information a web browser and a web server send to each other. When you browse a web site, you have very little privacy. Many people can monitor what you reveal to, or request from, that site. Credit card numbers, personal data, or controversial information are an open book to the technologically sophisticated eavesdropper. SSL was designed to defeat the snoops.

An SSL-enhanced browser such as Netscape uses encryption to scramble the data you send to a web site into an unintelligible string of seemingly random characters. A typical transaction is a browser sending the contents of an HTML form to the server. Let's say the form has a field named "cc" to hold the credit card number and we'll look at the difference between unsecure and secure transactions:

  • Unsecure transaction:
    The browser knows it's using a normal, unsecure connection. It sends "cc=2783-2734-8372-8737" to the server. The server receives "cc=2783-2734-8372-8737" and gives it to the CGI script that handles this form.

  • Secure (SSL) Transaction:
    The browser knows it is using a secure connection for this form. It takes "cc=2783-2734-8372-8737" and turns it into "e$$%0lj*&*(#foij" and sends it to the server. The server receives "e$$%0lj*&*(#foij" and converts it back into "cc=2783-2734-8372-8737" and hands it to the CGI script that handles this form.

The important thing to notice here is that the user and the CGI script never see the encrypted form of the credit card number. You can use the same CGI script and the same HTML form for both secure and unsecure transaction.

You may be wondering how the browser knows how to encrypt the data. SSL uses a scheme (actually, a patented algorithm) involving "public" and "private" digital keys. The server gives the browser its public key, which the browser uses to encrypt all transmissions. The interesting thing about this process is that although the public key is used to encrypt the transmission, it cannot be used to decrypt it. Only the private key will work (trust us, it really works!). The server uses the private key (which is never sent to anyone) to decrypt the transmissions. Likewise, the browser creates its own public/private key pair for stuff going in the other direction. So, even if someone intercepts the transmission, they cannot make any sense of it, even if they have the public key!

In addition to providing privacy, SSL was designed to answer a related question: how do you know you are really communicating with the Web site you intended? After all, someone could be intercepting all transmissions and providing a false public key for which they have the correct private key.

SSL is structured to use "certificates" of identity to authenticate web sites and web surfers. These certificates are "digitally signed" and issued by a trusted third party such as Thawte or VeriSign. Such trusted third parties are know as "Certification Authorities" or CAs. Once a web site has registered with a CA, the browser can ask the CA "Is this the correct public key for this company?" Unfortunately, these certificates are not free.

Valley TechNologies, LLC
262.673.1979
414.828.2668

 





Desktops / Laptops / Servers - From Dell - click here and configure the system you want, then send it to us to save you even more dollars!!

Web Design - from a simple design to complete E-Commerce and Data Base Driven Applications.

Web Samples - a variety of business web applications with a wide variety of features.

Web Hosting - packages starting at just $129.00 per year

To Web or Not To Web - that is the question.  Actually, the only question these days is "When"? Making the decision is not an easy one.  Here's some tips that may help you decide...

Should I do it myself?  There is alot of software available for the do-it-your-self-er.  But here are some things to consider before giving it a go on your own...

How do I choose the right designer?  Some things to consider...

Virus or Hoax?  How do I tell the difference?  Is there any real harm? Check it out here...

 

 

All products mentioned are registered trademarks or trademarks of their respective companies.
Questions, problems, or comments regarding this web site should be directed to the web author.
Copyright © 2004 Valley TechNolgies, LLC. All rights reserved.

Web sites made easy by Valley TechNologies, LLC - Hartford, Wisconsin, USA