Paula está desenvolvendo um sistema de chat que garante a veracidade do conteúdo enviado com a utilização de um hash criptográfico para cada mensagem. A certificação digital não será utilizada, sendo adotada uma chave estática para gerar os blocos de hash. Para implementar a funcionalidade, ela deverá usar o algoritmo:
- A)DES;
Errada, porque DES é um algoritmo de cifra simétrica, usado para confidencialidade, e não para gerar hash.
- B)3DES;
Errada, porque 3DES também é cifra simétrica e serve para criptografar dados, não para verificar integridade por hash.
- C)SHA-256;
Certa, porque SHA-256 é uma função hash criptográfica adequada para garantir integridade e veracidade do conteúdo.
- D)AES;
Errada, porque AES é um algoritmo de criptografia simétrica, não uma função de hash.
- E)Base64.
Errada, porque Base64 é apenas uma codificação de dados, sem finalidade criptográfica ou de verificação de integridade.
Gabarito: C
A questão está falando de integridade e verificação de autenticidade do conteúdo por meio de um hash criptográfico. Hash é como uma "impressão digital" da mensagem: se mudar uma vírgula, o resultado muda completamente. Para isso, você precisa de uma função de hash, e não de um algoritmo de criptografia de dados ou de codificação. O ponto-chave é que a banca menciona uma chave estática para gerar os blocos de hash. Isso indica o uso de uma função hash com tamanho fixo de saída, como a família SHA. O SHA-256 é um algoritmo de hash criptográfico amplamente usado para garantir integridade, produzindo um resumo de 256 bits. Ele não serve para embaralhar texto como um cifrador, mas para detectar alteração no conteúdo. Já DES, 3DES e AES são algoritmos de cifra simétrica, usados para confidencialidade, ou seja, esconder o conteúdo. Base64 nem criptografia é: é só uma codificação para transportar dados em formato textual. Então, quando a questão pede veracidade do conteúdo com hash criptográfico, a escolha natural é SHA-256. Em provas, vale guardar a regra de ouro: integridade e verificação de alteração pedem hash; sigilo pede cifra. Em termos de doutrina de segurança da informação, isso é a separação clássica entre confidencialidade e integridade, e a questão explora exatamente essa distinção.