Certificados ssl e a importância de um ca terceirizado de confiança
Este trabalho visa ser uma introdução objetiva a protocolos de criptografia não-simétricos da camada de transporte: Secure Sockets Layer (SSL) e o posterior Transport Layer Security (TLS).
Este texto também visa explicar resumidamente o que é o certificado SSL emitido por uma CA (Certificate Authority) comercial reconhecido usado em servidores web.
Várias versões dos protocolos SSL/TLS são usados em aplicações como e-mail, fax pela internet, mensagem instantânea e VoIP, encapsulando protocolos da camada de aplicação como HTTP, FTP, SMTP, NNTP e XMPP. Inicialmente eram usados primariamente para segurança na transmissão através dos protocolos da camada de camada de transporte Transmission Control Protocol (TCP) e User Datagram Protocol (UDP), hoje são extensivamente usado por protocolos de comunicação da camada de aplicação.
O protocolo TLS permite que aplicações cliente-servidor possam se comunicar através de uma rede usando criptografia para evitar espionagem e sabotagem.
Tendo em vista que grande parte dos protocolos de rede podem ser utilizados com ou sem TLS/SSL é necessário indicar ao servidor se o cliente está realizando uma conexão TLS ou não. Existem duas principais formas de atingir este objetivo, uma opção é usar um número de porta diferente para conexões TLS (por exemplo a porta 443 para HTTPS em detrimento da porta padrão 80). A outra é usar o número da porta padrão e então o cliente envia uma solicitação ao servidor para que este passe a trabalhar usando TLS, um exemplo de mecanismo que permite ao cliente enviar esta solicitação é a extensão STARTTLS que provê tal funcionalidade a protocolos como IMAP e POP3.
Uma vez que o cliente e o servidor desejam inciar comunicação usando TLS/SSL estes iniciam um procedimento chamado "handshake".
Handshake
Durante o handshake, o cliente e o servidor concordam em vários parâmetros usados para estabelecer a segurança da