Praktyczne wykorzystanie blockchain na przykładzie Ethereum
Działanie i wykorzystanie blockchain oraz kontraktów inteligentnych na praktycznych przykładach z wykorzystaniem platformy Ethereum
2550 PLN+23% VAT (3136 PLN brutto / 1 os.)Czas trwania szkolenia:3 dni (24h)
Kod kursu:ETHER
Praktyczne wykorzystanie blockchain na przykładzie Ethereum
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
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
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
Praktyka przed teorią - wszystkie szkolenia technologiczne prowadzone są w formie warsztatowej. Konieczna teoria jest wyjaśniana na przykładzie praktycznych zadań
Konkretne umiejętności - w ramach każdego szkolenia rozwijamy praktyczne umiejętności związane z daną technologią i tematyką
Nauka z praktykami - wszyscy trenerzy na co dzień pracują w projektach, gwarantuje to dostęp do eksperckiej wiedzy i praktycznego know-how
Wymagania
Od uczestników wymagana jest znajomość obsługi komputera, pracy z wierszem poleceń oraz znajomość podstawowych zasad programowania
W cenie otrzymasz:
Materiały szkoleniowe
Certyfikat ukończenia szkolenia
W przypadku szkolenia w trybie stacjonarnym zapewnimy Ci również lunch oraz sprzęt niezbędny do nauki
Program
Architektury systemów transakcyjnych
Transakcje w systemach scentralizowanych, zdecentralizowanych i rozproszonych
Zapewnianie wiarygodności transakcji
Czym jest blockchain?
Zasady działania 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)
Dowód uprawnień (proof of authority, PoA), dowód tożsamości (proof of identity, PoI)
Inne techniki zatwierdzania bloków
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
Ethereum i jego właściwości
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
Wybór algorytmu konsensusu
Blok genesis, konfiguracja i uruchomienie prywatnego łańcucha bloków w Ethereum
Typy kont w Ethereum, tworzenie kont
Uruchomienie węzła, komunikacja za pomocą IPC, RPC i WebSocket
Komunikacja pomiędzy węzłami
Proces tworzenia bloków
Zlecanie i zatwierdzanie transakcji
Ether i gas jako paliwo dla transakcji w blockchain
Praca w konsoli geth oraz z klientem graficznym
Światowa sieć Ethereum i Ethereum Classic
Uruchamianie blockchain dla zastosowań prywatnych i publiczno-prywatnych
Kontrakty inteligentne (smart contracts)
Podstawy działania i tworzenia kontraktów
Maszyna wirtualna Ethereum
Język Solidity
Typowe kontrakty w sieciach blockchain
Działanie przykładowych kontraktów: token, trwały nośnik, token niewymienialny (non-fungible token, NFT)
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ę
Zastosowania i kierunki rozwoju blockchain
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 i rozproszona komunikacja
Możliwe kierunki rozwoju blockchain