Blockchain Technology Workshop

Objective:
To catapult students into the world of blockchain - what blockchain is, how blockchain is useful, and how to use blockchain.

Description:
The school will organise the blockchain technology workshops to students. The series of workshops cover mathematics fundamentals for cryptography and fundamentals for practical blockchain applications.

Students will be taught some fundamental concepts from Number Theory and cryptography. The course will be conducted through use of lectures that emphasise on interaction between the instructor and the students, games and puzzle solving both individually and in group effort, and mini-group projects.

Besides, there will be interactive classroom instruction and a capstone design project to apply their classroom knowledge. The course cumulates with a 10-minute presentation and peer evaluations. Students will be provided with a decentralised network of blockchain environment for the students to build their projects on.

The school will support its students to participate in a competition of blockchain solution, supporting them to attend advanced training organised by the organiser and providing technical support to the students after the completion of workshops.

Hardware
  • PC / laptop / tablet computer with Internet connection to a distributed network of blockchain nodes
Software
  • Solidity (language for implementing smart contracts) or
  • Common programming languages like Javascript / C# / Python / Java / C++
Cloud Services
  • Multiple VMs for decentralised network of Blockchain
Major Activities
  1. Mathematics Fundamentals for Cryptography:
    1. Introduction to cryptography (3-hours lecture)
      1. Basis of cryptography, e.g. keys, ciphers, encryption & decryption
      2. Caesar Cipher and how to break them
      3. Prime numbers and factorisation of integers
      4. Modular arithmetic and solving congruence equation
    2. Mathematics of cryptography (3-hours lecture)
      1. Euclidean algorithm for finding greatest common divisor (GCD) and multiplicative inverses
      2. Fermat's little theorem
      3. Concept of a group
      4. Euler phi function
    3. Public Key Cryptography (3-hours lab session)
      1. RSA Public Key Cryptography
      2. Public Key Infrastructure
      3. How to setup your own cryptographic key and cryptography-based identity

  2. Fundamentals for Practical Blockchain Applications:
    1. Introduction to Blockchain (3-hours lecture)
      1. Shared Ledger: trust boundaries, distributed networks, permission networks, fault tolerance
      2. Cryptography: probability, hash, digital signatures
      3. Consensus: double spending, reconciliation
      4. Shared Contract: issues with smart contracts
    2. Blockchain Applications (3-hours lecture)
      1. Real Contracts: liability, jurisdiction, tort, resolution
      2. Privacy: data policy and management issues, PII (personally identifiable info), pseudonymity
      3. Governance: how to (mis)manage a network
      4. Self-Sovereign Identity: attesters, issuers, verifiers
    3. Blockchain Application (18-hours project session)
      1. Problem identification: conditions for blockchain use, sample problems
      2. Solution design: improper blockchain uses & cases
      3. Value proposition: identify stakeholders, risks, value
      4. User experience design
      5. Success modelling: KPI, distribution, project management

  3. Share the challenges and lessons learnt
Learning Objective(s)
  • Grasp the fundamental concept of blockchain technologies and decentralisation
  • Apply computational thinking to solve the mathematical problem of cryptocurrencies
  • Appreciate how disruptive innovations transform the future digital exchange
Duration
  • Theoretical session : 3 hours x 4
  • Practical session : 21 hours
Difficulty
  • Hard
Target Level S4 - S6
Target No. of Students About 20 students per workshop