Introdução
SSL é um acrônimo para secure socket layer, uma tecnologia que criptografa a comunicação entre usuários e um website.
![o que é SSL](https://storage.googleapis.com/tech-enter/posts/cover-images/4fkvjodlzOaCVVapiCwsy99o9JRv0gAMHVqbngIm.webp)
SSL é um acrônimo para secure socket layer, uma tecnologia que criptografa a comunicação entre usuários e um website. Essa criptografia garante que dados importantes, como nomes de usuários, senhas e informações de cartão de crédito, sejam enviados para o usuário sem risco de interceptação. Seria bastante inseguro efetuar compras online sem esse tipo de criptografia.
Um site com certificado SSL atua sob o protocolo https. Quando você visita um site na web que começa com https, o “s” após o “http” indica que o site é seguro e utiliza um certificado SSL para verificar sua autenticidade. Geralmente, para verificar que um site possui SSL para garantir a segurança da conexão dos visitantes, os navegadores fornecem dicas visuais, como um ícone de cadeado ou uma barra verde.
Websites respeitáveis usam SSL para proteger os dados de seus clientes e suas transações online. Sua reputação depende disso. O fato é que você não deve fornecer informações particulares a qualquer website que não use um certificado SSL. Ao adicionar certificado SSL, os dados confidenciais dos usuários e do site são mantidos fora do alcance de terceiros. Se um site precisa de informações confidenciais, este tipo de segurança é imprescindível.
Embora o SSL é mais comumente visto na Web (HTTP), ele também é usado para proteger outros protocolos da Internet, como SMTP para envio de e-mail e NNTP para grupos de notícias.
Um certificado SSL é necessário para criar uma conexão SSL e podem ser emitidos por empresas ou indivíduos legalmente responsáveis. Você precisa fornecer todos os detalhes sobre a identidade da sua empresa e do seu site quando você desejar ativar o SSL em seu servidor da web. Normalmente, um certificado SSL conterá seu nome de domínio, nome da sua empresa, seu endereço, sua cidade, seu estado e seu país. Também conterá a data de expiração do certificado e os detalhes da Autoridade Certificadora responsável pela emissão do certificado.
Quando um navegador se conecta a um site seguro, ele recupera o certificado SSL do site e verifica se ele não expirou, se foi emitido por uma autoridade de certificação e se está sendo usado pelo site para o qual foi emitido. Se falhar em qualquer uma dessas verificações, o navegador exibirá um aviso para o usuário final informando que o site não está protegido por SSL.
Uma autoridade de certificação é uma entidade que emite certificados digitais para organizações ou pessoas após validá-los. As autoridades de certificação devem manter registros detalhados do que foi emitido e das informações usadas para emiti-lo, e são auditadas regularmente para garantir que estejam seguindo os procedimentos definidos.
Cada autoridade de certificação (ACs) fornece uma Declaração de Práticas de Certificação que define os procedimentos que serão usados para verificar as aplicações. Existem muitas ACs comerciais que cobram por seus serviços. Instituições e governos podem ter suas próprias ACs, e também há autoridades de certificação gratuitas.
Os certificados SSL possuem um par de chaves: uma pública e uma privada. Essas chaves trabalham juntas para estabelecer uma conexão criptografada.
Para obter um certificado, você deve criar uma Certificate Signing Request (CSR, ou em português, solicitação de assinatura de certificado) em seu servidor. CSR é um arquivo de dados que também contém seus detalhes. Este processo cria uma chave privada e uma chave pública no seu servidor. O arquivo de dados CSR que você envia para a autoridade certificadora contém a chave pública. A AC usa o arquivo de dados CSR para criar uma estrutura de dados que corresponda à sua chave privada sem comprometer a chave em si. A AC nunca vê a chave privada.
Depois de receber o certificado SSL, você o instala no seu servidor. Você também instala um certificado intermediário que estabelece a credibilidade do seu certificado SSL vinculando-o ao certificado root(raiz) da sua AC. As instruções para instalar e testar seu certificado serão diferentes dependendo do seu servidor.
Como o SSL funciona?
Cada certificado SSL válido deve ser emitido para cada servidor e domínio (endereço do site). Quando você usa seu navegador para abrir um site que contém um certificado SSL, o processo chamado handshake SSL ocorre entre o seu navegador e o servidor do site.
A solicitação de informações durante o handshake fica visível para você na janela do seu navegador. Você encontrará algumas alterações que indicam que uma sessão segura foi iniciada. Um cadeado, uma marca de confiança ou o nome do website destacado em verde são todos indicadores de que um link seguro foi estabelecido e que comunicações seguras podem começar. Esse processo é invisível para o usuário e ocorre em questão de milisegundos.
Os passos abaixo ilustram um handshake:
- O navegador conecta a um servidor web(site) seguro com ssl(https). O navegador solicita que o servidor se identifique.
- O servidor envia uma cópia de seu certificado SSL, incluindo a chave pública do servidor
- O navegador checa o certificado root/raiz em uma lista de ACs confiáveis, verifica se o certificado não foi expirado ou revogado e se seu nome é válido para o site ao qual está se conectando. Se o navegador confiar no certificado, ele cria, criptografa e envia de volta uma chave de sessão simétrica usando a chave pública do servidor.
- O servidor descriptografa a chave de sessão simétrica usando sua chave privada e envia de volta uma confirmação criptografada com a chave de sessão para iniciar a sessão criptografada.
- Servidor e Navegador agora criptografam todos os dados transmitidos com a chave de sessão.
SSL E TLS
SSL e TLS normalmente significam a mesma coisa. A maioria das pessoas está familiarizada com o termo SSL, o que geralmente é o termo usado quando o sistema está usando protocolo TLS mais recente.
Questões de múltipla escolha
Responda questões de múltipla escolha sobre o tema SSL – Secure Socket Layer.
[mtouchquiz 17]