Lectures Publications Theses Events


Important dates

Distributed Systems Advanced & Blockchain (DSA)

alt text

DSA Challenge Task HS 2019 Winner

The winning group is: Marco Keller and Martin Iten.

I was impressed by their simple yet efficient design. Their blockchain-based four-in-a-row met all the requirements and showed how a truly decentralized solution could be built. The players can bet their stake, while the platform provider gets its share as well. This game was implemented on Ethereum with web3.js and WebRTC.

The contents of the lecture are still being defined. Thus, topics below are just an indication. The PDFs and other files are accessible within the HSR network. If you want to access these files from home, use VPN. The lecture will take place Wednesdays from 08:10 - 09:50 in 1.201. The exercise will take place after the lecture in the same room.

NrDatePreliminary TopicsWhoFiles
0118.09.2019Admin / Miniproject / Repetition VSSThomas BocekDSA-HS19-01-Admin_v2.pdf, DSA-HS19-01-VSS_v4.pdf
0225.09.2019Repetition VSS / P2P BasicsThomas BocekDSA-HS19-02-VSS_v3.pdf
0302.10.2019WebRTC / TomP2PThomas BocekDSA-HS19-03-WebRTC_v2.pdf
0409.10.2019P2P with TomP2PThomas BocekDSA-HS19-04-TomP2P_v3.pdf
0516.10.2019Ethereum & SolidityThomas BocekDSA-HS19-05-Ethereum_v2.pdf
0623.10.2019Ethereum & Solidity / ICOs / NEOThomas BocekDSA-HS19-06-ETH-ICO-NEO_v3.pdf
0730.10.2019IOTA / PoS, and BazoThomas BocekDSA-HS19-07-IOTA-Bazo_v2.pdf
0806.11.2019Classic Consenus, Efficient Broadcast, ProtocolsThomas Bocekold DSA_Exam_2018-HS.pdf, DSA-HS19-08-Consensus_Protocol_v2.pdf
0913.11.2019Exam Preparation and Applied CryptographyThomas BocekDSA-HS19-09-ExamPrep_ECC_v2.pdf
1020.11.2019Bitcoin Advanced, LightningChristian DeckerDSA-HS19-10-Decker.pdf
1127.11.2019MoneroSebastian KüngDSA-HS19-11-Kueng.pdf
1204.12.2019Crypto Mining/Admin(challenge task, exam, feedback), NEOTolino Nello, Guilherme Sperb MachadoDSA-HS19-12-Tolino.pdf, DSA-HS19-12-Machado.pdf
1311.12.2019Challenge Task PresentationsStudentsTime slot poll
1418.12.2019Fragestunde und FeedbackThomas BocekDSA-HS19-14-Admin.pdf
1508.01.2020BeratungswocheThomas Bocek

Quiz Questions

Challenge Task HS 2019

This semester's challenge task (CT) is the design and implementation of a fully-distributed, P2P gambling game.

The system consists of two parts:

  1. Board games, this could be for example tic-tac-toe, four-in-a-row, poker, UNO. The board game has to be implemented with a waiting room and a chat. For groups with 3 members, random number have to be implemented as well. This could be used for example for shuffling cards.
  2. Gambling, this could be for example before the start, all the players pay in pot and the winner gets all.


All requirements below must be met in order to pass the challenge task.

  1. Full decentralization and P2P for the board game (e.g., WebRTC, TomP2P, libp2p)
  2. Waiting room with chat (groups with 3 members need to implement random numbers)
  3. Fully decentralized and P2P mechanisms for gambling (e.g., Bitcoin/Ethereum)

Further requirements are:

If one requirement is missing, you cannot write the exam.

Libraries and Tools

The items below represent supporting libraries, tools, or references that are recommended to be taken into consideration.



There will be one milestone during the CT. The milestone shall include a fully distributed P2P system, preferably including basic functionality.

Please send your source code to your supervisors until November 6th 23:59. Make sure that your submission includes setup instructions. If the supervisors are not able to run your application using the instructions given, you will be given a second chance to submit your source code a week later in order to still pass the attestation. If you fail the second chance, you won't be able to attend the examination.

Presentation and Evaluation

Challenge task presentations and demonstrations will take place on December 11th. On these dates, the groups will present and demonstrate their results, which will be evaluated by a jury. Presentations and demos on dates will start at 08:10 in 1.201.

Note: The participation of the CT is mandatory for the permission to attend the exam. There will be no grade and you can only pass or fail the CT. However, keep in mind that participation will greatly reduce the effort you have to spend studying for the exam.


There will be groups of 2, in case of an uneven number, groups of 3 are allowed. The group with 3 members have the additional requirement to include a random number for its game (e.g., shuffling cards).

01Christoph S. / Michael S. / Martin M.(handed-in)
02Yannick H. / Lukas C. / Rudolf R.(handed-in)passed dsa-yannick-lukas-rudolf.pptx, dsa-yannick-lukas-rudolf.zip
03David Z. / Martin S.(handed-in)passed dsa-david-martin.pptx, dsa-david-martin.zip
04Dario C. / Andreas F.(handed-in)passed dsa-andreas-dario.pptx, dsa-andreas-dario.zip
05Marco K. / Martin I.(handed-in)passed dsa-martin-marco.pdf, dsa-martin-marco.zip
06Linus B. / Fabrizio L.(handed-in)passed dsa-fabrizio-linus.pdf, dsa-fabrizio-linus.zip
07Cedric W.(handed-in)