Go to course navigation

Main Page

NIE-BLO Blockchain Course

Students will understand the foundations of blockchain technology, smart contract programming, smart contracts auditing and will gain an overview of the most notable layer ones (Bitcoin, Ethereum, Solana). They will be able to design, code, test and audit a secure decentralized application using the most up-to-date industry standards. The course is led by the Department of Information Security and web3 security industry experts thus focuses mainly on the security of smart contract implementations. It is concluded with a defense of a semester project, which prepares the students for implementing and reviewing complex smart contracts.

Pre-requirements

Warning:

Knowledge of the following is required to fully understand the presented materials (we don’t teach this).

Good knowledge of C/C++, algorithms, data structures, software testing methods, git workflow. Some knowledge of Python or Javascript.

Tech stack

Technologies used during the semester; Solidity, Python, Wake (alternatives: Hardhat, Slither, Echidna), Solidity for VS Code (alternatives: Remix IDE).

Semester project

The semester concludes with a project of two stages - Task I. Implementation and Task II. Security Audit. Points: Classification.

Task I. (Implementation)

Each student implements a smart contract on a given assignment.

Task II. (Security audit)

Each student audits the Task I project of a random colleague and responds to the audit of their own project. Rules, workflow and grading: Security Audit Assignment.

Teachers

The course is taught by internal professors at CTU and external industry experts.

prof. Ing. Róbert Lórencz, CSc.SupervisorCTU FIT
Ing. Marek BielikLecturer + TutorCTU FIT
Ing. Josef Gattermayer, Ph.D.Lecturer + TutorCTU FIT and Ackee Blockchain Security
Ing. Jan KalivodaTutorack3
Ing. Jakub RůžičkaLecturer + TutorCTU FIT