开发者

Is it possible to delay the reveal of information without further information?

Scenario:

I send encrypted information to a client program.

I want to the information to display 1 year later.

No further information will be sent by me.

If the user of the client program can do analysis of the binary file of the program, is it 开发者_Python百科possible to prevent the early reveal of the information?


In general, such a thing is not possible. If the program is able to decrypt the data without further interaction, it must possess the key.

Therefore, even with signed timestamping, you cannot prevent someone from reverse-engineering your program, taking the key, and doing the decryption.

EDIT: Though you could at least in theory implement something like this indirectly, by requiring a computionally intensive puzzle to be solved for retrieving the key (which takes a year on the average!), but this is unreliable at best (faster/slower hardware) and will certainly not find acceptance among your users/customers. Be prepared to receive hate mails if you do that :-)


Interesting question. I think it is not possible as you described, unless server store a part of the secret and deliver it to the client at the right moment.


If you've sent the client all the info they need to do the decryption, there is no way to force them to wait a year before doing so.


You can always use a timemachine and base your key on a hash of, say, the Dow Jones index one year from now as well as some other data that can't be pre-calculated. So unless you have some inside info that only you know about the day the decryption should occur, I think you're facing a quite impossible task

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜