O que é um par de chaves SSH?

Um par de chaves SSH é um conjunto de duas chaves criptográficas usadas para autenticar um usuário em um servidor remoto sem uma senha. O par consiste em uma chave privada, mantida em segredo na máquina do usuário, e uma chave pública, colocada no servidor remoto. Ao conectar, o servidor desafia o cliente a provar a posse da chave privada — sem nunca transmitir a chave privada em si. Esta abordagem assimétrica é significativamente mais segura do que a autenticação baseada em senha porque não há um segredo compartilhado que possa ser interceptado ou submetido a força bruta.

Os pares de chaves SSH são gerados usando algoritmos de criptografia de chave pública. Os mais amplamente utilizados são Ed25519, um algoritmo moderno de curva elíptica conhecido por seu tamanho de chave pequeno e alta segurança, e RSA, um algoritmo comprovado que se baseia na dificuldade de fatorar números inteiros grandes. Ed25519 é recomendado para novas chaves devido ao seu desempenho superior e resistência a ataques de canal lateral.

Descrição da ferramenta

O Gerador de Par de Chaves SSH cria pares de chaves SSH Ed25519 ou RSA criptograficamente seguros diretamente no seu navegador usando a Web Crypto API. Nenhum dado é enviado para um servidor — todo o material de chave é gerado localmente no seu dispositivo. Você pode opcionalmente adicionar um comentário (tipicamente user@hostname) para ajudar a identificar a chave posteriormente. As chaves pública e privada geradas podem ser copiadas para a área de transferência ou baixadas como arquivos, prontas para usar com ssh-copy-id ou qualquer cliente SSH.

Exemplos

Chave pública Ed25519

ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOMqqnkVzrm0SdG6UOoqKLsabgH5C9okWi0dh2l9GKJl user@hostname

Chave pública RSA (4096-bit)

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC2... user@hostname

Chave privada (formato OpenSSH)

-----BEGIN OPENSSH PRIVATE KEY-----
b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAAB...
-----END OPENSSH PRIVATE KEY-----

Recursos

  • Suporte Ed25519 e RSA: Escolha entre um algoritmo moderno de curva elíptica ou o algoritmo RSA clássico
  • Opções de tamanho de chave RSA: Selecione chaves RSA de 2048, 3072 ou 4096-bit para equilibrar segurança e desempenho
  • Campo de comentário opcional: Anexe um comentário no estilo user@hostname para ajudar a identificar a chave entre máquinas
  • Geração no lado do cliente: As chaves são geradas inteiramente no seu navegador usando a Web Crypto API — nada é transmitido ou armazenado
  • Download com um clique: Salve os arquivos de chave pública e privada diretamente com nomes de arquivo corretos (id_ed25519, id_ed25519.pub, id_rsa, id_rsa.pub)

Casos de uso

  • Configuração de acesso ao servidor: Gere um par de chaves uma vez e implante a chave pública em qualquer número de servidores Linux/Unix remotos via ~/.ssh/authorized_keys para habilitar login SSH sem senha
  • Autenticação de hospedagem Git: Adicione a chave pública ao GitHub, GitLab ou Bitbucket para autenticar operações git push e git pull sem inserir credenciais a cada vez
  • Pipelines CI/CD: Crie um par de chaves de implantação dedicado para scripts automatizados ou agentes de compilação que precisam de acesso SSH a servidores ou repositórios privados

Como funciona

A geração de chaves usa a API crypto.subtle integrada do navegador (Web Crypto). Para Ed25519, o escalar privado bruto de 32 bytes e a chave pública de 32 bytes são empacotados no formato de fio OpenSSH (openssh-key-v1). Para RSA, a chave é exportada em formato PKCS#8 DER e envolvida em um envelope PEM padrão. O blob da chave pública é codificado no formato de fio SSH (nome do algoritmo com prefixo de comprimento seguido pelo material da chave) e codificado em Base64, correspondendo ao formato esperado pelo arquivo authorized_keys do OpenSSH.

Dicas

  • Após baixar, defina as permissões corretas no arquivo de chave privada: chmod 600 ~/.ssh/id_ed25519. SSH recusará usar uma chave privada que seja legível por outros usuários.
  • Use Ed25519 a menos que você precise de compatibilidade com sistemas mais antigos que não o suportam. Ele produz chaves mais curtas e é mais rápido que RSA.
  • O campo de comentário não afeta a força criptográfica da chave — é puramente para identificação humana e pode ser alterado posteriormente com ssh-keygen -c.
  • Para máxima compatibilidade RSA com servidores legados, use chaves de 4096-bit. Para servidores modernos, Ed25519 é preferido independentemente do tamanho da chave RSA.