Verify the signature of the typed data value with types data structure for domain using the TIP-712 specification.
Usage
tronWeb.trx.verifyTypedData(domain, types, value, signature, address);
Input Parameters
| Parameter | Description | Data Type | 
|---|---|---|
| domain | Domain separator. This field is to prevent collisions with other transactions on the network or messages with the same structure. | JSON | 
| types | Type definition of Typed Data | JSON | 
| value | The value of Typed Data | JSON | 
| signature | Signature to be verified | String | 
| address | Signed account address (Base58 format or Hex format) | String | 
Return
bool - true if verify successfully, else return error Signature does not match.
Example
// All properties on a domain are optional
const domain = {
  name: 'TRON Mail',
  version: '1',
  chainId: '0x2b6653dc',
  verifyingContract: 'TUe6BwpA7sVTDKaJQoia7FWZpC9sK8WM2t'
};
// The named list of all type definitions
const types = {
  Person: [
    { name: 'name', type: 'string' },
    { name: 'wallet', type: 'address' }
  ],
  Mail: [
    { name: 'from', type: 'Person' },
    { name: 'to', type: 'Person' },
    { name: 'contents', type: 'string' }
  ]
};
// The data to sign
const value = {
  from: {
    name: 'Cow',
    wallet: 'TUg28KYvCXWW81EqMUeZvCZmZw2BChk1HQ'
  },
  to: {
    name: 'Bob',
    wallet: 'TT5rFsXYCrnzdE2q1WdR9F2SuVY59A4hoM'
  },
  contents: 'Hello, Bob!'
};
const signature = await tronWeb.trx._signTypedData(domain, types, value);
const result = await tronWeb.trx.verifyTypedData(domain, types, value, signature);
// verification result: true