overview Course overview

Cryptanalysis is an ancient art of analyzing and breaking ciphers. It is
also a relatively new modern science, which becomes more and more popular
with and advent of cryptography in our everyday life thanks to the
Internet. The aim of the course is to show a broad range of cryptanalytic
techniques starting from attacks on classical substitution ciphers and up
to the state of the art  modern attacks. The emphasis of the course will be
on the analysis of block-ciphers, although stream ciphers and hash functions
will also receive attention.

The course will be self-contained and may be of interest to both
mathematicians and computer scientists.

There are no books on cryptanalysis yet, so we will maintain a course-web
cite, which will contain the introductory material, homeworks and
pointers to the course material.

Prerequisites: "Cryptography", or "Foundations of Cryptography" courses
will be of help but are not a requirement.


50% - Homeworks
50% - Final project

Scribe Notes (a bonus 25%)

Write scribe notes for the class lectures and literature survey for specific topic.  Notes for two lectures, with
a good survey of the relevant literature will account to 25% of the final grade (you can then skip doing half of the
homeworks or ask for a simpler final project assignment, at your choice; or just use the bonus to improve your final
grade). It is  a requirement that the person preparing such notes will do so within two weeks after the relevant
lecture, so that we can place them on this site for everybody's benefit. The notes should be written in Latex or in
HTML. I will help the volunteers to find references and material relevant to their topics of choice.
See  the lecture notes for the first  and the second  lectures as an example.

Final Projects

These will be cryptanalytic assignments and challenges. Attacks on both classic and modern ciphers.
Basic programming skills will be a benefit, but there will be final projects for a pen and paper analysis as well.

Click here to go to the projects page.