2020 Topics on Mathematical and Computing Science B

Font size  SML

Register update notification mail Add to favorite lecture list
Academic unit or major
Graduate major in Mathematical and Computing Science
Instructor(s)
Rebello Larangeira Junior Mario  Tanaka Keisuke 
Class Format
Lecture    (ZOOM)
Media-enhanced courses
Day/Period(Room No.)
Tue5-6(W831)  Fri5-6(W831)  
Group
-
Course number
MCS.T415
Credits
2
Academic year
2020
Offered quarter
1Q
Syllabus updated
2020/9/18
Lecture notes updated
-
Language used
English
Access Index

Course description and aims

Cryptocurrency, as the newest term is used, is a old dream for engineers and researchers, in particular, cryptographers. In the old days several other terms were also coined, as for example, electronic cash and digital money, however is that the most successful term, and piece of engineering, is what we see nowadays in the news: Cryptocurrency.
In this course, students will learn history, theory, and practice of cryptocurrencies: components of cryptocurrency including wallets, mining, blockchain, and ledgers, and also cryptographic primitives including security models, commitments, secret sharing, and zero knowledge proofs.

Student learning outcomes

By the end of this course, students will be able to understand:
1) History, theory, and design of cryptocurrencies
2) Practical description of cryptocurrencies
3) Components of cryptocurrency and cryptographic primitives.

Keywords

cryptocurrency, blockchain, cryptography, information security, distributed system, bitcoin

Competencies that will be developed

Specialist skills Intercultural skills Communication skills Critical thinking skills Practical and/or problem-solving skills

Class flow

Each class offers a standard type of lecture.

Course schedule/Required learning

  Course schedule Required learning
Class 1 Overview and Security Models Understand the contents of the course and the concept of provable security for cryptographic systems
Class 2 History of Cryptocurrencies, Brief Description of Bitcoin Understand basic cryptocurrency concepts, the history of cryptographic money and the general structure of the Bitcoin system
Class 3 Bitcoin Building Blocks Understand basic cryptographic tools like hash function, digital signatures, Merkle-tree, and have a general understanding of ledger, blockchain and mining
Class 4 Blockchain and Ledger Understand the structure of the blockchain and its properties
Class 5 Provably Security Understand the concept of provable security for cryptographic systems
Class 6 Hash and Commitment Understand the concept of commitment, its security definition and constructions based on hash functions, Merkle-trees and algebraic computational problems
Class 7 Signature (1) Understand the definitions and the security of signature
Class 8 Signature (2) Understand some concrete construction of fully secure signature
Class 9 Consensus Understand the history of consensus, the different versions and basic definitions, and its relation to cryptocurrencies
Class 10 Zero Knowledge Proof Understand the concept of proof of knowledge and zero knowledge, as well as simple constructions of zero knowledge proofs of knowledge for discrete logarithm relations
Class 11 Mining Understand the advantages, the disadvantages, and the attacks of mining
Class 12 Wallets Understand the different types of wallet
Class 13 Smart Contracts Understand basic definitions, the Bitcoin script language and the Ethereum smart contract platform
Class 14 Advanced Cryptocurrencies and Blockchain Applications Understand the basic privacy notions for cryptocurrency systems and the applications to privacy preserving smart contracts and credential systems

Out-of-Class Study Time (Preparation and Review)

To enhance effective learning, students are encouraged to spend approximately 100 minutes preparing for class and another 100 minutes reviewing class content afterwards (including assignments) for each class.
They should do so by referring to textbooks and other course material.

Textbook(s)

Textbooks will not be used in this course.

Reference books, course materials, etc.

References will be announced in classes.

Assessment criteria and methods

It will consist of two reports during the course. The first will be delivered by the end of Lecture 7, and the second by the end of Lecture 14.

Related courses

  • MCS.T213 : Introduction to Algorithms and Data Structures
  • MCS.T214 : Theory of Automata and Languages
  • MCS.T323 : Theory of Computation
  • MCS.T406 : Distributed Systems
  • XCO.T473 : Foundation of Cybersecurity

Prerequisites (i.e., required knowledge, skills, courses, etc.)

None. However, the knowledge on the basic notions of computer science can help students to understand the contents of the course smoothly.

Page Top