Verifiable Attribute Based Keyword Search with Fine-Grained Owner-Enforced Search Authorization in the Cloud They really need a shorter title.

Slides:



Advertisements
Similar presentations
Boneh-Franklin Identity-based Encryption. 2 Symmetric bilinear groups G = ágñ, g p = 1 e: G G G t Bilinear i.e. e(u a, v b ) = e(u, v) ab Non-degenerate:
Advertisements

Russell Martin August 9th, Contents Introduction to CPABE Bilinear Pairings Group Selection Key Management Key Insulated CPABE Conclusion & Future.
Spring 2000CS 4611 Security Outline Encryption Algorithms Authentication Protocols Message Integrity Protocols Key Distribution Firewalls.
Introduction to Practical Cryptography Lecture 9 Searchable Encryption.
Public Key Infrastructure (PKI) Providing secure communications and authentication over an open network.
WAP Public Key Infrastructure CSCI – Independent Study Fall 2002 Jaleel Syed Presentation No 5.
CSCI283 Fall 2005 GWU All slides from Bishop’s slide set Public Key Infrastructure (PKI)
Certificateless encryption and its infrastructures Dr. Alexander W. Dent Information Security Group Royal Holloway, University of London.
CMSC 414 Computer and Network Security Lecture 9 Jonathan Katz.
Presented by Xiaoping Yu Cryptography and PKI Cosc 513 Operating System Presentation Presented to Dr. Mort Anvari.
Spring 2003CS 4611 Security Outline Encryption Algorithms Authentication Protocols Message Integrity Protocols Key Distribution Firewalls.
Encryption Methods By: Michael A. Scott
Computer Science Public Key Management Lecture 5.
1 Introduction to Security and Cryptology Enterprise Systems DT211 Denis Manley.
Part Two Network Security Applications Chapter 4 Key Distribution and User Authentication.
Lecture 19 Page 1 CS 111 Online Symmetric Cryptosystems C = E(K,P) P = D(K,C) E() and D() are not necessarily the same operations.
Chapter 9: Using and Managing Keys Security+ Guide to Network Security Fundamentals Second Edition.
Introduction to Secure Sockets Layer (SSL) Protocol Based on:
Cryptography and Network Security (CS435) Part Fourteen (Web Security)
Fall, Privacy&Security - Virginia Tech – Computer Science Click to edit Master title style Collusion-Resistant Group Key Management Using Attribute-
Public Key Encryption with keyword Search Author: Dan Boneh Rafail Ostroversity Giovanni Di Crescenzo Giuseppe Persiano Presenter: 陳昱圻.
Digital Signatures, Message Digest and Authentication Week-9.
Presented By Amarjit Datta
SDSM IN MOBILE CLOUD COMPUTING By- ID NO-1069 K.C. SHARMILAADEVI Sethu Institute Of Tech IV year-ECE Department CEC Batch: AUG 2012.
Database and Cloud Security
Shucheng Yu, Cong Wang, Kui Ren,
Searchable Encryption in Cloud
Public Key Infrastructure (PKI)
Basics of Cryptography
Rekeying for Encrypted Deduplication Storage
Security Outline Encryption Algorithms Authentication Protocols
Cryptography and Network Security
NETWORK SECURITY Cryptography By: Abdulmalik Kohaji.
Secure Sockets Layer (SSL)
Boneh-Franklin Identity Based Encryption Scheme
Public Key Encryption Systems
CSCE 715: Network Systems Security
Group theory exercise.
Tutorial on Creating Certificates SSH Kerberos
Originally by Yu Yang and Lilly Wang Modified by T. A. Yang
Digital Signature Schemes and the Random Oracle Model
CompTIA Security+ Study Guide (SY0-501)
Cryptography and Network Security
Public Key Infrastructure
Security at the Application Layer: PGP and S/MIME
Public Key Infrastructure (PKI)
Security through Encryption
Cryptography Lecture 24.
CS/ECE 478 Network Security Dr. Attila Altay Yavuz
Attribute-Based Encryption for Fine-Grained Access Control of Encrypted Data An, Sanghong KAIST
Digital Certificates and X.509
Lecture 4 - Cryptography
The Secure Sockets Layer (SSL) Protocol
刘振 上海交通大学 计算机科学与工程系 电信群楼3-509
Security Analysis of Network Protocols
Chapter 4 Cryptography / Encryption
Public Key Infrastructure
Key Management Network Systems Security
NET 311 Information Security
Key Distribution Reference: Pfleeger, Charles P., Security in Computing, 2nd Edition, Prentice Hall, /18/2019 Ref: Pfleeger96, Ch.4.
Basic of Modern Cryptography
The power of Pairings towards standard model security
刘振 上海交通大学 计算机科学与工程系 电信群楼3-509
Instructor Materials Chapter 5: Ensuring Integrity
Public Key Encryption Systems
Cryptography and Network Security
Cryptography Lecture 23.
Review of Cryptography: Symmetric and Asymmetric Crypto Advanced Network Security Peter Reiher August, 2014.
AIT 682: Network and Systems Security
Presentation transcript:

Verifiable Attribute Based Keyword Search with Fine-Grained Owner-Enforced Search Authorization in the Cloud They really need a shorter title.

Problem Searching through encrypted data is difficult It becomes more difficult when the data is encrypted by the client Previous work assumes a single contributor model In a single contributor scenario it is necessary to either share a secret key with users or to stay online and generate a trap door (encrypted keywords) (doesn’t make sense once you consider confusion and diffusion) to be searched. A key used to encrypt the dataset and generate the trapdoors. (they don’t explain this well at all)

Multi-Contributor Systems It is difficult for a variety of users to contribute to and search the datastore Fine grained access to the data is a problem In this situation key management is the primary issue Asymmetric cryptographic keys are an option Enrollment and revocation become a nightmare Single key doesn’t work well Too much complexity, complexity = vulnerabilities. Encrypting with a public key could work, but it becomes awkward when operating at scale.

ABKS-UR Inspired by attribute based encryption Encrypts the index of each with a user defined access policy, defining who can access it No always online component Keywords = content of the files Attributes = user characteristics Encrypted Search with a whitelist Ciphertext policy attribute based encryption. Access groups sort of concept, but with encryption. Proxy and lazy re-encryption techniques free up the user to do other things when handling revocation

Previous work Secret and Public key crypto Coordinate matching Cosine similarity measure Authorized keyword search = not scalable APKS, better suited to database tasks. Different similarity measures for symmetric Previous authorized keyword search methods are not scalable. As the number of users grows the index and search complexity grows. Problem with re-encrypting each index with each public key APKS (authorized private keyword search), significant communication costs, search time is proportional to the total number of key words. Arbitrary structured data is hard in this model.

Terminology CP-ABE: ciphertext policy attribute-based encryption IND-sCP-CKA: Chosen keyword attack under selective ciphertext policy TA: trusted authority PKC: public key cryptography SKC: secret key cryptography (symmetric)

Attribute Based Encryption Based on public key cryptography. Attributes are associated with the user’s private key and the access structures with the cipher text. Public key components exist for each attribute The encryptor chooses an access structure of attributes The message is encrypted with the corresponding public key components. Lazy and proxy re-encryption enable revocation The users secret key are associated with a list of

Attribute Based Encryption Access structures are defined as a series of AND gates. Can be extended to allow for proxy based re-encryption. The ciphertext is only decrypted if the attributes used for encryption satisfy the access structure. Resistant to collusion attacks. Decisional bilinear Diffie-Hellman assumption Cheung = AND gate Yu et al = revocation Linear relationship between the number of attributes/access control size and the key/ciphertext size, not the number of users. ABKS-UR utilizes the work of Yu et al. and Cheung et al Attribute revocation

Design Goals Authorized Keyword Search Multiple contributors Efficient revocation Verifiable search result Security goals Keyword Semantic Security, trapdoor unlinkability, Add more about the security goals and tie them into the threat model Keyword semantic security: Must be secure against a chosen keyword attack, under the selective cipher text policy model] Trapdoor unlinkability, can’t distinguish two trapdoors even if they contain the same keyword.

System Model Entities: Cloud server, data owners, and data users A trusted authority is assumed to handle key generation and distribution Data owner generates indexes with access policies before sending them to the server Does not assume encryption with any specific algorithm, therefore flexible to different use cases (probably could get away with RC4 if you really want to shoot yourself in the foot)

Searching the Datastore The data user generates a trapdoor for a keyword with their private key and submits it to the server Coarse grained data set authorization File level search authorization Information is only returned if attributes of the trapdoor satisfy access requirements of the secure indexes Course grained authorization is a quick sanity check and a performance optimization to speed up denials. File level authorization is applied such that only users with permission to access a file can search it for a keyword

Threat Model Cloud server is honest but curious It follows the protocol but infers additional information. Malicious users can collude to access files beyond their privileges using secret keys. The CS will not collude with revoked users. I find this threat model lacking in detail.

System Setup Some trusted authority generates the following with a security parameter and a universal set of attributes. PK, public parameters, or public key MK, master secret key

Enrollment When a new user sends a registration request the authority selects a new MK component and a new PK component. The KeyGen algorithm is called to generate a new secret key for this user. Server maintains a list of each user’s identity information for each dataset The CreateUL algorithm creates a user list for a dataset The authorities….

Index Generation Data owner calls EncIndex to generate a security index for each file before sending it to the server. Takes in an access policy (GT), the public parameter (PK), and a keyword (w) Outputs an encrypted index (D).

Trapdoor Generation Any user can generate a trapdoor for a keyword A trapdoor is generated using the public parameters (PK), the users secret key (SK), and a keyword (w) This produces a trapdoor (Q) Trapdoor unlinkability Each trapdoor is differentiated with a different random number, so that the server cannot differentiate the two.

Search The user submits their user ID and trapdoor to the server. Server checks if that user exists in the list for that dataset. If the user’s attributes satisfy the access structure in the index then they can access the file. If there the version of the trapdoor is newer than the index then the index is updated. If the trapdoor is older than the index then the request is ignored.

Revocation To revoke a user the secure index are re-encrypted and the remaining user’s keys are updated. The trusted authority is used to generate a new keyset. This new keyset is then used to re-encrypt the dataset. Lazy re-encryption allows for the version of the re-encryption keys to be greater than the system version Once the keys are updated the user is struck from all relevant user lists

Conjunctive keyword search It is possible to return searches with multiple keywords. Multiple values are contained in a single trapdoor. Claimed to have the same efficiency as the single keyword version. Regardless of the number of additional keywords.

Authenticated search A user may want data checked for correctness, completeness and freshness. Data Owner generates bloom filter for the user list, a bloom filter for the keywords, and a list of indexes with each keyword. These structures are returned with each search result. User checks membership in the user list bloom filters. Verify the ciphertext and index, decrypt the ciphertext, checks keyword bloom filter for the keyword. After verifying a signature for that hash list the user can search it with their trapdoor. Authenticate a user by the owner signing a user list (dataset to dataset). To avoid disclosing information the TA can generate a keyed hash value for each user. Data owner uses a bloom filter to hold these hash values and signs it. Data owner holds another bloom filter for keywords so the user can quickly determine existence. TA generates a hash key and gives it to the owner who encrypts it with a symmetric key for each user. The dataset is organized by index and keyword. Each index containing a keyword are in the same file list. The two bloom filters and their file lists are then outsourced to the server. Auxiliary information returned with the search result. Bloom filter user lists, keyword bloom filters, and the file list for the keyword. After receiving it the user checks authenticity by checking membership with all the user list bloom filters, Decrypts the ciphertext, verifies keyword bloomfilters, Then looks at the file list and verifies the signature, and searches the list with the trapdoor Keyword bloom filters are for each dataset

Performance Supposedly Comparing ABKS-UR to APKS Enron Email dataset Everything scales linearly

Performance 5 minutes to complete a search over 10,000 files with 30 attributes No hard performance numbers for user revocation

Performance

Questions?