Considere as situações simplificadas abaixo (|| indica...
Imagem de fundo

Considere as situações simplificadas abaixo (|| indica...

Considere as situações simplificadas abaixo (|| indica concatenação).


Algoritmo 1: utiliza uma função hash com poucos bits sobre o bloco de dados que será enviado e uma chave secreta que é compartilhada. O bloco de dados e o hash é enviado ao receptor. O receptor anexa a mesma chave secreta compartilhada ao bloco de dados e calcula a mesma função hash. Mas ocorre colisão na função hash e duas mensagens diferentes resultam como iguais... alguém explora essa vulnerabilidade e modifica os dados, mesmo sem saber a chave, e os entrega ao receptor, que os recebe achando serem os legítimos. Funciona assim:

H(chave || dados1) = H(chave || dados2)


Algoritmo 2: funções hash mais avançadas são utilizadas e novos critérios de segurança são adicionados. Isso resulta que nenhum ataque conhecido permite que um invasor modifique os dados e tenha o mesmo valor sem conhecer os valores das chave1 e chave2 (pública e secreta). Funciona assim: HNovo =

H(chave1 || H(chave2 || dados))


As situações que envolvem os algoritmos 1 e 2 correspondem, correta e respectivamente, a


A

TLS/MAC – SSL/HMAC.


B

SSL/MD5 – SSL/SHA-1.


C

HTTPS – HTTP.


D

SSL/MAC – TLS/HMAC.


E

TLS/HTTP – TLS/HTTPS.