Paper 2021/800
i-TiRE: Incremental Timed-Release Encryption or How to use Timed-Release Encryption on Blockchains?
Abstract
Timed-release encryption can encrypt a message to a future time such that it can only be decrypted after that time.
Potential applications include sealed bid auctions, scheduled confidential transactions, and digital time capsules.
To enable such applications as decentralized smart contracts, we explore how to use timed-release encryption on blockchains.
Practical constructions in literature rely on a trusted server (or servers in a threshold setting), which periodically publishes an epoch-specific decryption key based on a long-term secret.
Their main idea is to model time periods or epochs as identities in an identity-based encryption scheme.
However, these schemes suffer from a fatal flaw: an epoch’s key does not let us decrypt ciphertexts locked to prior epochs.
Paterson and Quaglia [SCN'10] address this concern by having encryption specify a range of epochs when decryption is allowed.
However, we are left with an efficiency concern: in each epoch, the server(s) must publish (via a smart contract transaction) a decryption key of size logarithmic in the lifetime (total number of epochs).
For instance, on Ethereum, for a modest lifetime spanning 2 years of 1-minute long epochs, a server must spend over
Note: Updated with expanded related work section and an alternative scheme using any IBE (see Section-8).
Metadata
- Available format(s)
-
PDF
- Category
- Public-key cryptography
- Publication info
- Published elsewhere. ACM CCS 2022
- DOI
- 10.1145/3548606.3560704
- Keywords
- timed-release encryption threshold cryptography
- Contact author(s)
-
leemon @ swirldslabs com
pratyay85 @ gmail com
sinharo @ gmail com - History
- 2022-09-06: last of 3 revisions
- 2021-06-14: received
- See all versions
- Short URL
- https://ia.cr/2021/800
- License
-
CC BY
BibTeX
@misc{cryptoeprint:2021/800, author = {Leemon Baird and Pratyay Mukherjee and Rohit Sinha}, title = {i-{TiRE}: Incremental Timed-Release Encryption or How to use Timed-Release Encryption on Blockchains?}, howpublished = {Cryptology {ePrint} Archive, Paper 2021/800}, year = {2021}, doi = {10.1145/3548606.3560704}, url = {https://eprint.iacr.org/2021/800} }