Introducing a privacy focussed course on blockchains

Ali Azam
3 min readSep 3, 2020

TLDR; If you want to learn about privacy and how you can design your blockchain applications with privacy, I am working on a course which will go through the most widely used privacy techniques and add them to your applications in a very hands on fashion.

Privacy is very fundamental concept to developing blockchain applications, yet there are very little resources out there to learn from, especially knowing all the different techniques used for privacy and there pros and cons, also there is bias within different communities for privacy techniques if they have developed them or have any affiliation with them.

In this course, we want to look at all the privacy techniques and use them first hand to get a feel of when they should and should not be used, the idea is to keep it as simple as possible and develop some cool applications like rock paper scissors on blockchain and more to see how these privacy techniques can be used within your application.

Most of the time, Privacy is regarded as some moon math but the architecture of it is rather simple, take hashes for example, they are the recommended way to store user passwords and have great advantages but often they can be terrifying to software engineers, what hash function to use? how does it work and generally libraries fullfill these needs but we want to look under the blanket and see at a higher level what their properties are and why are they useful without going into maths rabbit hole. Also, just by knowing the various techniques of privacy, one can greatly benefit from them especially when implementing blockchain applications.

The contents of the course are as follows:

  1. Intro to privacy on blockchain
    1.1 Intro and getting started
    1.2 What is a blockchain?
    1.3 What is mining in blockchain
    1.4 What is privacy in blockchain ?
    1.5 Will quantum computing break privacy?
    1.6 A brief look at privacy techniques used in blockchains
    1.6.1 Zcash
    1.6.2 Monero
    1.6.3 Dash
    1.6.4 Mixers
    1.6.5 One time addresses
    1.6.6 Stealth addresses
  2. Implementing a rock paper scissors game on Ethereum
    2.1 Setting up the Environment
    2.2 Writing our first smart contract for rock paper scissors
    2.3 Deploying the contract and playing rock paper scissors on blockchain
    2.4 Implementing basic privacy on our smart contract using hashes
    2.5 A twist in rock paper scissors
    2.6 Conclusion and wrapping up
  3. A deep dive into current privacy blockchains
    3.1 Looking at how ZCash works
    3.2 Looking at how Moneoro works
    3.3 Looking at how Dash works
    3.4 Looking at how MimbleWimble works
  4. Cryptography 101
    4.1 Understanding Hashes/Hash Functions
    4.2 Understanding Signatures
    4.3 Symmetric key and Asymmetric key encryption
    4.4 Commitment Schemes
    4.5 Generating randomnesss
    4.6 Ring Signatures
    4.7 Stealth addresses
    4.8 Zero knowledge Proofs
    4.9 Homomorphic encryption
    4.10 Multiparty computation
    4.11 Merkle Trees
  5. A deep dive into bitcoin privacy
    5.1 Understanding how bitcoin transactions work
    5.2 Bitcoin transaction graph
    5.3 Bitcoin mixers
    5.4 Lightening network
  6. Privacy solutions on ethereum
    6.1 Mixers on Ethereum: Tornado.cash
    6.2 One time addresses
    6.3 Private blockchains
    6.4 Zokrates
    6.5 Aztec
    6.6 EY’s Nightfall

To keep posted about the course and release date, please submit your email here: https://upscri.be/ormtak

If you would like to learn about something which is not on the list, please message me on Twitter @aliazam2251 or email me aliazam2251@gmail.com.

--

--

Ali Azam

A software engineer passionate about blockchain and 5G, experienced in leading many projects including Virtuwind and a well known Blockchain advisor.