Home » Crypto »

EXPLICACIÓN DE LAS APROBACIONES DE TOKENS

Aprenda qué son las aprobaciones de tokens (permisos), su propósito en aplicaciones descentralizadas y cómo pueden ser utilizadas indebidamente por actores maliciosos.

¿Qué son las aprobaciones de tokens?

Las aprobaciones de tokens, también conocidas como asignaciones de tokens, se refieren a un mecanismo de permisos dentro del ecosistema Ethereum y otras redes blockchain con una arquitectura similar, como Binance Smart Chain o Polygon. Esta función permite que las aplicaciones descentralizadas (DApps) interactúen con los tokens de un usuario sin que este tenga que aprobar cada transacción individualmente.

En esencia, las aprobaciones de tokens se implementan mediante el estándar ERC-20, que rige los tokens fungibles. Cuando un usuario desea interactuar con un contrato inteligente (por ejemplo, para realizar un intercambio de tokens, apostar activos en un pool de agricultura de rendimiento o proporcionar liquidez), debe otorgarle permiso para mover una cantidad específica de sus tokens. Esto es fundamental, ya que permite que los protocolos sin custodia funcionen de forma autónoma, aunque requieren el consentimiento explícito del usuario.

Cómo funcionan las aprobaciones de tokens

A continuación, se presenta un desglose básico del funcionamiento de las asignaciones de tokens:

  • Un usuario posee el token A en su billetera.
  • Desea utilizar una DApp (por ejemplo, un exchange descentralizado como Uniswap) que requiere el token A para una transacción específica.
  • Antes de completar la transacción, la DApp solicitará al usuario que apruebe una asignación. Esto invoca la función approve() en el contrato inteligente del token.
  • Mediante esta función, el usuario permite que el contrato inteligente de la DApp gaste una cantidad específica de token A en su nombre.

Las aprobaciones son esenciales porque las billeteras de Ethereum y los protocolos blockchain están diseñados para proteger los activos de los usuarios. Sin aprobaciones, cada movimiento de tokens tendría que ser firmado y autorizado manualmente por el usuario, lo que dificulta enormemente la experiencia, especialmente en operaciones complejas que involucran múltiples transacciones.

Aprobaciones persistentes

Es importante destacar que las aprobaciones de tokens persisten en la cadena hasta su revocación. Una vez autorizado un contrato inteligente, puede acceder a los tokens otorgados en cualquier momento, sin confirmación adicional del usuario, hasta el límite aprobado. Algunos protocolos solicitan "aprobaciones infinitas" para mayor comodidad, lo que permite que el contrato inteligente funcione sin futuras transacciones de aprobación. Si bien es fácil de usar, esta práctica presenta riesgos potenciales si el contrato inteligente se ve comprometido.

Terminología clave

  • Allowance: La cantidad específica de tokens que un contrato inteligente puede gastar.
  • approve(): La función que establece una asignación en el contrato inteligente.
  • transferFrom(): La función utilizada por el contrato autorizado para mover los tokens del usuario dentro del límite permitido.

Comprender estos mecanismos básicos es esencial para los usuarios que navegan por las finanzas descentralizadas (DeFi) y otras aplicaciones basadas en blockchain, ya que es un aspecto fundamental para las interacciones seguras y eficientes dentro del ecosistema.

¿Por qué son necesarias las asignaciones de tokens?

Las aprobaciones de tokens existen para proporcionar a las aplicaciones descentralizadas (DApps) acceso seguro y limitado a los activos del usuario. En un entorno descentralizado donde no existe una autoridad central que medie las transacciones, los contratos inteligentes se basan en el concepto de asignaciones de tokens para realizar funciones vitales, preservando al mismo tiempo la autonomía del usuario. Esta sección explora las razones por las que las aprobaciones de tokens son indispensables para el ecosistema blockchain.

1. Habilitación de interacciones sin custodia.

Una de las características distintivas de la innovación blockchain es la capacidad de mantener el control sobre los activos sin intermediarios. Las DApps funcionan sin bancos ni intermediarios, pero aún necesitan una forma de realizar transacciones relacionadas con tokens en nombre del usuario. Las asignaciones de tokens permiten que los protocolos automatizados operen temporalmente con autoridad delegada, sin tomar la custodia de los tokens del usuario.

2. Mejora de la experiencia del usuario

Sin las aprobaciones de tokens, cada interacción que implique transferencias de tokens requeriría que el usuario confirmara y firmara manualmente cada transacción. Por ejemplo, en un protocolo de agricultura de rendimiento donde se producen reinversiones frecuentes, esto se volvería tedioso y poco práctico. Las aprobaciones agilizan estas operaciones al otorgar permisos predefinidos, lo que mejora la eficiencia y mantiene la transparencia.

3. Compatibilidad con protocolos complejos de varios pasos

Las DApps modernas suelen realizar transacciones de varios pasos, como el intercambio de pares de tokens, la provisión de liquidez o la interacción con derivados. Cada uno de estos pasos podría requerir transferencias de tokens independientes. Las aprobaciones de tokens permiten que los contratos inteligentes agrupan o automaticen estas secuencias, lo que permite que servicios como préstamos flash, puentes entre cadenas y staking de NFT funcionen eficazmente.

4. Optimización de los Costos de Gas

Aprobar un contrato una sola vez por una cantidad ilimitada puede ahorrar en tarifas de gas, que son especialmente críticas durante períodos de congestión de la red. Repetir las aprobaciones para cada transacción individual incrementaría los costos y podría disuadir la participación en DeFi.

5. Modelo de Seguridad con Permisos

Las aprobaciones representan un nivel granular de permisos que se alinea con los principios de los modelos de seguridad de mínimo privilegio. Los usuarios determinan quién puede acceder a sus tokens y a cuánto. Esta naturaleza de consentimiento garantiza que, incluso al interactuar con DApps, los usuarios mantengan el control.

6. Compatibilidad entre Aplicaciones

Las asignaciones de tokens están estandarizadas mediante ERC-20 y sus derivados, lo que las hace ampliamente compatibles en todo el ecosistema de la Máquina Virtual Ethereum (EVM). Esta uniformidad permite que los tokens se utilicen sin problemas en plataformas de intercambio descentralizadas, protocolos de préstamo, plataformas de juegos y pasarelas de pago.

7. Integraciones programáticas

Para los desarrolladores, las aprobaciones de tokens también son cruciales. Permiten el acceso programático a los tokens desde contratos inteligentes, automatizando acciones como liquidaciones en mercados de préstamo o liquidaciones de transacciones en sistemas de pago descentralizados.

En definitiva, las aprobaciones de tokens son la columna vertebral del acceso con permisos en DeFi. Sin ellas, toda aplicación descentralizada requeriría la custodia total de los fondos de los usuarios, lo que frustraría el propósito de la descentralización. Ayudan a preservar la interacción sin confianza, a la vez que satisfacen las necesidades prácticas de las finanzas digitales.

Las criptomonedas ofrecen un alto potencial de rentabilidad y mayor libertad financiera gracias a su descentralización, operando en un mercado abierto las 24 horas. Sin embargo, son un activo de alto riesgo debido a su extrema volatilidad y la falta de regulación. Los principales riesgos incluyen pérdidas rápidas y fallos de ciberseguridad. La clave del éxito reside en invertir únicamente con una estrategia clara y con capital que no comprometa su estabilidad financiera.

Las criptomonedas ofrecen un alto potencial de rentabilidad y mayor libertad financiera gracias a su descentralización, operando en un mercado abierto las 24 horas. Sin embargo, son un activo de alto riesgo debido a su extrema volatilidad y la falta de regulación. Los principales riesgos incluyen pérdidas rápidas y fallos de ciberseguridad. La clave del éxito reside en invertir únicamente con una estrategia clara y con capital que no comprometa su estabilidad financiera.

Cómo se Abusan las Aprobaciones de Tokens

Si bien las aprobaciones de tokens cumplen una función técnica y funcional esencial en las aplicaciones descentralizadas, también abren la puerta a posibles usos indebidos y explotación. Dado que los permisos pueden persistir en la cadena indefinidamente y facilitar el acceso automatizado a los fondos de los usuarios, los actores maliciosos con frecuencia buscan maneras de abusar de las asignaciones de tokens. Esta sección explora las principales formas en que se pueden explotar las aprobaciones de tokens y qué pueden hacer los usuarios para protegerse.

1. Aprobaciones Infinitas y Sobreexposición

Muchas DApps solicitan asignaciones de tokens infinitas o muy altas como una característica de conveniencia para evitar aprobaciones repetidas. Desafortunadamente, esto deja a los usuarios expuestos. Si ese contrato inteligente se ve comprometido, por ejemplo, a través de una vulnerabilidad de software o un ataque de gobernanza, los atacantes podrían vaciar todos los tokens aprobados de las billeteras de los usuarios. Aunque los tokens permanecen bajo el control del usuario en la cadena, este exceso de permisos infringe el principio del mínimo privilegio.

2. Contratos inteligentes maliciosos

Los estafadores suelen implementar contratos inteligentes maliciosos que se hacen pasar por DApps legítimas o entregas de NFT. Una vez que un usuario aprueba el acceso a tokens para dicho contrato, este puede programarse para robar fondos inmediatamente o en una fecha futura. Estas aprobaciones no son intrínsecamente reversibles por el contrato inteligente o las aplicaciones de billetera; la revocación debe ser realizada manualmente por el usuario o a través de un administrador de aprobación de tokens.

3. Phishing a través de interfaces de contratos inteligentes

Otro vector común son los sitios web de phishing que imitan protocolos conocidos. Los usuarios, sin saberlo, interactúan con interfaces falsas, que les incitan a aprobar el acceso a tokens a direcciones fraudulentas. Esto puede resultar en el robo inmediato de activos o ataques retardados que se activan una vez que se cumple una condición predefinida.

4. Errores Explotables en Protocolos

Cuando se explotan DApps confiables mediante vulnerabilidades, los atacantes pueden aprovechar las asignaciones de tokens existentes para drenar los fondos de los usuarios. En la historia de DeFi, ejemplos como el exploit bZx y el hackeo de BadgerDAO destacaron porque los usuarios que habían otorgado asignaciones de alto valor sufrieron pérdidas significativas, a pesar de no haber realizado transacciones inmediatas en el momento del ataque.

5. Aprobaciones Inactivas

Muchos usuarios olvidan revocar las asignaciones después de interactuar con una DApp, incluso si no tienen intención de volver a usarla. Estas aprobaciones inactivas permanecen en la cadena y pueden ser explotadas mucho más tarde si los contratos inteligentes asociados se vuelven vulnerables. La auditoría regular y la revocación de aprobaciones innecesarias son vitales para la seguridad a largo plazo.

6. Aprobación Anticipada y Condiciones de Carrera

Si bien son poco frecuentes, algunos exploits implican aprobaciones de tokens anticipadas. Un atacante puede monitorear el mempool (donde se ven las transacciones pendientes) e intentar explotar el orden de las transacciones para interceptar o aprovechar las aprobaciones de tokens antes de que los usuarios se den cuenta. Los bots maliciosos también pueden intentar condiciones de carrera, aunque la mayoría de las billeteras ahora varían los nonces y ofrecen protección contra estos casos extremos.

7. Naturaleza irreversible de los permisos

A diferencia de los sistemas financieros tradicionales, donde los permisos pueden revocarse a discreción del banco, las aprobaciones en blockchain requieren que el usuario tome medidas proactivas para eliminar o ajustar las asignaciones. A menos que un usuario interactúe con plataformas como Revoke.cash o Etherscan’s Approval Checker, es posible que no esté al tanto de los permisos pendientes que representan amenazas a la seguridad.

Mejores prácticas de seguridad

Para mitigar estos riesgos, los usuarios deben considerar las siguientes precauciones:

  • Interactuar únicamente con DApps verificadas y URL oficiales.
  • Otorgar asignaciones de tokens limitadas o específicas cuando sea posible.
  • Utilizar herramientas de aprobación de tokens para supervisar y revocar los permisos existentes.
  • Tener cuidado con las DApps que solicitan aprobaciones infinitas.
  • Revisar periódicamente la actividad de la billetera para detectar si hay DApps sin usar o abandonadas. Aplicaciones.

Si bien la naturaleza descentralizada de la cadena de bloques empodera a los usuarios, también exige una mayor responsabilidad individual. Mantener un historial limpio de asignaciones es fundamental para la gestión segura de criptoactivos.

INVERTI AHORA >>