changed a year ago
Published Linked with GitHub

This is a top-level doc that links to all other docs for this project.

What is all of this? This project aims to help create proof of reserves software that centralized exchanges can use. This project is a collaboration between SilverSixpence & kn0x1y, funded by Coinbase.

Discord server: https://discord.gg/8yYPJaMnR6

Quick note on the nomenclature

One can read more in Nic Carter's blog or the Proof of Reserves report by Chamber of Digital Commerce. These are the 2 sources that are adhered to.

The terms can all be related like so:

\[ \text{proof of solvency} \gt \text{proof of reserves} = \text{proof of assets} + \text{proof of liabilities} \]

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 Chamber of Digital commerce we are focusing specifically on Proof of Platform Reserves, but we will use the term Proof of Reserves (PoR) to mean this in following documents.

Note PoR can sometimes be meant to be Proof of Assets, but none of the docs for this project will use PoR in this manner.

Some ideas

3PP

The 3-Party Proof-of-Reserves idea is detailed in this doc. The idea here is to solve the 3 issues facing current PoS solutions:

  1. Dispute resolution
  2. Knowledge of verifiers
  3. Friend attack

The 3PP solution requires the exchange to perform signatures on users' data. The technique used for doing this had issues which have been rectified in this alternate technique.

Hidden verifier

With a lot of the PoL protocols the exchange learns which users do the verification. Over time and multiple PoLs the exchange could get a very good idea of who verifies and who doesn't, allowing them to exclude certain users from the PoL with high probability of not being detected.

Here is a proposal for a change to the DAPOL+ tree to enable it to be made fully public without revealing the number of users of the exchange to the viewer. Making the tree public is one method to keep the exchange from knowing which users request inclusion proofs.

Here is a proposal for another method of hiding verifiers from the exchange, which avoids having to make the tree fully public.

Maxwell++ tree attack

Document describing a possible attack on Maxwell++ tree that is fully public.

Bug in shuffle algorithm in DAPOL+ paper

Doc

Exchanges currently doing PoS

A full list is given on Nic Carter's website and a deep dive into each of these exchanges is given in this doc.

Research notes

This is a dump of some research notes, not formatted to be easy to read.

Attack Vectors for a Proof Of Solvency System.

Task list

This is a list of all tasks done to date, and plans for tasks in the future.

Monthly reports:

Propsals

[14 July 2023] Proposal for what we should build for PoL: https://hackmd.io/@JI2FtqawSzO-olUw-r48DQ/rJbAxNpYn

[30 Nov 2023] Proposal for what we should build for PoA: https://hackmd.io/@JI2FtqawSzO-olUw-r48DQ/ByfjBnNBa

Select a repo