Ethereum: Sign transaction
Asks device to sign given transaction using the private key derived by given BIP32 path. User is asked to confirm all transaction details on Trezor.
const result = await TrezorConnect.ethereumSignTransaction(params);
Params
path
— requiredstring | Array<number>
minimum length is3
. read moretransaction
- requiredObject
type ofEthereumTransactionEIP1559
|
EthereumSignTransaction
"0x" prefix for each field is optionalchunkify
— optionalboolean
determines if recipient address will be displayed in chunks of 4 characters. Default is set tofalse
Examples
EIP1559 (after The London Upgrade)
:warning: Supported firmware versions T1B1 v1.10.4 and T2T1 v2.4.2
If both parameters maxFeePerGas
and maxPriorityFeePerGas
are defined, transaction will be signed as the new type introduced in EIP1559.
TrezorConnect.ethereumSignTransaction({
path: "m/44'/60'/0'",
transaction: {
to: '0xd0d6d6c5fe4a677d343cc433536bb717bae167dd',
value: '0xf4240',
data: '0xa',
chainId: 1,
nonce: '0x0',
maxFeePerGas: '0x14',
maxPriorityFeePerGas: '0x0',
gasLimit: '0x14',
},
});
Legacy
For T1B1 and T2T1 with firmware older than 2.4.2 (but supported newer firmware versions too).
TrezorConnect.ethereumSignTransaction({
path: "m/44'/60'/0'",
transaction: {
to: '0x7314e0f1c0e28474bdb6be3e2c3e0453255188f8',
value: '0xf4240',
data: '0x01',
chainId: 1,
nonce: '0x0',
gasLimit: '0x5208',
gasPrice: '0xbebc200',
},
});
Result
{
success: true,
payload: {
v: string, // hexadecimal string with "0x" prefix
r: string, // hexadecimal string with "0x" prefix
s: string, // hexadecimal string with "0x" prefix
}
}
Error
{
success: false,
payload: {
error: string // error message
}
}