Ethereum Provider API
Summary
TT Wallet injects a global API into site visited by its users at window.ethereum
.
Considering the massive adoption, this API specification borrows heavily from Metamask's documents. So Dapp developers can easily request users's ThunderCore's accounts, read data from blockchians, and prompt the users to sign data and send transactions.
The Ethereum JavaScript provider API is specified by EIP-1193.
ThunderCore RPC Methods
TT Wallet uses the window.ethereum.request(args)
method to wrap an RPC Call. Please see the Ethereum wiki.
Important methods from this API include:
eth_acccounts
eth_requestAccounts
eth_call
eth_getBalance
eth_sendTransaction
eth_decrypt
eth_getEncryptionPublicKey
eth_sign
personal_sign
eth_signTypedData
eth_signTypedData_v3
eth_signTypedData_v4
personal_ecRecover
Interface
eth_requestAccounts
eth_requestAccounts
Returns
string[]
- An array of a single, hexadecimal ThunderCore address string.
Description
Requests that the user provides an ThunderCore address to be identified by. Returns a Promise that resolves to an array of a single ThunderCore address string.
Example
Other RPC Methods
eth_decrypt
eth_decrypt
Parameters
Array
string
- An encrypted message.string
- The address of the ThunderCore account that can decrypt the message.
Description
Requests that TT Wallet decrypts the given encrypted message. The message must have been encrypted using the public encryption key of the given ThunderCore address. Returns a Promise that resolves to the decrypted message, or rejects if the decryption attempt fails.
Example
eth_getEncryptionPublicKey
eth_getEncryptionPublicKey
Parameters
Array
string
- The address of the ThunderCore account whose encryption key should be retrieved.
Returns
string
- The public encryption key of the specified ThunderCore account.
Description
Requests that the user shares their public encryption key. Returns a Promise that resolve to the public encryption key, or rejects if the user denied the request.
The public key is computed from entropy associated with the specified user account, using the nacl
implementation of the X25519_XSalsa20_Poly1305
algorithm.
Example
Last updated