ERC-4626 es el estándar de vaults tokenizados de Ethereum. Conozca la interfaz, la matemática de las participaciones con un ejemplo, el ataque de inflación y ERC-7540/7575.

ERC-4626 es el estándar de Ethereum para vaults tokenizados. Define un conjunto común de funciones para depositar un único token ERC-20 en un vault, recibir a cambio participaciones del vault (shares) y convertir entre ambos, de modo que cualquier wallet, mercado de préstamos o agregador pueda integrar cualquier vault compatible de la misma forma. Las participaciones del vault son a su vez un token, y su valor en el activo subyacente aumenta a medida que el vault genera rendimiento.
Esta guía trata la interfaz, la matemática de participaciones frente a activos con un ejemplo práctico, el ataque de inflación, las extensiones asíncronas y multiactivo, y cómo gestionan las participaciones de vaults las cadenas no EVM como Sui.
ERC-4626, titulado «Tokenized Vaults», fue creado el 22 de diciembre de 2021 por Joey Santoro, t11s, Jet Jadeja, Alberto Cuesta Cañada y Señor Doggo. Es un ERC de tipo Standards Track con estado Final, y se basa en ERC-20 y ERC-2612 (firmas permit), según la página del EIP. Su resumen lo describe como una «API estándar para vaults tokenizados que representan participaciones de un único token EIP-20 subyacente».
Antes de su existencia, cada agregador de rendimiento, mercado de préstamos y wrapper de staking escribía su propia interfaz de vault. Cualquier aplicación que quisiera admitir diez vaults necesitaba diez adaptadores, cada uno de ellos un nuevo foco de errores. ERC-4626 lo sustituyó por una única forma, igual que hizo ERC-20 con los tokens fungibles.
El estándar fija la interfaz, no la estrategia: un vault arriesgado o malicioso puede ser plenamente compatible. Para una visión más amplia de lo que hacen los vaults con su dinero, consulte los vaults cripto explicados.
Un vault compatible es un token ERC-20 (las participaciones) más las funciones siguientes. Cada una procede de la especificación.
| Función | Qué hace |
|---|---|
| asset() | El token subyacente, por ejemplo USDC. |
| totalAssets() | Todos los activos subyacentes que gestiona el vault, incluidos los que están en estrategias. |
| convertToShares / convertToAssets | El tipo de cambio ideal, sin comisiones ni límites. |
| deposit(assets, receiver) | Usted elige cuántos activos aporta; el vault acuña las participaciones correspondientes. |
| mint(shares, receiver) | Usted elige cuántas participaciones quiere; el vault toma los activos necesarios. |
| withdraw(assets, receiver, owner) | Usted elige cuántos activos retira; el vault quema las participaciones necesarias. |
| redeem(shares, receiver, owner) | Usted elige cuántas participaciones quema; el vault envía los activos correspondientes. |
| previewDeposit / previewMint / previewWithdraw / previewRedeem | Simulan cada acción en el bloque actual, comisiones incluidas. |
| maxDeposit / maxMint / maxWithdraw / maxRedeem | Lo máximo que una dirección puede depositar, acuñar, retirar o canjear en este momento. |
Dos eventos, Deposit y Withdraw, dan a los indexadores un único patrón para seguir cualquier vault compatible.
Las funciones preview muestran lo que usted obtendría realmente en este bloque, después de comisiones, que es lo que una interfaz debería mostrar antes de que firme. Las funciones max exponen límites, pausas y restricciones de liquidez, de modo que un router pueda evitar una transacción condenada a fallar.
La especificación advierte de que totalAssets, convertToShares y convertToAssets son «estimaciones útiles a efectos de visualización», y de que las funciones preview pueden manipularse y no siempre son seguras como oráculos de precios. Nuestra guía sobre los oráculos de precios explica por qué.
El núcleo de todo vault es una única proporción:
precio de la participación = totalAssets ÷ totalSupply de participaciones
Tome un vault de USDC que contiene 1.000 USDC y ha emitido 1.000 participaciones. Cada participación vale 1 USDC.
Por eso los tokens ERC-4626 como sUSDS de Sky nunca aumentan su saldo; cada token simplemente se canjea por más cantidad del activo con el tiempo. Nuestra guía de USDS y sUSDS analiza ese caso.
Las cifras reales rara vez se dividen de forma exacta. La especificación indica que, cuando el vault emite participaciones por un depósito o paga activos por participaciones, debe redondear a la baja. Cuando calcula cuántas participaciones debe quemar usted, o cuántos activos debe aportar, debe redondear al alza. Las funciones convertTo siempre deben redondear a la baja.
Así, cada error de redondeo deja una cantidad ínfima en el vault en lugar de permitir que un usuario se la extraiga a los demás.
El redondeo tiene un caso límite peligroso: un vault casi vacío. El ataque de inflación o ataque de donación se describe en la documentación de ERC-4626 de OpenZeppelin.
El ataque suele basarse en adelantarse (front-running) a los primeros depósitos de un vault.
Para los usuarios, la lección es ser prudente a la hora de estar entre los primeros depositantes de un vault nuevo y sin auditar.
ERC-4626 da por hecho que los depósitos y las retiradas se liquidan al instante, lo que no encaja con estrategias de activos del mundo real ni con las que tardan en deshacerse. Dos estándares posteriores, ambos en estado Final, cubren esas carencias.
ERC-7540, creado el 18 de octubre de 2023, añade un paso de solicitud. Usted llama a requestDeposit o requestRedeem, la solicitud queda como Pending mientras el vault la procesa, pasa a Claimable y usted la completa con la llamada normal deposit, mint, redeem o withdraw. La especificación indica que las solicitudes no deben saltarse la fase claimable. No existe requestWithdraw a propósito: las salidas asíncronas pasan por requestRedeem.
ERC-7575, creado el 11 de diciembre de 2023, permite que varios puntos de entrada en activos distintos compartan un mismo token de participación, y que este token resida en un contrato separado del vault. Cada vault expone una función share() que apunta a ese token. La propia especificación señala la contrapartida: como el vault no tiene por qué ser su propio ERC-20, «no es totalmente compatible con ERC-4626».
Algunos ejemplos verificados, comprobados el 15 de octubre de 2026:
Como estos tokens de participación siguen una única interfaz, se integran en otros protocolos como garantía, como tramos de rendimiento fijo o como entradas de agregadores de rendimiento.
«Compatible con ERC-4626» le indica cómo comunicarse con un vault, no si es un buen lugar para su dinero. La propia sección de seguridad del EIP advierte de que los usos totalmente sin permisos «podrían ser víctimas de implementaciones maliciosas». Antes de depositar, compruebe:
Nuestra lista sobre cómo comprobar si un protocolo DeFi es seguro se aplica a cualquier vault, estándar o no.
ERC-4626 solo se aplica en cadenas EVM. Otras cadenas construyen vaults sobre sus propias primitivas de tokens.
Sui es un buen ejemplo. Su estándar de monedas describe Coin<T> como el tipo para tokens fungibles, con un objeto TreasuryCap necesario para acuñarlos o quemarlos. Un vault de Sui suele tener la capacidad de tesorería de su propia moneda de participación, acuña participaciones al depositar y las quema al retirar, y les asigna un precio igual a los activos netos divididos por la oferta: la misma idea que ERC-4626, pero sin nombres de funciones compartidos. La documentación de Sui no recoge ningún estándar de participaciones de vaults, por lo que cada protocolo define su propia interfaz.
El lugar de JewelSwap: Ember Loop de JewelSwap en Sui sigue este patrón. Usted deposita USDC y recibe jeLOOP, una moneda normal de Sui cuyo precio es el valor liquidativo neto del vault dividido por la oferta de jeLOOP, y las salidas son tickets de retirada en cola, de forma muy parecida a una solicitud ERC-7540. Ember Loop es una beta pública, no está auditada, utiliza apalancamiento y los residentes en EE. UU. y el Reino Unido no deben usarla. La documentación de Ember Loop y nuestra explicación de Ember Loop cubren la mecánica, las comisiones y los riesgos.
ERC-4626 es el estándar de Ethereum para vaults tokenizados. Da a todos los vaults las mismas funciones para depositar un token ERC-20, recibir tokens de participación y convertir entre participaciones y activos, de modo que las aplicaciones pueden integrar cualquier vault compatible sin código a medida.
Sí. ERC-4626, ERC4626 y EIP-4626 se refieren al mismo estándar «Tokenized Vaults», creado el 22 de diciembre de 2021 y marcado ahora como Final.
Con deposit usted elige la cantidad del activo subyacente que aporta y recibe las participaciones que esa cantidad permita comprar. Con mint usted elige el número de participaciones que quiere y el vault toma los activos que cuesten. Withdraw y redeem son el mismo par para las salidas.
Se dirige a un vault casi vacío. Un atacante acuña un número ínfimo de participaciones y luego dona activos directamente al vault para inflar el precio de la participación, de modo que las participaciones del siguiente depositante se redondean a cero o casi. Las participaciones y activos virtuales, sembrar el vault en el lanzamiento y los controles de participaciones mínimas son defensas contra él.
No. Estandariza la interfaz, no la estrategia. Un vault compatible puede perder dinero por préstamos fallidos, errores de smart contract, problemas de oráculos o una implementación maliciosa, así que compruebe por separado la estrategia, los controles, las comisiones y las condiciones de salida.
No como estándar formal. Los vaults de Sui suelen emitir su propia moneda de participación mediante el estándar de monedas de Sui y le asignan un precio igual a los activos netos divididos por la oferta. jeLOOP de JewelSwap, del vault beta Ember Loop, es un ejemplo.
Este artículo es educativo y no constituye asesoramiento financiero. Los detalles del estándar proceden de las páginas de los EIP de Ethereum y de la documentación de los protocolos consultadas el 15 de octubre de 2026, y las implementaciones cambian con el tiempo. JewelSwap gestiona el vault Ember Loop mencionado aquí, que es una beta sin auditar.