Overview
This guide shows you how to sign messages with your TRON wallet. Message signing follows the TIP-191 standard (the signMessageV2 surface used by TronLink) and returns the signature as a 0x-prefixed hex string. It is commonly used for authentication, nonce verification, and data integrity checks.
Prerequisites
Basic Message Signing
signMessageV2() is an alias for signMessage() — TIP-191 is the only message-sign path for TRON, so both names produce the same signature.
Simple Message Signing
Whether you need to provide externalServerKeyShares depends on how you created your wallet:
With Automatic Backup (Recommended)
If you created your wallet with backUpToDynamic: true, you don’t need to provide external key shares, but you must pass the password used at creation so the SDK can decrypt the backed-up shares:
With Manual Backup
If you created your wallet with backUpToDynamic: false, you must provide external key shares:
Password Handling Notes:
- If your wallet was created without a password, omit the
password parameter
- If your wallet was created with a password, you must provide it for all operations
- The password parameter is always optional in the API, but required if the wallet is password-protected
Inspecting the Signed Digest
prepareSignMessage() returns the 0x-prefixed TIP-191 digest that signMessage() sends to the signer. Use it when you need to show the exact payload being signed:
Common Use Cases
Authentication
Data Integrity
Next Steps
Last modified on October 15, 2026