Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
The Gnosis Safe is a smart contract wallet with multi-signature functionality at its core. Gnosis Safe Application on Harmony: https://multisig.harmony.one
You can connect to Gnosis Safe using Metamask.
1) Go to the Safe application on Harmony at https://multisig.harmony.one and click on Connect Wallet.
2) Chose your wallet.
Select the MetaMask option in the connect wallet menu. Check that the correct MetaMask account is active and connected to the Harmony Network.
1) Press Create new Safe.
2) Name the safe. This will be stored locally. Press Start to continue.
3) Add additional owners if you want. For each additional owner:
Click Add another owner
Give Owner a Name
Enter Owner an Address
Select how many owners will be required to confirm a transaction
Press Review
4) Submit your safe by clicking on Submit. You will need a very small amount of ONE tokens to confirm the transaction.
5) Confirm the transaction on Metamask.
6) If all steps were sucessfull your Safe should have been deployed. Just click on Continue.
You can load the Safe on other devices, so everyone can sign transactions using the same safe, but using different accounts.
1) On main page there is an option called Load Existing Safe. Click on this button as shown by the image below.
2) Pick a name for your Safe and paste the Safe Address. The Safe Address can be found on the main page. If you are in doubt please check section Receive Tokens.
3) Review owners by clicking on Review.
4) Load Safe by clicking on Load.
If sucessfull, you should see your Safe loaded on main page.
1) On the main page click on New Transaction.
2) On next window click on Send funds. You can also send collectibles, but for this example we will be sending normal tokens.
3) On next window fill the recipient address you want to send your tokens to and the amount. After that click on Review.
4) O next window click on Submit.
5) A Metamask window will pop up for you to confirm the transaction. You should see your transaction confirmed on the next window. On our example we are using 2 of 3 signatures for the tokens to be sent out of the Safe.
6) We need at least one more account to confirm the transaction on the safe. Just click on Confirm logged in with the required account.
7) Approve the transaction by clicking on Approve Transaction.
8) If all the parts have confirmed the transaction you should see Success on top.
Once you have a Safe deployed, you can use the Safe address to receive tokens. Just click on Copy to clipboard.
This page describes how to use Trezor hardware wallet with Metamask on Harmony network
Trezor wallet can be used along with Metamask to perform ONE transfers on Harmony network. Follow the steps below.
Note that, load the Ethereum firmware (or app) for signing the transactions on the trezor device. Currently, Harmony does not have a separate trezor firware. There is a bounty for adding Harmony to trezor firmware. After this bounty is finished, the users will be able to both transfer ONE and perform staking using trezor using Harmony firmware (or app).
This page will describe how to use ledger with Metamask connected to Harmony network for transfers
Metamask can be used along with ledger to perform transfers.
Steps:
Setup your Ledger device for ONE tokens
Currently Harmony is available only on Ledger Nano S. Please use preferably the "Installing using Ledger Live" method, as this is the easiest way to get your Harmony App installed on Ledger.
Download and install the latest Ledger Live version onto your computer. Ledger Live is the app you use to manage your Ledger device. Please follow the official installation instruction here.
Make sure to install the latest firmware on your device. This ensures compatibility with the Harmony app.
Open Ledger Live, select Manager. Turn on Developer Mode in Manager: Settings -> Experimental Features -> Developer Mode, as shown below:
Ledger live provides app catalog for different types of apps, as shown below:
To find the Harmony app, type harmony in the search bar, as shown below:
There are two buttons associated with Harmony One app. The install button can be clicked to install Harmony One app to Ledger Nano. The app can be uninstalled by clicking the trash bin button.
To use Harmony One app, please check your Ledger Nano device and click both buttons to open the app.
These instructions are only for advanced users who want to install Ledger manually.
To install Python 3.8.1 for windows, go to this website.
This is the latest version as 18th Jan 2019 that was tested, newer version could work or not.ese instructions install version 1.6.0. If you want to install another version, change the parameters on step 3.
At the end make sure you add the python binary to the path:
Execute the commands below on the windows terminal:
Click here to download the latest avaialable version. Make sure you download it using the raw format from Github like shown below:
These instructions install version 1.6.0. If you want to install another version, just download the corresponding version and change the parameters below accordingly.
Move the ver1.6.0.hex
file downloaded before tovenv\Scripts
folder and execute the command below to install the app:
Confirm the installation of the app on your Ledger.
These instructions are only for advanced users who want to install Ledger manually.
These instructions install version 1.6.0. If you want to install another version, change the parameters below for any version available on the release
folder.
Confirm the installation of the app on your Ledger.
Using Harmony hardware wallet on the Ledger requires a few things. You will need:
Your Ledger
The Harmony app installed on your Ledger
To interact with your Ledger device using the HMYC CLI, please click here to download and configure it first.
When using Ledger with HMY CLI, the only difference here is that you have to add parameter --ledger
on every command.
With that in mind, you can run any other command via HMY CLI using your Ledger.
Make sure HMY CLI is being run with super user permissions when interacting with Ledger.
Below, are a few practical examples on how to interact with your Ledger device.
For example, if you want to show your Ledger address you would simply run:
For a complete reference of all commands available, please check the HMY CLI cookbook.
Best Crypto Wallet for Billions
⚡ WHY: Billions of users can earn 10% or more annual returns with crypto assets. But they must stop worrying about seed phrases, device loss, email phishing, phone hijacking... We can secure everyone’s financial future against password breaches, software bugs, platform malware and exchange hacks.
👩👩👧👦 WHOM: Global consumers with just a few thousand dollars and no technical background.
💎 WHAT: A digital wallet for crypto assets, investment and identity. Consumers can buy crypto assets via credit cards, then trade between multiple platforms. They can earn fixed-rate interests or actively invest for higher returns. Their profiles can hold digital arts or custom domain names.
🤯 MAGIC
Earn 20% annual interests for the first million users.
No emails, SMS, passwords or government documents necessary.
Seamless between assets from Bitcoin, Ethereum or any networks.
🔨 HOW
Many staking protocols offer 10% yields, lending protocols offer 10%, and liquidity pools offer 20%.
Assets and keys are secured on blockchain; only need Google Authenticator and social recovery.
Harmony supports non-custodial and trustless transactions in 2 seconds and at less than $0.01 fees.
💪 WHO: Ph.D.s, ex-Google developers, formal verification as security audit, top branding agency, builders of billion user products.
🔥 WHERE: The Future of Money is already here but unevenly distributed. Decades of cryptography, best research in production.
🚀 WHEN: Product launch in 2021 Q3 with 1000 users, then 10k users in Q4 with each wallet holding $1000. A prototype with minimal features on mainnet in July.
💡 Terms
Social recovery: friends or other devices unlock funds for you if you lose access to your wallet.
Non-custodial: no network, software, developers, government or even Harmony control your fund.
Join us at @1wallet_, demo and wiki.
Note: While your assets are completely safe and secure, please note the beta 1wallet app is currently under active development.
ONE Wallet is designed with these goals in mind for security:
Resilient. Funds are recoverable through time locks and multiple safety nets. No single point of failure such as thefts, cracks, loss, censorship or coercions is catastrophic.
Sufficient. All steps are well defined without delegating to hardware devices or seed phrases in safety boxes. Users do not need any passwords or rely on biometrics.
Anonymous. An account is a fresh cryptographic hash, not tied to existing systems or real-world identity. Derived paths support multiple public keys to protect privacy.
Composable. One-time or low-entropy passwords are useful for small funds. Multiple authentications can independently boost protection thresholds against brute-force.
On-chain. A decentralized network with high stakes and fast finality validates all transactions. Its platform has sustainable incentives and open governance to evolve.
Programmable. Operations can call third-party contracts, store history of states, or upgrade its code. Complex applications may use oracles of time, locations and events.
Self-Sovereign. No third parties, government documents, designated guardians, backup servers or hardware enclaves are necessary. Users have full custody and self control.
Air-Gapped. Key-loggers and man-in-the-middle attacks are minimized. The full parameters of transactions are easy to verify and approve without cables or cameras.
Verified. Trusted are only open source and hardened cryptography. Formal verification, through logical frameworks, assures end-to-end security beyond tests and audits.
There may be conflicts, tradeoffs or impracticality of the goals above. Here's our rule of thumb:
Toward validating our innovation with 10k users (each with $100 assets), focus on these three goals: sufficient, resilient and composable.
Toward adopting our product with 1m users (each with $1k assets), differentiate with these three goals: on-chain, self-sovereign and air-gapped
MetaMask is an extension for accessing Harmony enabled distributed applications, or "dapps", from your browser. The extension injects the Harmony web3 API into every website's javascript context, so that Web3 applications can read from the blockchain.
In this section, we walk through the process of installing MetaMask, configuring it on the Harmony network, and importing an existing account using a previously generated private key.
Continue through this section for more information on installing MetaMask, adding the Harmony network, importing an existing account, and more.
Note: staking dashboard only process transactions on shard 0.
To send ONE tokens to an address, click the "Transfer funds" button and the send window will pop-up.
Input the amount of tokens to send and the destination address, then click the "next" buttons.
Click the "Confirm and Sign" button to sign the transaction.
Check your ledger Nano S, the LED display on Nano S is shown as below. Click on the right button to review transaction on Ledger.
Check and confirm the destination address is correct.
Check and confirm the amount is correct.
Currently, staking dashboard only supports transaction on shard0.
Click the right button to start signing the transaction:
Once transaction is signed, Send window will pop-up on the staking dashboard and display the transaction status.
It will display "Successful Send" once the transactions completes.
Check the validators page to see list of validators. Click on desired validator logo to check validator details.
Click on the "Delegate" button to delegate to this validator.
Enter the desired delegation amount or scroll the percentage slider in the pop-up Delegate window. Delegation must be at least 100 ONE. Click on "Next" and confirm the signature request.
Check your Ledger, it will display "Delegate Stake" in the LED screen. Press the right button to start signing the transaction.
Check the delegator address. Press the right button to show full address. If correct, press both left/right buttons to continue.
Check the validator address. If correct, press both left/right buttons to continue.
Check the delegation amount. If correct, press the right button to continue:
Press right button for Sign Stake confirmation.
The entire process is shown below:
Once transaction is signed, Delegate window will pop-up on the staking dashboard and display the transaction status.
Download and setup Safepal Hardware Wallet
A Hardware wallet
The Nano X and Nano S are hardware wallets created by Ledger. A hardware wallet stores the private keys to Harmony tokens on a separate device, making it much harder for malicious parties to steal them. In fact, the private keys never leave the Nano wallet itself, so they will remain secure even if the device is connected to a compromised computer. As long as you follow best practices when using your Nano, it is virtually impossible for an attacker to steal your funds.
Plug in your Ledger and open the Harmony Ledger App. Your device will be detected by your computer.
Start from the staking dashboard: https://staking.harmony.one/ledger and click the "sign-in" button.
You will be directed to the Validators page on the Staking Dashboard and a small trident logo will appear on the chrome tab. Your Ledger Nano will display "waiting for commands" before you click on any buttons.
Click the "Show on Ledger" button to display your address on your Ledger device.
Press the right button on Ledger to continue and confirm the address is correct.
Open MetaMask and click the list of networks at the top, then select "Add Network".
You will be prompted for additional information. Use the table below to complete the step. Below you will see multiple options for RPC URL and Chain ID corresponding to mainnet vs testnet, and the various shards within each.
Use the RPC URL and Chain ID of Shard 0 if you want to send/receive transactions from exchanges or do any staking transaction type.
Network Name
Harmony Mainnet
Harmony Testnet
Harmony Devnet
New RPC URL
https://api.harmony.one
https://s1.api.harmony.one
https://api.s0.b.hmny.io
https://api.s1.b.hmny.io
https://api.s0.ps.hmny.io https://api.s1.ps.hmny.io
Chain ID
(use number only)
Shard 0: 1666600000
Shard 1: 1666600001
Shard 0: 1666700000
Shard 1: 1666700001
Shard 0: 1666900000 Shard 1: 1666900001
Currency symbol (optional)
ONE
ONE
ONE
Block Explorer URL (optional)
The example below shows the configuration that needs to be done to connect to Harmony Mainnet on Shard 0:
Click the Save button and your configuration should be done!
if you have any issue fetching data like chain-id, try to type the new RPC URL
instead copy pasting it.
This page describes how to add HRC20/HRC721 tokens to MetaMask.
Open MetaMask, select the Harmony network, then click the Assets tab. Near the bottom, click "Import Tokens" and complete the empty fields.
Add the Token Contract Address, Token Symbol, and the Decimals value. Note the Token Symbol and Decimals may auto-populate. These details are usually provided by the token creator.
See "Importing 1BTC Token" as an example.
Complete the step by clicking on "Add Custom Token". Your custom HRC20 Token will show up in MetaMask along with its balance.
Click on the asset you want to send your tokens from on the Asset tab. Click on Send button and on next window copy paste the destination address starting with 0x, fill the amount you want to send, click on Next and then on Confirm.
In order to receive a transaction, just share the 0x address format of your wallet. One Wallet supports sending HRC20/HRC721 transactions to either addresses starting with 0x or one1.
There is a known issue on MetaMask where after the restoration of a wallet, MetaMask shows a different account with missing funds. Please make sure you use the same RPC network details as the one used in the original wallet. For example, if your original wallet was on the Harmony RPC network but your new wallet is on POKT RPC network, you may not see your original account.
Importing an account is done by taking an existing private key and importing it into MetaMask. How you obtain the private key is dependent on the wallet in use.
For the Harmony Chrome extension wallet, click the Menu button at the top right, click Export Private Key, enter your password, and copy the private key displayed.
Click on the icon on top as shown by the image below and then on Import Account:
On next window, select the option to import from a Private Key, paste your key and click on Import to complete the step.
Your account should now be imported.
You can receive transactions to addresses starting with both one1 and 0x. However, Metamask does not allow you to send transactions to addresses starting with one1. You will need its' equivalent 0x address as the destination address. For that, follow the procedures below.
For mainnet, go to (Mainnet). For testnet, go to .
Search for your one1 address at the top.
At top of the screen, toggle the address format from ONE to ETH.
Copy the 0x address format by clicking on the small icon right to the address
You now have the 0x address which corresponds to your one1 address.
To send a transaction on MetaMask, click on Send button and on next window paste the destination address starting with 0x, fill the amount you want to send, click on Next, and then click on continue.
In order to receive a transaction, simply share the 0x address format with the sender.
You can choose to create a wallet through the extension or import your existing wallet using a mnemonic phrase or a private key.
When you create a wallet, please write down your mnemonic correctly and keep in a safe place.
You may also import your Harmony Account using your mnemonic or private key.
You can also choose to export your keys in Settings. Your keys will be exported into a txt file with both private key and mnemonic.
In order to create a new account, click on the icon on top as shown by the image below and then on Create Account:
On next window, provide an account name and then click the Create button to complete the step.
Follow the steps below to send your ONE using Math Wallet.
Make sure you've set up your Math Wallet extension according to the directions in .
You will need to open Web Wallet in order to view account details and perform transactions.
Please select the wallet you want to open and click Web Wallet on the Math Wallet extension popover interface.
After clicking Web Wallet, a new tab will open asking you to login into Math Wallet, click on login and you will enter the Web Wallet.
Specify the shard you want to pull funds from using the Shard dropdown in the sidebar.
Specify which account you want to send funds to using the To Address field.
Specify which shard you want to send funds to using the Shard dropdown to the right.
Specify the amount you wish to send in the Transfer Amount field.
Specify the gas price you wish to pay using the Fee slider. Gas is a fee charged by the network for the computational work of mining a transaction into the blockchain.
Click Transfer to complete the transaction! You will be shown a transaction receipt before finalizing the transaction.
This section describes how to create your wallet, stake and undelegate your ONE, send transactions, and claim staking rewards using the Math Wallet browser extension.
is a browser extension and a mobile wallet for holding and transacting cryptocurrency.
Access the Google Chrome web store and install the .
Note : Ensure to use the latest available version of Math Wallet (greater than 2.0.7).
Previous versions have a known bug and are not supported.
Open the extension in your browser and create new password.
Select Harmony from the list of networks.
Click to install the MetaMask extension on your browser. It can be installed on most desktop browsers. Just click on the installation button to begin the process. Once installed, continue to the next section to add the Harmony network to your new wallet.
Remember to save a backup of your private key(s) but never share it with anyone unless that person is to be trusted with full access to your cryptocurrency assets.
A hardware wallet with a mobile app
SafePal is a secure and user-friendly hardware wallet designed for the masses. SafePal S1, its first flagship hardware wallet, adopts multiple layers of security schemes and intuitive user interfaces, enabling users to store, transfer and trade coins in the wallet in the easiest way.
Click on the 'Send' segment in SafePal App menu bar and select ONE.
Input the destination address by pasting the address or scanning the QR code. Enter all transaction details - amount, fee and don't forget to select the shard number.
Then clink “Send”to check the transaction details.
Tips: If you don't know the exact shard number, don't worry, you can simply use Shard 0 as the default shard.
Sign the order with your SafePal S1 hardware wallet.
Confirm the payment.The transfer is broadcasted on chain. Don't forget to check transfer status later.
To receive ONE tokens you need to provide the sender your ONE address which can be found using the SafePal app or wallet.
Using the SafePal App:
Select ONE which gives you the option of receive and send, click on receive
You can either copy your ONE address for the wallet, save the QR code, or have the other party scan the QR code from your phone
Using the SafePal Wallet:
Turn on the wallet
Scroll to "Asset Management" in the main menu
Select "Harmony" out of all the options
Click on receive, and then enter your PIN code
Your QR code, as well as the ONE address for the wallet will show for the other party to use
Stake and exchange Harmony ONE tokens using Guarda Wallet. You can download the desktop wallet here.
The Harmony Chrome extension wallet is no longer supported. The extension can still be downloaded but should be used at your own risk.
Please see here for more information on the sunset announcement.
See here for migration options to MetaMask.
Manage your Harmony, Ethereum, HRC20, HRC721, ERC20 & ERC721 Tokens in a trustless manner.
You can download Blits Wallet here.
Average setup time is 3-5 minutes:
Download Metamask Mobile App from Apple App Store
Click on Get Started
Select Create a new wallet
Scroll and select No thanks for Metamask data
Create Password and select Face ID (MetaMask cannot recover your password, write this down in a safe place, DO NOT TAKE A SCREENSHOT)
Allow Face ID
Secure Wallet (*even more important than password, should never be shared with anyone, even MetaMask)
Review Metamask Tips (store phrase in a secure location)
Make sure no one is watching before revealing phrase, click View
Write your Secret Recovery Phrase in a safe place
Choose to enable automatic security checks (we recommend that you enable this)
You’re all set! Now connect to Harmony
Now that you have Metamask set up, let’s get you ready for ONE 🎉
Click Wallet at the top of the screen
Click Add Network
Select Add for Harmony Mainnet Shard 0
Approve (make sure the information is the same)
Switch to Network
To Get ONE you’ll need your ONE address
With Metamask open make sure the Wallet is on Harmony Mainnet Shard 0
Click your address on the top of the page to copy it
Once the address is copied, select ONE
Select the three dots on the top right and View on block explorer
Paste in Search
Your ONE address will automatically load
Select the copy icon to copy the address
(For additional iPhone security measures, follow this link)
This page walks you through the process of collecting stake rewards with Math Wallet.
With your ONE staked to one or more validators, your delegation begins earning rewards with each block. You may collect these rewards at any time and may be re-delegated to compound your interest assuming you have 100 or more ONE.
Visit the staking dashboard at staking.harmony.one and click the Portfolio link on the left.
Log into the dashboard if you're not already signed in.
With your address confirmed, proceed by clicking the Claim Rewards button to collect the ONE earned through staking.
Note the staking dashboard currently only displays whole integers, which means <1 ONE rewards will display as zero and cannot be collected.
Proceed by clicking the Next button at the window below.
Then click the Confirm and Sign button to send the transaction for signing in Math Wallet.
This will cause Math Wallet to pop up and request you to accept the signature request.
Click the Accept button to sign the transaction and collect your rewards.
Your rewards are collected once you see a Successful Withdrawal message.
Your ONE rewards, generated by staking your coins, are now added to your wallet.
Follow the steps below to undelegate your staked ONE using the Math Wallet browser extension.
Visit and sign into the staking dashboard at https://staking.harmony.one/, if you are signed out.
Click on the Portfolio link to the left.
This page will display information about your staked ONE including a list of validators to which you've delegated your ONE, amount of staked ONE, and unclaimed rewards.
You can undelegate from one or more validators where your ONE is staked.
From the Portfolio view, select the validator(s) from which you wish to undelegate by clicking on their validator name. This brings up the validator profile page.
Click the Undelegate button.
You will be prompted to specify how much you wish to undelegate from the validator. From here, specify an amount you wish to undelegate or click Set Max to undelegate all ONE from the validator.
Click Next and then click Confirm and Sign. This will open a window for Math Wallet.
Click the Accept button to sign your undelegation / unstaking transaction.
You should see a notification for your successful undelegation.
Your ONE is now undelegated from the validator. You may have more ONE staked with other validators. To undelegate fully, repeat these steps again through the list of validators on your Portfolio page.
Follow the steps below to stake your ONE using Math Wallet.
Visit the staking dashboard at https://staking.harmony.one/ and click Sign In.
The screen will prompt you to make a selection.
Choose "Use an Existing Address".
Click "Use Math Wallet" from the next selection of options and then click "Sign In".
Sign in to your Math Wallet browser extension. You will see a Login Request pop up. Select your wallet and then click Accept.
You will be brought back to the Validator page of Staking Dashboard. You will be able to see your address on the top left corner under the Harmony logo which means you are now signed in to your account.
Locate and click on your preferred validator from the list.
The validator profile page will open. Click on the Delegate button.
Option #1: Enter the desired amount of tokens you would like to delegate and click next or...
Option #2: Use the slider to determine the percentage of your ONE you wish to stake.
Click Next and then click Confirm and Sign.
Click Accept to confirm the signature request on the Math Wallet pop-up window and wait a few seconds. If the transaction completes, you will find a success confirmation pop-up on your screen.
You are now staking your ONE with a validator and will begin earning rewards at the start of the following epoch.
Click the Portfolio link on the left to view your stake amount, rewards accumulated, and a list of any validator to whom you have delegated your coins.
Frontier is a chain-agnostic DeFi aggregation layer. Users can stake in Harmony using Frontier.
Please visit with your mobile device to download the harmony mobile app.
Cobo is the first leading wallet company in the world to offer Staking and masternode rewards on user holdings, making it easy for users to grow their digital assets effortlessly. As a company, they emphasize long-term security, reliability, and convenience.
You can download Cobo Wallet .
Staking4All wallet is a desktop wallet for Harmony. You can download it .
Description: "The ultimate gateway to decentralized finance in a user-friendly, multi-currency and convenient cryptocurrency wallet for all your needs."
For more information: https://infinitywallet.io/mobile
Stake and exchange Harmony ONE tokens using Guarda Wallet. You can download the mobile wallet .
Trust Wallet is a mobile cryptocurrency wallet. Please visit with your mobile device to download the app. Users can stake in Harmony using Trust Wallet.
IMPORTANT DISCLAIMER
Please note that Trust Wallet does not support Harmony's sharded network architecture yet, so all transactions to or from Trust Wallet must go through shard 0. You can only view and access your funds in shard 0.
The funds that are sent within shard 0 will be viewed correctly in Trust Wallet.
If you receive funds in a shard other than shard 0 (i.e. in shard 2), you will not see the transaction receipt in the Trust Wallet app. Since your account balance will only show the funds in shard 0, your total balance will not change.
Since there is no shard selection in the Trust Wallet UI, all transactions will originate from shard 0 and will be sent to shard 0.
You will need to export the account in which you received the funds and import it to another wallet such as the CLI or Math Wallet.
Example Using Math Wallet:
Open Trust Wallet app
Click on "Settings" on the bottom right
Click on "Wallets"
Click on the info circle next to "Multi-Coin Wallet"
The screen will show backup options, select "show recovery phrase"
Your mnemonic recovery phrase will show up, make sure to note them down accurately and securely
Open Math Wallet Chrome Extension
Click the + sign next to Harmony
Select "Import Wallet"
Select "Import by mnemonic"
Type in your mnemonic that you noted from Trust Wallet, and click next
Name your new imported wallet
Open "web wallet" from the extension and you can access all your funds in all shards
Below are the official instructions on how to restore/import Recovery Phrase (mnemonic) on Trust wallet.
Description: "ONTO is the first truly decentralized, cross-chain wallet, allowing users to securely manage their identities, data, and digital assets. Wallet users can manage their crypto assets (including NFTs), perform cross-chain swaps, keep up-to-date with the blockchain and crypto industry’s latest developments and events via the ONTO news feed, and enjoy a variety of dApps."
For more information:
Description: "Trustee Wallet is the altcoins & Bitcoin wallet app for secure storage, profitable purchase of cryptocurrencies and tokens using bank cards."
For more information: https://trusteeglobal.com/
The Harmony CLI tool is used to interact with the Harmony blockchain.
Throughout this guide, we will use the following syntax:
./hmy
: This is the CLI program
./hmy.sh --
: This is the command to use the CLI with a shell wrapper (for macOS)
<argument>
: This is a required argument
[argument]
: This is an optional argument
/
: This is a line break, used to break up a line while writing a command
Enter the following command into your shell of choice:
If you have permission issues, enter the commands with "sudo" at the beginning, i.e. "sudo curl -LO https://harmony.one/hmycli && mv hmycli hmy && chmod +x hmy"
hmy
depends on some dynamic libraries, hence we recommend using the shell wrapper. Enter there commands into your terminal:
Now you can use hmy.sh
as a wrapper over hmy
and you should assume that all references to hmy
in these documents refer to hmy.sh
. For example, the command ./hmy
becomes ./hmy.sh --
.
Note that since hmy
is not statically linked, you cannot arbitrarily move hmy.sh
to anywhere on your filesystem like you could with a single binary.
If you are interested in compiling from source, then the process is more involved.
Steps:
Clone the repository at the same level as the main Harmony repo:
Then setup the build flags:
Call make
in the go-sdk
repo. This builds a binary named hmy
:
Congratulations! You can now use the binary to run the CLI.
Description: Stake and exchange Harmony ONE tokens using Guarda Wallet. Stake, exchange, earn and buy Harmony, Bitcoin, Ethereum and thousands of other assets.
For more information: https://guarda.com/
hmy
is the official Command Line Interface (CLI) provided by Harmony. You can use it as a local wallet and as a way to interact with your Ledger Nano device. The hmy
CLI is completely open-source. You can track its development and post any issues encountered and your feature suggestions .
With the hmy
CLI you can create a wallet, check your balance, send signed transactions to the Harmony blockchain, look up previous transactions, recover keys from previous mnemonics, create new keystores, and create new BLS keys.
OSX: main development platform
Linux: tested
Windows: tested/working under Windows Subsystem for Linux (WSL)
We will always upload the latest production release on and announce future uploads in pre-production releases.
Send. Swap. Connect. | Available at https://sefwallet.one
Sef Wallet is a smart DeFi wallet built for Harmony blockchain. Always low fees, and fast transaction time.
ADVANCED SECURITY
Guardians for added protection
Spending limits
Open-source contracts
Independently audited
AUTHENTICATOR RECOVERY
No more worrying about losing mnemonic keys, private keys, email or passwords to restore your wallet. Recovery is done with your authenticator codes on the blockchain with merkle proof.
ASSETS MANAGEMENT
Supports HRC20 send/transfer
Local prices conversions to dozens of languages
SWAP ON SUSHISWAP
Native support for sushiswap
Supports over dozens of of tokens
CONNECT TO DAPPS
Connect any dapps with WalletConnect
Access to Defi features on Sushiswap.
Sef Wallet is part of the & focusing on onchain with wallet security.
Please visit with your mobile device to download the harmony mobile app.
You can delegate tokens to a validator using the following command:
The CLI will ask for the passphrase for the delegator-addr
keystore file.
--delegator-addr
is the ONE address of the delegator (string)
--validator-addr
is the ONE address of the validator (string)
--amount
is the number of ONE tokens to delegate to the validator (float)
As a validator, if you want to increase your stake, you will have to delegate to yourself. For delegating to your own validator, delegator-addr
and validator-addr
will be the same.
You can un-delegate tokens from a validator using the following command:
The CLI will ask for the passphrase for the delegator-addr
keystore file.
--delegator-addr
is the ONE address of the delegator (string)
--validator-addr
is the ONE address of the validator (string)
--amount
is the number of ONE tokens to un-delegate (float)
As a validator, for un-delegating from your own validator, delegator-addr
and validator-addr
will be the same.
You can collect your block rewards with the following command:
The CLI will prompt your for the passphrase of the delegation account.
--delegator-addr
is the account to collect rewards for
You can only collect ALL of your block rewards at once, not partially.
When we mention the binary, we are referencing the ./hmy
binary from the setup procedure.
When we mention the shell scripts, we are referencing the ./hmy.sh
shell script from the setup procedure.
Creation of a new account is done as a function of a generated bip39
mnemonic with 256 bits of entropy. You must provide an account alias name.
Write/store this seed phrase in a safe place. it is the only way to recover your account if you ever forget your password.
This creates a keystore at the following directory:(hmy keys location)/account-name1/UTC--2019-09-16T21-25-35.297331000Z--678e7ea3dcb5f4e9724c0e761843572f10c49b73
When creating keys this way, hmy
will ask you to provide a passphrase. Make sure you keep track of this passphrase for future use because the passphrase is used to decrypt the keystore when signing transactions. Also make sure you save the seed phrase, also called a mnemonic.
If you don't provide a passphrase using the --passphrase
flag, the default passphrase is an empty string ""
. The passphrase is used to decrypt the keystore when signing transactions.
To know where your wallet file has been created, run the following command:
You can check the list of wallets (local accounts) with the following command:
You might have an existing keystore made by Harmony's old wallet.sh
program that ends with ".key" in the file name (example):
one16qsd5ant9v94jrs89mruzx62h7ekcfxmduh2rx.key
Or that starts with "UTC" in the file name (example):
UTC--2020-01-15T01-02-06.606670000Z--9689a0711642bf08ea92ed98d552f0c1b8c8cefb
Both these files can be imported into hmy
using the command import-ks
as shown below.
Note that the --passphrase flag only enables a password prompt after the command is entered, there are no other arguments necessary here (if you dont put --passphrase flag in the command it will assume no password needed and will not prompt you for one, which basically means that your wallet keyfile will not be password protected!).
Keep in mind that you should know the passphrase associated with the imported keystore and pass it as a parameter as shown in the commands above. For keystores created by Harmony's wallet.sh
, the default passphrase is an empty string; this matters for signing transactions.
Sometimes you might have a secp256k1 private key, such as the one generated from the following command:
You can import the key with an optional name and passphrase
If no account name is provided, a random word concatenated with -imported
will be used. If no passphrase is provided, the default passphrase will be used (which is blank). Note that the CLI currently only supports importing secp256k1 private keys.
You can recover lost wallet keys by entering the mnemonic words you received (and hopefully saved) when creating it:
Perhaps the most important feature of the hmy
CLI is the ability to create and send signed transactions to the Harmony
blockchain.
Check for finality of the transaction by using the transaction hash like so:
Let's first check what chain-ids are available for us to use, we can do that easily with:
Notice that the output is pretty printed JSON
, most outputs of hmy
are JSON
encoded and hmy
defaults to showing it nicely indented. Sometimes though you might want to turn that off, you can do that for any command with the flag --no-pretty
.
By default, hmy
assumes the testnet
chain-id; override that with the --chain-id
flag
We'll use the transfer
subcommand of hmy
to send a transaction.
Notice that simply invoking the transfer
subcommand gave us an error message about certain flags not being set. We'll need to provide legitimate values for these flags for our transaction to proceed successfully. Reading off the flags in the error message from left to right, the semantic meanings are as follows:
amount
: The quantity of Harmony One token to transfer from the senders to the receiver
from
: The sender's one address
from-shard
: Shard from which sender's balance will be drawn from
to
: Receiver's ONE address
to-shard
: Shard in which receiver will receive the amount sent by the sender
passphrase:
your wallet passphrase, which is prompted when you hit enter (or you can use a txt file with password and add it: --passphrase file.txt)
A sharded blockchain is a new kind of blockchain architecture where the network is partitioned into sub-networks called shards. Sharding is one of the distinguishing features of Harmony and it is key to solving the traditional scalability problems encountered in other blockchain protocols.
Note: The same ONE address will have a different balance in each shard. Currently Harmony mainnet has four shards while testnet has three shards. Sending a transaction from one shard to another is called a "cross-shard transaction."
Thus, a correct usage of transfer
looks like:
hmy
assumes that the private keys needed for signing the transaction on behalf of the sender (one1yc06ghr2p8xnl2380kpfayweguuhxdtupkhqzw
in this example) exist in the local keystore or in the hardware wallet if the --ledger
flag was used.
The sender's account must have enough of a balance on the from-shard
to send a transaction. In our example,one1yc06ghr2p8xnl2380kpfayweguuhxdtupkhqzw
must have an amount balance of at least 10 in shard 0.
Try out your transaction with the flag --dry-run
, this flag tells hmy
to create, cryptographically sign the transaction but not actually send it off. Sender's balances are checked and the output is a JSON dump of the signed transaction.
Signing and sending a transaction is very quick, about 2 seconds maximum. The actual sending of the transaction is done via an RPC
(Remote Procedure Call), you'll notice that we did not explicitly say where to send the transaction to. This is because the default destination of the RPC
call goes to http://localhost:9500
, the default HTTP
RPC
server running when you start a local harmony blockchain. For real world usage though, you'll want a different location. You can control that with the --node
flag (see the top of this page for an example).
Once an RPC
machine receives a transaction, it sends you back a transaction hash. This transaction hash is the key identifier used when querying the blockchain for transactions.
Simply having a transaction hash does NOT imply that the transaction was successfully accepted by the blockchain. A transaction is successfully accepted once it has been added to the blockchain. In the case of cross-shard transactions (when the from-shard, to-shard values are different), this means each shard has added the transaction to their blockchain.
We can pull down details of the finalized transaction with ./hmy blockchain transaction-receipt
as well:
If the transaction has not finalized then the "result"
key in the JSON
output will have value of null
.
You should set the value of --node
to the same shard that sent the transaction, notice that the URL we used, https://api.s0.t.hmny.io
contained s0
, this means that this URL is targeting shard 0. For further information, see Querying the Blockchain.
You can tell hmy
to wait until transaction confirmation by providing a positive integer value to flag --wait-for-confirm
. For example, --wait-for-confirm=10
will try checking the receipt of the transaction for 10 seconds.
The easiest way to get detailed help is to use the cli itself. For example below is the cookbook which gives an overview of various commands.
By default, cookbook will show the mainnet shard 0 (https://api.s0.t.hmny.io) RPC endpoint. Use the parameter --node="<RPC>" so the example would show the s0 in the targeted network, example ./hmy cookbook --node="https://api.s1.os.hmny.io" would show s0 in OSTN
Here is the list of failed transaction messages which can be checked by querying your transaction hash, checking the transaction hash on explorer or checking the blockchain pool transactions.
Here is how with the hmy cli :
failed messages are network and shard specifics, please use the shard you were sending the transaction from and change the --node value accordingly. Mainnet example on shard 1 would be : https://api.s1.t.hmny.io
if you want a full list of commands the hmy
tool knows in markdown format, please run the following command:
Then in the same directory, hmy
creates a directory named hmy-docs
in which you can find all markdown files for the commands and subcommands.
Deletion of a one account is possible by issuing the below command
Be sure to have saved your private keys before if you had fund in that account. Deleting the account without backing it up means you'll lose it forever.
hmy
provides several subcommands under the blockchain
subcommand which let you query the blockchain.
The Harmony blockchain is a sharded blockchain, therefore some commands depend on which shard you target. The shard you target when querying is controlled by the --node
flag. For example, if a transaction is made between shard 0 and shard 1, the transaction receipt must be queried from whichever shard sent the funds - in this case shard 0, so the --node flag would look like this:
For other shards, please replace the s0 with the appropriate shard number - eg. s1 for shard 1, s2 for shard 2 etc.
By using ./hmy blockchain help
command we can see that the following options are available:
block-by-number - get a harmony blockchain block by block number
current-nonce - current nonce of an account delegation information about delegations
known-chains - print out the known chain-ids
latest-header - get the latest header
median-stake - median stake of top 320 validators with delegations applied stake (pre-epos processing)
protocol-version - the version of the Harmony Protocol
transaction-by-hash - get transaction by hash
transaction-receipt - get information about a finalized transaction validator information about validators
pool - get transaction pool information
Here are some examples of the above commands that you will use frequently:
Checking the hash of your transaction to see the transaction data and if the transaction has been completed
Get information about a finalized transaction:
Checking the network status, last block, epoch, leaders, based on the shard number:
Note the block-number provided must be in hex with a 0x prefix.
For example if you call latest-header and get a result of 10657
you convert this to hex which is 29A1
and then use the value 0x29A1
for block-number. This can be done using
printf '0x%x\n' 10617 #0X29a1
Message
Notes
transaction size is <tx size in Bytes>: oversized data
A transaction cannot be more than 32KB to prevent DDOS attacks
transaction value is <tx value>: negative value
Transaction value is negative
transaction gas is <tx gas-limit>: exceeds block gas limit
Assumed to be hardcoded / config
transaction sender is <tx from addr>: invalid sender
Transaction sent from an invalid account
transaction gas-price is <tx gas-price> ONE: transaction underpriced
Too low transaction fee
transaction nonce is <tx nonce>: nonce too low
Occurs when the nonce associated with that transaction is too lower than the actual nonce
insufficient funds for gas * price + value
Usually when not enough holdings to pay for gas
transaction gas is <tx gas-limit>: intrinsic gas too low
Intrinsic gas is based on the size of the transaction including data
transaction gas-price is <tx gas-price> ONE in full transaction pool: transaction underpriced
Transactions can get dropped if tx pool is full and tx has lowest gas
existing transaction price was not bumped enough: replacement transaction underpriced
If a transaction attempts to replace another with less gas than the original, it will get dropped
old transaction, nonce <tx nonce> is too low
During promotion (from 'future' txs to pending txs in pool) the nonce is checked again
unpayable transaction, out of gas or balance of <acc bal in ONE >cannot pay cost of <cost on ONE>
During promotion (from 'future' txs to pending txs in pool) balance is checked again
exceeds cap for queued transactions for account <one1... address>
Each account has a limit in the number of txs it can put into the tx pool
fairness-exceeding pending transaction
If tx pool is full, txs from accounts with highest number of total transactions in pool will be dropped
exceeds global cap for queued transactions
Occurs when the tx can´t be queued because global cap for queued tx pool exceeds the max
old transaction, nonce <tx nonce> is too low
During demote (from pending txs in pool to 'future' txs) the nonce is checked again
unpayable transaction, out of gas or balance of <acc bal in ONE > cannot pay cost of <cost in ONE>
During demote (from pending txs in pool to 'future' txs) balance is checked again
demoting pending transaction
Tx was not added to the pool and move to queue of 'future' txs