2

Is there a possibility of zero-knowledge proof of stake without disclosing your balance?

janowitz
  • 2,691
  • 12
  • 30

2 Answers2

4

It is possible to generate a proof of balance (reserve proof), which states you own at least the claimed amount.
See rpc doc about it.
So theoretically, it is possible.

el00ruobuob
  • 845
  • 4
  • 8
1

I have a few of thoughts on this:

  1. The most straightforward way I can think of, in any use case, would be to use a combination of time-locked outputs and a type of reserve proof. This way, the user simultaneously publicly demonstrates the ownership of funds and not being able to spend said funds for a certain duration. One would probably wield their "power" by signing with the private key of the staked transaction.
  2. Perhaps there could be a form of decentralized governance, where voting is allowed if one stakes their coins for the duration of a particular period of time. Again, their vote would be verified by checking they signed with the appropriate private key. [I haven't explored the math, but...] Perhaps there could also be a key image generated at this level to ensure one vote per private key without disclosing the signer.
  3. Using staking as a means of entitling a wallet/address to passive income seems tricky, but may be possible, though maybe not with the same characteristics of a typical interest-bearing account, and not with Monero as it currently is. There would need to be some fundamental change to current consensus rules (such as breaking out a staking reward from the mining reward) before it'd be worth devising such a scheme.
scoobybejesus
  • 5,515
  • 21
  • 42