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.
- Elliptic Curve Cryptography 2020 Panels (experts talking about the cutting edge of all (mostly but not just elliptic curve) crypto) and Curated Talks (this year’s big developments in (mostly elliptic curve) crypto) — see also past years
- eprint server (where new research appears)
- Major cryptography conferences, most of which have video recorded talks: PQCrypto, CRYPTO, Eurocrypt, Asiacrypt, another this year was a Simons Institute event.
Remote Learning Resources
- Do it yourself document camera to share your notebook writing.
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 Jean-Philippe 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.
- CU Sage Server – please sign up for an account asap.
- 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.
- Introduction to Latex – installing and how to type.
- Detexify – To find a symbol you want to know.
- WriteLatex.Com – No need to install software or visit the lab – typeset online!
- Templates: tex file and expected output.
- 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.
- US Army Naval cipher device M-94 applet – Play with it online
- 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.
-