Czym jest blob
Blob to specjalny typ danych w Ethereum wprowadzony przez EIP-4844, czyli proto-danksharding. Najłatwiej myśleć o nim jako o dużej paczce danych, którą rollup może dołączyć do Ethereum bez używania zwykłego calldata.
Przed blobami rollupy publikowały dane transakcyjne głównie jako calldata. To było droższe, bo calldata konkuruje o zasoby z innymi transakcjami i zostaje w historii na stałe.
Blob pozwala oddzielić dane potrzebne rollupom od normalnego wykonania smart kontraktów. EVM widzi zobowiązanie kryptograficzne do bloba, ale nie czyta jego pełnej zawartości podczas wykonania transakcji.
Blob kontra calldata
- Blob
- Tymczasowe dane dla rollupów, tańsze w publikacji i wyceniane w osobnym rynku opłat.
- Calldata
- Dane transakcyjne dostępne dla EVM i przechowywane w historii łańcucha na stałe.
- Kto używa blobów
- Głównie Layer 2 i rollupy publikujące skompresowane dane transakcji.
- Jak długo są przechowywane
- Surowe dane blobów są przechowywane tymczasowo, około 18 dni.
- Co zostaje na stałe
- Zobowiązanie kryptograficzne, czyli commitment, które wskazuje na opublikowane dane.
Dlaczego blob obniża koszty Layer 2
Rollup musi opublikować dane pozwalające odtworzyć lub sprawdzić jego stan. Bez tego użytkownicy i obserwatorzy nie mogliby niezależnie zweryfikować, co wydarzyło się na L2.
Blob daje rollupom tańszy kanał publikacji danych. Po aktywacji aktualizacji Dencun koszty danych dla wielu rollupów spadły mocno, a część tej oszczędności trafiła do użytkowników jako niższe opłaty na L2.
Użytkownik zwykle nie widzi bloba bezpośrednio. Widzi jego efekt: tańsze transfery, swapy i interakcje na rollupach, dopóki rynek blobów nie jest przeciążony.
Najważniejsze cechy blobów
Blob jest technicznym elementem skalowania Ethereum, ale jego skutki są praktyczne dla użytkowników L2.
- Ma osobny rynek opłat, niezależny od zwykłego execution gas.
- Jest przeznaczony głównie do publikacji danych rollupów.
- Nie jest czytany bezpośrednio przez EVM w trakcie wykonania smart kontraktu.
- Zostaje usunięty z pełnego przechowywania po ograniczonym czasie.
- Jego commitment pozostaje częścią historii Ethereum.
Czym jest blob fee market
Bloby mają własny rynek opłat podobny w duchu do EIP-1559. Gdy popyt na bloby rośnie, opłata bazowa za blob też rośnie.
To tłumaczy, dlaczego opłaty na L2 mogą czasem skoczyć mimo tego, że zwykły gaz na Ethereum nie wygląda ekstremalnie drogo. Rollupy płacą za miejsce w blobach, a ten rynek może mieć własne przeciążenia.
Blob fees są płacone w ETH i spalane podobnie jak base fee w Ethereum. To osobny składnik ekonomii opłat, ważny szczególnie dla rollupów.
Przykład praktyczny
- Użytkownicy wykonują wiele transakcji na rollupie.
- Rollup kompresuje dane tych transakcji w batch.
- Batch trafia do Ethereum jako dane w blobie.
- Ethereum przechowuje commitment i udostępnia dane przez wymagany czas.
- Koszt publikacji danych jest niższy niż przy klasycznym calldata, więc L2 może oferować tańsze transakcje.
Najczęstsze błędne założenia
- Blob nie jest miejscem na dowolne trwałe dane aplikacji.
- Smart kontrakt nie czyta zawartości bloba tak jak calldata.
- Bloby obniżają koszt danych dla rollupów, lecz nie kończą całego problemu skalowania Ethereum.
- Tanie L2 po Dencun nadal mogą drożeć, jeśli popyt na bloby mocno wzrośnie.
- Alternatywne warstwy data availability mają inne założenia bezpieczeństwa niż Ethereum blobs.
Blob jest elementem drogi do dankshardingu
EIP-4844 wprowadził proto-danksharding, czyli etap pośredni. Dalszy rozwój Ethereum zakłada większą przepustowość danych i rozwiązania takie jak PeerDAS, gdzie walidatorzy nie muszą pobierać całych blobów, aby pomagać w sprawdzaniu dostępności danych.
