0% found this document useful (0 votes)
6 views52 pages

Sample Mini Project Document

Uploaded by

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

Sample Mini Project Document

Uploaded by

manasapenchala21
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd

A

Mini Project Report


On

Secure Channel Free Certificate-Based


Searchable Encryption Withstanding
Outside and Inside Keyword Guessing
Attacks

Submitted to
JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY

in partial fulfillment of the requirement


for the award of the degree of

BACHELOR OF TECHNOLOGY
IN
COMPUTER SCIENCE AND ENGINEERING (AI & ML)

SUBMITTED BY:
KALYANAPU SOWMYA (HTNO: 22TR1A6625)
AKOJU NIMISHA (HTNO: 22TR1A6603)
MAMIDI SAICHARAN (HTNO: 22TR1A6632)
NALIVELA SAIABHINAV (HTNO: 22TR1A6641)
Under the Guidance of
Dr. CH. SAMPATH REDDY
Professor & HOD
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING (AI &
ML)

SREE CHAITANYA INSTITUTE OF TECHNOLOGICAL SCIENCES

LMD COLONY, KARIMNAGAR-505527


(Approved by AICTE, Affiliated to JNTUH, Hyderabad)
JUNE-2025

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks 1
SREE CHAITANYA INSTITUTE OF TECHNOLOGICAL SCIENCES

LMD COLONY, KARIMNAGAR-505527


(Approved by AICTE, Affiliated to JNTUH)

Certificate

Certified that this Mini Project Report entitled, “Secure Channel


Free Certificate-Based Searchable Encryption Withstanding
Outside and Inside Keyword Guessing Attacks” is the Bonafide
work of Kalyanapu Sowmya ([Link]. 22TR1A6625), Akoju
Nimisha ([Link]. 22TR1A6603), Mamidi Saicharan ([Link].
22TR1A6632) and Nalivela Saiabhinav ([Link]. 22TR1A6641)
of III Year, CSE (AI & ML) in the year 2025 in partial fulfillment of
the requirements to award the Degree of Bachelor of Technology in
COMPUTER SCIENCE AND ENGINEERING (AI & ML) of Sree
Chaitanya Institute of Technological Sciences, Karimnagar.

Dr. CH. SAMPATH REDDY Dr. CH. SAMPATH REDDY


Professor Professor
Project Guide Head of the
Department

External Examiner

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks 2
ACKNOWLEDGEMENT

We would like to express our sincere gratitude to our Project


Guide, Dr. [Link] REDDY, Professor whose knowledge
and guidance has motivated us to achieve goals we never thought
possible. The time we have spent working under his supervision has
truly been a pleasure.

We are thankful to Mrs. SHAGUFTHA BASHEER, Assistant


Professor & Project Coordinator of AIML Department for her
effort, guidance and all faculty members of AIML Department for
their help during my course. Thanks to programmers and non-
teaching staff of AIML Department, Sree Chaitanya Institute of
Technological Sciences.

We also thank Dr. CHADA SAMPATH REDDY, HOD &


Professor of CSE (AI&ML) Department for providing seamless
support and knowledge for the entire project work and also for
providing right suggestions at every phase of the development of
the project. He has consistently been a source of motivation,
encouragement, and inspiration.

It is a great pleasure to convey our thanks to our principal Dr.


A. PRASAD RAJU, Principal, Sree Chaitanya Institute of
Technological Sciences and the College Management for permitting
us to undertake this project and providing excellent facilities to
carry out our project work.

Finally Special thanks to our parents, sisters and brothers for


their support and encouragement throughout my life and this

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks 3
course. Thanks to all our friends and well wishers for their constant
support.

DECLARATION

We hereby declare that the work which is being presented in


this report entitled, “Secure Channel Free Certificate-Based
Searchable Encryption Withstanding Outside and Inside
Keyword Guessing Attacks”, submitted towards the partial
fulfillment of the requirements for the award of the degree of
Bachelor of Technology in CSE (AI&ML), Sree Chaitanya Institute
of Technological Sciences, Karimnagar is an authentic record of our
own work carried out under the supervision of Dr. CH. SAMPATH
REDDY, Professor, Department of CSE (AI&ML), Sree
Chaitanya Institute of Technological Sciences, Karimnagar.

To the best of our knowledge and belief, this project bears no


resemblance with any report submitted to Sree Chaitanya Institute
of Technological Sciences or any other University for the award of
any degree or diploma.

KALYANAPU SOWMYA
[Link]:22TR1A6625
AKOJU NIMISHA
[Link]:22TR1A6603
MAMIDI SAICHARAN
[Link]:22TR1A6632
NALIVELA SAIABHINAV
[Link]:22TR1A6641

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks 4
ABSTRACT

Searchable public key encryption (SPKE) is a useful public key


cryptographic primitive that allows a user to perform keyword
searches over publicly encrypted messages on an untrusted storage
server while guaranteeing the privacy of the original messages as
well as the search keywords. However, most of the previously
proposed SPKE frameworks suffer from the security vulnerability
caused by the keyword guessing attack and some other
weaknesses. Inspired by the ideas of certificate-based cryptography
and sign encryption, we present a new SPKE framework called
certificate-based searchable encryption. The new framework not
only provides resistance to the existing known types of key word
guessing attacks, but also enjoys some appealing merits, such as
implicit authentication, no key escrow and no secure channel. Under
this new framework, we devise a concrete searchable certificate-
based encryption scheme. In the random oracle model, it is proven
to meet the keyword ciphertext indistinguishability, the keyword
ciphertext unforgeability and the keyword trapdoor
indistinguishability under the adaptive chosen-keyword attack. The
comparisons indicate that it is secure and practicable.

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks 5
LIST OF FIGURES

[Link] Figure Description Page


No

1 Fig:3.3: Architecture Diagram 24


2 Fig:3.4: Level-0 Dataflow Diagram 25
3 Fig:3.4: Level-1 Dataflow Diagram 26
4 Fig:3.4.1: Flowchart 27
5 Fig:3.5.1: Use Case Diagram 29
6 Fig:3.5.2: Class Diagram 30
7 Fig:3.5.3: Sequence Diagram 31
8 Fig:5.1: Home Page 33
9 Fig:5.2: User Login Page 33
10 Fig:5.3: User Page 34
11 Fig:5.4: Sender Login Page 34
12 Fig:5.5: CA Login Page 35
13 Fig:5.6: Sender Main Page 35
14 Fig:5.7: Cloud Server Login Page 36

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks 6
TABLE OF CONTENTS

Abstract V

List of Figures
VI
List of Tables
VII

Page Nos Start –


End
Chapter 1: INTRODUCTION 9-11
Chapter 2: PROJECT ANALYSIS 12-17
2.1: REQUIREMENT SPECIFICATIONS 12
2.2: EXISTED SYSTEM 13
2.2.1: DISADVANTAGES OF EXISTING SYSTEM 14
2.3: PROPOSED SYSTEM 15
2.3.1: ADAVANTAGES OF PROPOSED SYSTEM 16
2.4: PRELIMINARY INVESTIGATION 17
2.5: FEASIBILITY STUDY 17-18
2.6: FEASIBILITY ANALYSIS 19-20
Chapter 3: PROJECT DESIGN 21-30
3.1: INPUT DESIGN 21
3.2: OUTPUT DESIGN 22
3.3: SYSTEM ARCHITECTURE 23
3.4: DATA FLOW DIAGRAM 24-25
3.4.1: FLOWCHART 26
3.5: UNIFIED MODELLING LANGUAGE 27

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks 7
3.5.1: USECASE DIAGRAM 28
3.5.2: CLASS DIAGRAM 29
3.5.3: SEQUENCE DAIGARM 30
Chapter 4: IMPLEMENTATION 31
Chapter 5: RESULTS 32-35
Chapter 6: TESTING 36-45
6.1: SYSTEM TESTING 36
6.2: TYPES OF TESTING 36-38
6.2.1: UNIT TESTING 36
6.2.2: INTEGRATION TESTING 37
6.2.3: FUNCTIONAL TESTING 37
6.2.4: SYSTEM TESTING 38
6.2.5: WHITEBOX TESTING 38
6.2.6: BLACKBOX TESTING 38
6.3: TESTING METHODOLOGIES 39-45
Chapter 7: CONCLUSION 46
REFERENCES 47-49

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks 8
CHAPTER-1

INTRODUCTION

In conventional public key cryptography (PKC), anyone


possesses a pair of public and private keys. Because the keys have
no connection to the user’s identity, a trusted public key
infrastructure (PKI) has to be employed for vouching the relation
between a public key and an identity by a digital certificate. But, the
requirement of PKI certificates is regarded as the major impediment
in the deployment of conventional public key cryptosystems.

To remove the heavy burden caused by cumbersome


certificate management, Shamir [1] presented identity based
cryptography (IBC) in Crypto’84. The merit of IBC is that it
eliminates the requirement for PKI certificates, because anyone can
use his/her personal identity as his/her public key. However, IBC
inherently suffers from the key escrow problem, due to the fact that
a completely-trusted private key generator is employed for issuing a
private key for each user in the system. Moreover, the private keys
should be conveyed to users via secure channel, which leads to the
private key distribution problem. To address the key escrow
problem, Al- Riyami and Paterson [2] put forward the notion of
certificateless public key cryptography (CLPKC) in As a crypt’ 03. In
a CLPKC system, each user should combine a partial private key
issued by a key generation center with a secret value of his/her

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks 9
choice to produce his/her private key. In this way, the key
generation center does not know the user’s private key, and thus
CLPKC avoids the key escrow problem. However, the key generation
center should distribute the partial private keys to the users
secretly. Therefore, CLPKC has the key distribution problem, which
also leads to the requirement of secure channel.

In Eurocrypt’03, Gentry [3] presented a practical public key


cryptographic primitive named certificate-based cryptography
(CBC). This primitive lies between IBC and conventional PKC, but
offers an interesting and useful balance. In a CBC system, a user
should first produce a pair of public and private keys independently.
Then, the user submits his/her identity information and public key to
a trusted certificate authority (CA) to apply for a certificate. Unlike
the PKI certificates in conventional PKC, each certificate in CBC is
merely pushed to its holder and acts as a partial decryption key or a
partial signing key. As introduced in [3], this interesting property
offers an implicit authentication function so that a user requires
both his/her private key and certificate to execute the
decryption/signing tasks, while the others need not be concerned
about this user’s certificate status. Therefore, the implicit
authentication mechanism enables CBC to avoid the problem of
third-party queries for the certificate status and predigest the
complicated certificate management in conventional PKI-assisted
PKC systems. In addition, CBC addresses the key escrow problem
(because all users’ private keys are unknown to CA) and the key
distribution problem (because the certificates are pushed to their
holders publicly). In recent years, CBC has attracted much attention
in academia and a lot of cryptographic schemes in the setting of
CBC have been proposed [4-13]. TABLE 1 summarizes the properties
of the abovementioned public key cryptographic primitives.

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
10
As an extension of standard public key encryption (PKE),
searchable PKE (SPKE) [14] offers a promising cryptographic
solution to the ciphertext retrieval issue in PKE systems. With a
SPKE system, a user can authorize an untrusted third-party storage
server to test whether the message ciphertexts sent to him/her
contain some specified keywords without divulging either the
message contents or the search keywords. More specifically, a SPKE
system works as follows: When producing the ciphertext Cm of a
message m by using a standard PKE scheme, the sender selects a
keyword w which is related to the message m and executes the
keyword encryption algorithm in SPKE to produce a keyword
ciphertext Cw for the keyword w by using the receiver’s public key.
The message ciphertext Cm appended with the keyword ciphertext
Cw is then sent to the storage server who stores the ciphertexts for
the receiver. When the receiver wants to download the message
ciphertexts related to a keyword w from the storage server, he/she
runs a trapdoor generation algorithm to produce a keyword trapdoor
Tw for w by using his/her private key. Whereafter, Tw is sent to the
storage server secretly. Once receiving Tw, the storage server
executes a testing algorithm to locate all keyword ciphertexts that
match Tw (namely that the keyword ciphertexts contain the same
keyword w). Finally, the storage server returns all matching
message ciphertexts to the receiver. Since its invention, SPKE has
been found to be useful in many practical applications, such as
encrypted email routing [14], encrypted audit logs [15],
cryptographic cloud storage [16], electronic medical/healthcare
system [17, 18] and internet of things [19], etc.

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
11
CHAPTER 2
PROJECT ANALYSIS

2.1 REQUIREMENT SPECIFICATIONS


The software requirements specification specifies the function
requirements and non-functional requirements. Functional
requirements refer to how the system is going to react according to
the input provided and how it is going to behave in particular
situations and non-functional requirements refer to Usability,
Availability, Reliability, Performance, Security, Supportability,
Interface.

H/W System Configuration:

➢ Processor - Pentium –IV


➢ RAM - 4 GB (min)
➢ Hard Disk - 20 GB
➢ Key Board - Standard Windows Keyboard
➢ Mouse - Two or Three Button Mouse
➢ Monitor - SVGA

Software Requirements:
 Operating System - Windows XP

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
12
 Coding Language - Java/J2EE(JSP, Servlet)
 Front End - J2EE
 Back End - MySQL

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
13
2.1 EXISTING SYSTEM
Boneh et al. [14] put forward the first SPKE framework - public key
encryption with keyword search (PEKS), along with an efficient PEKS
scheme from the well-known Boneh-Franklin identity-based
encryption (IBE) scheme [20]. Following Boneh et al.’s pioneering
work [14], a number of PEKS schemes [21-27] and variants [28-32]
were presented in the literature. However, the main shortcoming of
PEKS is that it requires conveying the keyword trapdoors via secure
channel. If the keyword trapdoors are sent to the storage server
publicly, any PEKS scheme is insecure under the adaptive chosen-
keyword attacks by outside attacker [33]. In order to fix this
problem, Baek et al. [33] introduced the framework of secure
channel free PEKS (SCFPEKS).

In a SCF-PEKS system, a storage server should be designated as the


tester and only the designated server has the ability to execute the
testing algorithm to check whether a keyword ciphertext and a
keyword trapdoor correspond to the same keyword by using its own
private key. In this way, the requirement for conveying the keyword
trapdoors by secure channel is eliminated. The SCF-PEKS framework
is also known as designated server PEKS (dPEKS) [34]. Inspired by
Baek et al.’s work [33], lots of SCF-PEKS/dPEKS schemes were
presented, e.g. [34-40].

Most of the previously proposed SPKE schemes were built over


conventional PKC. However, it is generally recognized that
conventional PKC has the heavy certificate management problem. In
[41], Abdalla et al. introduced SPKE into the setting of IBC and
proposed the framework of IBE with keyword search (IBEKS). They
also presented a generic IBEKS construction from two level
hierarchical IBE. Later, several IBEKS and designated server IBEKS
(d-IBEKS) schemes [42-48] were proposed. The IBEKS/d-IBEKS
schemes have the advantage of no certificate. But, they are

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
14
inherently afflicted with the key escrow and key distribution
problems. To eliminate the key escrow problem, the concept of
SPKE was further extended into the setting of CL-PKC. In [49], Peng
et al. first presented a certificateless encryption
with keyword search (CLEKS) scheme. Soon afterwards, a few CLEKS
and designated server CLEKS (d CLEKS) schemes were presented
[50-52]. The advantages of the CLEKS/d-CLEKS schemes are
certificateless and key escrow free. However, they have the key
distribution problem which also leads to the secure channel
requirement. This shortcoming limits the application of CLEKS/d
CLEKS in public networks. Moreover, Li et al. [53, 54] presented new
type keyword search schemes based on attribute-based encryption.

2.2 Disadvantages

o The system is not implemented Forward privacy and


backward privacy.
o The system is not implemented Attribute-based
encryption.

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
15
2.3 PROPOSED SYSTEM
In the proposed system, the system proposes By extending SPKE
into the setting of CBC, it presents a novel SPKE framework named
certificate-based searchable encryption (hereafter referred to as
“CBSE” for short). The CBSE framework inherits most of the
appealing merits of CBC, such as implicit authentication, no key
escrow, no key distribution and no secure channel. The main reason
that most of the previous SPKE frameworks suffer from the KG
attack is that the keyword ciphertext is calculated from the original
keyword by the receiver’s public key (in case of PEKS/IBEKS/CLEKS)
or both the designated server’s and the receiver’s public keys (in
case of dPEKS/dIBEKS/dCLEKS). As a result, an outside attacker or a
malicious storage server is able to guess all possible keywords,
produce the ciphertexts of these keywords and then execute the
testing algorithm (in case of outside/inside offline KG attack) or use
the storage server as a testing oracle (in case of outside online KG
attack) to verify the correctness of its guesses. To fight against KG
attacks, we introduce the idea of sign encryption [63] into the CBSE
framework to make the keyword ciphertext be unforgeable. More
specifically, our framework involves the sender’s private key in the
generation of the keyword ciphertext, namely that it generates the
keyword ciphertext by using the sender’s private key and the
receiver’s public key. Since the sender’s private key is unknown to
anyone except the sender, neither the malicious designated server
nor the outside attacker can forge a legitimate ciphertext for any
keyword. Without the ability to produce the keyword ciphertexts,
the attacker cannot launch a successful KG attack anymore. In this
way, the framework provides resistance against KG attacks by
either the outside attacker or the malicious storage server.
Compared with the SPKE frameworks in [19, 60, 61], the advantage
of our framework is that there is no secure channel and no
interactions between the sender and the receiver. Furthermore,
unlike the previous designated server SPKE frameworks (such as d-

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
16
PEKS, d-IBEKS and d-CLEKS), our framework does not require a
designated storage server to serve as the tester. Thus, the search
tasks can be performed on any storage server securely. This good
property makes our framework be more flexible and practical.

The second contribution is that it devises a concrete CBSE scheme


that is provably secure against both the outside and inside KG
attacks in the random oracle model [64]. Our security proofs
indicate that the proposed scheme achieves the keyword ciphertext
indistinguishability under the bilinear Diffie-Hellman assumption, the
keyword ciphertext unforgeability and the keyword trapdoor
indistinguishability under the hash Diffie-Hellman assumption. In
addition, we make a comparison of the scheme and some previous
SPEKS schemes in terms of security and efficiency. The comparison
results show that it is efficient and practicable.

Advantages

 The system implemented very strong security scheme of


Privacy protection of documents, indexes and trapdoors.
 The system provides Collusion resistance between the Storage
server and search Users.

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
17
2.4 PRELIMINARY INVESTIGATION

The first and foremost strategy for development of a project


starts from the thought of designing a mail enabled platform for
a small firm in which it is easy and convenient of sending and
receiving messages, there is a search engine ,address book and
also including some entertaining games. When it is approved by
the organization and our project guide the first activity, i.e,
preliminary investigation begins. The activity has three parts:

 Request Clarification
 Feasibility Study
 Request Approval

REQUEST CLARIFICATION
After the approval of the request to the organization and project
guide, with an investigation being considered, the project request
must be examined to determine precisely what the system
requires.

Here our project is basically meant for users within the


company whose systems can be interconnected by the Local
Area Network(LAN). In today’s busy schedule man need
everything should be provided in a readymade manner. So taking
into consideration of the vastly use of the net in day to day life,
the corresponding development of the portal came into
existence.

2.5 FEASIBILITY STUDY


The feasibility of the project is analyzed in this phase and
business proposal is put forth with a very general plan for the
project and some cost estimates. During system analysis the
feasibility study of the proposed system is to be carried out. This
is to ensure that the proposed system is not a burden to the

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
18
company. For feasibility analysis, some understanding of the
major requirements for the system is essential. Three key
considerations involved in the feasibility analysis are:

 ECONOMICAL FEASIBILITY
 TECHNICAL FEASIBILITY
 SOCIAL FEASIBILITY

ECONOMICAL FEASIBILITY:
This study is carried out to check the economic impact that
the system will have on the organization. The amount of fund
that the company can pour into the research and development of
the system is limited. The expenditures must be justified. Thus
the developed system as well within the budget and this was
achieved because most of the technologies used are freely
available. Only the customized products had to be purchased.

TECHNICAL FEASIBILITY:
This study is carried out to check the technical feasibility, that
is, the technical requirements of the system. Any system
developed must not have a high demand on the available
technical resources. This will lead to high demands on the
available technical resources. This will lead to high demands
being placed on the client. The developed system must have a
modest requirement, as only minimal or null changes are
required for implementing this system.

SOCIAL FEASIBILITY:
The aspect of study is to check the level of acceptance of the
system by the user. The user must not feel threatened by the
system, instead must accept it as a necessity. The level of
acceptance by the users solely depends on the methods that are
employed to educate the user about the system and to make him

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
19
familiar with it. His level of confidence must be raised so that he
is also able to make some constructive criticism, which is
welcomed, as he is the final user of the system.

2.6 FEASIBILITY ANALYSIS


An important outcome of preliminary investigation is the
determination that the system request is feasible. This is possible
only if it is feasible within limited resource and time. The different
feasibilities that have to be analyzed are

 Operational Feasibility
 Economic Feasibility
 Technical Feasibility

Operational Feasibility

Operational Feasibility deals with the study of prospects of the


system to be developed. This system operationally eliminates all the
tensions of the Admin and helps him in effectively tracking the
project progress. This kind of automation will surely reduce the time
and energy, which previously consumed in manual work. Based on
the study, the system is proved to be operationally feasible.

Economic Feasibility

Economic Feasibility or Cost-benefit is an assessment of the


economic justification for a computer based project. As hardware
was installed from the beginning & for lots of purposes thus the cost
on project of hardware is low. Since the system is a network based,
any number of employees connected to the LAN within that
organization can use this tool from at any time. The Virtual Private
Network is to be developed using the existing resources of the
organization. So the project is economically feasible.

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
20
Technical Feasibility

According to Roger S. Pressman, Technical Feasibility is the


assessment of the technical resources of the organization. The
organization needs IBM compatible machines with a graphical web
browser connected to the Internet and Intranet. The system is
developed for platform Independent environment. Java Server
Pages, JavaScript, HTML, SQL server and WebLogic Server are used
to develop the system. The technical feasibility has been carried
out. The system is technically feasible for development and can be
developed with the existing facility.

4.3.3 REQUEST APPROVAL

Not all request projects are desirable or feasible. Some


organization receives so many project requests from client users
that only few of them are pursued. However, those projects that are
both feasible and desirable should be put into schedule. After a
project request is approved, it cost, priority, completion time and
personnel requirement is estimated and used to determine where to
add it to any project list. Truly speaking, the approval of those
above factors, development works can be launched.

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
21
CHAPTER 3
PROJECT DESIGN

3.1 INPUT DESIGN


Input Design plays a vital role in the life cycle of software
development, it requires very careful attention of developers. The
input design is to feed data to the application as accurate as
possible. So inputs are supposed to be designed effectively so that
the errors occurring while feeding are minimized. According to
Software Engineering Concepts, the input forms or screens are
designed to provide to have a validation control over the input limit,
range and other related validations.

This system has input screens in almost all the modules. Error
messages are developed to alert the user whenever he commits
some mistakes and guides him in the right way so that invalid
entries are not made. Let us see deeply about this under module
design.

Input design is the process of converting the user created


input into a computer-based format. The goal of the input design is
to make the data entry logical and free from errors. The error is in
the input are controlled by the input design. The application has
been developed in user-friendly manner. The forms have been
designed in such a way during the processing the cursor is placed in
the position where must be entered. The user is also provided with
in an option to select an appropriate input from various alternatives
related to the field in certain cases.

Validations are required for each data entered. Whenever a


user enters an erroneous data, error message is displayed and the

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
22
user can move on to the subsequent pages after completing all the
entries in the current pages.

3.2 OUTPUT DESIGN


The Output from the computer is required to mainly create an
efficient method of communication within the company primarily
among the project leader and his team members, in other words,
the administrator and the clients. The output of VPN is the system
which allows the project leader to manage his clients in terms of
creating new clients and assigning new projects to them,
maintaining a record of the project validity and providing folder
level access to each client on the user side depending on the
projects allotted to him. After completion of a project, a new project
may be assigned to the client. User authentication procedures are
maintained at the initial stages itself. A new user may be created by
the administrator himself or a user can himself register as a new
user but the task of assigning projects and validating a new user
rests with the administrator only.

The application starts running when it is executed for the first


time. The server has to be started and then the internet explorer in
used as the browser. The project will run on the local area network
so the server machine will serve as the administrator while the
other connected systems can act as the clients. The developed
system is highly user friendly and can be easily understood by
anyone using it even for the first time.

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
23
3.3 SYSTEM ARCHITECTURE

An architectural diagram is a diagram of a system that is used to


abstract the overall outline of the software system and the
relationships, constraints, and boundaries between components. It
is an important tool as it provides an overall view of the physical
deployment of the software system and its evolution roadmap. An
architecture diagram is a graphical representation of a set of
concepts, that are part of an architecture, including their principles,
elements and components

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
24
Fig:3.4: Architecture Diagram

3.4 Data Flow Diagram

The DFD is also called as bubble chart. It is a simple graphical


formalism that can be used to represent a system in terms of the
input data to the
system, various processing carried out on these data, and the
output data is generated by the system.

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
25
Fig:3.4: Level-0 Data Flow Diagram

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
26
Fig:3.4 Level-1 Data Flow Diagram

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
27
3.4.1 Flowchart

FLOW CHART

Is Authority
N
Sender registered

Y Register

Upload file with Login


digital sign,View all
uploaded files,View
all transactions
Storage server

CA

Receiver

No Check files
name
matching

Yes

Search Files,down load the filefrom


storage server

Fig.3.4.1: Flowchart

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
28
3.5 UNIFIED MODELLING LANGUAGE

UML stands for Unified Modeling Language. UML is a


standardized general purpose modeling language in the field of
object-oriented software engineering. The standard is managed, and
was created by, the Object Management Group. The goal is for UML
to become a common language for creating models of object-
oriented computer software. In its current form UML is comprised of
two major components: a Meta-model and a notation. In the future,
some form of method or process may also be added to; or
associated with, UML. The Unified Modeling Language is a standard
language for specifying, Visualization, Constructing and
documenting the artifacts of software system, as well as for
business modeling and other non-software systems. The UML is a
very important part of developing objects-oriented software and the
software development process. The UML uses mostly graphical
notations to express the design of software projects.

UML DIAGRAMS:

A UML diagram is a diagram based on the UML (Unified Modeling


Language) with the purpose of visually representing a system along
with its main actors, roles, actions, artifacts or classes, in order to
better understand, alter, maintain, or document information about
the system

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
29
3.5.1. USE CASE DIAGRAM:

A use case diagram in the Unified Modeling Language (UML) is a


type of behavioral diagram defined by and created from a Use-case
analysis. Its purpose is to present a graphical overview of the
functionality provided by a system in terms of actors, their goals
(represented as use cases), and any dependencies between those
use cases. The main purpose of a use case diagram is to show what
system functions are performed for which actor.

Fig:3.5.1: Use case Diagram

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
30
3.5.2. CLASS DIAGRAM

In software engineering, a class diagram in the Unified Modeling


Language (UML) is a type of static structure diagram that describes
the structure of a system by showing the system's classes, their
attributes, operations (or methods), and the relationships among th
classes.

CLASS DIAGRAM

Storage Server
Sender

METHODS: Register and METHODS: View all users,View all


Login,Upload file with digital cloud files,View all transactions,View
sign,View all uploaded all attackers,View all file results, View
files,View all transactions. all time delay results,View all
throughput results
MEMBERS: authority Name,
password,file name,select MEMBERS: Storage server Name,
file,data sign. password.

Receivers
CA

Methods : View all files and METHODS: Register and Login by


generate secret key,View all entering OTP,View all Files,
attackers, Download Files,Request blocks.

MEMBERS : trustee Name,


password.
MEMBERS: Name,password,email
id,mobile number,date of
birth,gender,address pincode,select
image.

Fig:3.5.2: Class Diagram

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
31
3.5.3 SEQUENCE DIAGRAM:

A sequence diagram in Unified Modeling Language (UML) is a kind of


interaction diagram that shows how processes operate with one
Sequence Diagram
another and in what order. It is a construct of a Message Sequence
Chart. Sequence diagrams are sometimes called event diagrams,
event scenarios.

Storage server CA Receiver


Sender

Register and login

View data owners


and authorize

View and Authorize Register and login


Upload file with digital sign
an End User

View all transactions,


View all attackers, View
View all uploaded all file results, View all
files,View all transactions time delay results, View
all throughput results

View all files and


generate secret key

Requests for File

Respond to a req

Search Files,Download the file

Respond to download

Fig:3.5.3: Sequence Diagram

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
32
CHAPTER 4
IMPLEMENTATION
Modules

Sender
In this module, the Sender uploads their encrypted patient data in the Storage
server. For the security purpose the user encrypts the data file and then store in
the server. The User can have capable of manipulating the encrypted data file
and performs the following operations Register and Login, Upload file with
digital sign, View all uploaded files, View all transactions.

Storage Server
The storage server manages which is to provide data storage service for the
Data Owners. Data owners encrypt their data files and store them in the Server
for sharing with data consumers and performs the following operations such as
View all users, View all sender files, View all transactions, View all attackers,
View all file results, View all time delay results, View all throughput results.

Receiver
In this module, the receiver can only access the data file with the secret key.
The user can search the file for a specified keyword and end user and can do
the following operations like Register and Login by entering OTP, Search Files,
View all Files ,Download Files, Request Files and p-key.

CA
In this module, the CA performs the following operations View all files and
generate public or secret key, View all attackers.

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
33
CHAPTER-5
RESULTS

Fig:5.1: Home Page

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
34
Fig:5.2: User Login Page

Fig:5.3: User Page

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
35
Fig:5.4: Sender Login Page

Fig:5.5: CA Login Page

Fig:5.6: Sender Main Page

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
36
Fig:5.7: Cloud Server Login Page

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
37
CHAPTER 6
TESTING

6.1 SYSTEM TESTING

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, subassemblies, 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.

6.2 TYPES OF TESTS

6.2.1 Unit testing

Unit testing involves the design of test cases that validate


that the internal program logic is functioning properly, and that
program inputs 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.

6.2.2 Integration testing

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
38
Integration tests are designed to test integrated software
components to determine if they actually run as one program.
Testing is event driven and is more concerned with the basic
outcome of screens or fields. Integration tests demonstrate that
although the components were individually satisfaction, as shown
by successfully unit testing, the combination of components is
correct and consistent. Integration testing is specifically aimed at
exposing the problems that arise from the combination of
components.

6.2.3 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.

Organization and preparation of functional tests is focused on


requirements, key functions, or special test cases. In addition,
systematic coverage pertaining to identify Business process flows;
data fields, predefined processes, and successive processes must be
considered for testing. Before functional testing is complete,
additional tests are identified and the effective value of current tests
is determined.

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
39
6.2.4 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.

6.2.5 White Box Testing

White Box Testing is a testing in which in which the software


tester has knowledge of the inner workings, structure and language
of the software, or at least its purpose. It is purpose. It is used to
test areas that cannot be reached from a black box level.

6.2.6 Black Box Testing

Black Box Testing is testing the software without any


knowledge of the inner workings, structure or language of the
module being tested. Black box tests, as most other kinds of tests,
must be written from a definitive source document, such as
specification or requirements document, such as specification or
requirements document. It is a testing in which the software under
test is treated, as a black box .you cannot “see” into it. The test
provides inputs and responds to outputs without considering how
the software works.

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
40
SYSTEM TESTING
6.3 TESTING METHODOLOGIES

The following are the Testing Methodologies:


o Unit Testing.
o Integration Testing.
o User Acceptance Testing.
o Output Testing.
o Validation Testing.

Unit Testing
Unit testing focuses verification effort on the smallest unit of
Software design that is the module. Unit testing exercises specific
paths in a module’s control structure to ensure complete coverage
and maximum error detection. This test focuses on each module
individually, ensuring that it functions properly as a unit. Hence, the
naming is Unit Testing.

During this testing, each module is tested individually and the


module interfaces are verified for the consistency with design
specification. All important processing path are tested for the
expected results. All error handling paths are also tested.

Integration Testing
Integration testing addresses the issues associated with the
dual problems of verification and program construction. After the
software has been integrated a set of high order tests are
conducted. The main objective in this testing process is to take unit
tested modules and builds a program structure that has been
dictated by design.

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
41
The following are the types of Integration Testing:

1. Top Down Integration


This method is an incremental approach to the construction of
program structure. Modules are integrated by moving downward
through the control hierarchy, beginning with the main program
module. The module subordinates to the main program module are
incorporated into the structure in either a depth first or breadth first
manner.
In this method, the software is tested from main module and
individual stubs are replaced when the test proceeds downwards.

2. Bottom-up Integration
This method begins the construction and testing with the
modules at the lowest level in the program structure. Since the
modules are integrated from the bottom up, processing required for
modules subordinate to a given level is always available and the
need for stubs is eliminated. The bottom up integration strategy
may be implemented with the following steps:
 The low-level modules are combined into clusters into clusters
that perform a specific Software sub-function.
 A driver (i.e.) the control program for testing is written to
coordinate test case input and output.
 The cluster is tested.
 Drivers are removed and clusters are combined moving
upward in the program structure
The bottom up approaches tests each module individually and then
each module is module is integrated with a main module and tested
for functionality.

OTHER TESTING METHODOLOGIES


User Acceptance Testing

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
42
User Acceptance of a system is the key factor for the success
of any system. The system under consideration is tested for user
acceptance by constantly keeping in touch with the prospective
system users at the time of developing and making changes
wherever required. The system developed provides a friendly user
interface that can easily be understood even by a person who is new
to the system.

Output Testing
After performing the validation testing, the next step is output
testing of the proposed system, since no system could be useful if it
does not produce the required output in the specified format. Asking
the users about the format required by them tests the outputs
generated or displayed by the system under consideration. Hence
the output format is considered in 2 ways – one is on screen and
another in printed format.

Validation Checking
Validation checks are performed on the following fields.

Text Field:
The text field can contain only the number of characters lesser
than or equal to its size. The text fields are alphanumeric in some
tables and alphabetic in other tables. Incorrect entry always flashes
and error message.

Numeric Field:
The numeric field can contain only numbers from 0 to 9. An
entry of any character flashes an error messages. The individual
modules are checked for accuracy and what it has to perform. Each
module is subjected to test run along with sample data. The
individually tested modules are integrated into a single system.

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
43
Testing involves executing the real data information is used in the
program the existence of any program defect is inferred from the
output. The testing should be planned so that all the requirements
are individually tested.
A successful test is one that gives out the defects for the
inappropriate data and produces and output revealing the errors in
the system.

Preparation of Test Data


Taking various kinds of test data does the above testing.
Preparation of test data plays a vital role in the system testing. After
preparing the test data the system under study is tested using that
test data. While testing the system by using test data errors are
again uncovered and corrected by using above testing steps and
corrections are also noted for future use.

Using Live Test Data:


Live test data are those that are actually extracted from
organization files. After a system is partially constructed,
programmers or analysts often ask users to key in a set of data from
their normal activities. Then, the systems person uses this data as a
way to partially test the system. In other instances, programmers or
analysts extract a set of live data from the files and have them
entered themselves.

It is difficult to obtain live data in sufficient amounts to


conduct extensive testing. And, although it is realistic data that will
show how the system will perform for the typical processing
requirement, assuming that the live data entered are in fact typical,
such data generally will not test all combinations or formats that can
enter the system. This bias toward typical values then does not
provide a true systems test and in fact ignores the cases most likely
to cause system failure.

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
44
Using Artificial Test Data:
Artificial test data are created solely for test purposes, since they
can be generated to test all combinations of formats and values. In
other words, the artificial data, which can quickly be prepared by a
data generating utility program in the information systems
department, make possible the testing of all login and control paths
through the program.
The most effective test programs use artificial test data generated
by persons other than those who wrote the programs. Often, an
independent team of testers formulates a testing plan, using the
systems specifications.
The package “Virtual Private Network” has satisfied all the
requirements specified as per software requirement specification
and was accepted.

USER TRAINING
Whenever a new system is developed, user training is required to
educate them about the working of the system so that it can be put
to efficient use by those for whom the system has been primarily
designed. For this purpose the normal working of the project was
demonstrated to the prospective users. Its working is easily
understandable and since the expected users are people who have
good knowledge of computers, the use of this system is very easy.

MAINTAINENCE
This covers a wide range of activities including correcting code and
design errors. To reduce the need for maintenance in the long run,
we have more accurately defined the user’s requirements during
the process of system development. Depending on the
requirements, this system has been developed to satisfy the needs
to the largest possible extent. With development in technology, it
may be possible to add many more features based on the

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
45
requirements in future. The coding and designing is simple and easy
to understand which will make maintenance easier.

TESTING STRATEGY :
A strategy for system testing integrates system test cases and
design techniques into a well planned series of steps that results in
the successful construction of software. The testing strategy must
co-operate test planning, test case design, test execution, and the
resultant data collection and evaluation .A strategy for software
testing must accommodate low-level tests that are necessary to
verify that a small source code segment has been correctly
implemented as well as high level tests that validate major
system functions against user requirements.
Software testing is a critical element of software quality assurance
and represents the ultimate review of specification design and
coding. Testing represents an interesting anomaly for the software.
Thus, a series of testing are performed for the proposed system
before the system is ready for user acceptance testing.

SYSTEM TESTING:
Software once validated must be combined with other system
elements (e.g. Hardware, people, database). System testing verifies
that all the elements are proper and that overall system function
performance is achieved. It also tests to find discrepancies between
the system and its original objective, current specifications and
system documentation.

UNIT TESTING:
In unit testing different are modules are tested against the
specifications produced during the design for the modules. Unit
testing is essential for verification of the code produced during the
coding phase, and hence the goals to test the internal logic of the
modules. Using the detailed design description as a guide,

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
46
important Conrail paths are tested to uncover errors within the
boundary of the modules. This testing is carried out during the
programming stage itself. In this type of testing step, each module
was found to be working satisfactorily as regards to the expected
output from the module.
In Due Course, latest technology advancements will be
taken into consideration. As part of technical build-up many
components of the networking system will be generic in nature so
that future projects can either use or interact with this. The future
holds a lot to offer to the development and refinement of this
project.

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
47
CHAPTER-7
CONCLUSION

In this paper, we propose the CBSE framework to resolve the


security problems in the previous SPKE frameworks. The presented
framework provides resistance against both the outside and inside
KG attacks and has the merits of implicit authentication, no key
escrow, no key distribution and no secure channel. Under this
framework, we construct a concrete CBSE scheme and prove it to
satisfy the keyword ciphertext indistinguishability, the keyword
ciphertext unforgeability and the keyword trapdoor
indistinguishability against KG attacks under the BDH and HDH
assumptions in the random oracle model. Comparisons indicate that
our CBSE scheme is secure and practicable.

The limitation of the CBSE framework is that the receiver should


involve the sender’s public key in the generation of keyword
trapdoor. This implies that the receiver must designate the sender
when he/she makes search queries on his/her ciphertexts. It may be
less efficient when the receiver wants to search the ciphertexts from
many different senders. So, it would be more interesting to devise a
CBSE framework that is secure against the existing known types of
KG attacks while providing full search function (namely that a user
is able to search all his/her ciphertexts with a single keyword
trapdoor, regardless of who sends him/her the ciphertexts). This
seems to be a more challenging work. So, we leave it as our future
work and also pose it as an open problem.

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
48
REFERENCES

[1] A. Shamir, “Identity-based cryptosystems and signature


schemes,” Proc. CRYPTO 1984, pp. 47-53, 1984.
[2] S.S. Al-Riyami, K.G. Paterson, “Certificateless public key
cryptography,” Proc. ASIACRYPT 2003, pp. 452-473, 2003.
[3] C. Gentry, “Certificate-based encryption and the certificate
revocation problem,” Proc. EUROCRYPT 2003, pp. 272-293,
2003.
[4] W. Wu, Y. Mu, W. Susilo, X. Huang, L. Xu, “A provably
secure
construction of certificate-based encryption from
certificateless
encryption,” The Computer Journal, vol. 55, no. 10, pp.
1157-1168, 2012.
[5] Y. Lu and J. Li, “A provably secure certificate-based
encryption
scheme secure against malicious CA attacks in the standard
model,” Information Sciences, vol. 372, pp. 745-757, 2016.
[6] Y. Lu and J. Li, “A pairing-free certificate-based proxy
reencryption
scheme for secure data sharing in public clouds,”
Future Generation Computer Systems, vol. 62, pp. 140-147,
2016.
[7] Y. Lu and J. Li, “An improved certificate-based signature
scheme without random oracles,” IET Information Security,
vol.
10, no. 2, pp. 80-86, 2016.

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
49
[8] M. Le, I. Kim, and S. Hwang, “Efficient certificate-based
encryption
schemes without pairing,” Security and Communication
Networks, vol. 9, pp. 5376-5391, 2016.
[9] C. Zhou, Z. Cui, “Certificate-based signature scheme in the
standard model,” IET Information Security, vol. 11, no. 5, pp.
256-260, 2017.
[10] X. Ma, J. Shao, C. Zuo, R. Meng, “Efficient Certificate-
Based
Signature and Its Aggregation,” Proc. ISPEC 2017, pp. 391-
408,
2017.
[11] J. Li, L. Chen, Y. Lu, Y. Zhang, “Anonymous certificate-
based
Broadcast encryption with constant decryption cost,”
Information
Sciences, vol. 454-455, pp. 110-127, 2018.
[12] Y. Guo, J. Li, Y. Lu, Y. Zhang, and F. Zhang, “Provably
secure
certificate-based encryption with leakage resilience,”
Theoretical
Computer Science, vol. 711, pp. 1-10, 2018.
[13] T. Hyla and J. Pejaś, “A Hess-like signature scheme based
on
implicit and explicit certificates,” The Computer Journal, vol.
60,
no. 4, pp. 457-475, 2018.
[14] D. Boneh, G. Di Crescenzo, R. Ostrovsky, and G. Persiano,
“Public key encryption with keyword search,” Proc.
EUROCRYPT 2004, pp. 506-522, 2004.
[15] B. Waters, D. Balfanz, G. Durfee, and D. Smetters,
“Building
an encrypted and searchable audit log,” Proc. NDSS 2004,

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
50
2004.
[16] S. Kamara and K. Lauter, “Cryptographic cloud storage,”
Proc. FC 2010, pp. 136-149, 2010.
[17] W. Susilo and K.T. Win, “Security and access of health
research
data,” Journal of Medical Systems, vol. 31, no. 2, pp. 103-
107, 2007.
[18] L.F. Guo and W.C. Yau, “Efficient secure-channel free
public
key encryption with keyword search for EMRs in cloud
storage,”
Journal of Medical Systems, vol. 39, no. 2, pp. 1-11, 2015.
[19] L. Wu, B. Chen, K. Choo, D. He, “Efficient and secure
searchable
encryption protocol for cloud-based Internet of Things,”
Journal of Parallel and Distributed Computing, vol. 111, pp.
152-
161, 2018.
[20] D. Boneh and M. Franklin, “Identity-based encryption
from
the Weil pairing,” Proc. CRYPTO 2001, pp. 213-229, 2001.
[21] D.J. Park, K. Kim, and P.J. Lee, “Public key encryption with
conjunctive field keyword search,” Proc. WISA 2004, pp. 73-
86,
2005.
[22] D. Boneh and B. Waters, “Conjunctive subset and range
queries
on encrypted data,” Proc. TCC 2007, pp 535-554, 2007.
[23] C. Gu, Y. Zhu, H. Pan, “Efficient public key encryption with
keyword search schemes from pairings,” Proc. INSCRYPT
2007, pp. 372-383, 2007.
[24] B. Zhang and F. Zhang, “An efficient public key
encryption

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
51
with conjunctive-subset keywords search,” Journal of Network
and Computer Applications, vol. 34, no. 1, pp. 262-267, 2011.
[25] Z. Lv, C. Hong, M. Zhang, and D. Feng, “Expressive and
secure searchable encryption in the public key setting,” Proc.
ISC 2014, pp 364-376, 2014.

Secure Channel Free Certificate-Based Searchable Encryption


Withstanding Outside and Inside Keyword Guessing Attacks
52

You might also like