Entenda o novo TLS 1.3

Veja quais são as novidades do protocolo de criptografia

Entenda o novo TLS 1.3

O TLS - Transport Layer Security, assim como o SSL - Secure Sockets Layer, é um protocolo de segurança que protege a comunicação de dados via internet para vários serviços como e-mail, navegação por páginas e outros tipos de transferência de informações.

A utilização do TLS consiste em estabelecer alguns parâmetros de funcionalidade, como privacidade entre dois pontos, autenticação da identidade, baseada na troca de informações criptografdas, e a confiabilidade, onde as informações trocadas são verificadas em sua integridade.

O TLS é um padrão proposto da Força-Tarefa de Engenharia da Internet (IETF -  Internet Engineering Task Force), definido pela primeira vez em 1999 e atualizado em RFCs seguintes.

A conexão criptografada entre pontos é realizada utilizando-se um tipo de porta diferente (como a 443 para o https).  A comunicação direcionada para a porta específica estabelece o início da sessão criptografada entre os dois pontos. Depois que os dois pontos concordarem em usar o TLS, eles negociam uma conexão usando um procedimento de handshaking (cumprimento, aperto de mão).  Este protocolo é usado para trocar todas as informações exigidas por ambos os lados para o envio de dados da aplicação criptografada por TLS.

A principal característica do handshake é preparar a conexão para o recebimento do tipo de protocolo a ser utilizado na criptorgrafia.  O servidor geralmente fornece identificação na forma de um certificado digital. O certificado contém o nome do servidor, a Autoridade de Certificação (CA) confiável que atesta a autenticidade do certificado e a chave de criptografia pública do servidor.

A Autoridade nada mais é que o fabricante e validador on line de códigos de criptografia, utilizados para codificar a troca de mensagens, chamados de chave. 

O SSL foi um dos primeiros padrões de criptografia ponto-a-ponto na internet. Desenvolvido no início dos anos 90 pela Netscape, foi aperfeiçoado até a versão 3.0, utilizada atualmente.

Esta versão, apesar de exaustivamente trabalhada e aperfeiçoada, já apresenta falhas e vulnerabilidades, como a conhecida quebra de protocolo conhecida como Poodle.

O TLS veio com o objetivo de substituir o SSL em sua forma original. Em todas as suas versões 1.X, o TLS vai aperfeiçoando-se e corrigindo bugs e vulnerabilidades descobertas dntro do formato de criptografia e handshake.

O desenvolvimento da versão 1.3 fez cortar várias implementações antigas e falhas, bem como aperfeiçoar algumas novas funcionalidades.

Sua implementação final foi em 21 de março de 2018 (RFC 8446).  

A principal das implementações foi limitar o uso de cifras a um punhado de cifras muito fortes. Além disso, a maioria das mensagens de handshake é criptografada no TLS 1.3. Em outras palavras, não apenas o canal será criptografado, mas também a configuração da sessão será criptografada.

O handshake do TLS 1.3 também funciona para permitir um início mais rápido da sessão, já que menos viagens de ida e volta são necessárias antes que os dados sejam passados.  Na verdade, quando implementado ponta a ponta, ele necessita apenas de uma viagem de ida e volta de handshake.

Vários recursos obsoletos também foram removidos, o que reduz a vilnerabilidade de ataques no procedimento de handshake. Dentre os recursos obsoletos removidos, temos: SHA-1, RC4, DES, 3DES, AES-CBC, MD5. 

A implantação nos navegadores está se dando aos poucos, pois as incompatibilidades entre o TLS 1.3, servidores (como Cloudflare, por exemplo) e protocolos precisa ser superada.  Na verdade, tanto o Chrome quanto o Firefox já testaram versões com o TLS 1.3, mas foram removidas em razão destes tropeços apresentados.  Da mesma forma as Autoridades de Certificação começam também a implementar o novo TLS, o que será uma tarefa de dupla ação, pois após o upgrade, os sites precisarão atualizar os certificados SSL também.