Praktyczne wykorzystanie blockchain na przykładzie Ethereum

LICZBA DNI: 3 (24h)

KOD KURSU: ETHER

# blockchain

# cryptocurrency

# ethereum

# solidity

Autor szkolenia:
Piotr Nazimek

O szkoleniu

DLA KOGO?

Osoby, które w praktyce chcą uruchomić i poznać zasady działania blockchain, jego wady i zalety

Programiści myślący o tworzeniu kontraktów

Administratorzy i wdrożeniowcy uruchamiający blockchain, konsultanci i architekci systemów transakcyjnych i rozproszonych

Ludzie biznesu z zacięciem technicznym szukający ciekawych zastosowań blockchain

WYMAGANIA

Od uczestników wymagana jest znajomość obsługi komputera, pracy z wierszem poleceń oraz znajomość podstawowych zasad programowania

ZALETY

Podczas warsztatów uczestnicy samodzielnie uruchomią własną instancję środowiska Ethereum, przygotują konfigurację węzłów i połączą je we wspólną sieć

Uczestnicy zrealizują różnorodne transakcje pomiędzy utworzonymi kontami oraz wejdą w interakcję z blockchain wykorzystując przeglądarkę internetową

Uczestnicy zaimplementują własne kontrakty inteligentne wykorzystując język Solidity, umieszczą je w blockchain i skorzystają z ich usług

Cele szkolenia

Poznanie zasad działania, możliwych zastosowań oraz zalet i wad baz danych typu blockchain na przykładzie Ethereum

Swobodne poruszanie się w terminologii związanej z projektami realizowanymi w oparciu o technologie blockchain

Nauka programowania w języku Solidity

Poznanie zasad działania oraz zastosowań kontraktów inteligentnych

Program

  • Transakcje w systemach scentralizowanych, zdecentralizowanych i rozproszonych
  • Zapewnianie wiarygodności transakcji
  • Czym jest blockchain?
  • Blockchain jako rozproszona baza danych
  • Integralność, uwierzytelnienie, niezaprzeczalność i poufność a blockchain
  • Funkcje skrótu, ich właściwości i zastosowania (SHA-256, SHA3, Keccak)
  • Algorytmy asymetryczne oparte o krzywe eliptyczne
  • Koncepcja i realizacja podpisu cyfrowego (algorytm ECDSA)
  • Sieci P2P (peer to peer)
  • Elementy systemu opartego o blockchain: przechowywanie danych, protokół komunikacyjny i algorytm konsensusu
  • Adresy użytkowników i sposób ich tworzenia
  • Transakcja w blockchain i jej elementy
  • Proces zatwierdzania transakcji
  • Bezpieczeństwo klucza prywatnego
  • Tworzenie bloków i kopanie (mining)
  • Dowód pracy (proof of work, PoW), dowód stawki (proof of stake, PoS) i inne techniki
  • Blockchain jako rejestr transakcji, kryptowaluty
  • Aplikacja jako element blockchain, kontrakty inteligentne
  • Problem centralizacji mocy obliczeniowej, rozgałęzień
  • Zmiany zasad działania sieci blockchain, miękki i twardy rozłam (soft fork, hard fork)
  • Charakterystyka wybranych blockchain: Bitcoin, Litecoin, Dash, Ripple, projekty z rodziny Hyperledger i Ethereum
  • Architektura Ethereum
  • Implementacje węzłów Ethereum, cechy węzła geth
  • Budowa blockchain w Ethereum oraz wykorzystywane algorytmy, składowe transakcji
  • Techniki przechowywania i wyszukiwania danych
  • Blok genesis i uruchomienie prywatnego łańcucha bloków w Ethereum
  • Typy kont w Ethereum, tworzenie kont
  • Uruchomienie węzła, komunikacja za pomocą IPC i RPC
  • Komunikacja pomiędzy węzłami
  • Proces kopania (mining) bloków
  • Zlecanie i zatwierdzanie transakcji
  • Ether i gas jako paliwo dla transakcji w blockchain
  • Praca w konsoli geth oraz z klientem Ethereum Wallet/Mist
  • Światowa sieć Ethereum i Ethereum Classic
  • Język Solidity
  • Podstawy działania i tworzenia kontraktów
  • Maszyna wirtualna Ethereum
  • Działanie przykładowych kontraktów: współdzielony portfel, token, zdecentralizowana organizacja autonomiczna (democratic autonomous organization, DAO)
  • Implementacja kontraktu dla tokenu
  • Bezpieczeństwo kontraktów, przykładowe błędy implementacyjne w kontraktach
  • Aplikacje rozproszone DApps
  • Komunikacja z siecią blockchain poprzez przeglądarkę
  • Zalety i wady blockchain w kontekście jego zastosowań
  • Ograniczenia i mity o blockchain: zużywane zasoby, brak pełnego zaufania, odpowiedzialność i szkodliwe działania użytkowników, identyfikacja i anonimowość
  • Blockchain jako część rozproszonej sieci Internet: rozproszone systemy plików (Swarm) i rozproszona komunikacja (Whisper)
  • Możliwe kierunki rozwoju blockchain

POLITYKA COOKIES:

Korzystamy z plików cookies, by móc jak najlepiej dostosować stronę do Twoich potrzeb oraz wyświetlać Ci przydatne i adekwatnych dla Ciebie reklamy w serwisie i poza nim. Możesz kontrolować ustawienia ciasteczek w swoich ustawieniach swojej przeglądarki. Odwiedzając tę stronę, wyrażasz zgodę na wykorzystywanie przez nas plików cookies.