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.