Co to jest Blob

blob | Co to jest Blob

Krótka Definicja

Blob (Binary Large Object) to nowatorski sposób publikowania danych transakcyjnych z rozwiązań warstwy drugiej (L2) na głównej sieci Ethereum (L1) w znacznie tańszy i bardziej efektywny sposób. W praktyce, bloby to pakiety danych, które są dołączane do bloków Ethereum na określony, krótki czas.

Analogia: Ogłoszenie na Tablicy Korkowej

Wyobraź sobie, że główna sieć Ethereum to miasto o bogatej historii. Każda ważna decyzja i transakcja jest trwale wykuwana w kamiennych murach ratusza. Jest to bardzo bezpieczne i każdy może sprawdzić, co zostało zapisane, ale proces kucia w kamieniu jest drogi i powolny. Tak wcześniej działało publikowanie danych przez L2 przy użyciu metody calldata.

Wprowadzenie blobów jest jak postawienie obok ratusza ogromnej, publicznej tablicy korkowej.

  1. Tanie i Szybkie Publikowanie: Zamiast kuć w kamieniu, deweloperzy L2 mogą teraz przypiąć pinezką na tablicy korkowej ogłoszenie zawierające wszystkie potrzebne dane. Jest to wielokrotnie tańsze i szybsze.
  2. Tymczasowość: Ogłoszenia na tablicy korkowej nie muszą wisieć wiecznie. Po kilku tygodniach (obecnie ok. 18 dni) stare ogłoszenia są zdejmowane, aby zrobić miejsce na nowe. To właśnie ta tymczasowość jest głównym powodem, dla którego bloby są tak tanie – sieć nie musi gwarantować przechowywania tych danych na zawsze.
  3. Publiczna Weryfikacja: Każdy mieszkaniec miasta (węzeł w sieci Ethereum) może podejść do tablicy i potwierdzić, że ogłoszenie tam wisi. Nie musi go jednak czytać ani analizować jego treści. Wystarczy, że potwierdzi jego dostępność. To gwarantuje bezpieczeństwo rozwiązań L2, które na tych danych polegają.

W skrócie: bloby to „przestrzeń ogłoszeniowa” dla L2, która jest tania i efektywna, ponieważ jest tymczasowa i oddzielona od „kamiennych murów” głównego rejestru Ethereum.

Szczegółowe Wyjaśnienie

Przed wprowadzeniem blobów, rozwiązania L2 (takie jak Arbitrum, Optimism czy ZK-Rollups) musiały publikować skompresowane dane o swoich transakcjach w polu calldata transakcji na L1. Było to kosztowne z dwóch głównych powodów:

  • Dane te były przechowywane na stałe w historii blockchainu.
  • Dane te były dostępne dla maszyny wirtualnej Ethereum (EVM), co oznaczało dodatkowe obciążenie dla wszystkich węzłów.

Bloby, wprowadzone w ramach aktualizacji Dencun (EIP-4844), rozwiązują ten problem, tworząc oddzielny, dedykowany kanał dla danych L2. Charakteryzują się trzema kluczowymi właściwościami:

  1. Tania Przestrzeń: Bloby istnieją w oddzielnej przestrzeni, która ma swój własny rynek opłat, niezależny od standardowego gazu za wykonanie transakcji.
  2. Tymczasowość: Dane w blobach są gwarantowane do przechowywania przez sieć tylko przez określony czas (ok. 18 dni). Po tym okresie mogą zostać usunięte przez węzły, aby zaoszczędzić miejsce na dysku. Jest to wystarczająco długo, aby zapewnić bezpieczeństwo L2.
  3. Niedostępność dla EVM: Kontrakty na L1 nie mogą bezpośrednio odczytać zawartości bloba. Mogą jedynie zweryfikować kryptograficzny dowód, że dane bloba zostały opublikowane i są dostępne.

Dlaczego to jest ważne?

Wprowadzenie blobów było jednym z największych kroków w kierunku skalowania Ethereum. Dzięki nim opłaty transakcyjne na warstwach drugich spadły od kilku do nawet kilkudziesięciu razy, czyniąc ekosystem Ethereum znacznie bardziej dostępnym i konkurencyjnym. Jest to fundamentalny element roadmapy skoncentrowanej na rollupach (Rollup-Centric Roadmap).