Polski
Oct 19, 2026

Czym jest ERC-4626? Standard tokenizowanych vaultów

ERC-4626 to standard tokenizowanych vaultów w Ethereum. Interfejs, matematyka udziałów na przykładzie liczbowym, atak inflacyjny oraz ERC-7540 i ERC-7575.

Czym jest ERC-4626? Standard tokenizowanych vaultów

ERC-4626 to standard Ethereum dla tokenizowanych vaultów. Definiuje jeden wspólny zestaw funkcji do deponowania pojedynczego tokena ERC-20 w vaulcie, otrzymywania w zamian udziałów vaulta i przeliczania jednych na drugie, dzięki czemu każdy portfel, rynek pożyczkowy czy agregator może zintegrować dowolny zgodny vault w ten sam sposób. Udziały vaulta same są tokenem, a ich wartość w aktywie bazowym rośnie, gdy vault zarabia.

Ten przewodnik omawia interfejs, matematykę udziałów i aktywów na przykładzie liczbowym, atak inflacyjny, rozszerzenia asynchroniczne i wieloaktywowe oraz to, jak łańcuchy spoza EVM, takie jak Sui, obsługują udziały w vaultach.

Czym jest ERC-4626?

ERC-4626, zatytułowany „Tokenized Vaults”, został utworzony 22 grudnia 2021 r. przez Joeya Santoro, t11s, Jeta Jadeję, Alberto Cuestę Cañadę i Señora Doggo. To ERC z kategorii Standards Track o statusie Final, oparty na ERC-20 i ERC-2612 (podpisy permit), według strony EIP. Jego streszczenie opisuje go jako „standard API for tokenized Vaults representing shares of a single underlying EIP-20 token”.

Zanim powstał, każdy agregator zysków, rynek pożyczkowy i wrapper stakingowy pisał własny interfejs vaulta. Aplikacja, która chciała obsłużyć dziesięć vaultów, potrzebowała dziesięciu adapterów – a każdy z nich był nowym miejscem na błędy. ERC-4626 zastąpił to jednym kształtem, tak jak ERC-20 zrobił to dla tokenów zamiennych.

Standard ustala interfejs, a nie strategię: ryzykowny lub złośliwy vault może być w pełni zgodny. Szerszy obraz tego, co vaulty robią ze środkami, przedstawia artykuł vaulty krypto wyjaśnione.

Interfejs ERC-4626 funkcja po funkcji

Zgodny vault to token ERC-20 (udziały) plus poniższe funkcje. Każda z nich pochodzi ze specyfikacji.

FunkcjaCo robi
asset()Token bazowy, np. USDC.
totalAssets()Wszystkie aktywa bazowe zarządzane przez vault, także w strategiach.
convertToShares / convertToAssetsIdealny kurs wymiany, z pominięciem opłat i limitów.
deposit(assets, receiver)Użytkownik wybiera, ile aktywów wpłacić; vault wybija odpowiadające im udziały.
mint(shares, receiver)Użytkownik wybiera, ile udziałów chce; vault pobiera potrzebne aktywa.
withdraw(assets, receiver, owner)Użytkownik wybiera, ile aktywów wypłacić; vault spala potrzebne udziały.
redeem(shares, receiver, owner)Użytkownik wybiera, ile udziałów spalić; vault wysyła odpowiadające im aktywa.
previewDeposit / previewMint / previewWithdraw / previewRedeemSymulują każdą operację w bieżącym bloku, z uwzględnieniem opłat.
maxDeposit / maxMint / maxWithdraw / maxRedeemMaksymalna kwota, jaką dany adres może teraz zdeponować, wybić, wypłacić lub wykupić.

Dwa zdarzenia, Deposit i Withdraw, dają indekserom jeden wzorzec do śledzenia każdego zgodnego vaulta.

Dlaczego funkcje preview i max są ważne

Funkcje preview pokazują, co faktycznie otrzyma się w tym bloku po opłatach – to właśnie front-end powinien wyświetlić przed podpisaniem. Funkcje max ujawniają limity, pauzy i ograniczenia płynności, dzięki czemu router może uniknąć transakcji skazanej na niepowodzenie.

Specyfikacja ostrzega, że totalAssets, convertToShares i convertToAssets to „estimates useful for display purposes”, a funkcje preview mogą być manipulowane i nie zawsze nadają się na oracle cenowe. Nasz przewodnik po oracle cenowych wyjaśnia dlaczego.

Udziały a aktywa: przykład liczbowy

Sercem każdego vaulta jest jeden stosunek:

cena udziału = totalAssets ÷ totalSupply udziałów

Weźmy vault USDC, który trzyma 1 000 USDC i wyemitował 1 000 udziałów. Każdy udział jest wart 1 USDC.

  1. Strategia zarabia. Wpływa 50 USDC odsetek. Łączne aktywa wynoszą teraz 1 050, a udziałów nadal jest 1 000, więc każdy udział jest wart 1,05 USDC. Niczyja liczba udziałów się nie zmieniła; zmieniła się cena.
  2. Alicja deponuje 210 USDC. Otrzymuje 210 × 1 000 ÷ 1 050 = 200 udziałów. Vault trzyma teraz 1 260 USDC przy 1 200 udziałach, a cena nadal wynosi 1,05. Jej depozyt nikogo nie rozwodnił.
  3. Vault znów zarabia. Łączne aktywa osiągają 1 320 USDC. Cena wynosi 1 320 ÷ 1 200 = 1,10.
  4. Alicja wykupuje swoje 200 udziałów. Otrzymuje 200 × 1,10 = 220 USDC, czyli 10 USDC zysku przed opłatami.

Dlatego tokeny ERC-4626, takie jak sUSDS od Sky, nigdy nie zwiększają salda; każdy token z czasem po prostu wymienia się na więcej aktywa. Nasz przewodnik po USDS i sUSDS omawia ten przypadek.

Zaokrąglenia zawsze sprzyjają vaultowi

Prawdziwe liczby rzadko dzielą się bez reszty. Specyfikacja mówi, że gdy vault emituje udziały za depozyt lub wypłaca aktywa za udziały, powinien zaokrąglać w dół. Gdy oblicza, ile udziałów trzeba spalić lub ile aktywów trzeba dostarczyć, powinien zaokrąglać w górę. Funkcje convertTo muszą zawsze zaokrąglać w dół.

Każdy błąd zaokrąglenia zostawia więc drobną kwotę w vaulcie, zamiast pozwolić jednemu użytkownikowi wyciągnąć ją od pozostałych.

Atak inflacyjny i jak vaulty się przed nim bronią

Zaokrąglenia mają jeden niebezpieczny przypadek brzegowy: niemal pusty vault. Atak inflacyjny (inaczej atak donacyjny) opisuje dokumentacja ERC-4626 OpenZeppelin.

  1. Atakujący zostaje pierwszym deponentem i wybija niewielką liczbę udziałów, np. jeden udział za najmniejszą jednostkę USDC.
  2. Zanim dotrze depozyt kolejnego użytkownika, atakujący wysyła dużą kwotę USDC bezpośrednio na kontrakt vaulta jako „donację”. Nie są za nią wybijane udziały, ale totalAssets gwałtownie rośnie, więc cena tego jednego udziału się nadyma.
  3. Depozyt ofiary jest przeliczany po zawyżonej cenie i zaokrąglany w dół do zera lub do znacznie mniejszej liczby udziałów, niż powinien.
  4. Atakujący wykupuje swój udział i odchodzi z większością depozytu ofiary.

Atak zwykle polega na front-runningu pierwszych depozytów w vaulcie.

Środki zaradcze

  • Wirtualne udziały i aktywa. OpenZeppelin dodał tę obronę do swojego kontraktu ERC4626 w wersji 4.9.0, wydanej 23 maja 2023 r., według changelogu. Obliczenia zachowują się tak, jakby vault zawsze miał dodatkowe udziały i jedną dodatkową jednostkę aktywów, które pochłaniają część każdej donacji. OpenZeppelin podaje, że atak jest nieopłacalny nawet przy przesunięciu równym zero, a większe przesunięcia czynią go znacznie droższym.
  • Zasilenie vaulta na starcie. Niektóre zespoły same wykonują mały pierwszy depozyt przy uruchomieniu i nigdy go nie wypłacają, więc nigdy nie ma momentu „pustego vaulta” do wykorzystania.
  • Wewnętrzna księgowość. Śledzenie totalAssets wewnętrznie, zamiast odczytywania salda tokena, ignoruje donacje.
  • Kontrola slippage. Wymaganie minimalnej liczby otrzymanych udziałów sprawia, że depozyt zostaje odrzucony.

Wniosek dla użytkowników: należy zachować ostrożność, będąc jednym z pierwszych deponentów w zupełnie nowym, nieaudytowanym vaulcie.

Rozszerzenia: ERC-7540 i ERC-7575

ERC-4626 zakłada, że depozyty i wypłaty rozliczają się natychmiast, co nie pasuje do strategii real-world assets ani tych, które wolno się zamyka. Dwa późniejsze standardy, oba o statusie Final, wypełniają te luki.

ERC-7540: vaulty asynchroniczne

ERC-7540, utworzony 18 października 2023 r., dodaje krok wniosku. Wywołuje się requestDeposit lub requestRedeem, wniosek ma status Pending, gdy vault go przetwarza, następnie staje się Claimable, a na koniec kończy się go zwykłym wywołaniem deposit, mint, redeem lub withdraw. Specyfikacja mówi, że wnioski nie mogą pomijać etapu claimable. Celowo nie ma requestWithdraw: asynchroniczne wyjścia przechodzą przez requestRedeem.

ERC-7575: vaulty wieloaktywowe

ERC-7575, utworzony 11 grudnia 2023 r., pozwala kilku punktom wejścia w różnych aktywach dzielić jeden token udziałowy, a samemu tokenowi udziałowemu istnieć w osobnym kontrakcie niż vault. Każdy vault udostępnia funkcję share() wskazującą ten token. Sama specyfikacja zauważa kompromis: ponieważ vault nie musi być własnym ERC-20, jest „not fully compatible with ERC-4626”.

Kto korzysta z ERC-4626?

Kilka zweryfikowanych przykładów, sprawdzonych 15 października 2026 r.:

  • Yearn V3. Yearn podaje, że jego vaulty v3 „are designed to interoperate using the ERC-4626 standard”, według dokumentacji.
  • Morpho Vault V2. Repozytorium Vault V2 stwierdza, że jest „ERC-4626 and ERC-2612 compliant”, z jedną udokumentowaną osobliwością: funkcje maxDeposit, maxMint, maxWithdraw i maxRedeem zawsze zwracają zero. Nasz artykuł o vaultach Morpho omawia, jak kuratorzy prowadzą te vaulty.
  • sUSDS od Sky. Dokumentacja deweloperska Sky opisuje sUSDS jako „fully compliant with the ERC-4626 standard”, bez opłat na ścieżce depozytu i wypłaty.

Ponieważ te tokeny udziałowe stosują jeden interfejs, można je podłączać do innych protokołów jako zabezpieczenie, nogi o stałym zysku lub dane wejściowe dla agregatorów zysków.

Czego ERC-4626 nie gwarantuje

„Zgodny z ERC-4626” mówi, jak komunikować się z vaultem, a nie czy jest to dobre miejsce na środki. Sekcja bezpieczeństwa samego EIP ostrzega, że w pełni permissionless zastosowania „could fall prey to malicious implementations”. Przed depozytem należy sprawdzić:

  • Skąd pochodzi zysk. Nasz przewodnik po stablecoinach generujących zysk omawia źródła.
  • Kto kontroluje strategię. Szukać timelocków na zmiany właściciela lub kuratora oraz audytów.
  • Warunki wyjścia. Vault może być zgodny, a mimo to ograniczać wypłaty przez funkcje max lub korzystać z kolejki wniosków ERC-7540.
  • Opłaty. Opłaty za wejście, wyjście i wyniki widać w funkcjach preview, a nie w convertToAssets.

Nasza lista kontrolna jak sprawdzić, czy protokół DeFi jest bezpieczny dotyczy każdego vaulta, zgodnego ze standardem czy nie.

Jak łańcuchy spoza EVM obsługują udziały w vaultach

ERC-4626 dotyczy tylko łańcuchów EVM. Inne łańcuchy budują vaulty na własnych prymitywach tokenowych.

Dobrym przykładem jest Sui. Jego standard monet opisuje Coin<T> jako typ dla tokenów zamiennych, a do ich wybijania i spalania wymagany jest obiekt TreasuryCap. Vault na Sui zwykle trzyma treasury capability własnej monety udziałowej, wybija udziały przy depozycie i spala je przy wypłacie, a wycenia je jako aktywa netto podzielone przez podaż – to ta sama idea co w ERC-4626, ale bez wspólnych nazw funkcji. Dokumentacja Sui nie wymienia standardu udziałów w vaultach, więc każdy protokół definiuje własny interfejs.

Miejsce JewelSwap: Ember Loop od JewelSwap na Sui stosuje ten wzorzec. Deponuje się USDC i otrzymuje jeLOOP, zwykłą monetę Sui wycenianą jako wartość aktywów netto vaulta podzielona przez podaż jeLOOP, a wyjścia to tickety wypłat w kolejce, podobnie jak wnioski ERC-7540. Ember Loop to publiczna beta, nie przeszedł audytu, korzysta z dźwigni, a rezydenci USA i Wielkiej Brytanii nie powinni z niego korzystać. Dokumentacja Ember Loop i nasz artykuł o Ember Loop omawiają mechanikę, opłaty i ryzyka.

Najczęściej zadawane pytania

Czym jest ERC-4626 w prostych słowach?

ERC-4626 to standard Ethereum dla tokenizowanych vaultów. Daje każdemu vaultowi te same funkcje do deponowania jednego tokena ERC-20, otrzymywania tokenów udziałowych i przeliczania udziałów na aktywa, dzięki czemu aplikacje mogą integrować dowolny zgodny vault bez dedykowanego kodu.

Czy ERC-4626 to to samo co ERC4626?

Tak. ERC-4626, ERC4626 i EIP-4626 odnoszą się do tego samego standardu „Tokenized Vaults”, utworzonego 22 grudnia 2021 r. i obecnie oznaczonego jako Final.

Czym różni się deposit od mint w ERC-4626?

Przy deposit wybiera się kwotę aktywa bazowego do wpłacenia i otrzymuje tyle udziałów, ile można za nią kupić. Przy mint wybiera się liczbę udziałów, a vault pobiera tyle aktywów, ile one kosztują. Withdraw i redeem to analogiczna para dla wyjść.

Czym jest atak inflacyjny na ERC-4626?

Jest wymierzony w niemal pusty vault. Atakujący wybija niewielką liczbę udziałów, a następnie przekazuje aktywa bezpośrednio do vaulta, aby zawyżyć cenę udziału, przez co udziały kolejnego deponenta zaokrąglają się w dół do zera lub prawie zera. Bronią przed nim wirtualne udziały i aktywa, zasilenie vaulta na starcie oraz kontrola minimalnej liczby udziałów.

Czy ERC-4626 czyni vault bezpiecznym?

Nie. Standaryzuje interfejs, a nie strategię. Zgodny vault nadal może stracić pieniądze przez złe pożyczki, błędy smart kontraktów, problemy z oracle lub złośliwą implementację, dlatego strategię, kontrolę, opłaty i warunki wyjścia należy sprawdzać osobno.

Czy na Sui istnieje odpowiednik ERC-4626?

Nie jako formalny standard. Vaulty na Sui zwykle emitują własną monetę udziałową w oparciu o standard monet Sui i wyceniają ją jako aktywa netto podzielone przez podaż. Przykładem jest jeLOOP od JewelSwap z vaulta Ember Loop w becie.

Czytaj dalej

Ten artykuł ma charakter edukacyjny i nie stanowi porady finansowej. Szczegóły standardu pochodzą ze stron Ethereum EIP i dokumentacji protokołów według stanu na 15 października 2026 r., a implementacje z czasem się zmieniają. JewelSwap prowadzi wspomniany tu vault Ember Loop, który jest nieaudytowaną betą.

About the author.

Co-Founder at JewelSwap & Chief Strategy Officer at iDenfy. Viktor brings his successful track record of superb development & project management.