Rogério Reis


Err and err and err again, but less and less and less.


Sumários

21-09-2017 (Aulas 1 e 2)
Apresentação do programa e objectivos do curso, bibliografia básica e regime de avaliação. Para referência da bibliografia apresentada ver página da bibliografia do curso.
Esteganografia vs Criptografia. Cifras mono-alfabéticas. Ataques a cifras mono-alfabéticas. O ataque estatístico de Al-Kindi. Soluções para os ataques descritos. Códigos e
nomenclators. Cifras poli-alfabéticas. A cifra de Alberti e a cifra de Vigenère. O ataque de Babbage à cifra de Vigenère. Índices de coincidência de uma língua e estimativa do número de alfabetos usados numa cifra. O teste K de Friedman e a estimative do período de uma cifra.
Bibliografia
- Helen Fouché Gaines. Cryptanalysis. A study of ciphers and their resolution. Dover Publications, 1939.
- Abraham Sinkov. Elementary Cryptanalysis, volume 22 of Anneli Lax New Mathematical Library. Mathematical Association of America, 2nd edition, 2009.
- Simon Singh. The Code Book. Fourth Estate, 1999.
- The ACA and you. A Handbook for the Members of the American Cryptogram Association, 2016.
- F. L. Bauer. Decrypted Secrets. Methods and Maxims of Cryptology. Springer, 1997.
- Martin Gardner. Codes, Ciphers and Secret Writing. Dover Publications, 1972.
- Fred Piper and Sean Murphy. Cryptography. A Very Short Introduction. Oxford University Press, 2002.
Extra
Para os que quiserem "dar o gosto ao dedo" e experimentar a quebra de uns exemplos muito simples de criptogramas como os visto na aula, podem "divertir-se" aqui. Uma tabela mais exacta das frequências das letras (assim como de digrafos e trigrafos) na língua portuguesa pode ser consultada aqui.
29-09-2016 (Aulas 3 e 4)
Cifras poligráficas. A cifra de Playfair e suas vulnerabilidades. A Bifid. Cifras de transposição e suas vulnerabilidades.
A enigma, os seus diversos modos de operação e os respectivos ataques criptográficos. A Lorenz.
Bibliografia
A bibliografia é a da Aula anterior. Quem tiver curiosidade sobre a quebra automática da Bifid pode encontrar o artigo aqui.

Para as cifras electro-mecânicas.
- Bengt Beckman. Codebreakers. Arne Beurling and The Swedish Crypto Program During World War II.
American Mathematical Society, 2002.
- B. Jack Copeland, editor. The Essential Turing. Oxford University Press, 2004.
- B. Jack Copeland, editor. Colossus. The Secrets of Bletchley Park’s Codebreaking Computers. Oxford University Press, 2006.
- S. Barry Cooper and Jan van Leeuwen, editors. Alan Turing. His Work and Impact. Elsevier, 2012.
- Paul Gannon.Colossus Bletchley Park’s Greatest Secret. Atlantic Books, 2006.
- Jack Gray and Keith Thrower. How the Turing Bombe smashed the Enigma code. Speedwell, 2001.
- Peter Hilton. Reminiscences of Bletchley Park, 1942–1945. In Peter Duren, editor, A Century of Mathematics in America, volume I, pages 291–301. American Mathematical Society, 1988.
- Peter Hilton. Reminescences and Reflections of a Codebreaker. In W.D.Joyner, editor, Coding Theory and Cryptography: From Enigma and Geheimschreiber to Quantum Theory, pages 1–8. Springer, 2000.
- Marion Hill. Bletchley Park People. Sultton Publishing, 2004.
- Andrew Hodges. Alan Turing: The Enigma. Simon & Schuster, Inc, 1983.
- F. H. Hinsley and Alan Stripp. Code Breakers. Oxford University Press, 1993.
- David Kahn. Seizing the Enigma. Arrow, 1996.
- John Keen. Harold ’Doc’ Keen and the Bletchley Park Bombe. M&M Baldwin, 2003.
- T. W. Körner. The Pleasures of Counting. Cambridge University Press, 1998.
- David Leavitt. The man who knew too much: Alan Turing and the invention of the computer. Atlas Books, 2006.
- António Machiavelo and Rogério Reis. Turing e a Enigma. Boletim da SPM, (67), 2012.
- Bruno Ribeiro. A Criptanálise da ENIGMA: 1932–1939. Master’s thesis, Faculdade de Ciências da Universidade do Porto, 2007. (
pdf)
- Tony Sale. Colossus 1943-1996. M & M Baldwin, 1998.
- Simon Singh. The Code Book. Fourth Estate, 1999.
- Hugh Sebag-Montefiore. Enigma. The battle for the code. Cassell, 2004.
- Michael Smith. Station X. Pan Books, 2004.
- Alan Turing. Turing’s treatise on the enigma. scanned copy.
- Gordon Welchman. The Hut Six Story. Breaking the Enigma codes. M&M Baldwin, 1998.
- F. W. Winterbotham. The Ultra secret. Orion, 1974.
12-10-2017 (Aulas 5 e 6)
Introdução aos protocolos criptográficos. Noção de função não invertível e de função de hash criptográfica. O conceito de Criptografia de Chave Pública. Puzzles de Merkle. Protocolos híbridos. Ataques de dicionário. Assinaturas e identificações digitais usando criptografia simétrica e criptografia de chave pública. Protocolos básicos básicos. O ataque do "intermediário" e o protocolo Interlock.
Bibliografia
- A. Menezes, P. van Oorschot, and S. Vanstone. Handbook of Applied Cryptography. CRC Press, 1996. Os diversos capítulos que constituem este livro podem ser obtidos em PDF aqui.

- Bruce Schneier. Applied Cryptography. John Wiley & Sons, Inc, second edition, 1996.

- R.L.Rivest and A.Shamir. How to Expose a Eavesdroper. Communications of the ACM, (27) 4: 393-395, 1984. O artigo once o ataque "Man-in-the-middle" é descrito aswim como a contra-medida proposta: o Interlock.
19-10-2017 (Aulas 7 e 8)
Protocolos Intermédios: Bit-Commitment, Oblivious Transfer e protocolos de datação. Protocolos Avançados: Zero-Knowledge Proofs, eleições não presenciais e dinheiro electrónico.
Bibliografia
A bibliografia é a da aula anterior.
09-11-2017 (Aulas 9 e 10)
Noção de segurança Perfeita. O "One-Time Pad". Versão simplificada do DES. O problema da dimensão do espaço de chaves. Modelos alternativos de ataque de força-bruta. Limites termodinâmicos de computação. As cifras de Feistel. O DES. O ataque do "intermediário". O "triple-DES".
Bibliografia
- William Stallings, "Cryptography and Network Security", Prentice Hall, 1998. Para simplificar a exposição da DES é introduzida a versão simplificada do DES.

- Bruce Schneier. Applied Cryptography. John Wiley & Sons, Inc, second edition, 1996.
11-11-2016 (Aulas 11 e 12)
Noções básicas de teoria dos números. Divisibilidade e congruência módulo. O algoritmo de Euclides e a sua versão estendida. O (pequeno) Teorema de Fermat. O a função $\Phi$ de Euler e o teorema de Euler.
16-11-2017 (Aulas 13 e 14)
O sistema de chave pública baseado em "knapsacks". O teste de primalidade probabilístico de Rabin-Miller. O RSA. O Teorema Chinês dos Restos.
3-11-2016 (Aulas 15 e 16)
Funções de “hash”. Ataques de dicionário e contra-medidas. Características de uma função de “hash” criptográfica. Aplicações de funções de “hash”. Aumento do tamanho de uma função de hash. O MD5, o MD2 e o SHA. Funções de hash definidas à custa de uma cifra simétrica.
Computação quântica. Criptanálise quântica. O algoritmo de Shor. O protocolo quântico de Bennett-Brassard.
23-11-2016 (aulas 17 e 18)
O problema do logaritmo discreto e o cripto-sistema de chave pública El-Gamal. Troca de chaves de Diffie-Hellman.
30-11-2017 (Aulas 19 e 20)
O corpo \(\mathbb{F}_{2^8}\) e o Rijndael (AES). Geradores de aleatórios e geradores de pseudo-aleatórios. Modos de operação de cifras de Bloco.
Bibliografia
- Parte do que foi referido sobre geradores de aleatórios assim como sobre cifras de bloco pode ser encontrado nos capítulos 2,3 e 4 de "A Graduate Course in Applied Cryptography" de Dan Boneh and Victor Shoup, que se pode encontrar aqui.
7-12-2017 (Aulas 21 e 22)
Curvas Elípticas e sua implementação eficiente. O problema do Logaritmo Discreto em Curvas Elípticas. O Teorema da Colisão. Ataques ao problema do Logaritmo Discreto, o algoritmo $\rho$ de Pollard. Diffie-Helman e ElGamal em Curvas Elípticas.
Bibliografia

- Hankerson, D., Menezes, A.J., Vanstone, S.: "Guide to Elliptic Curve Cryptography". Springer Science & Business Media (2006). (aqui)
- Neal Koblitz: "A Course in Number Theory and Cryptography". Springer, 1994. (Capítulo 6) (aqui)
- Steven D. Galbraith: "Mathematics of Public Key Cryptography", Cambridge University Press, 2012. (Na biblioteca da FCUP)

Para uma interpretação crítica da directiva da NSA sobre Criptografia das Curvas Elípticas:

- Koblitz, N., Menezes, A.: A Riddle Wrapped in an Enigma. IACR. 1018 (2015). (aqui)

Última modificação: 10/12/2017