Skip to content

Resources for a unit or course in cryptography without prerequisites from a number-theoretic perspective.

License

Notifications You must be signed in to change notification settings

kaince/cryptography

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Resources for a First-Year College Mathematical Cryptography Course

Resources for a unit or course in cryptography without prerequisites from a number-theoretic perspective, originally developed for the publication Cross-Curricular Pure Math Applications in the section Modular Arithmetic through Secret Codes.

To access Jupyter notebooks (made for students to learn how to write basic SageMath/Python code for basic ciphers), see Python Modules.

The order in which the modules build on themselves is as follows. There is some flexibility (for example, whether and when you assign the Euclidean Algorithm and Frequency Analysis modules), but for the most part I strongly recommend following the ordering below when introducing basic ciphers.

  1. ShiftEncrypt: Encrypting Shift Ciphers
  2. ShiftDecrypt: Decrypting Shift Ciphers with Known Key
  3. BruteShift: Brute-Force Cryptanalysis of Shift Ciphers
  4. AffineEncrypt: Encrypting Affine Ciphers
  5. Frequency Analysis
  6. Euclidean Algorithm
  7. VigenereEncrypt: Encrypting Vigenère Ciphers

The rubrics I use to grade these modules are available upon request.

About

Resources for a unit or course in cryptography without prerequisites from a number-theoretic perspective.

Resources

License

Stars

Watchers

Forks

Packages

No packages published