NEAR wystartował! I teraz budowanie otwartego i wolnego internetu jest znacznie prostsze

NEAR wystartował! I teraz budowanie otwartego i wolnego internetu jest znacznie prostsze

Cześć wszystkim!

Wczoraj nastąpiło uruchomienie NEAR, projektu, nad którym pracowałem z moimi kolegami przez ostatnie 2 lata.

NEAR to protokół blockchain i platforma dla aplikacji zdecentralizowanych, skupiająca się na wydajności i łatwości użycia.

Dziś chciałbym opowiedzieć, jakie problemy współczesnego świata rozwiązują protokoły blockchain, jakie problemy mogą rozwiązywać, ale jeszcze ich nie rozwiązują, oraz gdzie w tym wszystkim znajduje się NEAR.

Po co są protokoły blockchain

Protokóły blockchain zapewniają bardzo ważną infrastrukturę, która umożliwia uruchamianie aplikacji, które nie są kontrolowane przez żadną zdecentralizowaną organizację.

W krótkoterminowej perspektywie jest to już wykorzystywane do budowy usług finansowych, które nie są kontrolowane przez banki i państwa. Na Ethereum – najpopularniejszej jak dotąd platformie do aplikacji zdecentralizowanych – w ciągu ostatnich dwóch lat powstała ogromna liczba interesujących usług finansowych: MakerDAO stworzyło zdecentralizowaną walutę, której cena prawie dokładnie odpowiada jednemu dolarowi, co pozwala na korzystanie z usług finansowych na platformie z wykorzystaniem niezmiennych aktywów. Compound umożliwił wpłacanie pieniędzy na wirtualne konto i uzyskiwanie prawie gwarantowanego dochodu, a Augur i Flux stworzyły usługi, na których można stawiać zakłady na różne wydarzenia w rzeczywistym świecie. Poza tym na Ethereum uruchomiono wiele różnych zdecentralizowanych giełd. Wszystkie te usługi są albo autonomiczne i nie są kontrolowane przez nikogo, albo kontrolowane kolektywnie przez uczestników usługi.

Produkty finansowe, które nie są kontrolowane przez państwo i banki – to bardzo ważny kierunek. Ale protokoły blockchain umożliwiają znacznie więcej.

W średnioterminowej i długoterminowej perspektywie ta sama infrastruktura pozwoli na budowę usług i aplikacji mających na celu stworzenie wolnego i otwartego internetu oraz zmniejszenie dominującego wpływu oligopoli na nasze życie. Dla codziennych aplikacji: mediów społecznościowych, czatów, grup zainteresowań i innych, protokoły blockchain pozwalają na uzyskanie funkcjonalności, która bez nich byłaby znacznie trudniejsza do zrealizowania. Trzy przykłady:

1. Ujednolicony login i ogólne informacje o koncie. Dziś prawie wszystkie usługi z ujednoliconym loginem są scentralizowane. Jeśli korzystasz z konta Gmail do autoryzacji w aplikacjach, a Google zdecyduje się usunąć Twoje konto, stracisz dostęp do wszystkich aplikacji, w których używałeś Google. Użycie rozwiązania opartego na blockchainie do ujednoliconego logowania pozwala nie polegać na żadnej scentralizowanej organizacji. Co więcej, aplikacje, które wykorzystują takie rozwiązanie, mogą za zgodą użytkownika przechowywać różne informacje na takim jednym koncie, które mogą być następnie używane w innych aplikacjach. Hipotetyczna zdecentralizowana Coursera może zachować na koncie informację o ukończeniu kursu, a hipotetyczny zdecentralizowany LinkedIn może tę informację pokazać, przy czym ani Coursera, ani LinkedIn, ani usługa logowania nie mogą usunąć, zmienić tej informacji ani zamknąć konta użytkownika z pominięciem wcześniej określonych przejrzystych protokołów.

2. Monetyzacja, aktywa i mikropłatności. Jednym z powodów, dla których opracowywanie otwartych usług nie jest popularne, jest to, że bardzo trudno je monetyzować. Ponieważ na blockchainie pieniądze stanowią fundamentalną część protokołu, a ich transfer nie jest w żaden sposób ograniczony, łatwiej jest wbudować różne sposoby monetyzacji w aplikacje i usługi. Bez rozsądnych sposobów na monetyzację prace nad otwartym internetem nigdy nie będą w stanie przyciągnąć dużych, poważnych zespołów, a w konsekwencji aplikacje, które mogłyby konkurować z dużymi graczami, się nie pojawią.

3. Koordynacja przechowywania danych i obliczeń. Wykonywanie obliczeń i przechowywanie danych w protokołach blockchain jest znacznie droższe niż w chmurze. Większość aplikacji i usług nieopłacalnie działa na blockchainie. Jednak gdy są one realizowane i przechowywane na swoich serwerach, mogą samodzielnie spalić swoje serwery, co prowadzi do utraty danych, lub zmienić kod, który wykonują, co w kontekście niektórych zdecentralizowanych aplikacji jest niedopuszczalne. Na szczęście istnieją różne podejścia, które umożliwiają przechowywanie danych i wykonywanie obliczeń poza blockchainem w cenie porównywalnej z chmurą, ale nie pozwalają na usunięcie danych ani zmianę obliczeń. Takie podejścia wykorzystują blockchain jako protokół, w którym uczestnicy dostarczający zasoby składają pewną kaucję jako gwarancję poprawności swojej pracy, a uczestnicy korzystający z zasobów mogą tę kaucję spalić lub odebrać, jeśli będą w stanie przedstawić dowód kryptograficzny, że dane nie zostały zapisane lub obliczenia były wykonane nieprawidłowo.

Cała opisane powyżej funkcjonalność wymaga, aby leżący u jej podstaw protokół był wystarczająco szybki, tani i zrozumiały dla użytkowników.

Co rozwiązuje NEAR

NEAR rozwiązuje dwa problemy, które istnieją w istniejących protokołach.

Pierwszy – to szybkość, a z tego wynika cena transakcji. Ethereum obecnie pozwala na wykonanie około 15 transakcji na sekundę. Dzisiejsze zapotrzebowanie znacznie przewyższa 15 transakcji na sekundę, co sprawia, że cena transakcji jest niezwykle wysoka: najprostsza transakcja kosztuje obecnie około 40 centów, bardziej skomplikowane kosztują kilka dolarów. Prawie wszystkie scenariusze użycia, które opisałem powyżej, mają sens tylko wtedy, gdy ceny są niższe o kilka rzędów, co z kolei wymaga znacznie wyższej przepustowości.

Próba wdrożenia protokołu o wyższej przepustowości, zachowując wymaganie, by każdy uczestnik sieci weryfikował każdą transakcję i przechowywał cały stan, zwiększa wymagania sprzętowe. To z kolei podnosi próg wejścia i obniża decentralizację i niezawodność protokołu.

NEAR skaluje się, wykorzystując inne podejście zwane shardowaniem. Szczegółowo opisałem shardowanie w kontekście blockchainów na habrze. tutajSharding to skalowanie w szerokość, które w przyszłości pozwala na wykonywanie znacznie większej liczby obliczeń w znacznie niższych kosztach niż to możliwe w protokołach, które skalują się w górę, niezależnie od tego, jakie wysokie wymagania sprzętowe stawiają.

Drugim problemem jest wygoda użytkowania. Tworzenie i wdrażanie aplikacji na NEAR jest znacznie prostsze niż na innych protokołach. Co ważniejsze, użytkownicy mogą korzystać z aplikacji uruchomionych na NEAR bez wiedzy na temat tego, czym są blockchain, transakcje czy klucz prywatny.

Protokoły blockchain były historycznie projektowane z myślą o maksymalnej niezawodności, a nie o wygodzie użytkowników. W wielu aspektach te cele prowadzą do sprzecznych wymagań, a temat projektowania protokołów, które mogą być używane przez osoby bez wykształcenia technicznego, ale są wystarczająco niezawodne w scenariuszach, w których utrata konta może kosztować miliony dolarów – to temat na osobny artykuł.

Na examples.near.org można zobaczyć przykłady tworzenia aplikacji dla NEAR w językach Rust i AssemblyScript (podzbiór TypeScript) w interaktywnej IDE w przeglądarce oraz jak wyglądają one z perspektywy użytkowników.

Zamiast zakończenia

Otarty internet i zdecentralizowane narzędzia finansowe z definicji nie mogą być budowane przez jedną firmę.

Zbudowanie infrastruktury to niewielka część całej pracy, którą trzeba wykonać, aby stworzyć ekosystem, w którym wszystkie kluczowe usługi są kontrolowane przez społeczność, a nie oligopolie.

Jeśli masz pomysły na usługi zarządzane przez społeczność i chcesz nad nimi pracować, przyjdź do naszego programu wsparcia dla przedsiębiorców. www.openwebcollective.com.

Jeśli jesteś deweloperem, dołącz do ekosystemu: near.org/ecosystem, budujmy otwarty internet razem!

Źródło: habr.com

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster