What is Merkle Tree Proof of Reserves and what it brings

Figure 1. Simple Merkle Tree Structure -@OrbiterResearch
Figure 2. Simple Merkle Tree Implement with 4 users — @OrbiterResearch
UID = 1
Balance = 1
Hash 2 = 0x8d9fb8d49241cf633a15d0ba03d0acd1f99b4450b5e02c7eb3a4a6c3a1c3557a
Hash B = 0x435327dcad4a9a1dbfca9259a0b6e79011eadbe97b160e57ef4752b34bb93e97
Root = 0xfd25450ff8ea24f58036910a6f8eb2cd82a3486a7557e1e2423bbd3d0118f56e
Figure 3. Simple Merkle Proof Flow — @OrbiterResearch
//let H() = keccak()

Hash 1 = H(H(UID) + H(Balance)) = 0xa284944720d246a0f5f3de67cb4b832a8b5dfdc512e0554cedc652aaf162d178
Hash A = H(Hash 1 + Hash 2) = 0x89831bdd4a10278ac1b94d1c2b6f466ba58a7a616340a825e9e6c8859093317b
Root = H(Hash A + Hash B) = 0xfd25450ff8ea24f58036910a6f8eb2cd82a3486a7557e1e2423bbd3d0118f56e

TL;DR

* The exchange itself has a database of users but doesn’t want you to see the details in it.
* So the Merkle Tree was introduced to give users a transparent channel to verify that the platform holds the full amount of capital reserves.
* Anyone can see the latest tree root. Users can only see if their balance matches the tree root.
* Auditing company proves the validity of adequate reserves and proper tree structure.
* Even if it is achieved, one more layer of user transparency would be added. The risk is still there.
* There is nothing wrong with the exchange IS ABLE TO achieve this, it would be a big problem if it CANNOT.
* Merkle Tree is just a method to solve the problem (not the only one). Zero Knowledge Proof can also be applied to such problems.

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Orbiter_Finance

Orbiter_Finance

624 Followers

Orbiter Finance is a decentralized cross-rollup Layer 2 bridge with a contract only on the destination side.