SEC-205: Distributed Ledger and Blockchain

Course Syllabus

Course Description

Bitcoin, blockchain technology, and smart contracts represent a trinity of transformative innova- tions that have reshaped the landscape of finance, technology, and beyond. At the heart of this paradigm shift lies Bitcoin, the pioneering cryptocurrency introduced by an anonymous entity known as Satoshi Nakamoto in a groundbreaking whitepaper published in 2008. Bitcoin, often hailed as digital gold, operates on a decentralized network facilitated by blockchain technology, a distributed ledger system that records transactions across a network of computers in a secure and transparent manner. Unlike traditional currencies, which are subject to centralized control by governments and financial institutions, Bitcoin enables peer-to-peer transactions without the need for intermediaries, thereby fostering financial autonomy and circumventing the limitations of traditional banking systems.

Blockchain technology, the underlying innovation powering Bitcoin, represents a decentralized and immutable ledger system that has transcended its initial application in cryptocurrency to revolutionize various industries, ranging from supply chain management to healthcare and beyond. One of the most promising applications of blockchain technology is the concept of smart contracts, self-executing contracts with the terms of the agreement directly written into code.

This competency offers a comprehensive exploration of distributed ledger and blockchain technology. Students will gain insight into the design and development of blockchain systems, delving into their inner workings. Additionally, hands-on lab sessions are incorporated into this competency, providing students with the opportunity to develop their own web 3.0 or decentralized applications (DApps).

General Information

Competency Code SEC-205
Competency Name Distributed Ledger and Blockchain
Competency Credits 4
Competency Duration 7 Weeks (~7.5 Hours Per Week = 52 Hours in Total)
Instructor Dr. Charnon Pattiyanon <charnon@cmkl.ac.th>

Assessing Skills

  1. [SEC-205:00010] Understand how blockchain technology operates in real world use cases. - Successful students will be able to understand how blockchain technology operates in real-world use cases.
  2. [SEC-205:00020] Design and develop a web 3.0 applications using Solidity - Successful students will be able to design and develop a Web 3.0 application that uses blockchain technology and the Solidity programming language as its underlying mechanism.
  3. [SEC-205:00030] Analyze and criticize blockchain privacy and security issues in a comprehensive manner. - Successful students will be able to critically analyze blockchain privacy and security issues in a comprehensive manner.

Class Schedule and Topics

Week Lecture Topic Lab/Practical Session Topic
Week 1 Lecture 1: Introduction to Distributed Ledger and Blockchain
  • Distributed Ledger
  • Centralization and Decentralization
  • Bitcoin and Cryptocurrency
  • Bitcoin's Blockchain
  • How Blockchain Works
[Lecture 1 (PDF)]
  • Assessment Project Announcement
Week 2 Lecture 2: Ethereum and Smart Contract
  • Limitation and Difficulties of Bitcoin's Blockchain
  • Ethereum and Smart Contract
  • Background on Smart Contract Development
[Lecture 2 (PDF)]
  • Lab 1: Introduction to Solidity Development [PDF]
Week 3 Lecture 3: Decentralization
  • Centralized vs. Distributed vs. Decentralized
  • Methods of Decentralization
  • Full-Ecosystem of Decentralization
  • Decentralization in Practice
[Lecture 3 (PDF)]
  • Lab 2: Data Structure in Solidity [PDF]
Week 4 Lecture 4: Consensus Mechanisms
  • Recapitulation of Byzantine General Problems
  • Consensus Protocol for Byzantine Broadcast
  • Attacks for Consensus Protocols
  • Proof-of-Stake
[Lecture 4 (PDF)]
  • Lab 3: Events and Loops in Solidity [PDF]
Week 5 Lecture 5-6: Blockchain Security and Privacy
  • Background of Blockchain Security and Historic Attacks
  • Threats and Vulnerabilities at Each Layered of Blockchain Layered Model
[Lecture 5-6 (PDF)]
  • Lab 4: Inheritance and Contract Interaction [PDF]
Week 6 Lecture 5-6: Blockchain Security and Privacy
  • Blockchain Privacy and Its Types
  • Layer 0, Layer 1, and Layer 2 Protocols for Privacy on Blockchain
[Lecture 5-6 (PDF)]
Week 7 Lecture 6: Decentralized Identity
  • Detailed Background on Identity and Access Management System
  • The Problem with Centralized Identity and Its Evolution
  • Decentralized Identity and Self-Sovereign Identity
[Lecture 7 (PDF)]

Assessment and Submission Guideline

This competency requires each student group to submit one deliverables, which is:

  1. A Final Report: This is the final document summarizing the details of your assessment project. Please refer to the report template provided below.

To support students throughout this competency, the following documents are provided:

Grading Rubric

Final Report Grading Rubric

The final report accounts for 100% of your total score, equivalent to 300 points out of 300 points (based on three assessing skills). Each section in the report carries a different score weight. Please refer to the Final Report Template for the detailed score distribution of each section.