Gerador de SHA-1 online

O SHA-1 é uma função de hash que gera um resumo de 160 bits, escrito com 40 caracteres hexadecimais, a partir de qualquer texto ou arquivo. Esta ferramenta calcula o SHA-1 no seu navegador, sem enviar o conteúdo a um servidor. O SHA-1 não é mais considerado seguro contra adulteração: para segurança, use SHA-256 ou superior.

Atualizado em · Por Leonardo Gaertner

SHA-1
-

Achou um resultado errado ou tem uma sugestão? Avise por e-mail.

Como usar

  1. Digite ou cole o texto, ou escolha um arquivo.
  2. O SHA-1 aparece na hora, em hexadecimal ou Base64, em minúsculas ou maiúsculas.
  3. Clique em Copiar para levar o hash para onde precisar.

Como funciona

O SHA-1 foi publicado pelo NIST no padrão FIPS 180 e produz 20 bytes de saída, que aparecem como 40 caracteres hexadecimais. O texto é convertido para UTF-8 antes do cálculo, e a ferramenta usa a função de hash nativa do navegador.

Em 2017, pesquisadores do Google e do CWI publicaram a primeira colisão prática do SHA-1: dois arquivos diferentes com o mesmo hash. Desde então navegadores e autoridades de certificação abandonaram o SHA-1 em certificados.

Ele ainda aparece em sistemas legados e em identificadores, como nos objetos do Git, e em integrações que o exigem por compatibilidade. Para novos usos, prefira SHA-256.

Exemplos de SHA-1

Texto vazio: da39a3ee5e6b4b0d3255bfef95601890afd80709

abc: a9993e364706816aba3e25717850c26c9cd0d89d

Fonte: NIST FIPS 180-4: Secure Hash Standard (SHA)

Em código

Para gerar o SHA-1 de um texto em código, a biblioteca padrão de cada linguagem já resolve. Use só por compatibilidade: o SHA-1 não é mais seguro contra colisões.

JavaScript
import { createHash } from 'node:crypto';

function sha1Hex(texto) {
  return createHash('sha1').update(texto, 'utf8').digest('hex');
}

Node.js.

Python
import hashlib


def sha1_hex(texto: str) -> str:
    return hashlib.sha1(texto.encode("utf-8")).hexdigest()
PHP
<?php
function sha1Hex(string $texto): string
{
    return hash('sha1', $texto);
}

Perguntas frequentes

O SHA-1 ainda é seguro?

Não para segurança. Uma colisão prática foi demonstrada em 2017. Ele pode continuar em usos de compatibilidade e em verificações sem adversário, mas não em assinaturas nem certificados.

Qual a diferença entre SHA-1 e SHA-256?

O SHA-1 gera 160 bits (40 caracteres hexadecimais) e tem colisões conhecidas. O SHA-256 gera 256 bits (64 caracteres) e não tem ataques práticos conhecidos, por isso é a escolha atual.

Dá para reverter um SHA-1?

Não. O hash é de via única. O que existe são tabelas de textos comuns já calculados, que descobrem entradas fracas por comparação.

Posso usar SHA-1 para senhas?

Não. Ele é rápido demais e facilita ataques de força bruta. Use bcrypt, scrypt ou Argon2 para senhas.