Leer una cadena de bloques con exploradores públicos · Lección 7 de 8
Tokens y contratos inteligentes en exploradores
7 min de lectura
Las monedas y los tokens son cosas diferentes
Cada red tiene una moneda nativa: BTC en Bitcoin, ETH en Ethereum, SOL en Solana. La moneda nativa está integrada en el protocolo y paga las comisiones.
Un token es otra cosa. En Ethereum y redes similares, un token es un contrato inteligente que lleva su propio registro: una tabla de direcciones y la cantidad que tiene cada una. Cuando «tienes» 500 unidades de un token, tu dirección no las contiene como contiene ETH. El contrato del token registra que tu dirección tiene derecho a 500 unidades.
La mayoría de los tokens siguen estándares compartidos, para que las billeteras y los exploradores sepan cómo mostrarlos:
| Estándar | Tipo de token | Ejemplos de uso |
|---|---|---|
| ERC-20 | Fungible: todas las unidades son idénticas | Stablecoins, tokens de gobernanza |
| ERC-721 | No fungible (NFT): cada token tiene su propio ID | Coleccionables, boletos, certificados |
| ERC-1155 | Ambos tipos en un mismo contrato | Juegos, ediciones de artículos |
Otras redes tienen sus propios equivalentes (por ejemplo, tokens SPL en Solana y tokens TRC-20 en Tron), y los exploradores de esas redes los muestran de manera similar.
Cómo se ve una transferencia de tokens
Una transferencia de tokens es una transacción que llama al contrato del token y le pide que actualice su registro. Esto tiene tres consecuencias que confunden a muchas personas la primera vez:
- El campo To de la transacción muestra el contrato del token, no a la persona que recibe los tokens.
- El campo Value suele ser 0 ETH, porque no se está enviando ETH.
- El destinatario y la cantidad reales están en los datos de entrada, y el resultado queda registrado como un evento Transfer en los registros.
Los exploradores leen esos eventos Transfer y los presentan de forma sencilla, normalmente en una sección llamada «Tokens transferidos» o «Transferencias de tokens ERC-20» en la página de la transacción, y en una pestaña independiente «Transferencias de tokens» en la página de cada dirección. Si estás comprobando si llegaron tokens a una dirección, debes consultar esa pestaña, no la lista principal de transacciones.
Decimales: cómo leer la cantidad real
Los contratos almacenan las cantidades de tokens como números enteros. Cada token declara una cantidad de decimales que indica a las billeteras dónde colocar la coma decimal.
- Muchos tokens usan 18 decimales, como el propio ETH.
- Las principales stablecoins vinculadas al dólar, USDC y USDT, usan 6 decimales en Ethereum.
Así que una cantidad bruta de 1.500.000 en un contrato de USDC significa 1,5 USDC, mientras que el mismo número bruto en un token con 18 decimales sería una fracción diminuta de una unidad. Normalmente, los exploradores hacen esta conversión por ti, pero si alguna vez lees datos de entrada sin procesar o exportas datos, aplica los decimales antes de sacar conclusiones.
La página del token y la dirección del contrato
Cada token tiene una página que muestra su nombre, símbolo, decimales, suministro total, cantidad de titulares, una lista de transferencias y, lo más importante, su dirección del contrato.
La dirección del contrato es la identidad real del token. Los nombres y símbolos no son únicos. Cualquiera puede implementar en unos minutos un contrato llamado «Tether USD» con el símbolo USDT. Estos tokens falsos son comunes y aparecen en billeteras y exploradores con un aspecto casi idéntico al de los tokens reales.
Para comprobar que un token es legítimo:
- Obtén la dirección oficial del contrato en el sitio web o la documentación del emisor y compara la dirección completa.
- Comprueba la cantidad de titulares, la antigüedad y la actividad de transferencias que muestra la página del token. Un token con un nombre famoso, pero con apenas un puñado de titulares y creado la semana pasada, es una señal de alerta.
- Recuerda que la misma stablecoin existe como contratos separados en redes separadas. USDT en Ethereum y USDT en Tron son contratos diferentes en cadenas distintas, al igual que USDC en Ethereum y USDC en BNB Smart Chain. Como las redes EVM comparten un mismo formato de dirección, es fácil enviar fondos a la dirección correcta en la red EVM equivocada, lo que puede significar perder los fondos o necesitar un proceso de recuperación difícil.
Páginas de contratos: código verificado, lectura y escritura
La página de la dirección de un contrato inteligente tiene pestañas adicionales:
- Código: si el desarrollador ha verificado el contrato, el explorador muestra el código fuente y confirma que se compila exactamente al código implementado en la cadena. La verificación no significa que el contrato sea seguro o confiable; significa que cualquiera puede leer lo que hace.
- Leer contrato: permite consultar valores públicos, como el saldo de una dirección o el suministro total, directamente en la cadena.
- Escribir en el contrato: permite enviar transacciones al contrato desde una billetera conectada. Procede con mucha cautela.
- Proxy: muchos contratos son actualizables. Un contrato proxy reenvía llamadas a un contrato de implementación que sus administradores pueden sustituir. Los exploradores muestran ambas direcciones. Que sea actualizable significa que las reglas pueden cambiar más adelante.
Aprobaciones: permiso para gastar tus tokens
Las aplicaciones descentralizadas suelen necesitar mover tokens en tu nombre, por ejemplo, para realizar un intercambio. Lo hacen mediante una aprobación: envías una transacción que llama a la función approve del token, lo que permite que un contrato gastador identificado mueva hasta una cantidad determinada de tus tokens.
Los exploradores muestran las aprobaciones como transacciones con el método «Approve», y muchos tienen un verificador de aprobaciones de tokens que enumera todos los gastadores que has autorizado desde tu dirección. Conviene conocer dos riesgos:
- Las aprobaciones suelen ser ilimitadas de forma predeterminada, por lo que el gastador puede mover todos los tokens de ese tipo, ahora o más adelante.
- Un gastador malicioso o comprometido puede retirar los tokens aprobados sin necesidad de ninguna otra firma tuya.
Revisar y revocar aprobaciones antiguas es un hábito básico de seguridad, y el explorador es donde puedes consultarlas. Ten en cuenta que algunos tokens y aplicaciones también aceptan firmas permit (por ejemplo, EIP-2612 o Permit2): firmas un mensaje en tu billetera en lugar de enviar una transacción Approve, por lo que no aparece ninguna aprobación en la cadena hasta que el gastador la utiliza. Lee las solicitudes de firma con tanto cuidado como las transacciones.
Estafas que puedes reconocer en un explorador
Como la cadena es pública y cualquiera puede crear tokens y enviar transacciones, algunas estafas dejan rastros claros:
- Envenenamiento de direcciones. El estafador crea una dirección cuyos primeros y últimos caracteres coinciden con los de una dirección que usas, y luego te envía una transferencia de valor mínimo o cero (a menudo de un token falso) para que la dirección parecida aparezca en tu historial. La idea es que después la copies por error. Compara siempre la dirección completa.
- Tokens de spam y phishing. Aparecen tokens desconocidos en tu dirección con nombres que incluyen un enlace a un sitio web y te invitan a «reclamar» algo. Si visitas el sitio y firmas lo que te pide, pueden vaciar tu billetera. Muchos exploradores ocultan o marcan estos tokens.
- Versiones falsas de tokens reales, como se describió anteriormente.
Ninguna de estas estafas puede quedarse con tus fondos por sí sola. Solo funcionan si actúas al respecto.
NFT en exploradores
Para los tokens ERC-721 y ERC-1155, los exploradores muestran el ID del token, el propietario actual y el historial de transferencias. La imagen y la descripción suelen proceder de un enlace de metadatos almacenado por el contrato. Esos metadatos suelen estar fuera de la cadena, en un servidor web o una red de almacenamiento descentralizada, por lo que la imagen que ves no necesariamente está almacenada en la propia cadena de bloques.
Enfoque del examen: monedas nativas frente a tokens registrados en el libro de un contrato; ERC-20, ERC-721 y ERC-1155; por qué una transferencia de tokens muestra el contrato del token en To y 0 ETH en Value, con el destinatario en el evento Transfer; los decimales (18 es común, USDC y USDT usan 6 en Ethereum); la dirección del contrato como identidad del token; qué significan los contratos verificados y proxy; las aprobaciones y sus riesgos; y el envenenamiento de direcciones.
Preguntas de práctica
Comprueba lo que has aprendido. Estas preguntas no cuentan para el examen.
Inicia sesión para guardar tu progreso y continuar donde lo dejaste. Es gratis. Iniciar sesión