Как узнать смарт-контракт токена безопасно?
В некоторых случаях, пользователям необходимо узнать адрес контракта определенного токена. Причины могут быть разными: токен не отображается в кошельке и его необходимо туда импортировать или пользовать желает приобрести токен на децентрализованной бирже (DEX). Кроме того, зная адрес контракта токена можно посмотреть различную информацию в блокчейне, связанную с токеном. В этой статье мы подробно опишем, как найти адрес смарт-контракта токена и при этом не попасться на уловки мошенников и не приобрести поддельный токен.
Помните, что при покупке токенов на децентрализованных биржах, вы должны быть уверены на 100%, что используете верный смарт-контракт нужного токена, чтобы не приобрести поддельный токен. Никогда не используйте контракты токенов, которые публикуются в социальных сетях, даже если канал или чат является официальным.
1. Используем известные сервисы
Этот способ самый простой, но таким образом не получится найти смарт-контракт любого токена. Если токен, достаточно известный, то вероятнее всего он находится в базе таких сервисов, как CoinMarketCap и CoinGecko. Достаточно просто найти в них этот токен и на странице описания взять необходимой контракт.
Пример с токеном MATIC на CoinMarketCap:
Пример с токеном AURORA на CoinGecko:
В некоторых случаях понадобятся оба сервиса, так как в каждом по отдельности может существовать не полная информация и может не хватать контрактов в определенных сетях, если токен существует не только в одной сети.
2. Официальный сайт проекта
Этот способ менее удобный и возможно заставит вас потратить значительно больше времени, но он является самым безопасным и вы сможете найти адрес контракта любого существующего токена. У каждого токена или криптовалюты существуют официальные сайты, в которых есть вся необходимая информация.
Чаще всего, адрес контракта токена бывает опубликован в документах проекта (Docs) или в белой бумаге проекта (WhitePaper).
Пример с токеном BSW децентрализованной биржи Biswap:
3. Как узнать контракт токена, находящегося в вашем кошельке?
В некоторых случаях необходимо узнать контракт токена, который у вас уже находится в кошельке. Например, если вы получили токен через аирдроп или другую активность. Токен может не отобржаться в кошельке и его необходимо будет импортировать, чтобы можно было его продать или отправить на другой кошелек.
Никогда не пытайтесь покупать такие токены или подключать свой кошелек к сайтам, если не уверены, что токены настоящие. Мошенники достаточно часто рассылают поддельные токены на кошельки пользователей, чтобы побудить их к определенным действиям.
Если вы уверены на 100%, что токен находящийся на вашем кошельке настоящий и необходимо узнать его смарт-контракт, то потребуется обозреватель блоков в той сети, в которой находится токен в вашем кошельке. В каждой сети существуют свои обозреватели блоков, вот несколько примеров для популярных сетей:
- Ethereum — https://etherscan.io/
- BNB Chain — https://bscscan.com/
- Polygon — https://polygonscan.com/
- Fantom — https://ftmscan.com/
- Avalanche — https://snowtrace.io/
Пример с токеном NMX децентрализованной биржи Nomiswap в сети BNB Chain:
1. Перейдите в обозреватель блоков BSCScan (для сети BNB Chain) и введите адрес своего кошелька в строку поиска:
2. Нажмите BEP-20 Token Txns, если вы хотите узнать адрес контракта обычного токена или нажмите ERC-721 Token Txns, если вы хотите узнать адрес контракта NFT-токена:
3. В списке появятся все входящие и исходящие транзакции токенов, которые совершались в вашем кошельке. Найдите необходимой токен и нажмите на него:
4. Откроется страница смарт-контракта необходимого токена, где мы и можем увидеть его адрес:
С другими сетями процесс аналогичный и визуально ничем не отличается, поэтому нет смысла показывать отдельно.
How to find a token contract address
Depending on the method you use, finding a token contract address is one step in the process of adding a custom token to MetaMask. To find out more about adding tokens, head to our article on the subject to see several different methods.
What is a token address?
As you may be aware, tokens on Ethereum mainnet generally conform to the ERC-20 standard. This is a set of requirements for any fungible token on Ethereum — meaning one token has to have an identical value as other tokens of the same type, just like how one US dollar = one US dollar. The ERC-20 standard makes it considerably easier for wallets such as MetaMask, dapps, and other platforms to integrate existing and new tokens into their functions. For example, you can add any ERC-20 token to MetaMask. This wouldn’t be possible if they didn’t all adhere to the same standard.
Every ERC-20 token is created by inputting some details into a template smart contract which then controls and manages the token. In addition to basic functions such as the symbol and name, token creators must also determine total supply and methods for managing the balances of all token holders — one of its core responsibilites.
When the originator first deploys the token’s contract on the network, an address is generated that looks similar to the public addresses of Ethereum accounts. This is because the same cryptographic method is used in both situations (with slight nuances).
Think of it this way: if you want to send or receive from your account, you’d use your public address. Similarly, if you want to send or receive a specific ERC-20 token, you have to do it by interacting with the token’s address.
ERC-20 on other networks
Outside of Ethereum mainnet, ERC-20 tokens are handled differently depending on the network you’re using, and it can quickly get confusing.
Some networks have their own, parallel token standards which essentially equate to ERC-20. BNB Chain/BSC and its BEP-20 standard is the most prominent example. The equivalence between the two standard means ERC-20 tokens on Ethereum and BEP-20 tokens on BNB Chain are interchangeable. If you transfer 10 ERC-20 tokens to a wallet on BNB Chain, you’ll have 10 of the same token on BNB Chain, but in BEP-20 form and ‘pegged’ to the value of the ERC-20 original.
In other cases, such as Polygon, you can simply use the Polygon bridge (available here once you connect a wallet) to move tokens across, provided there are smart contracts deployed on both networks.
If you want to move ERC-20 tokens across different networks, always do your research to make sure you don’t lose funds, and consider using test transactions before sending large sums.
Where do I find a token’s contract address?
There are three main ways to do this:
Block explorers such as Etherscan, BscScan, or Polygonscan hold data on ERC-20 tokens and their equivalents on their respective networks.
To find a token contract address, simply head to the block explorer and search for your desired token. The contract address will be clearly indicated on its page. See below for an example from Etherscan:
On a desktop browser, you will see the copy to clipboard icon appear when you mouse over. On mobile, it should already be visible (though please note the exact presentation of the contract address will vary depending on the block explorer you’re using).
Most block explorers have a similar format, and all provide information in the same categories — just specific to their network.
They will also display the same information on a mobile browser as they do on desktop — so this method applies equally to both MetaMask Extension and Mobile users.
Token listing sites such Coingecko and CoinMarketCap hold a registry of all existing ERC-20 tokens. Both of these two main options offer the same functions detailed below.
As an example, we’ve taken the Uniswap (UNI) token page from Coingecko. From the token’s page, its contract address is easy to find, although it differs slightly between MetaMask Extension and Mobile.
Extension
Find the ‘Contract’ category on the right. By default this automatically displays the token’s address on Ethereum mainnet, but you can access others by clicking the three dots.
Click the copy button (the overlapping squares/sheets of paper) to copy the displayed address to your clipboard, ready to be pasted into MetaMask.
Mobile
Open the in-app browser by tapping the hamburger icon in the top left of the homepage, or just open your usual browser, such as Safari on iOS.
Once you’re in the browser, find your way to Coingecko, or your preferred alternative. To do this in-app, use the search icon at the bottom of the screen. Search on Coingecko for the name or symbol of the token you’re looking to add.
The token page should look like below, with the token address visible in its own category near the bottom:
Like on the desktop browser, you can also click the three dots to see the address for different networks:
Tap the copy icon next to an address to add it to your clipboard, ready to be added to MetaMask.
On the homepage of MetaMask Extension, under the ‘Tokens’ tab, click on the token whose contract information you want. Then, click on the vertical three dots menu and select ‘View asset in explorer’. This action will take you to the token’s contract address on the active network.
Once you have the token contract address, you’re ready to add the token to MetaMask. Head to our article on this for more information.
How to determine the correct token contract address on Etherscan
The Ethereum Blockchain is about immutability, transparency and censorship resistance. In respect to that, Etherscan displays all token contract deployed onto the Ethereum Blockchain. As a public and free block explorer, all contract will be indexed and displayed regardless. Any token name search with a familiar symbol will return more than one or more identical and/or similar results, and it has become difficult for users to identify which is the actual token contract address for a specific token/ICO that they are intended to participate and engage.
We at Etherscan conscious of the importance of providing transparent information to help users to stay vigilant and safe in the Ethereum token contract ecosystem. There are several features in place at Etherscan to help users to remain alert and secure in the Ethereum token contract ecosystem.
1. Token Information
The first thing to check once users visit the token contract address page would be to check for the token information. “Icon image,” “official site,” and other social media links should be present. Users can then visit the links and official site to double check if the contract address and official website are the actual project/token/ICO that they are looking.
2. Token Reputation
The token reputation system is in place to aid users on the progress and quality of the respective projects. Default awards “Unknown” status. Token contract owner will need to submit basic information, once verified by Etherscan support agent, the token contract may or may not obtain “Neutral” depending on the completeness of the information submitted. The “Ok” status is awarded (on Etherscan’s discretion) to significant projects that are subjected to the network effect, has accurate and transparent information displayed and may also be listed on major exchanges.
Warning reputation is also in place to warn users of dangerous, scam attempt and phishing token contract address namely “Suspicious,” “Unsafe” and “Spam.”
3. The “Blue Checkmark”
The purpose of the “blue checkmark” is to ease users in searching for a respective token contract address. The blue checkmark will allow the awarded token contract address visibility during a token search. Token contracts with the blue checkmark will display on top of other token contract and will get priority during a search. This features will increase relevancy for token name search on Etherscan search bar.
Token contracts that have complete information submission, reputable and unique are awarded the blue checkmark.
The features mentioned above are mutually exclusive. Token contract owner would need to first submit their token information for updating, followed by Token Reputation then the Blue Checkmark.
Как узнать адрес смарт-контракта токена
Смарт-контракт токена — это программный код, написанный на платформе блокчейн, который определяет правила создания, передачи и управления токенами, выпущенными на этой платформе. Контракт токена содержит такие параметры как:
- Общее количество токенов, которое будет выпущено ;
- Количество токенов, которые будут выданы при запуске контракта;
- Механизм распределения;
- Методы передачи;
- Условия сжигания или уничтожения;
- Адреса кошельков, которые могут получать токены;
- Стоимость.
А также может определять другие функции: подписку на обновления, определять роли и разрешения для разных пользователей, таких как создатели, администраторы и пользователи. В целом, контракт токена является основой для функционирования токена и управления им на блокчейн-платформе.
Смарт-контракт может использоваться для создания различных типов токенов, таких как утилитарные токены, токены безопасности и токены голосования. А также для создания новых криптовалют, которые могут быть использованы в различных блокчейн-приложениях.
Для того чтобы узнать смарт-контракт токена, необходимо выяснить, на каком блокчейне этот токен был выпущен. Если токен был создан на блокчейне Ethereum, то можно воспользоваться сервисом Etherscan. Для этого нужно ввести адрес кошелька, на котором находится токен, в поисковую строку на сайте etherscan.io. Затем найти раздел «Token Transfers» или «Token Balances», где будут указаны сведения о токене, включая его контрактный адрес.
Если токен был выпущен на другом блокчейне, например, на Binance Smart Chain или на Solana, то можно воспользоваться соответствующими сервисами обозревателей блокчейнов, такими как BscScan или Solscan. Контрактный адрес токена уникален для каждой сети блокчейна. Поэтому, если токен был развернут в нескольких блокчейн-сетях, у него будет несколько контрактных адресов.
Также вы можете найти эту информацию, используя различные сервисы, такие как CoinMarketCap или CoinGecko. Введите название токена в поисковой строке и найдите его в списке. Нажмите на название токена, чтобы получить дополнительную информацию, включая его контрактный адрес.