Cryptology ePrint Archive: Report 2020/847

Encrypt-to-self: Securely Outsourcing Storage

Jeroen Pijnenburg and Bertram Poettering

Abstract: We put forward a symmetric encryption primitive tailored towards a specific application: outsourced storage. The setting assumes a memory-bounded computing device that inflates the amount of volatile or permanent memory available to it by letting other (untrusted) devices hold encryptions of information that they return on request. For instance, web servers typically hold for each of the client connections they manage a multitude of data, ranging from user preferences to technical information like database credentials. If the amount of data per session is considerable, busy servers sooner or later run out of memory. One admissible solution to this is to let the server encrypt the session data to itself and to let the client store the ciphertext, with the agreement that the client reproduce the ciphertext in each subsequent request (e.g., via a cookie) so that the session data can be recovered when required.

In this article we develop the cryptographic mechanism that should be used to achieve confidential and authentic data storage in the encrypt-to-self setting, i.e., where encryptor and decryptor coincide and constitute the only entity holding keys. We argue that standard authenticated encryption represents only a suboptimal solution for preserving confidentiality, as much as message authentication codes are suboptimal for preserving authenticity. The crucial observation is that such schemes instantaneously give up on all security promises in the moment the key is compromised. In contrast, data protected with our new primitive remains fully integrity protected and unmalleable. In the course of this paper we develop a formal model for encrypt-to-self systems, show that it solves the outsourced storage problem, propose surprisingly efficient provably secure constructions, and report on our implementations.

Category / Keywords: cryptographic protocols / symmetric encryption, corruption, forward security, storage encryption, integrity, confidentiality

Date: received 8 Jul 2020, last revised 11 Jul 2020

Contact author: poe at zurich ibm com

Available format(s): PDF | BibTeX Citation

Version: 20200712:123834 (All versions of this report)

Short URL: ia.cr/2020/847


[ Cryptology ePrint archive ]