GBC083 - Segurança da Informação - 2º Sem. de 2016

Datas importantes

  • 05/10/2016 - Prova 1 - valendo 35 pontos
  • 13/12/2016 - Prova 2 - valendo 45 pontos
  • 16/12/2016 - Prova de Recuperação
  • 14/12/2016 - Apresentação de Trabalhos (10 pontos)
  • Sobre a disciplina

  • Sala de aula: Bloco 5RA - Sala 203
  • Plano da disciplina
  • Ficha da disciplina (Curso: Ciência da Computação)
  • Livro texto: Criptografia e segurança de redes: princípios e práticas - Stallings, William.
  • Livro complementar: Introduction to Modern Cryptography - Katz,Lindell (2a. edição) ,2014
  • Livro complementar: Cryptography Engineering - design principles and practical applications - T.Kohno, N.Ferguson e B.Schneier (2010)
  • Notas

  • Notas finais - com recuperação
  • Exercícios

    Listas de exercícios

    Parte 2

  • Lista de exercícios 10 - Distribuição de chaves
  • Lista de exercícios F - Assinaturas digitais
  • Lista de exercícios E - Curvas Elípticas
  • Lista de exercícios D - Diffie-Hellman
  • Lista de exercícios C - RSA
  • Lista de exercícios B - Teoria de números
  • Lista de exercícios A - MAC
  • Lista de exercícios 9 - Hash
  • Parte 1

  • Lista de exercícios 8 - AES
  • Lista de exercícios 7 - DES
  • Lista de exercícios 6 - CPA
  • Lista de exercícios 5 - Modos de operação
  • Lista de exercícios 4 - Funções aleatórias
  • Lista de exercícios 3 - Números aleatórios
  • Lista de exercícios 2 - Sigilo perfeito (aulas 3 a 5)
  • Lista de exercícios 1 - Criptografia clássica (aula 2)
  • Lista de exercícios 0 - Conceitos (aula 1)
  • Exercícios práticos

  • 3 - Faça um ataque ao texto cifrado pelo esquema One-Time Pad que foi usado 7 vezes em mensagens originais distintas com a mesma chave. Textos podem incluir letras maiúsculas e minúsculas e caracteres de pontuação. Entrega até 06/09/2016.
  • 2 - Faça um ataque neste texto que foi cifrado com Vigenere.java. O texto está em português sem caracteres não-ascii (ãéçôê ... ) e contém a palavra "seguranca". Entrega até 23/08/2016
  • Para encriptar:
    java Vigenere enc textoEmClaro.txt < chave.txt > textoCifrado.txt 
  • Para decriptar:
    java Vigenere dec textoCifrado.txt < chave.txt > textoEmClaro.txt 
  • 1 - Escrever programa para encriptar e decriptar usando a cifra de Vigenère. Entrega até 16/08/2016
  • Aulas

  • Aula 1. 09/08/2016 - Introdução à Segurança da Informação: Panorama
  • Leitura obrigatória: Capítulo 1 do livro texto (Introdução)
  • Livro: The Codebreakers, David Kahn (história da Criptografia)
  • Livro: Codes, Ciphers and Secret Writing, Martin Gardner (Códigos e criptografia antiga)
  • Palestra: NSA TOA Chief on Disrupting Nation State Hackers
  • Documentário: Crypto Wars - NHK Documentary 1997
  • Palestra: Crypto Wars Part II
  • Filme: Citizenfour - Edward Snowden
  • Aula 2. 10/08/2016 - Introdução à Criptografia - histórico da criptografia clássica e moderna
  • Leitura obrigatória: Capítulo 2 do livro texto (Técnicas clássicas)
  • Aula 3. 16/08/2016 - Sistemas criptográficos tradicionais: Ataque à cifra de Vigenère
  • Aula 4. 17/08/2016 - Sistemas criptográficos tradicionais: modelo de sigilo perfeito
  • Aula 5. 23/08/2016 - Sistemas criptográficos tradicionais: cifra de Vernam (One-time Pad)
  • Aula 6. 24/08/2016 - Sigilo Computacional
  • Aula 7. 30/08/2016 - Pseudo Aleatoriedade
  • Leitura obrigatória: Capítulo 7 do livro texto (Geração de números pseudo-aleatórios)
  • Aula 8. 06/09/2016 - Pseudo OTP
  • Aula 9. 13/09/2016 - Primitivas de segurança: funções e permutações aleatórias
  • Leitura obrigatória: Capítulo 3 do livro texto (Cifras de blocos)
  • Filme: Midway (1976)
  • Aula 10. 14/09/2016 - Modelos de ataque: CPA e modos de operação de cifras de bloco
  • Leitura obrigatória: Capítulo 6 do livro texto (Modos de operação)
  • Testar Imagem.java e tux.pnm
  • Aula 11. 20/09/2016 - Cifras de bloco
  • Aula 12. 21/09/2016 - CPA e modos de operação
  • Aula 13. 27/09/2016 - Ataque de texto cifrado escolhido: Oráculo de Padding
  • Aula 14. 28/09/2016 - DES
  • Leitura obrigatória: Capítulo 3 do livro texto (DES)
  • Aula 15. 04/10/2016 - Ataque contra DES e Advanced Encryption Standard (AES) - S-Box
  • Leitura obrigatória: Capítulo 5 do livro texto (AES)
  • Leitura obrigatória: Capítulo 4 do livro texto (Conceitos de Teoria dos números)
  • Aula 16. 05/10/2016 - Prova 1
  • Aula 17. 11/10/2016 - Integridade: Message Authentication Codes
  • Leitura obrigatória: Capítulo 12 do livro texto (MACs)
  • Aula 18. 18/10/2016 - Integridade: Hash e MAC
  • Leitura obrigatória: Capítulo 11 do livro texto (Funções Hash criptográficas)
  • Aula 19. 19/10/2016 - Integridade: Algoritmos de Message Digesting (Hashes)
  • Aula 20. 25/10/2016 - Integra UFU
  • Aula 21. 26/10/2016 - Vem pra UFU
  • Aula 22 a 25. 01/11/2016, 08/11/2016, 09/11/2016 e 16/11/2016 - Criptografia assimétrica: RSA
  • Leitura obrigatória: Capítulo 8 do livro texto (Mais sobre teoria dos números)
  • Leitura obrigatória: Capítulo 9 do livro texto (RSA)
  • Livro: crypto - How the Code Rebels Beat the Government, Steven Levy (como criptografia assimétrica foi inventada)
  • Palestra Logjam: Diffie-Hellman, discrete logs, the NSA, and you
  • Aula 26. 22/11/2016 - Problemas log-discreto: Esquema de Diffie-Hellman-Merkle
  • Leitura obrigatória: Capítulo 10 do livro texto (D-H-M, Elgamal e outros)
  • Aula 27. 23/11/2016 - Encriptação Elgamal
  • Aula 28. 29/11/2016 - Curvas elípticas
  • Aulas 29 e 30. 06/12/2016 - Curvas elípticas e Autenticação e não-repudiação: assinaturas eletrônicas
  • Leitura obrigatória: Capítulo 13 do livro texto (Assinaturas)
  • Aula 31. 07/12/2016 - Infraestrutura de chave-pública e certificados
  • Leitura obrigatória: Capítulo 14 do livro texto (Distribuição e Gerenciamento de chaves)
  • Leitura obrigatória: Capítulo 15 do livro texto (Autenticação de usuários)
  • Aula 32. 13/12/2016 - Prova 2
  • Aula 33. 14/12/2016 - Apresentação de trabalhos
  • Leitura obrigatória: Capítulo 17 do livro texto (Segurança na camada de transporte)
  • Leitura obrigatória: Capítulo 20 do livro texto (Segurança na camada de rede)
  • Palestra: Some tales from TLS
  • Palestra: Quantum Cryptography
  • Palestra: The Magic World of Searchable Symmetric Encryption
  • Aula 34. 16/12/2016 - 13h30 - Prova de Recuperação
  • Outras informações pseudo-aleatórias

  • 21/02/2017 - The Cryptographers’ Panel - 2017
  • Dear Software Vendors: Please Stop Trying to Intercept Your Customers’ Encrypted Traffic
  • Antivírus Kaspersky faz ataque MITM nos computadores em que é instalado
  • Esteganografia na prática
  • Caso entre Alice e Bob (xkcd)
  • Limitantes para o problema (paradoxo) do aniversário: A (probably) exact solution to the Birthday Problem
  • Livro: Crypto 101 (criptografia simplificada)
  • Guia do Homem-Palito para o DES e o AES
  • Alice, Bob e outros personagens da criptografia
  • Painel com Diffie, Hellman, Shamir e Rivest
  • Crypto++ Library
  • Botan: Crypto and TLS for C++11
  • Como instalar backdoors em protocolos baseados em Diffie-Hellman
  • Heartbeat: um erro de implementação no OpenSSL que permite acesso a chaves privadas
  • Entrevista de Hellman sobre criptografia na sua premiação no Turing Award
  • Palestra de Diffie sobre criptografia
  • Noites criptônicas
  • Arquivos para testar modos de operação CBC vs ECB Imagem.java e tux.pnm
  • Criptografia com Curvas elípticas no WhatsApp
  • O "Guinness book" dos números primos
  • Números primos de Mersenne
  • Testando candidatos a primos
  • Criptografia na arte: gritomudonomuro
  • MD5 to be considered harmful someday
  • Collisions on MD5 (como encontrar colisões MD5 rapidamente)