Modern Cryptography from Scratch, in Scratch

A talk from EMF 2022 by David Buchanan

On Sunday June 5, 2022 at in Stage A

Scratch is a programming environment aimed at children ages 8 to 16. It's simple and easy to learn, but lacks many features that experienced programmers have come to expect, such as version control, bitwise operators, or integers!

This talk provides a high-level overview of authenticated encryption with ChaCha20-Poly1305, and X25519 Elliptic-Curve Diffie-Hellman key exchange (both used in modern protocols), and how we overcame the challenges of implementing them efficiently in Scratch.

The talk is aimed at those with an intermediate background in programming and maths, but not necessarily cryptography. Hopefully I'll make modern cryptography look a bit less inscrutable, while also showing that Scratch is a "real" programming language.