THE UNIVERSITY of EDINBURGH

DEGREE REGULATIONS & PROGRAMMES OF STUDY 2020/2021

Information in the Degree Programme Tables may still be subject to change in response to Covid-19

University Homepage
DRPS Homepage
DRPS Search
DRPS Contact
DRPS : Course Catalogue : School of Informatics : Informatics

Undergraduate Course: Blockchains and Distributed Ledgers (INFR11144)

Course Outline
SchoolSchool of Informatics CollegeCollege of Science and Engineering
Credit level (Normal year taken)SCQF Level 11 (Year 4 Undergraduate) AvailabilityAvailable to all students
SCQF Credits10 ECTS Credits5
SummaryBlockchain technology and distributed ledgers have been hailed as a turning point in scaling information technology services at a global level. Although the digital currency Bitcoin is the best-known Blockchain application today, the technology is set to play a much broader role in cyber security. This course is an introduction to blockchain systems and distributed ledgers, the relevant cryptographic tools and smart contracts programming.
Course description The concept of blockchain will be covered in detail together with the supporting cryptographic technology. Questions that will be covered is why it works and what problems can it solve.

Syllabus:

1. Introduction to blockchain. What is a distributed ledger. Transactions. Digital Signatures.
2. The consensus layer. Basic Properties. Proof of Work.
3. Robust Transaction Ledgers. Properties and Objectives. Permissioned, permissionless ledgers.
4. Privacy Issues. Anonymity, Pseudonymity, Unlinkability. Zero-Knowledge Proofs.
5. Scalability Issues. Byzantine agreement protocols.
6. Blockchain as a platform. Smart Contracts.
7. Secure multiparty computation techniques and their application to blockchain protocols.
8. Alternative techniques to proof of work for blockchain protocols, proof of stake/space.
9. Game theoretic analysis of blockchain protocols.
10. Name and object registries. Reputation systems. Policy issues related to blockchain.
Entry Requirements (not applicable to Visiting Students)
Pre-requisites It is RECOMMENDED that students have passed Computer Security (INFR10058) AND Algorithms and Data Structures (INFR10052)
Co-requisites It is RECOMMENDED that students also take Introduction to Modern Cryptography (INFR11131)
Prohibited Combinations Other requirements None
Information for Visiting Students
Pre-requisitesThis course is open to full year Visiting Students only, as the course is delivered in Semester 1 and examined at the end of Semester 2.
High Demand Course? Yes
Course Delivery Information
Academic year 2020/21, Available to all students (SV1) Quota:  None
Course Start Semester 1
Timetable Timetable
Learning and Teaching activities (Further Info) Total Hours: 100 ( Lecture Hours 20, Programme Level Learning and Teaching Hours 2, Directed Learning and Independent Learning Hours 78 )
Assessment (Further Info) Written Exam 0 %, Coursework 100 %, Practical Exam 0 %
Additional Information (Assessment) Coursework will be divided into 4 assignments. Each assignment will require short answers to questions related to taught material, as well as solving theoretical and/or programming assignments related to smart contracts and their analysis. The topic and weight of each assignment with respect to the final grade will be as follows:

Assignment #1: Interacting with a Distributed Ledger and Basic Principles (20%)
Assignment #2: Smart Contract Programming Part I (30%)
Assignment #3: Smart Contract Programming Part II (30%)
Assignment #4: Designing and deploying IT services using a distributed ledger (20%)
Feedback Not entered
No Exam Information
Learning Outcomes
On completion of this course, the student will be able to:
  1. Explain and Analyze protocols and systems involving multiple participants and their security properties.
  2. Demonstrate the ability to think critically about cybersecurity.
  3. Program smart contracts as part of scalable information technology services.
  4. Analyse and evaluate smart contract code utilizing basic cryptographic primitives such as digital signatures and hash functions.
Reading List
Bitcoin and Cryptocurrency Technologies by Arvind Narayanan, Joseph Bonneau, Edward Felten, Andrew Miller, Steven Goldfeder.
http://bitcoinbook.cs.princeton.edu

The Bitcoin Backbone Protocol: Analysis and Applications, Juan Garay and Aggelos Kiayias and Nikos Leonardos.
https://eprint.iacr.org/2014/765
Additional Information
Graduate Attributes and Skills Familiarity with cryptography, cyber security, decentralized systems, databases, open source software.

Characteristic 1, Level 5.
Characteristic 2, Level 10.
Characteristic 3, Level 5.
Characteristic 4, Level 5.
Characteristic 5, Level 5.
Special Arrangements Basic understanding of probability.
Discrete mathematics.
Programming.
KeywordsBitcoin,Distributed Systems,Cryptography,BDL
Contacts
Course organiserProf Aggelos Kiayias
Tel: (031 6)50 5129
Email: akiayias@inf.ed.ac.uk
Course secretaryMiss Clara Fraser
Tel: (0131 6)51 4164
Email: clara.fraser@ed.ac.uk
Navigation
Help & Information
Home
Introduction
Glossary
Search DPTs and Courses
Regulations
Regulations
Degree Programmes
Introduction
Browse DPTs
Courses
Introduction
Humanities and Social Science
Science and Engineering
Medicine and Veterinary Medicine
Other Information
Combined Course Timetable
Prospectuses
Important Information