Main topics of the post:

  • Transparency of user funds is essential to restore public and regulatory trust in the cryptocurrency industry and promote its image as a mature sector dominated by responsible players.

  • Binance's proof-of-reserves (POR) system embodies our commitment to protecting user funds and maintaining transparency.

  • As of November 2023, Binance's POR shows our fund reserves denominated in 31 different digital assets.

A year ago, in the midst of a crisis that saw public trust in crypto take a series of hard knocks, Binance joined forces with the entire industry to rebuild it. We aim to show, rather than tell, that maturity and trust are the true defining characteristics of the digital asset ecosystem – contrary to the narratives that seemed ubiquitous at the time and that still hold sway today. We have put together a six-pillar framework that all centralized crypto exchanges should adopt to join forces to rebuild trust. Two core principles form the basis of this approach: the importance of user funds and transparency.

Our proof-of-reserves (POR) system, which launched in November 2022, was designed to showcase these two principles in action. We had already covered the most important part: responsible management of user funds. The culture of being risk-averse with the assets people have entrusted to us, of always maintaining sufficient reserves to cover any amount of withdrawals, and of caring about security has been ingrained at Binance since our early days. The challenge now was to find a way to make it more visible.

When the system was first unveiled, it only showed BTC reserves; by the end of 2022, the system supported a total of nine tokens. A year later, Binance’s POR system provides information on reserves denominated in 31 digital assets that we hold on behalf of our users—more than any other major centralized exchange that offers similar disclosures—consistently showing that each of these balances is above 100%. Still a work in progress, over the past year, Binance’s proof-of-reserves system has undergone multiple rounds of updates and continues to evolve with each iteration.

Transparency technology

Blockchain is the ideal environment to maintain and realize transparency of funds. Yet, given the massive scale of Binance’s user base and operations, finding a technology solution that would allow everyone to easily access reliable evidence of our reserves was a challenging task in itself.

The original system used Merkle tree cryptography, an approach that allows large amounts of data to be consolidated into a single hash, to sum up on-chain data about our holdings. The verification process involves building a Merkle tree that encodes user IDs with their token-level liquid assets. The output, called a Merkle root, acts as a cryptographic seal that “summarizes” all the data contained within. This method also allows users to verify specific subsets of the encoded data, effectively allowing them to verify that their own assets are stored securely.

This design, however, allowed full transparency only if individual account balances were made publicly visible—something we would not do for security and privacy reasons. Another shortcoming was that a conventional Merkle tree could be manipulated by adding fake user accounts with negative balances to distort the overall picture.

To address these limitations, in the February 2023 update, our developers implemented zk-SNARK protocols, a form of zero-knowledge proof, on top of the core Merkle tree. This type of cryptographic proof allows one party to establish the validity of a statement given to another party without disclosing the content of the statement. In this case, it allows Binance to prove that it fully backed its users’ funds, without revealing individual user balances. A zk-SNARK combined with a Merkle tree allows users to verify that their funds are included in the calculation of the user’s total net asset balance.

Building together with the community

Our implementation of zk-SNARK cryptography marked the first time a crypto organization had leveraged this approach to build proof-of-solvency solutions. We wanted the rest of the industry to benefit from this innovation, which is why our POR code is open source. We also wanted the community to provide feedback to make the system even more robust – and the community answered our call.

Shortly after our launch in February, for example, a blockchain security firm audited our code and pointed out a vulnerability in our updated proof-of-reserve solution, which we promptly addressed. This case exemplifies our approach to promoting transparency of user funds as an industry-wide priority. Rather than treating this as a competition, we want all of our peers to be better at this, and we welcome any outside input that will help us better navigate this uncharted territory. When it comes to rebuilding trust through improved transparency, a rising tide lifts all boats.

At Binance, we remain committed to backing user assets at a ratio of at least 1:1 at all times, and to constantly working on innovative ways to ensure user peace of mind while maintaining transparency of our reserves. As the 12th and most recent iteration of our proof-of-reserves program demonstrates, as of early November, we held enough BTC to cover 104% of customer liquid balances; 105% of customer ETH balances; 111% of customer BNB balances; and over 118% of all USDT that users have deposited on our platform. Your funds are safe with Binance – and you can check that at any time.

Further reading

  • POR source code

  • Binance proof-of-reserves: What is Merkle Tree

  • Binance Academy - Improving Cryptocurrency Transparency with Zero-Knowledge Proof

  • How zk-SNARKs Improve Binance’s Proof of Reserves System