09-15, 15:15–16:35 (Europe/Berlin), Atelier - Workshop 1
Elliptic curve cryptography underpins the trillion dollar economy of cryptocurrencies. But it's often seen as some sort of sorcery, meant only for experts. While it's true that cryptography is a minefield, and therefore you should never roll your own crypto, it's still a useful method to build an understanding of cryptocurrencies from first principles.
In this workshop, we'll cover basic algebra necessary to get a theoretical understanding of elliptic curves, and learn how they are used for signing and verifying transactions. We'll then put this theory to practice by rolling our own toy implementation of the elliptic curve used in Ethereum and Bitcoin.
We'll cover the following topics during the workshop, although not in the same order. Please note that this programme may be subject to minor changes.
Foundational stuff
* Introduction to elliptic curves
* Field and group theory
* Elliptic curves under the hood
* Signature and verification (ECDSA)
Practical stuff
* Representing elliptic curves in code
* Implementing primitives for elliptic curve operations
* Implementing ECDSA
Fun stuff
* The Playstation 3 hack
* Backdoors in elliptic curves (you may leave the workshop paranoid)
No prior background in cryptography is necessary, but some programming experience is recommended to fully engage in the hands-on implementation exercises. Make sure to bring pen and paper for working through the mathematical concepts, as well as a laptop configured to run Python or NodeJS code.
Anirudha is a Staff Engineer at Brave, where he works on web3 initiatives, notably the multi-chain Brave Wallet. Previously, he worked at Ledger on custody software for financial institutions, and also briefly on algorithms for quantum computers. He enjoys travelling, attending mixers, and playing the guitar.