Skip to main content

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: 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