Categoria
Hashing e cripto
Todas as ferramentas e artigos desta categoria, reunidos em um só lugar.
Ferramentas
Gerador de hash (SHA-1/256/384/512)
Calcule resumos SHA-1, SHA-256, SHA-384 e SHA-512 de qualquer texto, mostrados em hex e Base64, usando o Web Crypto nativo do navegador. Roda inteiramente no seu navegador.
Gerador de HMAC (SHA-256/384/512)
Calcule um HMAC com chave sobre uma mensagem usando sua chave secreta, mostrado em hex e Base64, via o Web Crypto nativo do navegador. A mesma construção que o verificador de JWT usa para HS256. Sua chave nunca sai do seu navegador.
Localizador de Pré-imagem de Hash
Veja uma busca local por força bruta, limitada, recuperar em segundos a entrada de um hash fraco — ou esgotar o espaço de chaves diante de qualquer coisa com entropia real. Sem wordlist, sem tabela, apenas o seu navegador. Uma demonstração de por que hashes rápidos e sem sal falham.
Artigos
Hash, criptografia e codificação: três coisas diferentes
Três operações constantemente confundidas, separadas de forma limpa por duas perguntas: é reversível e precisa de uma chave?
LerHash criptográfico: SHA-256 e a família SHA-2
O que uma função de hash garante, as propriedades que a tornam criptográfica e por que um resumo não é criptografia.
LerEscolhendo um hash: MD5, SHA-1, SHA-2, SHA-3 e BLAKE
Quais funções de hash ainda são seguras, quais estão quebradas, quais são seus tamanhos de saída e como escolher a certa.
LerColisões, resistência à pré-imagem e o limite do aniversário
As três propriedades de segurança que um hash criptográfico deve ter, por que colisões importam e a matemática do aniversário que define a força real.
LerArmazenando senhas: bcrypt, scrypt e Argon2
Por que um hash rápido como o SHA-256 é a ferramenta errada para senhas, e o que o sal e os fatores de trabalho de fato fazem.
LerHMAC: hash com chave para autenticação de mensagens
Por que um hash simples prova integridade mas não autenticidade, como uma chave secreta resolve isso e por que a estrutura do HMAC importa.
LerPor que HMAC, e não hash(chave + mensagem)
O ataque de extensão de comprimento que quebra o hashing com chave ingênuo, e a construção aninhada que o HMAC usa para derrotá-lo.
LerAutenticando requisições de API com HMAC
Como um segredo compartilhado e um hash permitem que um servidor confie em uma requisição que não viu ser feita, e como a proteção contra repetição se encaixa.
LerVerificando um HMAC com segurança: tempo constante e repetição
Por que comparar assinaturas com == vaza um canal lateral de tempo, e por que uma assinatura válida sozinha não impede uma requisição repetida.
LerPor Que Hashes Criptográficos São de Mão Única
Um hash criptográfico mapeia qualquer entrada para um resumo de tamanho fixo e é projetado para que recuperar a entrada a partir do resumo seja inviável. Essa propriedade, resistência à pré-imagem, é o motivo pelo qual você não pode descriptografar um hash. Só há duas formas de revertê-lo: consultar uma tabela ou tentar e verificar — ambas são busca, não inversão.
LerForça Bruta vs Tabelas de Consulta: Duas Formas de Reverter um Hash
Como um hash não pode ser invertido, revertê-lo significa buscar, e há duas famílias. Pré-computar uma tabela gigante de pares entrada-para-hash e consultar o resumo (o que o CrackStation faz), ou gerar candidatos em tempo real e aplicar hash em cada um até um coincidir (força bruta). Elas trocam armazenamento por processamento em direções opostas.
LerPor Que o Salt Derrota Tabelas Pré-computadas
Um salt é um valor aleatório único armazenado com cada hash de senha e misturado antes de aplicar o hash. Ele faz senhas idênticas gerarem hashes diferentes, o que destrói a economia das tabelas pré-computadas: um atacante precisaria de uma tabela separada para cada salt. O salt é a defesa específica que neutraliza serviços de consulta e tabelas rainbow.
LerKDFs Lentas: bcrypt, scrypt e Argon2
O salt derrota a pré-computação, mas não um ataque direcionado de tentar e verificar; um hash rápido ainda permite bilhões de candidatos por segundo. Funções de derivação de chave lentas resolvem isso tornando cada tentativa deliberadamente cara e ajustável, cortando a taxa do atacante em muitas ordens de grandeza. É com elas que você deve armazenar senhas.
LerEspaço de Chaves, Entropia e Tempo de Quebra
Se a força bruta pode reverter um hash se resume ao tamanho do espaço de chaves versus a taxa de hash do atacante. O espaço de chaves cresce exponencialmente com comprimento e alfabeto, então alguns caracteres a mais levam um segredo de quebrado em segundos a inviável por milênios. É a aritmética por trás de por que comprimento e aleatoriedade importam mais.
LerEscolhendo um Hash de Senha
Armazenar senhas com segurança é um problema resolvido: use um hash de senha dedicado, com sal e lento, não um resumo cru. Este é um guia curto de decisão, do algoritmo a escolher aos parâmetros a definir e aos erros a evitar, alinhado às diretrizes da OWASP e do NIST.
Ler