Skip to main content

Overview

Tron uses the secp256k1 elliptic curve with keccak256 hashing — the same cryptographic scheme as Ethereum. Since Tron addresses are derived from the same keccak256 hash of the public key, you can derive a Tron address directly from the EVM address without key recovery. The only difference is the address encoding: Tron uses base58check with a 0x41 version byte instead of Ethereum’s 0x hex prefix.

Dependencies

Derive Address

Swap the EVM address prefix from 0x to 41 and base58check-encode:
This is the simplest derivation of all secp256k1 chains — no key recovery needed. The last 20 bytes of keccak256(uncompressed_pubkey) are identical for both EVM and Tron.

Sign a Message

Sign using Tron’s message prefix via the EVM WaaS provider. TronWeb’s hashMessage computes keccak256("\x19TRON Signed Message:\n" + len + message):

Verify a Signature

TronWeb provides built-in verification that returns the recovered address:

Check Balance

Native TRX Balance

TRC20 Token Balances

Send a Transfer

Native TRX Transfer

TRC20 Token Transfer

Sign and Broadcast Helper

Both TRX and TRC20 transfers share the same signing and broadcasting logic:
Tron signing is simpler than other chains because TronWeb handles transaction construction and serialization. You only need to sign the transaction ID (a SHA-256 hash) using the EVM wallet’s raw signing capability.
Last modified on March 28, 2026