Blockchain

84
Blockchain

Co to jest blockchain (łańcuch bloków)

Wielokrotnie słyszałeś już to pojęcie, jednak czym jest blockchain (łańcuch bloków)?

Pozwól na wstępie, że nie umieszczę tutaj głębokich szczegółów technicznych. Nie ułatwi to zrozumienia. Jeżeli będziesz zainteresowany szczegółami, znajdziesz je w kolejnych artykułach. Chcąc maksymalnie uprościć zrozumienie czym jest blockchain, można przyjąć że jest rozproszoną bazą danych utrzymującą stale rosnącą ilość rekordów danych zabezpieczonych kryptograficznie przed manipulacją i próbą naruszenia integralności. Myślisz sobie… Świetnie, a co w tym nowego? Skąd ten cały szum i rosnące od kilku lat w tempie wykładniczym zainteresowanie tą technologią, która w zasadzie nie jest niczym nowym, a raczej jest złożeniem istniejących dojrzałych już technologii w spójną całość? Na to pytanie znajdziesz odpowiedź w dalszej części.

Blockchain to nie Bitcoin

Wiele osób zapytanych o to czym jest blockchain odpowiada wprost – Bitcoin. Inne osoby mówią tu o kryptowalutach (Bitcoin to w zasadzie kryptowaluta). To nie jest błąd, jednak jest to ogromne uproszczenie, ponieważ właśnie bitcoin był pierwszą poważną implementacją technologii blockchain. Dlatego wielokrotnie można spotkać się z tłumaczeniem czym jest blockchain na podstawie łańcucha bloków bitcoina. Nie skupiajmy się jednak nad tym, tylko spróbujmy potraktować blockchain jako rozproszoną rachunkową księgę główną (ang. Distributed Ledger) wykorzystywaną do rejestrowania np. transakcji finansowych czy zdarzeń gospodarczych. Taka charakterystyka powoduje, że zaczynasz sobie myśleć że przecież nie znasz się na finansach i księgowości. Miałem dokładnie tak samo 🙂 Dlatego w dalszej części opowiem przykłady użycia które na zawsze zmienią Twoje postrzeganie tego czym jest blockchain.

Blockchain 1.0

Tak jak wspomniałem w poprzednim paragrafie, blockchain został wykorzystany po raz pierwszy w bitcoin i stanowi podwaliny wszystkiego co dalej się wydarzyło. Czym jest blockchain 1.0? Jest rozproszoną bazą danych lub formą księgi rachunkowej, w której składowane są transakcje zachodzące po sobie w kolejności, reprezentując w ten sposób stan łańcucha (tzw. sieci) w każdym wybranym momencie czasu. W nomenklaturze bardziej informatycznej można to porównać do prostej maszyny stanowej w której transakcja powodowała zmianę stanu. Jeszcze inaczej mówiąc, rodzaj bazy danych opartej o klucze główne i klucze obce.

Ewolucja Blockchain

Podobnie jak ewoluowały transakcyjne bazy danych i zawierają w sobie logikę w postaci procedur (ang. stored procedures) i wyzwalaczy (ang. triggers), księgi rozproszone zostały wyposażone w coś co nazwano inteligentnymi umowami (ang. smart contracts). Reprezentowane są one w formie procedur (kodu), które składowane są wraz z transakcjami w łańcuchu. Procedury, dokładnie jak w bazach danych, mogą wykonywać skomplikowane operacje na transakcjach w blockchainie. To właśnie inteligentne umowy stanowią najważniejszy element technologiczny który uzupełnił to czym jest blockchain 2.0.

Pierwsze projekty wykorzystujące blockchain 2.0 i inteligentne kontrakty szybko zlokalizowały pewne braki w logice blockchaina. O ile transakcje zawierane „wewnątrz” łańcucha bloków były tematem uporządkowanym i działającym, zabrakło  „impulsu z zewnątrz”. Chodzi głównie o zdarzenia generowane np. przez rynki finansowe, kurs walut w danej sekundzie, zmiany LIBOR itp., czyli wstrzykiwanie zdarzeń do łańcucha w celu przeprowadzenia transakcji. Jako że jest to czynnik zewnętrzny, poza blockchainem, zaufanie do źródła danych musiało być bardzo wysokie. W tym celu powoływano źródła danych nazywane wyroczniami (ang. oracle), będącymi zabezpieczonymi źródłami godnymi zaufania. Problem pojawiał się gdy transakcje dotyczyły różnych podmiotów, zaś bezpieczeństwo i jakość danych podawanych przez wyrocznie było poddawane dyskusji.

blockchainCryptlet (szyferek?), czyli Blockchain 3.0

W celu rozwiązania problemu wyroczni, Microsoft w projekcie Bletchley wprowadza nowy element w ekosystemie blockchaina, który nazywa cryptletem. Stanowi on zaufany węzeł pośredniczący pomiędzy światem zewnętrznym a blockchainem. Ponieważ komunikacja jest zaszyfrowana, bezpieczeństwo zapewnione, integralność i spójność przekazywanych danych zapewniona i zaufana, cryptlet jako middleware może istnieć poza samym łańcuchem bloków np. jako instancja w chmurze. Dzięki temu część transakcji w formie procedur i wykonywanego kodu zostaje całkowicie wydelegowana do cryptleta i może prowadzić interakcje z zewnętrznymi źródłami danych.

cryptlets

Co łączy blockchain 3.0 z Microsoft?

Blockchain, posiadając wiele implementacji, także tych otwartych w formie Open-Source jest dosyć trudny do zintegrowania, ponieważ na aplikację składa się wiele elementów które za każdym razem trzeba ze sobą połączyć, często dopisać także kawałek kodu.

Microsoft uruchamiając usługę Azure Blockchain as a Service udostępnił w pełni zintegrowaną platformę do budowania aplikacji opartych o blockchain. Także jako pierwszy wprowadził cryptlety jako integralną część swojej platformy. Ten ruch pozwolił na wysunięcie się na prowadzenie w wyścigu technologicznym. Zapewniając wszystkie elementy składowe, w pełni ze sobą zintegrowane, gdzie nad bezpieczeństwem implementacji poszczególnych części pracują sztaby ekspertów, otrzymujemy swoisty ekosystem. Począwszy od możliwości budowania aplikacji webowych, integracji z usługami kryptograficznymi, możliwością wyboru konkretnej implementacji blockchaina na której chcemy oprzeć aplikację (Ethereum, Hyperledger i inne), po usługi analityczne i sztuczną inteligencję pozwalającą na zaawansowane raportowanie. To właśnie wizja projektu Bletchley od Microsoft i muszę powiedzieć że jest to chyba jedna z najbardziej pełnych wizji jakie przedstawiają do tej pory dostawcy blockchain na świecie.

bletchleyarchitecture

Przykłady użycia (use cases)

W dużej ogólności wytłumaczyłem czym jest blockchain, ale pewnie nadal trudno Tobie wymyślić przypadki w których może on zostać wykorzystany. Poniżej umieszczam zatem kilkanaście scenariuszy, które pomogą Tobie zrozumieć do czego można blockchain wykorzystać. Kolejne przykłady będziesz już swobodnie mnożyć sam, bo z pewnością jest ich bardzo wiele!

  • Płatności oraz pożyczki Peer-to-Peer – globalna sieć przekazów pieniężnych i pożyczek, eliminująca pośredników. Przykład: AbraBTC Jam
  • Internet rzeczy (Internet of Things) – śledzenie stanu, historii, wymiana zdarzeń. Przykład: Filament
  • Systemy głosowania – rozproszone, niezaprzeczalne, automatyczne zliczanie głosów z pełną historią. Przykład: FollowMyVote
  • Wymiana walut, transakcje między-bankowe – szybkie, pewne i niezawodne systemy transakcyjne. Przykład: RippleCoinbase
  • Transport – wynajem przejazdów, prywatni kierowcy, współdzielenie przejazdów, przewóz osób i rzeczy. Dzięki blockchain i przezroczystości możliwe ominięcie pośredników i regulacji państw (tzw. Uber Killer). Przykład: Arcade City
  • Zdecentralizowane rynki – transakcje zawierane bez pośredników i instytucji. Sprzedaż, współdzielenie i wynajem własności. Przykład: Open BazaarSlock.it
  • Dowód własności/autorstwa – wyeliminowanie dowodów własności, dokumentów świadczących o legalności, przeniesienie własności do blockchain. Przykład: ProofofexistenceClipperzStampery
  • Dystrybucja i produkcja energii – przeniesienie do blockchain rozliczania transportu energii, liczników energii, producentów energii (np. osób odsprzedających energię z ogniw Fotowoltaicznych), wydawanie certyfikatów i analiza. Przykłady: LO3EnergyBrooklyn MicrogridSolarChange
  • Tożsamość i jej weryfikacja – rozproszone systemy identyfikacji osób, cyfrowe podpisy, autoryzacje, reputacja. Przykład: UniquIdOneNameWorldTable
  • Składowanie danych – zaufane, rozproszone, odporne na awarie i próby wpłynięcia na integralność danych systemy składowania danych. Przykład: NXTPeerNova
  • Inteligentne kontrakty – automatycznie zawierane i wykonywane kontrakty których nikt nie kontroluje, ale każdy (w obrębie blockchainu) im ufa (zautomatyzowane łańcuchy dostaw). Przykład: UbiMSMirror
  • Hazard, systemy gier, przewidywanie zdarzeń – anonimizacja graczy, przekazy wygranych, osiągnięcia, własne waluty w grach komputerowych, systemy przewidywania (np. ruchu przeciwnika). Przykład: AugurDeckbound
  • Digitalizacja dokumentów – składowanie odpowiedników w formie inteligentnych kontraktów, składowanie skanów, odpowiedników w formie plików danych, gwarancja niezaprzeczalności. Przykład: Składowanie paragonów w blockchain w celach gwarancyjnych, Colu
  • Identyfikacja, śledzenie dóbr luksusowych – śledzenie dzieł sztuki, diamentów, zegarków, dóbr kolekcjonerskich. Przykład: EverledgerBlockVerifyChainlink
  • Usługi rządowe – podatki, składki, hipoteki, akty własności, księgi wieczyste, rejestry (PESEL, NIP itp.). Przykład: BitNationShoCard

Podsumowanie

Rewolucja blockchain dopiero nadchodzi. Ilość zastosowań jest ograniczona jedynie przez Twoją wyobraźnię. W tej chwili rządy wielu państw inwestują miliony dolarów w rozwój technologii wykorzystujących blockchain. Powstają setki startupów, które dzięki crowdfounding zbierają pieniądze na rozwój i badania. Coś w tym musi być! Nie bez powodu Światowe Forum Ekonomiczne umieszcza w TOP10 technologię blockchain!

Źródło: http://twojblockchain.pl/czym-jest-blockchain/

Czym jest Blockchain Fork?

Jeżeli przeglądasz wiadomości o kryptowalutach, to prawdopodobnie słyszałeś o słowie ” Fork” lub “Forks„. W tym krótkim artykule wytłumaczymy, o co w tym wszystkim chodzi.

O hard forku mówimy wtedy, gdy nowa wersja kodu źródłowego jednego projektu, w tym momencie Bitcoina nie współgra ze starą wersją. Blockchain zostaje podzielony na nową i starą wersję. Dla przykładu, kod źródłowy Bitcoina został skopiowany przez LTC (Litecoina), projektanci wprowadzili wiele zmian i w ten sposób powstał nowy projekt.

Zrozumienie oprogramowania Bitcoina nie należy do najprostszych. Każdy użytkownik musi mieć zgodność z daną siecią, w przeciwnym razie każdy z nich może zacząć wydobywać niewłaściwe bloki.

Dlaczego Blockchain Fork istnieje?

Zastosowany Blockchain w kryptowalutach jest zazwyczaj źródłem otwartym, co oznacza, że kod jest dostępny dla wszystkich. Każdy z użytkowników może uzyskać do niego dostęp. Kryptowaluty ewoluują i zmieniają się wraz z upływem czasu, dlatego od czasu do czasu należy wprowadzić pewne zmiany w protokołach. Niektóre zmiany będą małe i nikt nie zauważy różnic, natomiast do dużych zmian możemy zaliczyć zwiększenie maksymalnego rozmiaru bloku. Zmiany w sieci mogą być odbierane różnie, w szczególności wśród kopaczy. Niektórzy z nich zaakceptują zmiany z huraoptymizmem, inni nie. Podziały te w infrastrukturze sieciowej mogą spowodować powstanie nowych bloków oraz kryptowalut.

Czym jest Hard Fork?

Hard Fork ma miejsce wtedy, gdy stara wersja kodu nie współgra z nową wersją kodu Bitcoina. Blockchain zostaje rozdzielony na nową i starą wersję. W tym przypadku wszyscy muszą wykonać uaktualnienie swojego oprogramowania, bez tego nie będzie można rozpoznać nowego bloku.

Wynikiem Hard Forks są dwa blockchain’y, które rosną od siebie niezależnie. Jedna połowa uruchomiona jest na starym oprogramowaniu, natomiast druga połowa jest kompatybilna z drugą wersją bloków. Wtedy dysponujemy dwoma blockchain’ami, dlatego jest to tzw. widelec.

Czym jest Soft Fork?

Soft Fork jest zmianą w protokole kryptowaluty, gdzie tylko poprzednie bloki przestają być ważne. Jest to wersja soft, ponieważ zmiana jest kompatybilna ze starymi blokami i oprogramowanie bez problemu rozpoznaje stare oraz nowe bloki.

Hard Fork wymaga od wszystkich górników monet modernizacji oraz egzekwowania wszystkich zasad. Z kolei Soft jest mniej inwazyjny, należy tylko uaktualnić swoje oprogramowanie do nowej wersji. Oznacza to, że soft jest mniej chaotyczny i ma mniejszy wpływ na całą sieć niż hard fork.

Przykłady “Widelców”

Softforks jest najczęściej używany do uaktualnienia blockchaina Bitcoina, ponieważ jest mniej ryzykowne niż hard forks. Najlepszym przykładem udanego wdrożenia softforks jest aktualizacja oprogramowania BIP 66 – uaktualnienie podpisów oraz P2SH – zmiana formatowanie adresu Bitcoin.

Z kolei najbardziej rozpoznawalnym zastosowaniem Hard Forks jest Ethereum. Dany mechanizm został zastosowany po zhakowaniu DAO (the digital Decentralised Autonomous Organisation), która była ambitnym projektem na platformie Ethereum. Po zarobieniu 150 milionów dolarów ktoś wykradł 50 milionów dolarów, co zmusiło założycieli do działania. Fundacja Ethereum zainterweniowała i rozszczepiła Blockchain. Kryptowaluta została rozszczepiona na dwie: Ether i Ethereum Classic.

Brokerzy i domy maklerskie posiadają w swojej ofercie główne kryptowaluty takie jak – Bitcoin (BTCUSD), Ether (ETHUSD), Litecoin (LTCUSD) czy Ripple (XRPUSD). W przeciwieństwie do handlu nieregulowanymi instrumentami, obracając kontraktami CFD na kryptowaluty nadal dokonujesz transakcji u zaufanego brokera. Hakerzy nie mogą bezpośrednio uzyskać dostępu do Twoich funduszy. Ponadto przy zastosowaniu dźwigni finansowej możesz podwoić swoje zyski, ale pamiętaj, że każdy kij ma dwa końce. Jeżeli nie jesteś pewny swoich sił, to na samym początku zalecamy rachunek demonstracyjne na platformie handlowej, która jest najpopularniejszym oprogramowaniem transakcyjnym wśród traderów.