For the first, couldn’t you use a certain block # for the key, decrypting only when that block is mined?
I know blocks are touch to align to specific dates, but something like that?
For the first, couldn’t you use a certain block # for the key, decrypting only when that block is mined?
I know blocks are touch to align to specific dates, but something like that?
A hash of the block isn’t known until it is found, so you wouldn’t be able to use it as a key beforehand
It's not perfect, but you're on to something. How could you use a key you don't have yet, though?
I was thinking, find the date you want to decrypt whatever, find which block # would land on that date, and use that exact number as the private ‘key’. The decryption algo will check every block, only decrypting when it hits the correct one, on that date?
I might be missing something in the encryption world….
thats a third party
You're looking for witness encryption, where the decryption key is the solution to an arbitrary Turing complete problem. The problem here is a check of the bitcoin blockchain length.
Search for "How to build time-lock encryption" by J. Liu, T. Jager, S. A. Kakvi and B. Warinschi (2018), a paper that explain this very thing, using bitcoin as the time lock.
The only downside of this techniques is that witness encryption is still very new, and way too slow to be practical yet. But from a mathematical perspective, it seems to work, so I guess we can be rather hopeful.
Had the same thought. If checking whether a certain block exists is considered a third-party then it does not apply.
The code could be made to decrypt automatically and blocks can be guesstimated with enough accuracy. Could also include similar pass-of-time reference points.