Blog #2: Meetup dla developerów blockchain //PL

in #polish7 years ago (edited)

1.jpg

15 Listopada 2017, kolejny meetup w Vancouver, który odwiedziłem.

Spotkanie było skierowane dla developerów blockchain i omawiane było kilka tematów związanych z technologią blockchain. Oczywiście nie klasyfikowałbym ich jako prelekcje dla developerów, raczej dla osób ogólnie zainteresowanych technologią.
Pierwsza prelekcja miała za zadanie przybliżyć bezpieczeństwo przechowywania kluczy w dużych programistycznych projektach opartych o kryptowaluty. Oczywiście prelegent wspominał o hardware walletach (Trezor/Legder), cold walletach, kontach multisignature, ale sedno prezentacji stanowił wykład o systemach, które można zaimplementować we własnych projektach.

  1. XAPO
  2. Vault project
  3. Shamir Secret Sharing Scheme*
    Rozwijając trzecią opcję, jest to pewien sposób podziału klucza prywatnego (masterkey) na kilka kluczy, oraz stworzenie z nich schematu podobnego do multisig (X z Z), gdzie wymagane jest X kluczy do znalezienia klucza prywatnego (masterkey) z Z liczbą całkowitych kluczy. Shamir Secret Sharing Scheme jest także zaimplementowane w różnych bibliotekach (js/python/c++). Więcej informacji można znaleźć w google, zapraszam także do przetestowania systemu na stronie:
    https://iancoleman.io/shamir/
    Jeśli chodzi o Project Vault i XAPO, są to enterprisowe systemy przechowywania kluczy które także korzystają z tego algorytmu, osobiście nie testowałem ich.

Druga prelekcja, mająca mówić o pisaniu skryptów na blockchainie bitcoin, w głównej mierze opisywała podstawy działania blockchainu bitcoin. Z ciekawostek:

  1. Istnieje testnet na bitcoinie, na którym można testować aplikacje. Ze względu na mały hashrate, bloki pojawiają się z dużą nieregularnością (co minutę/co godzinę), jest więc lepszym środowiskiem do testowania aplikacji od mainnetu
  2. Można pisać proste skrypty używając języka skryptowego bitcoin (OP_code)
  3. Przy wyszukiwaniu transakcji w blockchainie bitcoina sugerowane jest używanie bloom filtrów. Jest to typ filtra probabilistycznego wysyłającego zapytania o większą liczbę transakcji niż tylko nasza, co podyktowane jest prywatnością. Wynik może być fałszywie pozytywny ale nie może być fałszywie negatywny.
    Podsumowując, ciekawa prelekcja, niestety niewiele osób wie, że na blockchainie bitcoina można pisać proste aplikacje używając jego bardzo ograniczonego języka skryptowego.

2.jpg

Trzecia prelekcja to niestety była masakra, jako autor artykułu o algorytmach konsensusu nie zgadzałem się z większąścią stwierdzeń prelegentki. Wspomnę tylko, że w tym wykładzie zaprezentowano tylko trzy algorytmy (PoW, PoS i PBFT), przy czym okazało się, że nie ma blockchainu działającego pod PoS (what?), PoW jest w sumie szybkim algortymem (what?), że jego skalowalność to nie problem (what?) i że może kiedyś zobaczymy implementację PoS w którejś z kryptowalut, i pierwszą z nich będzie ethereum (WHAAAAAT?). Dzięki publiczności prelegentka dowiedziała się o istnieniu dPoS, PoI, PoC, PoUW ;)
Mój, już nieco przestarzały (3 miesiące w krypto to wieczność) artykuł na temat algorytmów konsensusu na blockchain:
https://www.fxmag.pl/artykul/konsensus-w-sieci-blockchain-czym-jest-i-jak-go-osign

Na pewno te dwie godziny nie były czasem straconym, po wykładach można było prozmawiać z osobami piszącymi działające systemy oparte o blockchain, oraz zjeść pizzę ;)