Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

3 
Códigos de Autenticação de Mensagens e Funções Hash 
 
Olá, estudante! 
Nesta semana, vamos discutir acerca dos códigos de Autenticação de Mensagens (MACs) os quais são 
utilizados para garantir a integridade de mensagens enviadas em um canal inseguro. Um dos usos de MACs 
é a HMAC, que utiliza funções de resumo para a geração de códigos de autenticação. Também abordaremos 
as funções de hash criptográficas de modo a garantir que alguma comunicação ou um arquivo não seja 
adulterado por meio de uma verificação dos hashes criados antes e depois da transmissão de dados. Uma 
função de hash criptográfico é conhecida como hash, sendo um algoritmo matemático que transforma 
qualquer bloco de dados em uma série de caracteres. 
Objetivos de aprendizagem 
Ao final dessa semana, você deverá ser capaz de: 
• Compreender as funções de hash, as quais fornecem integridade e os códigos de autenticação de 
mensagens que combinam um hash com uma chave secreta; 
• Entender que um algoritmo MAC recebe como entrada uma chave secreta e uma mensagem de 
tamanho arbitrário para ser autenticado, e dá como saída uma MAC (tag/etiqueta); 
• Compreender que o valor do MAC protege tanto a integridade dos dados da mensagem quanto 
garante autenticidade, o que permite aos que possuem a chave secreta (verificadores) detectar se 
houve mudanças no conteúdo na mensagem. 
 
Orientação de estudos 
Para entender o conteúdo apresentado nesta semana, assista à videoaula do professor, em seguida, faça a 
leitura dos textos-base indicados para reforçar o entendimento do assunto. A seguir assista aos vídeos de 
apoio e leia os textos de apoio para complementar a sua compreensão do assunto abordado na semana. 
Lembre-se de realizar a Atividade Avaliativa desta semana. 
Aproveite a semana e tenha bons estudos! 
 
Revisitando Conhecimentos 
 
Antes de explorarmos o assunto dessa semana, que tal acessar o conteúdo a seguir: 
Macs, Hashs e Assinaturas | Microsoft - Desenvolvimento de Aplicativos 
Link: https://learn.microsoft.com/pt-br/windows/uwp/security/macs-hashes-and-signatures 
 
 
Códigos de autenticação de mensagens e funções Hash 
ROTEIRO 
O que é autenticação de mensagens? 
Requisitos da segurança de mensagens 
Funções de autenticação de mensagens 
Por que autenticação de mensagens? 
https://learn.microsoft.com/pt-br/windows/uwp/security/macs-hashes-and-signatures
Código de autenticação de mensagens 
 
O QUE É AUTENTICAÇÃO DE MENSAGENS? 
A autenticação de mensagem é um mecanismo ou serviço usado para verificar a integridade de uma 
mensagem. 
A autenticação de mensagem garante que os dados recebidos sejam exatamente como enviados (ou seja, 
não contenham modificação, inserção, exclusão ou reprodução) e que a suposta identidade do remetente 
seja válida. 
 
REQUISITOS DA SEGURANÇA DE MENSAGENS 
✔ Divulgação 
✔ Análise de tráfego 
✔ Modificação de conteúdo 
✔ Modificação de sequência 
✔ Modificação de tempo 
✔ Repúdio da fonte 
✔ Repúdio de destino 
 
POR QUE AUTENTICAR MENSAGENS? 
Utilizamos autenticação para: 
➢ proteger a integridade de uma mensagem 
➢ validar a identidade do originador 
➢ não repúdio de origem (resolução de disputas) 
 
 
Trudy pode modificar a mensagem 
 
 
 
 
 
 
Chave compartilhada K para gerar a mensagem autenticada 
É simples. 
Trudy 
M M’ 
Alice Bob 
PROTEGER A INTEGRIDADE COM MAC 
 
 
 
Trudy não pode modificar o 
MAC quando não conhece o K 
 
 
 
 
 
 
 
 
 
 
Chave compartilhada K para gerar a mensagem autenticada 
 
AUTENTICAÇÃO DE MENSAGENS 
 
 
 
 
 
 
 
 
 
 
 
 
 
Trudy 
M 
MAC (k,M) 
 
mac 
 
 
M’ 
MAC?? 
Alice Bob 
K= ? 
MAC=? 
Key: K Key: K 
Apenas Alice e 
Bob conhecem k. 
Um deles envia M. 
Maria 
Alice Bob 
Key: K M 
MAC 
(k,M) 
Key: K 
 
 
 
 
 
 
 
 
 
 
 
INTEGRIDADE COM HASH 
PROTEGER A INTEGRIDADE COM MAC 
 
 
 
Sem chave compartilhada 
 
 
 
 
 
 
 
 
 
Não podemos enviar o hash com a mensagem para servir de autenticação de mensagem, pois Trudy pode 
alterar a mensagem e recalcular o hash. 
O uso de hash precisa de um procedimento mais apropriado para garantir a integridade 
 
FUNÇÕES DE AUTENTICAÇÃO DE MENSAGENS 
Funções Hash 
Uma família de hash é uma tupla (X, Y, K, H), onde: 
Apenas Alice e 
Bob conhecem k. 
Um deles envia M. 
Maria 
Alice Bob 
Key: K M 
MAC 
(k,M) 
Key: K 
Trudy 
M 
 h (M) 
 
mac 
 
 
M’ 
H(M) 
Alice Bob 
Forjar M’ e 
Computar h(M’) 
 
✔ X é um conjunto de mensagens possíveis 
✔ Y é um conjunto finito de possíveis resumos de mensagens 
✔ K é o espaço-chave 
✔ Para cada K∈K, existe uma função hash hk ∈H. 
Cada hk : X →Y 
 
Limitações de Função de Hash 
Exige um canal confiável para transmitir o hash de uma mensagem 
✔ Qualquer um pode calcular o valor de hash de uma mensagem, pois a função de hash é pública 
Como resolver isso? 
✔ Utilizar mais de uma função hash 
✔ Utilizar uma chave 
 
POR QUE AUTENTICAÇÃO DE MENSAGENS? 
A autenticação utiliza a criptografia convencional 
Desta forma, somente o remetente e o destinatário devem compartilhar uma chave 
Na autenticação de mensagem sem criptografia 
✔ Uma etiqueta de autenticação é gerada e anexada a cada mensagem 
Código de autenticação de mensagem 
✔ Calcular o MAC em função da mensagem e da chave 
MAC = F(K, M) 
 
CÓDIGO DE AUTENTICAÇÃO DE MENSAGENS 
MAC é um pequeno código de comprimento fixo gerado usando chave (K) e a mensagem (M) ✔ MAC = C 
(K, M) 
Um código de autenticação de mensagem (MAC) é um algoritmo que requer o uso de uma chave secreta. 
Um MAC recebe uma mensagem de comprimento variável e uma chave secreta como entrada e produz um 
código de autenticação. 
Um destinatário de posse da chave secreta pode gerar um código de autenticação para verificar a 
integridade da mensagem. 
O código gerado não é reversível. 
Um MAC O MAC é anexado à mensagem como uma assinatura. 
No lado do receptor é calculado um novo MAC, que é comparado com o MAC original. 
MAC fornece garantia de que a mensagem é inalterada e vem do remetente. 
Ao contrário da função Hash, pode haver mais de um simples texto que pode gerar o mesmo MAC. 
MAC é uma soma de verificação (checksum) criptográfica 
✔ Condensa uma mensagem de comprimento variável M usando, uma chave secreta K para um 
autenticador de tamanho fixo 
✔ É uma função de muitos para um 
✔ Potencialmente muitas mensagens têm o mesmo MAC 
✔ Porém, encontrar isso é muito muito difícil! 
 
 
 
 
 
MAC e a criptografia podem prover autenticação 
✔ Porque muitas vezes apenas a autenticação é necessária 
● Muitas vezes também é necessário persistir a autenticação por mais tempo em relação à criptografia (por 
exemplo, para manipular um arquivo depois de autenticado em um sistema) 
Utilizamos um MAC baseado em hash porque essas funções são rápidas de calcular 
Códigos de funções hash são amplamente divulgados 
Precisamos de um hash incluindo uma chave junto com a mensagem 
Originalmente o hash não tem chave e isso levou ao desenvolvimento do: 
HMAC 
HMAC 
✔ É um código de autenticação de mensagens baseado em hash 
✔ Desenvolvido por Mihir Bellare, Ran Canetti e Hugo Krawczyk em 1996, e especificado como padrão da 
Internet no RFC2104 
✔ Utiliza a função de hash criptográfica combinada com uma chave secreta 
✔ Utiliza qualquer função hash 
✔ MD5, SHA-1,Whirlpool, HMAC-MD5, HMAC-SHA1 etc. 
✔ Muitas delas utilizadas nos protocolos IPsec e TLS 
Usa duas passagens de computação de hash 
✔ A chave secreta é usada primeiro para derivar duas chaves - interna e externa. 
✔ A primeira passagem do algoritmo produz um hash interno derivado da mensagem e da chave interna 
✔ A segunda passagem produz o código HMAC final derivado do resultado do hash interno e da chave 
externa. Assim, o algoritmo fornece melhor imunidade contra-ataques de extensão decomprimento. 
 
CONCLUSÃO 
Um Hash é usado para garantir a integridade dos dados 
Um MAC garante integridade e autenticação 
Um Hash recebe uma única entrada – uma mensagem e produz um resumo da mensagem 
Um algoritmo MAC recebe duas entradas - uma mensagem, uma chave secreta e produz um MAC 
Um algoritmo HMAC é simplesmente um tipo específico de algoritmo MAC que usa um algoritmo de hash 
internamente para gerar o MAC 
REFERÊNCIAS 
1. https://pt.wikipedia.org/wiki/HMAC#:~:text=O%20HMAC%20usa%20d 
uas%20passagens,mensagem%20e%20da%20chave%20interna 
2. Criptografia e Segurança de Redes: Princípios e Práticas - Willian Stallings 
 
PERGUNTA 1 
Acerca dos códigos de autenticação de mensagens e suas características é correto afirmar que: 
 
o um destinatário de posse da chave secreta não pode gerar um código de autenticação para 
verificar a integridade da mensagem. 
 
o a ordem na qual a sequência de verificação de quadros e as funções de criptografia são 
executadas não é crítica para a autenticação. 
 
o um meio de formar um MAC é combinar uma função hash criptográfica de alguma forma com 
uma chave pública. 
 
o a autenticação de mensagem é um mecanismo ou serviço usado para verificar a integridade de 
uma mensagem. 
 
o o MAC fornece uma assinatura digital porque o remetente e o destinatário compartilham a 
mesma chave. 
A autenticação de mensagens ajudar a proteger as duas entidades que trocam mensagens, embora não proteja 
as duas partes comunicantes uma contra a outra. 
 
PERGUNTA 1 
Questão referente ao Texto-base 1 - Criptografia e Segurança de Redes: princípios e práticas (Capítulo 1) 
| William Stallings 
Técnicas algorítmicas são utilizadas por aplicações para gerar número aleatório. Assinale a alternativa 
que julgar correta: 
 
o PRNG é um algoritmo que é usado para produzir uma sequência de bits muito pequena. 
 
o Os algoritmos são determinísticos, produzindo sequências de números que não são 
estatisticamente aleatórios. 
 
o Os algoritmos não podem ser determinísticos. 
 
o Um gerador de número aleatório verdadeiro não usa uma fonte conhecida como fonte de 
entropia. 
 
o Um gerador de número aleatório toma como entrada um valor fixo chamado de semente. 
Você acertou!!! Esta é a alternativa correta!!! 
Para gerar números verdadeiramente aleatórios é preciso utilizar sistemas medições de processos não-
determinísticos, de modo que tais medições sejam possíveis de serem repetidas. Se o algoritmo realmente for 
bom, as sequências resultantes vão passar por muitos testes de aleatoriedade, produzindo números que são 
chamados de números pseudoaleatórios. 
 
PERGUNTA 2 
Questão referente ao Texto-base 2 - Criptografia e Segurança de Redes: Princípios e Práticas (Seção 11.1 a 
11.5) | Willian Stallings 
O MAC, que é um código de autenticação de mensagens, apresenta como característica: 
 
o É conhecida como uma função de hash não chaveada. 
 
o Uma função da mensagem e uma chave secreta que produz um valor de tamanho variável. 
 
o A segurança de uma função MAC baseada em uma função de hash depende da força 
criptográfica da função hash. 
 
o O algoritmo criptográfico mais seguro que usa uma função de hash. 
 
o Um mecanismo usado para garantir a disponibilidade dos dados. 
O código MAC é conhecido como função de hash chaveada, sendo utilizado para garantir a integridade dos 
dados. 
 
Aprofundando o tema 
• Criptografia - Hashes | Bóson Treinamentos 
• Funções Hash e Criptografia | Programando com Nilo Menezes 
• Texto de apoio: Códigos de Autenticação de Mensagem e o padrão SHA-3 
• Aproveite para aprofundar seus conhecimentos acessando os materiais 
complementares indicados e aproveite para compartilhar neste fórum links para 
outros materiais importantes sobre o assunto. 
 
https://ava.univesp.br/bbcswebdav/pid-1581163-dt-content-rid-18594871_1/courses/COM440-2024S2B1-T001/COM440/S3-aprofundando.html#tab-1
https://ava.univesp.br/bbcswebdav/pid-1581163-dt-content-rid-18594871_1/courses/COM440-2024S2B1-T001/COM440/S3-aprofundando.html#tab-2
https://ava.univesp.br/bbcswebdav/pid-1581163-dt-content-rid-18594871_1/courses/COM440-2024S2B1-T001/COM440/pdf/semana3_almada-codigos-2014.pdf
ATIVIDADES PRÁTICAS 
Agora é hora de colocar em prática os conhecimentos adquiridos. Esta é uma atividade 
complementar para que você possa expandir seu aprendizado. 
Utilize os simuladores destacados, a seguir, para testar a geração de hashes a partir de 
strings, utilizando diversos algoritmos. 
 
SHA-256 hash calculator 
MD5 hash calculator 
Hash Calculator Online 
 
Semana 3 - Fórum Temático - Hashes criptográficos 
 
No contexto da segurança em sistemas de votação, discuta com seus colegas a importância de hashes 
criptográficos no sistema de votação da urna eletrônica brasileira. Para isso, acesse o 
link: https://www.tse.jus.br/eleicoes/urna-eletronica/seguranca-da-urna/hash 
 
 
ATIVIDADE AVALIATIVA 
PERGUNTA 1 
Funções de hash podem ser usadas para ______ e também para ______. Outra aplicação importante, similar à 
aplicação de autenticação de mensagem é a ______. No caso da assinatura digital, o valor do ______ da 
mensagem é encriptado com a chave ______ do usuário. 
 
A alternativa que melhor preenche as lacunas é: 
 
o detecção de intrusão, vírus, criptografia assimética, hash, pública. 
 
o detecção de intrusão, vírus, criptografia privada, código, pública. 
 
o detecção de intrusão, vírus, assinatura digital, hash, privada. 
 
o detecção de intrusão, vírus, assinatura digital, código, privada. 
 
o detecção de intrusão, vírus, criptografia pública, hash, pública. 
 
PERGUNTA 2 
A autenticação de mensagens possibilita a análise da integridade delas, a fim de garantir a identificação do 
emissor e o recebimento dos dados da mesma forma como foram enviados (sem modificação, inserção, 
exclusão ou reprodução). 
Assinale a alternativa que apresenta corretamente o uso da autenticação de mensagens. 
 
o a. Combinar cada um dos bits do texto com um fluxo de bits pseudoaleatórios. 
https://xorbin.com/tools/sha256-hash-calculator
https://xorbin.com/tools/md5-hash-calculator
https://www.pelock.com/products/hash-calculator
https://www.tse.jus.br/eleicoes/urna-eletronica/seguranca-da-urna/hash
 
o b. Quebrar as mensagens de forma que fiquem em blocos do mesmo tamanho. 
 
o c. Garantir que o emissor não negue a geração e a assinatura do documento. 
 
o d. Fazer o uso da mesma chave nas duas partes que se comunicam. 
 
o e. Trabalhar com os princípios de substituição e permutação. 
 
PERGUNTA 3 
O HMAC é um tipo específico de código de autenticação de mensagem que envolve uma função hash 
criptográfica e uma chave criptográfica secreta. Acerca do projeto HMAC, julgue as afirmações a seguir: 
I. Dentre os objetivos do projeto HMAC podemos listar o uso e tratamento das chaves de uma 
forma mais simples e usar sem modificações, as funções de hash disponíveis, em particular 
cujos códigos sejam disponíveis e de forma gratuita. 
II. A segurança de qualquer função MAC baseada em uma função de hash não depende da força 
criptográfica da função hash. É incomum um ataque de força bruta contra HMACs. 
III. A força criptográfica do HMAC depende do tamanho da chave secreta utilizada. 
IV. O HMAC utiliza duas passagens de computação de hash. Primeiro a chave secreta é utilizada 
para derivar duas chaves (uma interna e outra externa). A primeira passagem produz um hash 
interno derivado da mensagem e da chave interna. A segunda passagem produz o código HMAC 
final que deriva do resultado do hash interno e da chave externa. 
 
Das afirmações listadas acima, as que estão corretas são: 
 
o apenas II e IV. 
 
o apenas I e II. 
 
o apenas I, III e IV. 
 
o apenas II e III. 
 
o apenas I e III. 
 
PERGUNTA 4 
Os ataques de força bruta são uma técnica comum de invasão em sistemas de segurança, que 
envolve a tentativa de todas as combinações possíveisde uma senha ou chave de criptografia, até 
que uma correspondência seja encontrada. As funções de hash criptográficas são frequentemente 
utilizadas para proteger senhas, chaves e outros dados confidenciais. No entanto, essas funções 
também são vulneráveis a ataques de força bruta. Embora as funções de hash criptográficas 
tenham sido projetadas para serem computacionalmente difíceis de inverter, é possível usar 
ataques de força bruta para adivinhar a senha ou chave original, testando sistematicamente todas 
as possíveis combinações, até que uma correspondência seja identificada. 
 
 
Com base nesses aspectos, assinale a alternativa que descreve os motivos pelos quais as 
funções de hash criptográficas são vulneráveis a ataques de força bruta. 
o a. Logo, os algoritmos de funções de hash criptográficas não são projetados para a 
proteção contra ataques de força bruta. 
o b. As funções de hash são projetadas para serem computacionalmente fáceis de 
inverter após serem criptografadas. 
o c. Fundamentalmente, os ataques de força bruta podem contornar a autenticação do 
usuário nas funções hash. 
o d. Com efeito, os ataques de força bruta podem testar sistematicamente todas as 
possíveis combinações de entrada até identificar uma correspondência. 
o e. Todas as senhas e as chaves protegidas por funções de hash criptográficas são 
geralmente curtas e fáceis de adivinhar. 
 
PERGUNTA 5 
O TRNG e o PRNG englobam dois tipos de algoritmos tipo RNG (Random Number Generator) que produzem 
números aleatórios, agrupando-os em números com distintos tipos de entradas imprevisíveis, cuja sequência 
gerada dificilmente se repete nas solicitações ao algoritmo RNG. Isso se deve à saída de um RNG que se baseia 
em uma entrada que constantemente muda (variável e imprevisível). Portanto, são números não repetíveis. 
Considerando as informações apresentadas, analise as afirmativas a seguir e assinale (V) para a(s) 
Verdadeira(s) e (F) para a(s) Falsa(s). 
 
I. ( ) OS PRNGs são geradores de números pseudoaleatórios que produzem sequências que seguem 
uma distribuição uniforme e baseada em uma expressão matemática. 
II. ( ) Uma das condições necessárias para que um PRNG seja adequado para realizar uma criptografia é 
que ele gere saídas que contenham 1s e 0s em quantidades similares. 
III. ( ) Os PRNGs são verdadeiros geradores de números aleatórios, cujo funcionamento é mais indicado 
para funções sensíveis de segurança, como a criptografia. 
IV. ( ) Os TRNGs se adequam à grande parte das aplicações, porém são focos de ataques à segurança 
criptográfica. Para resolver a problemática, usam-se os TRNGs. 
 
Assinale a alternativa que apresenta a sequência correta. 
 
o a. F - V - V - F 
 
o b. F - F - F - V. 
 
o c. V - V - F - F. 
 
o d. V - F - F - V. 
 
o e. V - F - F - F. 
 
PERGUNTA 6 
O Secure Hash Algorithm (SHA) é uma família de algoritmos criptográficos utilizados para gerar 
resumos criptográficos de mensagens ou dados digitais. O objetivo principal do SHA é produzir um 
valor hash ou resumo criptográfico que seja peculiar e possa ser usado para verificar a integridade 
dos dados. Os valores gerados pelo SHA são geralmente representados como uma sequência de 
dígitos hexadecimais. O SHA é amplamente empregado em sistemas de segurança da informação, 
como assinatura digital, autenticação de mensagens, verificação de arquivos e senhas de usuários. 
Existem diferentes variantes do SHA, como SHA-1, SHA-2 e SHA-3, com diferentes tamanhos de 
chave e complexidades de cálculo para adequar a diferentes requisitos de segurança. 
 
 
Nesse sentido, assinale a alternativa correta sobre o SHA-512. 
o a. Técnica de criptografia simétrica utilizada para criptografar dados confidenciais. 
 
o b. Algoritmo de criptografia de chave pública utilizado em todo o mundo. 
 
o c. Função de hash criptográfica que produz um valor de hash de 512 bits. 
 
o d. Técnica de engenharia social usada para obter informações confidenciais. 
 
o e. Técnica de criptoanálise empregada para quebrar senhas e chaves de criptografia. 
 
PERGUNTA 7 
Qualquer mecanismo de autenticação de mensagem ou assinatura digital possui dois níveis de funcionalidade 
(nível mais alto e nível mais baixo). Acerca das classes dos tipos de funções que podem ser usadas para 
produzir um autenticador, julgue as afirmações a seguir: 
I. O MAC é uma função da mensagem e uma chave secreta que produz um valor de tamanho fixo, 
que serve como autenticador. 
II. A função de hash relaciona uma mensagem de tamanho qualquer a um valor de hash de 
tamanho variável, que serve como autenticador. 
III. A função de nível mais alto é usada como uma primitiva em um protocolo de autenticação de 
nível mais baixo. 
IV. Encriptação da mensagem: o texto cifrado da mensagem inteira serve como seu autenticador. 
 
Das afirmativas listadas acima, estão corretas: 
 
 
o apenas II e IV. 
 
o apenas I e III. 
 
o apenas I e IV. 
 
o apenas II e III. 
 
o apenas I e II.

Mais conteúdos dessa disciplina