Getting coins for tokens using CLI wallet - mainnet
This document shows how to get corresponding mainnet quantum coins for your DogeP ERC20 tokens. If you had registered as a genesis validator, this document does not apply to you, since the coins were already assigned and staked as part of mainnet launch.
Note that your DogeP token balance will not be affected by this procedure; DogeP tokens present in your wallet will remain in your wallet even after getting the coins. Even if you do not have the tokens in your wallet address currently, it does not matter, as long as your address had the tokens as of snapshot date. You can verify the allocation of coins in the snapshot portal.
Requirements
Windows: Windows 11 (might work in previous versions, have not been tested)
Mac: M1 or later
Linux: Ubuntu 22 or later
- Prepare your device for managing quantum wallets.
-
Open the appropriate shell window.
-
Create a folder named dp.
-
Change to the folder dp.
-
Download the CLI (command line interface) wallet by running the following command:
Windowscurl https://github.com/DogeProtocol/go-dp/releases/download/v2.0.22/dp-release-windows.zip -o dp.zip
curl -Lo dp.gz https://github.com/DogeProtocol/go-dp/releases/download/v2.0.22/dp-release-mac.gz
curl -Lo dp.gz https://github.com/DogeProtocol/go-dp/releases/download/v2.0.22/dp-release-ubuntu.gz
-
Extract the contents of the downloaded zip file to a folder.
-
This step is specific to Windows.
WindowsClose the Powershell window. Open a command prompt instead and change to the following folder.cd c:\dp
-
This step is specific to Mac and Linux. Set the environment variable to the required library path. Remember that if you open a new Terminal window anytime, you will need to run this command again, to set the environment variable. You might want to add this environment variable to your shell profile.
-
Create a quantum wallet. You will be prompted to enter a password. Ensure you use a strong password atleast 16 characters in length. You should never forget your password. If you don't remember it, the wallet will be useless and you cannot access any coins or tokens inside it.
- Once you execute the above command successfully, the quantum wallet will be created. Note down the address of this wallet from the output of the above command. This will be your quantum address.
-
You will also notice that a file has been created under the data\keystore location. This is your quantum wallet. An example is shown below:
Example: Path of the secret key file: data\keystore\UTC--2024-01-13T21-09-56.375263700Z--a553b8935988e6260b6e3c3ff5b340ee478b504b7166b4881365a9153c80a78c
- Backup the above wallet file in 3 different offline devices as explained in Prepare your device. You should not proceed to remaining steps until you backup the wallet.
- Remember that you will always need the password to use the wallet. If you don't remember it, the wallet will be useless and you cannot access any coins or tokens inside it. Consider noting down this password safely offline in a trusted location.
- Likewise, even if you remember the password, if the wallet file is lost or corrupted, you cannot access any coins or tokens. If the wallet is stolen and the password is not strong, the attacker can get all the coins or tokens in your wallet. Hence you should keep your wallet well protected.
-
Run the following command to set the wallet address for the forthcoming steps. Replace YOUR_QUANTUM_WALLET_FILE_PATH in the below command with the path to your quantum wallet file.
Windows
Example:set DP_KEY_FILE=YOUR_QUANTUM_WALLET_FILE_PATH
set DP_KEY_FILE=c:\dp\data\keystore\UTC--2024-01-13T21-09-56.375263700Z--a553b8935988e6260b6e3c3ff5b340ee478b504b7166b4881365a9153c80a78c
Example:export DP_KEY_FILE=YOUR_QUANTUM_WALLET_FILE_PATH
export DP_KEY_FILE=data/keystore/UTC--2024-01-13T21-09-56.375263700Z--a553b8935988e6260b6e3c3ff5b340ee478b504b7166b4881365a9153c80a78c
Example:export DP_KEY_FILE=YOUR_QUANTUM_WALLET_FILE_PATH
export DP_KEY_FILE=data/keystore/UTC--2024-01-13T21-09-56.375263700Z--a553b8935988e6260b6e3c3ff5b340ee478b504b7166b4881365a9153c80a78c
- Identify your Ethereum Address having the DogeP tokens from the Snapshot Portal. Copy the address as is from the column that reads Full Address.
-
Run the following command to generate a message for cross-signing. Cross-Signing is a cryptographic technology to associate your Ethereum wallet with your Quantum wallet, as a step towards getting the corresponding coins. Replace ETH_ADDRESS with the address you copied from the previous step. Enter the quantum wallet password when prompted.
Windows
Example:dputil getconversionmessage ETH_ADDRESS
dputil getconversionmessage 0xAa044ccF6BAD46F0de9fb4dF6b7d9fF02D2e195f
Example:./dputil getconversionmessage ETH_ADDRESS
./dputil getconversionmessage 0xAa044ccF6BAD46F0de9fb4dF6b7d9fF02D2e195f
Example:./dputil getconversionmessage ETH_ADDRESS
./dputil getconversionmessage 0xAa044ccF6BAD46F0de9fb4dF6b7d9fF02D2e195f
-
On successful execution of the above command, you will get a message for signing with your Ethereum wallet. An example is given below. Verify that the quantum address matches the address of the wallet you created. Copy the message starting from the word MY and ending with the quantum wallet address followed by the full-stop. Copy including the full stop as well. Ensure you do not copy any extra characters or space.
Example:
MY ETH ADDRESS IS 0xAa044ccF6BAD46F0de9fb4dF6b7d9fF02D2e195f. I AGREE THAT MY CORRESPONDING QUANTUM ADDRESS FOR GETTING COINS FOR MY DOGEP TOKENS IS 0xa553b8935988e6260b6e3c3ff5b340ee478b504b7166b4881365a9153c80a78c.
- Next, you will be navigating to a 3rd party website to sign the above message with your Ethereum wallet. Since you will have to connect your Ethereum wallet that had the DogeP tokens as of snapshot date, it is recommended that you do not have any coins or Ethereum or tokens (including DogeP tokens) in the wallet (you may move them to a different wallet, for safety).
-
Choose one of the following options. If you are using other wallet apps, please import your wallet into either Metamask Browser Extension or Coinbase Wallet app. Note that Coinbase Wallet App is different from Coinbase app.
Open the following 3rd party website, but do not connect your Ethereum wallet yet:
Option A) MyCrypto: Metamask Browser Extension: https://app.mycrypto.com/sign-message
Option B) Coinbase Wallet: https://dpdocs.org/coinbase-wallet-sdk/
Option C) Other Wallet Apps: Other wallet types are not supported yet. Please import your wallet into either MetaMask browser extension or into Coinbase Wallet and use either Option A or Option B. - In case your are using Option A), once the above page is loaded, it is recommended that you disconnect your device from the internet. If the 3rd party website is compromised, disconnecting from the internet will help in protecting the wallet. Quantum Coin Community or community developers are not responsible for any problems that you may face.
-
Option A) MyCrypto: Connect your wallet using one of the options provided in https://app.mycrypto.com/sign-message
Option B) Coinbase Wallet App: Keep the following URL opened and skip to the next step. https://dpdocs.org/coinbase-wallet-sdk/
-
Option A) MyCrypto: Paste the message copied from Step 18, in the Message field. Ensure that there is no additional newline or space before or after the copied message in the textbox.
Option B) Coinbase Wallet App: In the box that is titled message, paste the message copied from Step 18 and your Ethereum Address in the address box. Ensure that there is no additional newline or space before or after the copied message in the textbox. -
Option A) MyCrypto: Next, click Sign Message and complete the steps to sign the message. You should see a Textbox for the Signature.
Option B) Coinbase Wallet App: Click on submit. You will be shown a QR code. In your coinbase wallet app, open the scan icon to point at this QR Code. The app prompt you to connect the wallet and then sign the message.
Note: In case you get any errors, click the clear button at the top and repeat again from Step 22. -
Option A) MyCrypto: In the Signature textbox, identify the field that says "Sig" and copy the value without quotes. This value is the Ethereum part of the cross-signing and starts with the value 0x. The example below shows the highlighted portion to copy.
Option B) Coinbase Wallet App: The signature will be shown once signing is complete, in a green box below the button that says Example Message. Copy this signature without the quotes.{ "address": "0xAa044ccF6BAD46F0de9fb4dF6b7d9fF02D2e195f", "msg": "MY ETH ADDRESS IS 0xAa044ccF6BAD46F0de9fb4dF6b7d9fF02D2e195f. I AGREE THAT MY CORRESPONDING QUANTUM ADDRESS FOR GETTING COINS FOR MY DOGEP TOKENS IS 0xa553b8935988e6260b6e3c3ff5b340ee478b504b7166b4881365a9153c80a78c.", "sig": "0x4d75e819a3b2d5da2b058c425305c12aa2299aa886852954f5eb30b61d8759653e620859d13c89915f794d7b030b816f3fabf7da0438cd8b06ce36254d5efb641b", "version": "2" }
- Close the browser window after copying the above signature. You may disconnect or keep away your Ethereum wallet at this point. You might want to save the signature in a text file for easy access. You will need to connect back to the internet to perform the final step of cross-signing to get the coins.
-
Return back to the command prompt and run the following command. Replace the ETH_ADDRESS with the address copied from the snapshot portal and ETH_SIGNATURE with the signature from the previous step. Enter the password of your quantum wallet when prompted and answer the questions when prompted.
Windows
Example:dputil getcoinsfortokens ETH_ADDRESS ETH_SIGNATURE
dputil getcoinsfortokens 0xAa044ccF6BAD46F0de9fb4dF6b7d9fF02D2e195f 0x4d75e819a3b2d5da2b058c425305c12aa2299aa886852954f5eb30b61d8759653e620859d13c89915f794d7b030b816f3fabf7da0438cd8b06ce36254d5efb641b
Example:./dputil getcoinsfortokens ETH_ADDRESS ETH_SIGNATURE
./dputil getcoinsfortokens 0xAa044ccF6BAD46F0de9fb4dF6b7d9fF02D2e195f 0x4d75e819a3b2d5da2b058c425305c12aa2299aa886852954f5eb30b61d8759653e620859d13c89915f794d7b030b816f3fabf7da0438cd8b06ce36254d5efb641b
Example:./dputil getcoinsfortokens ETH_ADDRESS ETH_SIGNATURE
./dputil getcoinsfortokens 0xAa044ccF6BAD46F0de9fb4dF6b7d9fF02D2e195f 0x4d75e819a3b2d5da2b058c425305c12aa2299aa886852954f5eb30b61d8759653e620859d13c89915f794d7b030b816f3fabf7da0438cd8b06ce36254d5efb641b
-
If the command is successful, you will get output similar to:
Your request to get the quantum dp coins has been added to the queue for processing. Please check your account balance after 10 minutes.
-
After 10 minutes or so, you can check the coin balance in your quantum wallet using the following command. The coin balance should match the coin amount shown in the snapshot portal. In Mac and Linux, remember that if you open a new Terminal window, like for checking the balance, you will have to re-run Step 8.
Windows
Example:dputil balance YOUR_QUANTUM_WALLET_ADDRESS
dputil balance 0xa553b8935988e6260b6e3c3ff5b340ee478b504b7166b4881365a9153c80a78c
Example:./dputil balance YOUR_QUANTUM_WALLET_ADDRESS
./dputil balance 0xa553b8935988e6260b6e3c3ff5b340ee478b504b7166b4881365a9153c80a78c
Example:./dputil balance YOUR_QUANTUM_WALLET_ADDRESS
./dputil balance 0xa553b8935988e6260b6e3c3ff5b340ee478b504b7166b4881365a9153c80a78c
- Congratulations! At this point, you should have successfuly received the quantum coins. Ensure that you have backed up your quantum wallet and remember the corresponding password always.