TRON Permission IDs as Lending Pool Signals
TRON wallets can have multiple "keys" with different levels of access, similar to how a business might give employees different levels of authority over a bank account. Every transaction on the TRON blockchain carries a Permission_id field indicating which key authorized it. TronRelic uses this field to identify energy rental pool activity.
How Wallet Permissions Work
When you create a TRON wallet, you automatically receive an Owner permission (ID 0) with full control over everything, and a Default Active permission (ID 2) for everyday transactions. Both represent you acting directly on your own wallet. There's also a Witness permission (ID 1) reserved for Super Representatives who produce blocks, but most wallets never use this.
TRON also allows wallet owners to create additional "active permissions" with restricted capabilities. These custom permissions receive IDs starting at 3 and incrementing upward. Creating one costs 100 TRX and requires deliberate action, you must specify exactly which addresses can use the permission and which operations they're allowed to perform. Regular users almost never do this because their built-in permissions already handle everything they need.
How Energy Rental Pools Use Custom Permissions
Investors who stake TRX and want to earn yield by renting out the energy it generates face a dilemma. They could hand their private key to a rental pool, but that would give the pool full access to steal their funds. The safer approach is to create a custom permission that grants the pool authority to delegate energy and nothing else, no withdrawing funds, no changing settings, no touching the underlying stake.
Often (though not always), what's happening behind the scenes is that a private investor has created a custom permission (ID 3 or higher) granting a specific pool address the ability to execute delegation transactions from their wallet. The pool operates as an intermediary, matching energy buyers with investor supply, but never actually controls the investor's TRX. When a customer rents energy, the pool triggers a delegation from the investor's wallet using this limited permission. The transaction carries Permission ID 3+ because the pool signed it, not the investor using their owner or default active key.
Why Permission ID 3+ Signals Pool Activity
The distinction between Permission ID 2 and Permission ID 3+ is crucial. Permission 2 is your default active permission, it's created automatically when your account is established and contains your own address. Using it is still "you" acting directly, just with your everyday key instead of your master key. Permission 3 and higher, by contrast, require deliberate setup. Someone had to pay 100 TRX, specify which external addresses get signing authority, and define exactly what operations they can perform.
When we see a delegation transaction authorized by Permission ID 3 or higher, we know that a custom permission was involved, and custom permissions are often created to grant limited access to third parties like energy rental pools. This fingerprint signals pool-mediated activity even when we don't recognize the wallet addresses involved.
Technical Reference
The Permission_id field appears in raw TRON transaction data at transaction.raw_data.contract[0].Permission_id. This is a property of the transaction itself, not an array index. The value indicates which permission slot authorized the transaction when it was signed and broadcast. Transactions default to Permission ID 0 (owner) when not explicitly specified.
TronRelic filters delegation transactions with Permission_id >= 3 to capture pool-controlled operations while excluding direct user activity (IDs 0-2).