← Questões de Segurança da Informação

Segurança da Informação · FGV · 2023

Questão comentada de Segurança da Informação

O analista Edson desenvolveu o aplicativo TribunalSeguro. Desenvolvido em Java 8, o TribunalSeguro envia e recebe mensagens por meios digitais não confiáveis. Com o intuito de reforçar a segurança, antes de enviar uma mensagem, o aplicativo solicita ao usuário uma chave secreta para ser aplicada no cálculo da integridade da mensagem. Ao receber a mensagem, o usuário de destino deve informar a chave secreta compartilhada pelo usuário de origem, a fim de proceder com a verificação da integridade. Sendo assim, Edson recorreu à classe do pacote javax.crypto que provê, de forma específica, a funcionalidade de cálculo e verificação de integridade com o uso de chave secreta. Edson recorreu à classe do javax.crypto:

Gabarito: A

Quando um aplicativo precisa garantir a integridade de uma mensagem usando uma chave secreta compartilhada, ele está falando de MAC, isto é, Message Authentication Code. A ideia é simples: quem envia calcula um código a partir da mensagem + chave secreta; quem recebe refaz o cálculo com a mesma chave e compara os resultados. Se bater, a mensagem não foi alterada e a origem é considerada confiável dentro desse modelo. No Java 8, a classe do pacote javax.crypto que trata exatamente desse mecanismo é a Mac. Ela foi feita para gerar e verificar código de autenticação de mensagem com chave simétrica, como HmacSHA256, HmacSHA1 e outros algoritmos do tipo HMAC. Ou seja, aqui não estamos falando de criptografar o conteúdo, mas de conferir se ele chegou intacto. Por isso, o gabarito é a letra A. A FGV gosta muito de separar os conceitos: Cipher é para criptografia e descriptografia, KeyGenerator cria chaves, KeyAgreement faz acordo de chaves, e SealedObject serve para encapsular objetos serializáveis com criptografia. Já a Mac é a ferramenta direta para integridade com chave secreta. Resumo de prova: se o enunciado falar em integridade + chave secreta compartilhada + verificação no destino, pense em MAC/HMAC. Se falar em sigilo do conteúdo, aí a conversa muda para criptografia com Cipher.

Continue treinando

Questões relacionadas