O SHA-1 produz um resumo determinístico de 160 bits, normalmente escrito com 40 caracteres hexadecimais. Ele foi muito usado para integridade de arquivos, assinaturas e armazenamento de senhas, mas colisões práticas fazem com que não deva ser escolhido para novas aplicações de segurança.
O gerador calcula o hash dos bytes exatos da entrada. Depois, a busca compara cada resumo com nosso conjunto multihash. Ela pode recuperar um texto simples já indexado, inclusive valores de nossa própria pesquisa, mas não reconstruir texto arbitrário a partir do resumo.
O resumo SHA-1 de hello é aa f4 c6 1d dc c5 e8 a2 da be de 0f 3b 48 2c d9 ae a9 43 4d sem espaços. Hello, hello e hello\n produzem resultados diferentes.
A ausência de correspondência significa apenas que o texto simples não está no conjunto consultado. Hashes com salt, sequências aleatórias, entradas longas e codificações incomuns têm menor chance de coincidir. Para vários resumos, a API oferece busca em lote no mesmo banco lógico.
Não use SHA-1 em novas assinaturas, certificados ou projetos de segurança. Senhas devem usar Argon2id, scrypt ou bcrypt com um salt exclusivo. Adicionar salt ao SHA-1 bloqueia tabelas pré-calculadas, mas não corrige sua velocidade excessiva contra tentativas offline.
Esses exemplos calculam exatamente o hash do texto “hello” sem quebra de linha ao final. Um espaço ou uma quebra de linha alteraria o resumo.
printf %s 'hello' | sha1sumecho hash('sha1', 'hello');const bytes = new TextEncoder().encode('hello');
const digest = await crypto.subtle.digest('SHA-1', bytes);O SHA-1 é mais longo que o MD5, mas não é mais resistente a colisões. SHA-256 e SHA-512 pertencem à família SHA-2 e continuam adequados para integridade quando usados corretamente, embora também não sejam funções de armazenamento de senhas.
O SHA-1 produz 160 bits, ou 20 bytes e 40 caracteres hexadecimais.
Não. O Md5Decrypt busca em seu conjunto uma correspondência já calculada; ele não reverte matematicamente o SHA-1.
Colisões práticas mostram que conteúdos diferentes podem ser construídos com o mesmo resumo, invalidando o uso moderno para integridade contra atacantes e assinaturas.
Um salt impede tabelas pré-calculadas, mas o SHA-1 continua rápido demais. Use uma KDF de senha configurável, como Argon2id, scrypt ou bcrypt.
O texto simples pode estar ausente, ter salt, ser longo ou aleatório, ou ter sido codificado de forma diferente da esperada.
A busca compara resumos SHA-1 exatos com o banco de dados. O verificador de arquivos é útil para checar integridade, mas o SHA-1 não é mais adequado para assinaturas modernas nem armazenamento de senhas.
Colisões práticas foram demonstradas. Ele não deve mais proteger assinaturas, certificados ou novos sistemas.
Ele calcula o resumo de um arquivo para compará-lo com um valor publicado. Essa verificação é separada de uma busca no banco de dados.
O banco de dados só pode retornar texto já indexado que corresponda exatamente ao resumo.
Esses comandos calculam o hash dos cinco bytes UTF-8 de “hello”, sem adicionar uma quebra de linha ao final.
printf %s "hello" | sha1sumhash('sha1', 'hello');const bytes = new TextEncoder().encode('hello');
const digest = await crypto.subtle.digest('SHA-1', bytes);