Confidentiality as a service –usable security for the cloud
-
Upload
maha-saad -
Category
Technology
-
view
440 -
download
2
Transcript of Confidentiality as a service –usable security for the cloud
![Page 1: Confidentiality as a service –usable security for the cloud](https://reader036.fdocuments.net/reader036/viewer/2022062319/5577e750d8b42a7b7b8b4fa8/html5/thumbnails/1.jpg)
1
Confidentiality as a Service –Usable Security for the Cloud
![Page 2: Confidentiality as a service –usable security for the cloud](https://reader036.fdocuments.net/reader036/viewer/2022062319/5577e750d8b42a7b7b8b4fa8/html5/thumbnails/2.jpg)
2
Introduction Cloud computing provides numerous advantages.
But cloud computing is a security nightmare.
Don’t trust CSP (Cloud service provider) security.
Confidentiality and integrity vs. usability.
What about Confidentiality provider third party?
![Page 3: Confidentiality as a service –usable security for the cloud](https://reader036.fdocuments.net/reader036/viewer/2022062319/5577e750d8b42a7b7b8b4fa8/html5/thumbnails/3.jpg)
3
Confidentiality As A Service (CAAS). Combines data security with usability.
Trust splitting between CSP and CAAS. Hides all cryptographic artifacts from users.
![Page 4: Confidentiality as a service –usable security for the cloud](https://reader036.fdocuments.net/reader036/viewer/2022062319/5577e750d8b42a7b7b8b4fa8/html5/thumbnails/4.jpg)
4
User perspective in CAAS model: Create CAAS Identity .
Register via user name and password. Email-based identification and authentication
(EBIA) is used. The user must choose different passwords for
his CaaS and cloud service accounts.
User downloads and installs small software plug-ins.
User enters the CaaS password once per session.
![Page 5: Confidentiality as a service –usable security for the cloud](https://reader036.fdocuments.net/reader036/viewer/2022062319/5577e750d8b42a7b7b8b4fa8/html5/thumbnails/5.jpg)
5
Algorithm perspective in CAAS model
![Page 6: Confidentiality as a service –usable security for the cloud](https://reader036.fdocuments.net/reader036/viewer/2022062319/5577e750d8b42a7b7b8b4fa8/html5/thumbnails/6.jpg)
6
Prerequisite knowledge: MAC and HMAC. KDF and HKDF. Stream cipher.
![Page 7: Confidentiality as a service –usable security for the cloud](https://reader036.fdocuments.net/reader036/viewer/2022062319/5577e750d8b42a7b7b8b4fa8/html5/thumbnails/7.jpg)
7
Message authentication code (MAC)
![Page 8: Confidentiality as a service –usable security for the cloud](https://reader036.fdocuments.net/reader036/viewer/2022062319/5577e750d8b42a7b7b8b4fa8/html5/thumbnails/8.jpg)
8
Hash-based message authentication code (HMAC)
HMAC (K,m) = H ((K ⊕ opad) ∥ H ((K ⊕ ipad) ∥ m))
MAC based on hash functions .
![Page 9: Confidentiality as a service –usable security for the cloud](https://reader036.fdocuments.net/reader036/viewer/2022062319/5577e750d8b42a7b7b8b4fa8/html5/thumbnails/9.jpg)
9
key derivation function (KDF) Derives one or more secret keys from a
secret value.
Prevents attacker to know either the input secret value or any of the other derived keys.
DK = KDF( Key, Salt, Iterations)
![Page 10: Confidentiality as a service –usable security for the cloud](https://reader036.fdocuments.net/reader036/viewer/2022062319/5577e750d8b42a7b7b8b4fa8/html5/thumbnails/10.jpg)
10
HMAC-based key derivation function (HKDF)
ExtractTakes the input keying material(IKM) and extracts
from it a fixed-length key (PRK).
ExpandExpands the key PRK into several additional keys .
PRK = HMAC-Hash(salt, IKM)
![Page 11: Confidentiality as a service –usable security for the cloud](https://reader036.fdocuments.net/reader036/viewer/2022062319/5577e750d8b42a7b7b8b4fa8/html5/thumbnails/11.jpg)
11
Stream cipher
It takes a short secret key and produces a long keystream.
Encryption is performed by bitwise XORing the keystream to the plain text.
Decryption is performed by regenerating the keystream and XORing it to the ciphertext.
Stream cipher with initialization vector: Take both secret key and public IV to produce
keystream.
![Page 12: Confidentiality as a service –usable security for the cloud](https://reader036.fdocuments.net/reader036/viewer/2022062319/5577e750d8b42a7b7b8b4fa8/html5/thumbnails/12.jpg)
12
Pre-Push Sequence:
+cLayerLocalPre: Choose a random initialization vector IVu1. Choose a random symmetric encryption key ku1. Calculate a keystream kstru1 = Symustr(ivu1, ku1 ). Encrypt clearu1 : encu1 = clearu1⊕ kstru1 . Calculate the message digest digu1 = Hu(clearu1 ). Send the tuple CredCaaS(u1), U, encu1 to the
CaaS.
![Page 13: Confidentiality as a service –usable security for the cloud](https://reader036.fdocuments.net/reader036/viewer/2022062319/5577e750d8b42a7b7b8b4fa8/html5/thumbnails/13.jpg)
13
Pre-Push Sequence Cont…
+cLayerRemote : Check if all u ∈ U are registered CaaS users. Add u1 to U. Sort the list of participating users. For all users compute hj = Hp(uj +hj−1)
to obtain iterative hash hn of all participating users. Calculate the secret key kp = HKDFp(hn,Xp). Choose a random initialisation vector ivp
Calculate a key stream kstrp = Symp str(ivp, kp) Add a remote cLayer to the input: encp = encu1⊕ kstrp. Send the tuple ivp, Encp back to the requesting client.
![Page 14: Confidentiality as a service –usable security for the cloud](https://reader036.fdocuments.net/reader036/viewer/2022062319/5577e750d8b42a7b7b8b4fa8/html5/thumbnails/14.jpg)
14
Pre-Push Sequence Cont…
-cLayerLocalPre: Decrypt encp: rts = encp ⊕ kstru1. Send rts, ivp, digu to the CSP
![Page 15: Confidentiality as a service –usable security for the cloud](https://reader036.fdocuments.net/reader036/viewer/2022062319/5577e750d8b42a7b7b8b4fa8/html5/thumbnails/15.jpg)
15
Post-Pull Sequence:
+cLayerLocalPost: Works as +cLayerLocalPre.
![Page 16: Confidentiality as a service –usable security for the cloud](https://reader036.fdocuments.net/reader036/viewer/2022062319/5577e750d8b42a7b7b8b4fa8/html5/thumbnails/16.jpg)
16
Post-Pull Sequence Cont…
+cLayerRemotePost: Add u2 to U. Sort the list of participating users. For all users compute hj = Hp(uj +hj−1)
to obtain iterative hash hn of all participating users.
Calculate the secret key kp = HKDFp(hn,Xp). Recalculate a key stream kstrp = Symp str(ivp, kp) Decrypt encu2 : decp = encu2⊕ kstrp
![Page 17: Confidentiality as a service –usable security for the cloud](https://reader036.fdocuments.net/reader036/viewer/2022062319/5577e750d8b42a7b7b8b4fa8/html5/thumbnails/17.jpg)
17
Post-Pull Sequence Cont…
-cLayerLocalPost: Decrypt cipher text using ivu2 , ku2. Calculate the result’s digest using Hu. If the digest is equal to digu1 integrity isn’t
violated.
![Page 18: Confidentiality as a service –usable security for the cloud](https://reader036.fdocuments.net/reader036/viewer/2022062319/5577e750d8b42a7b7b8b4fa8/html5/thumbnails/18.jpg)
18
Integration with facebook:
Sending a message:
Client-side Javascript checks if all recipients have CaaS accounts.
If not they will be highlighted. Password needs to be entered once per session.
![Page 19: Confidentiality as a service –usable security for the cloud](https://reader036.fdocuments.net/reader036/viewer/2022062319/5577e750d8b42a7b7b8b4fa8/html5/thumbnails/19.jpg)
19
Integration with facebook Cont…
Receiving a message: When the user opens the Facebook page, the
script recovers all encrypted message. The clear text message is inserted into the
Facebook message page and framed by a green border.
![Page 20: Confidentiality as a service –usable security for the cloud](https://reader036.fdocuments.net/reader036/viewer/2022062319/5577e750d8b42a7b7b8b4fa8/html5/thumbnails/20.jpg)
20
Evaluation:
![Page 21: Confidentiality as a service –usable security for the cloud](https://reader036.fdocuments.net/reader036/viewer/2022062319/5577e750d8b42a7b7b8b4fa8/html5/thumbnails/21.jpg)
21
References: S. Fahl, M. Harbach, T. Muders, and M. Smith.Condentiality as a Service -
Usable Security for the Cloud. In Proceedings of the IEEE International Conference on Trust, Security and Privacy in Computing and Communications, 2012.
P. Sarkar , On Authenticated Encryption Using Stream Ciphers Supporting an Initialisation Vector.
http://en.wikipedia.org/wiki/Stream_cipher http://en.wikipedia.org/wiki/Message_authentication_code http://en.wikipedia.org/wiki/HMAC http://en.wikipedia.org/wiki/Key_derivation_function http://tools.ietf.org/html/rfc5869