Proof of Solvency is the result of both Proof of Reserves and Proof of Liabilities, with cryptographic mechanisms to validate that the total amount of assets held in custody is larger than the total amount of customer liabilities.

Proof of Reserves: is a cryptographic proof that demonstrates the exchange’s possession of the assets claimed. The proof is typically generated using zeroknowledge proofs (ZKPs), a cryptographic method enabling one party to prove knowledge of something to another party without revealing any other information about it. Moreover, the exchange must demonstrate control over the wallets containing the relevant assets by demonstrating the creation of verifiable digital signatures for each of the wallets.

Proof of Liabilities: is a cryptographic proof that verifies the existence and accuracy of all liabilities held by the cryptocurrency exchange. The proof must be verifiable by a third party without revealing any confidential information about the exchange’s customers assets or liabilities. In the context of cryptocurrency custody, liabilities refer to the amount of cryptocurrency that an exchange holds on the behalf of its customers. For instance, if a customer has deposited 10 BTC with the exchange, then the exchange’s liability to that customer is 10 BTC. Furthermore, to enhance the quality and security of the Proof of Solvency, we employ zkSNARKS technology. This cryptographic technology is tamperresistant and prevents the exchange from committing malicious actions.
With those 2 inputs, the results are easy to understand: provable reserves must be greater than provable liabilities. The cryptographically secured proof that all funds under custody exceed User assets is published on the blockchain and can be verified by Users and 3rd parties using blockchain explorer like https://etherscan.io/
Additionally, in case the exchange holds assets in cryptocurrencies, the exchange must also prove ownership over the private keys to the wallets included in the asset calculation. The Exchange can prove ownership over the relevant wallets by creating a digital signature of the wallets included in the Proof of Assets. In order to create a valid digital signature for a wallet, it is required to have the Private key. For more information on public/private keys and how digital signatures work, see the digital signature section.