Criptografia é o processo de transformar dados normais de texto simples em um código secreto compreensível apenas para quem saiba descriptografá-lo.
O objetivo da criptografia é evitar que indivíduos indesejados leiam as suas mensagens.
As VPNs usam a criptografia para ocultar informações da sua atividade de navegação enquanto elas transitam entre o seu dispositivo e o servidor VPN.
O uso de uma VPN impede provedores de internet, governos, administradores de redes Wi-Fi, hackers e terceiros enxeridos de espionar a sua conexão.
E como isso funciona na prática? Como as VPNs criptografam e protegem os dados?
No restante desta seção, examinaremos mais a fundo os diferentes componentes e processos que compõem a criptografia de VPNs, começando com as cifras de criptografia.
Cifras de criptografia

Para converter a sua atividade online em um código ininteligível, as VPNs precisam usar uma cifra de criptografia.
Uma cifra é apenas um algoritmo (ou seja, um conjunto de regras) que criptografa e descriptografa dados.
EXEMPLO: uma cifra muito simples pode criptografar os seus dados usando a regra de “trocar cada letra da mensagem pela letra anterior do alfabeto”. Assim, a palavra em inglês privacy
passaria a ser oqhuzbx
.
As cifras geralmente são correlacionadas com um tamanho de chave específico. Geralmente, quanto maior a chave, mais segura a criptografia. Por exemplo, a AES-256 é considerada mais segura do que a AES-128.
As cifras mais usadas nas VPNs são:
1Advanced Encryption Standard (AES)
A Advanced Encryption Standard ou criptografia AES é uma das cifras mais seguras disponíveis. É o padrão de referência de protocolos de criptografia online e é amplamente utilizada no setor de VPNs.
A AES foi desenvolvida pelo Instituto Nacional de Padrões e Tecnologia dos Estados Unidos (NIST), em 2001, e é conhecida como algoritmo Rijndael. Ela foi configurada para lidar com arquivos maiores do que outras cifras, como Blowfish, devido ao seu tamanho de bloco maior.
Em regra, a AES está disponível em chaves de 128 e 256 bits. Por mais que a AES-128 ainda seja considerada segura, sabemos que organizações como a NSA estão sempre tentando minar os padrões de criptografia. Assim, a AES-256 é a preferencial, porque pode oferecer uma proteção muito maior.
Quando um provedor diz que uma VPN tem criptografia de “nível militar” ou “nível bancário“, saiba que isso geralmente se refere à AES-256. O governo dos Estados Unidos usa a criptografia AES-256 para proteger os próprios dados sigilosos, e é algo que procuramos ao testar e avaliar VPNs.
2Blowfish
A Blowfish é uma cifra criada, em 1993, pelo criptógrafo norte-americano, Bruce Schneier. Era a cifra padrão usada na maioria das conexões de VPN, mas tem sido substituída pela AES-256.
Normalmente a Blowfish é usada com um tamanho de chave de 128 bits, mas pode variar entre 32 e 448 bits.
Existem algumas vulnerabilidades na Blowfish. A mais conhecida é a vulnerabilidade a um ataque criptográfico conhecido como “ataque do aniversário” (birthday attack). Por esse motivo, a Blowfish deve ser usada apenas como plano de contingência para a AES-256.
3ChaCha20
Lançada em 2008 por Daniel Bernstein, a ChaCha20 é uma cifra de criptografia de VPN razoavelmente recente. Apesar disso, está se popularizando cada vez mais, pois é a única cifra compatível com o novo protocolo WireGuard.
Assim como a AES, a ChaCha20 tem um tamanho de chave de 256 bits, considerado muito seguro. Relatos também sugerem que a ChaCha20 tem o triplo da velocidade da AES.
Atualmente, não há vulnerabilidades conhecidas na ChaCha20. Ela é uma alternativa providencial para a AES, já que as tecnologias de criptografia vão enfrentar o desafio da computação quântica em um futuro não muito distante.
4Camellia
A Camellia é uma cifra muito semelhante à AES em termos de segurança e velocidade. Mesmo quando usada com o tamanho de chave menor (128 bits), acredita-se que ela é impossível de comprometer com um ataque de força bruta, graças à sua tecnologia atual. Não há ataques conhecidos que enfraqueçam de fato a cifra Camellia.
A principal diferença entre a Camellia e a AES é que ela não é certificada pelo NIST, a organização dos Estados Unidos que desenvolveu a AES.
Embora seja válido preferir uma cifra que não esteja associada ao governo dos Estados Unidos, a Camellia raramente está disponível em softwares de VPN, e nem foi testada tão amplamente quanto a AES.
RESUMO: uma VPN não deve usar nada menos que a cifra AES-256 para criptografar dados. A ChaCha20 e a Camellia são alternativas seguras, mas a sua VPN deve oferecer, no mínimo, a AES.
Protocolos VPN
Protocolos VPN são regras e processos seguidos pelo dispositivo para estabelecer uma conexão segura com o servidor VPN.
Em outras palavras, o protocolo VPN determina como o túnel VPN é formado, enquanto a cifra de criptografia é usada para criptografar dados que passam por esse túnel.
Dependendo do protocolo em uso, uma VPN terá velocidade, recursos e vulnerabilidades diferentes. A maioria dos serviços permite que você escolha o protocolo que quer usar nas configurações do aplicativo.
Existem vários protocolos VPN disponíveis, mas nem todos são seguros. Veja um breve resumo dos mais comuns:
- OpenVPN: código aberto, extremamente seguro e compatível com quase todos os dispositivos com capacidade para VPN.
- WireGuard: incrivelmente rápido e muito eficiente, mas ainda precisa conquistar a confiança de todos no setor de VPN pelo seu curto tempo no mercado.
- IKEv2/IPsec: protocolo de código fechado excelente para usuários móveis de VPN, mas com suspeita de comprometimento pela NSA.
- SoftEther: não é compatível com diversas VPNs, mas é rápido, seguro e ótimo para contornar a censura.
- L2TP/IPsec: um protocolo mais lento que também é suspeito de ter sido invadido pela NSA.
- SSTP: lida bem com firewalls, mas é de código fechado e potencialmente vulnerável a ataques Man-in-the-Middle.
- PPTP: desatualizado, inseguro e deve ser evitado.
SAIBA MAIS: Para ter uma análise mais detalhada dos diferentes tipos de protocolos VPN e saber qual é o melhor, leia o nosso guia completo sobre protocolos VPN.
Handshake de VPN
Além de protocolos e cifras, as VPNs também usam processos conhecidos como Handshakes e autenticações de Hash para proteger e autenticar ainda mais sua conexão.
Um Handshake (“aperto de mãos” em inglês) refere-se à conexão inicial entre dois computadores. É como um cumprimento em que ambas as partes se autenticam e as regras de comunicação são definidas.
Durante um Handshake na VPN, o cliente VPN (ou seja, seu dispositivo) estabelece uma conexão inicial com o servidor VPN.
Essa conexão é usada para compartilhar com segurança uma chave de criptografia entre cliente e servidor. Essa chave é usada para criptografar e descriptografar os dados em cada extremidade do túnel VPN por toda a sessão de navegação.

O Handshake de VPN geralmente usa o algoritmo RSA (Rivest-Shamir-Adleman). O RSA é a base da segurança que tem sido usada na internet nas últimas duas décadas.
Mesmo que ainda não haja evidências concretas de que o RSA-1024 tenha sido decodificado, no geral é considerado um risco de segurança devido ao poder de processamento atualmente disponível.
O RSA-2048 é uma alternativa muito mais segura e causa relativamente pouca lentidão computacional. Por isso, a maioria das VPNs abandonaram o uso do RSA-1024.
Confie apenas em VPNs que usem RSA-2048 ou RSA-4096.
Por mais que o processo de Handshake funcione bem e gere criptografia segura, é possível descriptografar toda a sessão gerada com a chave privada usada no Handshake de RSA. Dessa forma, é como uma “chave mestra”.
Se a chave mestra for comprometida, ela pode ser usada para descriptografar todas as sessões seguras desse servidor VPN, anteriores ou atuais. Um invasor pode invadir o servidor VPN e obter acesso a todos os dados que passam pelo túnel VPN.
Para evitar isso, recomendamos o uso de serviços de VPN configurados com o PFS.
PFS

O PFS (Perfect Forward Secrecy) é um recurso de protocolo que utiliza o algoritmo de troca de chaves Diffie-Hellman (DH) ou Elliptic Curve Diffie-Hellman (ECDH) para gerar chaves de sessão temporárias.
O PFS garante que a chave de criptografia nunca seja trocada na conexão.
Em vez disso, o servidor VPN e o cliente VPN geram a chave de forma independente usando o algoritmo DH ou ECDH.
É um processo matematicamente complexo, mas o PFS basicamente elimina a ameaça de uma única chave privada que, se comprometida, expõe todas as sessões seguras já hospedadas no servidor.
Em vez disso, as chaves são temporárias, o que significa que só podem revelar uma sessão específica e mais nada.
Ressaltamos que o RSA, por si só, não consegue oferecer o recurso PFS. Para implementá-lo, o DH ou o ECDH devem ser incluídos no conjunto de cifras do RSA.
O ECDH pode ser usado sozinho, em vez do RSA, para gerar um Handshake de VPN seguro com o PFS. No entanto, desconfie de VPNs que utilizam apenas o DH, pois é vulnerável à decodificação. Esse problema é eliminado quando ele é usado com o RSA.
Os três principais protocolos VPN que recomendamos (OpenVPN, WireGuard e IKEv2) são compatíveis com o PFS.
Autenticação de Hash
Os Secure Hash Algorithms (SHA) (algoritmos seguros de Hash) são usados para autenticar a integridade dos dados transmitidos e as conexões cliente-servidor. Eles garantem que as informações não sejam alteradas no caminho entre a origem e o destino.
Os SHAs editam os dados de origem por meio do que é conhecido como função Hash. A primeira mensagem da origem é executada por meio de um algoritmo e o resultado é uma cadeia de caracteres de tamanho fixo que não se parece nada com a original. É conhecida como “valor de Hash”.
É uma função unidirecional, ou seja, não se pode reverter o Hash para identificar a mensagem original a partir do valor de Hash.
O processo de Hash é útil porque, ao alterar apenas um caractere dos dados de origem de entrada, você muda totalmente o valor de Hash gerado pela função de Hash.
Um cliente VPN executa os dados recebidos do servidor, combinados com a chave secreta, por meio de uma função de Hash estipulada durante o Handshake de VPN.
Se o valor de Hash gerado pelo cliente for diferente do valor de Hash na mensagem, os dados serão descartados, pois a mensagem foi adulterada.
A autenticação de Hash por SHA impede ataques Man-in-the-Middle, pois é capaz de detectar qualquer adulteração de um certificado válido.
Sem isso, um hacker poderia se passar por um servidor VPN legítimo e induzi-lo a se conectar a um servidor inseguro, em que a sua atividade poderia ser monitorada.
Para garantir a máxima segurança, recomendamos usar VPNs que adotam o SHA-2 ou superior. O SHA-1 tem vulnerabilidades que podem comprometer a sua segurança.