Quando as funções hash são aplicadas a um dado, retornam um...
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
A alternativa correta é a B. Vamos agora explorar o motivo dessa resposta ser a correta e analisar por que as outras estão incorretas.
B - O Message Digest algorithm 5 (MD5) tem pontos fracos que elevam a capacidade de encontrar colisões, ou então diferentes mensagens com o mesmo hash, devendo ser substituído sempre que possível e evitado em novos projetos.
O MD5 é uma função hash amplamente utilizada no passado, mas atualmente é considerada insegura devido à sua vulnerabilidade a colisões. Colisões acontecem quando duas entradas distintas produzem o mesmo hash, o que compromete a integridade dos dados. Por isso, é recomendado evitar o uso de MD5 em novos projetos e substituí-lo por algoritmos de hash mais seguros, como SHA-256.
Análise das alternativas incorretas:
A - O Secure Hash Algorithm 1(SHA-1) processa dados de entrada em blocos de 256 e gera 128 bits, sendo um modo de enviar uma mensagem criptografada.
Esta afirmação é incorreta. O SHA-1 processa dados em blocos de 512 bits e gera um hash de 160 bits, não 128. Além disso, funções hash não são usadas para criptografar dados, mas sim para gerar resumos que garantem a integridade e autenticidade das informações.
C - O Message Digest algorithm 5 (MD5) é uma função hash de 256 bits.
Essa alternativa está incorreta porque o MD5 gera um hash de 128 bits, não 256. A confusão pode ocorrer com SHA-256, que realmente gera hashes de 256 bits.
D - O Salt é uma informação extra que, ao ser inserida na chave de geração do hash, permite que o resultado da função de resumo criptográfico possa retornar à informação inicial.
Esta opção está incorreta. O uso de salt se destina a aumentar a segurança de hashes, adicionando um valor extra e único a cada entrada para prevenir ataques de dicionário ou rainbow tables. No entanto, o salt não permite a recuperação da informação original a partir do hash.
E - Essas funções, que têm diversas aplicações, são especialmente úteis na extração de evidências coletadas em um crime digital, a fim de garantir a cadeia de custódia.
Embora as funções hash sejam úteis para garantir a integridade dos dados em uma cadeia de custódia, o enunciado da questão pede uma análise sobre características e algoritmos específicos (MD5 e SHA-1), tornando esta opção fora do escopo principal da pergunta.
Espero que essa explicação tenha ajudado a esclarecer suas dúvidas sobre funções hash e os algoritmos MD5 e SHA-1. Gostou do comentário? Deixe sua avaliação aqui embaixo!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
O MD5 (Message-Digest algorithm 5) é uma função de dispersão criptográfica de 128 bits unidirecional desenvolvido pela RSA Data Security, muito utilizado por softwares com protocolo ponto-a-ponto na verificação de integridade de arquivos e logins.
Como o MD5 faz apenas uma passagem sobre os dados, se dois prefixos com o mesmo hash forem construídos, um sufixo comum pode ser adicionado a ambos para tornar uma colisão mais provável. Deste modo é possível que duas strings diferentes produzam o mesmo hash. O que não garante que a partir de uma senha codificada em hash específica consiga-se a senha original, mas permite uma possibilidade de descobrir algumas senhas a partir da comparação de um conjunto grande de hash de senhas através do método de comparação de dicionários.
Salting: Para aumentar a segurança em alguns sistemas, usa-se a tática de adicionar um texto fixo no texto original a ser codificado. Deste modo se o sal for "wiki" e a senha for "1234", a pseudo-senha poderá ser "wiki1234" e assim mesmo que alguém tenha o MD5 de 1234 por ser uma senha comum ele não terá de wiki1234. Porém caso o "sal" seja simples como no exemplo e houver o MD5 de "wiki1234" é possível descobrir o sal e deste modo descodificar as senhas mais comuns. Por este motivo geralmente o "sal" é algo complexo.
Fazem parte da família SHA: SHA-0; SHA-1; SHA-2; SHA-3.
SHA-1
Projetado pela Agencia Nacional de Segurança (NSA) dos Estados Unidos é outro padrão publicado pela NIST. Produz um valor de dispersão de 160 bits (20 bytes) conhecido como resumo da mensagem. Um valor de dispersão SHA-1 é normalmente tratado como um número hexadecimal de 40 dígitos. Publicada em 1995, SHA-1 é muito similar à SHA-0, mas altera a especificação de dispersão do SHA original para corrigir as fraquezas alegadas. No entanto, a NSA não forneceu nenhuma explicação mais aprofundada nem identificou exatamente qual era a falha que foi corrigida. O SHA-1 faz parte de várias aplicações e protocolos de segurança amplamente utilizados, incluindo TLS e SSL. O hashing de SHA-1 também é utilizado em sistemas de controle de revisão distribuídos como Git, para identificar revisões, assim como detectar corrupção ou adulteração de dados.
SHA-2 foi publicada em 2001 pelo NIST como um padrão federal dos Estados Unidos (FIPS). A família SHA-2 de algoritmos está patenteada sob uma licença livre de royalties. Apesar de ataques bem sucedidos sobre o SHA-2 nunca terem sido relatados, ele é algoritmicamente similar ao SHA-1. A família SHA-2 é composta por seis funções hash com resumos (valores de hash) que são de 224, 256, 384 ou 512 bits: SHA224, SHA-256, SHA-384, SHA-512, SHA-512/224, SHA512/256.
A letra E seria na fase de "Preservação" e não a fase de "Extração" (corrijam caso esteja errado)
GABARITO B
A) O Secure Hash Algorithm 1(SHA-1) processa dados de entrada em blocos de 256 e gera 128 bits, sendo um modo de enviar uma mensagem criptografada.
- ERRADO: Blocos de 512 bits; Sumário de 160 bits (20 bytes);
B) O Message Digest algorithm 5 (MD5) tem pontos fracos que elevam a capacidade de encontrar colisões, ou então diferentes mensagens com o mesmo hash, devendo ser substituído sempre que possível e evitado em novos projetos.
C) O Message Digest algorithm 5 (MD5) é uma função hash de 256 bits.
- ERRADO: Sumário de 128 bits.
D) O Salt é uma informação extra que, ao ser inserida na chave de geração do hash, permite que o resultado da função de resumo criptográfico possa retornar à informação inicial.
- ERRADO: Um das características da função hash é ser unidirecional. Ou seja, teoricamente, não é possível obter a mensagem clara a partir do resumo criptográfico (hash) gerado.
E) Essas funções, que têm diversas aplicações, são especialmente úteis na extração de evidências coletadas em um crime digital, a fim de garantir a cadeia de custódia.
- ERRADO: Conforme afirmou Filipe Barros, as funções hash são úteis na preservação.
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo