ºÚÁϳԹÏÍø

Internal

CS3BC20 - Blockchain Computing

ºÚÁϳԹÏÍø

CS3BC20-Blockchain Computing

Module Provider: Computer Science
Number of credits: 10 [5 ECTS credits]
Level:6
Terms in which taught: Spring term module
Pre-requisites: CS2DI17 Databases and Information Security or CS2DI17NU Databases and Information Security
Non-modular pre-requisites:
Co-requisites:
Modules excluded:
Current from: 2023/4

Module Convenor: Prof Atta Badii
Email: atta.badii@reading.ac.uk

Type of module:

Summary module description:

The advent of Blockchain technologies as a confluence of distributed systems for transferring value, asymmetric encryption and consensus seeking algorithms has evolved through a trend from web2.0, web3.0, and crowdsourcing promising computing for decentralisation and democratisation of transaction processing.Ìý



The increasing number of potential application domains being considered for the take-up and scale-up of this technology makes a compelling case for the provision of this course.Ìý ÌýThis is to ensure that our Computer Science graduates’ awareness of latest technological developments and their employability prospects are enhanced through gaining a sufficiently deep understanding of this emerging technology.

ÌýÌý

This modules will deliver a theoretical and practical implementation level understanding of the various layers of the Blockchain technology stack including asymmetric encryption, mining (Proof-of-Work), Proof-of-StakeÌý consensus algorithms, Blockchain validation and integration as well as the potential Ethical, Legal and Societal issues arising from failure to incorporate the appropriate security-privacy safeguards.


Aims:

The module provides students with a theoretical and practical understanding of the Blockchain architectural layers involving the implementation of the primary layers, as a simulation of a basic Blockchain, to include transactions processing, blocks structuring, mining and validation. This will include asymmetric encryption, mining (Proof-of-Work), Proof-of-Stake, consensus algorithms, Blockchain validation and privacy-aware integration.



This module also encourages students to develop a set of professional skills, such as an ethically reflective approach to system design, privacy-preserving design, evolutionary system design, modular design and conformance testing.Ìý


Assessable learning outcomes:

At the end of the module studies, students should be able to:




  • Conceptualise the distributed ledger architecture at various levels of abstraction

  • Understand the theoretical underpinning of Blockchain architectural layers

  • Understand the issues relating to the efficient, secure and privacy-aware deployment of Blockchain layers

  • Implement the primary layers of a Blockchain as a laboratory simulation of a small-scale Blockchain. This will help the students assimilate the subject more deeply and gain a systemic understanding of the Blockhain architecture through experience in analysing and building the primary Blockchain components and their integration.Ìý


Additional outcomes:

Building on the Software Engineering, and, System Development Methodology learning acquired in parts 1 & 2; understanding the implications of a design commitment to Responsible Innovation; reflecting on the rationale, benefits and possible societal impacts of deployment of Blockchain for various applications.


Outline content:


  • Introduction to the fundamental concepts of a distributed trustless ledger such as immutability, irreversibility, the layers of Blockchain technology stack; including overview of the architectural layers of a Blockchain, network (peer-to-peer) and the data structures

  • Transactions processing, hashing, asymmetric encryption

  • Digital signature, consensus algorithms

  • Consensus reaching using variants of Proof-of-Work Ìýand Proof-of-Stake algorithms

  • Smart contractsÌý

  • Concepts re integrity and resolution of Blockchain, avoiding duplication of work

  • Byzantine Fault Tolerance: fault tolerance amongst the peer-to-peer network of nodes

  • Merkle root algorithm, forks resolution, interoperability

  • Security & privacy, public versus private (Permissioned, Permissionless) Blockchain

  • Ethically and socially responsible design of BlockchainsÌý