O SSH utiliza um sistema de Criptografia Híbrida, que combina o melhor dos dois mundos: a segurança da criptografia assimétrica e a velocidade da criptografia simétrica.
1. Por que usar Criptografia Híbrida?
- Criptografia Assimétrica (Chave Pública/Privada): É segura para trocar chaves sem um segredo prévio, mas é computacionalmente cara e lenta para grandes volumes de dados.
- Criptografia Simétrica (Chave Única): É extremamente rápida e eficiente para grandes transmissões, mas exige que ambos os lados já possuam o mesmo segredo (chave) de antemão.
O SSH resolve esse dilema usando a assimétrica apenas para o Handshake inicial e a simétrica para o Túnel de Dados.
2. O Processo de Criptografia no SSH
Fase 1: Handshake Assimétrico
Durante a troca de chaves (KEX), o cliente e o servidor usam algoritmos assimétricos (como RSA, ECDSA ou Ed25519) para autenticar o servidor e realizar o Diffie-Hellman. O resultado deste processo é a geração de uma Chave de Sessão simétrica idêntica em ambos os lados.
Fase 2: Túnel de Dados Simétrico
Uma vez estabelecida a chave de sessão, toda a comunicação subsequente (inclusive o envio da senha ou o tráfego do terminal) é criptografada usando algoritmos simétricos rápidos como AES (Advanced Encryption Standard) ou ChaCha20.
3. Algoritmos RecomendadosAtualmente
Para um ambiente seguro, o administrador deve desabilitar cifras fracas e priorizar as modernas:
-
Recomendados:
aes256-gcm@openssh.com(Simétrico - muito seguro e rápido com aceleração por hardware).chacha20-poly1305@openssh.com(Simétrico - ideal para dispositivos móveis ou CPUs sem aceleração AES).curve25519-sha256(Troca de Chaves - o padrão ouro atual).
-
Legados / Vulneráveis:
arcfour,blowfish,3des.diffie-hellman-group1-sha1.
[!IMPORTANT]
A criptografia híbrida é o que permite que o SSH seja usado para transferir arquivos de gigabytes (SFTP) com alto desempenho, enquanto mantém a segurança de nunca transmitir o segredo pela rede.