As always this crypto space moves fast 🚀 and so this is a work in progress 🚧
The course website is hosted on Canvas (https://canvas.aut.ac.nz/courses/18030), however you need to be an enrolled student to login. This site serves as the open-source version. (You will still need to login to Canvas to view the assessment criteria and particiapate in the course discussion.)
Lectures are Mondays 09:00 am - 11:00 am in WZ602 beginning July 15, 2024
Tutorials are Fridays 10:00 am - 12:00 pm in WZ602 beginning July 19, 2024
Blockchain and Cryptocurency Technology intends to introduce you to the technology, beginning with Bitcoin, that makes peer-to-peer decentralised cash possible. Most of the topics will be applied to Bitcoin and Ethereum, and look into the solutions engineers are coming up with to build out these distributed systems. We will focus on the technilogical, but none of it is possible without the social and thus many topics have deep roots in the human societies we have constructed.
Students are expected to create, and as such there is a large emphasis on the project which is wide-ranging and open-ended. You are expected to show what you've done at the end of semester, this is via mixed methods of presentation/ video/ demonstration/ discussion/ and written reporting. To get credit, You 👏 Must 👏 SHOW 👏 What 👏 You've 👏 Done. Assignment structure and details are on Canvas.
- Introduction & Bitcoin
- Cryptography
- Web3 & 🚀Seminar⚡ by Ryan Johnson-Hunt
- Consensus Part I: Proof of Work
- Consensus Part II: Proof of Stake & Alternatives
- Scaling
- Wallets & Tokens
- Ethereum
- Privacy
- Security
- Digital Assets
- The Return to Money
Tutorial 1 - Blockchain search and discovery
Tutorial 2 - Python Part I - Block structure, hashing & merkle trees📊✔️
Tutorial 3 - Project Time
Tutorial 4 - Python Part II - Elliptic curve cryptography📊✔️
Tutorial 5 - 🚀Seminar⚡ with Base58 & Python Part III - Proof-of-Work: mining, difficulty, probability📊✔️
Tutorial 6 - Remix Part I - Solidity & IDE📊✔️
Tutorial 7 - Remix Part II - Metamask & Wallets📊✔️
Tutorial 8 - Two-minute Presentations
Tutorial 9 - NFTs Part I📊✔️
Tutorial 10 - IPFS & NFTs Part II📊✔️
Tutorial 11 - Project Time & Portfolio Wrap-up
Tutorial 12 - Project Presentation
- Course Discussion forum (you also earn participation credit here)
- ChatGPT - Get an account!
Resources that may be helpful for the technical aspects of this course
- The whole shebang from FreeCodeCamp - Web3 Ultimate Course
- YouTube tutorial by Nader Dabit - Full-stack ethereum development
- Still one of the best - CryptoZombies
- More listed here
(Open Source only, of course [and I hesitate to include Coursera links])
- Cryptocurrency Engineering And Design (MIT)
- Bitcoin and Cryptocurrency Technologies (Princeton)
- CS251: Blockchain Technologies (Stanford)
- Resistance Money (Wyoming)
- RMIT Blockchain Innovation Hub (Melbourne)
- Decentralized Systems Lab (Illinois)
- digital currency initiative (MIT)
- UZH Blockchain Center (Zurich)
- ETH Blockchain Initiative (ETH Zurich)
- UNIC Blockchain (Nicosia)
Notice something that doesn't seem right? Could be explained better? Have an analogy that helps with your understanding? Want to include something new that I haven't? Feel free to fork and submit a pull-request. It can also be good practise (and an easy way) to build your contributions.
Licensed under a highly permissive CC-zero to promote the widest distribution possible. Please do as you may with the course content. If you feel attribution is beneficial you may link back here. The Creative Commons CC0 Public Domain Dedication waives copyright interest in a work you've created and dedicates it to the world-wide public domain. Use CC0 to opt out of copyright entirely and ensure your work has the widest reach. As with the Unlicense and typical software licenses, CC0 disclaims warranties. CC0 is very similar to the Unlicense.