Course Notes
Research / Modern Developments in Cryptography
 Steven Galbraith’s Blog on mathematical cryptography developments.
 Recent interesting article The Uneasy Relationship between Mathematics and Cryptography. It’s one researcher’s experience of the recent history and conflict in the field. Very interesting read.
 eprint server (where new research appears)
 Major cryptography conferences, most of which have video recorded talks: see the IACR Events Website.
Brush up on your proofs


 Chapters 4, 5, 6, 7, 9, 10 of Hammack’s Book of Proof (free online).

Brush up on your programming


 learnpython.org — I recommend you work through the tutorials in order (start at the header “Welcome”; the bit before is an ad for something else).

Books and Stories


 Official Text: Introduction to Cryptography with Coding Theory, 2nd Edition, Wade Trappe, Lawrence C. Washington.
 Textbook Website (errata, code)
 Available on reserve in Canvas
 The Code Book: A popular history of cryptography, by Simon Singh.
 David Kohel’s Cryptography: A free online text with Sage. Appendices A and B are particularly useful (intro to Sage for crypto).
 Elementary Number Theory: Primes, Congruences, and Secrets: An excellent place to look up Sage commands in situ with number theory and cryptography topics.
 Cryptography Stories: Some of the classics.
 The Return of Sherlock Holmes by Sir Arthur Conan Doyle, includes The adventure of the dancing men.
 The Gold Bug by Edgar Allan Poe.
 Further Reading: There are always more books.
 A practical guide for developers: Series Cryptography, by JeanPhilippe Aumasson
 History: The Codebreakers D. Kahn.
 Mathematical cryptography: Cryptography, Theory and Practice D. Stinson; An Introduction to Mathematical Cryptography, J. Hoffstein, J. Pipher and J. Silverman; A Course in Number Theory and Cryptography, N. Koblitz; Algebraic Aspects of Cryptography, N. Koblitz.
 Coding Theory: A First Course in Coding Theory R. Hill; Elements of Algebraic Coding Theory, L. Vermani; Introduction to Coding Theory, J. H. van Lint
 Number Theory: A Friendly Introduction to Number Theory J. Silverman; The Theory of Numbers, G. H. Hardy and E. M. Wright.
 Algebra: A First Course in Abstract Algebra, J. Fraleigh; Abstract Algebra D. S. Dummit and R. M. Foote; Topics in Algebra, I. Herstein; Basic Algebra, I., II., N. Jacobson.
 Reading about Bitcoin: A particularly nice account of Bitcoin can be found by Michael Nielson.
 Official Text: Introduction to Cryptography with Coding Theory, 2nd Edition, Wade Trappe, Lawrence C. Washington.

Sage


 Sage – Free, sophisticated math software for indepth exploration.
 SDSU Sage Tutorial – good choice for an intro
 Sage’s documentation for Cryptography functions.
 Kohel’s Cryptography – appendices have intro to cryptosystems with Sage
 Ask Sage – question and answer service from the hive mind
 Sage’s Quick Reference Sheets to keep by your side.

Latex


 Latex – the only reasonable way to type math.
 My Latex introduction
 Introduction to Latex – installing and how to type.
 detexify – To find a symbol you want to know.
 overleaf.com – No need to install software or visit the lab – typeset online!
 Tex Stackexchange – question and answer service from the hive mind

Online Cryptography Tools



 Wolfram Alpha – Simple math computation without learning a syntax
 Compute any multiplication table mod n
 Boxentrique – Online encrypt/decrypt for classic ciphers and more.
 The Black Chamber – Simon Singh’s online guide to historical codes and ciphers. Includes coding/decoding and cracking applets.
 Cryptool Online – Online tools and applets for many many classical and modern cryptographic systems.
 Enigma Machine Simulators and Software – The definitive online catalogue of Enigma software and everything else (including purchasing parts).
 Cipher Wheel: Java Applet and Paper Cutout – In case you’ve lost yours.
 State of the Art

 Current Key Sizes for Cryptography – How many bits do you need?
 Current Factorisation Records – How big can we factor?



General Math Resources
Note: the internet can in fact do your homework for you in many cases. So can your friends, your mother, and your tutor. That’s not the point. Study (and drink) responsibly.


 Proof of Concept, my blog/resource site for math majors
 Study Math by Speaking It
 Tips on Doing Homework
 Tips on Reading your Textbook
 Mathematics at StackExchange – Question answer service (by the ‘hive mind’). Use the search box first; there’s a 98% chance someone has asked your question before

CU Resources


 Campus Computer Labs – Use Sage (via link above), Latex, Maple, Mathematica, Matlab etc.
 Search by software – e.g. tex, mathematica
 Campus Computer Labs – Use Sage (via link above), Latex, Maple, Mathematica, Matlab etc.
