Hacker News new | ask | show | jobs
by fluxinflex 1929 days ago
I wonder whether predictions (aka "poks") are stored in encrypted form in their database? Knowing what people think will happen in the future is obviously rather useful information.
2 comments

Hey, I am the main dev behind this. The poks are currently not encrypted because there is no way to fundamentally allow a decryption later without someone having the key the whole time, which defeats the purpose. But we're looking into potential with applications stored in Ethereum or something! In the meantime we are committed to not use, and not even look at the content before their release
True, it's not the same as hashing a password and comparing hashes - you need to decrypt your data.

Encryption adds one layer of obfuscation for a bad actor that might steal the database but does not get their hands on the key. Plus access to the key can be managed differently than access to the database.

Either way, it comes down to sensitivity of the predictions made and how users would react should they be exposed before their due dates.

But there are other crypto mechanism for that purpose... see - Verifiable Delay Functions

https://eprint.iacr.org/2018/601.pdf

VDFs are designed to take a long time to compute. To use them here, it would require someone to be computing the solution continuously between the time the prediction is made and the time it is revealed - that's too inefficient for this purpose.
It would be cool if there was a relatively reliable way of creating cryptographic "time capsules" that can be only opened at certain date in future.

So something like, I encrypt message with a certain public key. The private key is guaranteed to only become available on 1st of January 2030.

There's this http://people.csail.mit.edu/rivest/RivestShamirWagner-timelo... which uses repeated squaring as a kind of unparallelizable searching function to force a set period of time until a solution is found.

I wonder if you could perhaps do a kind of Shamir secret sharing scheme where as long as most of the participants are honest, they all agree to piece together their shares of the secret at the specified time.

Maybe someone else can find it, but scottaaronson.com has an article that describes a scheme where there's a cheap computation that has to be done serially, so anyone can open if it they crunch cheap hashes for the requisit amount of time. The cleverness in the construction is that the creator gets to skip this work.