Planeamento
Aulas
Apresentação e Início do Estudo dos Algoritmos de Criptografia
Introdução à cadeira: objectivos, programa, bibliografia e avaliação. Princípios basilares na construção de algoritmos de cifra de blocos; Hipótese de Kerchhoff; Discussão sobre o tamanho de uma chave simétrica e do bloco; Estrutura de Feistel; Estudo breve do DES e AES; Estudo breve de modos de cifra; Algoritmos de cifra de corrente (Stream Cipher): características relevantes; Algoritmos baseados em LFSR, e o Chacha20; Geração de números aleatórios seguros: propriedades e exemplos de soluções; |
Algoritmos de Criptografia e Hashing
Princípios de criptografia assimétrica (ou de chave pública); Discussão sobre o tamanho de uma chave pública; Estudo do RSA, incluindo aspectos da sua concretização e alguns ataques; Algoritmos baseados em logaritmos discretos, o Diffie-Hellman e o Elgammal; Introdução à criptografia com curva elíptica; Funções de hash e suas propriedades, o ataque de aniversário, a construção de Merkle-Damgard e um estudo breve do SHA2 e SHA3; Códigos de autenticação de mensagens (MAC): principais soluções e considerações de segurança, algoritmos HMAC e CMAC; Autenticação e Cifra: principais soluções e algoritmo CCM |
Autenticação e Troca de Chaves
Protocolos e mecanismos avançados para a autenticação distribuída; Autenticação através passwords e suas limitações; Exemplos de algoritmos de passwords fortes (e.g., EKE); Análise de um conjunto de propriedades interessantes a assegurar por um protocolo de autenticação, e exemplos de soluções: Perfect Forward Secrecy, resistência a ataques de DoS, dificultar a divulgação da identidade, re-aproveitar parâmetros, e computação em paralelo |
Autenticação e Troca de Chaves
Caso de uso Kerberos V5; Problemas e deficiências técnicas da V4 que resultaram na V5; Estudo detalhado do protocolo de autenticação da V5; Delegação de direitos; Tempos de vida dos tickets; Autenticação entre realms; |
Segurança ao Nível da Ligação de Dados: Bluetooth
Estudo detalhado dos mecanismos de segurança do protocolo Bluetooth (versão “v2.1 + EDR” e posteriores; e o LE), como forma de entender como se pode tornar segura a interação de dispositivos com recursos (potencialmente) muito limitados em redes sem fios de curta distância;
Frequência
Realização da 1ª Frequência
Segurança ao Nível da Ligação de Dados: WiFi
Estudo dos aspectos de segurança do protocolo IEEE 802.11 para redes LAN sem fios; Evolução do protocolo ao longo dos anos, nomeadamente o WEP, o WPA2, e o WAP3; Análise das principais formas de ataque e mecanismos de proteção |
Radio Frequency Identifiers (RFID)
Arquitectura e componentes dum sistema RFID; Descrição e caraterística fundamentais de vários tipos de Tags e Readers; Estudo de algumas aplicações do RFID e seus efeitos em termos de segurança (distribuição de bens, passaporte, cartões de acesso, sistemas de pagamentos, animais) |
Segurança ao Nível Rede
Estudo do protocolo IPsec: Aplicações típicas; Benefícios, Serviços; Associações seguras; Modos de transporte e túnel; Funcionamento do AH e do ESP; Detecção de ataques de repetição; Combinação de associações seguras; Gestão de chaves e o protocolo IKE |
Segurança no Nível Transporte
Estudo do protocolo SSL/TLS (versão 1.3): Conceitos fundamentais; Protocolo Record; Fases do Protocolo de Handshake e alguma variantes; Estudo de diversas debilidades de segurança |
Correio Electrónico Seguro
Que garantias de segurança deveria ter um serviço de correio electrónico? Modelos de listas de distribuição; Como garantir as propriedades de segurança: confidencialidade, integridade, autenticação, não-repúdio, ... ; Estudo de vários mecanismos de segurança, como o SPF, o DKIM, e o S/MIME |
Sistemas de pagamento
Requisitos e métodos básicos de pagamento em comércio electrónico; Métodos baseados em transferência de contas; Estudo de caso: cartões de crédito e norma EMV; Dinheiro electrónico: funcionamento básico, e vantagens e desvantangens; Estudo de caso: bitcoin; E-cash |
Aulas
Preparação VMs
Criação de máquinas virtuais, e interligação numa rede de máquinas virtuais. |
Lab1 - Cifra de chaves secretas e ataques
Cifra de chaves secretas e ataques. No projeto os alunos irão experimentar alguns ataques que exploram o conhecimento do IV em certos modos de cifra. |
Apt Proj 1 & Autenticação e Troca de Chaves
Apresentação
do primeiro projeto e respostas a questões. Estudar e comparar diversas formas de autenticação em sistemas distribuídos: autenticação unilateral com segredo partilhado, com chave pública e com estampilhas temporais; autenticação mútua com segredo partilhado, com chave pública, e estampilhas temporais; autenticação mediada; Distribuição de chaves de sessão |
Lab2 - Colisões em funções de hash
Colisões em funções de hash. No projeto os alunos irão realizar (em vários passos) um ataque que compromete a propriedade da resistência a colisões da função de hash MD5. |
Lab2 - Colisões em funções de hash
Terminar experiências do enunciado 2 de projeto de laboratório. |
Apt Proj 2 & Lab3 - Autenticação msg e MAC
Apresentação do Projeto 2
|
Lab3 - Autenticação msg e MAC
Terminar experiências do enunciado 3 de projeto de laboratório. |
lab 4 - PKI
Experiências com certificados e criação de sites web, aproveitando para testar ataques MITM. |
lab 4 - PKI
Terminar experiências do enunciado 4 de projeto de laboratório. |
lab 5 - PKI e Ataques MITM
Experiências com certificados e criação de sites web, aproveitando para testar ataques MITM. |
Projeto 2
Apoio ao trabalho de Projeto 2
lab 5 - PKI e Ataques MITM
Terminar experiências do enunciado 5 de projeto de laboratório. |
Discussão dos Projetos
Discussão dos Projetos 1 e 2. |