Assinatura de Arquivos: Assinar e Verificar

Verifique e crie assinaturas de arquivos: OpenSSH ssh-keygen -Y, minisign e OpenSSL com chaves Ed25519, ECDSA P-256/P-384 ou RSA em formato PEM, OpenSSH ou JWK. Arquivos e chaves nunca saem do navegador.

Os dados inseridos e arquivos ficam no navegador

Verificar uma assinatura

Solte o arquivo aqui

ou escolha um arquivo do seu dispositivo

Uma assinatura SSH (-----BEGIN SSH SIGNATURE-----), um arquivo .minisig ou uma assinatura bruta em base64, hex ou arquivo binário .sig.

Chave pública PEM ou certificado, OpenSSH .pub, linhas de authorized_keys ou allowed_signers, JWK/JWKS ou chave pública minisign.

Só para assinaturas SSH: o valor -n do ssh-keygen (file, git, …).

Resultado

O resultado da verificação ou a nova assinatura aparece aqui.

Nesta página

Assinatura de Arquivos verifica e cria assinaturas destacadas para arquivos de qualquer tamanho: assinaturas OpenSSH do ssh-keygen -Y, arquivos .minisig do minisign e assinaturas OpenSSL brutas com chaves Ed25519, ECDSA P-256/P-384 e RSA. O hash do arquivo é calculado no navegador em blocos de 1 MiB; arquivos, chaves e frases-senha nunca são enviados.

Funcionalidade detalhada

Verificar confere um release baixado, backup ou documento com a sua assinatura. Solte o arquivo, cole a Assinatura ou use Carregar assinatura e informe a Chave pública. O formato é detectado automaticamente:

  • Assinaturas OpenSSH (ssh-keygen -Y sign, usadas também em commits e tags do Git): a chave pode ser um arquivo .pub, linhas de authorized_keys ou um arquivo allowed_signers — a linha correspondente mostra quem assinou, e o limite namespaces= é respeitado. O Namespace deve ser o mesmo usado na assinatura (normalmente file). Sem chave, a ferramenta ainda confere a assinatura com a chave que ela contém e mostra sua impressão digital.
  • minisign .minisig (BLAKE2b pré-hash e legado): o ID da chave e o comentário confiável são verificados, então um comentário forjado é detectado.
  • Assinaturas brutas de openssl dgst -sign ou openssl pkeyutl -rawin: binária, base64 ou hex; ECDSA em DER ou r‖s; RSA PKCS#1 v1.5 ou PSS; SHA-256/384/512. As chaves podem ser PEM (SPKI ou PKCS#1), certificado X.509, linha OpenSSH ou JWK.

Assinar cria uma assinatura com a sua Chave privada: OpenSSH, PEM (PKCS#8, PKCS#8 criptografado, EC ou RSA) ou JWK, com Frase-senha para chaves criptografadas. Escolha Assinatura SSH (ssh-keygen -Y) — legível por ssh-keygen -Y verify — ou Assinatura bruta (OpenSSL) com Hash, Padding RSA e Codificação ECDSA. O resultado mostra a assinatura, a impressão digital da chave, a chave pública e um comando pronto para verificar com ssh-keygen ou openssl.

Exemplos práticos

Conferir um release baixado: solte tool-1.4.tar.gz, carregue tool-1.4.tar.gz.sig e cole o allowed_signers do projeto — o resultado mostra A assinatura é válida e o signatário [email protected].

minisign: solte o arquivo compactado, carregue o .minisig dele e cole a chave pública RW… da página do projeto; o comentário confiável com o nome do arquivo e o carimbo de data/hora é exibido.

OpenSSL: verifique openssl dgst -sha256 -sign key.pem -out data.sig data.bin com public.pem; o hash e o padding são detectados automaticamente.

Assinar para um colega: carregue seu id_ed25519, mantenha Assinatura SSH (ssh-keygen -Y) e o namespace file, clique em Assinar arquivo e envie o .sig com a linha allowed_signers.

Como usar esta ferramenta

  1. Escolha o arquivo

    Solte o arquivo em Solte o arquivo aqui ou clique em Escolher arquivo. Qualquer tamanho serve: o hash é calculado em blocos.

  2. Escolha o modo

    Selecione Verificar para conferir uma assinatura ou Assinar para criar uma.

  3. Informe a assinatura e as chaves

    Em Verificar, cole a Assinatura e a Chave pública e confira o Namespace para assinaturas SSH. Em Assinar, cole a Chave privada, informe a Frase-senha se ela estiver criptografada e escolha o Formato da assinatura.

  4. Execute

    Clique em Verificar assinatura ou Assinar arquivo. O progresso mostra os bytes processados; Cancelar interrompe.

  5. Leia o resultado

    Uma mensagem verde ou vermelha dá o veredito, com a impressão digital da chave, o esquema, o hash e o signatário abaixo. Depois de assinar, use Baixar .sig ou copie a assinatura.

Dicas e melhores práticas

  • Uma assinatura válida sem chave confiável só prova a integridade, não quem assinou: sempre compare a impressão digital ou forneça a chave do signatário.
  • O git assina commits com o namespace git; o ssh-keygen -Y sign comum, geralmente com file.
  • Assinaturas RSA-PSS do OpenSSL são verificadas tanto com salt do tamanho do digest quanto com salt máximo, então versões antigas e novas do OpenSSL funcionam.
  • Assinaturas Ed25519 brutas assinam o arquivo inteiro, não um hash: aqui ficam limitadas a 128 MiB, enquanto assinaturas SSH não têm limite de tamanho.
  • A chave privada é usada só nesta aba e não é salva; ainda assim, prefira uma chave de assinatura dedicada à sua chave SSH do dia a dia.

Ajude a escolher o próximo passo

O que devemos melhorar a seguir?

Escolha uma sugestão. São ideias, não funcionalidades prometidas.

Escolha uma opção

O voto envia apenas a opção escolhida como uma contagem anónima. Não contém entradas, dados de ficheiros, URL, cookies nem identificadores e não é guardado neste navegador. Recarregar a página permite votar novamente.