Links

Ethereum & EVM compatible

getEthereumSignedTransaction

The D'CENT Android SDK provides functions for signing transaction of coins.
This function for :
  • ETHEREUM (ETH) - ethereum
  • ETH_CLASSIC (ETC) - ethereum classic
  • ETHEREUM_GOERLI (ETHt) - etheruem goerli
  • FLARE_COSTON (CFLR) - flare network coston
  • RSK (RBTC)- rsk smart bitcoin
  • RSK_TESTNET (RBTCt) - rsk smart bitcoin testnet
  • XDC (XDC) - xdc network
  • XDC_APOTHEM (XDCt) - xdc apothem
  • BSC (BNB) - binance smart chain
  • BSC_TESTNET (BNBt) - binance smart chain testnet
  • POLYGON (MATIC) - polygon
  • POLYGON_TESTNET (MATICt) - polygon testnet
  • ETH_CHAIN - other evm networks

Parameters

Parameter
Type
Description
coinType
CoinType
ethereum coin type.
transaction
ethereum transaction parameters.

class EthereumTransaction

Name
Type
Description
hdKeyPath
Bip44KeyPath
sign key path for ethereum transaction
nonce
String
account nonce for ethereum transaction
toAddr
String
recipient's address of ethereum transaction
amount
String
amount of ether to be sent. ( WEI unit value )
gasLimit
String
gas limit value of ethereum transaction
gasPrice
String
gas price for ethereum transaction
data
String
transaction data of ethereum transaction
chainId
int
chain id
symbol
String
symbol of contract for ethereum transaction
tx_type
byte
(optional)Type of ethereum transaction
max_priority_fpg
String
(optional)max_priority_fpg of ethereum transaction
max_fee_per_gas
String
(optional)max_fee_per gas of ethereum transaction
access_list
String
(optional)access_list of ethereum transaction

Returns

String - signed transaction.

Requirements

Example
EthereumTransanction ethereumTransanction;
ethereumTransanction = new EthereumTransanction.Builder()
.keyPath(Bip44KeyPath.valueOf("m/44'/60'/0'/0/0"))
.nonce("14")
.toAddr("0xe5c23dAa6480e45141647E5AeB321832150a28D4")
.amount("500000000000000")
.gasLimit("21000")
.gasPrice("6000000000")
.data("0x")
.chainId("1")
.symbol("ETH")
.build();
String response = mDcentmanager.getEthereumSignedTransaction(CoinType.ETHEREUM, ethereumTransanction);

getTokenSignedTransaction

This function for :
  • ERC20 - ethereum erc20 token
  • ETC_ERC20 - ethereum classic erc20 token
  • ERC20_KOVAN - etheruem kovan erc20 token
  • ERC20_ROPSTEN - etheruem ropsten erc20 token
  • ERC20_GOERLI - etheruem goerli erc20 token
  • ERC20_RINKEBY - etheruem rinkeby erc20 token
  • FRC20_COSTON - flare network coston token
  • RRC20 - rsk smart bitcoin token
  • RRC20_TESTNET - rsk smart bitcoin testnet token
  • XRC20 - xdc xrc20 token
  • XRC20_APOTHEM - xdc apothem xrc20 token
  • BSC_BEP20 - binance smart chain bep20 token
  • BSC_BEP20_TESTNET - binance smart chain bep20 testnet token
  • POLYGON_ERC20 - polygon erc20 token
  • POLYGON_ERC20_TESTNET - polygon erc20 testnet token
  • ECH_ERC20 - other evm erc20 token

Parameters

Parameter
Type
Description
coinType
CoinType
erc20 type.
transaction
token transaction parameters.

class TokenTransaction

Name
Type
Description
hdKeyPath
Bip44KeyPath
sign key path for ethereum transaction
nonce
String
account nonce for ethereum transaction
toAddr
String
address to send
amount
String
amount of ETH to send
gasLimit
String
gas limit value
gasPrice
String
gas price for ethereum transaction
tokenName
String
token name of contract for ERC20 transaction
contractAddress
String
address of contract for ERC20 transaction
decimals
String
decimals of contract for ERC20 transaction
symbol
String
symbol of contract for ERC20 transaction
chainId
String
chain id
feeSymbol
String
symbol of fee Account for ERC20 transaction

Returns

String - signed transaction.

Requirements

Example
TokenTransaction erc20transaction;
erc20transaction = new TokenTransaction.Builder()
.keyPath(Bip44KeyPath.valueOf("m/44'/60'/0'/0/0"))
.nonce("14")
.toAddr("0xe5c23dAa6480e45141647E5AeB321832150a28D4")
.amount("60000000000000000")
.gasLimit("70000")
.gasPrice("3000000000")
.tokenName("OmiseGO")
.contractAddress("0xd26114cd6ee289accf82350c8d8487fedb8a0c07")
.decimals("18")
.symbol("OMG")
.chainId("1")
.feeSymbol("ETH")
.build();
String response = mDcentmanager.getTokenSignedTransaction(CoinType.ERC20, erc20transaction)

getEthereumMessageSigned

Get the sign value of "EVM" message sign(personal_sign & signTypedData).
This function for :
  • ETHEREUM (ETH) - ethereum
  • ETHEREUM_GOERLI (ETHt) - etheruem goerli
  • RSK (RBTC)- rsk smart bitcoin
  • RSK_TESTNET (RBTCt) - rsk smart bitcoin testnet
  • XDC (XDC) - xdc network
  • XDC_APOTHEM (XDCt) - xdc apothem
  • BSC (BNB) - binance smart chain
  • BSC_TESTNET (BNBt) - binance smart chain testnet
  • POLYGON (MATIC) - polygon
  • POLYGON_TESTNET (MATICt) - polygon testnet
  • ETH_CHAIN - other evm networks
  • KLAYTN (KLAY) - klaytn
  • KLAY_BAOBAB (KLAYt) - klaytn baobab

Parameters

Parameter
Type
Description
coinType
CoinType
coin type.
transaction
ethereum message sign data parameters.
command
String
data sign command.("msg_sign" | "sign_data") - "msg_sign" for personal_sign or 'eth_sign' of EVM - "sign_data" for signTypedData(EIP-721) of EVM

class EthMessageSignData

Name
Type
Description
hdKeyPath
Bip44KeyPath
sign key path for ethereum sign data transaction
data
String
message for signing

Returns

HashMap<String, String> - signedData{address,sign}

Requirements

  • D'CENT Biometric Wallet version 1.3.0. or higher is required.
    • (for EIP-721) version 2.11.1. or higher is required.
Example(ethereum personal_sign)
EthMesageSignData ethMesageSignData;
ethMesageSignData = new EthMesageSignData.Builder()
.keyPath(Bip44KeyPath.valueOf("m/44'/60'/0'/0/0"))
.data("Message Sign TEST")
.build();
HashMap<String, String> response = mDcentmanager.getEthereumMessageSigned(CoinType.ETHEREUM, ethMesageSignData, "msg_sign");
String address = response.get("address");
String sign = response.get("sign");
Last modified 2mo ago