Blokkjede-teknologi og formelle metoder

Masteremne

Emnebeskrivelse

Mål og innhald

The course aims at providing students with knowledge of the state-of-the-art blockchain technology. Moreover, students will learn how to use the tools and techniques of formal logic and theoretical computer science to analyse and reason about various blockchain aspects and properties. As a result of the course, students will have an in-depth understanding of formal methods for blockchain and be able to carry out research in the area.

As blockchain technology becomes more and more ubiquitous, there is a growing demand for rigorous and formal understanding of its key aspects. The course will provide an advanced overview of blockchain theory and models with detailed analyses of some of its implementations. A special focus will be set on various notions of consensus, like proof-of-work and proof-of-stake. Both the blockchain itself and consensus will be then formally analysed using the notions and techniques of theoretical computer science, e.g. Merkle trees and modal logic. We will also cover one of the most prominent applications of blockchains - smart contracts. The focus will be on Ethereum smart contracts, and their implementation in Solidity programming language. The course will also include a detailed overview of cryptographic methods used to ensure the safety on a blockchain.

The course material will include selected chapters from textbooks and research papers.

Læringsutbyte

By the end of the course a participating student will have the following knowledge, skills, and general competence.

Knowledge

  • The student has rigorous and advanced understanding of blockchains and formal methods for them.

Skills

  • The student is able to discuss and present state-of-the-art research papers on formal aspects of blockchain that allows them to conduct a research project in the area. Moreover, the student has a firm grasp on smart contracts and is able to prototype them in Solidity programming language.

General competence

  • The student is able to read advanced research papers on formal methods for blockchain and verification of smart contracts.

Studiepoeng, omfang

15 ECTS

Studienivå (studiesyklus)

Master

Undervisningssemester

Autumn
Krav til forkunnskapar
INFO104 or equivalent and INFO132 or equivalent.
Tilrådde forkunnskapar
Any background in logic or formal methods would be useful.
Studiepoengsreduksjon
INFO384B 10 ECTS
Krav til studierett
Master's programme in Information Science. Other master students are allowed to apply for admission.
Arbeids- og undervisningsformer
Lectures and seminars.
Obligatorisk undervisningsaktivitet

Attendance of 80% of course sessions is required. There will be compulsory assignments in the course.

There will be compulsory assignments in the course. The compulsory assignments must be approved to be allowed to take the exam.

The approved mandatory assignments can be carried over to the following semester, but not beyond. 

Vurderingsformer

The assessment comprises of two parts:

  • Written exam (70%)
  • Three graded assignments (30%)

Grades for each part of assessment and the final grade will be published in Studentweb.

The exam assignment will be given in the language of instruction in the course.

The exam answer must be submitted in the same language as the exam assignment.

Karakterskala
A-F
Vurderingssemester
Assessment in teaching semester
Litteraturliste
Vitenskapelige artikler.
Emneevaluering
All courses are evaluated according to UiB's system for quality assurance of education.
Hjelpemiddel til eksamen

Written exam: Dictionary preapproved by the Faculty

Graded assignments: None

Programansvarleg
The Information Science Programme Committee at the Department of Information Science and Media Studies
Administrativt ansvarleg
The Department of Information Science and Media Studies at the Faculty of Social Sciences has the administrative responsibility for the course