RFC 57: Safecoin Revised

An internal market is not as simple as it sounds.

I’ll add a bit more about my understanding of the difficulties of rfc-0012 / rfc-0057 style reward and storecost algorithms.

There are some pretty clear heuristics we can look at implementing which I think are not too controversial, and these make the algorithm seem pretty simple.

  • aim for x% spare space, which then implies
    • membership
      • if low on spare space, allow more vaults to join
      • if excess spare space, stop allowing more vaults to join
    • rewards
      • if low on spare space, increase the reward
      • if excess spare space, decrease the reward
    • storecost
      • if low on spare space, increase the storecost
      • if excess spare space, decrease the storecost

So far so good, everything seems simple.

The uncertainties are

  • what should x be?
  • when should we use membership vs rewards vs storecost to achieve the goal? This is the hardest uncertainty to answer in my opinion.
  • the direction for rewards and costs are clear but what should they actually be, what magnitude, and why?
  • can spare space be measured? How accurate does that measurement need to be?
  • what if spare space turns out to be less important than spare bandwidth or spare compute cycles?
  • who decides these things? How do we know the decisions are reflected in the network (in the rules and in the behaviours)? How does that decision change or be updated in the future?
  • what event should cause reward? GET or PUT or both? Responding from cache? Signing and passing on a message for routing? Reporting malicious behaviour? Taking part in consensus? How are rewards distributed between these actions?
  • how long should it take before all coins are issued? What rate of inflation or deflation should be chosen? Should coin supply be able to shrink or only grow (eg storecost > rewards)?
  • how does the algorithm affect security and incentives? Can it be abused and if so at what cost to the attacker and what cost to the network?
  • should pay-the-producer and pay-the-developer be included and how should that work?

I would love to say ‘x = 50%’, but then get stuck on what the reward and storecost should be. I honestly cannot answer that. No algorithm seems appropriate. I’m totally open to new algorithms (see next step of a safecoin algorithm and exploration of live economy) and feel it’s a solvable problem (see health metrics), but so far nothing seems sufficiently sustainable to me. Perpetual Auction Currency feels like the closest thing we have right now to a working sustainable algorithm (although this is not without controversy!).

13 Likes