Is it possible to fake a global/shared private state?

As I understand it, you want to hide data until time X, where it is leaked automatically?

  • To leak the data, you need to know the data. As @spalladino mentions someone holds the key, and that someone is not a contract. Therefore you cannot make it happen by itself if in commitments, you could however look at timelocks similar to what Aragon have been looking at for the nounsdao project, The Time NounsDAO Got Private Voting | by Aztec Labs | The Aztec Labs Blog | Medium
  • If you know the data, nothing really stops you from leaking it, you could broadcast it if you want (but as mentioned only the owner would know).

As @spalladino suggests you can incentivise it to be leaked when the requirements are met, could be reward, or could be that any action on the contract by the owner require them to emit the data publicly as part of it as well, e.g., to get back some staked assets the owner need to spill the beans and tell the secret.

66 Likes