Alright it’s just a fancy commit/reveal verifiable encryption scheme. I’ve actually run into this problem at a web3 startup I worked at.