Department of Computer Science Institute of Systems Architecture Chair of Computer Networks FlexCloud: Reliable and Secure Cloud Overlay Infrastructures Prof. Dr. Alexander Schill 2013
Who we are Internet Information Retrieval Mobile & Ubiquitous Computing Network Planning and Security EU-funded research group Real-Time Collaboration Energy Lab Service & Cloud Computing Dr.-Ing. Josef Spillner Dipl.-Medieninf. Marc Mosch Dr.-Ing. Stephan Groß Dipl.-Medieninf. Yvonne Thoß Dr.-Ing. Anja Strunk (from left to right) Exploring Cyber Physical Systems # 2
Outline Cloud Computing What is it all about? Problems π-box: Building your personal secure cloud π-data Controller: Secure Cloud Storage Conclusion & Future Work # 3
The shape of a cloud is in the eye of the beholder. IaaS/PaaS * Cloud Operating System, part of Azure Platform SaaS * Customized applications for business and home user, based on Google App Engine, e.g. collaboration IaaS * tools Migration of virtual machines between private and public clouds * SaaS = Software as a Service PaaS = Platform as a Service IaaS = Infrastructure as a Service SaaS/PaaS * Business cloud services focussing on customer relationship management PaaS * Development and hosting of web applications # 4
Cloud Computing Characteristics Cloud Computing is On-demand self service Rapid elasticity Broadband network access Resource pooling the on-demand and pay-per-use application of virtualised IT services over the Internet. Measured and optimized service Adopted from the NIST Definition of Cloud Computing [MeGr2011] # 5
Service & Deployment Models Cloud Architecture Stack Cloud Organization User/Clients User Interface Machine Interface Applications Applications Services Software Services (SaaS) Components Services Programming Environment Execution Environment Platform Services (PaaS) Compute Network Storage Virtual Resource Set (VRS) Infrastructure Services (IaaS) Convenience Public Hybrid Community Private User Control Adopted from [MeGr2011] and [BKNT2010] Physical Resource Set (PRS) # 6
Cloud Computing What is it all about? Problems π-box: Building your personal secure cloud π-data Controller: Secure Cloud Storage Conclusion & Future Work # 7
Problems of Cloud Computing Reliability and security when giving up physical possession > Failure of monocultures > Cloud providers trustworthiness > Staying in control # 8
FlexCloud Objectives π-cloud: Establishing a secure cloud computing life cycle Hybrid cloud platform to integrate a user s (cloud) resources, services and data. > Unified Cloud Prevent Vendor-Lock-in + Integration of existing IT > Secure Cloud Ensure data privacy and security > Managed Cloud Keep the user in command > Efficient Cloud Adapt to user preferences and cloud's vital signs # 9
Cloud Computing What is it all about? Problems π-box: Building your personal secure cloud π-data Controller: Secure Cloud Storage Conclusion & Future Work # 10
FlexCloud's Approach Subsume all end devices within a Personal Secure Cloud (π-cloud) controlled by the π-box. π-cloud π-box # 11
FlexCloud's Approach π-box distinguishes between public and sensitive data and enforces security mechanisms for the latter. π-cloud π-box # 12
Transparent Encryption Analysis of structured, unstructured data and context information Document classification concerning security requirements. Addressee identification and derivation of respective keys. π-cloud PKI? # 13
π-box Architecture Conceptual User-controlled Organization design of a reliable user s of a user-centric service data cloud storage resources execution cloud in the management in cloud the cloud solution Categorization Automatic Description composition assurance of cloud of user resources of groups and availability, deployment concerning and their integrity of (non-)functional technical services and confidentiality skills with respect and properties organizational to security and interests other non-functional Guidelines System Easy integration architecture for constructing properties of existing for a reliable adaptable IT environments and graphical scalable cloud user interfaces resource directory Refinement Easy Protocols Adaptable integration for and of automatic user optimizable of existing profiles (de-)registration storage according IT environments with to respect individual of cloud to resources preferences user preferences within the π-cloud Service execution with respect to security and other nonfunctional requirements. π-box π-service Controller π-cockpit π-data Controller User Interface / GUI Data storage & distribution with respect to security and other nonfunctional requirements. Infrastructure management π-resource Manager Peer-to-Peer Network public resources (not necessarily trustworthy) private resources (trustworthy) # 14
Cloud Computing What is it all about? Problems? π-box: Building your personal secure cloud π-data Controller: Secure Cloud Storage Conclusion & Future Work # 15
Increasing Availability: from RAID to RAIC RAID: Redundant Array of Independent Disks RAIC: Redundant Array of Independent Clouds Integration Layer Logical partition Integration Layer Distributed Web file system access Versioning Preprocessing Layer Preprocessing Layer File level transformation (e.g. compression) RAID level redundancy routine (mirror, stripe, ) Transport Layer Block resources Reliable Unreliable, disk low storage quality hard disk Unreliable, Reliable, proprietary universal and insecure cloud storage Dispersal routine Fragment level transformation (e.g. encryption) Transport Layer Caching Local persistence Provider Storage API adapter # 16
Secure Cloud Storage Integrator for Enterprises (System Architecture) π-cloud = Company Intranet Meta Data CIFS Shared Folder File Dispersion Cryptography Cloud Storage Protocol Adapter API FTP π-data Controller # 17
Storing Files (1/5) π-cloud = Company Intranet Meta Data Shared Folder File Dispersion Cryptography Cloud Storage Protocol Adapter π-data Controller # 18
Implementation of the Shared Folder User space Kernel ls - /tmp/fuse glibc VFS./xmp /tmp/fuse libfuse glibc FUSE NFS Ext3 Technology: FUSE (Filesystem in Userspace) CIFS/SMB network share on proxy file server Unified user interface for arbitrary cloud storage services Utilizing CIFS access control mechanisms CIFS = Common Internet File System Ext3 = Third Extended File System FUSE = Filesystem in Userspace glibc = GNU C library NFS = Network File System SMB = Server Message Block VFS = Virtual File System # 19
Storing Files (2/5) π-cloud = Company Intranet Meta Data Shared Folder File Dispersion Cryptography Cloud Storage Protocol Adapter π-data Controller # 20
File Dispersion Ensure availability despite of unreliable cloud storage providers k threshold, i.e. # of necessary shares to reconstruct n total # of shares a file is split into E.g. k=6, n=8 If k < n, we need redundant information. # 21
Secret Sharing aka Threshold Schemes Objective: Divide a secret s S in n shares s 1,, s n with 1. Knowledge of any k or more s i shares makes s easily computable. 2. Knowledge of any k 1 or fewer s i shares leave s completely undetermined (in the sense that all its possible values are equally likely). Sharing Reconstruction Dealer Input: s Share holders s i 1 s i 2 s i k Share holders store s 1 s 2 s n Output: s Reconstructor # 22
Secret Sharing: An informal example with 2 shares Visual Cryptography [NaSh1994] Simplification: n = k = 2 Secret cannot be determined independently! [Source: http://goo.gl/watjc] revealed! # 23
Secret Sharing: More formalism Blakley's scheme [Blakley1979] Idea: Any n nonparallel n-dimensional hyper-planes intersect at a specific point. Sharing: Encode the secret as any single coordinate of the point of intersection. Recovering: 1. Calculating the planes' point of intersection. 2. Take a specified coordinate of that intersection. 1 share available 2 shares available 3 shares available Example: n 3, k=3 Graphics taken from Wikipedia. Shamir's scheme [Shamir1979] Idea: It takes k points to define a polynomial of degree k-1. Sharing: Be a 0 :=s є S the secret to be shared where S is an infinite field known to all share holders. Randomly choose (k-1) coefficients a 1,a 2, a k-1 є S to build f(x):=σa i x i. Calculate shares s j :=[j,f(j)] with j є N n. Recovering: Use Lagrange interpolation to find coefficients of the polynomial including constant term a 0. s 1 s s 3 s 2 # 24
Information Dispersal: Computationally secure secret sharing Rabin's scheme [Rabin1989] Guarantees only availability but no secrecy. Construction Be a i s S where i=1,, k, i.e. f(x) i=1 k s x i. Rest as with Shamir's secret sharing. Properties With a polynomial and shares of the same size as before, we can now share a value k times as long as before. Length of each share is only 1/k -th of the length of the secret, and if k shares must be sufficient for reconstruction, one can obviously not get shorter. Space optimal However, one might gain some information if he gets access to several shares. Computationally secure More efficient information dispersal schemes Need to be maximum distance separable to use k arbitrary shares for reconstruction. Examples: Cauchy-Reed-Solomon, Liberation, Blaum-Roth [PSS2008] # 25
Storing Files (3/5) π-cloud = Company Intranet Meta Data Shared Folder File Dispersion Cryptography Cloud Storage Protocol Adapter π-data Controller # 26
Cryptography: Confidentiality & Integrity AES-CBC AES-CBC AES-CBC AES-CBC + SHA256 + SHA256 + SHA256 + SHA256 # 27
Storing Files (4/5) π-cloud = Company Intranet Meta Data Shared Folder File Dispersion Cryptography Cloud Storage Protocol Adapter π-data Controller # 28
Storing Files (5/5) Stored Meta Data per component Shared Folder: General file system information, e.g. file size, access rights File Dispersion: Used dispersion algorithm/parameters (n, k), shares locations Cryptography: Used cryptographic keys and calculated checksums per share Cloud Storage Protocol Adapter: Storage protocol parameters and provider login data π-cloud = Company Intranet Meta Data Shared Folder File Dispersion Cryptography Cloud Storage Protocol Adapter π-data Controller # 29
Retrieving Files (1/3) Dispersion parameters: n=6 π-cloud = Company Intranet Meta Data Shared Folder File Dispersion Cryptography Cloud Storage Protocol Adapter π-data Controller # 30
Retrieving Files (2/3) Dispersion parameters: n=6, k=3 π-cloud = Company Intranet Meta Data Shared Folder File Dispersion Cryptography Cloud Storage Protocol Adapter π-data Controller # 31
Retrieving Files (3/3) π-cloud = Company Intranet Meta Data Shared Folder File Dispersion Cryptography Cloud Storage Protocol Adapter π-data Controller # 32
Prototype Implementation [SGS11] web interface for π-cockpit [SBM + 11] π-cockpit desktop application ResUbic Cloud Storage Allocator for Cyber Physical Systems # 33
Performance Evaluation Upload Test case π-box used # local storage # cloud storage # encrypted shares 1 No 0 1 0 2 Yes 0 1 0 3 Yes 8 0 0 4 Yes 4 4 4 5 Yes 0 8 8 File size: 24 MB; Dispersion parameters: n=8, k=6; Cryptography parameters: Towards AES (256 User bit, Centric 14 iterations), Data Governance SHA256; and Control in the Cloud Network Up/Downlink: 10/20 Mbit/s # 34
Performance Evaluation Download Test case π-box used # local storage # cloud storage # encrypted shares 1 No 0 1 0 2 Yes 0 1 0 3 Yes 8 0 0 4 Yes 4 4 4 5 Yes 0 8 8 File size: 24 MB; Dispersion parameters: n=8, k=6; Cryptography parameters: Towards AES (256 User bit, Centric 14 iterations), Data Governance SHA256; and Control in the Cloud Network Up/Downlink: 10/20 Mbit/s # 35
π-box Scalability Embedded systems π-box Virtual Machine AVM FRITZ!OS plugin Enterprise Server SOHO Home Server Enterprise SOHO: Small Office and Home Office # 36
Cloud Computing What is it all about? Problems? π-box: Building your personal secure cloud π-data Controller: Secure Cloud Storage Conclusion & Future Work # 37
Results so far & future work (π-data Controller) Integration of existing cloud storage services (Cloud-of-Clouds) Proxy server for transparent mediation easy to use for end-user, common scheme for enterprises Good performance, high security & data control for the user Data store for database system (block-based dispersion) Collaboration scenarios, file sharing, access by external entities Securing the meta data database Automatic classification of data Improving performance, e.g. scheduling algorithms, caching/ prefetching, parallelization Optimized cloud storage # 38
Building a cloud of clouds by connecting several π-clouds and propagating data and services within one π-cloud and to others. Simplified approach: assuming public, i.e. insecure π-clouds Advanced approach: Trust relationships between π-clouds π-cloud π-box # 39
Towards a secure cloud life cycle Cloud Adaption and Optimization Strategies for the compensation of SLA violations Strategies for minimization of energy consumption Mechanisms for the visualization of complex Cloud Monitoring data Fine-grained Service Level Agreements Methods to determine fine-grained nonfunctional properties of Cloud Services Identification of assets and corresponding requirements Deduction of monitoring targets from SLAs Cloud Surveillance and Incident Detection Specification of monitoring targets and SLA violations Models for the proactive recognition of SLA violations and the evaluation of a Cloud s energy efficiency Mechanisms for reliable distributed Monitoring Dynamic Provider Selection and Cloud Setup Flexible distribution mechanisms for Cloud Platforms Strategies for the performance optimization of Cloud Applications Reputation consideration to improve reliability and trustworthiness # 40
Tomorrow's forecast: still cloudy but sunny spots Contact: alexander.schill@tu-dresden.de stephan.gross@tu-dresden.de http://flexcloud.eu/ # 41
References [BKNT2010] C. Baun, M. Kunze, J. Nimis and S. Tai: Cloud Computing. Web-basierte dynamische IT-Services. Springer Verlag, 2010. [Blakley1979] G. R. Blakley: Safeguarding cryptographic keys; AFIPS Conference Proceedings Vol. 48, National Computer Conference (NCC) 1979, 313-317. [MeGr2011] P. Mell and T. Grace: The NIST Definition of Cloud Computing. NIST Special Publication 800-145, September 2011. [NaSh1994] M. Naor and A. Shamir, Visual Cryptography, Eurocrypt 94. [PSS2008] J. S. Plank, S. Simmerman, C. D. Schuman: Jerasure: A Library in C/C++ Facilitating Erasure Coding for Storage Applications Version 1.2. Technical Report CS-08-627, University of Tennessee, 2008. [Rabin1989] M. O. Rabin: Efficient Dispersal of Information for Security, Load Balancing, and Fault Tolerance; Journal of the ACM 36/2 (1989) 335-348. [SBM + 2011] J. Spillner, G. Bombach, S. Matthischke, R. Tzschicholz, and A. Schill: Information Dispersion over Redundant Arrays of Optimal Cloud Storage for Desktop Users. In: IEEE International Conference on Utility and Cloud Computing. Melbourne, Australien, December 2011. [SGS2011] R. Seiger, S. Groß, and A. Schill: A Secure Cloud Storage Integrator for Enterprises. In: International Workshop on Clouds for Enterprises. Luxemburg, September 2011. [Shamir1979] A. Shamir: How to Share a Secret; Communications of the ACM 22/11 (1979) 612-613. # 42