Proof-of-Deposit – initial proposal and request for feedback

Hi @Pinotio.com

This is John Fletcher from Cambridge Cryptographic. I am co-author of this proposal with @ying_chan.

I would not have said “controlled for” here (to me, this means something like “allowed for”). I think just “controlled” is a better choice. De-pegging risk can be controlled in the sense that this risk will fall over time. Some reasons include:

  1. The stability mechanism employed by Celo is robust. For example, Maker DAO, (which has a related but, I would say, less robust stability mechanism than Celo) weathered a 95% drawdown in the ETH price after the 2017 crypto bubble (ETH being its only collateral at that time), while Dai maintained its peg pretty well. The problems experienced by Dai in the 2020 crash were in fact due to congestion on the Ethereum network, rather than a flaw in Maker’s design.
  2. As mentioned, Celo’s stability mechanism is fundamentally more robust than that of Maker. One reason is Celo’s ability to access the protocol level—for example—Celo can divert epoch rewards to reserves if required.
  3. Proof-of-Deposit provides an incentive to liquidate CELO (and indeed other cryptos) into Celo-native stablecoins, such as cUSD, in times of market turbulence. This is due to the return that PoD provides on cUSD, but also because of the nature of this return: it does not require the cUSD deposit holder bear credit risk. Credit risk is elevated in market downturns, so rational agents will seek to avoid it. In contrast, placing stablecoin denominated proceeds of liquidation in (for example) the Anchor protocol, does not qualify as a flight-to-safety / risk-off trade, because the yield on Anchor is compensation for credit risk. Liquidating to cUSD, with PoD in place, is designed to be attractive under such circumstances.

(We emphasise that we do not mean to imply that Anchor (for example) is inferior to PoD, it is just different. It “shines” under different circumstances. PoD is perfectly compatible and complementary to Anchor and other DeFi.)

This is all to say that, assuming the CELO price become less volatile over time, and the network continues to scale, then the de-pegging risk will be reduced, and Proof-of-Deposit will accelerate this.

We welcome any suggestions for alternative configurations.

The arguments in the min function are percentages (or fractions) of the total number of tokens of each type which are in play. Not absolute quantities. So we have something like min(%CELO, %cUSD, %cEUR,… ). This means that smaller deposits are required when the currency has a lower circulation.

For validators n=1,2,…, equilibrium is reached for min(%CELO(n), %cUSD(n), %cEUR(n),… ) when %CELO(n) = %cUSD(n) = %cEUR(n) = … .

Consider that, for validator n=1, %CELO(1) = %cUSD(1) = %cEUR(1) = … . In that case, the validator should not be willing to offer a share of the block rewords to a holder of (say) uEUR deposit who would might otherwise send their vote to validator 1. This is because validator 1 would not profit from these additional votes. In contrast, a validator n=2 who has a “deficit” of cEUR, (such that %cEUR(2) < %CELO(2), %cUSD(2),…) should be willing to offer a reward to a cEUR deposit holder who is willing to send their votes.

The result of these considerations is that the market will allocate resources (in this case votes) so as to drive the system towards equilibrium.

I will respond to these separately.

2 Likes