Być może zauważyłeś, że prawie każdy programista uczestniczy w ceremonii KZG i przesyła dalej tweety, więc czym jest ceremonia KZG?
Krótko mówiąc, KZG Ceremony to konfiguracja zaufania EIP-4844 KZG, a EIP-4844 to wstępna wersja pełnego shardingu Ethereum.

1. Sharding: długoterminowe rozwiązanie do skalowania Ethereum
Podczas gdy pakiety zbiorcze skalują Ethereum z warstwy wykonawczej, sharding poprawia skalowalność i pojemność Ethereum z punktu widzenia dostępności danych.
Poniższy wykres trendów pokazuje, że średni rozmiar bloku oscyluje wokół 90 KB, pomimo szybkiej iteracji Ethereum w tych latach. Chociaż pakiety zbiorcze w szczególności zmniejszają obciążenie sieci, ogólna wydajność jest nadal ograniczona przez pojemność przechowywania danych w warstwie 1.

Biorąc pod uwagę bezpieczeństwo i złożoność implementacji, sharding jest podzielony na wiele faz, które obejmują proto-danksharding i danksharding. Cały proces może potrwać kilka lat.
Biorąc pod uwagę obecny schemat przechowywania, tylko kilka wysokowydajnych sprzętów może uczestniczyć jako węzły. Po wdrożeniu shardingu węzły nie muszą przechowywać pełnej zawartości danych historycznych, co wykorzystuje bezpieczeństwo Ethereum poprzez obniżenie progu stania się węzłem (niższy koszt przechowywania danych i wyższy stopień decentralizacji).
2. EIP-4844: Wyjątkowy krótkoterminowy zwrot, wersja przedpremierowa pełnego shardingu Ethereum
EIP-4844 = Proto-Danksharding;
Ponieważ pełna implementacja shardingu jest nadal zbyt złożona i może potrwać lata, proto-danksharding jest najlepszym planem przejściowym mającym na celu zmniejszenie przeciążenia Ethereum w krótkim okresie.

2.1 Podsumowanie proto-dankshardingu
Proto-Danksharding wprowadza nowy typ transakcji zwany transakcją blob-carrying. Korzystając z tej aktualizacji, rollupy mogą używać „bloba” do przesyłania danych do L1 i przechowywania ich tymczasowo przy stosunkowo niższych kosztach. Rozmiar bloba jest znacznie większy niż obecne calldata.
O blob:
Każda transakcja może zawierać maksymalnie 2 bloby
Każdy blok normalnie zawiera 8 blobów o pojemności 1 MB.
Blok może zawierać 16 blobów, co daje rozmiar bloku 2 MB.
Blob nie jest trwale przechowywany jako dziennik historii, tak jak calldata.
W projekcie proto-dankshardingu węzły nadal muszą pobierać pełną zawartość danych i weryfikować ich dostępność.
2.2 Szczegółowa analiza transakcji przenoszących obiekty typu blob

Funkcjonalność
Funkcjonalność blobu danych jest podobna do calldata, która umożliwia rollupowi przesyłanie danych transakcji i dowodów do L1.
Koszt
Pierwotnym zamysłem blobu jest obsługa wysokiego TPS w rollupach. W porównaniu do calldata, który używa pamięci masowej on-chain, te bloby danych są pobierane i przechowywane tylko przez pewien czas. Dlatego wydatki na gaz dla rollupów w celu zapewnienia dostępności danych będą przewidywalnie niższe.
Pojemność
Rozmiar każdego blobu wynosi 125 kB.
2.3 Wartość i wyzwanie związane z transakcją zawierającą obiekty blob
Wartość
Niewątpliwie pojawienie się blobów sprawia, że dane transakcyjne stają się pewnego rodzaju pamięcią podręczną, co dodatkowo obniża wymagania sprzętowe dotyczące pamięci masowej dla węzłów i zmniejsza opłatę za gaz, zapewniając Ethereum dodatkową przestrzeń do przechowywania danych.
Wyzwanie: Obliczmy wymagania sprzętowe
Faktem jest, że obecny rozmiar bloku wynosi około 90 kB, ale rozmiar blobu może osiągnąć 125 kB
Zgodnie z projektem EIP-4844 rozmiar każdego slotu wynosi zazwyczaj 1 MB, co oznacza, że całkowity rozmiar danych można obliczyć w następujący sposób:
1 MB/blok * 5 bloków/min * 43200 min/miesiąc * 12 miesięcy/rok = 2,47 TB rocznie
Oczywiste jest, że roczny przyrost danych znacznie przekracza całkowitą ilość danych Ethereum, co oznacza, że ten naiwny plan przechowywania danych nie jest wydajny.
Co można zoptymalizować?
W krótkim okresie każdy węzeł nadal musi przechowywać pełną zawartość danych historycznych, ale warstwa konsensusu jest implementowana przy użyciu schematu, zgodnie z którym dane blob zostaną usunięte po upływie określonego czasu (30 dni lub 1 rok, do ustalenia).
Aby uzyskać długoterminowe korzyści, należy wdrożyć EIP-4444, co oznacza, że węzły nie muszą już przechowywać pełnych danych. Zamiast tego przyjęto nowy mechanizm, który pozwala węzłom przechowywać tylko części danych przez określony czas, odnosząc się do tzw. schematu wygasania historii.
2.4 Zaangażowanie KZG
Zobowiązanie KZG to wielomianowy schemat zobowiązań przyjęty przez proto-danksharding EIP-4844
Ceremonia KZG to proces ustanawiania zaufania dla zaangażowania KZG, w którym bierze udział ponad 30 000 uczestników.
2.4.1 Czym jest zobowiązanie KZG
KZG to skrót od Aniket Kate, Gregory'ego M. Zaveruchy i Iana Goldberga, którzy w 2010 r. opublikowali esej na temat zobowiązań wielomianowych „Constant-Size Commitments to Polynomials and Their Applications”. Zobowiązanie KZG jest szeroko stosowane w protokole zk-snark w stylu plonk.

Odnosząc się do diagramu z prezentacji Dankrada, pierwiastek KZG jest podobny do pierwiastka Merkle’a, z tą różnicą, że pierwiastek KZG zatwierdza wielomian, gdzie każda pozycja leży na tym wielomianie. Na podstawie scenariusza proto-dankshardingu pierwiastek KZG zatwierdza zbiór danych, gdzie każdy pojedynczy punkt danych może zostać zweryfikowany jako część całego zbioru.
Krótki przegląd wewnętrznego działania zobowiązania KZG
Prover: Odpowiedzialny za obliczanie zobowiązania. Ze względów bezpieczeństwa, proofer nie może modyfikować danego wielomianu, a zobowiązanie jest ważne tylko dla bieżącego wielomianu;
Weryfikator: Odpowiada za weryfikację zobowiązania przesłanego przez osobę sprawdzającą.
2.4.2 Ceremonia KZG (zaufana konfiguracja)

Przebieg uroczystości KZG

Każdy może dołączyć jako uczestnik ceremonii KZG i dodać sekret. Nowo dodany sekret zostanie zmieszany z poprzednim wyjściem, aby utworzyć nowy wynik, a na końcu wygenerować SRS dla konfiguracji zaufania zobowiązań KZG. (Sprawdź diagram dostarczony przez Vitalika, aby lepiej zrozumieć)
Konfiguracja zaufania
Ceremonia KZG to bardzo popularna praktyka zaufania wieloosobowego zwana siłą tau;
Ta konfiguracja opiera się na modelu zaufania 1 z N, co oznacza, że niezależnie od tego, ilu uczestników przyczyni się do utworzenia ostatecznej konfiguracji, o ile chociaż jedna osoba zachowa swoją tajemnicę, można zagwarantować ważność konfiguracji.
Znaczenie ceremonii KZG
Wartość zaufania konfiguracji zobowiązania KZG można interpretować następująco: w celu wygenerowania parametru, który jest niezbędny dla każdego pojedynczego wykonania protokołu kryptograficznego
Gdy dowodzący oblicza zobowiązanie, zobowiązanie KZG C = f(s)g1, gdzie f jest funkcją oceny, a s jest końcowym wynikiem konfiguracji zaufania KZG. Dlatego ostateczny sekret wygenerowany przez bieżącą ceremonię KZG jest kluczowy dla następnej implementacji shardingu.
2.4.3 Zaleta zobowiązania KZG
Koszt
Zobowiązanie KZG jest mniej złożone i można je skutecznie zweryfikować.
Nie potrzeba żadnych dodatkowych dowodów, co obniża koszty i eliminuje potrzebę zwiększenia przepustowości.
Jeszcze niższy koszt dzięki wykorzystaniu wstępnej kompilacji oceny punktowej.
Bezpieczeństwo
Jeśli wystąpi awaria, zainfekowany zostanie tylko blob odpowiadający bieżącemu zobowiązaniu i nie będzie miało miejsca dalsze działanie łańcuchowe.
Zgodność
Zaangażowanie KZG jest bardziej przyjazne dla DAS, co pozwala uniknąć powtarzalności w procesie rozwoju.
2.5 Korzyść z EIP-4844
Zwiń
Jak pokazano na poniższym rysunku, rollup musi przesłać deltę stanu i skrót wersji zobowiązania KZG poprzez calldata (zk-rollup nadal musi przesłać zkp).
Po wdrożeniu protokołu EIP-4844 kosztowne dane wywołań przenoszą tylko pewne niewielkie dane, takie jak różnice stanów i zobowiązania, natomiast większe dane, takie jak pakiety transakcji, są umieszczane w obiekcie blob.
obniżyć koszty;
zmniejszyć wykorzystanie przestrzeni magazynowej bloku.

Poprawa bezpieczeństwa
Dostępność danych: Blob jest przechowywany w łańcuchu beacon, który korzysta z tych samych zabezpieczeń co Ethereum L1.
Dane historyczne: węzły przechowują bloby tylko przez określony czas, a za trwałe przechowywanie danych odpowiada funkcja zwijania w warstwie 2, co oznacza, że bezpieczeństwo danych historycznych opiera się na funkcji zwijania.
Koszt
Niskie koszty transakcji zawierających obiekty blob mogą zoptymalizować całkowity koszt od 10 do 50 razy.
Tymczasem EIP-4844 wprowadza opłatę za blob
Ceny gazu i blob będą podlegać osobnym, regulowanym limitom;
Jednostką cenową bloku jest gaz, a jego ilość będzie się zmieniać w zależności od ruchu w sieci, co ma na celu utrzymanie liczby przenoszonej przez każdy blok (średnio 8).
Implementacja prekompilacji
Wykonanie EVM może jedynie wyświetlić zobowiązanie blobu wygenerowane przez proofer i nie może uzyskać bezpośredniego dostępu do danych blobu. Dlatego rollup musi użyć schematu prekompilacji, aby zweryfikować ważność zobowiązania.
W EIP-4844 wspomniano o dwóch algorytmach prekompilacji
Wstępna kompilacja oceny punktowej
Udowodnij, że wiele zobowiązań dotyczy tego samego zestawu danych.
Kompilacja wstępna oceny punktowej jest głównie stosowana przez zk-rollup, rollup musi zapewnić dwa zobowiązania, zobowiązanie KZG i zobowiązanie zk-rollup
Jeśli chodzi o optymistyczne zestawienie, większość z nich przyjęła wielorundową ochronę przed oszustwami, a odporna na oszustwa runda końcowa obejmuje mniejszy rozmiar danych, co oznacza, że można również wykorzystać punktową ocenę wstępnej kompilacji przy niższych kosztach.
Wstępna kompilacja weryfikacji blobu
Udowodnij, że wersjonowany skrót jest prawidłowy dla odpowiadającego mu blobu
Optymistyczne podsumowanie wymaga dostępu do pełnych danych podczas przesyłania danych odpornych na oszustwa, dlatego racjonalne jest sprawdzenie poprawności skrótu w wersji, a następnie przeprowadzenie weryfikacji odpornej na oszustwa.
3. Danksharding: kluczowy krok w kierunku pełnego shardingu
Ułuskowienie
Dzięki nowemu projektowi typu transakcji proto-danksharding, który wprowadza blob danych, każdy blok ma teraz dodatkową pamięć podręczną 1 MB. Liczba ta wzrośnie 16 do 32 razy po wdrożeniu danksharding.
Dostępność danych: Wysokowydajne przechowywanie i weryfikacja danych
W porównaniu do proto-dankshardingu, w którym węzły muszą przechowywać pełną zawartość danych historycznych, danksharding pozwala węzłom przechowywać dane wyłącznie po pobraniu próbek.
TO
Wykorzystując technologię kodowania wymazywania, propozycja dankshardingu ułatwia węzłom wykrywanie utraty danych (każdy węzeł musi pobrać tylko część danych).
Bezpieczeństwo: Prawie takie samo
Ponieważ węzły nie muszą już przechowywać pełnej zawartości danych historycznych, bezpieczeństwo nie jest wspierane przez pojedynczy węzeł, lecz opiera się na wielu węzłach, które przechowują części danych i mogą być dalej komponowane oraz odzyskiwane w całości.
Mimo że schemat zależności jednopunktowej jest bezpieczniejszy od schematu zależności wielopunktowej, liczba węzłów w sieci Ethereum jest więcej niż wystarczająca, co pozwala na osiągnięcie celu, jakim jest zapewnienie dostępności danych.

Nowe wyzwanie: wyższe wymagania dla budowniczych bloków
Podczas gdy walidatory pobierają i przechowują jedynie fragmenty pełnych danych, konstruktor bloków musi przesłać pełną zawartość danych, czyli blok zawierający wszystkie dane transakcji.
Zgodnie z diagramem ze slajdów Dankrada możemy zobaczyć, w jaki sposób PBS (separacja wnioskodawcy/budowniczego), pierwotnie zaprojektowany dla anty-MEV, pomaga w zmniejszeniu wymagań dotyczących przepustowości podczas budowania bloków.
4. Inny schemat partycjonowania: dynamiczne partycjonowanie stanu z Shardeum
Shardeum to zgodny z EVM blockchain L1, który wykorzystuje dynamiczne sharding stanu w celu poprawy skalowalności i bezpieczeństwa. Tymczasem sieć shardeum jest w stanie zapewnić wyższy poziom decentralizacji.

Dynamiczne fragmentowanie stanu
Zalety
Najbardziej intuicyjne korzyści dynamicznego fragmentowania stanu to skalowanie liniowe. Każdy węzeł ma inny zakres adresów, a adresy objęte przez węzły znacznie się pokrywają. Algorytm fragmentowania grupuje węzły dynamicznie, co oznacza, że nowo dodane węzły w sieci Shardeum działają natychmiast, aby zwiększyć TPS.
Realizacja
Złożoność implementacji dynamicznego fragmentowania stanu jest trudniejsza niż statycznego fragmentowania. Zespół techniczny Shardeum dogłębnie zbadał technologie fragmentowania. Poprzednie osiągnięcia w zakresie badań i rozwoju dokonane przez zespół Shardeum (wcześniej technologia Shardus) również wnoszą znaczący wkład, co pozwala pokazać liniowe skalowanie dynamicznego fragmentowania stanu na wczesnym etapie rozwoju.
Streszczenie
Produkt
Nawiązując do idei dziel i rządź, dynamiczny shardeum state sharding dzieli obciążenie obliczeniowe i magazynowe, co pozwala na wyższy poziom paralelizacji. Dlatego sieć jest w stanie pomieścić więcej węzłów, co dodatkowo poprawia przepustowość i poziom decentralizacji.
Zespół
Zespół Shardeum ma duże doświadczenie w marketingu i zdolności narracyjne. Mają również głębokie zrozumienie szczegółów technicznych, zwłaszcza dynamicznego shardingu stanu.
Technologia
Zespół techniczny jest w stanie zaprojektować odpowiedni schemat partycjonowania i wydajny algorytm konsensusu (Proof of Stake + Proof of Quorum) na podstawie zrozumienia scenariusza, który stawia skalowalność i przepustowość na pierwszym miejscu i zapewnia bezpieczeństwo i poziom decentralizacji w możliwie największym stopniu.
Postęp
Betanet został uruchomiony 2023–02–02.
5. Perspektywy
Sharding to długoterminowe rozwiązanie skalowania dla Ethereum, ma ogromną wartość i głębokie znaczenie dla całej sieci. Gorzej jest zwracać na to szczególną uwagę, ponieważ implementacja shardingu jest procesem iteracji. Wszystkie obecne propozycje, w tym proto-danksharding i danksharding, można uaktualniać/zmieniać.
Podczas gdy zrozumienie ogólnej metody wdrażania shardingu jest ważne, warto również zwrócić uwagę na propozycje techniczne, takie jak PBS, DAS, wielowymiarowy rynek opłat itp., które pojawiają się w trakcie procesu. Może być wiele wybitnych projektów towarzyszących tym schematom.
Ważne jest, aby wiedzieć, że sharding to ogólny termin opisujący zestaw technologii skalowania, a istnieją różne schematy aplikacji w zależności od konkretnych scenariuszy. Na przykład projekt dankshardingu może pasować tylko do Ethereum i prawdopodobnie może prowadzić do negatywnego efektu, jeśli zostanie zastosowany w innych L1, ponieważ bezpieczeństwo musi być zagwarantowane przez ogromną liczbę węzłów w sieci.
Racjonalne połączenie shardingu i innych rozwiązań skalowania może osiągnąć efekt mnożnikowy. Obecna propozycja dankshardingu nie będzie działać sama. Zamiast tego rollupy i danksharding uzupełniają się nawzajem, aby lepiej poprawić skalowalność i pojemność Ethereum.
Odniesienie
https://notes.ethereum.org/@dankrad/kzg_commitments_in_proofs
https://notes.ethereum.org/@dankrad/new_sharding
https://vitalik.ca/general/2022/03/14/trustedsetup.html
https://notes.ethereum.org/@vbuterin/proto_danksharding_faq#Why-use-the-hash-of-the-KZG-zamiast-of-the-KZG-bezpośrednio
https://ethresear.ch/t/easy-proof-of-equivalence-between-multiple-polynomial-commitment-schemes-to-the-same-data/8188
https://dankradfeist.de/ethereum/2020/06/16/kate-polynomial-commitments.html
https://eips.ethereum.org/EIPS/eip-4844
https://www.eip4844.com/
https://biquanlibai.notion.site/Data-Availability-caa896aae59d489b98f2448f17b01640
https://ethresear.ch/t/a-design-of-decentralized-zk-rollups-based-on-eip-4844/12434
O firmie Foresight Ventures
Foresight Ventures jest oddany wspieraniu przełomowej innowacji blockchain przez następne kilka dekad. Zarządzamy wieloma funduszami: funduszem VC, aktywnie zarządzanym funduszem wtórnym, wielostrategicznym funduszem FOF i funduszem wtórnym rynku prywatnego, z AUM przekraczającym 400 milionów dolarów. Foresight Ventures wyznaje zasadę „Unikalnego, niezależnego, agresywnego, długoterminowego sposobu myślenia” i zapewnia szerokie wsparcie dla spółek portfelowych w rozwijającym się ekosystemie. Nasz zespół składa się z weteranów z czołowych firm finansowych i technologicznych, takich jak Sequoia Capital, CICC, Google, Bitmain i wiele innych.
Strona internetowa: https://www.foresightventures.com/
Twitter: https://twitter.com/ForesightVen
Medium: https://foresightventures.medium.com
Podstos: https://foresightventures.substack.com
Discord: https://discord.com/invite/maEG3hRdE3
Drzewo linków: https://linktr.ee/foresightventures

