¿Qué es un conversor de direcciones de Tron?
Un conversor de direcciones de Tron traduce una misma cuenta de 20 bytes entre sus tres escrituras: la forma Base58Check T… que muestran las billeteras (byte de prefijo 0x41, luego 20 bytes, luego un checksum doble SHA-256 de 4 bytes), la forma hex 41… de 42 caracteres que usan las API de nodo y las transacciones en bruto, y la forma 0x… que usan las herramientas EVM. Las tres se refieren a la misma cuenta.
Las tres formas, explicadas
- Base58 (T…): 34 caracteres, siempre empieza por T en mainnet. Es lo que TronLink, Trust Wallet, Binance y OKX muestran y aceptan. Contiene un checksum doble SHA-256 de 4 bytes.
- Hex (41…): 42 caracteres hex: el byte de versión 0x41 seguido de la cuenta de 20 bytes. Se usa en las respuestas REST de TronGrid, en el interior de
tronweby en las transacciones en bruto. - Estilo EVM (0x…): los mismos 20 bytes con prefijo 0x, como aparece en los logs de contratos TVM y en las herramientas de Solidity. Aquí se muestra en las variantes con checksum EIP-55 y en minúsculas.
Cómo funciona la conversión
- Base58 → hex: decodifica Base58, quita los últimos 4 bytes de checksum tras verificarlos, y emite los 21 bytes restantes en hex.
- Hex → Base58: toma 41 + 40 hex, añade los primeros 4 bytes de SHA-256(SHA-256(bytes)) y codifica en Base58.
- 0x → Tron: antepón 41 a los 40 caracteres hex y codifica como arriba.
Ejemplo práctico
El contrato de USDT TRC-20 es TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t en Base58. Al decodificarlo se obtiene el payload de 21 bytes 41a614f803b6fd780986a42c78ec9c7f77e6ded13c más 4 bytes de checksum. Si se quita el prefijo 41 y se añade 0x, resulta la forma EVM 0xa614f803b6fd780986a42c78ec9c7f77e6ded13c, que es como aparece el mismo contrato en los logs de eventos de la TVM.
Formatos de un vistazo
| Forma | Longitud | Checksum | Dónde se usa |
|---|---|---|---|
| Base58 T… | 34 caracteres | sí, 4 bytes | billeteras, exchanges, códigos QR |
| Hex 41… | 42 caracteres hex (21 bytes) | no | TronGrid, tronWeb, transacciones protobuf |
| EVM 0x… | 42 caracteres (20 bytes) | mayúsculas EIP-55 opcionales | logs de la TVM, herramientas de Solidity |
Usos habituales
- Consultar endpoints de API del tipo
/v1/accounts/<hex>que solo aceptan hex. - Decodificar el parámetro
tode una llamadatransferTRC-20 a partir de los datos del contrato. - Comprobar que la dirección de depósito que te envió un cliente es una dirección de Tron válida antes de acreditar un retiro.
Genera un código de recepción para una dirección verificada con el generador de QR de USDT TRC-20.