Skip to content

dylanmc/CryptoBook

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
src
 
 
 
 
 
 
 
 
 
 

Goals of this book

Shooting for high-school-ish aged students who want to learn about cryptography, and are willing to learn about math and programming along the way.

Beginnings of an Outline

  • Introduction
    • what to expect, what we expect of you
    • encrypting punchlines with Reverse-Caesar codewheels
  • Encoding information - Binary, ASCII, UTF-8, Morse code, Huffman encoding
    • each chapter begins with "what you'll get out of this chapter", which can also be "if you know all this, you can skim this chapter"
  • Introduction to Cryptol
    • data types
    • sequences, comprehensions
    • functions
  • Implementing the Caesar Cipher in Cryptol
  • The Enigma
    • a bit of history
    • building one with paper
    • implementing the Enigma in Cryptol

Tools used to build the book

I'm writing the book in ReStructuredText, and converting to PDF and HTML via Sphinx. (I switched from Pandoc/Markdown to make it easier to generate the index, and other improvements)

About

Learning Cryptography, math and programming with Cryptol (and maybe some Python)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published