Samouczek Ethereum dla początkujących: inteligentne kontrakty, aplikacje DApps, korzyści i ograniczenia
Opublikowany: 2021-03-11Wyobraź sobie, że znajdujesz się w jednej z tych sytuacji:
- Twoje konto w e-portfelu zostało z jakiegoś powodu zablokowane przez platformę.
- Twoja firma musi pracować dla klienta, ale nie wiesz, czy możesz mu zaufać, czy nie.
- Twoje konto w mediach społecznościowych zostało zhakowane.
Wszystkie te sytuacje są dość bolesne, prawda? Co jeśli powiemy Ci, że istnieje technologia, która oferuje rozwiązania dla wszystkich tych sytuacji (i nie tylko). Tą technologią jest Ethereum, a ten samouczek Ethereum dla początkujących przybliży Ci ją.
Uzyskaj online certyfikat rozwoju oprogramowania na najlepszych światowych uniwersytetach. Zdobywaj programy Executive PG, Advanced Certificate Programs lub Masters Programs, aby przyspieszyć swoją karierę.
Spis treści
Ethereum – krótka historia
Oto oś czasu wszystkiego, co musisz wiedzieć o rozwoju Ethereum:
- Listopad 2013 – Vitalik Buterin, deweloper początkowo zajmujący się Bitcoinami, opublikował białą księgę na temat Ethereum.
- Styczeń 2014 – szwajcarska firma Ethereum Switzerland GmbH ogłosiła rozwój projektu oprogramowania Ethereum kierowanego przez zespół programistów, w tym Vitalika Buterina, Mihaia Alisie, Anthony'ego Di Iorio i Charlesa Hoskinsona.
- Sierpień 2014 – Ethereum kończy swoje ICO i z powodzeniem pozyskuje 18,4 mln USD.
- Maj 2015 – Ethereum wypuszcza swoją pierwszą sieć testową, Olympic.
- Lipiec 2015 – Frontier, pierwsza wersja Ethereum została wydana.
- Marzec 2016 – Homestead, druga wersja aktualizacji sieci Ethereum została wydana.
- Maj 2016 – Ethereum ogarnęło szerokie zainteresowanie mediów, gdy DAO (Zdecentralizowana Organizacja Autonomiczna) zebrała rekordowe 150 milionów dolarów w wyprzedaży tłumów.
- Czerwiec 2016 – dochodzi do włamania DAO, które prowadzi do utraty 50 milionów dolarów eteru (stanowiło to prawie 15% całkowitego eteru w obiegu).
- Lipiec 2016 – Sieć Ethereum rozgałęziła się na dwie części: Ethereum (ETH) i Ethereum Classic (ETC).
- Czerwiec 2017 – Ethereum zarabia ponad 400 USD z rekordowym wzrostem o 5001% od 1 stycznia 2017 r.
Co to jest Ethereum?
Ethereum to oparte na blockchain, otwarte, zdecentralizowane rozwiązanie programowe, którego używamy do tworzenia własnej kryptowaluty zwanej ether. Umożliwia tworzenie i uruchamianie aplikacji rozproszonych (DApps) i inteligentnych kontraktów na swojej platformie bez oszustw, przestojów lub ingerencji osób trzecich.
Oprócz tego, że jest solidną platformą, Ethereum jest również językiem programowania (Turing Complete), który działa na blockchain. Mówiąc prościej, Ethereum to zdecentralizowana platforma, której możesz użyć do zaprogramowania waluty cyfrowej.
Ethereum to największa zdecentralizowana aplikacja programowa, a za jej pomocą możesz łatwo tworzyć i udostępniać aplikacje DApps nowej generacji.
Od momentu pojawienia się, Ethereum całkowicie przekształciło branżę blockchain. Przed swoim pojawieniem się rozwiązania oparte na blockchain nie były w stanie wykonać zróżnicowanego zestawu aplikacji. Na przykład Bitcoin i inne kryptowaluty mogły działać tylko jako waluty cyfrowe, podczas gdy Ethereum pojawiło się jako platforma dla programistów do tworzenia programów opartych na Blockchain.
Ethereum jest dostępne dla każdego i pozwala każdemu stworzyć program oparty na blockchainie Ethereum. Według Ethereum.org „Ethereum to programowalny łańcuch bloków na świecie”.
Osoby stojące za Ethereum przejęły podstawowe koncepcje Bitcoina i podobnych kryptowalut, dodały do nich więcej funkcjonalności i stworzyły to bardzo popularne rozwiązanie blockchain.
Według stanu na wrzesień 2019 r. Ethereum było drugą co do wielkości kryptowalutą na świecie i za najpopularniejszą aplikacją blockchain, Bitcoinem. Jednak możesz zdobyć ether (kryptowalutę Ethereum) znacznie szybciej w porównaniu z Bitcoinem, ponieważ pierwszy zajmuje tylko 14 do 15 sekund, podczas gdy drugi zajmuje prawie dziesięć minut.
Aby właściwie zrozumieć Ethereum, musisz znać niektóre podstawowe elementy tej technologii. Oto główne aspekty Ethereum, o których powinieneś wiedzieć:
- Eter
- Gaz
- Maszyna wirtualna Ethereum
- Inteligentne kontrakty
- DApps (zdecentralizowane aplikacje)
W kolejnych sekcjach naszego samouczka Ethereum dla początkujących omówimy te koncepcje i zrozumiemy wewnętrzne działanie tej platformy blockchain:
Ethereum – ważne terminy, które powinieneś znać
1. Emisja waluty
W każdym kraju emisja walut jest przede wszystkim zarządzana i monitorowana przez narodowy bank centralny lub władze monetarne kraju. Na przykład w Indiach RBI jest władzą monetarną, która reguluje wszystkie inne banki i władze finansowe.
2. Zdecentralizowana organizacja autonomiczna
Zdecentralizowana Organizacja Autonomiczna to organizacja cyfrowa zarządzana i regulowana przez zestaw reguł zakodowanych jako program komputerowy, na który nie ma wpływu centralny organ zarządzający – jest w pełni przejrzysta i kontrolowana przez udziałowców. Praktyki DAO i zapisy transakcji finansowych są przechowywane w sieci Blockchain.
3. Inteligentne kontrakty
Inteligentna umowa to protokół komputerowy zaprojektowany w celu ułatwienia i weryfikacji negocjacji lub wykonania umowy między dwiema lub większą liczbą stron. Te umowy cyfrowe opierają się na systemie konsensusu i są realizowane bez interwencji jakiejkolwiek strony trzeciej.
4. Inteligentna nieruchomość
Inteligentna własność może oznaczać zarówno aktywa fizyczne, jak i aktywa kryptograficzne (udziały, prawa dostępu do sieci itp.), które są zbudowane na Ethereum. Własność inteligentnej własności jest kontrolowana za pośrednictwem portfela Ethereum, który działa jako brama do DApps w łańcuchu blokowym Ethereum.
5. Solidność
Solidity to język obiektowy wysokiego poziomu używany do implementacji inteligentnych kontraktów w Ethereum. Czerpał inspirację z języków programowania C++, Python i JavaScript i został zaprojektowany z myślą o maszynie wirtualnej Ethereum (EVM)
6. Maszyna wirtualna Ethereum
Maszyna wirtualna Ethereum (EVM) to środowisko uruchomieniowe przeznaczone do inteligentnych kontraktów. Zasadniczo EVM to warstwa komputera wirtualnego tuż nad podstawowym sprzętem. Te wirtualne warstwy tworzą poziom abstrakcji między wykonywanym kodem a wykonywaną maszyną. EVM pomaga poprawić przenośność oprogramowania, a także zapewnia, że aplikacje są nie tylko oddzielone od siebie, ale także od hosta.
7. Transakcje
Transakcje to wiadomości wysyłane z jednego konta na drugie. Zawierają dane binarne, które nazywają się Ether. Jest to transfer wartości, który jest emitowany do sieci Ethereum i gromadzony w blokach.
Sieć Ethereum
Do tej pory już wiesz, że sieć Ethereum jest rozproszoną i zdecentralizowaną publiczną siecią Blockchain. Jednak jest w tym znacznie więcej. Ethereum jest podstawą wszystkich zdecentralizowanych aplikacji i organizacji P2P działających w sieci Ethereum. Ta sieć składa się z dwóch unikalnych węzłów – pełnych węzłów i lekkich węzłów.
Węzły pełne to takie, które zawierają pełną historię transakcji od momentu powstania (rodzicielskiego) bloku . Rejestrują każdą transakcję, która została zwalidowana i zweryfikowana zgodnie z zasadami określonymi w specyfikacjach Ethereum. Dlatego pełne węzły są dowodem integralności, bezpieczeństwa i przejrzystości sieci Blockchain.
W przeciwieństwie do pełnych węzłów, lekkie węzły zawierają tylko podzbiór całego łańcucha bloków. Węzły lekkie nie weryfikują każdej transakcji i mogą/nie mogą przechowywać kopię aktualnego stanu Blockchain. Polegają głównie na pełnych węzłach, aby zapewnić im brakujące szczegóły lub określone konkretne funkcje. Jak sama nazwa wskazuje, lekkie węzły są lekkie, a zatem mogą działać szybciej na urządzeniach z ograniczoną pamięcią. Lekkie węzły są używane głównie w e-portfelach, które są z natury lekkie.
Co to jest eter?
Ether to kryptowaluta, której używasz w sieci Ethereum do dokonywania płatności za transakcje. Etheru możesz używać na dwa sposoby:
- Aplikacje wymagają płatności Ether w celu wykonania dowolnej operacji na platformie, aby zapobiec uruchamianiu w sieci złośliwych i uszkodzonych programów.
- Sieć wykorzystuje Ether do nagradzania górników, którzy wnoszą wkład do sieci Ethereum, tak jak robi to Bitcoin.
Oprócz tych aplikacji, możesz użyć Ether do zakupu gazu, co omówiliśmy w następnej sekcji naszego samouczka Ethereum dla początkujących. W Ethereum Ether jest jednostką metryczną, która pozwala dokładnie płacić za gaz i transakcje. Najmniejszą nazwą dla Etheru jest Wei. Jeden eter ma 1e18 Wei.
Co to jest gaz?
Ether nie jest jedyną cyfrową walutą dostępną w Ethereum. Kiedy wykonujesz transakcję na Ethereum, musiałbyś zapłacić Ether górnikowi za pomocą gazu. Gas jest tokenem pośredniczącym i pozwala zmierzyć pracę obliczeniową niezbędną do sfinalizowania transakcji lub uruchomienia inteligentnego kontraktu.
Cena Gazu jest wyrażona w Eterze. Ponadto górnicy określają cenę gazu i mogą odmówić zawarcia inteligentnego kontraktu lub przetworzyć transakcję, która nie oferuje wymaganej ceny gazu.
Opłatę transakcyjną w Ethereum obliczamy za pomocą następującego równania:
Eter = Limit gazu x Cena gazu
Tutaj Cena Gazu to ilość Etheru, którą musisz zapłacić, a Limit Gazu to ilość gazu użytego w procesie obliczania. Limit Gazu i Cena Gazu zapewniają, że umowa kończy się w określonym momencie.
Gdzie idzie gaz w eterze? Działa w wirtualnej maszynie Ethereum (EVM), którą omówiliśmy w następującej sekcji:
Co to jest maszyna wirtualna Ethereum?
Maszyna wirtualna Ethereum to miejsce, w którym wykonywane są wszystkie transakcje w Ethereum. Pozwala na tworzenie wszystkich aplikacji na jednej platformie. Można powiedzieć, że EVM jest silnikiem obsługującym całą sieć Ethereum.
Chociaż Ethereum ustanowiło zdefiniowane protokoły do tworzenia zdecentralizowanych aplikacji, było to możliwe dzięki EVM. Maszyna wirtualna Ethereum jest izolowana i umieszczona w piaskownicy. Oznacza to, że kod uruchamiający EVM nie ma dostępu do systemu plików ani sieci i ma bardzo mały dostęp do innych umów.
Kiedy wprowadzasz swój kod Solidity do Ethereum, najpierw trafia on do kompilatora Ethereum. Następnie wysyła kod bajtowy EVM do maszyny wirtualnej Ethereum, która obsługuje resztę procesu.
EVM zarządza obliczeniami i wewnętrznym stanem Ethereum. Wykonuje kod, utrzymuje wewnętrzną bazę danych i posiada liczne obiekty zwane „kontami”, które mogą się ze sobą komunikować.
Czym są inteligentne kontrakty?
Inteligentna umowa to program komputerowy, który działa automatycznie. Jako protokół transakcyjny umożliwia wymianę towarów, pieniędzy i usług za pośrednictwem blockchain. Inteligentne kontrakty mają określone warunki określone przez obie strony dla siebie, a gdy obie strony spełniają swoje odpowiednie warunki, inteligentny kontrakt działa odpowiednio.
Dzięki inteligentnym kontraktom możesz wykonywać różne zadania, takie jak zdecentralizowane głosowanie i wiele więcej. Mówiąc prościej, inteligentna umowa to umowa, która automatycznie wykonuje, egzekwuje, zarządza i obsługuje płatność.
Aby zrealizować inteligentny kontrakt na Ethereum, potrzebujesz tokenów (Ether). Bez wymaganej kryptowaluty nie możesz używać inteligentnych kontraktów w Ethereum.
Aby stworzyć inteligentny kontrakt, musisz użyć Solidity, języka programowania ogólnego przeznaczenia Ethereum. Został opracowany do działania w wirtualnej maszynie Ethereum i umożliwia wykonywanie dowolnych obliczeń, przechowywanie stanów i przeprowadzanie transakcji tokenami cyfrowymi.
Inteligentne kontrakty oferują wiele korzyści, dzięki którym stają się coraz bardziej popularne. Największą zaletą korzystania z inteligentnych kontraktów jest to, że eliminują potrzebę posiadania pośrednika.
Ponieważ inteligentne kontrakty są automatyczne, nie ma marginesu błędu ludzkiego. Są one obecne wirtualne i są dość przystępne cenowo w porównaniu z tradycyjnymi umowami. Inteligentne kontrakty mają potencjalne przypadki użycia w wielu branżach, w tym:
- Opieka zdrowotna
- Finanse i Bankowość
- Usługi B2B (usługi IT, usługi marketingowe itp.)
Przeczytaj także: Pomysły i tematy projektów Ethereum
Co to są aplikacje DApps?
DApp lub aplikacja zdecentralizowana to aplikacja działająca w sieci rozproszonej. Jest hostowany w zdecentralizowanej sieci peer-to-peer zamiast na centralnym serwerze. DApp może być dowolną aplikacją, taką jak aplikacja mobilna lub strona internetowa. Różnica między DApp a konwencjonalną aplikacją polega na tym, że jest zbudowana w zdecentralizowanej sieci.
Interfejs użytkownika aplikacji zdecentralizowanej jest taki sam, jak interfejs każdej konwencjonalnej aplikacji. Jednak wszystkie procesy zaplecza zdecentralizowanej aplikacji są oparte na zdecentralizowanej sieci.
Ethereum to zdecentralizowana sieć blockchain, więc kiedy tworzysz aplikację opartą na Ethereum, zasadniczo tworzysz zdecentralizowaną aplikację. DApps to stosunkowo nowa koncepcja, ale stają się bardzo popularne.
Ponieważ ludzie coraz bardziej martwią się o swoją prywatność i bezpieczeństwo, zapotrzebowanie na DApps odpowiednio wzrośnie. Wczesne poznanie ich może z łatwością dać ci przewagę w karierze.
Podobnie jak aplikacje zdecentralizowane, Ethereum ma również zdecentralizowane organizacje autonomiczne (DAO). Organizacje te istnieją tylko na blockchain i są kontrolowane przez protokoły blockchain. Organizacje te są tworzone w celu utrzymywania aktywów i korzystania z systemu głosowania do zarządzania ich dystrybucją. Dowiedz się wszystkiego, co musisz wiedzieć o DApps.
Waluty Ethereum
Jak wspomniano wcześniej, sieć Ethereum działa na dwóch rodzajach kryptowalut – Ether i Gas.
1. Eter
Ether to nazwa kryptowaluty, która służy do płacenia za wszystkie transakcje przeprowadzane w sieci Ethereum. Jednak oprócz płacenia za ogólne transakcje i usługi, Ether służy również do kupowania gazu, który służy do płacenia za usługi obliczeniowe w ramach EVM.
Ether to jednostka metryczna o wielu nominałach, która pomaga użytkownikom zapłacić dokładną kwotę za transakcje i gaz. Najmniejszy nominał – jednostka podstawowa – eteru jest znany jako Wei. Oto pełna tabela wszystkich nominałów eteru:
2. Gaz
EVM uruchamia kod, który jest wdrażany w sieci Ethereum. Teraz możesz pomyśleć, że można skutecznie uruchomić nieskończoną pętlę na EVM i przeciążyć jej pamięć. Dzięki Gazowi nie jest to możliwe.
Gaz reprezentuje miernik zasobów obliczeniowych w sieci. Każdemu kontraktowi w sieci Ethereum przydzielona jest maksymalna ilość gazu, jaką może wykorzystać do obliczeń. Ten ustawiony limit nazywa się „Limitem gazu”. Istnieją dwa inne terminy dotyczące gazu, które powinieneś znać:
Cena gazu – Jest to cena gazu wyrażona w tokenach takich jak Ether i jego nominałach. Cena Gazu jest wartością zmienną, która pomaga ustabilizować wartość Gazu. Tak więc, jeśli koszt tokenów lub waluty się zmienia, cena gazu również dostosowuje się, aby utrzymać tę samą rzeczywistą wartość.
Opłata za gaz – reprezentuje ilość gazu, którą trzeba zapłacić, aby uruchomić daną transakcję lub program (kontrakt).
Tak więc, jeśli kiedykolwiek spróbujesz uruchomić nieskończony kod (działający w nieskończoność), w końcu kontrakt przekroczy przydzielony Limit Gazu, a cała transakcja, która wywołała kontrakt, powróci do pierwotnego stanu.
Jakie są zalety i ograniczenia Ethereum?
W tej sekcji naszego samouczka Ethereum dla początkujących przyjrzymy się różnym zaletom tej platformy blockchain:
- Dzięki Ethereum możesz przesyłać i żądać programów do wykonania.
- Oferuje trwałe i trwałe przechowywanie danych.
- Możesz utworzyć zbywalny token, który możesz wykorzystać jako udział wirtualny lub jako walutę cyfrową.
- Oferuje 100% czasu działania i odporność na DDoS (Distributed Denial of Service).
- Możesz tworzyć wirtualne organizacje (DAO) w Ethereum.
- Umożliwia tworzenie wysoce bezpiecznych i odpornych na błędy DApps.
Jednak, jak każda inna technologia, Ethereum ma swoje ograniczenia. Oto kilka wad Ethereum:
- Aplikacje wymagające weryfikacji identyfikatora użytkownika będą problematyczne podczas budowania na Ethereum, ponieważ nie byłoby centralnego organu do przeprowadzenia weryfikacji.
- Aktualizowanie aplikacji lub naprawianie błędów może być dość trudne, ponieważ każdy partner musiałby zaktualizować oprogramowanie swojego węzła.
Wydobycie w Ethereum
Jak każda inna technologia Blockchain, Ethereum promuje bezpieczeństwo poprzez model oparty na zachętach, popularnie znany jako mechanizm dowodu pracy. Algorytm dowodu pracy używany w Ethereum nazywa się Ethash, algorytm mieszający inspirowany algorytmem Dagger-Hashimoto.
Kroki w wydobywaniu Ethereum są następujące:
- Użytkownik inicjuje transakcję, wysyłając wartości Ether do innego użytkownika.
- Ta nowa transakcja jest następnie dodawana w nowym bloku wraz z innymi transakcjami zawartymi w poprzednim bloku.
- Górnicy w sieci konkurują o zatwierdzenie nowego bloku za pomocą określonego zestawu instrukcji.
- Górnik, który pomyślnie zwaliduje nowy blok i doda go do sieci, otrzymuje nagrodę, czyli Ether.
- Gdy transakcja zostanie zatwierdzona, użytkownik, który ją zainicjował, również zarabia jeden Ether.
Samouczek Ethereum dla początkujących: co dalej?
Ethereum to ogromna technologia o wielu aspektach. Uczenie się o różnych jego sekcjach, takich jak inteligentne kontrakty i wydobycie, może być dość kłopotliwe bez wystarczających zasobów i wskazówek. Jak zapewne zauważyłeś w naszym samouczku Ethereum dla początkujących, jeśli rozumiesz Blockchain i jego implementację w Ethereum, praca z tą technologią staje się dziecinnie prosta.
Dlatego zalecamy wzięcie udziału w kursie blockchain, który obejmuje Ethereum i wszystkie jego aspekty techniczne. Kurs blockchain zapewni Ci ustrukturyzowany program nauczania, dzięki któremu będziesz mógł uczyć się wydajnie i efektywnie.
W upGrad oferujemy wiele kursów dotyczących blockchain, które pomogą Ci zrozumieć podstawowe i zaawansowane koncepcje blockchain z Ethereum. Dowiesz się, czym jest blockchain, czym jest Ethereum, jak ze sobą współpracują i jak możesz ich używać jako profesjonalista w dziedzinie blockchain.
W upGrad otrzymujesz następujące kursy blockchain:
Master of Science in Computer Science (oferowana specjalizacja w zakresie rozwoju łańcucha bloków)
upGrad oferuje ten program z Liverpool John Moores University. Trwa 19 miesięcy i oferuje ponad 500 godzin materiału do nauki. Podczas tego programu otrzymasz co dwa tygodnie mentoring grupowy z mentorami branżowymi i ponad 30 projektami i zadaniami. Jest to doskonały kurs blockchain dla osób, które nie są związane z technologią.
Złóż wniosek o zaawansowany program certyfikacji w Blockchain
Ten kurs trwa 7,5 miesiąca i oferuje ponad 250 godzin nauki. Otrzymasz status absolwenta IIIT Bangalore i spersonalizowaną opiekę mentorską 1:1 od ekspertów z branży blockchain. Oprócz Ethereum dowiesz się także o Hyperledger Fabric, inteligentnych kontraktach i nie tylko.
Executive PG Program w tworzeniu oprogramowania - specjalizacja w Blockchain
Ten 13-miesięczny kurs zapewni Ci 4-miesięczny certyfikat dla kadry kierowniczej w zakresie nauki o danych i uczenia maszynowego za darmo. Podczas tego programu będziesz uczyć się poprzez wykłady na żywo i sesje online oraz nauczysz się ponad 10 narzędzi programistycznych i języków. Ponadto możesz sprawdzić swoją wiedzę na temat blockchain i Ethereum
Wszystkie powyższe kursy wymagają posiadania stopnia licencjata z 50% lub równoważnymi ocenami pozytywnymi. Pamiętaj, że możesz zapisać się na dowolny z tych kursów bez żadnego doświadczenia w kodowaniu. Nauczysz się wszystkich wymaganych umiejętności, aby stać się wykwalifikowanym profesjonalistą.
Wniosek
Ethereum to z pewnością fenomenalna technologia. Wypełniając ten samouczek Ethereum dla początkujących, z pewnością zrobiłeś pierwszy krok w kierunku poznania tej technologii.
Ethereum Blockchain ma o wiele więcej zastosowań, na które warto zwrócić uwagę. Kariera w dziedzinie Blockchain rośnie, ponieważ zmieniła krajobraz technologii.