I Told You Tomorrow: Practical Time-Locked Secrets using Smart Contracts

A Time-Lock enables the release of a secret at a future point in time. Many approaches implement Time-Locks as cryptographic puzzles, binding the recovery of the secret to the solution of the puzzle. Since the time required to find the puzzle’s solution may vary due to a multitude of factors, including the computational effort spent, these solutions may not suit all scenarios. To overcome this limitation, we propose I Told You Tomorrow (ITYT), a novel way of implementing time-locked secrets based on smart contracts. ITYT relies on the blockchain to measure the elapse of time, and it combines threshold cryptography with economic incentives and penalties to replace cryptographic puzzles. We implement a prototype of ITYT on top of the Ethereum blockchain. The prototype leverages secure Multi-Party Computation to avoid any single point of trust. We also analyze resiliency to attacks with the help of economic game theory, in the context of rational adversaries. The experiments demonstrate the low cost and limited resource consumption associated with our approach.

[1]  Lin Chen,et al.  On Security Analysis of Proof-of-Elapsed-Time (PoET) , 2017, SSS.

[2]  Christopher Thorpe,et al.  Time-Lapse Cryptography , 2006 .

[3]  Ian F. Blake,et al.  Scalable, Server-Passive, User-Anonymous Timed Release Cryptography , 2005, 25th IEEE International Conference on Distributed Computing Systems (ICDCS'05).

[4]  Yehuda Lindell,et al.  A Note on the Relation between the Definitions of Security for Semi-Honest and Malicious Adversaries , 2010, IACR Cryptol. ePrint Arch..

[5]  Matt Luongo The Keep Network : A Privacy Layer for Public Blockchains , 2019 .

[6]  Salil P. Vadhan,et al.  Time-Lock Puzzles in the Random Oracle Model , 2011, CRYPTO.

[7]  David C. Parkes,et al.  Practical secrecy-preserving, verifiably correct and trustworthy auctions , 2006, ICEC '06.

[8]  Chao Li,et al.  Timed-Release of Self-Emerging Data Using Distributed Hash Tables , 2017, 2017 IEEE 37th International Conference on Distributed Computing Systems (ICDCS).

[9]  Marcel Keller,et al.  Overdrive: Making SPDZ Great Again , 2018, IACR Cryptol. ePrint Arch..

[10]  Brent Waters,et al.  Witness encryption and its applications , 2013, STOC '13.

[11]  Alex Pentland,et al.  Enigma: Decentralized Computation Platform with Guaranteed Privacy , 2015, ArXiv.

[12]  Yoav Shoham,et al.  Essentials of Game Theory: A Concise Multidisciplinary Introduction , 2008, Essentials of Game Theory: A Concise Multidisciplinary Introduction.

[13]  Ran Canetti,et al.  Toward a Game Theoretic View of Secure Computation , 2011, Journal of Cryptology.

[14]  Candelaria Hernández-Goya,et al.  A rational approach to cryptographic protocols , 2007, Math. Comput. Model..

[15]  Adi Shamir,et al.  How to share a secret , 1979, CACM.

[16]  Charles Kamhoua,et al.  Incentivizing Blockchain Miners to Avoid Dishonest Mining Strategies by a Reputation-Based Paradigm , 2018, Advances in Intelligent Systems and Computing.

[17]  Elaine Shi,et al.  Hawk: The Blockchain Model of Cryptography and Privacy-Preserving Smart Contracts , 2016, 2016 IEEE Symposium on Security and Privacy (SP).

[18]  Nir Bitansky,et al.  Time-Lock Puzzles from Randomized Encodings , 2016, IACR Cryptol. ePrint Arch..

[19]  Krzysztof Pietrzak,et al.  Simple Proofs of Sequential Work , 2018, IACR Cryptol. ePrint Arch..

[20]  Daniel Davis Wood,et al.  ETHEREUM: A SECURE DECENTRALISED GENERALISED TRANSACTION LEDGER , 2014 .

[21]  Changyu Dong,et al.  Betrayal, Distrust, and Rationality: Smart Counter-Collusion Contracts for Verifiable Cloud Computing , 2017, CCS.

[22]  Rajesh Krishnan,et al.  Mitigating distributed denial of service attacks with dynamic resource pricing , 2001, Seventeenth Annual Computer Security Applications Conference.

[23]  Michael O. Rabin,et al.  How To Exchange Secrets with Oblivious Transfer , 2005, IACR Cryptol. ePrint Arch..

[24]  Ivan Damgård,et al.  Confidential Benchmarking Based on Multiparty Computation , 2016, Financial Cryptography.

[25]  Marcel Keller,et al.  Practical Covertly Secure MPC for Dishonest Majority - Or: Breaking the SPDZ Limits , 2013, ESORICS.

[26]  Tibor Jager,et al.  How to build time-lock encryption , 2018, Designs, Codes and Cryptography.

[27]  Jonathan Katz,et al.  Byzantine Agreement with a Rational Adversary , 2012, ICALP.

[28]  Moni Naor,et al.  Pricing via Processing or Combatting Junk Mail , 1992, CRYPTO.

[29]  Jung Hee Cheon,et al.  Timed-Release and Key-Insulated Public Key Encryption , 2006, Financial Cryptography.

[30]  Georgios Loukas,et al.  Protection Against Denial of Service Attacks: A Survey , 2010, Comput. J..

[31]  Ronald L. Rivest,et al.  Time-lock Puzzles and Timed-release Crypto , 1996 .

[32]  Nick Szabo,et al.  Formalizing and Securing Relationships on Public Networks , 1997, First Monday.

[33]  Marcel Keller,et al.  MASCOT: Faster Malicious Arithmetic Secure Computation with Oblivious Transfer , 2016, IACR Cryptol. ePrint Arch..

[34]  Salil P. Vadhan,et al.  Publicly verifiable proofs of sequential work , 2013, ITCS '13.

[35]  Ran Canetti,et al.  Towards a Game Theoretic View of Secure Computation , 2011 .

[36]  Martin R. Albrecht,et al.  MiMC: Efficient Encryption and Cryptographic Hashing with Minimal Multiplicative Complexity , 2016, ASIACRYPT.

[37]  Aron Laszka,et al.  Designing Secure Ethereum Smart Contracts: A Finite State Machine Based Approach , 2017, Financial Cryptography.

[38]  Chao Li,et al.  Decentralized Release of Self-Emerging Data using Smart Contracts , 2018, 2018 IEEE 37th Symposium on Reliable Distributed Systems (SRDS).

[39]  Georg Carle,et al.  A Performance and Resource Consumption Assessment of Secret Sharing Based Secure Multiparty Computation , 2018, DPM/CBT@ESORICS.

[40]  Andrew Chi-Chih Yao,et al.  Protocols for secure computations , 1982, FOCS 1982.

[41]  David C. Parkes,et al.  WITHDRAWN: Practical secrecy-preserving, verifiably correct and trustworthy auctions , 2008 .