Token Denom Conversion
This tutorial demonstrates how to convert between an hex-based ERC20 token address and a Cosmos coin denom.
Prerequisites
Project Setup
First, we need to create a new directory for our project.
Next, we will initialize the project and create a index.js
file in a src
directory.
Development
For this tutorial, we will assume that we have an ERC20 token address 0x5E5f1a92eECA58053E8364630b66763aa6265Ab0
that we want to convert to a Cosmos coin denom, and then convert it back to an ERC20 token address.
First, we initialize the variable for the chain’s LCD endpoint and the ERC20 token address.
ERC20 to Cosmos Denom
To actually do the conversion, we will be using the LCD’s /minievm/evm/v1/denoms/{contractAddress}
endpoint.
If the address is a valid ERC20 token address, the response just returns the token’s Cosmos coin denom.
Cosmos Denom to ERC20 Address
To convert a Cosmos coin denom back to an ERC20 token address, we will be using the LCD’s /minievm/evm/v1/contracts/by_denom?denom={denom}
endpoint.
If the denom is a valid Cosmos coin denom, the response just returns the token’s ERC20 token address.
The full code for the script, including the section to actually call the function is as follows:
If we run this script, we should see the following output: