What is Proof-of-Reserves (PoR)?

AdvancedSep 21, 2023
Proof-of-Reserves (PoR) emerged as a crucial solution in response to a trust crisis triggered by FTX, and it swiftly gained traction among major centralized exchanges (CEX). PoR serves as a means of demonstrating that an exchange's assets significantly exceed its liabilities. This is achieved by structuring asset data into a Merkle Tree format and subjecting it to third-party audits, confirming the exchange's substantial financial backing.
What is Proof-of-Reserves (PoR)?

Introduction

Proof-of-Reserves (PoR) emerged as a crucial solution in response to a trust crisis triggered by FTX, and it swiftly gained traction among major centralized exchanges (CEX). PoR serves as a means of demonstrating that an exchange’s assets significantly exceed its liabilities. This is achieved by structuring asset data into a Merkle Tree format and subjecting it to third-party audits, confirming the exchange’s substantial financial backing.

With the introduction of PoR, the CEX sector has witnessed a notable uptick in standardization, a development that has substantially boosted user trust. While PoR isn’t without its limitations and has posed certain challenges, the industry is actively embracing innovative technologies to enhance the transparency of asset verification. A prime example is Gate’s recent announcement of adopting zero-knowledge-proof technology, a significant step forward in implementing PoR while safeguarding user privacy.

Development Background

In February 2019, Bitcoin and blockchain infrastructure company, Blockstream, published a blog post titled “Standardizing Bitcoin Reserve Proofs.” This article details how to self-certify the Bitcoin reserves of exchanges and other institutions, as well as how to demonstrate control over these reserved funds. Spotting an opportunity, Gate Exchange took the lead in May 2020 by introducing the concept of exchange reserve proof. They invited the well-known American auditing firm, Armanino LLP, to audit their assets. However, the widespread adoption of this technology didn’t truly take off until November 2022. Following the bankruptcy of the FTX exchange, valued at $32 billion with assets surpassing $24 billion, influential industry figure CZ (CEO of Binance) announced on Twitter (now renamed as X) that Binance was about to implement a reserve system for full transparency. Soon after, various exchanges, both large and small, announced their reserve-proof systems.

What is Proof of Reserves?

In centralized exchanges (CEX), the assets of each user are recorded in their database ledger. It’s challenging for users to verify whether their assets have been transferred or whether the exchange has adequate assets to cover the funds deposited by users. Thus, exchanges need a method to prove they possess sufficient reserve assets to guarantee 100% repayment when users make withdrawals. This means that the exchange’s reserve assets should exceed the value of the assets deposited by users. This public verification of assets is called Proof of Reserves. Some CEXs also refer to it as “100% Collateral Audit Proof,” such as Gate.

Proof of Reserves: Common Presentation Forms (Source: Gate.io )

Why is Proof of Reserves Important?

When users deposit assets into an exchange, the assets held by the exchange become a liability to the users. For instance, if user A deposits 10ETH into the exchange, the exchange’s ledger should reflect an increase of 10ETH in assets and an equivalent liability of 10ETH. This is because these assets belong to the user, who could withdraw them at any time. Thus, the total balance for the exchange would be Assets (10ETH) - Liabilities (10ETH) = 0.

Exchanges often have tens of thousands of users who deposit assets amounting to billions. If the exchange were to misappropriate just a small fraction, users could still withdraw their funds normally. For example, if the platform has 10,000ETH and diverts 1,000ETH, user A withdrawing 10ETH wouldn’t face any issues. However, when there’s a significant demand for funds and many customers want to withdraw (commonly referred to as a “bank run”), the gap from the diverted funds cannot be replenished, leading to a liquidity crisis.

When a liquidity crisis occurs, some users can’t access their money. As a result, everyone rushes to withdraw or liquidate their assets to avoid being the last to do so, leading to a domino effect. For instance, when it was disclosed that FTX had misappropriated funds, many users withdrew from FTX and began selling off or shorting its token, FTT, causing a sharp decline in the prices of projects invested by FTX and assets within its associated ecosystem. As FTX’s assets also faced devaluation, it became even more challenging to repay user assets, ultimately leading to the declaration of bankruptcy and substantial losses for countless users and investors.

Proof of Reserves can largely prevent such incidents by making the asset status of centralized exchanges (CEX) more transparent and proving that a CEX has sufficient funds to repay all user liabilities, ensuring it does not face a liquidity crisis.

Principle and Implementation Process

Most CEXs utilize the Merkle Tree for reserve proof, complemented by third-party audits.

Except for Coinbase, the top 10 CEXs have all completed PoR (Source: Coingecko )

Relevant Terms

Merkle Tree

The Merkle Tree, also known as a hash tree, is a typical binary tree data structure, consisting of a root node, a set of intermediate nodes, and a set of leaf nodes. Each leaf node represents a piece of data or the hash of a piece of data. It is used to efficiently verify the integrity of large volumes of data. This concept was first introduced by Merkle Ralf in 1980 and was extensively used in file systems and P2P systems.

It’s also called a hash tree because it employs a hash function, which acts like a fingerprint scanner. This function takes any input, be it a file, text, or number, and produces a unique output known as a hash. The hash is akin to the input’s fingerprint. It’s challenging to find two different inputs with the same hash, and it’s impossible to retrieve the original input from the hash.

In Proof of Reserves (PoR), key user data such as User ID (UID) and balance are hashed as leaf node data. Hashes of multiple users and their different asset balances then produce another hash, which eventually yields a root hash. This root hash acts as a total asset proof on the platform, ensuring security and verifying authenticity.

Merkle tree structure (Source: Gate Github)

Centralized Third-party Auditing

An “audit” typically refers to an independent economic oversight activity in everyday parlance. Entities that engage in this activity are termed “audit firms.” Common application scenarios include audits of listed companies’ financial statements and government audits. In the crypto world, Centralized Exchanges (CEX) seek reputable audit firms from traditional sectors to conduct their audits. Due to the professionalism and unique role of auditing firms, utilizing third-party auditors bolsters the credibility of the PoR results obtained through Merkle Trees. Here are two typical firms that provide centralized third-party auditing:

  • Armanino LLP: One of the 25 largest independent accounting and business consulting firms in the US, offering audit, tax, consulting, enterprise management, and tech solutions to businesses both domestically and globally. Gate and NEXO are among its clients.
  • Mazars Group: A global audit, accounting, and consulting firm established in 1945, serving over 90 countries. Binance, Crypto.com, and Kucoin are among its clients.

Implementation Process

Using the PoR process of Gate as a reference, since the processes across various CEXs are generally similar:

  1. Auditors use the user balances provided by Gate to generate the Merkle Tree.

Gate provides all user balance details based on tokens to the auditors. The auditors then import these balances into generator.html, resulting in the generation of a Merkle tree.

Image Source: https://github.com/gateio/proof-of-reserves

  1. Once the Merkle Tree is successfully generated in generator.html, its root hash, along with the total number of users and total user balance, is calculated and displayed for auditor verification.

Image Source: https://github.com/gateio/proof-of-reserves

The Merkle Tree’s leaf node data is stored in a plain text file, which will be shared publicly on GitHub, enabling customers to verify their account balances.

  1. Users independently verify their account balances. They first obtain the published Merkle Tree from GitHub, then access the verification page and input their hashed User ID and token balance to initiate the verification process. If the user-provided hash UID and balance match the records in the Merkle Tree, a successful match result will be displayed, indicating the user’s position within the Merkle Tree. The root hash of the Merkle Tree is recalculated using the imported file to allow users to confirm the tree’s accuracy and completeness.

Gate’s provided web query page (Image Source: Gate)

Benefits

The evident benefits of PoR (Proof of Reserves) for the crypto industry and its users:

Preventing Liquidity Issues & Bankruptcy

By conducting regular audits and verifying if the funds held by projects are greater than the value of the assets deposited by users, users can be more assured that their funds won’t be affected by poor financial management and unauthorized asset transfers.

Increased Transparency & Trust

PoR allows users to verify whether their assets have been transferred, fostering trust between investors and platforms. Prompt and accurate proofs also demonstrate the technical prowess and asset management capabilities of CEX (Centralized Exchanges), enhancing users’ trust in the platform.

Boosting Industry Reputation

The negative impact brought by exchanges like FTX still lingers in the industry. More transparent operations contribute to the positive image of the industry, encouraging more newcomers to join.

Compliance & Regulation

In traditional sectors, transparency and disclosure of assets are crucial for ensuring compliance. An increasingly transparent proof of reserves will make platforms more compliant with regulatory standards.

Risks

However, due to the technical processes and third-party off-chain factors involved, there are certain flaws and risks with the Proof of Reserves to be aware of:

Privacy

While interfacing with third parties, constructing Merkle trees, and users independently querying, there’s a possibility of user information being exposed.

Frequency

Proof of reserves only provides a snapshot of user assets during the audit. Any asset transactions after the snapshot or assets not included during the audit will not be reflected. Therefore, CEX can tamper with user assets post-snapshot. Hence, a higher frequency is required to update the proof of reserves.

Cost

As mentioned, higher frequency leads to greater transparency, but it relies on third-party audits. Each audit consumes considerable manpower and resources.

Third-party Factors

While auditing firms involved in major exchanges might be well-known or have certain accomplishments, their expertise in auditing crypto trading platforms remains to be seen. There’s also the potential of receiving fraudulent audit reports.

Potential Technical Vulnerabilities

Front-end Fraud: Data for Merkle trees is stored on the exchange’s servers. Since the exchange controls the front-end interface, they might present fraudulent pages to deceive users.

Malicious Merkle Tree Attacks: An exchange can also set up fake accounts with negative balances after misappropriating funds. For instance, if a user has assets worth $1,000 and the exchange misappropriates $500, even if the Merkle tree proof is provided for $1,000, the actual assets ($500) are less than the deposited assets ($1,000). By setting up a fake account with a balance of -$500, the exchange can manipulate the Merkle tree to show that the actual assets ($500) match the deposited assets ($1,000 - $500 = $500), indicating that the reserve is normal.

Other Flaws

For instance, one cannot prove exclusive ownership of a private key, whether the assets during the audit were temporarily borrowed, or how to prove that the exchange’s funds (akin to owner’s equity) have been segregated from user assets (akin to exchange’s liabilities).

Further Development and Outlook

Reserve proofs have seen technical updates and out-of-the-box solutions but industry participants are also ensuring user fund safety and enhancing credibility in other ways.

Technical Innovations - Zero-Knowledge Proofs

zk-SNARK, a zero-knowledge proof protocol, allows one party (the prover) to demonstrate to another party (the verifier) that they have performed a specific computation accurately under certain restrictions without revealing the inputs. With the application of zk-SNARK technology:

  • Users can prove they own certain assets or meet specific conditions without revealing sensitive information.
  • In the Merkle tree, users with a non-negative net balance (the total dollar value of all assets the user holds) can address the malicious Merkle tree algorithm attack discussed earlier.

zk-SNARK in POR (Source: Gate )

Zero-Knowledge Proofs is now being used in the reserve proof process by CEXs like Binance, OKX, and Gate.

Third-Party PoR Services

Companies like Chainlink offer specialized solutions. Taking Chainlink’s reserve-proof solution as an example, it provides the necessary data for smart contracts and calculates the reserve collateral rate for any on-chain asset, whether cross-chain or off-chain. It can also perform real-time audits on collateral in DeFi applications, ensuring user funds’ safety and eliminating issues like inadequate reserve rates or off-chain custodian fraud. Meanwhile, CEXs like Binance, OKX, and Gate have open-sourced their PoR processes, further promoting the adoption of PoR technology.

Supplementary Safety Strategy SAFU (Secure Asset Fund for Users)

Typical asset security risks, such as cyberattacks, liquidity crises, and significant security incidents, are backed by a 100% margin provided by the platform. In the event of major uncontrollable factors, CEXs utilize SAFU. This ongoing reserve within the platform system ensures the safety and stability of users and the platform during potential industry and asset crises. It mainly comprises major tokens like BTC/ETH and stablecoins and can quickly provide support during emergencies. CEXs like Binance, Gate, and Bitget have all established safety supplementary strategies exceeding 100 million USD.

Conclusion

While mainstream regulatory bodies may not wholeheartedly embrace Proof-of-Reserves (PoR) due to its limitations and industry-specific complexities, its emergence signifies a proactive effort to confront challenges in the field. As the crypto sector continues its evolution, tools like reserve proof are destined to gain increasing significance. Nevertheless, as of now, PoR requires several refinements and optimizations. The data it offers isn’t yet entirely infallible, thus prompting the ongoing exploration of more advanced technological solutions.

In the grand scheme of things, by bolstering trust, transparency, and security within the cryptocurrency realm, PoR holds the potential to play a pivotal role in propelling widespread cryptocurrency adoption. In doing so, it charts a course toward a future that is not only more secure but also more prosperous.

Author: Wayne
Translator: Piper
Reviewer(s): Piccolo、Edward、Elisa、Ashley He、Joyce
* The information is not intended to be and does not constitute financial advice or any other recommendation of any sort offered or endorsed by Gate.io.
* This article may not be reproduced, transmitted or copied without referencing Gate.io. Contravention is an infringement of Copyright Act and may be subject to legal action.
Start Now
Sign up and get a
$100
Voucher!
Create Account