Paper 2021/1293

TIDE: A novel approach to constructing timed-release encryption

Angelique Faye Loe, Liam Medley, Christian O’Connell, and Elizabeth A. Quaglia


In ESORICS 2021, Chvojka et al. introduced the idea of taking a time-lock puzzle and using its solution to generate the keys of a public key encryption (PKE) scheme [13]. They use this to define a timed- release encryption (TRE) scheme, in which the secret key is encrypted ‘to the future’ using a time-lock puzzle, whilst the public key is published. This allows multiple parties to encrypt a message to the public key of the PKE scheme. Then, once a solver has spent a prescribed length of time evaluating the time-lock puzzle, they obtain the secret key and hence can decrypt all of the messages. In this work we introduce TIDE (TIme Delayed Encryption), a novel approach to constructing timed-release encryption based upon the RSA cryptosystem, where instead of directly encrypting the secret key to the future, we utilise number-theoretic techniques to allow the solver to factor the RSA modulus, and hence derive the decryption key. We implement TIDE on a desktop PC and on Raspberry Pi devices validating that TIDE is both efficient and practically implementable. We provide evidence of practicality with an extensive implementation study detailing the source code and practical performance of TIDE.

Available format(s)
Publication info
Published elsewhere. Minor revision.27th Australasian Conference on Information Security and Privacy
Contact author(s)
angelique loe 2016 @ rhul ac uk
liam medley 2018 @ rhul ac uk
elizabeth quaglia @ rhul ac uk
co362 @ cantab ac uk
2022-04-28: last of 2 revisions
2021-09-27: received
See all versions
Short URL
Creative Commons Attribution


      author = {Angelique Faye Loe and Liam Medley and Christian O’Connell and Elizabeth A.  Quaglia},
      title = {TIDE: A novel approach to constructing timed-release encryption},
      howpublished = {Cryptology ePrint Archive, Paper 2021/1293},
      year = {2021},
      note = {\url{}},
      url = {}
Note: In order to protect the privacy of readers, does not use cookies or embedded third party content.