O que é um algoritmo de hash seguro?
Um algoritmo de hash seguro, também conhecido pelo acrônimo SHA, é um algoritmo de hash considerado criptograficamente seguro. Os dados originais, uma vez codificados por um algoritmo de hash seguro, normalmente não podem ser reconstruídos com uma quantidade viável de poder de computação. Os algoritmos de hash seguro geralmente são usados em combinação com outros algoritmos para autenticar mensagens, incluindo assinaturas digitais.
Alguns roteadores de rede e firewalls implementam algoritmos de hash seguro diretamente em seu hardware. Isso permite que pacotes de dados sejam autenticados com impacto limitado na taxa de transferência. Também existe um software de algoritmo de hash seguro, incluindo muitas implementações de código aberto. O Instituto Nacional de Padrões e Tecnologia dos EUA (NIST) e o Canadian Communications Security Establishment (CSE) executam conjuntamente o Programa de Verificação de Módulo Criptográfico (CMVP). Este programa oficial certifica a operação correta de implementações seguras de algoritmos de hash para aplicativos confidenciais.
O governo dos EUA padronizou pelo menos seis algoritmos de hash seguro. SHA-0 e SHA-1 foram as primeiras encarnações desenvolvidas nos anos 90. A série SHA-2 desenvolvida nos anos 2000 incluía SHA-224, -256, -384 e -512. Eles foram projetados para que dois documentos com conteúdos diferentes geralmente produzam dois conjuntos exclusivos de valores de hash, evitando colisões de hash.
O algoritmo SHA-0, publicado pela primeira vez em 1993 pelo NIST, foi rapidamente interrompido depois que uma fraqueza significativa foi encontrada. Foi substituído pelo SHA-1 em 1995, que inclui uma etapa computacional extra que aborda os problemas não revelados do SHA-0. Ambos os algoritmos hash uma mensagem de até 2 64 -1 bits em um "resumo" de 160 bits. Ambos utilizam um tamanho de bloco de 512 bits e um tamanho de palavra de 32 bits em sua operação.
O SHA-1 é usado em alguns protocolos comuns da Internet e ferramentas de segurança. Isso inclui IPsec, PGP, SSL, S / MIME, SSH e TLS. O SHA-1 também é normalmente usado como parte do esquema de proteção para documentos governamentais não classificados. O setor privado também utiliza esse algoritmo de hash seguro para algumas informações confidenciais. Está programado para ser aposentado do uso do governo geral em 2010.
SHA-224, -256, -384 e -512 foram publicados pelo NIST entre 2001 e 2004. Esses quatro algoritmos, também conhecidos como família SHA-2, geralmente são mais robustos que o SHA-1. O SHA-224 e o SHA-256 utilizam o mesmo bloco, palavra e tamanhos máximos de mensagens de entrada que o SHA-1. Por outro lado, o SHA-224 produz um resumo de 224 bits, enquanto o SHA-256 cria um resumo de 256 bits. SHA-384 e SHA-512 aumentam o tamanho do bloco para 1024 bits, o tamanho da palavra para 64 bits e o comprimento máximo da mensagem de entrada para 2 128 -1 bits. O resumo produzido pelo SHA-384 tem 384 bits, enquanto o resumo do SHA-512 contém 512 bits.
Como o SHA-0 e o SHA-1, a família SHA-2 foi projetada pela Agência de Segurança Nacional dos EUA (NSA). Embora falhas sérias não tenham sido divulgadas publicamente no SHA-2, o NIST abriu uma competição para desenvolver o próximo algoritmo de hash seguro. Esse novo algoritmo, chamado SHA-3, provavelmente será escolhido em 2012 a partir de uma coleção de entradas públicas. Espera-se que seja um novo design, não baseado nos algoritmos existentes.