verifiable cloud computing kang yu. verifiable computation weak clients computationally powerful...

14
Verifiable Cloud Computing KANG Yu

Upload: ruth-dorsey

Post on 20-Jan-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Verifiable Cloud Computing KANG Yu. Verifiable Computation Weak clients Computationally powerful cloud Goal: – Verify the computing result

Verifiable Cloud Computing

KANG Yu

Page 2: Verifiable Cloud Computing KANG Yu. Verifiable Computation Weak clients Computationally powerful cloud Goal: – Verify the computing result

Verifiable Computation

• Weak clients• Computationally powerful cloud• Goal:– Verify the computing result

Page 3: Verifiable Cloud Computing KANG Yu. Verifiable Computation Weak clients Computationally powerful cloud Goal: – Verify the computing result

Non-Interactive Verifiable Computing

• By Gennaro et al.• Enables a outsourcing computation of a non-

interactive function on untrusted workers

Page 4: Verifiable Cloud Computing KANG Yu. Verifiable Computation Weak clients Computationally powerful cloud Goal: – Verify the computing result

Non-Interactive Verifiable Computing

• Key idea: – Take advantage of Yao’s Garbled Circuit

Construction. – Overcome the one-time construction by fully-

homomorphic Encryption• Verify the computation as well as keep the

privacy. But stays theoretical.

Page 5: Verifiable Cloud Computing KANG Yu. Verifiable Computation Weak clients Computationally powerful cloud Goal: – Verify the computing result

Verifiable Computation with Two or More Clouds

• By Canetti et al.• Use two or more clouds to perform

computation and find one to trust

Page 6: Verifiable Cloud Computing KANG Yu. Verifiable Computation Weak clients Computationally powerful cloud Goal: – Verify the computing result

Verifiable Computation with Two or More Clouds

• Key idea: – Assume at least one of clouds is honest– Use efficient-players Refereed Games (epRG)

model– Take advantage of Merkle Hash Tree on

constructing reduced-configuration Turing Machine

– The referee do a binary search on steps to computing

• Can be implemented but need at least two clouds.

Page 7: Verifiable Cloud Computing KANG Yu. Verifiable Computation Weak clients Computationally powerful cloud Goal: – Verify the computing result

Monitoring Remotely Executing Programs

• By Yang et al.• Complier techniques produce codes with

beacons • On periodically exchange beacons to trace the

progress and recompute some results to check the correctness of remotely executing program

Page 8: Verifiable Cloud Computing KANG Yu. Verifiable Computation Weak clients Computationally powerful cloud Goal: – Verify the computing result

Monitoring Remotely Executing Programs

• Key idea: – Create finite state machine for source code and

create beacons for computationally significant method

– Location beacon for tracking the progress– Recomputation beacons for checking the validity

of computation• Can be implemented but it trust the cloud

provider’s infrastructure.

Page 9: Verifiable Cloud Computing KANG Yu. Verifiable Computation Weak clients Computationally powerful cloud Goal: – Verify the computing result

Verifying Cloud-Hosted Web Applications

• By Jana et al.• Verify the correctly executing of cloud-hosted

web applications with help of a subset of users

Page 10: Verifiable Cloud Computing KANG Yu. Verifiable Computation Weak clients Computationally powerful cloud Goal: – Verify the computing result

Verifying Cloud-Hosted Web Applications

• Key idea: – Model web applications operations as reads and

writes to an object store, verify whether an object store is consistent

– Assume there are a subset of users keep logs that can be accessed

– Doing collaboration verification by checking the consistency of logged reads and writes

• Can be implemented but the model may be limited by ignoring computation.

Page 11: Verifiable Cloud Computing KANG Yu. Verifiable Computation Weak clients Computationally powerful cloud Goal: – Verify the computing result

Conclusion

• Four different verification approaches• Different situation• Trusted Platform Module (TPM) may be useful• Cloud: totally untrustable or not

Page 12: Verifiable Cloud Computing KANG Yu. Verifiable Computation Weak clients Computationally powerful cloud Goal: – Verify the computing result

References

• Rosario Gennaro , Craig Gentry , Bryan Parno, Non-interactive verifiable computing: outsourcing computation to untrusted workers, Proceedings of the 30th annual conference on Advances in cryptology, August 15-19, 2010

• Ran Canetti, Ben Riva, and Guy N. Rothblum, Verifiable computation with two or more clouds, Workshop on Cryptography and Security in Clouds, 2011

Page 13: Verifiable Cloud Computing KANG Yu. Verifiable Computation Weak clients Computationally powerful cloud Goal: – Verify the computing result

References

• Shuo Yang , Ali R. Butt , Y. Charlie Hu , Samuel P. Midkiff, Trust but verify: monitoring remotely executing programs for progress and correctness, Proceedings of the tenth ACM SIGPLAN symposium on Principles and practice of parallel programming, June 15-17, 2005

• Suman Jana and Vitaly Shmatikov, EVE: Verifying Correct Execution of Cloud-Hosted Web Applications, USENIX Workshop on Hot Topics in Cloud Computing, 2011

Page 14: Verifiable Cloud Computing KANG Yu. Verifiable Computation Weak clients Computationally powerful cloud Goal: – Verify the computing result

Q&A?

Thanks!