We present a practical method to achieve timelock encryption, where a ciphertext is guaranteed to be decrypted only after a specified amount of time has passed or a date has been reached. We use an existing threshold network implementing the BLS signature scheme and use it in the context of Boneh and Franklin's identity-based encryption (IBE) scheme. The threshold network acts as a decentralised Private Key Generator in the IBE scheme where identities are the round numbers and secret keys are the randomness associated with this round output by the beacon. Therefore anyone can encrypt a message towards a specific round, which can be only be decrypted when the threshold network releases the associated randomness. A noticeable advantage of this scheme is that only users (senders and recipients) are required to perform additional cryptographic operations; the threshold network does not need to be aware of any encryption happening and does …
We present a practical method to achieve timelock encryption, where a ciphertext is guaranteed to be decrypted only after a specified amount of time has passed or a date has been reached. We use an existing threshold network implementing the BLS signature scheme and use it in the context of Boneh and Franklin's identity-based encryption (IBE) scheme. The threshold network acts as a decentralised Private Key Generator in the IBE scheme where identities are the round numbers and secret keys are the randomness associated with this round output by the beacon. Therefore anyone can encrypt a message towards a specific round, which can be only be decrypted when the threshold network releases the associated randomness. A noticeable advantage of this scheme is that only users (senders and recipients) are required to perform additional cryptographic operations; the threshold network does not need to be aware of any encryption happening and does not require any change to support this scheme. We also release an open-source implementation of our scheme and a live web page that can be used in production now relying on the existing League of Entropy (LoE) network acting as a distributed public randomness beacon service using threshold BLS signatures. The LoE is a threshold BLS network producing random beacons at a frequency of 30 seconds and has been running in production without missing a single beacon for the past two years, ensuring very high availability to any user of our timelock solution.
This paper (and the associated code/service: timevault.drand.love/) may be one of the most/only valuable contributions to come from the entire web3 ecosystem. The ability to commit to a future decryption time is a powerful primitive, such as in auctions, coordinated disclosure, and other "dead man's switch" scenarios.
I look forward to this work being critiqued and built-upon for a whole host of interesting offerings.