1 |
Idea "niezniszczalnego", idealneg rejestru zdarzeń.
- Zagadnienia i materiały
- Overview
- Piotr Fulmański, Blockchain. Simple introduction series, Rozdział 1: The need (link)
- Co po tych zajęciach powinno się znać / wiedzieć / umieć
- Idea rejestru/księgi i uzasadnienie potrzeby jego istnienia.
|
2 |
Co będzie potrzebne aby zaimplementować idealny rejestr zdarzeń.
- Zagadnienia i materiały
- Piotr Fulmański, Blockchain. Simple introduction series, Rozdział 2: The tools (link)
- Co po tych zajęciach powinno się znać / wiedzieć / umieć
- Wady i zalety systemów rozproszonych.
- Identyfikacja, uwierzytelnienie, autoryzacja.
- Dlaczego architektura peer-to-peer (wisdom of the crowd).
- Czym jest Blockchain.
|
3 |
Niepodważalne znakowanie danych
- Zagadnienia i materiały
- Piotr Fulmański, Blockchain. Simple introduction series, Rozdział 3: Data fingerprinting (link)
- Co po tych zajęciach powinno się znać / wiedzieć / umieć
- Czym jest odcisk danych.
- Czym jest hash kryptograficzny i co powinno go charakteryzować.
- Python: przekształcanie danych w ciąg binarny i z powrotem.
- Wysyłanie wiadomości wraz z ich skrótem.
|
4 |
Zagadka kryptograficzna
- Zagadnienia i materiały
- Piotr Fulmański, Blockchain. Simple introduction series, Rozdział 3: Data fingerprinting (link)
- Zadania
- Zaimplementować Pow i zrobić po 10 testów dla trudności od 1 do 6. Otrzymane wyniki przesłać na mail.
- Co po tych zajęciach powinno się znać / wiedzieć / umieć
- Czym jest PoW.
- Jaką rolę pełni 'sól' w procesie liczenia hash-y.
|
5 |
Sposoby hashowania danych
- Zagadnienia i materiały
- Piotr Fulmański, Blockchain. Simple introduction series, Rozdział 3: Data fingerprinting (link)
- Zadania
- Zaimplementować co najmniej jeden z modeli liczenia hashy z grupy: sekwencyjne, hierarchiczne.
- Co po tych zajęciach powinno się znać / wiedzieć / umieć
- Różne modele liczenia hash-y.
|
6 |
Podstawy kryptografii – teoria i praktyka (szyfrowanie)
- Zagadnienia i materiały
- Piotr Fulmański, Blockchain. Simple introduction series, Rozdział 4: Cryptography
(link)
- Zadania
- Co po tych zajęciach powinno się znać / wiedzieć / umieć
- Podstawowe wiadomości z kryptografii (co odróżnia szyfry symetryczne od asymetrycznych)
- Praktycznie stosować krytptografię w aplikacji (Python)
|
7 |
Podstawy kryptografii – teoria i praktyka (podpis cyfrowy)
- Zagadnienia i materiały
- Piotr Fulmański, Blockchain. Simple introduction series, Chapter 5: Digital signatures
(link)
- Zadania
- Co po tych zajęciach powinno się znać / wiedzieć / umieć
- Implementować podpis cyfrowy wykorzystując istniejącą platformę kryptograficzną (Python)
|
8, 9 |
Łańcuch bloków - implementujemy podstawową strukturę łańcucha bloków
- Zagadnienia i materiały
- Piotr Fulmański, Blockchain. Simple introduction series, Chapter 6: Chain of blocks
(link)
- Zadania
- Co po tych zajęciach powinno się znać / wiedzieć / umieć
- Opisać budowę łańcucha bloków.
|
10 |
Wyjaśniamy czym jest difficulty i target
- Zagadnienia i materiały
- Piotr Fulmański, Blockchain. Simple introduction series, Chapter 8: Difficulty and target
(link)
- Zadania
- Co po tych zajęciach powinno się znać / wiedzieć / umieć
- Omówić czym jest difficulty i target oraz umieć podać na przykładach sposób ich obliczania.
|
11 |
Omawiamy mechanizm konsensusu
- Zagadnienia i materiały
- Piotr Fulmański, Blockchain. Simple introduction series, Chapter 10: Searching consensus
(link)
- Co po tych zajęciach powinno się znać / wiedzieć / umieć
- Wyjaśnić dlaczego blockchain, łańcuch bloków, raczej powinien być postrzegany jako blocktree – drzewo bloków.
- Wyjaśnić na czym polega kryterium najdłuższego łańcucha (Longest Chain Criterion) i dlaczego w praktyce kryterium to zastąpione jest przez kryterium najcięższego łańcucha (Heaviest Chain Criterion).
- W jakich okolicznościach powstaje w łańcuchu bloków rozgałęzienie łańcucha (fork).
- Jak liczyny chainwork.
|