← Volver al blog
📖 Guía

¿Qué significa "aprobar" un contrato?
La guía que nadie te dio

Antes de hacer clic en "Approve", necesitás entender exactamente qué le estás dando permiso de hacer a ese contrato — y por qué puede vaciarte la billetera.

🔐

Si usaste alguna vez un exchange descentralizado, un protocolo de lending, o interactuaste con cualquier app de DeFi, casi con certeza hiciste clic en "Approve" antes de operar. Probablemente sin pensarlo demasiado.

Este artículo existe para cambiar eso.

Primero, lo básico: ¿cómo funcionan los tokens?

En la blockchain, los tokens (USDC, DAI, WETH, y miles más) son contratos inteligentes. Cada token tiene un registro de quién posee qué cantidad. Cuando "tenés" tokens, lo que realmente tenés es una entrada en ese registro que dice que esa dirección (la tuya) tiene X cantidad.

El problema: si otro contrato quiere mover tus tokens — por ejemplo, para completar un swap — no puede hacerlo solo porque vos se los pediste en una interfaz web. La blockchain no tiene concepto de "confianza implícita". Necesitás autorizarlo explícitamente.

Eso es exactamente lo que hace el botón "Approve".

Analogía

Pensalo como una cuenta bancaria con dos pasos. Para pagarle a alguien, primero le firmás un poder notarial que dice "esta persona puede retirar fondos de mi cuenta". Solo después puede hacerlo. En DeFi, la transacción de "Approve" es ese poder notarial.

¿Qué pasa técnicamente?

Cuando aprobás un contrato, tu billetera firma una transacción que llama a la función approve(spender, amount) del contrato del token. Esta función registra en la blockchain que la dirección spender tiene permiso de mover hasta amount de tus tokens.

Hay tres variables clave que definen qué tan expuesto quedás:

1. ¿A quién le aprobás? El spender es el contrato que va a poder mover tus tokens. Puede ser el router de Uniswap, el contrato de un protocolo legítimo, o un contrato malicioso disfrazado de algo útil.

2. ¿Cuánto aprobás? Podés aprobar exactamente el monto que necesitás para la operación, o podés aprobar un monto "infinito" (el máximo valor posible). La mayoría de los protocolos te ofrecen la opción infinita por defecto porque es más cómoda.

3. ¿Por cuánto tiempo? Una aprobación no tiene fecha de vencimiento. A menos que la revoques vos, existe para siempre.

¿Qué puede hacer el contrato que aprobaste?

Una vez que aprobás, el contrato puede transferir tus tokens a cualquier dirección, en cualquier momento, hasta el monto que aprobaste. No necesita tu firma para cada operación individual posterior.

Esto es lo que la mayoría no entiende: Cuando aprobás un contrato, no estás firmando "esta operación puntual". Estás firmando un permiso permanente. Si el contrato es malicioso, o si es legítimo pero luego sufre un hack, alguien puede usar ese permiso para vaciarte.

La diferencia entre aprobar con límite y sin límite

Cuando MetaMask u otra billetera te muestra la pantalla de aprobación, fijate en el monto. Vas a ver dos escenarios:

  • Aprobación limitada: "Approve 100 USDC". El contrato solo puede mover exactamente 100 USDC. Una vez que usa ese permiso, se agota. Más seguro, pero requiere aprobar cada operación grande.
  • Aprobación infinita: "Approve Unlimited USDC" o un número enorme. El contrato puede mover todos tus USDC actuales y futuros. Para siempre. Es conveniente pero crea una exposición permanente.

MetaMask desde la versión 10.9 te permite editar el monto antes de aprobar. Siempre usá esa opción.

Las señales de alerta antes de aprobar

No todas las aprobaciones son iguales. Antes de confirmar, verificá:

  • El contrato que aprobás coincide con la dirección oficial del protocolo (verificala en su sitio o en Etherscan)
  • El contrato tiene historial de actividad en la blockchain (no fue desplegado ayer)
  • Estás en el sitio oficial, no en un clon phishing con un dominio similar
  • El monto es "Unlimited" y no necesitás eso para la operación que querés hacer
  • No sabés exactamente qué hace ese contrato ni para qué vas a usarlo
  • Llegaste al sitio por un link de redes sociales, un DM, o un anuncio

Qué hacer con las aprobaciones que ya tenés

Si usaste DeFi, tenés aprobaciones activas. Podés verlas todas en revoke.cash o en el token approvals de Etherscan. Revocar tiene un costo de gas mínimo pero reduce permanentemente tu exposición.

Priorizá revocar:

  • Aprobaciones infinitas a contratos que ya no usás
  • Aprobaciones a contratos no verificados
  • Aprobaciones de proyectos que cerraron o fueron hackeados
Kairo Guard analiza esto por vos: Cuando pegás una transacción de aprobación, te mostramos el monto exacto que estás autorizando, la dirección del spender, si el contrato está verificado, y qué riesgo representa — todo antes de que confirmes.

La regla más simple en DeFi: nunca apruebes más de lo que necesitás, y nunca apruebes sin saber exactamente a quién.

¿Tenés una aprobación pendiente?

Pegá la transacción y te explicamos qué permiso estás dando antes de que firmes. Analizar ahora →