Resumo Banco de Dados
SSL (Secure Sockets Layer - camada de soquetes seguros) é um protocolo de segurança que foi desenvolvido pela Netscape Communications Corporation, juntamente com a RSA Data Security, Inc. O objetivo primário do protocolo SSL é prover um canal privado entre aplicativos em comunicações, que garanta privacidade dos dados, autenticação dos parceiros e integridade.
1.1 Visão Geral do SSL
O SSL oferece uma alternativa para a API de soquetes TCP/IP padrão com segurança implementada nela. Conseqüentemente, na teoria, é possível executar qualquer aplicativo TCP/IP de modo seguro sem alterar o aplicativo. Na prática, o SSL é implementado com frequência em conexões HTTP. As páginas SSL são identificadas pelo “s” adicionado depois de “http”, assim “https”.
O SSL é composto de duas camadas:
Na camada inferior, um protocolo para transferência de dados usando uma variedade de combinações de cifra e autenticação, chamado de SSL Record Protocol (protocolo de registro SSL). A figura 1 ilustra isto, e o compara com uma conexão de soquetes HTTP. Este diagrama mostra o SSL como provedor de uma interface de soquetes simples, na qual os outros aplicativos podem ser assentados. Na realidade, as implementações atuais possuem a interface de soquete embutida no aplicativo e não expõem uma API que outros aplicativos possam usar.
Na camada superior, um protocolo para autenticação inicial e transferência de chaves de criptografia, chamado de SSL Handshake Protocol (protocolo de handshake - início de conexão - SSL).
Uma sessão SSL é iniciada da seguinte forma:
No cliente (navegador) o usuário solicita um documento com um URL especial que começa com https: em vez de http.
O código do cliente reconhece a solicitação SSL e estabelece uma conexão através da porta TCP 443 com o código SSL no servidor.
O cliente então inicia a fase de handshake (início de conexão) do SSL, usando o protocolo de registro SSL como uma portadora. Neste ponto não existe criptografia ou checagem de