Esses dois protocolos de criptografia são frequentemente discutidos juntos, mas o que são e como funcionam? O Transport Layer Security (TLS) é a versão mais recente do protocolo Secure Socket Layer (SSL). Ambos os protocolos garantem a privacidade e a autenticidade dos dados na internet. Esses protocolos amplamente usados fornecem segurança de ponta a ponta aplicando criptografia …
TLS vs. SSL: qual é a diferença e como funciona
Esses dois protocolos de criptografia são frequentemente discutidos juntos, mas o que são e como funcionam?
O Transport Layer Security (TLS) é a versão mais recente do protocolo Secure Socket Layer (SSL). Ambos os protocolos garantem a privacidade e a autenticidade dos dados na internet. Esses protocolos amplamente usados fornecem segurança de ponta a ponta aplicando criptografia para comunicação baseada na web. No entanto, apesar das semelhanças de TLS e SSL, eles também têm diferenças significativas.
Este artigo explica como os protocolos de criptografia TLS e SSL funcionam, sua importância, como eles diferem e por que é o momento certo para mudar para o protocolo TLS.
O histórico de TLS e SSL
A Internet Engineering Task Force (IETF), a organização responsável pelo desenvolvimento de padrões de internet, publicou Request for Comments (RFC-1984) , reconhecendo a importância da proteção de dados pessoais na crescente internet. A Netscape Communication Corporation introduziu o SSL para proteger a comunicação na Web que passou por várias atualizações.
A versão SSL 1.0 nunca foi lançada devido a falhas de segurança, e SSL 2.0 foi a primeira versão pública da Netscape em 1995. No entanto, devido a vulnerabilidades e desvantagens de segurança, foi substituída por outra versão SSL 3.0 em novembro de 1996. A versão SSL mais recente também não está em uso devido à sua insegurança contra o ataque POODLE em outubro de 2014 e foi oficialmente descontinuado em junho de 2015.
O TLS foi lançado em 1999 como um protocolo independente de aplicativo: uma atualização para SSL versão 3.0 feita pela Internet Engineering Task Force (IETF). A ideia era implementar TLS sobre TCP para criptografar aplicativos usando protocolos FTP, IMAP, SMTP e HTTP. Por exemplo, o HTTPS é uma versão segura do HTTP , pois implementa o TLS para garantir a entrega segura de dados, evitando alterações de conteúdo e espionagem.
Funcionamento básico dos protocolos TLS/SSL
A comunicação entre as partes (por exemplo, o navegador do seu computador e um site) é iniciada identificando se incorporará o protocolo TLS/SSL ou não, de modo que o cliente possa especificar o uso da criptografia TLS:
- Especificar uma porta que suporte criptografia de comunicação SSL ou
- Fazendo solicitações específicas do protocolo TLS
Enquanto isso, um site requer um certificado TLS/SSL instalado em seu servidor de hospedagem para usar o protocolo. Um terceiro confiável emite o certificado que vincula a chave pública ao domínio que possui a chave privada e permite criptografar/descriptografar a comunicação.
Depois de concordar em usar TLS/SSL para comunicação cliente-servidor, ele prossegue para realizar o handshake. O handshake estabelece as especificações necessárias para a troca de mensagens. A seção a seguir resume a série de trocas de informações para habilitar a conexão TLS/SSL:
- As partes concordam com a versão do protocolo que usarão, então
- Decide os algoritmos criptográficos ou o conjunto de cifras a serem usados, então
- Autentica as partes comunicantes com sua chave pública e assinaturas digitais da autoridade de certificação emissora e, em seguida,
- Troca as chaves de sessão a serem usadas durante a comunicação. Os protocolos TLS e SSL usam criptografia assimétrica para gerar chaves compartilhadas (públicas) e privadas.
Se o navegador não puder validar o certificado TLS/SSL, ele retornará um erro de “A conexão não é privada”.
Após estabelecer o método de descriptografia durante o handshake, o protocolo de registro usa criptografia simétrica para comunicação durante toda a sessão. Além disso, o protocolo de registro também anexa a mensagem com o HMAC para TLS e MAC para SSL para garantir a integridade dos dados.
Assim, os protocolos cumprem três objetivos fundamentais de segurança:
- Confidencialidade: Criptografa os dados para ocultá-los de terceiros, de modo que apenas um destinatário pretendido possa visualizar o conteúdo.
- Integridade: aplica o código de autenticação da mensagem para verificar o conteúdo da mensagem criptografada.
- Autenticação: autentica a identidade do site/cliente/servidor com a ajuda de um certificado para garantir que as partes que trocam informações não possam recuar de sua identidade.
Qual é a diferença entre TLS e SSL?
Como mencionado anteriormente, a principal diferença que você percebe entre os dois protocolos é como eles estabelecem conexões. O handshake TLS usa uma maneira implícita de estabelecer uma conexão por meio de um protocolo, enquanto o SSL faz conexões explícitas com uma porta.
Independentemente de todas as outras diferenças, o recurso fundamental que diferencia as conexões TLS/SSL é o uso de um conjunto de cifras que decide a segurança geral da conexão.
A parte essencial de uma conexão TLS/SSL é concordar com um conjunto de cifras que defina um conjunto de algoritmos para troca de chaves, autenticação, criptografia em massa e um código de autenticação de mensagem baseado em hash (HMAC) ou algoritmos de código de autenticação de mensagem, etc. para uma determinada sessão. Cada versão TLS/SSL suporta um conjunto diferente de conjuntos de cifras para a sessão de comunicação. Portanto, cada conjunto de cifras suporta seu próprio conjunto de algoritmos que melhora a segurança e o desempenho geral da conexão.
SSL | TLS |
---|---|
SSL é um protocolo complexo para implementar. | TLS é um protocolo mais simples. |
SSL tem três versões, das quais SSL 3.0 é a mais recente. | O TLS tem quatro versões, das quais a versão TLS 1.3 é a mais recente |
Todas as versões do protocolo SSL são vulneráveis a ataques. | O protocolo TLS oferece alta segurança. |
SSL usa um código de autenticação de mensagem (MAC) após a criptografia de mensagem para integridade de dados | O TLS usa um código de autenticação de mensagem baseado em hash em seu protocolo de registro. |
O SSL usa o resumo da mensagem para criar um segredo mestre. | O TLS emprega uma função pseudo-aleatória para criar um segredo mestre. |
Por que o TLS substituiu o SSL?
A criptografia TLS agora é uma prática padrão para proteger aplicativos da Web ou dados em trânsito contra espionagem e adulteração. Não é realista assumir o TLS como o protocolo mais seguro, pois foi propenso a violações como Crime e Heartbleed em 2012 e 2014, mas mostrou muitas melhorias em termos de desempenho e segurança.
O TLS está substituindo o SSL e quase todas as versões do SSL agora estão obsoletas devido às suas vulnerabilidades conhecidas. O Google Chrome é um exemplo que parou de usar a versão SSL 3.0 em 2014, e a maioria dos navegadores modernos não suporta SSL.
Use TLS para comunicação criptografada
O TLS ajuda a proteger informações confidenciais em trânsito, como detalhes de cartão de crédito, e-mails, voz sobre IP (VOIP), transferência de arquivos e senhas. Embora ambos os certificados executem a tarefa de criptografia de dados em trânsito, eles diferem em funcionalidade e não são interoperáveis.
É importante observar que o TLS é chamado de SSL apenas porque SSL é a terminologia mais usada e a presença de um certificado não garante o uso do protocolo TLS. Além disso, você não precisa se preocupar em alterar certificados SSL para TLS, pois tudo o que você precisa fazer é instalar o certificado no servidor, pois ele suporta os dois protocolos e decide qual usar.