Mudanças entre as edições de "Noites Criptonicas"
Ir para navegação
Ir para pesquisar
(25 revisões intermediárias por 5 usuários não estão sendo mostradas) | |||
Linha 1: | Linha 1: | ||
=Proposta= |
=Proposta= |
||
− | Iremos organizar uma |
+ | Iremos organizar uma série de palestras e oficinas sobre criptografia, cobrindo desde aspectos básicos e a teoria, até mesmo oficinas práticas sobre uso de ferramentas. |
==Data== |
==Data== |
||
+ | A definir. Iremos dividir as atividades em vários dias, cada uma com duração de cerca de duas horas, durante as quais iremos nos aprofundar sobre um determinado assunto relacionado a criptografia. |
||
− | A definir |
||
+ | |||
+ | Quando: preferencialmente nos Turing clubes, em semanas alternadas. |
||
==Planejamento== |
==Planejamento== |
||
Linha 11: | Linha 13: | ||
*Palestras |
*Palestras |
||
*Oficinas |
*Oficinas |
||
+ | *Exercícios |
||
*Install fest |
*Install fest |
||
+ | *Filmes |
||
+ | *Programação |
||
+ | |||
+ | O material criado e utilizado nas noites criptônicas será disponibilizado livremente após as atividades. |
||
+ | |||
+ | === Agenda === |
||
+ | |||
+ | * Dia 0- 20/02/2012 - Apresentação do filme [http://www.imdb.com/title/tt0245562 "Códigos de Guerra"] seguido pelo documentário e debate sobre o [http://www.history.navy.mil/faqs/faq61-2.htm Código Navajo] |
||
+ | |||
+ | * Dia 1- Introdução a criptografia |
||
+ | **história, conceitos principais |
||
+ | **motivação |
||
+ | ** criptografia antiga vs moderna |
||
+ | **algoritmos simétricos vs assimétricos |
||
+ | ** one time pad - confundindo os brutos |
||
+ | ** referências |
||
+ | **algum filme, seguido por debate |
||
+ | **personagens do mundo criptográfico |
||
+ | ***Clássicos Alice e Bob - você tem que saber quem são eles |
||
+ | ***Arthur e Merlin - muito presentes nos sistemas embebidos ou embarcados |
||
+ | ***Eva - a invasora |
||
+ | ***Malvino - porque ele é mais eficiente que Eva |
||
+ | ***Coadjuvantes importantes: Carol, Charles, Carlos, Davi, Priscila e Victor |
||
+ | ***Tales - o árbitro |
||
+ | ***Walter - quem é este mesmo? |
||
+ | |||
+ | * Dia 2 - Criptografia antiga (parte 1) |
||
+ | ** um pouco de história, casos famosos |
||
+ | ** cifras de substituição |
||
+ | *** cifra de César |
||
+ | *** exercícios |
||
+ | *** implementando cifra de César em python |
||
+ | *** quebrando a cifra de César (analise de frequencia) |
||
+ | *** cifra de Vegenere |
||
+ | *** Ottendorf |
||
+ | |||
+ | * Dia 2 - Criptografia antiga (parte 2) |
||
+ | ** cifras de transposição |
||
+ | *** exercícios |
||
+ | ** outras cifras |
||
+ | |||
+ | * Dia 3 - Criptografia na Segunda Guerra Mundial |
||
+ | ** importância |
||
+ | ** histórias |
||
+ | ** Enigma |
||
+ | ** quebrando o Enigma |
||
+ | ** filme |
||
+ | |||
+ | * Dia 4 - Criptografia moderna |
||
+ | ** conceitos básicos |
||
+ | ***Chave criptográfica |
||
+ | ** algoritmo público vs obscuridade |
||
+ | ** criando algoritmos criptográficos |
||
+ | *** "building blocks" (visão geral de como são construídos os algoritmos criptográficos) |
||
+ | **** aritmética modular |
||
+ | **** operacões básicas (xor, substituição, rotação, permutação, etc) |
||
+ | **** números grandes |
||
+ | **** números aleatórios |
||
+ | *** cifras de blocos vs encadeadas |
||
+ | ***Design de criptografia e abordar: SPN, Feistel network, key schedule, S-box, P-box, etc... e como não se sentir um completo ignorante sobre o assunto |
||
+ | ***Modos de Autenticação: CCM, EAX, GCM, OCB... e coisas que vão no miojo estrelado do modo de operação dos blocos de cifra. |
||
+ | ***Modos de blocos de Cifra: ECB, OFB, CTR, CBC |
||
+ | |||
+ | * Dia 5 - Algoritmos simétricos |
||
+ | ** DES |
||
+ | ** outros algoritmos (3des, twofish, família RC, etc) |
||
+ | ** AES |
||
+ | |||
+ | * Dia 6 - Algoritmos assimétricos |
||
+ | ** RSA |
||
+ | **Hash |
||
+ | ** assinatura digital |
||
+ | **MIC (Message Integrity Code) / MAC (Message Authentication Code) - Poly1305, MMH, HMAC, CMAC, VMAC... |
||
+ | *** faz sentido utilizá-los comparado a outros mecanismos mais rápidos e mais simples? |
||
+ | |||
+ | * Dia 7 - Certificação Digital |
||
+ | ** certificados digitais |
||
+ | ** PKI |
||
+ | ** ICP Brasil |
||
+ | ** aplicação: SSL |
||
+ | ** oficina SSL |
||
+ | |||
+ | * Dia 8 - Aplicações e protocolos |
||
+ | ** SSH |
||
+ | ** oficina SSH |
||
+ | |||
+ | * Dia 9 - Aplicações e protocolos |
||
+ | ** criptografia de email |
||
+ | *** PGP |
||
+ | *** S/MIME |
||
+ | ** oficina |
||
+ | |||
+ | * Dia 10 - Aplicações e protocolos |
||
+ | ** IPSEC e VPNs |
||
+ | |||
+ | * Dia 11 - Tópicos avancados |
||
+ | ** ataques recentes ao SSL, assinatura digital |
||
+ | ** Ataques a autoridades certificadoras |
||
+ | |||
+ | * Dia 12 - Tópicos diversos |
||
+ | ** esteganografia |
||
+ | ** oficina esteganografia |
||
+ | |||
+ | * Dia 13 - Tópicos diversos |
||
+ | ** TOR |
||
+ | ***Criptografia utilizada |
||
+ | ***Oficina |
||
+ | |||
+ | * Dia 14 - Tópicos diversos |
||
+ | **salt, nonce |
||
+ | **FIPS |
||
+ | |||
+ | * Dia 15 - Criptoanálise |
||
+ | * Se o espaço polinominal não for amplo... |
||
+ | **Criptoanálise por Exaustão |
||
+ | ***Vencendo pela força-bruta |
||
+ | ***Exaurindo com inteligência polinominal |
||
+ | ***Porque os combinados são mais saborosos |
||
+ | **Criptoanálise linear |
||
+ | ***Olhe com cuidado, nem tudo parece o que de fato é |
||
+ | **Criptoanálise diferencial |
||
+ | *** Higher-order |
||
+ | *** Truncada |
||
+ | *** Impossível - o ataque que assuntou a NSA |
||
+ | *** Ataque Boomerangue |
||
+ | **** não é o ataque do canguru perneta |
||
+ | ** Criptoanálise diferencial-linear |
||
+ | ** Criptoanálise integral (square) |
||
+ | ** Ataque XSL |
||
+ | ** Ataque Rebote (rebound) |
||
+ | ** Ataque Lateral |
||
+ | *** Análise diferencial de falhas |
||
+ | *** Ataque de temporização |
||
+ | *** Ataques eletromagnéticos (TEMPEST / van Eck Phreaking) |
||
+ | *** Criptoanálise acústica |
||
+ | *** Ataques de cache e métodos relacionados |
||
+ | ** Criptoanálise Slide |
||
+ | ** Criptoanálise Rotacional |
||
+ | ** Criptoanálise biclique |
||
+ | |||
+ | **Ataques de hash: |
||
+ | *** Colisão |
||
+ | *** Birthday |
||
+ | *** Differential fault analysis |
||
+ | *** Rainbow table |
||
+ | *** Side-channel / Ataque Lateral |
||
+ | *** Pre-image, etc.. |
||
+ | ** Reforço merkle-damgard para Hashs |
||
+ | * Dia 16 - Criptoanálise Aplicada |
||
+ | **Oficinas |
||
+ | ***Ex: quebra de arquivos de senha, senhas wi-fi, etc |
||
+ | |||
+ | * Dia 17 - Wrap-up: Criptografia Aplicada para programadores |
||
+ | **Revisão do "Dia 4 - Criptografia moderna" (com mais profundidade) |
||
+ | ** bibliotecas criptográficas existentes |
||
+ | |||
+ | * Dia 18 - Flashback |
||
+ | **Oficina: Construindo uma Enigna |
||
+ | **[http://dave-reed.com/DIYenigma DIY Enima Machine] |
||
+ | **[http://wiki.franklinheath.co.uk/index.php/Enigma/Paper_Enigma Paper Enigma] |
||
== Responsáveis== |
== Responsáveis== |
||
*Anchises |
*Anchises |
||
*Oda |
*Oda |
||
+ | *[[Usuário:Aleph|Aleph]] |
||
[[Categoria:Eventos]] |
[[Categoria:Eventos]] |
||
+ | |||
+ | == Participantes == |
||
+ | *Gabrielsp |
||
+ | *Agressor |
||
+ | *Samuel Damasceno |
||
+ | |||
+ | == Referências Úteis == |
||
+ | |||
+ | *Curso de [http://www.mat.uc.pt/~pedro/lectivos/CodigosCriptografia Códigos e Criptografia] do Mestrado em Matemática da Universidade de Coimbra |
||
+ | *[http://www.cacr.math.uwaterloo.ca/hac Handbook of Applied Cryptography], de Alfred J. Menezes, Paul C. van Oorschot e Scott A. Vanstone |
||
+ | *Curso [http://www.udacity.com/overview/Course/cs387 CS387 - Applied Cryptography] (prof. David Evans) da Udacity / University of Virginia (online e gratuito) |
||
+ | *Curso [https://www.coursera.org/crypto/auth/welcome Cryptography] (prof. Dan Boneh) da Cousera / Stanford (online e gratuito) |
||
+ | *[http://users.telenet.be/d.rijmenants/en/enigmasim.htm Enigma Simulator] |
Edição atual tal como às 18h54min de 18 de abril de 2013
Proposta
Iremos organizar uma série de palestras e oficinas sobre criptografia, cobrindo desde aspectos básicos e a teoria, até mesmo oficinas práticas sobre uso de ferramentas.
Data
A definir. Iremos dividir as atividades em vários dias, cada uma com duração de cerca de duas horas, durante as quais iremos nos aprofundar sobre um determinado assunto relacionado a criptografia.
Quando: preferencialmente nos Turing clubes, em semanas alternadas.
Planejamento
Possíveis Atividades
- Palestras
- Oficinas
- Exercícios
- Install fest
- Filmes
- Programação
O material criado e utilizado nas noites criptônicas será disponibilizado livremente após as atividades.
Agenda
- Dia 0- 20/02/2012 - Apresentação do filme "Códigos de Guerra" seguido pelo documentário e debate sobre o Código Navajo
- Dia 1- Introdução a criptografia
- história, conceitos principais
- motivação
- criptografia antiga vs moderna
- algoritmos simétricos vs assimétricos
- one time pad - confundindo os brutos
- referências
- algum filme, seguido por debate
- personagens do mundo criptográfico
- Clássicos Alice e Bob - você tem que saber quem são eles
- Arthur e Merlin - muito presentes nos sistemas embebidos ou embarcados
- Eva - a invasora
- Malvino - porque ele é mais eficiente que Eva
- Coadjuvantes importantes: Carol, Charles, Carlos, Davi, Priscila e Victor
- Tales - o árbitro
- Walter - quem é este mesmo?
- Dia 2 - Criptografia antiga (parte 1)
- um pouco de história, casos famosos
- cifras de substituição
- cifra de César
- exercícios
- implementando cifra de César em python
- quebrando a cifra de César (analise de frequencia)
- cifra de Vegenere
- Ottendorf
- Dia 2 - Criptografia antiga (parte 2)
- cifras de transposição
- exercícios
- outras cifras
- cifras de transposição
- Dia 3 - Criptografia na Segunda Guerra Mundial
- importância
- histórias
- Enigma
- quebrando o Enigma
- filme
- Dia 4 - Criptografia moderna
- conceitos básicos
- Chave criptográfica
- algoritmo público vs obscuridade
- criando algoritmos criptográficos
- "building blocks" (visão geral de como são construídos os algoritmos criptográficos)
- aritmética modular
- operacões básicas (xor, substituição, rotação, permutação, etc)
- números grandes
- números aleatórios
- cifras de blocos vs encadeadas
- Design de criptografia e abordar: SPN, Feistel network, key schedule, S-box, P-box, etc... e como não se sentir um completo ignorante sobre o assunto
- Modos de Autenticação: CCM, EAX, GCM, OCB... e coisas que vão no miojo estrelado do modo de operação dos blocos de cifra.
- Modos de blocos de Cifra: ECB, OFB, CTR, CBC
- "building blocks" (visão geral de como são construídos os algoritmos criptográficos)
- conceitos básicos
- Dia 5 - Algoritmos simétricos
- DES
- outros algoritmos (3des, twofish, família RC, etc)
- AES
- Dia 6 - Algoritmos assimétricos
- RSA
- Hash
- assinatura digital
- MIC (Message Integrity Code) / MAC (Message Authentication Code) - Poly1305, MMH, HMAC, CMAC, VMAC...
- faz sentido utilizá-los comparado a outros mecanismos mais rápidos e mais simples?
- Dia 7 - Certificação Digital
- certificados digitais
- PKI
- ICP Brasil
- aplicação: SSL
- oficina SSL
- Dia 8 - Aplicações e protocolos
- SSH
- oficina SSH
- Dia 9 - Aplicações e protocolos
- criptografia de email
- PGP
- S/MIME
- oficina
- criptografia de email
- Dia 10 - Aplicações e protocolos
- IPSEC e VPNs
- Dia 11 - Tópicos avancados
- ataques recentes ao SSL, assinatura digital
- Ataques a autoridades certificadoras
- Dia 12 - Tópicos diversos
- esteganografia
- oficina esteganografia
- Dia 13 - Tópicos diversos
- TOR
- Criptografia utilizada
- Oficina
- TOR
- Dia 14 - Tópicos diversos
- salt, nonce
- FIPS
- Dia 15 - Criptoanálise
- Se o espaço polinominal não for amplo...
- Criptoanálise por Exaustão
- Vencendo pela força-bruta
- Exaurindo com inteligência polinominal
- Porque os combinados são mais saborosos
- Criptoanálise linear
- Olhe com cuidado, nem tudo parece o que de fato é
- Criptoanálise diferencial
- Higher-order
- Truncada
- Impossível - o ataque que assuntou a NSA
- Ataque Boomerangue
- não é o ataque do canguru perneta
- Criptoanálise diferencial-linear
- Criptoanálise integral (square)
- Ataque XSL
- Ataque Rebote (rebound)
- Ataque Lateral
- Análise diferencial de falhas
- Ataque de temporização
- Ataques eletromagnéticos (TEMPEST / van Eck Phreaking)
- Criptoanálise acústica
- Ataques de cache e métodos relacionados
- Criptoanálise Slide
- Criptoanálise Rotacional
- Criptoanálise biclique
- Criptoanálise por Exaustão
- Ataques de hash:
- Colisão
- Birthday
- Differential fault analysis
- Rainbow table
- Side-channel / Ataque Lateral
- Pre-image, etc..
- Reforço merkle-damgard para Hashs
- Ataques de hash:
- Dia 16 - Criptoanálise Aplicada
- Oficinas
- Ex: quebra de arquivos de senha, senhas wi-fi, etc
- Oficinas
- Dia 17 - Wrap-up: Criptografia Aplicada para programadores
- Revisão do "Dia 4 - Criptografia moderna" (com mais profundidade)
- bibliotecas criptográficas existentes
- Dia 18 - Flashback
- Oficina: Construindo uma Enigna
- DIY Enima Machine
- Paper Enigma
Responsáveis
- Anchises
- Oda
- Aleph
Participantes
- Gabrielsp
- Agressor
- Samuel Damasceno
Referências Úteis
- Curso de Códigos e Criptografia do Mestrado em Matemática da Universidade de Coimbra
- Handbook of Applied Cryptography, de Alfred J. Menezes, Paul C. van Oorschot e Scott A. Vanstone
- Curso CS387 - Applied Cryptography (prof. David Evans) da Udacity / University of Virginia (online e gratuito)
- Curso Cryptography (prof. Dan Boneh) da Cousera / Stanford (online e gratuito)
- Enigma Simulator