Subject

Blockchain and Cryptocurrencies

1. Course Title Blockchain and Cryptocurrencies
Blockchains and cryptocurrencies
2. Code F23L3W121
3. Study Programme
4. Organizer of the study programme (unit, institute, department or division) Faculty of Computer Science and Engineering
5. Degree level (first, second, third cycle) First Cycle
6. Academic year / semester 7 / Winter
7. Number of ECTS credits 6
8. Teacher Ivan Kitanovski, Panche Ribarski
9. Prerequisites for enrolling in the course Algorithms and Data Structures or Applied Algorithms and Data Structures
10. Objectives of the course programme (competences) The goal of this course is to enable students to understand how cryptocurrencies work, and the ideas, technologies, and organizations that support them or arise from them.
11. Course content Lectures:
1. Introduction to Blockchains
2. Use Cases
3. Blockchain Mechanisms - Ledger
4. Blockchain Mechanisms - Characteristics
5. Functions of Blockchain - Smart Contracts
6. Functions of Blockchain Networks - Public and Private Networks
7. Blockchain Functions - Transaction
8. Blockchain Functions - Consensus
9. Identity and Anonymity of Blockchain Chains
10. Problems Solved by Blockchain
11. Project Research
12. Individual projects

Practical Classes:
1. Solidity IDE
2. Appearance of a Solidity file
3. Hello World
4. Control Structures
5. Smart contracts
6. Smart Contracts 2
7. OpenZeppelin with HardHat
8. ERC20 standard
9. NFT standard
10. NFT infrastructure
11. Project Research
12. Individual projects
12. Learning methods Lectures, exercises, independent work, project assignments, seminar papers
13. Total available time 6 ECTS x 30 hours = 180 hours
14. Distribution of available time 30 + 45 + 15 + 15 + 75 = 180 hours
15. Forms of teaching activities
15.1. Lectures - theoretical instruction 30 hours
15.2. Exercises (laboratory, auditory), seminars, teamwork 45 hours
16. Other forms of activities
16.1. Project assignments 15 hours
16.2. Independent assignments 15 hours
16.3. Home study 75 hours
17. Assessment method
17.1. Tests 10 points
17.2. Seminar paper / project (presentation: written and oral) 15 points
17.3. Activities and learning 10 points
17.4. Final exam 70 points
18. Grading criteria (points / grade)
up to 50 points5 (five) (F)
from 51 to 60 points6 (six) (E)
from 61 to 70 points7 (seven) (D)
from 71 to 80 points8 (eight) (C)
from 81 to 90 points9 (nine) (B)
from 91 to 100 points10 (ten) (A)
19. Requirement for obtaining a signature and taking the final exam Activities carried out
20. Language of instruction Macedonian and English
21. Method for monitoring the quality of teaching internal evaluation and survey mechanism
22. Literature
22.1. Required literature
1. Narayanan, Bonneau, Felten, Miller, Goldfeder | Bitcoin and Cryptocurrency Technologies | Princeton | 2015
2. Antonopoulos | Mastering Bitcoin | O'reilly | 2012
3. EdX | Blockchain: Understanding Its Uses and Implications | EdX | 2020
22.2. Additional literature
No. Author Title Publisher Year