FIXME all links are wrong right now ⚠

SEE https://github.com/Polkadot-Blockchain-Academy/pba-content/pull/851/

Module 1: Cryptography

β€œCryptography rearranges power: it configures who can do what, from what”

Phillip Rogaway, The Moral Character of Cryptographic Work

Lessons Plan

This module consists of a combination of lectures, activities, and sections of the accompanying exercises to to students at what time. As there is a large amount of variance in student experience around cryptography, we want to make sure that we have a variety of content for students of different experience levels.

Graded Assignment

All graded assignments and solutions must remain private to the Academy staff, faculty, and enrolled students!

There is a private to the Academy graded exercise, in a template repository titled pba-cryptography--master that should be introduced after the first lectures are complete. Instructors should _create a per cohort, private, derived from the master copy, make it a template repo, and configure the cohort Github Classroom to use this new repo as an assignment.

The 'px... assignment problem' sections indicates that students are now capable of completing them with the content so far covered. They should be encouraged to start working on them as time allows outside of class time! They should not zone-out of class to complete this during class time, they should prioritize in-class activities and exercises over working on the assignment!

Day 1

Morning

  1. 1-Intro
  2. 2-Addresses
  3. p1_hashing assignment problem
  4. p9_attacks::low_entropy_hash assignment problem

Afternoon

  1. 3-Hashes
  2. p2_addresses assignment problem
  3. p3_encryption assignment problem
  4. p8_aes_modes assignment problem for advanced students β˜• Break
  5. Many time pad assignment problem

Day 2

Morning

  1. 4-Encryption
  2. 5-Basic_Signatures
  3. p4_signing assignment problem
  4. β˜• Break
  5. 6-Advanced_Signatures
  6. p6_merkle assignment problem

Afternoon

  1. 7-Hash_Based_Data_Structures-slides
  2. p5_data_integrity_and_recovery assignment problem
  3. p7_exotics assignment problem if it exists
  4. β˜• Break
  5. VRF poker

Day 3 (0.5 day)

Morning

  1. 8-Exotic_Primitives
  2. 9-Cryptography_In_Context
  3. p9_attacks::timing_attacks assignment problem