Ethereum wciąż pracuje nad uzupełniającym planem równoległego EVM, ale Bitcoin może wkrótce spodziewać się własnej warstwy 2 równoległych maszyn wirtualnych.

Najpierw zrozummy, dlaczego Ethereum nie może osiągnąć równoległego EVM.

Aby zachować spójność i bezpieczeństwo sieci, EVM ma kluczową cechę w swojej konstrukcji: transakcje są wykonywane sekwencyjnie. Wykonanie sekwencyjne zapewnia, że ​​transakcje i inteligentne kontrakty mogą być wykonywane w deterministycznym porządku, co ułatwia zarządzanie i przewidywanie stanu łańcucha bloków. Ten wybór projektu priorytetowo traktuje bezpieczeństwo, redukując potencjalną złożoność i luki w zabezpieczeniach związane z wykonaniem równoległym. Jednak przy dużym obciążeniu żądaniami transakcji to sekwencyjne wykonywanie może prowadzić do przeciążenia sieci i opóźnień, podobnie jak w przypadku autostrady jednopasmowej.

Czy można po prostu dodać pasy? Odwoływanie się do istniejących rozwiązań tzw. równoległych maszyn wirtualnych, w tym do łańcuchów shardingowych typu Near. Sieci te zaproponowały skalowanie blockchainu poprzez wprowadzenie większej liczby maszyn wirtualnych w celu skalowania inteligentnych kontraktów. Zasadniczo obciążenie jedną inteligentną umową nadal spoczywa na określonej maszynie wirtualnej. Jeśli wszystkie inteligentne kontrakty w tym łańcuchu zużywają taką samą ilość TPS, problem zostaje rozwiązany. Jeśli jednak tylko kilka kontraktów, takich jak protokoły Aave i Uniswap, zużywa ponad 90% przestrzeni blokowej, posiadanie kontraktów działających na jednym fragmencie oznacza jedynie skalowanie na poziomie łańcucha bez korzystania z ulepszeń wprowadzonych przez sharding. Dodawanie pasów bez możliwości przełączania pasów stanowi aktualny dylemat równoległości maszyn wirtualnych.

Parallel EVM polega na wycinaniu lub buforowaniu danych w warstwie danych. Jednakże, ograniczony modelem programowania EVM, Solidity, jako najpopularniejszy język programowania inteligentnych kontraktów, nie jest w stanie zmaksymalizować potencjału równoległej architektury blockchain. To jakby nie programować w SQL na procesorze graficznym NVIDIA. W solidności brakuje wyrażeń dla architektur równoległych, takich jak wykonanie przekaźnika, i brakuje określonej końcowej atomowości dla transakcji równoległych.

Prawdziwa równoległość w architekturze blockchain wymaga osiągnięcia takiego rezultatu, że transakcje jednego inteligentnego kontraktu mogą działać na wielu maszynach wirtualnych jednocześnie. Aby w pełni wykorzystać model równoległy w architekturze blockchain, potrzebny jest model programowania taki jak CUDA.

BitReXe wspomina, że ​​Bitcoin wprowadza w pełni równoległą warstwę 2 maszyny wirtualnej obsługującą architekturę Turinga, aby zapewnić podstawową obsługę infrastruktury dla rzeczywistych aplikacji w ekosystemie Bitcoin oraz ekskluzywny model programowania dla równoległych maszyn wirtualnych, PREDA.

Jak BitReXe osiąga równoległe maszyny wirtualne na Bitcoinie

Równoległe maszyny wirtualne

Poniższa ilustracja podkreśla różnice pomiędzy BitReXe i innymi inicjatywami promującymi równoległe maszyny wirtualne. Jak pokazano w lewym segmencie rysunku, Ethereum stosuje się do modelu stanu pojedynczej maszyny, w którym wszystkie kody (inteligentne kontrakty) i stany (dane) są replikowane i zarządzane przez każdy węzeł łańcucha bloków za pośrednictwem wirtualnej maszyny Ethereum (EVM). Istniejące projekty wykorzystują równoległe EVM, jak pokazano w środkowej części rysunku, gdzie pojedynczy inteligentny kontrakt jest wdrażany na dedykowanej maszynie wirtualnej (lub maszynach wirtualnych w wyznaczonym fragmencie w celu utrzymania konsensusu). Wszystkie transakcje związane z inteligentnym kontraktem są przetwarzane przez maszynę wirtualną (lub maszyny wirtualne fragmentu w sposób całkowicie zduplikowany).

W ujednoliconym modelu równoległości BitReXe, jak pokazano w prawym segmencie rysunku, wszystkie inteligentne kontrakty są wdrażane na wszystkich maszynach wirtualnych w sieci. Stany inteligentnego kontraktu podlegają partycjonowaniu i dystrybucji pomiędzy odrębnymi instancjami maszyn wirtualnych, zapewniając nienakładającą się alokację. Odpowiednio transakcje inteligentnego kontraktu są segmentowane i dystrybuowane w celu niezależnego i równoległego przetwarzania na maszynach wirtualnych. W idealnym przypadku takie podejście ułatwia liniowe skalowanie całkowitej przepustowości transakcji i pojemności stanu wraz ze wzrostem liczby maszyn wirtualnych.

Podstawowym wyzwaniem jest efektywne zarządzanie zależnościami pomiędzy logiką wykonania (kod) a stanem kontraktu (dane), przy jednoczesnym umożliwieniu niezależnego wykonania maszyny wirtualnej i uniknięciu synchronizacji, ponieważ kompleksowa logika wykonania transakcji może wiązać się z dostępem do wielu segmentów stanów kontraktu, z których każdy znajduje się w na oddzielnych maszynach wirtualnych po partycjonowaniu stanu.

uczyć

Przedstawiamy architekturę rozproszoną typu Parallel Relay-Execution (PREDA), przełomowy model programowania zaprojektowany do skalowania inteligentnych kontraktów w łańcuchach bloków typu sharding, systemach parachain i łańcuchach bloków warstwy 2. PREDA obsługuje architekturę równoległą: jeśli Solidity dla Ethereum porównuje się do programowania na jednordzeniowym procesorze, architektura równoległa PREDA dla BitReXe jest podobna do CUDA dla procesora graficznego NVIDIA.

Model PREDA wprowadza dwa kluczowe komponenty: (1) „Programowalne zakresy kontraktu”, umożliwiające programistom zdefiniowanie partycjonowania stanu kontraktu w oparciu o wzorzec dostępu do danych aplikacji, zawężając zakres dostępu do danych i minimalizując zależność danych; oraz (2) „Asynchroniczny przekaźnik funkcjonalny” umożliwiający programistom artykułowanie logiki transakcji z ukrytymi zależnościami danych w celu elastycznego wykonywania w wielu silnikach wykonawczych (VM). Zaimplementowany jako rozszerzony język Solidity, PREDA zawiera dodatkową składnię dla programowalnych zakresów kontraktów i instrukcji dla asynchronicznego przekaźnika funkcjonalnego.

Rysunek ilustruje wersję PREDA uproszczonego kontraktu ERC20. Słowo kluczowe „@address” definiuje zakres sald użytkowników, co odpowiada definicji mapy Solidity, ale określa szczegółowe i możliwe do rozdzielenia stany do partycjonowania według adresu. W czasie wykonywania stany podzielone według adresów są zarządzane przez zestaw maszyn wirtualnych w łańcuchu BitReXe. Różne stany nie są utrzymywane przez różne zestawy maszyn wirtualnych. Funkcja przelewu w zakresie „@adres”, wywoływana przez płatników (czyli adresy użytkowników inicjujących transakcje przelewów), inicjuje „przekaźnik” wpłaty do odbiorcy. Przekaźnik ten, wykonywany przez maszynę wirtualną obsługującą stany adresu odbiorcy, dodaje środki do salda odbiorcy.

W PREDA inteligentny kontrakt może mieć wiele zakresów ze zdefiniowanymi zmiennymi i funkcjami. W zakresie można zdefiniować wiele funkcji i zmiennych dowolnego typu, w tym kontenerów. W ramach jednego wywołania funkcji można zainicjować wiele przekaźników, warunkowo lub bezwarunkowo, co umożliwia inicjację rekurencyjną i umożliwia przenoszenie przepływu wykonywania transakcji z wieloma przeskokami pomiędzy różnymi instancjami maszyn wirtualnych. To podejście polegające na wykonywaniu przekaźnikowym rozkłada transakcję na wiele mikrotransakcji, zapewniając ograniczony dostęp do stanu na pojedynczej maszynie wirtualnej i unikając warunków wyścigu. W inteligentnym kontrakcie transferowym PREDA rozbicie transakcji na mikrotransakcję „wypłata” i mikrotransakcję „wpłata” umożliwia równoległą realizację tych dwóch typów mikrotransakcji, o ile ich cele (w tym przypadku adresy) są mapowane na różne maszyny wirtualne.

BitReXe organizuje maszyny wirtualne w wiele grup konsensusowych, z których każda niezależnie obsługuje protokół konsensusu (w implementacji oparty na PoW), aby osiągnąć konsensus w sprawie wykonanych transakcji. Wdrażany jest konsensus międzygrupowy w celu utrzymania poprawności i spójności asynchronicznych przekaźników funkcjonalnych, zaimplementowanych jako transakcje przekaźnikowe w BitReXe.

Warstwa 2 Bitcoina

Paradygmat emisji aktywów na warstwie Bitcoin, takiej jak napis, stale wykorzystuje lukę w zabezpieczeniach Bitcoina, mówi Luke. Podczas gdy pieniądze nigdy nie śpią, tak jak napisy mogą nigdy nie umrzeć. Bitcoin desperacko potrzebuje prawdziwie skalowalnej warstwy 2, która może uwolnić taką presję i zapobiec zbyt szybkiemu wzrostowi rozmiaru księgi głównej, co osłabi decentralizację. Jest bardzo mało prawdopodobne, aby taki cel został osiągnięty za pomocą rozwiązania EVM+Bridge.

BitReXe proponuje równoległe maszyny wirtualne i PREDA do skalowania bitcoinów. Tymczasem dostosowuje się do bezpieczeństwa bitcoina. Wykorzystuje BTC jako opłatę za gaz, dzieli bezpieczeństwo Bitcoina i zapewnia pozbawione zaufania rozliczenie aktywów pomiędzy dwoma łańcuchami.

BitReXe ponownie wykorzystuje moc obliczeniową mieszającą sieci Bitcoin, która jest przenoszona przez bloki w łańcuchu, bloki osierocone i przedwczesne bloki jako dowód pracy w celu utworzenia prawidłowych bloków w sieci warstwy 2 bez modyfikowania protokołu Bitcoin. Górnicy Merge otrzymują jako nagrodę rxBTC, bitcoin powiązany w stosunku 1:1 w sieci BitReXe. Użytkownicy płacą opłaty za gaz za pomocą rxBTC za transakcje, interakcję z inteligentnymi kontraktami i inne działania w łańcuchu. W laboratorium Fullnodes zespół programistów PREDA i BitReXe wkrótce wprowadzi rozwiązanie pomostu do rozliczania aktywów bez zaufania pomiędzy Bitcoinem a BitReXe, w którym powiązanie rxbtc jest jednocześnie powiązaniem czyjegoś BTC. Oficjalne adresy peg-out nie są już wymagane, dlatego też założenie zaufania zostaje wyeliminowane.

Nasze wysokie oczekiwania wobec ekosystemu Bitcoin wynikają z jego zdolności do rozwiązywania problemów, których Ethereum – jako sieć testowa Bitcoin – nie rozwiązało.

@Bit_ReXe uważa, że ​​problem ten wynika z braku równoległych mechanizmów EVM prowadzących do trylematu blockchain i ma na celu bezpośrednie rozwiązanie go w warstwie 2 Bitcoin.

Jeśli problem ten uda się rozwiązać na Bitcoinie, wówczas benchmarking TVL lub nawet przewyższenie Ethereum ponad trzykrotnie na Bitcoin Layer 2 stanowiłoby zasadniczy przełom.

To jest post gościnny autorstwa BitPNova. Wyrażone opinie są wyłącznie ich własnymi opiniami i niekoniecznie odzwierciedlają opinie BTC Inc lub Bitcoin Magazine.

Źródło: Magazyn Bitcoin

Post BitReXe: Włączanie równoległych maszyn wirtualnych w sieci Bitcoin pojawił się jako pierwszy w Crypto Breaking News.