Top Banner
Hourglass Schemes: How to Prove that Cloud Files Are Encrypted Marten van Dijk Ari Juels Alina Oprea RSA Labs RSA Labs RSA Labs [email protected] om [email protected] [email protected] Emil Stefanov UC Berkeley [email protected] Joint work with: Ronald Rivest Nikos Triandopoulos MIT RSA Labs [email protected] nikolaos.triandopoulos@ rsa.com
22

Hourglass Schemes: How to Prove that Cloud Files Are Encrypted Marten van DijkAri JuelsAlina Oprea RSA Labs [email protected]@[email protected].

Mar 28, 2015

Download

Documents

Dimitri Verne
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Hourglass Schemes: How to Prove that Cloud Files Are Encrypted Marten van DijkAri JuelsAlina Oprea RSA Labs marten.vandijk@rsa.comari.juels@rsa.comalina.oprea@rsa.com.

Hourglass Schemes:

How to Prove that Cloud Files Are Encrypted

Marten van Dijk Ari Juels Alina OpreaRSA Labs RSA Labs RSA Labs

[email protected] [email protected] [email protected]

Emil StefanovUC Berkeley

[email protected] work with:

Ronald Rivest Nikos TriandopoulosMIT RSA Labs

[email protected] [email protected]

Page 2: Hourglass Schemes: How to Prove that Cloud Files Are Encrypted Marten van DijkAri JuelsAlina Oprea RSA Labs marten.vandijk@rsa.comari.juels@rsa.comalina.oprea@rsa.com.

Enterprise

Public Cloud Computing

Enterprise

User

User

User

• Pool of shared resources

• Available on demand• Highly scalable

Page 3: Hourglass Schemes: How to Prove that Cloud Files Are Encrypted Marten van DijkAri JuelsAlina Oprea RSA Labs marten.vandijk@rsa.comari.juels@rsa.comalina.oprea@rsa.com.

• Large attack surface– Thousands of computers– Dozens of storage systems and interfaces• Amazon alone: S3, EBS, Instance Storage, Glacier,

Storage Gateway, CloudFront, RDS, DynamoDB, ElastiCache, CloudSearch, SQS

– Shared resources among thousands of tenants• Many possibilities for accidental data leakage.

A Major Drawback

Page 4: Hourglass Schemes: How to Prove that Cloud Files Are Encrypted Marten van DijkAri JuelsAlina Oprea RSA Labs marten.vandijk@rsa.comari.juels@rsa.comalina.oprea@rsa.com.

Defending Against Accidental Data Leakage

• Simple view:– Just encrypt your data in the

cloud.– Problem solved?

leakage

???

Page 5: Hourglass Schemes: How to Prove that Cloud Files Are Encrypted Marten van DijkAri JuelsAlina Oprea RSA Labs marten.vandijk@rsa.comari.juels@rsa.comalina.oprea@rsa.com.

Defending Against Accidental Data Leakage

• More realistic view:– Often want to use the cloud for

more than just raw storage.– Why? Want to outsource storage

AND computation (services).– In that case, the cloud needs

access to your decrypted data.

leakage

???

Page 6: Hourglass Schemes: How to Prove that Cloud Files Are Encrypted Marten van DijkAri JuelsAlina Oprea RSA Labs marten.vandijk@rsa.comari.juels@rsa.comalina.oprea@rsa.com.

Encrypt at Rest & Decrypt on the Fly

• Split the cloud into computation front-end and storage back-end– Already the case in many clouds (e.g., Amazon, Azure)

• Storage backend only sees encrypted data.• Computation front-end decrypts data on the fly

– Only accesses the data it really needs at any one time• Can be combined with tight access control and logging.

– Key servers

leakage

Services Front End Storage Back End

???

Page 7: Hourglass Schemes: How to Prove that Cloud Files Are Encrypted Marten van DijkAri JuelsAlina Oprea RSA Labs marten.vandijk@rsa.comari.juels@rsa.comalina.oprea@rsa.com.

Encrypt at Rest & Decrypt on the Fly

• Protects against data leakage by the storage back-end infrastructure.

• Limits the amount of data leakage by the front-end at any one time.

• Common practice.• Much better than no encryption.

leakage

???

Services Front End Storage Back End complies with

government regulations

Page 8: Hourglass Schemes: How to Prove that Cloud Files Are Encrypted Marten van DijkAri JuelsAlina Oprea RSA Labs marten.vandijk@rsa.comari.juels@rsa.comalina.oprea@rsa.com.

The Problem

• Lack of visibility– Users only see results (e.g., web pages) from the

front-end. What is happening internally?• Download data and check encryption?– The cloud can always just encrypt on the fly.

• Seems impossible!

How can we be reasonably sure that the cloud is encrypting data at rest?Plaintext is simpler for the cloud to manage.

Page 9: Hourglass Schemes: How to Prove that Cloud Files Are Encrypted Marten van DijkAri JuelsAlina Oprea RSA Labs marten.vandijk@rsa.comari.juels@rsa.comalina.oprea@rsa.com.

Our Solution

• Impose financial penalties on misbehaving cloud providers.

• We ensure that an economically rational cloud provider, encrypts data at rest.

• Misbehaving cloud must use double storage.– Must store both decrypted and encrypted file.

Economically motivate the cloud to encrypt data at rest.

Page 10: Hourglass Schemes: How to Prove that Cloud Files Are Encrypted Marten van DijkAri JuelsAlina Oprea RSA Labs marten.vandijk@rsa.comari.juels@rsa.comalina.oprea@rsa.com.

Our Solution: Hourglass Schemes

Original File Encrypted File Encapsulated File

encryption hourglass

clientassists client verifies

by periodically challenging random file

blocks

client verifies

encryptionclient uploads file

• The client never needs to permanently store and manage keys.

Page 11: Hourglass Schemes: How to Prove that Cloud Files Are Encrypted Marten van DijkAri JuelsAlina Oprea RSA Labs marten.vandijk@rsa.comari.juels@rsa.comalina.oprea@rsa.com.

Intuition

Original File Encrypted File Encapsulated File

encryption hourglass

client checksadversarial cloud

wants toonly store

Hourglass property:costly to compute “on the fly”

So an adversarial cloud must store both files.

Double the storage!

Page 12: Hourglass Schemes: How to Prove that Cloud Files Are Encrypted Marten van DijkAri JuelsAlina Oprea RSA Labs marten.vandijk@rsa.comari.juels@rsa.comalina.oprea@rsa.com.

Hourglass Framework: More than a Scheme

• Encodings:– Encryption– Watermarking– File Bindings

• Hourglass functions:– Butterfly – Permutation– RSA

Modular Components

Page 13: Hourglass Schemes: How to Prove that Cloud Files Are Encrypted Marten van DijkAri JuelsAlina Oprea RSA Labs marten.vandijk@rsa.comari.juels@rsa.comalina.oprea@rsa.com.

Encodings• Encryption: • Watermarking: – Embed a tag into the file– Tag says that the file is stored on a specific cloud– Tag signed by the cloud– Evidence of data leakage origin.

• File Binding: – Combine multiple files into one encoding.– E.g., embedded license.

Page 14: Hourglass Schemes: How to Prove that Cloud Files Are Encrypted Marten van DijkAri JuelsAlina Oprea RSA Labs marten.vandijk@rsa.comari.juels@rsa.comalina.oprea@rsa.com.

Hourglass Functions

• Costly to apply “on the fly”• Impose a resource lower bound on

the cloud to compute:

, and hence

Original File Encrypted File Encapsulated File

encoding(e.g., encryption) hourglass

𝑭 𝑮 𝑯

Page 15: Hourglass Schemes: How to Prove that Cloud Files Are Encrypted Marten van DijkAri JuelsAlina Oprea RSA Labs marten.vandijk@rsa.comari.juels@rsa.comalina.oprea@rsa.com.

Hourglass Function: RSA

• Cloud can always recover the plaintext :– (using client’s public RSA key)

• Resource bound: computation– Completely infeasible for cloud: – It doesn’t have the RSA signing key to do

𝑭𝟏𝑭𝟐𝑭𝟑𝑭 𝟒 𝑭𝒏…:

𝑮𝟏𝑮𝟐𝑮𝟑𝑮𝟒 𝑮𝒏…:

𝑯𝟏𝑯𝟐𝑯𝟑𝑯𝟒 𝑯𝒏…:

Client computesusing random RSA private key.

Apply encoding (encryption, watermarking, file binding)

Page 16: Hourglass Schemes: How to Prove that Cloud Files Are Encrypted Marten van DijkAri JuelsAlina Oprea RSA Labs marten.vandijk@rsa.comari.juels@rsa.comalina.oprea@rsa.com.

Hourglass Function: Permutation

• Client later challenges the cloud for sequential ranges of .– Sequential range in Random blocks in

• Resource bound: disk seeks– A misbehaving cloud (that only stores ) will need to do many

random accesses to respond to a challenge.

𝑭𝟏𝑭𝟐𝑭𝟑𝑭 𝟒 𝑭𝒏…:

𝑮𝟏𝑮𝟐𝑮𝟑𝑮𝟒 𝑮𝒏…:

𝑯𝟏𝑯𝟐𝑯𝟑𝑯𝟒 𝑯𝒏…:

Apply encoding (encryption, watermarking, file binding)Randomly permute the blocks of to form .No cryptographic operations.Operates on tiny blocks.

Page 17: Hourglass Schemes: How to Prove that Cloud Files Are Encrypted Marten van DijkAri JuelsAlina Oprea RSA Labs marten.vandijk@rsa.comari.juels@rsa.comalina.oprea@rsa.com.

𝑮𝟏𝑮𝟐 𝑮𝟑𝑮𝟒𝑮𝟓𝑮𝟔𝑮𝟕𝑮𝟖

𝑯𝟏 𝑯𝟐 𝑯𝟑 𝑯𝟒 𝑯𝟓 𝑯𝟔𝑯𝟕𝑯𝟖

w = a known key PRP over a pair of file blocks

Hourglass Function: Butterfly

Page 18: Hourglass Schemes: How to Prove that Cloud Files Are Encrypted Marten van DijkAri JuelsAlina Oprea RSA Labs marten.vandijk@rsa.comari.juels@rsa.comalina.oprea@rsa.com.

Comparison of Hourglass Functions

more practical

more assumptions

less practical

less assumptions

RSA Butterfly Permutation

RSA exponentiations

AES operations random memory accesses

RSA assumptions storage speed seek inefficiencyin rotational drives

Page 19: Hourglass Schemes: How to Prove that Cloud Files Are Encrypted Marten van DijkAri JuelsAlina Oprea RSA Labs marten.vandijk@rsa.comari.juels@rsa.comalina.oprea@rsa.com.

Ran on Amazon EC2 (using a quadruple-extra-large high-memory instance and EBS Storage).

Comparison of Hourglass Functions

Page 20: Hourglass Schemes: How to Prove that Cloud Files Are Encrypted Marten van DijkAri JuelsAlina Oprea RSA Labs marten.vandijk@rsa.comari.juels@rsa.comalina.oprea@rsa.com.

Challenge-Response Protocol• The client challenges the

cloud for blocks of the encapsulated file .– At random unpredictable

times– Few challenges, e.g.,

• Cloud must respond quickly.• Doable by an external

auditor.– Auditor doesn’t see the

plaintext .

𝑯𝟏𝑯𝟐𝑯𝟒𝑯𝟒 𝑯𝒏…:

Page 21: Hourglass Schemes: How to Prove that Cloud Files Are Encrypted Marten van DijkAri JuelsAlina Oprea RSA Labs marten.vandijk@rsa.comari.juels@rsa.comalina.oprea@rsa.com.

Limitations

• Assume files are not accessed to often.– Great for archiving files.

• File updates are costly.– RSA hourglass function allows for updates.– Other hourglass functions must be re-applied to

the entire file.• Works mainly for large files.

Page 22: Hourglass Schemes: How to Prove that Cloud Files Are Encrypted Marten van DijkAri JuelsAlina Oprea RSA Labs marten.vandijk@rsa.comari.juels@rsa.comalina.oprea@rsa.com.

Conclusions

• Able to motivate the cloud to encrypt files are rest.

• Several techniques– Encryption, watermarking, file binding.– Different hourglass functions with performance-

assumption tradeoffs.• Economic models sometimes prevail where

traditional cryptographic techniques cannot.