How to Verify Contract Address Ownership?

Note: Moonriver (MOVR) on Kusama is a companion network to Moonbeam and provides a permanently incentivized canary network. New code ships to Moonriver first, where it can be tested and verified under real economic conditions. Once proven, the same code ships to Moonbeam on Polkadot.

Polygon PoS (polygonscan.com) is an EVM-compatible environment optimized for high throughput and low transaction fees while Polygon zkEVM (zkevm.polygonscan.com) is an EVM-equivalent ZK rollup designed for security.

Users can have their ownership of a contract address verified and tied to their {{explorer}} account. Once this is done, they will have access to submit a token update request for the contract address owned by them. This ensures that only the owner can update the token's information and prevents any other parties from hijacking the token's page, providing a sense of security.

(Please note that all token update requests will be reviewed and subject to approval before being published on our platform.)

Also read: What Is Verify Address Ownership?

Before claiming the ownership of your contract address and updating your token's information, make sure that:

  1. The source code has already been deployed onto {{chain}}.
  2. The source code has already been verified (if you haven't verified it yet, please use this tool to do so).

The steps to verify your contract address ownership are as follows:

Step 1: Log into your {{explorer}} account (if you are not logged in or have signed out previously, kindly sign in here). Alternatively, if you don't have an {{explorer}} account, you can sign up for one here.
Step 2: Once you are logged in, hover over your username on the top-right section of the website until a dropdown menu appears. Click on Verified Address

{{img:bscscan}}
{{img:polygonscan}}
{{img:ftmscan}}
{{img:moonscan}}
{{img:zksync}}

Step 3: The following page will show you how many contract addresses you have verified as yours and what actions you can perform with them. To claim ownership of a new contract address, click the Add Address ­­­button on the upper-right area of the page.

{{img:bscscan}}
{{img:polygonscan}}
{{img:ftmscan}}
{{img:moonscan}}
{{img:zksync}}

Step 4: Paste your contract address into the input box and click Continue

{{img:bscscan}}
{{img:polygonscan}}
{{img:ftmscan}}
{{img:moonscan}}
{{img:zksync}}

Step 5: You will be provided with options to sign the message with your wallet interface. You can either click on the "Sign Message Manually" button or sign with Web3 (Metamask).

{{img:bscscan}}
{{img:polygonscan}}
{{img:ftmscan}}
{{img:moonscan}}
{{img:zksync}}

Signing with Web3 (Metamask)

Step 1: Upon clicking "Connect to Web3," you will be presented with the interface to log into your Metamask account.

{{img:bscscan}}
{{img:polygonscan}}
{{img:ftmscan}}
{{img:moonscan}}
{{img:zksync}}

Step 2: Once logged in, choose the account you want to connect to {{website}} and click Connect to proceed with signing the message.

{{img:bscscan}}
{{img:polygonscan}}
{{img:ftmscan}}
{{img:moonscan}}
{{img:zksync}}

Step 3: Kindly verify the details in the message and if everything is correct, sign the message by clicking on the Sign button.

{{img:bscscan}}
{{img:polygonscan}}
{{img:ftmscan}}
{{img:moonscan}}
{{img:zksync}}

Step 4: After signing the message, click the Click to Proceed button on {{explorer}}.

{{img:bscscan}}
{{img:polygonscan}}
{{img:ftmscan}}
{{img:moonscan}}
{{img:zksync}}

Step 5: You will be directed to a page where the address, message, and signature hash are prefilled. Click on Verify Ownership to proceed.

{{img:bscscan}}
{{img:polygonscan}}
{{img:ftmscan}}
{{img:moonscan}}
{{img:zksync}}

Step 6: You should see a page confirming that you have claimed the ownership of your contract address. On the same page, you will find a list of actions you can now perform with your verified contract address. If you want to update your token's information, click Update Token Information


Signing Message Manually (Using MyCrypto as example)


Step 1: Copy the message template provided inside the box by clicking the highlighted button in the screenshot below. Then, click Sign Message Manually

{{img:bscscan}}
{{img:polygonscan}}
{{img:ftmscan}}
{{img:moonscan}}
{{img:zksync}}

Step 2: For this step, open a new tab and go to mycrypto.com and choose any of your preferred wallet service providers that offer a message signing feature.

Step 3: After choosing the above options, you will be presented with the steps to connect your wallet. A small popup from MyCrypto will appear at the top-right corner of the browser, asking for permission to connect to your account. Click Connect and paste the message you copied in Step 1 into the input field and click Sign Message

Step 4: After signing the message, another box will appear below the Sign Message button. This box contains the details of your signed message and the resulting signature hash. Inside the box, copy the value next to “sig”: and make sure to copy the entire string starting from right after the first “ and ending just before the last “ (or simply double-click on the string of characters to select and copy it)

{{img:bscscan}}
{{img:polygonscan}}
{{img:ftmscan}}
{{img:moonscan}}

Step 5: Once you have copied the signature hash, return to the {{explorer}} tab and paste the copied hash into the Signature Hash field and click on the Verify Ownership button.

{{img:bscscan}}
{{img:polygonscan}}
{{img:ftmscan}}
{{img:moonscan}}

Step 6: If you have followed all the steps correctly, you should see a page confirming that you have claimed the ownership of your contract address. On the same page, you will find a list of actions you can now perform with your verified contract address. If you want to update your token's information, click on Update Token Information.


Claim Ownership for Bridged Token Contract

In cases where users have bridged a token to a different chain and wish to claim ownership of the token, the steps outlined above are not feasible because users do not own the deployer address of the bridged token. Therefore, we offer an alternative method for users to claim ownership of the bridged token. However, please note that the source code still needs to be verified before claiming ownership. (If you haven't verified it yet, please use this tool to do so).

When verifying ownership of a contract address, we typically require the owner to use the token's creator/deployer address to sign a verification message. However, the deployment of a bridged token on the destination chain is typically executed by the address of the bridging service provider. This address is generally inaccessible to the token's original creator.

Alternatively, we require the user to confirm ownership of the bridged token contract by using the deployer address of the token contract from the original chain instead. Please sign a message using the template below:

[{{website}} dd/mm/yyyy hh:mm:ss] I, [{{website}} username], hereby verify that I am the owner/creator of the token contract address [bridged token's contract address].

It is not required to publish the signed message. Please be aware that publishing the signed message will make your account username public.

Once you have completed this step, you can proceed to claim ownership of the bridged token by following the steps below.

{{div:bscscan,polygonscan,optimistic_etherscan}}
Step 1: Go to our Contact Us page and select "General Inquiry" as your message subject. Then, scroll to the bottom of the page and open the "Additional Support" snippet to view the second screenshot shown below. Finally, click on the link labeled "Here."
{{end}}

{{div:ftmscan,moonscan,celoscan,lineascan,wemixscan,bttcscan,zksync,snowscan,gnosisscan,scrollscan,basescan,cronoscan,taikoscan,fraxscan,arbiscan,blastscan,kromascan,mantlescan,xaiscan,xdcscan,apescan,sophscan,uniscan,worldscan,abscan}}
Step 1: Go to our Contact Us page and select "General Inquiry" as your message subject.
{{end}}

{{img:bscscan}}
{{img:polygonscan}}
{{img:ftmscan}}
{{img:moonscan}}
{{img:zksync}}
{{img:bscscan}}
{{img:polygonscan}}

Step 2: Kindly fill in the information in the box provided below. In the message section, please include the following:

  1. The bridged token contract address.
  2. The token contract address from the original chain.
  3. The full details of the signed message (address, original message, message signature hash, version).

Once completed, click the 'Send Message' button.

For more information on how to sign a message using your address, please refer to our article here.

{{img:bscscan}}
{{img:polygonscan}}
{{img:ftmscan}}
{{img:moonscan}}
{{img:zksync}}

We will proceed with the verification process once we have confirmed that all the information provided is correct.


Now that you have claimed the ownership of your contract address, go back to {{explorer}}’s homepage and try clicking on Verified Address in the dropdown menu under your username. You will see that your contract address is now listed there and you can proceed to update the information of your token directly from that page without needing to sign another message.

Also see:
How to update Token Information?

  • Teck Yuan Lee
Updated