Blockchain and Smart Contract

It is a FinTech-related course with an emphasis on the aspects of blockchain and smart contract theory, operation and implementation issues for the next generation of FinTech leaders with proven deep technical and managerial skills, experience, and credibility to design, engineer, implement, and manage their overall blockchain program and smart contract, and explore the possibility of applying blockchain and smart contract in new and innovative applications. This course will also discuss the certain concept of IoT (Internet of Things) to enrich the application of smart contract, as well as the modern Cloud-based computation model, such as virtual machine and Docker container.

It is designed for senior students who wish to work in positions such as FinTech Consultant, Blockchain Engineer, IT Director/Manager, FinTech Architect, FinTech Analyst, and Chief Information Officer. The design of this course is to bridge the gap between academic theory and industrial practice. The student will learn why and how blockchain and smart contract are designed, what is the limitation of blockchain and smart contract, how to apply blockchain and smart contract in the real-world application, how FinTech affects our finance operation and innovation, and the security issues related to blockchain and smart contract.

Class Info

  • Instructor: Shun-Wen Hsiao, NCCU MIS Dept., hsiaom at
  • Lectures: Tuesday 234 (09:10 ~ 12:00).
  • Classroom: 學思 040205.
  • TA: TBA.
  • Office Hours: By appointment only.
  • Google Groups:!forum/nccu-bcsc
  • Note: it is an English taught course.

Announcements (Spring 2017)

  • 2/1: Hiring TA who has experienced in Bitcoin or Ethereum. TA needs to support learning activities in class and online forum, preparing the classroom, helping during exams, grading homework and project, and tutoring students. Please contact me by email directly or contact the department course TA.Please contact me by email directly or contact the department course TA.
  • 3/21: Homework hand-in status can be found here.

Course Objectives & Learning Outcomes

This course covers several topics, such as FinTech and digital currency, blockchain and Bitcoin, smart contract and Ethereum, and Internet of Things. The course objective is to comprehend the theory behind blockchain and smart contract (in order to understand the limitation and applicable scenario of blockchain and smart contract) and to be able to design a new blockchain or smart contract based application. The main topics include but not limited to:

  • The history and application of FinTech and digital currency
  • Hashcash, distributed consensus, and proof-of-work
  • Design, analysis, and implementation of blockchain
  • Underlying technique of blockchain: cryptography and virtual machine
  • Design, analysis, and implementation of smart contract
  • Create private blockchain and smart contract
  • IoT and smart contract
  • Case study
  • Security issue

Schedule (Spring 2017)

  1. 2/21: FinTech and Digital Currency [00-Syllabus] [01-DigitalCurrency] [HW01]
  2. 2/28: No class. 228 Memorial Day.
  3. 3/7: Blockchain 101 [02-BlockchainBasics]
  4. 3/14: Bitcoin and Transaction [03-BitcoinI] [HW02]
  5. 3/21: Script Language [04-BitcoinII]
  6. 3/28: Lab: Bitcoin Core. Announce take-home essay exam. [HW03] [TERM]
  7. 4/4: No class. Children’s Day
  8. 4/11: Bitcoin Network [05-BitcoinIII] [02M-BlockchainBasicsMore] [Bitcoin_APIs.ipynb]
  9. 4/18 (M): Private Blockchain and Security Issues. Announce term project. [HW04]
  10. 4/25: Smart Contract [06-EthereumI] [07-EthereumII]
  11. 5/2: Ethereum Lab [BN01]
  12. 5/9: Ethereum and Contract Script Language [08-EthereumIII] [HW05]
  13. 5/16: Smart Contract Case Studies [09-EthereumIV] [HW06] [Smart Contracts: 12 Use Cases for Business & Beyond by Nick Szabo]
  14. 5/23: Private Smart Contract [WannaCry.ipynb] [Quantitative Analysis of the Full Bitcoin Transaction Graph by D. Ron and A. Samir]
  15. 5/30: No class. Dragon Boat Festival
  16. 6/6: Internet of Things [IoT Trend Watch 2017 by IHS Markit] or a backup file.
  17. 6/13: Term Project Presentation
  18. 6/20 (F): Smart Contract Security Issues [10-Ethereum-V]

Grading Policy

  • Homework 30%
  • Participation 10%: attendance and discussion
  • Term Project 30%: implement a smart contract application on a private blockchain. Find your classmates to form a group (the number of group member will be announced according to the number of students in this class).
  • Exam 30%: an individual take-home essay exam (graded according to the quality of in-depth argument with proper citations to support your arguments), and working in groups is considered cheating.