You are on page 1of 30

Fuzzy Keyword Search over Encrypted Data

in Cloud Computing
By
Mr.P.Durgaprasad
09d41d5807
M.Tech[cse]
Sri Indu College of Engineering and Technology
Contents
Objective
Basic definitions
Existing system
Proposed system
Modules in the project
Algorithms used
UML diagrams
Output screens
Future enhancement
Conclusion
References

Objective
Privacy- preserving fuzzy
keyword search in Cloud Computing.
Effective fuzzy keyword search over
encrypted cloud data while maintaining
keyword privacy.
Basic Definitions
Cloud
Collection of sources of services like
servers. Medium is Internet.
Services are utilized through internet from
geographically dispersed locations

Cloud Computing
Cloud Computing (CC)is all about
implementing process online instead in your
local gadget.
Data and processes could be done online
without the need of any local software or client.
As long as the user knows the process and
have the right security credentials, he could
access the system and make the necessary
changes.

Fuzzy Logic
Fuzzy logic is a form of many-valued
logic; it deals with reasoning that is
approximate rather than fixed and exact.
Fuzzy logic has been applied to many
fields, from control theory to artificial
intelligence.
Cryptography
Encryption-Decryption
Encryption :Plain or clear text is changed
to cipher text using a key.
Decryption : Cipher text is changed to
plain text using a key.
Crypto algorithm-Algorithms used in
cryptography.
Existing System
The approach provides fuzzy keyword search over the
encrypted files while achieving search privacy using the
technique of secure trapdoors.
This approaches efficiency disadvantages-
The enumeration method in constructing fuzzy key-word
sets would introduce large storage complexities.
Greatly affect the usability.
For example, the following is the listing variants after a
substitution operation on the first character of keyword
CASTLE: {AASTLE, BASTLE, DASTLE, YASTLE,
ZASTLE}.
Proposed System
3 techniques
Fuzzy Keyword Search over Encrypted
Data in Cloud Computing system is
designed basically in Three Modules
Wildcard Based Technique
Gram - Based Technique
Symbol Based Tree traverse Search Scheme
MD5 Algorithm


The MD5 Message-Digest Algorithm is a widely used
cryptographic hash function that produces a 128-bit (16-byte)
hash value.
MD5 has been employed in a wide variety of security
applications, and is also commonly used to check.
The 128-bit (16-byte) MD5 hashes (also termed message
digests) are typically represented as a sequence of 32
hexadecimal digits. The following demonstrates a 43-byte
ASCII input and the corresponding MD5 hash:
MD5("The quick brown fox jumps over the
lazy dog") =
9e107d9d372bb6826bd81d3542a419d6
www.md5encryption.com
MD5 Encryption
.Net Class for crypto process
MD5CryptoServiceProvider
TripleDESCryptoServiceProvider
for encryption and decryption.
String Matching Algorithm
Definition
An instance M of the data type string_matching is an
object maintaining a pattern and a string. It provides a
collection of different algorithms for computation of the
exact string matching problem. Each function computes
a list of all starting positions of occurrences of the pattern
in the string.
The algorithms can be called explicitly by their name or
implicitly by making an algorithm the "current" algorithm
(specified by the setAlgorithm-method) and
using functions getFirstOccurence(),
getNextOccurence(), and getAllOccurences().

The string matching algorithms among them can
be classified into two categories:
on-line
off-line
The on-line techniques, performing search
without an index, are unacceptable for their low
search efficiency,
while the off-line approach, utilizing indexing
techniques, makes it dramatically faster.


Modules in the project
There are 3 modules
Wildcard Based Technique
Gram Based Technique
Symbol Based Trie traverse Search
Scheme

Wildcard Based Technique:

We proposed to use a wildcard to denote edit
operations.
The wildcard-based fuzzy set edits distance
to solve the problems.
For example, for the keyword CASTLE with the
pre-set edit distance 1, its wildcard based fuzzy
keyword set can be constructed as
SCASTLE, 1 = {CASTLE, *CASTLE,*ASTLE,
C*ASTLE, C*STLE, CASTL*E, CASTL*,
CASTLE*}.

Edit Distance:
Substitution
Deletion
Insertion
Substitution : changing one character to
another in a word;
Deletion : deleting one character from a
word;
Insertion: inserting a single character into
a word.
Gram Based Technique

Technique for constructing fuzzy set is based on grams.
The gram of a string is a substring that can be used as
a signature for efficient approximate search.
Gram used for constructing a list for approximate string
search
Any primitive edit operation will affect at most one
specific character of the keyword, leaving all the
remaining characters untouched.
For example, the gram-based fuzzy set
SCASTLE, 1 for keyword CASTLE can be constructed
as
{CASTLE, CSTLE, CATLE, CASLE, CASTE,
CASTL, ASTLE}.
Symbol Based Trie traverse Search
Scheme
we now propose a symbol-based trie-traverse
search scheme, where a multi-way tree is
constructed for storing the fuzzy keyword set.
The key idea behind this construction is that all
trapdoors sharing a common prefix may have
common nodes.
The root is with an empty set and the symbols in
a trapdoor can be recovered in a search from
the root to the leaf that ends the trapdoor.
Design of UML diagrams
Usecase diagram

User
Admin
Upload files
Fuzzy search
Register
Download files
Manage all details
If user
exists
If user does
not exists
Class diagram
Upload files
fileid
filename
files
upload()
Fuzzy search
saerch_id
searchdata
search()
insertion()
deletion()
Download files
userid
username
address
emailid
mobileno
register()
download()
Sequence diagram
User Admin
Server
Upload files
Search files
Retrieve files
Register
Download files
Dataflow Diagram
Start
Admin login User search
Import files Enter data to search
Upload files Fuzzy search
Database
Get response
User login
If exists
Download files Register
End
Yes No
Manage user/files
details
Output Screens
Home page
Encryption
Conclusion
In this project, for the first time we formalize and
solve the problem of supporting efficient yet
privacy-preserving fuzzy search for achieving
effective utilization of remotely stored
encrypted data in Cloud Computing.
We design two advanced techniques (i.e.,
wildcard-based and gram- based techniques)
to construct the storage-efficient fuzzy keyword
sets.
Future Enhancements
We further propose a brand new symbol-based
trie-traverse searching scheme, where a multi-
way tree structure is built up.
Through rigorous security analysis, we show that
our proposed solution is secure and privacy-
preserving, while correctly realizing the goal of
fuzzy keyword search. Extensive experimental
results demonstrate the efficiency of our
solution.

You might also like