Um dos algoritmos criptográficos mais versáteis é a função de hash criptográfica devido ao seu uso em diversas aplicações de segurança e protocolos da Internet. Na função de hash criptográfica, a propriedade na qual é fácil gerar um código a partir da mensagem, mas é praticamente impossível gerar uma mensagem dado o seu código, é denominada resistência:
- A)à difusão;
Errada, porque difusão é uma ideia ligada a espalhar bits na criptografia simétrica, não a propriedade de reversibilidade de funções hash.
- B)à pré-imagem;
Certa, pois descreve a resistência à pré-imagem: é fácil calcular o hash da mensagem, mas é praticamente impossível recuperar a mensagem a partir do código.
- C)à segunda pré-imagem;
Errada, porque resistência à segunda pré-imagem é impedir que, dada uma mensagem, você encontre outra diferente com o mesmo hash.
- D)à colisão;
Errada, pois resistência à colisão trata de achar duas mensagens distintas que produzam o mesmo valor de hash, e não de inverter o hash.
- E)ao choque.
Errada, porque “choque” não é a nomenclatura técnica usada para essa propriedade em criptografia.
Gabarito: B
Funções hash criptográficas são como uma “impressora” de resumo: você pega uma mensagem qualquer e obtém um código curto e fixo, chamado digest. Elas são usadas em assinaturas digitais, integridade de arquivos, armazenamento de senhas e vários protocolos da Internet. A graça da hash é justamente ser fácil de calcular, mas difícil de “voltar” do resumo para a mensagem original. Essa dificuldade de descobrir a mensagem a partir do código recebe o nome de resistência à pré-imagem. Em outras palavras, dado um valor de hash, você não consegue, na prática, encontrar uma mensagem que gere aquele valor. É isso que protege o sistema contra tentativa de reconstrução do conteúdo original a partir do resumo. A banca FGV gosta de cobrar os nomes das propriedades clássicas da hash: resistência à pré-imagem, resistência à segunda pré-imagem e resistência à colisão. Aqui, o enunciado descreve exatamente a primeira: você gera o código a partir da mensagem sem dificuldade, mas inverter o processo é praticamente inviável. Então, o gabarito B está correto porque define a impossibilidade prática de obter a mensagem original a partir do hash. Não é “colisão”, porque colisão envolve duas mensagens diferentes com o mesmo hash; aqui o foco é recuperar a mensagem a partir do código.