0% found this document useful (0 votes)
9 views

MYGROUPPROJECT

Uploaded by

u0495269
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views

MYGROUPPROJECT

Uploaded by

u0495269
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 88

Trapdoor Privacy Data In PKE With Keyword Search

CHAPTER 1
INTRODUCTION
1.1 GENERAL

With the increasing number of information technology devices on the internet, the amount of
data that must be maintained has dramatically increased over the years. One of the options to
resolve this issue is to use cloud storage technology by outsourcing a cloud server to store
data and retrieve them from the cloud when needed. Storing the data in the plaintext format
would put the confidentiality of the data owner at risk, but storing the data in the encrypted
format
would pose a significant problem when searching for data on the cloud.
To overcome this challenge, searchable encryption (SE) scheme was introduced by [1] to
search over encrypted data. A searchable encryption scheme allows a server to search for the
data in the encrypted form on behalf of a client without learning any information about the
plaintext data and thus, with the smallest possible loss of data confidentiality [2]. Figure 1
shows the general structure of the searchable encryption scheme. It consists of three main
entities, data owner, data user, and cloud server. Data owner: the one who encrypts the data
and index before uploading to the cloud server. Data user: the one who generates the
trapdoor to enable the server to search over the encrypted data. Cloud server: the server
stores the encrypted data and helps to perform searching operations on the cloud using the
trapdoor. There are two types of searchable encryption scheme. 1) Symmetric searchable
encryption (SSE) In the SSE scheme, the data is encrypted with user's secret key before
outsourcing. The first SSE scheme was proposed by Song et al. [1]. The advantage of this
scheme is its efficiency because the SSE scheme is based on symmetric primitives; thus, it
requires less computational overhead. The disadvantage of this scheme is that its functionality
is usually applicable only to single user scenario.
2) Public Key Encryption with Keyword Search (PEKS) In the PEKS scheme, the data is
encrypted with user's public key before outsourcing. The first PEKS scheme was proposed by
Bone et al. [3]. The advantage of this scheme is its functionality, because it can be used in a
multiuser setting. However, this scheme exhibits a low efficiency. According to Kamara and
Lauter [4], most of the PEKS schemes require the evaluation of pairings on elliptic curves,

DEPARTMENT OF CSE (SCET) 1|Page


Trapdoor Privacy Data In PKE With Keyword Search

which is relatively slow. Current research works focus on improving the security and
practicality of the PEKS scheme before deploying it in real-world applications. A keyword
guessing attack (KGA)
allows the attacker to successfully guess the correct keyword encrypted in a searchable cipher
text and trapdoor. To overcome this vulnerability, security notions such as keyword privacy
and trapdoor privacy were introduced. Keyword privacy prevents any information leaked
from the keyword itself, and similarly trapdoor privacy prevents any information leaked from
the trapdoor side. Trapdoor privacy is an important property that needs to be satisfied by a
PEKS scheme so that it is secure against keyword guessing attack.
1.2 OBJECTIVE
The objective of this project is Keyword privacy prevents any information leaked from the
keyword itself, and similarly trapdoor privacy prevents any information leaked from the
trapdoor side. Trapdoor privacy is an important property that needs to be satisfied by a PEKS
scheme so that it is secure against keyword guessing attack.
1.3SCOPE OF THE PROJECT
In this paper, our survey is mainly focused on the trapdoor privacy of various types of PEKS
schemes. First, we provide a summary on the development of PEKS schemes. We then
introduce the property of trapdoor privacy followed by a comparison analysis on various
PEKS schemes in terms of their underlying tools, computational hardness, system model,
search function, security properties of keyword privacy and trapdoor privacy, and the security
against offline KGA and online KGA. Subsequently, we outline some potential research
directions for the PEKS scheme and conclude this review

DEPARTMENT OF CSE (SCET) 2|Page


Trapdoor Privacy Data In PKE With Keyword Search

1.4EXISTING SYSTEM:
 The proposed a PP-CSA scheme for data sharing, where only the authorized user can
access the data, and there is no need to establish a secure channel between the data owner
and the sanitizer.
 These schemes provide a function to hide sensitive information but have limitations in not
providing user revocation or data dynamics.
 In addition, the integrity auditing scheme using keywords in encrypted data and a more
secure auditing scheme providing forward security have been recently proposed, but these
schemes are not suitable for our target environment.

1.4.1 Existing System Disadvantages:


 No Security authentication.
 The public keys of both servers are required to execute the algorithms.
 No Access data anybody can attacks a file.

DEPARTMENT OF CSE (SCET) 3|Page


Trapdoor Privacy Data In PKE With Keyword Search

1.5LITERATURE SURVEY
TITLE : Public-key authenticated encryption with keyword search revisited: Security model
and constructions
AUTHOR : B. Qin, Y. Chen, Q. Huang, X. Liu, and D. Zheng
YEAR :2021
DESCRIPTION :
In cloud era, it is necessary to store sensitive data in an encrypted form. This arises the
interesting and challenging problem of searching on encrypted data. However, previous
Public-key Encryption with Keyword Search (PEKS) inherently cannot resist against inside
keyword guessing attacks. To alleviate this issue, recently Huang and Li proposed the notion
of Public-key Authenticated Encryption with Keyword Search (PAEKS), which requires the
data sender not only encrypting a keyword using the receiver’s public key, but also
authenticating it using his secret key. This paper first revisits HL-PAEKS security model and
finds that it did not capture a realistic threat, called (outside) chosen multi-cipher text attacks.
That is, an outside adversary can decide whether two encrypted files share some identical
keywords or not. To resolve this issue, we propose a new PAEKS security model that
captures both (outside) chosen multi-cipher text attacks and (inside) keyword guessing
attacks. Then, we give a concrete PAEKS scheme and prove its security in the new PAEKS
security model. We also propose a method to simplify data sender’s key management using
identity-based key exchange protocol. Finally, we provide implementation results of our
schemes to show the comparable efficiency of our schemes with previous PEKS/PAEKS

schemes..

DEPARTMENT OF CSE (SCET) 4|Page


Trapdoor Privacy Data In PKE With Keyword Search

TITLE : Verifiable searchable encryption framework against insider keyword-guessing


attack
in cloud storage
AUTHOR : Y. Miao, Q. Tong, R. Deng, K.-K.-R. Choo, X. Liu, and H. Li
YEAR : 2022
DESCRIPTION :
Searchable encryption (SE) allows cloud tenants to retrieve encrypted data while preserving
data confidentiality securely. Many SE solutions have been designed to improve efficiency
and security, but most of them are still susceptible to insider Keyword-Guessing Attacks
(KGA), which implies that the internal attackers can guess the candidate keywords
successfully in an off-line manner. Also in existing SE solutions, a semi-honest-but-curious
cloud server may deliver incorrect search results by performing only a fraction of retrieval
operations honestly (e.g., to save storage space). To address these two challenging issues, we
first construct the basic Verifiable SE Framework (VSEF), which can withstand the inside
KGA and achieve verifiable search ability. Based on the basic VSEF, we then present the
enhanced VSEF to support multi-keyword search, multi-key encryption and dynamic updates
(e.g., data modification, data insertion, and data deletion) at the same time, which highlights
the importance of practicability and scalability of SE in real-world application scenarios. We
conduct extensive experiments using the Enron email dataset to demonstrate that the
enhanced VSEF achieves high efficiency while resisting to the inside KGA and supporting
the verifiability of search results.

DEPARTMENT OF CSE (SCET) 5|Page


Trapdoor Privacy Data In PKE With Keyword Search

TITLE : Lightweight public key authenticated encryption with keyword search against
adaptively-chosen-targets adversaries for mobile devices
AUTHOR : Y. Lu and J. Li,
YEAR : 2021
DESCRIPTION :
Cloud storage services have grown extensively in recent years. For security and privacy
purposes, sensitive data need to be outsourced to clouds in encrypted form. Searchable public
key encryption (SPKE) enables data ciphertexts to be retrieved by keyword(s) without
decryption. Unfortunately, most of the existing SPKE schemes cannot withstand the keyword
guessing attack. To combat such attack, public key authenticated encryption with keyword
search (PAEKS) was presented. However, the existing PAEKS schemes were proven secure
under a designated-targets security model, in which an adversary only can attack a sender and
a recipient designated by the challenger. Our cryptanalysis indicates that such a scheme may
be insecure against the practical attacks where the adversaries choose their targets by
themselves. To fight against adaptively-chosen-targets adversaries, we refine the adversary
model for PAEKS by permitting the adversaries to choose their targets adaptively, and then
formalize the security definitions under the improved security model. After that, we devise a
lightweight PAEKS scheme that avoids the time-consuming bilinear pairing operations and
give the security proofs. The comparisons show that it outperforms the existing bilinear
pairing-based PAEKS schemes in both the computation and communication performance, and
therefore is more suitable for the resource-constrained mobile devices.

DEPARTMENT OF CSE (SCET) 6|Page


Trapdoor Privacy Data In PKE With Keyword Search

TITLE : Pairing-free certificate-based searchable encryption supporting privacy-preserving


keyword search function for IIoTs
AUTHOR : Y. Lu, J. Li, and F. Wang
YEAR : 2022
DESCRIPTION :
As a practical application of Internet of Things (IoT) in modern industry, Industrial IoT (IIoT)
enables industrial enterprises to accelerate development. Nowadays, the cloud computing
technology has been applied to data storage and processing in IIoTs. But, how to protect data
privacy in cloud has become a challenge and technical issue. Recently, certificate-based
encryption with keyword search (CBEKS) was presented to handle cloud cipher text
retrieval. By CBEKS, one can get back all desired cipher texts from cloud without decrypting
the cipher texts or leaking the search keywords. However, the existing CBEKS scheme uses
the computationally expensive bilinear pairing which is disgusted by the performance-limited
IIoT smart devices. In this paper, a pairing-free and privacy-preserving CBEKS scheme is
developed. The experimental results show that it has obvious advantage in the computation
performance when compared with the pairing-based CBEKS scheme. In addition, our
security proofs indicate that it is secure against keyword guessing attacks.

DEPARTMENT OF CSE (SCET) 7|Page


Trapdoor Privacy Data In PKE With Keyword Search

TITLE : Privacy preserving multi-keyword searchable encryption for distributed systems,


AUTHOR : X. Liu, G. Yang, W. Susilo, J. Tonien, X. Liu, and J. Shen
YEAR : 2021
DESCRIPTION :
As cloud storage has been widely adopted in various applications, how to protect data privacy
while allowing efficient data search and retrieval in a distributed environment remains a
challenging research problem. Existing searchable encryption schemes are still inadequate on
desired functionality and security/privacy perspectives. Specifically, supporting multi-
keyword search under the multi-user setting, hiding search pattern and access pattern, and
resisting keyword guessing attacks (KGA) are the most challenging tasks. In this article, we
present a new searchable encryption scheme that addresses the above problems
simultaneously, which makes it practical to be adopted in distributed systems. It not only
enables multi-keyword search over encrypted data under a multi-writer/multi-reader setting
but also guarantees the data and search pattern privacy. To prevent KGA, our scheme adopts a
multi-server architecture, which accelerates search response, shares the workload, and lowers
the key leakage risk by allowing only authorized servers to jointly test whether a search token
matches a stored ciphertext. A novel subset decision mechanism is also designed as the core
technique underlying our scheme and can be further used in applications other than keyword
search. Finally, we prove the security and evaluate the computational and communication
efficiency of our scheme to demonstrate its practicality.

DEPARTMENT OF CSE (SCET) 8|Page


Trapdoor Privacy Data In PKE With Keyword Search

TITLE : Public key authenticated encryption with multiple keywords search using
Mamdani system
AUTHOR : Y. Ma and H. Kazemian
YEAR : 2021
DESCRIPTION :
The public cloud environment has attracted massive attackers to exploit insecure ports and
access to data, services and other resources. Techniques, such as Public Key Encryption with
Keyword Search (PEKS), could be deployed in cloud security to avoid accidents. PEKS
allows users to search encrypted documents by a specific keyword without compromising the
original data security. The first PEKS scheme was proposed in 2004, since then, PEKS has
been experienced a great progress. Recently, Kazemian and Ma firstly incorporated with
Fuzzy Logic technique to PEKS scheme, namely “Public Key Encryption with Multi-
keywords Search using Mamdani System (m-PEMKS)”, in order to support Fuzzy Keyword
(i.e. “latest”, “biggest”) Search. However, the m-PEMKS scheme has the ability to prevent
Off-line Keyword Guessing Attack (OKGA) but it may suffer Inside Keyword Guessing
Attack (IKGA). This paper will revisit the m-PEMKS scheme and propose a robust m-
PEMKS mechanism. The proposed scheme has the properties of Cipher text
Indistinguishability, Trapdoor Indistinguishability and User Authentication which can prevent
OKGA and IKGA. Besides, the proposed scheme supports both Fuzzy Keyword Search and
Multiple Keywords Search and therefore, it is more practical and could be applied to the
general public networks.

DEPARTMENT OF CSE (SCET) 9|Page


Trapdoor Privacy Data In PKE With Keyword Search

1.6 PROPOSED SYSTEM


 In this paper, we compare various types of PEKS schemes in terms of their underlying
computational hardness, system model, search function, security properties of keyword
privacy and trapdoor privacy, and security against KGA and KGA.
 From the comparison analysis, we highlight that trapdoor privacy and keyword privacy
are essential for a PEKS scheme to be secure against KGA.
 Symmetric searchable encryption (SSE) In the SSE scheme, the data is encrypted with
user's secret key.
1.6.1 PROPOSED SYSTEM ADVANTAGE
 Stronger authentication
 Any user can access the shared data.
 secure server-designation public key encryption with keyword search (SPEKS) to solve
the problem,

DEPARTMENT OF CSE (SCET) 10 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

CHAPTER 2
PROJECT DESCRIPTION
2.1 GENERAL:
The First type of searchable encryption construction SSE is based on symmetric encryption,
where only a secret key is involved in the encryption and decryption processes. Owing to the
nature of symmetric encryption, it is not favorable for multiuser settings, and it has a secret
key distribution issue. To resolve the problem of SSE, public key encryption with keyword
search was subsequently introduced. The construction is based on asymmetric encryption,
where a pair of public and private keys is involved in the encryption and decryption
processes, which is suitable for multiuser of the PEKS scheme.
2.2 METHODOLOGIES
2.2.1MODULES NAME:
1. User Interface Design
2. Public Cloud Server
3. Trapdoor Key Centre
4. Data Controller
5.Data Receiver

DEPARTMENT OF CSE (SCET) 11 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

1. User Interface Design


In this module we design the windows for the project. These windows are used for secure
login for all users. To connect with server user must give their username and password then
only they can able to connect the server. If the user already exits directly can login into the
server else user must register their details such as username, password and Email id, into the
server. Server will create the account for the entire user to maintain upload and download
rate. Name will be set as user id. Logging in is usually used to enter a specific page.

Home
Page

Server
User
Database
Login

Register
&Login
Page

DEPARTMENT OF CSE (SCET) 12 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

2. Public Cloud Server


This is the first module the public cloud server has a login with a mail id and password. The
Cloud server has a data controller information will be shows details. Public cloud server has a
trapdoor key. There was a having information of a data receiver. It will have a request to a
key. Public cloud server has a store all files information.

Public Cloud
Server Login

Data Controller Trapdoor key Data Receiver Request


Information

Stored File
Information

Data Base

DEPARTMENT OF CSE (SCET) 13 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

3. Trapdoor Key Centre


This is the Second module of this project the trapdoor key center has a login with a mail id
and password. A trapdoor key has a key test it is generated original key or duplicate key. It
also has a verify a key then it will send to the data receiver.

Trapdoor Key
Centre
Register

Login

Key Test Verify Key

Data Base

DEPARTMENT OF CSE (SCET) 14 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

4. Data Controller
This is the third module of this project. In this project data controller has a register with all
details and login with a user id and password. The Data controller has a store a file the file
has an upload with a text file to the data.

Data Controller Register

Login

Store File

Data Base

DEPARTMENT OF CSE (SCET) 15 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

5. Data Receiver
This is the fourth module of this project. Data Receiver has a register with all details and
then login with an email id and password. Data receiver has a search the data controller has a
store we can search a data. The trapdoor key response it will get a key response. Data receiver
has a key verification the keys are verify the correct then it will have a decrypt a file
download.

Data Receiver
Register

Login

Search Trapdoor Key Key Decrypt File


Response Verification Download

Data Base

DEPARTMENT OF CSE (SCET) 16 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

2.3 GIVEN INPUT EXPECTED OUTPUT:

 User Interface Design


Input : Enter Login name and Password
Output : If valid user name and password then directly open the home page otherwise show
error message and redirect to the registration page.
 Data Receiver
Input : Data receiver has an Email and Password
Output: If valid user name and password then directly open the Data receiver home page
otherwise show error message and redirect to the data receiver login page.
 Data Controller
Input : Enter the Email and password
Output : If valid email and password then directly open the data controller home page
otherwise show error message and redirect to the data controller login page.
 Trapdoor Key Centre
Input : Enter the mail and password
 Output: If valid mail and password then directly open the Trapdoor Key Centre
home page otherwise show error message and redirect to the Trapdoor Key Centre
login page.
 Public Cloud Server
Input : Enter the mail id and password
Output: If valid Cloud Server id and password then directly open the public Cloud Server
home page otherwise show error message and redirect to the public cloud Server login page.

DEPARTMENT OF CSE (SCET) 17 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

2.4 TECHNIQUE USED OR ALGORITHM USED


2.4.1 Proposed Algorithm
PEKS schemes
The searchable encryption construction SSE is based on symmetric encryption, where only a
secret key is involved in the encryption and decryption processes. Owing to the nature of
symmetric encryption, it is not favorable for multiuser settings, and it has a secret key
distribution issue. To resolve the problem of SSE, public key encryption with keyword search
was subsequently introduced. The construction is based on asymmetric encryption, where a
pair of public and private keys is involved in the encryption and decryption processes, which
is suitable for multiuser settings. illustrates the structure of the PEKS scheme.
Public Key Encryption with Keyword Search (PEKS) allows a user to encrypt data in such a
way that a search can be performed over the encrypted data without decrypting it. This is
particularly useful in scenarios where data is stored in a cloud environment and the user
wants to search for specific keywords without revealing the underlying data.
Key Concepts
1. Public Key Encryption: A cryptographic system that uses pairs of keys: a public key for
encryption and a private key for decryption.
2. Keywords: Terms or phrases that are used to search the encrypted data.
3. Ciphertexts: Encrypted data that is generated from the original plaintext data.
Basic PEKS Algorithm Components
1. Key Generation:
 Generate a pair of public/private keys for the user.
 The public key is used for encryption, while the private key is used for decryption.
2. Encryption:
 The data owner encrypts the data along with the keywords.
 The encryption process typically involves:
 Selecting a keyword.
 Generating a ciphertext that includes the encrypted data and a representation of the
keyword.

3. Trapdoor Generation:
 The data owner generates a trapdoor for a specific keyword using their private key.

DEPARTMENT OF CSE (SCET) 18 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

 This trapdoor is used to search the encrypted data.


4. Search Operation:
 The searcher uses the trapdoor to search over the ciphertext.
 The search algorithm checks if the keyword exists in the encrypted data without
revealing the data itself.
5. Decryption:
 If a match is found, the searcher can then retrieve the relevant ciphertext and use the
private key to decrypt it.
Public Key Encryption with Keyword Search (PEKS) schemes offer a powerful mechanism
for securely searching encrypted data. By allowing users to perform keyword searches
without revealing sensitive information, PEKS plays a crucial role in enhancing data privacy
and security in cloud environments. Understanding the underlying algorithms and their
implementations is essential for effectively utilizing PEKS web applications.

DEPARTMENT OF CSE (SCET) 19 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

2.4.2 EXISTING SYSTEM


keyword-based on trusted the third party
the aim of making sure that security considerations are complied with in any cloud
computing environment . So as to confront the disclosure of data, a typical solution shall
be private data encrypting prior to their upload onto the cloud server. Firstly, we must
verify that any data are invisible for the external users as well as administrators of the
cloud. Secondly, we have some strict limitations of processing on encrypted data. For
instance, standard searching algorithms of plain text are no longer in use nowadays. So as
to carry out a keyword-based query, we should decrypt all data set regardless of the tiny
matching result set

DEPARTMENT OF CSE (SCET) 20 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

CHAPTER 3
REQUIREMENTS ENGINEERING
3.1 GENERAL
We have conducted experiments on our collected dataset and extensive results have
demonstrated that our model outperforms all other existing models. In the future, we will
investigate more tasks under this framework, such as event summarization and event attribute
mining in social media.
3.2 HARDWARE REQUIREMENTS
The hardware requirements may serve as the basis for a contract for the implementation of
the system and should therefore be a complete and consistent specification of the whole
system. They are used by software engineers as the starting point for the system design. It
should what the system does and not how it should be implemented.
 PROCESSOR : DUAL CORE 2 DUOS.
 RAM : 8GB DD RAM
 HARD DISK : 250 GB

3.3 SOFTWARE REQUIREMENTS


The software requirements document is the specification of the system. It should include both
a definition and a specification of requirements. It is a set of what the system should do rather
than how it should do it. The software requirements provide a basis for creating the software
requirements specification. It is useful in estimating cost, planning team activities,
performing tasks and tracking the teams and tracking the team’s progress throughout the
development activity.

SOFTWARE REQUIREMENTS
 FRONT END : J2EE (JSP, SERVLET)
 BACK END : MY SQL 5.5
 OPERATING SYSTEM : WINDOWS 10
 IDE : ECLIPSE

DEPARTMENT OF CSE (SCET) 21 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

3.3.1 GENERAL
This chapter is about the software language and the tools used in the development of the
project. The platform used here is JAVA. The Primary languages are JAVA,J2EE and J2ME.
In this project J2EE is chosen for implementation.
3.3.2 FEATURES OF JAVA
3.3.3 THE JAVA FRAMEWORK
Java is a programming language originally developed by James
Gosling at Microsystems and released in 1995 as a core component of Sun Microsystems'
Java platform. The language derives much of its syntax from C and C++ but has a simpler
object model and fewer low-level facilities. Java applications are typically compiled to byte
code that can run on any Java Virtual Machine (JVM) regardless of computer architecture.
Java is general-purpose, concurrent, class-based, and object-oriented, and is specifically
designed to have as few implementation dependencies as possible. It is intended to let
application developers "write once, run anywhere".
Java is considered by many as one of the most influential programming languages of
the 20th century, and is widely used from application software to web applications the java
framework is a new platform independent that simplifies application development internet.
Java technology's versatility, efficiency, platform portability, and security make it the ideal
technology for network computing. From laptops to datacenters, game consoles to scientific
supercomputers, cell phones to the Internet, Java is everywhere!
3.3.4 OBJECTIVES OF JAVA
To see places of Java in Action in our daily life, explore java.com.

WHY SOFTWARE DEVELOPERS CHOOSE JAVA


Java has been tested, refined, extended, and proven by a dedicated community. And
numbering more than 6.5 million developers, it's the largest and most active on the planet.
With its versatility, efficiency, and portability, Java has become invaluable to developers by
enabling them to:
 Write software on one platform and run it on virtually any other platform
 Create programs to run within a Web browser and Web services
 Develop server-side applications for online forums, stores, polls, HTML forms
processing, and more
 Combine applications or services using the Java language to create highly customized
applications or services
DEPARTMENT OF CSE (SCET) 22 | P a g e
Trapdoor Privacy Data In PKE With Keyword Search

 Write powerful and efficient applications for mobile phones, remote processors, low-
cost consumer products, and practically any other device with a digital heartbeat

SOME WAYS SOFTWARE DEVELOPERS LEARN JAVA


Today, many colleges and universities offer courses in programming for the Java platform. In
addition, developers can also enhance their Java programming skills by reading Sun's
java.sun.com Web site, subscribing to Java technology-focused newsletters, using the Java
Tutorial and the New to Java Programming Center, and signing up for Web, virtual, or
instructor-led courses.
OBJECTORIENTED
To be an Object Oriented language, any language must follow at least the four
characteristics.
1. Inheritance :It is the process of creating the new classes and using the behavior of the
existing classes by extending them just to reuse the existing code and adding addition a
feature as needed.
2. Encapsulation: It is the mechanism of combining the information and providing the
abstraction.
3. Polymorphism: As the name suggest one name multiple form, Polymorphism is the way of
providing the different functionality by the functions having the same name based on the
signatures of the methods.
4. Dynamic binding: Sometimes we don't have the knowledge of objects about their specific
types while writing our code. It is the way of providing the maximum functionality to a
program about the specific type at runtime.
3.3.5 JAVA SWING OVERVIEW
ABSTRACT WINDOW TOOLKIT (AWT) IS CROSS-PLATFORM
Swing provides many controls and widgets to build user interfaces with. Swing class names
typically begin with a J such as JButton, JList, JFrame. This is mainly to differentiate them
from their AWT counterparts and in general is one-to-one replacements. Swing is built on the
concept of Lightweight components vs AWT and SWT's concept of Heavyweight
components. The difference between the two is that the Lightweight components are rendered
(drawn) using purely Java code, such as drawLine and drawImage, whereas Heavyweight
components use the native operating system to render the components.Some components in
Swing are actually heavyweight components. The top-level classes and any derived from
them are heavyweight as they extend the AWT versions. This is needed because at the root of

DEPARTMENT OF CSE (SCET) 23 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

the UI, the parent windows need to be provided by the OS. These top-level classes
include JWindow, JFrame, JDialog and JApplet. All Swing components to be
rendered to the screen must be able to trace their way to a root window of one of those
classes.
NOTE: It generally it is not a good idea to mix heavyweight components with
lightweight components (other than as previously mentioned) as you will encounter
layering issues, e.g., a lightweight component that should appear "on top" ends up
being obscured by a heavyweight component. The few exceptions to this include using
heavyweight components as the root pane and for popup windows. Generally
speaking, heavyweight components will render on top of lightweight components and
will not be consistent with the look and feel being used in Swing. There are
exceptions, but that is an advanced topic. The truly adventurous may want to consider
reading this article from Sun on mixing heavyweight and lightweight components.
3.3.6 EVOLUTION OF COLLECTION FRAMEWORK:
Almost all collections in Java are derived from the java.util.Collection interface. Collection
defines the basic parts of all collections. The interface states the add() and remove() methods
for adding to and removing from a collection respectively. Also required is the toArray()
method, which converts the collection into a simple array of all the elements in the collection.
Finally, the contains() method checks if a specified element is in the collection. The
Collection interface is a subinterface of java.util.Iterable, so the iterator() method is also
provided. All collections have an iterator that goes through all of the elements in the
collection. Additionally, Collection is a generic. Any collection can be written to store any
class. For example, Collection<String> can hold strings, and the elements from the collection
can be used as strings without any casting required.
There are three main types of collections:
 Lists: always ordered, may contain duplicates and can be handled the same way as
usual arrays
 Sets: cannot contain duplicates and provide random access to their elements
 Maps: connect unique keys with values, provide random access to its keys and may
host duplicate values
LIST

DEPARTMENT OF CSE (SCET) 24 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

Lists are implemented in the JCF via the java.util.List interface. It defines a list as essentially
a more flexible version of an array. Elements have a specific order, and duplicate elements
are allowed. Elements can be placed in a specific position. They can also be searched for
within the list. Two concrete classes implement List. The first is java.util.ArrayList, which
implements the list as an array. Whenever functions specific to a list are required, the class
moves the elements around within the array in order to do it. The other implementation
is java.util.LinkedList. This class stores the elements in nodes that each have a pointer to the
previous and next nodes in the list. The list can be traversed by following the pointers, and
elements can be added or removed simply by changing the pointers around to place the node
in its proper place.
SET:
Java's java.util.Set interface defines the set. A set can't have any duplicate elements in it.
Additionally, the set has no set order. As such, elements can't be found by index. Set is
implemented by java.util.HashSet,java.util.LinkedHashSet, and java.util.TreeSet. HashSet
uses a hash table. More specifically, it uses a java.util.HashMap to store the hashes and
elements and to prevent duplicates. Java.util.LinkedHashSet extends this by creating a doubly
linked list that links all of the elements by their insertion order. This ensures that the iteration
order over the set is predictable. java.util.TreeSet uses a red-black tree implemented by
a java.util.TreeMap. The red-black tree makes sure that there are no duplicates. Additionally,
it allows Tree Set to implement java.util.SortedSet.
The java.util.Set interface is extended by the java.util.SortedSet interface. Unlike a regular
set, the elements in a sorted set are sorted, either by the element's compareTo() method, or a
method provided to the constructor of the sorted set. The first and last elements of the sorted
set can be retrieved, and subsets can be created via minimum and maximum values, as well as
beginning or ending at the beginning or ending of the sorted set. The SortedSet interface is
implemented by java.util.TreeSet
java.util.SortedSet is extended further via the java.util.NavigableSet interface. It's similar to
SortedSet, but there are a few additional methods. The floor(), ceiling(), lower(), and higher()
methods find an element in the set that's close to the parameter. Additionally, a descending
iterator over the items in the set is provided. As with SortedSet, java.util.TreeSet implements
NavigableSet.
MAP:

DEPARTMENT OF CSE (SCET) 25 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

Maps are defined by the java.util.Map interface in Java. Maps are simple data structures that
associate a key with a value. The element is the value. This lets the map be very flexible. If
the key is the hash code of the element, the map is essentially a set. If it's just an increasing
number, it becomes a list. Maps are implemented
by java.util.HashMap, java.util.LinkedHashMap, and java.util.TreeMap. HashMap uses a
hash table. The hashes of the keys are used to find the values in various buckets.
LinkedHashMap extends this by creating a doubly linked list between the elements. This
allows the elements to be accessed in the order in which they were inserted into the map.
TreeMap, in contrast to HashMap and LinkedHashMap, uses a red-black tree. The keys are
used as the values for the nodes in the tree, and the nodes point to the values in the map
THREAD:
Simply put, a thread is a program's path of execution. Most programs written today run as a
single thread, causing problems when multiple events or actions need to occur at the same
time. Let's say, for example, a program is not capable of drawing pictures while reading
keystrokes. The program must give its full attention to the keyboard input lacking the ability
to handle more than one event at a time. The ideal solution to this problem is the seamless
execution of two or more sections of a program at the same time.

CREATING THREADS
Java's creators have graciously designed two ways of creating threads: implementing an
interface and extending a class. Extending a class is the way Java inherits methods and
variables from a parent class. In this case, one can only extend or inherit from a single parent
class. This limitation within Java can be overcome by implementing interfaces, which is the
most common way to create threads. (Note that the act of inheriting merely allows the class
to be run as a thread. It is up to the class to start() execution, etc.)
Interfaces provide a way for programmers to lay the groundwork of a class. They are used to
design the requirements for a set of classes to implement. The interface sets everything up,
and the class or classes that implement the interface do all the work. The different set of
classes that implement the interface have to follow the same rules.
3.3.7 CONCLUSION
Swing's high level of flexibility is reflected in its inherent ability to override the native
host operating system (OS)'s GUI controls for displaying itself. Swing "paints" its controls
using the Java 2D APIs, rather than calling a native user interface toolkit. The Java thread
scheduler is very simple. All threads have a priority value which can be changed dynamically

DEPARTMENT OF CSE (SCET) 26 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

by calls to the threads setPriority() method . Implementing the above concepts in our project
to do the efficient work among the Server.

3.4 FUNCTIONAL REQUIREMENTS


Module 1: Public Cloud Server
1. User Login:
 The system must allow users to log in using a registered email ID and
password.
2. Data Controller Information:
 The server must display information related to data controllers after successful
login.
3. Trapdoor Key Management:
 The server must generate and store a unique trapdoor key for secure operations.
4. Data Receiver Information:
 The server must maintain records of data receivers and their associated requests
for keys.
5. File Storage:
 The server must store all files uploaded by data controllers, along with relevant
metadata.
Module 2: Trapdoor Key Centre
1. User Login:
 The trapdoor key centre must allow login via email ID and password.
2. Key Testing:
 The system must be able to test whether a key is original or a duplicate.
3. Key Verification:
 The system must provide functionality to verify a key and send the verification
result to the data receiver.
Module 3: Data Controller
1. User Registration and Login:
 Data controllers must be able to register with their details and log in using a
user ID and password.
2. File Upload:

DEPARTMENT OF CSE (SCET) 27 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

 Data controllers must be able to upload text files to the system for storage.
3. File Management:
 Data controllers must have the ability to view, delete, or manage their
uploaded files.
Module 4: Data Receiver
1. User Registration and Login:
 Data receivers must be able to register with their details and log in using an
email ID and password.
2. Data Search:
 Data receivers must be able to search for stored files from data controllers.
3. Key Response Handling:
 The system must respond to key requests from data receivers.
4. Key Verification:
 Data receivers must be able to verify the correctness of the keys received.
5. File Decryption and Download:
 Upon successful key verification, data receivers must be able to decrypt and
download the files.
3.5 NON-FUNCTIONAL REQUIREMENTS
1 Security:
 User credentials must be stored securely using encryption methods.
 All data transfers must be encrypted to protect sensitive information.
2. Performance:
 The system should handle a specified number of concurrent users (e.g., 500) without
significant performance degradation.
 File uploads and searches should be completed within a reasonable time frame (e.g.,
under 5 seconds for files under 10MB).
3. Scalability:
 The system must be designed to scale horizontally to accommodate an increasing
number of users and files without significant changes to the architecture.
4. Usability:
 The user interface must be intuitive and easy to navigate for all user types (public
cloud server users, data controllers, data receivers).
 Help documentation must be available to assist users in navigating the system.

DEPARTMENT OF CSE (SCET) 28 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

5.Reliability:
 The system should have a high uptime percentage (e.g., 99.9%).
 Regular backups should be conducted to prevent data loss.
6. Compliance:
 The system must comply with relevant data protection regulations (e.g., GDPR,
HIPAA) to ensure user privacy and data security.
7. Maintainability:
 The system should be modular, making it easy to update or add new features with
minimal disruption.
 Code should be well-documented to facilitate maintenance and future development.

DEPARTMENT OF CSE (SCET) 29 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

CHAPTER 4
DESIGN ENGINEERING
4.1 GENERAL
Design Engineering deals with the various UML [Unified Modelling language]
diagrams for the implementation of project. Design is a meaningful engineering
representation of a thing that is to be built. Software design is a process through which the
requirements are translated into representation of the software. Design is the place where
quality is rendered in software engineering. Design is the means to accurately translate
customer requirements into finished product.

4.1.1 USE CASE DIAGRAM

Login Register/Login

Data Controller
Data Controller Information Store File

Data Receiver info

Public Cloud
Server
Trapdoor Key
DR Register

Database

PC Request
DR Login

Stored File Information


Search

Data Receiver
TKC Login Trapdoor Key Response

Key Verification
Key Test
Trapdoor Key
Centre

Decrypt File Download


Verify Key

DEPARTMENT OF CSE (SCET) 30 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

EXPLANATION:
The main purpose of a use case diagram is to show that a we have an actor is a data user, data
owner and Cloud server. Different types of actions perform. Data user is an actor to perform
some actions on search file, View responses and View search keywords. Data owner is is an
actor. it will have an action on an upload file and view uploaded files. Cloud server can also
an actor. It will have an action on view responses, View files, Match keywords, view data
users and view data owners this all perform by the actor.

4.1.2 CLASS DIAGRAM

Public Cloud Server


login Trapdoor Key Centre
login
datacontrollerinfo()
trapdoorkey()
keytest()
datareceiverinfo()
verifykey()
requests()
storedfileinfo()

Data Receiver
register
login

searc()
trapdoorkeyresponse()
Database
keyverification()
cloudserver decryptfiledownload()
trapdoorkeycentre
datacontroller Data Controller
datareceiver register
login
trapdoorkey()
requests() storefile()
keyverified()
decryptfiledownload()

DEPARTMENT OF CSE (SCET) 31 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

EXPLANATION
In this class diagram represents how the classes with attributes and methods are linked
together to perform the verification with security. From the above diagram shown the various
classes involved in our project data user has a class it has a attributes and operations. data
user has a login is an attribute in the class. Search files, view responses and view search
keywords this all are operations. data owner is a class. Registration and login are the
attributes. Upload files and View Uploaded files these are the are the operations. Cloud server
and database with the linking together all information’s storing at a database.

4.1.3 OBJECT DIAGRAM

Public Cloud Server Trapdoor Key Centre

Data Receiver

Data Controller
Database

EXPLANATION:
In the above digram tells about the flow of objects between the classes. It is a diagram that
shows a complete or partial view of the structure of a modeled system. In this object diagram
represents how the classes with attributes and methods are linked together to perform the
verification with security. Data user is link with a data owner information. Data user and data
owner is with a cloud server. All information gathers at a database.

DEPARTMENT OF CSE (SCET) 32 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

4.1.4 COMPONENT DIAGRAM


Public Cloud Login Data Controller Trapdoor
Server Information Key

Key Test Trapdoor Key Stored File Request PC Data


Centre Information Receiver

Data Search Trapdoor Key


Verify Key Store File Data Receiver Response
Controller

Decrypt File Key


Download Verification

EXPLANATION

In the Unified Modeling Language, a component diagram depicts how components are wired
together to form larger components and or software systems. User gives main query and it
converted into sub queries and sends through data dissemination to data aggregators. Data
user can connect with a data owner information. Data owner can also a depend on a cloud
server all store at a database. Results are to be showed to user by database aggregators. All
boxes are components and arrow indicates dependencies.

DEPARTMENT OF CSE (SCET) 33 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

4.1.5 DEPLOYMENT DIAGRAM

Public Cloud Trapdoor Key


Server Centre

Register

Data Receiver

Login

Database Data Controller

EXPLANATION:
Deployment Diagram is a type of diagram that specifies the physical hardware on which the
software system will execute. It also determines how the software is deployed on the
underlying hardware. Data user can first login.Afterwords it will connect with a database.

DEPARTMENT OF CSE (SCET) 34 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

4.1.6 SEQUENCE DIAGRAM


Data Controller Data Receiver Trapdoor Key Public Cloud Database
Centre Server

Register

Register

Login

Login

Login

Login

Data Controller info

Search

Store File

Key Test
Stored File Information

Trapdoor Key Response Trapdoor Key

Data Receiver Info

Key Verification

Request

Verify Key

Decrypt File Download

EXPLANATION:
Sequence diagrams are graphical representations of workflows of stepwise activities
and actions with support for choice, iteration and concurrency. In the Unified Modeling
Language, sequence diagrams can be sequential sequence diagram data user data owner and
cloud server in connected with a database. It is used to describe the business and operational
step-by-step workflows of components in a system. In the Uml has clearly in sequence order.

DEPARTMENT OF CSE (SCET) 35 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

4.1.7 COLLABORATION DIAGRAM


Data
Controller Trapdoor Key
Centre
12: Trapdoor Key Response

1: Register
9: Store File

Data
13: Trapdoor Key
Receiver
5: Login 17: Verify Key

10: Key Test


4: Login
6: Login

2: Register
Public Cloud 8: Search
Server 15: Key Verification
Database 18: Decrypt File Download

3: Login
7: Data Controller info
11: Stored File Information
14: Data Receiver Info
16: Request

EXPLANATION:
A collaboration diagram, also called a communication diagram or interaction diagram,
It is also a communicate with a data user data owner with a database. Cloud server has
communicated with a database. It is an illustration of the relationships and interactions among
software objects in the Unified Modeling Language (UML).

DEPARTMENT OF CSE (SCET) 36 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

4.1.8 STATE DIAGRAM

Database

Public Cloud Server

Trapdor Key Centre Data Controller Data Receiver

Data Controller Information


Key Test Search

Traapdoor key

Trapdoor Key Response


Verify Key
Data Receiver
Store File
Key Verification

Request

Decrypt File Download


Stored File Information

Database

EXPLANATION:
State diagram are a loosely defined diagram to show workflows of stepwise activities and
actions, with support for choice, iteration and concurrency. State diagrams require that the
system described a Data user has a login. After it has a performs an action. Data owner has
alogin.Data owner can have an upload data and view uploaded data operation. Cloud server
has also a perform an action it will have an action on a database.

DEPARTMENT OF CSE (SCET) 37 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

4.1.9 ACTIVITY DIAGRAM

Database

Register

Login

Public Cloud Server


Data Receiver
Trapdor Key Centre Data Controller

Trapdoor Key
Search

Key Test
Data Controller Information
Store File Trapdoor Key Response

Data Receiver Verify Key


Key Verification

Request

Decrypt File Download


Stored File Information

Database

EXPLANATION:
Activity diagrams are graphical representations of workflows of stepwise activities of
a data user data owner and cloud server actions with support for choice, iteration and
concurrency. In the Unified Modeling Language, activity diagrams can be used to describe
the business and operational step-by-step workflows of components in a system. Data user
can also a search a file view a responses file and it will search with a keyword. Data owner
can also an upload a file and then view uploaded file the information was a gather at a
database. Cloud server can also have a view request view files and Matched keyword it was
perform at step wise manner. An activity diagram shows the overall flow of control.

DEPARTMENT OF CSE (SCET) 38 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

4.1.10 DATA FLOW DIAGRAM


Level 0
Register

Login Data base

Verify
Home Page Detail Error page
s

Level 1 Data Controller


Information

Trapdoor Key
Register
Public Cloud
Server
Data Receiver
Login

Request
DEPARTMENT OF CSE (SCET) 39 | P a g e

Search File
Information
Trapdoor Privacy Data In PKE With Keyword Search

EXPLANATION:
A data flow diagram (DFD) is a graphical representation of the "flow" of data through an
information system, modeling its process aspects. Often they are a preliminary step used to
create an overview of the system which can later be elaborated. DFDs can also be used for
the visualization of data processing (structured design).
A DFD shows what kinds of data will be input to and output from the system, where
the data will come from and go to, and where the data will be stored. data user can also a
login. Data user can have a search keyword and have a requested file. Data owner can also
have a login. Data owner can also have an uploaded file and data user request. Cloud server
can also a login. Cloud server can also have a data owner information data users information
data .Cloud server can also have a keys. Cloud server can also have a a file attacker details.
All information is gathered and store at a database.

DEPARTMENT OF CSE (SCET) 40 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

4.1.11 E-R DIAGRAM

Name Passwor

Public Cloud Server Login

Data Controller Stored File


Info Request Info

Trapdoor Key Data Receiver

Nam Passwor

Verify
Trapdoor Login Data base
Key Centre Detail

Key Test Verify Key


Nam Passwor

Passwor Data
Name Login
d Controller

Data Receiver Login


Store File
Search
Key Verification
Trapdoor
Key Decrypt File
Response Download

DEPARTMENT OF CSE (SCET) 41 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

EXPLANATION:
Entity-Relationship Model (ERM) is a data user has a username and password if the user’s
name and password have a correct then it will login. After login data user can search file and
have a requested file. Data owner has a username and password the username and password
has correct it will verify with a database. Data owner can also have an upload a file and then
have a requested send. Cloud server can also have a username and password user name and
password has a correct it will verify from the database. Cloud server can also have a data
owner information. Cloud server can also have a data user information. Cloud server can also
have a stored a files information details. Cloud server can also have a send keys. Cloud server
can also have an attacker detail.

DEPARTMENT OF CSE (SCET) 42 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

4.2 SYSTEM ARCHITECTURE

Data Controller Information

Public Cloud Trapdoor Key


Controller Login
Data Receiver

Request

Stored File Information

Key Test
Trapdoor Key
Login
Centre Verify Key
Database

Register Store File


Data Controller

Login

Search

Register
Trapdoor Key Response
Data Receiver

Login Key Verification

Decrypt File Download

DEPARTMENT OF CSE (SCET) 43 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

EXPLANATION

In this project public cloud server has a login with a user id and password. It will validate the
user id and password has a given correct. After successfully it will be login home page. It will
display a data controller information of all details. It has a Trapdoor Key. The public cloud
server has a data receiver information details. The public cloud server has a request to the
receiver key. It will have a Store all file information which has a stored in a data controller.
Trapdoor key centre has a login with a user id and password. It will validate the user id and
password has a given correct. After successfully it will be login home page. It will display a
key test whether it is a correct key are not. It will verify a key. Data controller has a register
with a detail and then login with a user id and password. Data controller has a store a file it
will be stores at a database. Data receiver has a register with a details and then login with a
user id and password. Data receiver has a search a file it will search from the database. Then
we have a get a key response. The data receiver has a key has a verification whether it has a
correct keyword or not. Then the data receiver has a decrypt a file download from the
database.

DEPARTMENT OF CSE (SCET) 44 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

CHAPTER 5
IMPLEMENTATION
5.1 GENERAL
CODING:
1.OWNERBEAN
package com.beans;

public class OwnerBean {

private String name, email, pwd, mob,age;

public String getAge() {


return age;
}

public void setAge(String age) {


this.age = age;
}

public String getName() {


return name;
}

public void setName(String name) {


this.name = name;
}

public String getEmail() {


return email;
}

DEPARTMENT OF CSE (SCET) 45 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

public void setEmail(String email) {


this.email = email;
}

public String getPwd() {


return pwd;
}

public void setPwd(String pwd) {


this.pwd = pwd;
}

public String getMob() {


return mob;
}

public void setMob(String mob) {


this.mob = mob;
}
}

DEPARTMENT OF CSE (SCET) 46 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

2.UPLOADBEAN
package com.beans;

import java.io.InputStream;

public class UploadBean {


private String filename, content, enc, tkey,fid,email,label,branch,dept,op;
public String getBranch() {
return branch;
}

public void setBranch(String branch) {


this.branch = branch;
}

public String getDept() {


return dept;
}

public void setDept(String dept) {


this.dept = dept;
}

public String getOp() {


return op;
}

public void setOp(String op) {


this.op = op;
}

public String getLabel() {


return label;

DEPARTMENT OF CSE (SCET) 47 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

public void setLabel(String label) {


this.label = label;
}

public String getFilename() {


return filename;
}

public void setFilename(String filename) {


this.filename = filename;
}

public String getContent() {


return content;
}

public void setContent(String content) {


this.content = content;
}

public String getEnc() {


return enc;
}

public void setEnc(String enc) {


this.enc = enc;
}

public String getTkey() {


return tkey;
}

DEPARTMENT OF CSE (SCET) 48 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

public void setTkey(String tkey) {


this.tkey = tkey;
}

public String getFid() {


return fid;
}

public void setFid(String fid) {


this.fid = fid;
}

public String getEmail() {


return email;
}

public void setEmail(String email) {


this.email = email;
}

private InputStream photo1;


public void setPhoto1(InputStream photo1) {
// TODO Auto-generated method stub
this.photo1 = photo1;
}

public InputStream getPhoto() {


// TODO Auto-generated method stub
return photo1;
}
}

DEPARTMENT OF CSE (SCET) 49 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

3.ALGORITHM.JAVA
package com.servlets;
import javax.crypto.Cipher;
import javax.crypto.SecretKey;
import javax.crypto.SecretKeyFactory;
import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.PBEKeySpec;
import javax.crypto.spec.SecretKeySpec;
import java.nio.charset.StandardCharsets;
import java.security.InvalidAlgorithmParameterException;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
import java.security.spec.InvalidKeySpecException;
import java.security.spec.KeySpec;
import java.util.Base64;
import javax.crypto.BadPaddingException;
import javax.crypto.IllegalBlockSizeException;
import javax.crypto.NoSuchPaddingException;
public class Algorithm
{
/* Private variable declaration */
private static final String SECRET_KEY = "123456789";
private static final String SALTVALUE = "abcdefg";

/* Encryption Method */
public static String encrypt(String strToEncrypt)
{
try
{
/* Declare a byte array. */
byte[] iv = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
IvParameterSpec ivspec = new IvParameterSpec(iv);
/* Create factory for secret keys. */

DEPARTMENT OF CSE (SCET) 50 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

SecretKeyFactory factory =
SecretKeyFactory.getInstance("PBKDF2WithHmacSHA256");
/* PBEKeySpec class implements KeySpec interface. */
KeySpec spec = new PBEKeySpec(SECRET_KEY.toCharArray(),
SALTVALUE.getBytes(), 65536, 256);
SecretKey tmp = factory.generateSecret(spec);
SecretKeySpec secretKey = new SecretKeySpec(tmp.getEncoded(), "AES");
Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");
cipher.init(Cipher.ENCRYPT_MODE, secretKey, ivspec);
/* Retruns encrypted value. */
return Base64.getEncoder()
.encodeToString(cipher.doFinal(strToEncrypt.getBytes(StandardCharsets.UTF_8)));
}
catch (InvalidAlgorithmParameterException | InvalidKeyException |
NoSuchAlgorithmException | InvalidKeySpecException | BadPaddingException |
IllegalBlockSizeException | NoSuchPaddingException e)
{
System.out.println("Error occured during encryption: " + e.toString());
}
return null;
}

/* Decryption Method */
public static String decrypt(String strToDecrypt)
{
try
{
/* Declare a byte array. */
byte[] iv = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
IvParameterSpec ivspec = new IvParameterSpec(iv);
/* Create factory for secret keys. */
SecretKeyFactory factory =
SecretKeyFactory.getInstance("PBKDF2WithHmacSHA256");
/* PBEKeySpec class implements KeySpec interface. */

DEPARTMENT OF CSE (SCET) 51 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

KeySpec spec = new PBEKeySpec(SECRET_KEY.toCharArray(),


SALTVALUE.getBytes(), 65536, 256);
SecretKey tmp = factory.generateSecret(spec);
SecretKeySpec secretKey = new SecretKeySpec(tmp.getEncoded(), "AES");
Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5PADDING");
cipher.init(Cipher.DECRYPT_MODE, secretKey, ivspec);
/* Retruns decrypted value. */
return new String(cipher.doFinal(Base64.getDecoder().decode(strToDecrypt)));
}
catch (InvalidAlgorithmParameterException | InvalidKeyException |
NoSuchAlgorithmException | InvalidKeySpecException | BadPaddingException |
IllegalBlockSizeException | NoSuchPaddingException e)
{
System.out.println("Error occured during decryption: " + e.toString());
}
return null;
}
/* Driver Code */
public static void main(String[] args)
{
/* Message to be encrypted. */
String originalval = "AES Encryption";
/* Call the encrypt() method and store result of encryption. */
String encryptedval = encrypt(originalval);
/* Call the decrypt() method and store result of decryption. */
String decryptedval = decrypt(encryptedval);
/* Display the original message, encrypted message and decrypted message on the
console. */
System.out.println("Original value: " + originalval);
System.out.println("Encrypted value: " + encryptedval);
System.out.println("Decrypted value: " + decryptedval);
}
}

DEPARTMENT OF CSE (SCET) 52 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

4. GENERATE TRAPDOOR.JAVA
package com.servlets;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Statement;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import com.Dao.DBConnection;

/**
* Servlet implementation class GTrapdoor
*/
@WebServlet("/GTrapdoor")
public class GTrapdoor extends HttpServlet {
private static final long serialVersionUID = 1L;

/**
* @see HttpServlet#HttpServlet()
*/
public GTrapdoor() {
super();
// TODO Auto-generated constructor stub
}

/**

DEPARTMENT OF CSE (SCET) 53 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse


response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
PrintWriter pw=response.getWriter();
HttpSession session=request.getSession();
/*String uid=(String)session.getAttribute("email");*/
String uid=request.getParameter("email");
String sk = com.Dao.PortNumber.getSk();
String mk = com.Dao.PortNumber.getMk();
/*String trapdoorkey=DBConnection.getkey(fid);*/
System.out.println("kkkkkkkkk"+uid);
Connection con=DBConnection.connect();
/*
try {
Statement st=con.createStatement();
int i=st.executeUpdate("insert into keygen
values('"+sk+"','"+mk+"','"+uid+"') ");
response.sendRedirect("Setup1.jsp");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}*/
try {
String sql = "select * from keygen where uid='" + uid + "' ";
if (DBConnection.getData(sql) == true) {
pw.println("<script type=\"text/javascript\">");
pw.println("alert('Already sk and mk Keys Generated
Successfully');");
pw.println("window.location='Setup1.jsp';</script>");
}else {
DEPARTMENT OF CSE (SCET) 54 | P a g e
Trapdoor Privacy Data In PKE With Keyword Search

Statement st=con.createStatement();
int i=st.executeUpdate("insert into keygen
values('"+sk+"','"+mk+"','"+uid+"') ");
pw.println("<script type=\"text/javascript\">");
pw.println("alert('sk and mk Keys For Data User("+uid+") are
Generated Successfully');");
pw.println("location='Setup1.jsp';");
pw.println("</script>");
} }catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
}

DEPARTMENT OF CSE (SCET) 55 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

5.SEARCHRESULT.JSP
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta charset="utf-8">
<meta content="width=device-width, initial-scale=1.0" name="viewport">

<title>DATA MINING</title>
<meta content="" name="description">
<meta content="" name="keywords">

<!-- Favicons
<link href="assets/img/favicon.png" rel="icon">
<link href="assets/img/apple-touch-icon.png" rel="apple-touch-icon">

Google Fonts
<link href="https://fonts.googleapis.com/css?
family=Open+Sans:300,300i,400,400i,600,600i,700,700i|
Roboto:300,300i,400,400i,500,500i,600,600i,700,700i|
Poppins:300,300i,400,400i,500,500i,600,600i,700,700i" rel="stylesheet">
-->
<!-- Vendor CSS Files -->
<link href="assets/vendor/aos/aos.css" rel="stylesheet">
<link href="assets/vendor/bootstrap/css/bootstrap.min.css" rel="stylesheet">
<link href="assets/vendor/bootstrap-icons/bootstrap-icons.css" rel="stylesheet">
<link href="assets/vendor/boxicons/css/boxicons.min.css" rel="stylesheet">
<link href="assets/vendor/glightbox/css/glightbox.min.css" rel="stylesheet">
<link href="assets/vendor/swiper/swiper-bundle.min.css" rel="stylesheet">

<!-- Template Main CSS File -->

DEPARTMENT OF CSE (SCET) 56 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

<link href="assets/css/style.css" rel="stylesheet">

<!-- =======================================================
* Template Name: BizLand - v3.9.1
* Template URL: https://bootstrapmade.com/bizland-bootstrap-business-template/
* Author: BootstrapMade.com
* License: https://bootstrapmade.com/license/ -->
<!-- ======================================================== -->
</head>

<body>

<!-- ======= Top Bar ======= -->


<section id="topbar" class="d-flex align-items-center">
<div class="container d-flex justify-content-center justify-content-md-between">
<div class="contact-info d-flex align-items-center">
<i class="bi bi-envelope d-flex align-items-center"><a
href="mailto:[email protected]">[email protected]</a></i>
<i class="bi bi-phone d-flex align-items-center ms-4"><span>+91
9581022022</span></i>
</div>
<div class="social-links d-none d-md-flex align-items-center">
<a href="#" class="twitter"><i class="bi bi-twitter"></i></a>
<a href="#" class="facebook"><i class="bi bi-facebook"></i></a>
<a href="#" class="instagram"><i class="bi bi-instagram"></i></a>
<a href="#" class="linkedin"><i class="bi bi-linkedin"></i></i></a>
</div>
</div>
</section>

<!-- ======= Header ======= -->


<header id="header" class="d-flex align-items-center">
<div class="container d-flex align-items-center justify-content-between">

DEPARTMENT OF CSE (SCET) 57 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

<h1 class="logo"><a href="####"><span></span></a></h1>

<nav id="navbar" class="navbar">


<ul>
<li><a class="nav-link scrollto " href="DataUserHome.jsp">Home</a></li>
<li><a class="nav-link scrollto" href="SearchReq.jsp">SEARCH FILE</a></li>
<li><a class="nav-link scrollto" href="Response.jsp">TRAPDOOR KEY
RESPONSE</a></li>
<li><a class="nav-link scrollto" href="CheckEquality.jsp">KEY
VERIFICATION</a></li>
<li><a class="nav-link scrollto" href="Decrypt.jsp">DECRYPT FILE
DOWNLOAD</a></li>

<li><a class="nav-link scrollto" href="Indexnew.html">LOGOUT</a></li>


</ul>
</nav>
</div>
</header>
<br><br><br><br><br>

<form action="SResult.jsp">
<table
width="100%" border="1 solid red">
<tr><td>File
Name</td>
<td><input
type="text" name="filename" value="" placeholder="Search filename" />
<td><input
type="submit" value="Search" class="special" /></td></tr>
</table>
</form>
</body> </html>

DEPARTMENT OF CSE (SCET) 58 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

CHAPTER 6
SNAPSHOTS6
6.1 GENERAL:
The final screenshot in this module shows the management interface for uploaded files. Users
can see a list of their files, including file names and upload dates, with action buttons
available for viewing or deleting specific files.
6.2 OUTPUT SNAPSHOTS

Figure 6.2.1 : User Login Page – Interface For User Authentication

Figure 6.2.2: Data Controller Register


Register With All Details

DEPARTMENT OF CSE (SCET) 59 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

Figure 6.2.3 : Storage File

DEPARTMENT OF CSE (SCET) 60 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

Figure 6.2.4 : Upload Data

Figure 6.2.5 : Public Cloud Server trapdoor key Trap

DEPARTMENT OF CSE (SCET) 61 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

Figure 6.2.5 : Trapdoor Key -> Generate Key

Figure 6.2.6 : Data Receiver Login

Figure 6.2.7 Search File -> Search With File Name -> It Shows
Encrypted Data -> Send
DEPARTMENT OF CSE (SCET) 62 | P a g e
Trapdoor Privacy Data In PKE With Keyword Search

Figure 6.2.8 : It Shows Encrypted Data -> Send

Figure 6.2.9 : Public Cloud Server Login

DEPARTMENT OF CSE (SCET) 63 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

Figure 6.2.10 : Request -> Send Decrypt Key

Figure 6.2.11 : Data Receiver Login

Figure 6.2.12 : Trapdoor Key Response -> Decrypt Key -> Copy

DEPARTMENT OF CSE (SCET) 64 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

Figure 6.2.13 : Key verification -> Give key -> Paste -> Send

Figure 6.2.14 : Trapdoor Key Center

User ID & Password : Key

DEPARTMENT OF CSE (SCET) 65 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

Figure 6.2.15 : Key test > Key Test

Figure 6.2.16 : Verify Key > Check

DEPARTMENT OF CSE (SCET) 66 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

Figure 6.2.17 : Data Receiver Login

DEPARTMENT OF CSE (SCET) 67 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

Figure 6.2.18 : Download Decrypt File

Figure 6.2.19 : Downloaded

DEPARTMENT OF CSE (SCET) 68 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

Figure 6.2.20 : Public Cloud Server

Figure 6.2.21 : Data controller Information Details

DEPARTMENT OF CSE (SCET) 69 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

Figure 6.2.22 : Data Receiver Information

Figure 6.2.23 : Storage File Information

DEPARTMENT OF CSE (SCET) 70 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

CHAPTER 7
SOFTWARE TESTING

7.1 GENERAL
The purpose of testing is to discover errors. Testing is the process of trying to discover
every conceivable fault or weakness in a work product. It provides a way to check the
functionality of components, sub assemblies, assemblies and/or a finished product It is the
process of exercising software with the intent of ensuring that the Software system meets its
requirements and user expectations and does not fail in an unacceptable manner. There are
various types of test. Each test type addresses a specific testing requirement.

7.2 DEVELOPING METHODOLOGIES


The test process is initiated by developing a comprehensive plan to test the general
functionality and special features on a variety of platform combinations. Strict quality control
procedures are used. The process verifies that the application meets the requirements
specified in the system requirements document and is bug free. The following are the
considerations used to develop the framework from developing the testing methodologies.

7.3TYPES OF TESTS
7.3.1 UNIT TESTING
Unit testing involves the design of test cases that validate that
the internal program logic is functioning properly, and that program input produce valid
outputs. All decision branches and internal code flow should be validated. It is the testing of
individual software units of the application .it is done after the completion of an individual
unit before integration. This is a structural testing, that relies on knowledge of its construction
and is invasive. Unit tests perform basic tests at component level and test a specific business
process, application, and/or system configuration. Unit tests ensure that each unique path of a
business process performs accurately to the documented specifications and contains clearly
defined inputs and expected results.

DEPARTMENT OF CSE (SCET) 71 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

7.3.2 FUNCTIONAL TEST


Functional tests provide systematic demonstrations that
functions tested are available as specified by the business and technical requirements, system
documentation, and user manuals.
Functional testing is centered on the following items:
Valid Input : identified classes of valid input must be accepted.
Invalid Input : identified classes of invalid input must be rejected.
Functions : identified functions must be exercised.
Output : identified classes of application outputs must be exercised.
Systems/Procedures : interfacing systems or procedures must be invoked.

7.3.3 SYSTEM TEST


System testing ensures that the entire integrated software system
meets requirements. It tests a configuration to ensure known and predictable results. An
example of system testing is the configuration oriented system integration test. System testing
is based on process descriptions and flows, emphasizing pre-driven process links and
integration points.

7.3.4 PERFORMANCE TEST


The Performance test ensures that the output be produced within
the time limits,and the time taken by the system for compiling, giving response to the users
and request being send to the system for to retrieve the results.
7.3.5 INTEGRATION TESTING
Software integration testing is the incremental integration testing
of two or more integrated software components on a single platform to produce failures
caused by interface defects.
The task of the integration test is to check that components or
software applications, e.g. components in a software system or – one step up – software
applications at the company level – interact without error.

DEPARTMENT OF CSE (SCET) 72 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

7.3.6 ACCEPTANCE TESTING


User Acceptance Testing is a critical phase of any project and
requires significant participation by the end user. It also ensures that the system meets the
functional requirements.

ACCEPTANCE TESTING FOR DATA SYNCHRONIZATION:


 The Acknowledgements will be received by the Sender Node after the Packets are
received by the Destination Node
 The Route add operation is done only when there is a Route request in need
 The Status of Nodes information is done automatically in the Cache Updation process

Non-Functional Testing
Focuses on the performance, reliability, and usability of the software.
•Performance Testing: Ensures the system performs well under load (e.g., load testing,
stress testing).
•Security Testing: Identifies vulnerabilities and ensures data protection.
•Usability Testing: Validates user-friendliness and intuitive design.
•Compatibility Testing: Checks software compatibility across different devices,
browsers, and operating systems.
•Scalability Testing: Ensures the application can scale under increased workload.
Regression Testing
Ensures new changes (like bug fixes or enhancements) don’t break existing
functionality.

Exploratory Testing
Tests the software without predefined test cases to discover unexpected issues.
Automated Testing
Uses tools and scripts to automate repetitive testing tasks (e.g., Selenium, JUnit).
Smoke Testing Performs basic tests to verify the stability of the software build.

Sanity Testing
Checks specific functionalities after minor changes to ensure they are working.
Alpha and Beta Testing

DEPARTMENT OF CSE (SCET) 73 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

Alpha Testing: Conducted in-house by developers and QA teams.


Beta Testing: Conducted by end-users to gather real-world feedback.

End-to-End Testing
Tests the entire workflow of the system, simulating real-world scenarios.

Ad-hoc Testing
Informal testing without a structured plan to identify random issues.

Penetration Testing
Simulates attacks to identify and address security vulnerabilities.

7.3.7 BUILD THE TEST PLAN

Any project can be divided into units that can be further


performed for detailed processing. Then a testing strategy for each of this unit is carried out.
Unit testing helps to identity the possible bugs in the individual component, so the component
that has bugs can be identified and can be rectified from errors.

TEST CASES:
Test cases can be divided in to two types. First one is Positive test cases and second
one is negative test cases. In positive test cases are conducted by the developer
intention is to get the output. In negative test cases are conducted by the developer
intention is to don’t get the output.

In software testing, assigning test case points usually refers to evaluating and
prioritizing test cases based on factors like complexity, effort, or risk. Here’s an
overview of how test case points might be used:

1. Purpose of Test Case Points

• Measure the effort required to execute and automate test cases.

DEPARTMENT OF CSE (SCET) 74 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

• Prioritize test cases based on risk, impact, or complexity.

• Estimate testing timelines and allocate resources efficiently.

• Track testing progress in agile or iterative development.

2. Factors to Consider When Assigning

Points Points can be assigned based on these

criteria:

• Complexity of the Test Case

• Low: Basic functionality (e.g., logging in).

• Medium: Involves multiple dependencies or workflows.

• High: Complex scenarios (e.g., edge cases or integration tests).

• Risk/Impact

• High: Critical features that affect core functionality.

• Medium: Features with moderate user impact.

• Low: Minor features or non-critical parts.

• Effort Needed

• Manual or automation effort required to execute the test case.

• Number of steps involved in the test case.

• Time needed for setup or preconditions.

• Priority

• Business-critical features get more points.

• Non-critical or edge cases may have fewer points.

3. Example Point System

A simple point system could look like this:

DEPARTMENT OF CSE (SCET) 75 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

Category Low (1) Medium (3) High (5)

Complexity 1 3 5

Risk/Impact 1 3 5

Effort (Time/Steps) 1 3 5

Total points for a test case = Complexity + Risk + Effort

Example:

A test case for a payment gateway:

• Complexity: 5 (involves API and UI integration)

• Risk: 5 (direct revenue impact if it fails)

• Effort: 3 (moderate effort required)

Total Points = 5 + 5 + 3 = 13

4. How to Use Test Case Points

• Prioritization: Test cases with higher points are executed first.

• Effort Estimation: Use total points to predict the testing timeline.

• Tracking Progress: Monitor completed points vs. total points.

• Agile Planning: Assign test points to sprints or releases.

5. Tools for Managing Test Case Points


Test case points can be tracked in tools like:

• JIRA: Using story points or custom fields for test cases.

• Test Management Tools: Such as TestRail, Zephyr, or Xray.

• Custom Spreadsheets: Simple tracking and calculation.

DEPARTMENT OF CSE (SCET) 76 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

TEST PLAN
The test procedure is started by building up a thorough arrangement to test the
general usefulness and extraordinary highlights on an assortment of stage mixes.
Exacting quality control methods are utilized. The procedure checks that the
application meets the necessities indicated in the framework prerequisites report and
is sans bug.

Any project can be separated into units that can be further performed for detailed
processing. Then a testing strategy for each of this unit is carried out. Unit testing
serves to character the potential bugs in the individual segment, so the segment that
has bugs can be recognized and can be redressed from mistakes.

1.0 INTRODUCTION
1.1 Objective
1.2 Reference Document
1.2.1 Project Plan
1.2.2 SRS
2.0 Coverage Of Testing
2.1 Features to be tested.
2.2 features not to be tested
3.0) Test Strategy
3.1 Levels of testing
3.2 Types of testing
3.3 Test design Technique
3.4 Configuration Management
3.5 Test Matrix
3.6 Termonology
3.7 Automation Plan
3.8 List of Automated Tools.

4.0) Base Criteria

DEPARTMENT OF CSE (SCET) 77 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

4.1 Acceptence criteria


4.2 Suspension criteria
5.0) Test Deliverables
6.0) Test Environment
7.0) Resource Planning
8.0) Scheduling
9.0) Staffing & Training
10.0)Risks & Contengies Solutions
11.0) Assumptions
12.0) Approval Information

DEPARTMENT OF CSE (SCET) 78 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

TEST CASES

Sl. No Test scenario User action Expected Actual Result Remarks


result

1. Registration Users Register into Successfully Pass


registering the system. alert registered
into the message.
system.
2. Login 1. Entered 1. Log into 1. Successfully Pass
correct the system. logged in.
password. 2. Alert 2. Successfully
generated. generated the
alert.
3. Public Cloud It have a all Massages Successfully Successful
Server details stores sending data generated the
in cloud user alert is alert and
generated. massages
sending
4. Trapdoor Key It will have Trapdoor Successfully Successful
Centre keys test and key has to generated the
verify actions alert to Trapdoor
key message

5. Data Data Massages Successfully Successful


Controller controller has Alert is generated the
a store a file generated alert for data
controller
massage has
displays
6. Data Receiver Data receiver Massages Successfully Successful
has a search Alert is generated the
file and it generated alert for data

DEPARTMENT OF CSE (SCET) 79 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

will have a receiver


key response massage has
displays
7. GUI CHECK FOR ALL THE LOG-IN PASS
THE OBJECTS SCREEN AND
AVALIABLI ARE MUST ALL THE
TY OF ALL BE OBJECTS ARE
THE AVALIABLE AVALIABLE
OBJECTS, AS PER THE AS PER THE
AS PER OBJECT OBJECT
OBJECT TABLE TABLE
TABLE OBJECT
TABLE
8. GUI CHECK FOR ALL THE ALL THE PASS
THE OBJECTS OBJECTS ARE
CONSISTEN MUST BE CONSISTENCE
CE OF ALL CONSISTEN WITH EACH
THE CE WITH OTHER
OBJECTS EACH
OTHER
9. GUI CHECK FOR ALL THE ALL THE PASS
THE OBJECTS OBJECTS ARE
SPELLING MUST BE SPELLED
OF ALL THE SPELLED PROPERLY AS
OBJECTS PROPERLY PER THE
AS PER THE AS PER THE OBJECT
OBJECT OBJECT TABLE
TABLE TABLE
OBJECT OBJECT
TABLE TABLE
10. GUI CHECK FOR LOG-IN, ALL THE LOG- FAIL
THE CLEAR IN, CLEAR,
ENABLED BUTTONS AND CANCL

DEPARTMENT OF CSE (SCET) 80 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

PROPERTY MUST BE BUTTONS


OF LOG-IN, DISABLED, ARE
CLEAR, CANCEL ENABKED
CANCEL BUTTON
BUTTONS MUST BE
ENABLED
11. GUI INITIALLY CURSUR CURSUR IS PASS
CHECK FOR MUST BE PLACED IN
THE PLACED IN THE USER
POSITION THE USER NAME FIELD
OF THE NAME
CURSUR FIELD
12. POSITIVE ENTER LOG-IN LOG-IN PASS
SOME BUTTON BUTTON IS
INFORMATI MUST BE ENABLED
ON IN THE ENABLED
USER
NAME,
PASSWORD
FIELDS,
AND
CHECK FOR
THE
ENABLED
PROPERTY
OF THE
LOG-IN
BUTTON
13. POSITIVE ENTER CLER CLEAR PASS
SOME BUTTON BUTTON IS
INFORMATI MUST BE ENABLED
ON IN TO ENABLED
ANY OF
FIELDS,
DEPARTMENT OF CSE (SCET) 81 | P a g e
Trapdoor Privacy Data In PKE With Keyword Search

AND
CHECK FOR
THE
ENABLED
PROPERTY
OF CLEAR
BUTTON
14. POSITIVE ENTER CORRESPO CORRESPOND PASS
USER NDING ING PAGES
NAME, PAGE MUST AREDISPLAYE
PASSWORD BE D AS PER THE
AS PER THE DISPLAYED VIP TABLE
VIP TABLE, AS PER THE
AND CLICK VIP TABLE
ON LOG-IN
BUTTON
VIP TABLE
15. POSITIVE ENTER ALL THE ALL THE FAIL
SOME FIELDS FIELDS ARE
INFORMATI MUST BE CLEAR, BUT
ON INTO CLEAR & THE CURSUR
ANY OF CURSUR IS NOT
THE FIELDS SHOULD BE PLACED IN
AND CLICK PLACED IN USER NAME
ON THE THE USER FIELD
CLEAR NAME
BUTTON FIELD
16. POSITIVE CLICK ON LOG-IN LOG-IN PASS
THE SCREEN SCREEN IS
CANCEL MUST BE CLOSED
BUTTON CLOSED

17. POSITIVE CHECK FOR TABING TABING PASS

DEPARTMENT OF CSE (SCET) 82 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

THE ORDER ORDER IS AS


TABING MUST BE PER IT:-UER
ORDER AS NAME,
FOLLOWS:- PASSWORD
USER CONNECT TO,
NAME, LOG-IN,
PASSWORD CLEAR,
, CONNECT CANCEL
TO LOG-IN,
CLEAR,
CANCEL
18. NEGITIVE ENETR CORRESPO CORRESPOND FAIL
USER NDING ING MESSAGE
NAME, MESSAGE ARE NOT
PASSWORD SHOULD BE DISPLAYED,
AS PER THE DISPLAYED AS PER THE
IVIP TABLE, , AS PER IVIP TABLE
AND CLICK THE IVIP
ON LOG-IN TABLE
BUTTON
19. NEGITIVE ENTER LOG-IN LOG-IN FAIL
ONLY THE BUTTON BUTTON IS
USER MUST BE ENABLED
NAME AND DISABLED
CHECK FOR
THE
ENABLED
PROPERTY
OF LOG-IN
BUTTON
20. NEGITIVE ENTER LOG-IN LOG-IN FAIL
ONLY THE BUTTON BUTTON IS
PASSWORD MUST BE ENABLED
AND DISABLED
DEPARTMENT OF CSE (SCET) 83 | P a g e
Trapdoor Privacy Data In PKE With Keyword Search

CHECK FOR
THE
ENABLED
PROPERTY
OF LOG-IN
BUTTON

DEPARTMENT OF CSE (SCET) 84 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

CHAPTER 8
APPLICATION
8.1 GENERAL
The computational cost of key generation in all schemes for each user is constant,
which have significantly efficiency for lightweight devices in e-healthcare system, the
computation cost increases linearly with the growth of users. However, these results
are acceptable since these costs are one-time, that is, users only need to take the
corresponding costs when joining the system and uploading the e-healthcare records.

8.2 FUTURE ENHANCEMENT


In the future, we can give a challenge with a data controller and data receiver. in future we
can stores a real time cloud to store a data and protect from another user. the PEKS scheme
that allow only the designated server to perform the search operation and allow the
transmission of trapdoor via a public channel. the adversary selects two public keys (Apub
and Bpub) and two keywords (W0 and W1) to be challenged

DEPARTMENT OF CSE (SCET) 85 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

CHAPTER 9
9.1 CONCLUSION
The security properties of keyword privacy and trapdoor privacy are essential for the PEKS
schemes to be secure against offline keyword attack from outsider attacker. In this paper, we
have performed comparison analysis on various types of PEKS schemes. We have drawn
some potential research directions for future research

9.2 REFERENCES
[1] D. X. Song, D. Wagner, and A. Perrig, ``Practical techniques for searches on encrypted
data,'' in Proc. IEEE Symp. Secur. Privacy (SP), May 2000, pp. 44_55.
[2] C. Bösch, P. Hartel,W. Jonker, and A. Peter, ``A survey of provably secure searchable
encryption,'' ACM Comput. Surv., vol. 47, no. 2, pp. 1_51, Jan. 2015.
[3] D. Boneh, G. D. Crescenzo, R. Ostrovsky, and G. Persiano, ``Public key encryption with
keyword search,'' in Proc. Int. Conf. Theory Appl. Cryptograph. Techn. Berlin, Germany:
Springer, 2004, pp. 506_522.
[4] S. Kamara and K. Lauter, ``Cryptographic cloud storage,'' in Proc. Int. Conf. Financial
Cryptogr. Data Secur. Berlin, Germany: Springer, 2010, pp. 136_149.
[5] J. W. Byun, H. S. Rhee, H.-A. Park, and D. H. Lee, ``Off-line keyword guessing attacks
on recent keyword search schemes over encrypted data,'' in Proc.Workshop Secure Data
Manage. Berlin, Germany: Springer, 2006, pp. 75_83.
[6] D. J. Park, K. Kim, and P. J. Lee, ``Public key encryption with conjunctive _eld keyword
search,'' in Proc. Int. Workshop Inf. Secur. Appl. Berlin, Germany: Springer, 2004, pp. 73_86.
[7] W.-C.Yau, S.-H. Heng, and B.-M. Goi, ``Off-line keyword guessing attacks on recent
public key encryption with keyword search schemes,'' in Proc. Int. Conf. Autonomic Trusted
Comput. Berlin, Germany: Springer, 2008, pp. 100_105.
[8] J. Baek, R. S. Naini, and W. Susilo, ``Public key encryption with keyword search
revisited,'' in Proc. Int. Conf. Comput. Sci. Appl. Berlin, Germany: Springer, 2008, pp.
1249_1259.
[9] I. R. Jeong, J. O. Kwon, D. Hong, and D. H. Lee, ``Constructing PEKS schemes secure
against keyword guessing attacks is possible?'' Comput. Commun., vol. 32, no. 2, pp.
394_396, Feb. 2009.

DEPARTMENT OF CSE (SCET) 86 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

[10] W.-C.Yau, R. C.-W. Phan, S.-H. Heng, and B.-M. Goi, ``Keyword guessing attacks on
secure searchable public key encryption schemes with a designated tester,'' Int. J. Comput.
Math., vol. 90, no. 12, pp. 2581_2587, 2013.
[11] H. S. Rhee, J. H. Park, W. Susilo, and D. H. Lee, ``Improved searchable public key
encryption with designated tester,'' in Proc. 4th Int. Symp. Inf., Comput., Commun. Secur.,
2009, pp. 376_379.
[12] D. Boneh and M. Franklin, ``Identity-based encryption from the Weil pairing,'' in Proc.
Annu. Int. Cryptol. Conf. Berlin, Germany: Springer, 2001, pp. 213_229.
[13] M. Abdalla, M. Bellare, D. Catalano, E. Kiltz, T. Kohno, T. Lange, J. Malone-Lee, G.
Neven, P. Paillier, and H. Shi, ``Searchable encryption revisited: Consistency properties,
relation to anonymous IBE, and extensions,'' in Proc. Annu. Int. Cryptol. Conf. Berlin,
Germany: Springer, 2005, pp. 205_222.
[14] C. Gu, Y. Zhu, and H. Pan, ``Ef_cient public key encryption with keyword search
schemes from pairings,'' in Proc. Int. Conf. Inf. Secur. Cryptol. Berlin, Germany: Springer,
2007, pp. 372_383.
[15] L. Sun, C. Xu, M. Zhang, K. Chen, and H. Li, ``Secure searchable public key encryption
against insider keyword guessing attacks from indistinguishability obfuscation,'' Sci. China
Inf. Sci., vol. 61, no. 3, pp. 1_3, Mar. 2018.
[16] J. Zhang, C. Song, Z. Wang, T. Yang, and W. Ma, ``Ef_cient and provable security
searchable asymmetric encryption in the cloud,'' IEEE Access, vol. 6, pp. 68384_68393,
2018.
[17] L. Fang, W. Susilo, C. Ge, and J. Wang, ``A secure channel free public key encryption
with keyword search scheme without random Oracle,'' in Proc. Int. Conf. Cryptol. Netw.
Secur. Berlin, Germany: Springer, 2009, pp. 248_258.
[18] H. S. Rhee, J. H. Park, W. Susilo, and D. H. Lee, ``Trapdoor security in a searchable
public-key encryption scheme with a designated tester,'' J. Syst. Softw., vol. 83, no. 5, pp.
763_771, 2010.
[19] W. Bingjian, C. Tzungher, and J. Fuhgwo, ``Security improvement against malicious
server's attack for a dPEKS scheme,'' Int. J. Inf. Educ. Technol., vol. 1, no. 4, pp. 350_353,
2011.
[20] H. S. Rhee, J. H. Park, and D. H. Lee, ``Generic construction of designated tester public-
key encryption with keyword search,'' Inf. Sci., vol. 205, pp. 93_109, Nov. 2012.

DEPARTMENT OF CSE (SCET) 87 | P a g e


Trapdoor Privacy Data In PKE With Keyword Search

DEPARTMENT OF CSE (SCET) 88 | P a g e

You might also like