A Hyperledger Lab focused developing materials for a university course. This repository contains work in progress.
Module | Lab Number | Topic | Contents | Support files |
---|---|---|---|---|
I | Lab 01 | Fundamentals on Distributed Systems | -Introduction on distributed systems -Introduction on state machine replication -Introduction on consensus -RAFT algorithm |
|
I | Lab 02 | Fundamentals on Cryptography and Security | -Background on Cryptography: symmetric and asymmetric cryptography, and digital signatures -Background on Security: authentication, authorization, accountability -RSA algorithm |
RSA implementation |
I | Lab 03 | A Primer on Blockchain | -Introduction to blockchain -Public vs private blockchains |
Blockchain4Students |
Provide a reliable basis for university students to learn blockchain through Hyperledger Fabric, and, optionally, other Hyperledger technologies.
This course is a 7.5 ECTS master level course that assumes 3 hours of theory per week + 1.5 weeks of practical classes (laboratory) per week. This course implements the laboratory clsases.
The course is divided into two modules: Module I introduces the technology (labs 1-3) and Module II focuses on Hyperledger Fabric (labs 4-8). For universities using trimesters, the course can be separated into the two modules (1 per trimester).
For universities using semesters, the whole course (labs 1-9) can be taught in that semester.
- Understand the concepts in which blockchain is based (labs 1 and 2), what is blockchain, and which problems it can solve (lab 3)
- (optionally) Know how Ethereum and Hyperledger Besu work. I will be able to write simple smart contracts and deploy them on several networks (lab 4)
- Know Hyperledeger Fabric's components in detail, as well as its architecture and transactional model (labs 5,6,7)
- Be able to write smart contracts (chaincode) for Hyperledger Fabric, and bootstrap a Hyperledger Fabric network running those contracts (labs 5,6,7)
- Understand advanced concepts on the area of consensus, using Hyperledger Umbra (labs 8, 9)
docs
- contains rendered labs
source
- contains the LaTeX sources for the labs
support
- contains the support files for the labs
Your contributions are very welcome! 🎉🎉
Please check the contributing guide
- Rafael Belchior <rafael.belchior (at) tecnico (dot) ulisboa (dot) pt>
- Catarina Pedreira <catarina.pedreira (at) tecnico (dot) ulisboa (dot) pt>
- Iulia Mihaiu <iulia.mihaiu (at) student (dot) unitbv (dot) ro>
- Rafael Soares <joao.rafael.pinto.soares (at) tecnico (dot) ulisboa (dot) pt>
This project is part of Hyperledger Labs and Hyperledger Summer Internships.
This project is idealized and greatly supported by:
- David Huseby - <dhuseby (at) linuxfoundation (dot) org>