Curso C1- Criptografia e Segurança
na Informática
(Segurança Computacional)
45 horas - pre-requisito: seleção - notas de aulas
· Noções preliminares;C1-0 - Noções preliminares
· Fundamentos;
· Elementos do processo de segurança;
· Tipos básicos de protocolos para segurança;
· Técnicas criptográficas;
· Tópicos Especiais: (extras);
Algoritmos criptográficos importantes
Enfoques de implementação.
Exemplos e casos de aplicações.
· Bibliografia.
C1-0.1 O que é Segurança?
Percepções de riso e de proteção; Teatro e processo de segurançaC1-0.2 O que é Comunicação?
Sinal, codificação e dados; Linguagem, confiança e informaçãoC1-0.3 Como se produz significados?
Tecnologias e canais de comunicação; Computação, competências cognitivas e contextosC1-0.4 Processo de segurança em contextos virtuais:
Em dados, em informações, em redes, em aplicativos; Mentalidade (mindset) de segurança
C1-1.1 Jurisdições e interesses relacionados.
Processos normativos e seus conflitos inerentes; Safety (acidentes) vs. security (incidentes)C1-1.2 Demandas e componentes do processo:
Riscos e ameaças básicas; Política e gerência de segurança computacional.C1-1.3 Tipologia de ataques a sistemas computacionais:
Básicos, primários e subjacentes; Evolução e tipos mais frequentes.C1-1.4 Políticas de segurança em informática:
Análise de risco, análise custo x benefício, seleção de salvaguardas e serviços básicos.
C1-1.5 Tipologia de
algoritmos criptográficos (quanto a premissas):
O
princípio de Kerkhoffs; Criptografia restrita, simétrica e
assimétrica; Primitivas
C1-1.6 Criptografia
pré-computacional:
Substituições
e transposições; Composições e a cifra de Vigenère; Evolução
para arquitetura das redes de Feistel.
C1-1.7 Tipologia de
ataques a algoritmos criptográficos:
Criptograma
conhecido, texto pleno conhecido, escolhido ou adaptativo; Canais
laterais;
C1-1.8 Classificação
NCSC para sistemas operacionais,
O
nível de segurança C2 e o contexto histórico da Internet
C1-1.9 Teoria da
Informação aplicada à criptoloanálise:
Entropia
e distância de unicidade; Distribuição de freqüências em
escritas fonéticas
.
C1-2- Elementos do Processo de segurançaC1-2.1 Protocolos
computacionais e suas premissas:
Protocolos
arbitrados, ajuizáveis e auto-verificáveis; Confiança através de
protocolos
C1-2.2 Arquitetura básica
para protocolos criptográficos:
Estrutura
básica; Esquemas básicos para distribuição de chaves; Desafios e
nounces.
C1-2.3 Esquemas de
envelope digital e de assinatura digital:
Premissas
de confiança, propósitos e propriedades ideais.
C1-2.4 Funções
unidirecionais:
De
mistura (hash), com segredo (trapdoor), e resistentes a colisão.
C1-2.5 Ataques básicos a
protocolos criptográficos:
Replay,
personificação, espelhamento e man-in-the-midle.
C1-2.6 Seqüências
randômicas e pseudo-randômicas:
Propriedades ideais e
mensuráveis; Arquiteturas para geradores a aplicações específicas.
C1-3- Tipos básicos de protocolos para segurança
C1-3.1 Modelos de
confiança para protocolos de segurança computacional
Sistema
fechado, rede fechada e rede aberta; Semântica de riscos bipolar e
multipolar
C1-3.2 Login para controle de acesso:
Usos de hash, salt e senhas descartáveis (protocolos S-key); Autenticação multifator
C1-3.3 Autenticação e
distribuição de chaves para controle de seção:
Com
cifras simétricas: Needham & Schroeder; Kerberos, Neumann &
Stubblebine; Com cifras assimétricas: DASS, Denning & Sacco, Woo
& Lam.
C1-3.4 Evolução da
criptografia assimétrica:
Protocolo
de derivação de chaves Diffie & Hellman; Variantes com
exponenciação modular: RSA, El-Gamal, aritmética de curvas
elípticas e outras codificações.
C1-3.5 Esquemas de
certificação para controle de identificação:
Validação
de datas; Aposta encoberta, cara ou coroa virtual; Custódia de
chaves privadas: Protocolo de Micali (criptografia “justa”);
Provas de conhecimento zero: Protocolos iterativos e não iterativos;
Exemplo com isomorfismo de grafos.
C1-3.6 Protocolos
esotéricos:
Transmissão
e assinatura cega; Assinaturas digitais simultâneas. Eleições
puramente eletrônicas com voto secreto; Moeda eletrônica.
C1-4.1 Dimensionamento de
algoritmos por custo estimado de quebra:
Espaço
de chaves por capacidade do oponente; Tipologia de senhas; ataques de
dicionário, “de aniversário” e com “tabelas arco-iris”.
C1-4.2 Principais
primitivas de algoritmos assimétricos:
Exponenciação
modular e logaritmo discreto. Fatoração, testes de Monte Carlo para
primalidade. Heurística para geração de números primos grandes.
C1-4.3 Arquiteturas para
construção de cifras:
Cifras
de bloco e cifras encadeadas; Modos de operação ECB, CBC, CFB e
OCB.
C1-4.4 Elementos de
arquitetura para geradores pseudo-randômicos e cifras encadeadas:
Registradores
de deslocamento retroalimentados; Polinômios primitivos módulo 2;
Projeto e análise de cifras encadeadas.
C1-4.5 Elementos de
escolha para cifras
Escolha
de cifras quanto à origem, destinação, implementação,
transmissão, armazenamento e plataforma de implementação.
C1-5- Tópicos Especiais - Algoritmos Criptográficos Importantes (material extra)
C1-5.1 O padrão DES para cifras de bloco
Especificação geral do algoritmo. Criptoanálise diferencial e linear. Técnicas de robustecimento.
C1-5.2 Outros algoritmos para cifras de bloco
Domínio público: NewDES, GOST e Blowfish. Patenteados: Kuhfu, Khafre, IDEA. Restritos: Skipjack. RC
C1-5.3 Critérios práticos para escolha de uma cifra de bloco.
C1-5.4 Algoritmos para cifras encadeadas. (stream ciphers)
Obsoletas: Cript1 (Unix) e PKZIP. (DOS, etc.) A5, SEAL, RC4
C1-5.5 Funções de Mistura (Hash).
Por encadeamento de compressão: MD5, MD2, RIPE-MD, SHA, NAVAL, etc. Por encadeamento de cifras de bloco: Davies-Meyer, MDC, D-M intercalado, Códigos de autenticação de mensagens (MACs). Comparação de performance.
C1-5.6 Algortmos de chave pública e assinatura digital
Obsoletos: Knapsack e outros. Atualmente em uso: RSA, ElGamal, Rabin. Análise do RSA.
.
C1-6- Tópicos Especiais - Enfoques de implementação
C1-6.1 Padronização de protocolos de assinatura digital.
O cenário atual. Produtos no mercado para criptografia de chave pública. Os algortimos DSA, Schorr e o padrão DSS. esquema meta-ElGamal para derivação de algoritmos de assinatura digital.C1-6.2 Futuro da criptografia assimétrica.
O uso da aritmética de curvas elípticas. Restrições para a implementação de algoritmos de chave pública por curvas elípticas. Comparação entre parâmetros de segurança nos sistemas de chave pública. Computação quântica.C1-6.3 Esquemas para autenticação e distribuição de chaves
Esquema Feige-Fiat-Shamir para prova de identidade. Servidores de autenticação e uso de certificados. Padrões para certificados e autoridades certificadoras na Internet.C1-6.4 Violabilidade de tokens
Configurações que permitem a escuta promíscua (sniffers) Técnicas de exploração e proteção a conteúdo ativo em RAM (exploits). Vulnerabilidade dos sistemas criptográficos de livre acesso (smartcards)C1-6.5 Análise de risco dos sistemas em redes globaisV.
Vantagens e vulnerabilidades do TCP/IP. Ataque ao número sequencial TCP. Dificuldades técnicas dos ataques à internet. Mecanismos de controle de tráfego.C1-6.6 Segurança para a Internet.
Técnicas e operações de filtragem de pacotes. Exemplos de configuração de filtros de pacotes. Uso de Firewalls, Gateways e Proxies. Topologias internas para segurança. Limitações dos mecanismos de controle de tráfego.
C1-7- Tópicos Especiais - Exemplos de Aplicações
C1-7.1 Especificação de protocolos criptográficos para a Internet:
SSL. PGP. PEM.C1-7.2 Comércio eletrônico
Pacotes de serviço para comércio eletrônico. padrão SET (deprecado).C1-7.3 Autenticação e fraudes com smartcards.
C1-7.4 Discussão de técnicas de ataque e casos de falha recentes.
Básica (Material de referência)
REZENDE, P. A. D.: "Criptografia e Segurança na Informática" , Notas de aula em apostila, edição virtual, 1998 – 2013.
SCHNEIER, FERGUSON & KONO: “Cryptography Engineering: Design Principles and Applications”, Willey, 2010.
ANDERSON, R.: “Security Engineering”, 2nd ed., J. Willey, 2008.
STALLINGS, William. “Criptografia e Segurança de Redes: Príncipios e Práticas”, Pearson Prentice-Hall, 2008.
Complmentar
Os textos abaixo aprofundam o material abordado nos cursos.
REZENDE, P. A. D.: “Modelos de Confiança para Segurança em Informática”. Relatório de pesquisa, edição virtual, 2008 – 2013
GARFINKEL, S & SPAFFORD, G.: “Practical Unix & Internet Security”, O'Reilly & Associates, 3rd ed., 2003.
SCHNEIER, B.: “Segurança.com Segredos e Mentiras sobre a proteção na vida digital” , ed., Campus, 2001.
SCHNEIER, B.: Applied Criptography , 2nd ed, J. Willey, 2000.
FORD, W. & BAUM, M.: Secure Eletronic Commerce, Prentice Hall, 2nd ed, 2000.
LYNCH, D. & LUNDQUIST, L.: “Dinheiro Digital”, Ed. Campus, 1996.
CASTANO, FUGINI, MARTELA & SAMARATI: “Database Security”, Addison Wesley Publ., 1995.
FORD, W.: “Computer Communications Security”, Prentice Hall Publ. 1994.