How to verify whether your assets are hashed in HTX's Merkle Tree
- Asset Audit
I. How to verify whether your assets are hashed in HTX's Merkle Tree
What Is a Merkle Tree?
A Merkle tree is a data structure named after Ralph Merkle who patented the idea in 1979. It is widely adopted across cryptocurrency platforms such as Bitcoin and Ethereum. By using the Merkle Tree structure, many data blocks can be hashed and merged into one Merkle Root, thus the large-scale data can be efficiently stored, and at the same time, it can be proved with cryptography that the corresponding data is compressed into the final Merkle Root. When the data integrity of the Merkle Root is verified, the entire Merkle Tree producing the root is verified.
The hashed value of every data piece forms the leaf node of a Merkle Tree. Specifically, a leaf connects 2 adjacent hash pairs which are grouped and hashed to generate a parent hash. This process of grouping and hashing is repeated to generate a top-layer root hash -- the Merkle Root. A Merkle Root's hash contains all hashes of the entire Merkle Tree. Any tampering or changing of any node would cause the Merkle Tree hash to change. Thus the data integrity of a Merkle Tree can be guaranteed.
About HTX's Merkle Sum Tree
The Merkle Sum Tree technology incorporates users' balances into the tree. Each node is a (balance, hash) pair. The bottom-layer leaf nodes contain the basic data of users' balances and user information. The balance of a parent node is the sum of the balances of its two child nodes, and its hash value is the result of the two hash values of the two child nodes. Just like the Merkle Tree proof, the Merkle Sum Tree proof is a "branch" of the tree and comprises sibling nodes on the path from a leaf node to the root node. HTX will provide each user with a Merkle Sum Tree proof of the asset snapshot so that users get proof that their asset balances are properly and genuinely incorporated in the total.
Green: Alice's snapshot asset balance; Blue: The path that Alice will receive as a part of the proof; Orange: Merkle Root
How to Check If Your Assets Exist in a Merkle Tree?
*Notes: The audit only covers the asset balances reflected in the snapshot of your accounts and does not include any subsequent trades or any assets beyond the scope of the audit.*
*1. *Log in to your HTX account and enter your Assets page.
2. Click Audit. You will see detailed information on recent audits, including asset balances, audit numbering, and date of audit. HTX conducts regular Proof of Reserves (PoR) and each audit number consists of a unique character string.
3. Select a date for an audit. You can check out the audits, the assets covered, and snapshot asset balances of your account. Click the "Download" button to export the Merkle Sum Tree proof data.
4. Download MerkleVerify provided by HTX.
5. Save MerkleVerify and the proof data downloaded in step 3 to the same folder. For example, save the file to a folder named huobi-merkle-verify in Downloads, as shown in the following screenshot.
6. Open a terminal program (Mac/Linux : Terminal; Windows: Command Prompt).
7. Enter the command cd ~/Downloads/huobi-merkle-verify in the terminal program and go to the directory of the downloaded software package.
8. Enter the following commands to verify your data.
Mac/Linux
./MerkleVerify --file merkle_sum_proof.json
Windows
MerkleVerify.exe --file merkle_sum_proof.json
Notes: If you use the Mac system and encounter a security setting issue in this step, go to System Preferences -> Security & Privacy -> General -> Click the lock to make changes -> Allows apps downloaded from App Store and identified developers -> Allow the [tool].
*9. *View the result.
1) If your data is correct, the message "Merkle proof verify passed" will be displayed, as shown in the picture below.
2) If your data is incorrect, the message "Merkle proof verify failed!" will be displayed, as shown below.
II. How to verify HTX's ownership and balance of the reserves addresses
HTX's Reserves Snapshot Overview
BTC |
ETH |
TRX |
USDT |
HT |
|
Snapshot time |
20230201 |
20230201 |
20230201 |
20230201 |
20230201 |
Snapshot block height |
774468 |
- |
48193419 |
- |
16527860 |
Total balance |
16878.67601 |
112345.2624 |
9603867231 |
604969837.3 |
190884900.3 |
Get ready for the verification
1. Download the address verification tool and double-click to decompress the zip file.
The tool inside the file is:
VerifyAddress - for verifying the ownership of the addresses of the reserves
2. Download the Proof of Reserves file.
3. Save the downloaded file and address verification tool to the same directory.
4. To verify the ownership of the reserves addresses, please refer to the chapter "Verify HTX's ownership of the reserves addresses".
Cryptocurrencies supported
Crypto |
Network |
BTC |
Bitcoin |
ETH |
Ethereum |
TRX |
Tron |
Verify HTX's ownership of the reserves addresses
A HTX snapshot data must contain the addresses, the message "King will be back!" or“huobi”, and the signatures. You can verify HTX's ownership of the reserves addresses via the following steps.
Verify HTX's ownership of the reserves addresses via verification tools
1. Open a terminal program
- Mac/Linux system: Terminal
- Windows system: Command Prompt
2. Decompress the file and locate to the directory of the downloaded software package. For example, in Downloads, enter the command cd ~/Downloads/proof-of-address.
3. Enter the following commands in terminal:
Mac/Linux
./VerifyAddress --por_csv_filename
huobi_por.csv
Windows
VerifyAddress.exe --por_csv_filename
huobi_por.csv
Verify HTX's ownership of the reserves addresses via third-party tools
For the following networks' addresses, you can use third-party tools to verify HTX's ownership of them.
- BTC single-signature address - BTC signature verification tool
- EVM address (Arbitrum/Optimism/Avalanche C-Chain chain supported): ETH signature verification tool
- TRX chain address - TRX chain signature verification tool
BTC single-signature verification process:
1. Download and open the Proof of Reserves file.
2. Copy a record entry from the file, including the address, message, and signature (displayed as below).
3. Go to the BTC signature verification tool website, and paste the address, message, and signature.
4. If the verification is passed, the following result will be displayed.
EVM signature verification process:
Same process as that for BTC single-signature. The verification result returned is as shown in the picture below.
TRX chain signature verification process:
Same process as that for BTC single-signature. The verification result returned is as shown in the picture below.
HTX reserves the right in its sole discretion to amend or change or cancel this notice at any time and for any reasons without prior notice. The above is for information purposes only and HTX makes no recommendations or guarantees in respect of any digital asset, product, or promotion on HTX.