Paper 2022/433 Original: eprint.iacr.org/2022/433 ↗

McFly: Verifiable Encryption to the Future Made Practical

Nico Döttling
Lucjan Hanzlik
Bernardo Magri
Stella Wohnig
Abstract

Blockchain protocols have revolutionized the way individuals and devices can interact and transact over the internet. More recently, a trend has emerged to harness blockchain technology as a catalyst to enable advanced security features in distributed applications, in particular fairness. However, the tools employed to achieve these security features are either resource wasteful (e.g., time-lock primitives) or only efficient in theory (e.g., witness encryption). We present McFly, a protocol that allows one to efficiently ``encrypt a message to the future'' such that the receiver can decrypt the message almost effortlessly. Towards this goal, we design and implement a novel primitive we call signature-based witness encryption and combine it with a BFT blockchain (or a blockchain finality layer) in such a way that the decryption of the message can be piggybacked on the tasks already performed by the blockchain committee, resulting in almost-for-free decryption. To demonstrate the practicality of the McFly protocol, we implemented our signature-based witness encryption scheme and evaluated it on a standard laptop with Intel i7 @2,3 GHz. For the popular BLS12-381 curve, a $381$-bit message and a committee of size $500$ the encryption time is $9.8s$ and decryption is $14.8 s$. The scheme remains practical for a committee of size $2000$ with an encryption time of $58 s$ and decryption time of $218 s$.

Metadata
Available format(s)
PDF
Category
Cryptographic protocols
Publication info
Preprint.
History
2023-07-26: last updated
2022-04-06: published
Short URL
https://ia.cr/2022/433
License
https://creativecommons.org/licenses/by/4.0/

BibTeX

@misc{cryptoeprint:2022/433,
      author = {Nico Döttling and Lucjan Hanzlik and Bernardo Magri and Stella Wohnig},
      title = {McFly: Verifiable Encryption to the Future Made Practical},
      howpublished = {Cryptology {ePrint} Archive, Paper 2022/433},
      year = {2022},
      url = {https://eprint.iacr.org/2022/433}
}
Note: In order to protect the privacy of readers, this archive does not use cookies or embedded third party content.