EMERsion Blockchain: Odkrywanie sekretów Emercoina

Opublikowany: 2021-08-09

W pierwszym z serii artykułów ujawniających zakres zastosowań technologii blockchain obsługujących Emercoin, przyjrzymy się, jak powstała ta kryptowaluta i czym różni się od wszystkich innych okazów dynamicznie rozwijającej się branży kryptowalut.

Sieci peer-to-peer zwiększają wydajność i niezawodność wraz ze wzrostem liczby uczestników. To sprawia, że ​​są idealnym narzędziem do rozwiązań na skalę korporacyjną i globalną, które wykraczają daleko poza „zwykłe” aplikacje finansowe. Świat zaczyna to sobie teraz uświadamiać. W firmie Emer to właśnie ta idea napędzała nasz rozwój od samego początku.

Rdzeń Emercoina

Historycznie rdzeń Emercoina został odziedziczony po Peercoin, który z kolei wyłonił się z Bitcoina. Peercoin wprowadził jedną zasadniczą innowację zwaną konsensusem Proof-of-Stake (PoS). Pozwoliło to na rozszerzenie i udoskonalenie istniejącego wówczas algorytmu Proof-of-work (PoW).

Konsensus to algorytm używany w zdecentralizowanej sieci do walidacji określonej wersji rozwijającego się łańcucha bloków. Konsensus wynika ze wszystkich górników” wykorzystujących własne zasoby do „głosowania” za taką walidacją. W tym celu są nagradzani nowo stworzonymi kryptowalutami. Innymi słowy, górnicy sprzedają swoją usługę „utrzymywania zaufania do sieci” w zamian za monety.

Skąd więc wiemy, kto jest uprawniony do głosowania?

Nie może to być portfel, ponieważ wtedy jeden nieuczciwy użytkownik mógłby stworzyć miliony portfeli i wykorzystać te głosy duchów, aby zweryfikować dowolną wersję blockchaina, która mu się podoba.

Nie może to być również adres IP, ponieważ każdy dostawca usług internetowych może sfałszować dużą sieć, tworząc również hordy głosujących duchów.

Głosowanie wymaga więc ograniczonych zasobów, których nie można powielić ani sfałszować.

W przypadku systemu Bitcoin Satoshi Nakamoto zaproponował rozwiązanie typu Proof-of-Work, które obejmuje walidację poprzez moc obliczeniową. Rzeczywiście, jeśli moc obliczeniowa twojego komputera wynosi X, możesz utworzyć N wirtualnych podkomputerów, ale łączna moc obliczeniowa nie przekroczy X. Innymi słowy, właściciel takich wirtualnych podkomputerów nie będzie miał więcej głosów niż jeden użytkownik.

Następnie zaproponowano inne koncepcje konsensusu, które skupiały się na zasobach obliczeniowych innych niż procesory. Na przykład dowód pojemności był oparty na pojemności dysku. To wywołuje wyścig zbrojeń w ewolucji ekosystemu kryptowalut. Górnicy inwestują w swój sprzęt, dopóki koszty amortyzacji sprzętu nie wyzerują dochodów generowanych przez wydobycie. Potem zaczynają narzekać, że „kopanie nie przynosi zysków” lub „kryptowaluta to nic innego jak oszustwo”.

Proof-of-Stake to przełomowa koncepcja wprowadzona przez Sunny Kinga w Peercoin. Peercoin ograniczył zdolność głosowania własnymi monetami. Pomogło to uniknąć wyścigu zbrojeń poprzez zastąpienie zasobów materialnych (procesory, napędy dysków) wirtualnymi (monety). W rezultacie ludzie przestali marnować zasoby materialne, pieniądze i energię elektryczną w pogoni za większą mocą wydobywczą.

Algorytm PoS też ma swoje wady. Na przykład jest podatny na ataki z wewnątrz. Tym ostatnim częściowo zapobiegają dodatkowe narzędzia, takie jak np. dynamiczne punkty kontrolne. Ogólnie rzecz biorąc, PoS okazał się bezpieczniejszy niż PoW.

Hybrydowy protokół konsensusu używany przez Peercoin jest uważany za najbezpieczniejszy i dlatego wykorzystaliśmy go jako podstawę projektu Emercoin. Aby odnieść sukces, osoba atakująca na Emer musi posiadać 51% łącznej mocy obliczeniowej sieci i 51% jej zasobów monet. Dwie bariery o różnym charakterze w dużej mierze chronią sieć przed zdyskredytowaniem.

Innym powodem, dla którego wybrano Peercoina, był klasyczny i dojrzały kod Bitcoin użyty w jego rdzeniu. Został on nie tylko sprawdzony przez wielu ekspertów ds. bezpieczeństwa, ale także poradził sobie z kilkoma nieudanymi atakami.

Wreszcie, chcieliśmy podążać za przemysłowym podejściem do projektów, umożliwiając maksymalną zgodność z istniejącymi standardami i specyfikacjami, a technologie Bitcoin i API de facto określiły standardy dla branży kryptograficznej.

Emercoin kontra Bitcoin: podobieństwa i różnice

PoW+PoS vs PoW

Jak już wspomniano, Emercoin wykorzystuje hybrydowy protokół konsensusu. zaczerpnięte z Peercoina. Jedyną zmianą, jaką wprowadziliśmy, było zwiększenie wagi PoS do około 80%. Zatem Emer jest zasadniczo kryptowalutą opartą na PoS, z dodatkowym narzędziem PoW.

SHA-256

Emercoin zamyka bloki przy użyciu tej samej funkcji skrótu SHA-256. Wybraliśmy go, ponieważ jest to oficjalny standard i wystarczająco bezpieczny. Poza tym specjalne układy ASIC już od jakiegoś czasu zajmują się wydobyciem SHA-256, więc górnicy mogą być pewni, że żaden nowy sprzęt specjalnego przeznaczenia zaprojektowany dla innego algorytmu nie wywoła rewolucji złożoności, która wstrząsnęłaby siecią i skonsolidowała zdolność wydobywczą w rękach tych, którzy posiadają taki nowy sprzęt.

Na marginesie, jesteśmy przeciwni kopaniu za pomocą komputerów ogólnego przeznaczenia, ponieważ takie podejście jest potencjalnie niebezpieczne dla niezaangażowanych stron. Zanim pojawiły się ASIC, wiele wirusów komputerowych wykorzystywało moc obliczeniową zainfekowanych komputerów do wydobywania bitcoinów. ASIC sprawiły, że takie złośliwe oprogramowanie stało się nieopłacalne ekonomicznie. Bur inne kryptowaluty wydobywane za pomocą komputerów ogólnego przeznaczenia są nadal narażone na to ryzyko.

10-minutowy interwał blokowy

Podobnie jak Bitcoin i Peercoin, Emercoin zapewnia 10 minut na zamknięcie bloku. Krótszy czas na blok spowodowałby więcej kolizji z blokami osieroconymi i utratę niezawodności sieci.

Prawdopodobieństwo kolizji oblicza się, dzieląc czas aktualizacji sieci przez czas zamknięcia bloku. Czas aktualizacji sieci zależy od topologii sieci i obciążenia. Aktualizacja sieci Bitcoin zajmuje kilka minut. Inne kryptowaluty (np. Quark), które skróciły czas zamykania bloku do mniej niż minuty, napotykają stałą ekspozycję na fork, gdy tylko obciążenie sieci staje się mniej lub bardziej znaczące.

Można sprzeciwić się, odwołując się do doskonałego protokołu Ghost Ethereum, który nie jest narażony na forki. Mimo że jego osierocone bloki („wujkowie”) nie są częścią powstałego łańcucha bloków, biorą udział w głosowaniu na wersję łańcuchową, więc interwał blokowania można skrócić do około 20 sekund.

Ale ten protokół ma swoje własne luki. Na przykład sieć Ghost jest podatna na burze sieciowe, gdy przy określonym obciążeniu w sieci Ethernet występuje ekstremalny ruch. Mówiąc najprościej, sieć jest podatna na ataki, ponieważ jej czas aktualizacji jest proporcjonalny do jej ruchu. Przy krytycznym obciążeniu (zbyt wiele transakcji na sekundę) czas aktualizacji staje się porównywalny z czasem generowania bloku. W takim przypadku różni górnicy mogą niezależnie generować bloki kandydujące do włączenia do łańcucha bloków. I tu niespodzianka: te bloki będą zawierały te same transakcje. Więc znów będą krążyć w sieci, zwielokrotniając ruch, czyli generując większe obciążenie sieci, więcej opóźnień i więcej „wujów”. Sieć będzie zachowywać się tak, jakby była wystawiona na atak wzmacniający DNS/NTP, przy czym te same węzły sieci będą zarówno atakującym, jak i ofiarą.

Co więcej, tylko jeden blok kandydujący jest zawarty w łańcuchu bloków. Ponieważ sieć wykorzystywała zasoby nie tylko do obliczania tego bloku, ale także innych bloków, które głosowały, ale nie zostały uwzględnione w powstałym blockchainie, zaufanie do zaakceptowanego blockchaina drastycznie spada. W rezultacie sieć może zostać zaatakowana przy mniej niż 51% jej łącznej mocy obliczeniowej.

Podsumowując, uważamy, że podejście zaproponowane przez Satoshi Nakamoto jest nadal najlepszym dostępnym.

Przeliczanie złożoności po każdym bloku

W przeciwieństwie do Bitcoin, który przelicza swoją złożoność wydobycia co 2016 bloki (tj. mniej więcej co dwa tygodnie), zarówno sieci Emer, jak i Peercoin robią to po każdym nowym bloku, przyczyniając się do niezawodności sieci. Oto przykład:

Załóżmy, że po zaplanowanym ponownym obliczeniu złożoności 50% górników Bitcoin przestaje działać. Nawiasem mówiąc, ta sytuacja nie jest tak nieprawdopodobna, jak mogłoby się wydawać. Może się tak zdarzyć, jeśli rządy w krajach, w których znajdują się duże baseny górnicze, uchwalą w tym celu pewne przepisy – co może mieć miejsce wkrótce w Chinach. W rezultacie interwały zamykania bloków podwoją się do 20 minut, a rozmiar bloku również się podwoi. Biorąc pod uwagę, że wiele bloków dzisiaj osiągnęło limit 1 MB, są szanse, że wiele transakcji pozostanie niepotwierdzonych przez kilka dni. Może to wywołać panikę i więcej transakcji ze strony tych, którzy chcą sprzedawać po obecnej cenie, co jeszcze bardziej pogorszy sytuację. Odzyskanie systemu zajęłoby tygodnie.

Sieć, która po każdym nowym bloku przelicza swoją złożoność, nie jest narażona na takie ryzyko, ponieważ natychmiast dostosowuje się do zagregowanej mocy obliczeniowej nowych górników. Co więcej, będąc głównie kryptowalutą PoS, Emercoin nie jest tak bardzo dotknięty kopaniem i/lub pulami. Nawet gdyby wszystkie baseny przestały działać w tym samym czasie, dodanie bloku zajęłoby tylko 20% więcej czasu, a system regulacji rozwiązałby ten problem w ciągu zaledwie 24 godzin.

Ponowna ocena liczby przyznanych bloków PoW

Emercoin ma jeszcze jeden mechanizm, dzięki któremu jego wydajność kopania jest bardziej niezawodna, pętla ujemnego sprzężenia zwrotnego, która wykorzystuje współczynnik haszowania sieci (zagregowana wydajność kopania). Chodzi o to, że nagroda górnika nie jest stała (jak w przypadku Bitcoina), ale odwrotnie proporcjonalna do czwartego pierwiastka złożoności sieci.

Jeśli wartość fiducjarna Emercoina wzrasta, tj. więcej użytkowników zaczyna ją wydobywać, przyczynia się to do złożoności sieci, a tym samym zmniejsza nagrodę za każdy blok. W efekcie sieć zostaje zabezpieczona przed wysoką inflacją fiat . I odwrotnie, jeśli górnicy stracą zainteresowanie Emercoinem z jakiegokolwiek powodu, system staje się znacznie mniej skomplikowany i zatrzymuje górników, oferując wyższe nagrody.

Teoretycznie najskuteczniejszą strategią wydobycia Emercoin jest współpraca i kopanie przy użyciu minimalnej pojemności i dzielenie się maksymalnymi dochodami. Jest to jednak mało prawdopodobne, bo górnicy zmierzą się z odmianą dylematu więźnia .

6% roczna wydajność procentowa dla PoS

Ponieważ Emercoin jest kryptowalutą PoS, górnik może generować dochód zarówno ze sprzętu do kopania, jak i monet w swoim portfelu. Zdecydowaliśmy się płacić premie PoS w wysokości 6% rocznie. Innymi słowy, jeśli monety użyte do zamknięcia transakcji pozostaną nienaruszone przez ponad miesiąc, są szanse, że można je wykorzystać do zamknięcia bloku, generując 6% RRSO dla właściciela. Gdy monety zostaną wykorzystane, okres bezczynności „wypala się” i rozpoczyna się nowy okres bezczynności dla nowego właściciela. Innymi słowy, 6% APY to maksymalna nagroda PoS, którą można otrzymać tylko wtedy, gdy monety pozostaną nienaruszone. Obecnie rzeczywisty wzrost zapasów pieniądza poprzez PoS RRSO wynosi około 4–5% rocznie. W miarę jak Emercoin staje się coraz bardziej rozpowszechniony, a transakcje liczniejsze, wartość ta zmniejszy się, aby zrównać się z kursami typowymi dla twardych walut fiducjarnych – chociaż nigdy nie zostanie całkowicie zlikwidowana.

Można zarzucić, że ta 6% RRSO generuje inflację, ale należy wspomnieć, że Emercoin ma trend deflacyjny, tzn. wartość monety rośnie i to dość szybko. Widać to po jego kursie, który od początku roku wzrósł prawie czterokrotnie. Ta niezgodność z naiwnym modelem wynika z powiązania wartości monety z odpowiednią wartością ekonomiczną. Wzrost gospodarczy pociąga za sobą wzrost wartości monet, więc PoS ma znikomy udział w ogólnym wzroście zasobów pieniężnych w porównaniu z innymi czynnikami.

Emisja i anulowanie Emercoinów

Z powyższego można wywnioskować, że akcje pieniężne Emercoina mogą stale rosnąć. Wydaje się, że to prawda w pierwszym przybliżeniu. Rzeczywiście, uczestnicy utrzymujący konsensus sprzedają swoje usługi sieci i są nagradzani nowo utworzonymi monetami. Jednak Emercoin ma mechanizm, który znosi monety, równoważąc w ten sposób emisję monet. Czyni to, pobierając opłatę za usługi blockchain, takie jak wysyłanie monet lub kupowanie kont w NVS. Innymi słowy, w przeciwieństwie do Bitcoina, który ma limity na wydawanie monet i nie ma narzędzi do ich anulowania, Emercoin pozwala na ich wydawanie w nieskończoność, ale ma też odwrotny proces równoważenia tego. Ci uczestnicy, którzy sprzedają swoje usługi sieci, są nagradzani, a ci, którzy kupują usługi w sieci, płacą za nie.

Szacując z grubsza i biorąc pod uwagę obecnie dostępne czynniki, w ciągu 80 lat zostanie wygenerowanych około 1 miliarda EMC.

Ujawnianie zewnętrznych adresów IP

Pierwszą unikalną innowacją wdrożoną przez Emercoin był protokół RFC5389, narzędzie STUN do ujawniania zewnętrznych adresów IP. Po NAT oprogramowanie portfela musi znać zewnętrzny adres IP, aby działać poprawnie. Bitcoin kiedyś, a inni nadal, otrzymywali go, adresując scentralizowany serwer ( http://checkip.dyndns.org ). Później przełączył się na UPNP i ręczne ustawienia konfiguracji. Odrzuciliśmy to podejście z kilku powodów, takich jak brak działania UPNP po wielowarstwowej translacji NAT. Ostatecznie zdecydowaliśmy się nie korzystać w ogóle ze scentralizowanego serwera, ale zastosować standard STUN, który jest wykorzystywany do podobnych celów w VoIP. Obecnie zarządzamy najbardziej kompletną listą dostępnych publicznych serwerów STUN i używamy tych serwerów w naszym podsystemie STUN do identyfikacji zewnętrznych adresów IP.

Optymalizator transakcji

Optymalizator transakcji to kolejna wyjątkowa innowacja wdrożona w Emercoin.

Kryptowaluty z łańcuchami bloków zawierającymi transakcje wymagają wybrania podzbioru wydatków podczas tworzenia nowej transakcji. Bitcoin i inne kryptowaluty używają algorytmu stochastycznego, który pobiera 1000 losowych próbek, aby wybrać podzbiór, który zawiera kwotę jak najbardziej zbliżoną do wymaganej. Jednak nawet jeśli portfel zawiera podzbiór pasujący do dokładnej sumy, standardowy algorytm prawie zawsze go przeoczy, tworząc nową transakcję do zapłaty i zachowując różnicę. Powoduje to tworzenie ponadwymiarowych transakcji i generowanie przyszłej transakcji, aby wydać różnicę.

Algorytm ten prowadzi również do problemu „złotego pyłu”, co skutkuje dużą liczbą transakcji o niskiej wartości.

Emercoin stosuje dynamiczne podejście programistyczne do wyboru podzbioru transakcji. Ten algorytm gwarantuje znalezienie idealnie pasującego podzbioru, jeśli istnieje. Nasze oceny pokazują, że średnia kwota transakcji spadła w ten sposób o 5%, spowalniając wzrost blockchain.

Rozproszone dynamiczne punkty kontrolne

Kryptowaluty PoS są podatne na niektóre egzotyczne ataki specyficzne dla PoS. Jednym z najniebezpieczniejszych z nich jest „atak wewnętrzny”. Jeśli nieuczciwy aktor uzyska kontrolę nad portfelami zawierającymi już wydane monety, może naśladować wycofanie do czasu, gdy te portfele faktycznie zawierały monety. W ten sposób aktor przejąłby kontrolę nad 51% monet, zbudowałby alternatywny blockchain dłuższy niż główny i retrospektywnie zmieniałby zawartość blockchaina.

Atakom tym można zapobiec poprzez punkty kontrolne, które ograniczają restrukturyzację łańcucha bloków do pewnego poziomu głębokości. Bitcoin używa tylko twardych punktów kontrolnych wbudowanych w kod portfela; takie punkty kontrolne są aktualizowane przy każdej aktualizacji portfela. Z drugiej strony Peercoin i Emercoin używają dynamicznych punktów kontrolnych z danymi punktów kontrolnych wysyłanymi online. Nie wymaga to aktualizacji kodu po stronie klienta i umożliwia ciągłą aktualizację struktury punktów kontrolnych.

Peercoin zapewnia tylko jeden węzeł do wysyłania danych punktu kontrolnego. W przypadku wysłania przez kilka węzłów, takie dane wywołałyby konflikt sieciowy. W związku z tym awaria tego węzła uniemożliwiłaby aktualizację danych dynamicznego punktu kontrolnego.

Z drugiej strony firma Emer zaimplementowała algorytm rozproszonego dynamicznego punktu kontrolnego, który uniemożliwia kilku niezależnym węzłom wysyłanie zduplikowanych danych punktów kontrolnych. Przyczynia się to do niezawodności sieci, ponieważ punkty kontrolne są nadal aktualizowane, nawet jeśli niektóre węzły ulegną awarii.

Brak inteligentnych kontraktów w stylu Ethereum

Emercoin nie przewiduje takich umów i nie zamierza ich wprowadzać. Jesteśmy całkowicie przeciwni takim umowom ze względów bezpieczeństwa. Zawsze wierzyliśmy, że nieautoryzowane pobieranie kodu zależnego od operacji Turinga jest niezwykle niebezpieczne, a niedawna kradzież Etheru o wartości 31 milionów dolarów dowiodła, że ​​mamy rację.

Magazyn nazw i wartości (NVS)

Podsystem Name-Value Storage (NVS) to nasza podstawowa innowacja z zewnętrzną praktyczną wartością, inspirowana kryptowalutą rozproszonego DNS firmy Namecoin.

W przeciwieństwie do podobnej struktury w Namecoin, która mocno skupiała się na rozproszonym DNS, Emercoin NVS jest zaufanym rozproszonym systemem pamięci masowej ogólnego przeznaczenia ze współdzieloną kontrolą.

Mówiąc najprościej, ten podsystem może przechowywać dowolne dane binarne o rozmiarze do 20 KB. Te punkty danych są połączone z kluczem wyszukiwania o długości do 512 bajtów, unikalnym dla całej sieci. Każdy rekord jest powiązany z adresem płatności należącym do odpowiedniego właściciela portfela.

Właściciel adresu płatności jest jedyną osobą upoważnioną do zarządzania rekordem. Zarządzanie rekordem oznacza tworzenie nowego rekordu w celu zastąpienia starego lub przeniesienie własności na inny adres płatności. Stare zapisy nigdy nie są usuwane i pozostają dostępne z odpowiedniego łańcucha bloków. W ten sposób każdy rekord ma pełną historię zmian w jego własności.

Technicznie rzecz biorąc, rekord w łańcuchu bloków jest wynikiem transakcji 0,01 EMC (wkrótce zostanie zredukowana do 0,0001 EMC), przypisanej do adresu płatności właściciela rekordu. Jako taki, ten wynik zawiera zawartość NVS. Właściciel rekordu jest jedyną osobą upoważnioną do wydania tego wyniku, ponieważ klucz prywatny do autoryzacji odpływu można znaleźć tylko w jego portfelu. Wydanie tej kwoty wymaga zmodyfikowania wartości rekordu lub innych atrybutów, w tym adresu płatności. W tym drugim przypadku rekord jest przenoszony do portfela zawierającego adres odbiorcy.

Podsystem NVS może być adresowany przez JSON API (podobnie jak w Bitcoin) lub poprzez GUI portfela.

System Emercoin NVS napędza wszystkie usługi oparte na Emercoin, które opiszemy w naszych dalszych postach, od 2017 do 2018 – więc bądź na bieżąco.