[Uni Logo]     [University of Sydney]
[School of Mathematics and Statistics]
ICE-EM/AMSI Summer School Cryptography
    
  
Teaching
  Junior
  Intermediate
  Senior
  Honours
 Postgraduate
Research
People
      

 
 
Cryptography
Cryptography is the branch of mathematics which provides the techniques for enabling confidential information to be transmitted over public networks. We begin with an overview of cryptography, including the fundamental concepts of encryption, material on classical ciphers and their cryptanalysis, and distinction between symmetric key and asymmetric (or public) key cryptography. Material on symmetric key cryptography will cover standard block cipher constructions, together with their modes of use, followed by stream ciphers. For the subject of public key cryptography, we recall the construction of the quotient rings Z/NZ and introduce finite fields of any prime power. The main cryptosystems RSA and ElGamal will be introduced, together with the main algorithms for their construction (finding large primality and proving primality) and their cryptanalysis (factoring and discrete logarithm algorithms). We conclude with more exotic generalisations of ElGamal cryptosystems to groups of elliptic curves. Throughout we emphasize an algorithmic approach, and demonstrate the principles with computer experiments and exercises with the computer algebra system Sage. This will allow us to provide nontrivial examples and discuss algorithmic approaches to construction of large prime numbers, factorization, and discrete logarithms.
 
Information sheet
The course information sheet provided information on the course.
 
Cryptography Book
We will follow the book Cryptography [updated 23-01-2007] developed for this course, in addition to the other reference materials mentioned on the information sheet.
 
Plaintext Samples
 
The plaintexts Black Cat and The Fall of the House of Usher, by Edgar A. Poe, and Scarlet Letter, by Nathaniel Hawthorne, can be used for generating standard English frequencies.
 
Ciphertext Samples
 
Cipher 01 (ascii) Cipher 02 (ascii) Cipher 03 (ascii) Cipher 04 (ascii) Cipher 05 (ascii) Cipher 06 (ascii)
Cipher 07 (ascii) Cipher 08 (ascii) Cipher 09 (ascii) Cipher 10 (ascii) Cipher 11 (ascii)
  The Vigenère ciphertext analyzer, based on a program of Fred Richman, can be used to analyze and decipher ciphertext from simple substitution and Vigenère ciphers.
 
Assignments
 
The first assignment is available [sample text only]. Check instructions in the README file for your custom assignment sheet and data. More detailed information on approaches to breaking the ciphertext is in this FAQ [updated 31-01-2007]. Data for digraph frequencies can be used for cryptanalysis of substitution ciphers. The due date for this assignment is Friday 2 February; read here for submission guidelines.
The second assignment is available. Check instructions in the README file for your individual data. For approaches using Sage on the assignment, see FAQ [updated 6-2-2007]. The due date for this assignment is Thursday 8 February; read here for submission guidelines.
Breaking news: additional RSA messages where intercepted:
messages.0.txt messages.1.txt messages.2.txt messages.3.txt messages.4.txt
 
Code Snippets
 
The code snippet correlations.sage can be useful for comparing plaintext and ciphertext probability distributions in tutorials and assignments.
 
Exam
 
The University of Sydney library maintains a repository of exams, of which the MATH3024 exams (last taught in 2004) could serve as practice. Appendix D of the book also provides sample (hand) questions.
 
SAGE: Software for Algebra and Geometry Experimentation
Tutorial exercises will emphasize both hand computations and computer exercises in Sage.