Abstract: This post is part 2 of a detailed explanation of Proof of Reserves. It dives into the construction and history of the Proof of Assets protocol. A light technical know-how is required to read this article.
Introduction
In a previous blog post, Silver Sixpence highlighted our commitment to advancing the state of Proof of Reserves (PoR) through privacy-preserving and crypto-native solutions. Silver Sixpence is building an open-source software library & web application for PoR to enhance the transparency, reliability, and accessibility of centralised exchange solvency data.
Generally, PoR refers to an accounting procedure that digital asset custodians (e.g. centralised cryptocurrency exchanges, aka CEXes) undertake to show that they have enough assets to cover their total user liabilities; it allows the custodian’s customers to verify (in a trustless manner) that the custodian is indeed solvent. PoR consists of 2 steps: Proof of Assets (PoA) and Proof of Liabilities (PoL). In PoA, the exchange demonstrates control of digital assets, while in PoL, the exchange commits to the total assets owed to each user (the liabilities). The essence of PoR lies in comparing the total sum of liabilities to the total sum of assets, with the ultimate goal of ensuring a positive balance sheet (assets - liabilities > 0). In this post, we will focus on PoA; PoL is covered in a previous article. We focus on PoA for a single digital asset to simplify the text, although the principles can be easily extended to multiple.
A quick note on the terminology
Proof of Solvency generally refers to a wider area than what we are focused on, so this terminology is not used. According to the definitions made by the Chamber of Digital Commerce, we are focusing specifically on Proof of Platform Reserves. Still, the post will use the term Proof of Reserves (PoR) to mean this. PoR can sometimes be meant to be Proof of Assets, but this post does not use the term in that way.[^1]