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

Hi @Andrew @Pinotio.com, to be clear about the situation with patents, we have disclosed their existence from the very beginning of our discussions with Celo back in October/November last year.

This implication that we have been keeping their existence secret is unfair and unwarranted.

The key reason we have not explicitly mentioned it in this forum post is because it simply was not necessary nor appropiate. The purpose of this post is to discuss the idea and implications, not the potential licensing arrangement we would have with Celo. All other parties in Celo’s ecosystem would get a perpetual irrevocable license via Celo’s monorepo.

This is not something we came up with in isolation, but through ongoing discussion with key people in Celo. The concerns raised by one or two people in cLabs about patents was about whether the license would be revocable which would be a huge issue. We believe we have already alleviated their concerns by clarifying that any licensing arrangement would be perpetual and irrevocable.

(lastly, not that it should matter, but the forum limited us from posting more than 2 links as a new user…)

2 Likes

Thanks Ying, I clarified my remarks above so they are specific to the matter of disclosure on the forum.

2 Likes

hm… there is no option for me to edit my original post? I want to add in the missing hyperlinks (now that I’m not a new user) and to link to the recording of the talk by @John.Fletcher at CeloConnect

1 Like

To be precise, to add the hyperlinks back in. (After the forum forced their removal).

The reason I believe it should have been explicitly mentioned is because the structure of the proposal and the suggestions for modifications were made in good faith that the best idea would be proposed. If the proposer is getting paid for certain ideas to be implemented, but not others, I believe it could impact the outcome.

Also, who would pay for the licensing? If governable funds are used, that cost should be made public and considered as part of the discussion. If cLabs or the Celo Foundation are covering the costs of such licensing without those costs going through governance, I believe it would also be useful to hear their reasoning on the matter.

Would you be able to share more details about the patents and the licensing costs?

On the topic of licensing a patent, which I assume means we’re recognizing the regulation of the entity that issues the patent, are there any legal concerns with validators offering yield on a stablecoin?

1 Like

The key point of us participating in the governance process is to remove reliance on “good faith”. Whether or not our proposal can stand on its technical merits as the “best idea” should be the result of this process by getting people to weigh it up against alternative approaches.

We would like to steer the current discussion back to this goal.

It will be a private commercial deal with one of those entities. It is simply not appropiate for such level of details to be diclosed. It is like asking for Celo’s private deals with MystenLabs, Kickstarter, and its many other partners to be made public.

We have no legal concerns

I would expect MystenLabs or Kickstarter to share details if their contributions were going to impact token holders and validators so meaningfully. Who launches a dApp or improves the codebase and their respective compensation is not something that impacts protocol rewards directly. This proposal does impact protocol rewards directly.

Yes, I understand you have no legal concerns, but for the validators who would be offering these rewards on deposits, I’m not convinced that their respective jurisdictions would approve. I brought the subject up because I think it needs to be discussed so as to not put any validators in a tough spot. I’m not an expert here and would love any insights.

Hi @Andrew, rest assured that before this goes to a formal governance proposal, details of simulation results / economic analysis, license terms, audits, non-confidential legal advice, and more will be made available. We are currently collaborating with cLabs and others to push this forward.

It is good to raise non-technical concerns as we may have missed something, but again re-iterate that the key purpose of this initial post is get our proposal’s technical merits thoroughly critiqued.

With all this said, if you’ve had a chance to review @Pinotio.com’s comments and re-read the proposal, we would be interested to hear if you’ve had any further thoughts on our approach.

1 Like

Having the patents in play is a red flag for me, the way CELO would move further away from being open source.

This whole idea, PoD, seems way over complicated and fraught with risk.

The two biggest concerns I have are 1) that the value hoped for is only added if there is growth and 2) it adds risks, rather than adding stability, to the whole Celo ecosystem system.

Assuming that people will act one way or another to make Proof of Deposit work is IMO, just nuts.

This is especially risky given no modeling has been done, at least none that I’ve seen, based on historical data with all the assumptions laid out for all to see and judge. Maybe an audit of sorts by outside experts should be considered.

There are other ways to create a returns that could be paid out to the stable coin holders as interest. Ways that would contribute to the stability, profitability, and mission of the protocol. Proof of Deposit isn’t the only choice.

This is a little red-flaggy for me too. Software patents in this ecosystem are completely antithetical to the spirit of the mission, both in blockchain in general, and possibly Celo even more pointedly. I mean, is the code even going to be auditable, verified on-chain, upgradeable, remixable, replicable, and testable by the community? This may seem trivial or concern-trolling but the power of the open-source movement really lives in these tenets.

That said, I think the authors of PoD have acted in good faith and are genuinely excited about the proposal, but the amount of personal outreach and championing this discussion thread did have me scratching my head a little. To be maximally cynical, a potential patent application perhaps explains the enthusiasm here.

To be less cynical, I’m always a proponent of experimentation and no ideas are ever off the table so I’ll continue to follow the discussion on its own merits.

My main question follows @markbarendt 's concerns about complexity. Why are we adding market dynamics to the role of a validator individually now? We are infrastructure providers, not economists, and this just adds another variable to control for which I’m really not looking forward to.

Why can’t we just have the percentages paid to cStable holders as a governable parameter applied equally across all validators? If PoD works as designed, and the price of CELO starts rising, all CELO holders, including validators, will be thrilled and are incentivised to continue voting to keep the % rate above zero. If PoD has no effect or even deleterious ones, then CELO governance voters can vote it to 0%, as they should if the goals of the proposal dynamics don’t eventuate.

If this is nothing to do with your election standing, uptime or slashing, why are validators involved at all? Can’t we just make a protocol-level change that is something like an auto-Moola where you just continuously earn interest on any cStables you have at rates defined by the community? I understand you can’t get something from nothing and that locked and voted CELO rewards would be decreasing to pay for this.

Additionally, how do we prevent a “race to the bottom” situation where large, well-funded, enterprise staking infrastructure providers can simply out-fund the cStable reward rate offered by smaller independents? Many of these groups are chronically over-voted and can easily convert their over-locked CELO into cStables without changing their elected seats, deposit on themselves in equal ratios, while independents are hobbled by some random cREAL allocation of $1000 and no spare cash or CELO to convert into a meaningful % of cStables.

Again I echo the complexity issue here, even if I’m advertising 100% reward rate on whatever cStable I’m low in %, no one is going to hunt out this information and switch their stable “deposited” to a new validator. It would be great if this is done automatically for depositors by some neutral process which finds the best configuration for every deposit and allocates them automatically.

@Pinotio.com am I understanding your summary correctly? That even though your election standing wont change, your average remuneraiton of 65k cUSD (+ transaction fees, + locked CELO rewards) annually can now theoretically approach $0 if your smallest % of all locked cStables is near zero? Would the Foundation signal any interest in co-depositing cStables to those validator groups in equal ratios that they are currently supporting with locked and voted CELO?

I feel I’m completely misunderstanding the min() thing here…

2 Likes

Here’s a link to the alternative idea. On mission revenue & rewards idea

@Thylacine , lots of points here, good to see the engagement and I’ll let the authors/proposers respond. You’ll also find some answers above in the thread on the issues with fixing an interest rate or voting on an interest rate. There’s also a note on how wallets would automatically assign deposits to validators paying market interest rates.

Just to the question you asked me on whether validator rewards go to zero. Yes, in this system, if a validator decides to pay below market interest rates to incentivise cStable deposits and locking of Celo with them, they would get likely get no deposits from the community and zero epoch rewards. The whole idea is that validators are incentivised to pay a market defined interest rate (the market being the market of validators) on each of the cStables and on Celo. Gross profits of the validators will then be epoch rewards earned (which would be their split of what is now validator epoch rewards and all locked Celo rewards) minus interest paid out. This gross profit would reach a market equilibrium that presumably covers costs and profits of validators.

Just as a last note. I myself see uncertainties with Proof of Deposit. In some ways it adds complexity, although it does make validator compensation market-determined (which is something we need to think about to get the security-cost equation for the network right). I emphasise that this proposal is early stage, we can’t expect people/groups to take on big work for free (it’s well and good saying the spirit here is open source etc., and btw, I think all of these contracts are planned as open source and audited, even if there is some payment/royalty/license fee), but if projects like this do work, they create immense value for CELO owners), and if we want make things happen on Celo, I recommend we give frank feedback (as we are doing) while also keeping an open mind on these early stage projects because we need to see more, not less, of them.

And to add to that, I understand you’re helping out with Celo Community Fund 2 @Thylacine and I think many Celo builders will greatly appreciate that. So thanks!

Cheers!

2 Likes

Hi @Thylacine , thanks for your response. I will address each of your points in turn (for ones which I feel need more clarification ontop of @Pinotio.com’s answer)

Why patents?

First and foremost is the matter of our patent application which is an understandable concern as patent rights can be abused. We are well aware of the perception around patents, and want to provide insight into why we went down this path:

  1. Proof-of-Deposit is set apart from all other DeFi by being a protocol level innovation. As such, we are unable to simply pay ourselves by printing off a bunch of DeFi tokens. At the same time, this is why the potential uplift to CELO is so high as PoD is driving all the value back to where it matters most.

  2. Our research startup, Cambridge Cryptographic, has currently two (and likely more in the future) projects built on our patent. Proof-of-Deposit is one of them. As a business where our product is our research (and with no coin) our avenues to participate in the huge benefits to our clients are very limited, if we do not protect our intellectual property.

  3. The plan has always been that our PoD source code will be open with a license to all entities in the Celo ecosystem. See our above reply.

Why min(…), rather than a governable parameter?

@Pinotio.com has already addressed this, but to copy over additional insight from @roman and @Nadiem: the current system has a dynamic where CELO stakers have complete control over Celo’s future, and cStable users, despite being the lifeblood of Celo, have no direct say. Whilst CELO stakers will likely want to be aligned with the interests of cStable users, there is currently nothing preventing CELO stakers from outright ignoring cStable users.

PoD is, in a way, a step towards achieving a balanced representation as cStable users can now influence the bottomline of CELO stakers. This balance is particularly important in the case of % of rewards shared, as simply leaving it to a vote by CELO stakers has asymmetric pressure (how long will CELO stakers agree to share their APY?).

There has been wider discussion about the possibility of extending PoD to give cStable users representation in voting, but we consider this outside the scope of our current proposal.

Preventing “race to the bottom”

You raise a valid concern which is important to address in the initial activation stages. We recommend the following procedure for bringing a new cStable into PoD:

  1. The cStable has to have achieved a sufficient level of liquidity

  2. The cStable is pseudo-activated in PoD. Validators will advertise their % of rewards shared, cStable deposits can be associated with validators, but cStable deposits do not affect revenue for a validator and do not earn any rewards.

  3. After a time period to allow for cStable deposit equilbrium to be achieved, the cStable is activated in PoD.

I believe the other points have been sufficiently covered by @Pinotio.com

2 Likes

The incentive for stakers to pay attention to cStable holders, akin to the owners of any other for profit enterprise, is that they need customers to use their product: in this case the Celo ecosystem.

Just adding I few of the thoughts I have on this. It is much more extensive and I plan to open a separate forum thread.

I have been thinking about this for some time. It is a complex topic and involves questions about what is Celo and what is the meaning of cStables within the protocol, do we really want a traditional equity shareholder rewards scheme, is the claim behind a cStable sufficiently represented with regard to responsibilities, rights and rewards…
Even if we retain the Celo stakeholder scheme, a cStable is a claim on the corresponding value in the reserve. As such it represents a certain amount of Celo. Why does this portion not give voting power to cStable holders?

One interpretation could be that a cStable holder temporarily lends voting power to the reserve. But then should a cStable buyer not receive the interest that is paid to Celo holders? If not, should a cStable buyer not receive a cStable upfront pricing in expected interest on the Celo amount that the cStable buyer is borrowing?

1 Like

In the light of this, what I really like about PoD is the focus towards cStable holders by proposing a redistribution of staking rewards. The current design follows a classical equity shareholder reward scheme, whereas PoD implements a user and shareholder rewards scheme.

2 Likes

Conceptually, I consider PoD to be a non-sticky liquidity scheme as it does not create a social or economic glue to stick to cStables. This would require essential, life maintaining economic cashflows. But compared to popular non-sticky schemes (starting with direct injection like airdrops, followed by indirect schemes like yield farming, …) to me it seems to have higher stickiness.

2 Likes

Apologies if I’m not understanding it, but PoD feels like it’s simply voting by any other name. If I am elected by my locked and voted CELO today, but due to my under-funded cStables ratio, my total validator rewards approach $0 after PoD is implemented, how is this different than being voted out?

People are economically rational and will simply switch off their machines once their reward approaches their operating costs.

This pool of rewards (i - iii above) would be distributed among validators proportional to their min (% of Celo , % of cUSD, % of cEUR …). Here:

  • % Celo is how much locked Celo they have voting for them as a % of total locked;
  • % cUSD is how much cUSD they have assigned to them as a % of total deposited;
  • % cEUR is how much cEUR they have assigned to them as a % of total deposited.
  • etc. for cREAL and other cStables.

Where i) to iii) are:

  1. 60k-70k cUSD per validator per year
  2. Transaction fees if you propose and mine a block
  3. CELO rewards for locking and voting for a validator group (approx 5-6% a year)

Why would anyone operate more than one validator in a group if your reward has nothing to do with how many validators you operate? The 65-70k cUSD is meant to offset infrastructure, resourcing, monitoring, slashing risk, being locked and long on a volatile asset, and so on.

If I’m Bison Trails currently running 5x validators with 16M CELO votes, why not just switch off all but one, release some of the 16M CELO they have voting on themselves which is possibly mostly self-owned (they only need 1.7M CELO votes to operate 1 validator), pump all that excess CELO into cStables in equal ratios and try to capture like 30% of the net cStables in existence which are in PoD and thus 30% rather than the 5/110 ~= 4.5% of net rewards?

Don’t even share any rewards with anyone, set your reward share to 0% and create like $100M USD of cStables and lock them on yourself.

Unless we remove the cUSD 70k validator rewards from the equation and only distribute the locked CELO rewards to PoD depositors, I can’t see how this doesn’t incentivise validators to drop out of operating infrastructure because they can no longer guarantee they at least get 1/110 of the annual cUSD rewards.

Getting 1/110th of the cUSD is part of the design that ensures that a validator group only need to overcome the minimum election CELO to be considered the same as any other elected group, consensus-reward wise. The other reward you get for locking and voting CELO is completely egalitarian currently also - it applies equally to everyone regardless of the size of their wallet and role in the ecosystem (assuming you vote for a high-performing validator group).

Of course, big locked groups unlocking CELO will decrease the minimum electable requirement CELO, but if the CELO price pumps to say $10 with all this new appetite for self-deposited cStables, it wont increase the diversity of the elected set anyway because you still need at least 20000 CELO, now $200k USD @ $10/CELO, to start (even a Foundation-supported) validator group.

How do we know this doesn’t just hasten the DPoS end-game where 22 well-funded maxxed-out validator groups / corporations control the network? I’m worried this PoD proposal simply incentivises (validators) having money, or being able to attract more money. Isn’t this replicating some of the perverse incentives that Celo as a movement is trying to change?

As Sep has spoken about at length, we should be trying to base value (socialising the protocol rewards is a form of value) on things we want to see in the world. Could we base PoD on carbon credits in addition to or instead of cash? Can you increase your PoD ratio if you donate a portion of your rewards to Impact Market or other aligned initiatives?

Playing a little devil’s advocate here of course, I don’t want to stifle innovation but I really want to avoid an EOS-like endgame.

3 Likes