Professional Documents
Culture Documents
Project Documentation
Project Documentation
INTRODUCTION
Cloud computing is a kind of Internet-based computing that uses the internet and
central remote servers to maintain data and applications. Cloud computing allows
consumers and businesses to use applications without installation and access their
personal files at any computer with internet access. It frees a user from the concerns
about the expertise in the technological infrastructure of the service. It allows end users
and small companies to make use of various computational resources like storage,
software and processing capabilities provided by other companies. The cloud services
can be divided into three categories: Infrastructure as a Service (IaaS), Platform as a
Service (PaaS), and Software as a Service (SaaS). Amazon, Microsoft, Google are some
of the major cloud service providers. Google App Engine (GAE) is a type of PaaS
provided by Google which allows web application hosting. Windows Azure, SQL
Azure is some of the services offered by Microsoft providing processing and storage
capabilities for large datasets. Amazon Web Services (AWS) including Simple Storage
Service (S3), SQS, EC2 are cloud services provided by Amazon. Thus convenience, on
demand measured access, shared easily configurable computational resources, and self-
service are some of the major characteristics of a cloud environment.
1.2 MOTIVATION
Cloud computing refers to the web-based computing, providing users or devices with
a shared pool of resources, information or software on demand and pay per-use basis.
It frees a user from the concerns about the expertise within the technological
infrastructure of the service. It allows users and little companies of or use varied
computational resources like storage, software and processing capabilities provided by
other companies. The cloud services are often divided into three categories:
Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a
Service (SaaS) [2]. Amazon, Microsoft, Google are a number of the main cloud service
providers. App Engine (GAE) may be a sort of PaaS provided by Google which allows
web application hosting. Windows Azure, SQLAzure are a few of the services offered
by Microsoft providing processing and storage capabilities for giant datasets [3].
1
Amazon Web Services (AWS) including Simple Storage
Service (S3), SQS, EC2 are cloud services provided by the Amazon [1].This paper
presents an approach to mine the info securely using-means algorithm from the cloud
even with in the presence of adversaries. This approach assumes that the info isn't
stored during a centralized location but is distributed to varied hosts. This proposed
approach prevents any intermediated at a leakage within the process of computation
while maintaining the correctness and validity of the info mining process and therefore
the end results.
1.3 OBJECTIVE
With the advancement in technology, industry, and research a large amount of data is
being generated which is increasing at an exponential rate. Traditional Data Storage
systems are not able to handle Data and also analyzing the Data becomes a challenge
and thus it cannot be handled by traditional analytic tools. Data Mining based attacks,
a major threat to the data, allows an adversary or an unauthorized user to infer valuable
and sensitive information by analyzing the results generated from computation
performed on the raw data. Data Mining based attacks, a major threat to the data, allows
an adversary or an unauthorized user to infer valuable and sensitive information by
analyzing the results generated from computation performed on the raw data. The
homomorphic public key encryption is a cryptographic system that allows the
performance of a set of operations on the data when they are encoded, resulting in its
data appearing in plain text. The approach is able to maintain the correctness and
validity of the existing k-means to generate the final results even in the distributed
environment
2
Three key considerations involved in the feasibility analysis are:
1. Economic Feasibility
2. Technical Feasibility
3. Social Feasibility
1. Economic Feasibility:
This study is carried out to check the economic impact that the system will have on
the organization. The amount of funds 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.
2. 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.
3. Social Feasibility:
The aspect of study is to check the level of acceptance of the system by the user. This
includes the process of training the user to use the system efficiently. 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 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.
Purpose:
All software requirements of the A HYBRID CLOUD APPROACH FOR
SECURE AUTHORIZED secure mining by protecting data stored in cloud databases
3
from a given datasets are specified in this document. We also present several new
secure mining constructions supporting Authorized duplicate check in a hybrid cloud
architecture its successor is the system detail design document.
Scope:
Document Conventions:
The first initial of each component name is in capital. The terms service and
system are interchangeable in this document.
Business Opportunity:
The service provider is responsible for providing the service related to the
requested data to the user. Cloud helps to upload data in very big sizes which can be
shared among the users. Cloud computing has emerged as one of the most useful
techniques in information technology. Cloud computing is an umbrella term used to
refer to internet based development and services. Cloud computing has some
characteristics like remotely hosted, co modified [8]. In these types of systems
sometimes data may be placed on the different infrastructure.
User-Level Goals:
To improved integrity.
To increase the storage utilization.
To remove the duplicate copies of data and improve the reliability.
To improve the security
4
1.6 OVERALL DESCRIPTION:
Product Perspective:
Secure mining can also take place at the block level, which eliminates duplicate
blocks of data that occur in non-identical files. Although data secure mining brings a
lot of benefits, security and privacy concerns arise as users’ sensitive data are
susceptible to both insider and outsider attacks. Traditional encryption, while providing
data confidentiality, is incompatible with data secure mining. We also presented several
new secure mining constructions supporting authorized duplicate check in hybrid cloud
architecture, in which the duplicate-check tokens of files are generated by the private
cloud server with private keys RSA encryption has been proposed to enforce data
confidentiality while making secure mining feasible. It encrypts/decrypts a data copy
with a key, which is obtained by computing the cryptographic hash value of the content
of the data copy.
Product Functions:
After key generation and data encryption, users retain the keys and send the
cipher text to the cloud. To prevent unauthorized access, a secure proof protocol is also
needed to provide the proof that the user indeed owns the same file when a duplicate is
found. After the proof, subsequent users with the same file will be provided a pointer
from the server without needing to upload the same file.
The developed techniques will allow flexibility in accessing data from different
users in a cloud environment.
The file in the cloud environment can be broken from time to time.
Secure mining systems cannot support differential authorization duplicate
check, which is important in many applications.
Assumptions and Dependencies:
The cloud platform allows the developers to create the applications that will run in
the cloud. Cloud storage is the concept in which data is placed on the cloud server
instead of the user's local drive. The infrastructure provides the user different services
which reduces the cost of maintaining the software. The hardware can be upgraded in
5
this kind of infrastructure provided by the cloud. The cloud services help in the cloud
to connect the different users through the network.
6
development tools is key. The question really is therefore not so much which are the
important non-functional requirements but which ones should I be considering in the
context of a cloud platform? Below are some of the key NFR’s I would normally expect
to be taken into consideration when looking at moving workloads to the cloud. These
apply whether they are public or private or a mix of the two. These apply to any of the
layers of the cloud stack (i.e. Infrastructure, Platform or Software as a Service) but will
have an impact on different users. For example availability (or lack of) of a SaaS service
is likely to have more of an impact on the business user than developers or IT operations
whereas availability of the infrastructure will affect all users.
Availability – What percentage of time does the cloud vendor guarantee cloud
services will be available (including scheduled maintenance down-times)? Bear in
mind that although 99% availability may sound good that actually equates to just
over 3.5 days potential downtime a year. Even 99.99 could mean 8 hours of down
time. Also consider as part of this Disaster Recovery aspects of availability and if
more than one physical data center is used where do they reside? The latter is
especially true where data residency is an issue if your data needs to reside on-
shore for legal or regulatory reasons.
Elasticity (Scalability) – How easy is it to bring on line or take down compute
resources (CPU, memory, network) as workload increases or decreases?
Interoperability – If using services from multiple cloud providers how easy is
it to move workloads between cloud providers? (Hint: open standards help
here). Also what about if you want to migrate from one cloud provider to
another? (Hint: open standards help here as well).
Security – What security levels and standards are in place? for public/privat e
clouds not in your data center also consider physical security of the cloud
providers data center’s as well as networks. Data residency again needs to be
considered as part of this.
Adaptability – How easy is it to extend, add to or grow services as business needs
change? For example if I want to change my business processes or connect to
new back end or external API’s how easy would it be to do that.
Performance – How well suited is my cloud infrastructure to supporting the
workloads that will be deployed onto it, particularly as workloads grow.
Usability – This will be different depending on who the client is (i.e. business users,
7
developers/architects or IT operations). In all cases however you need to consider
ease of use of the software and how well designed interfaces are etc. IT is no longer
hidden inside your own company, instead your systems of engagement are out there
for all the world to see. Effective design of those systems is more important than
ever before.
Maintainability – More from an IT operations and developer point of view. How
easy is it to manage (and develop) the cloud services.
Integration – In a world of hybrid cloud where some workloads and data need to
remain in your own data center (usually systems of record) whilst others need to
be deployed in public or private clouds (usually systems of engagement) how those
two clouds integrate is crucial.
8
2. LITERATURE SURVEY
2.1 INTRODUCTION
Many researchers have attempted to provide security in the cloud using different
encryption techniques. Here is the observation summarization of each & every research
done. Ms. Deepti Mittal along with his team has stated an encryption technique called
secure data mining in cloud using homomorphic encryption technique. The proposed
approach performs k-means clustering of a dataset which is partitioned horizontally
and stored in two distinct areas. The methodology first runs locally then performs a
combined calculation on encrypted results to get complete results. The assumed model
is semi-honest adversary i.e. members attempt to release the information of each other
while keeping up their security. But the study was performed only on limited nodes and
it does not provide third party security during communication. This system works well
but can be made more reliable if authenticity will be provided. Mr. Shashank Bajpai
and his team have introduced a more reliable solution to secure data in the cloud using
a fully homomorphic encryption technique. This paper proposes security measurement
both in Public Cloud and Private Cloud. The proposed system is used to send data to
the cloud providers. Thus enabling cloud computing vendors to perform operations on
data as per request, such as analyzing sales patterns, without exposing the original data.
This can be achieved by cryptosystems based on Homomorphic Encryption. Authors
recommend improving the homomorphic encryption algorithm's complexity and
response time to requests that are calculated according to the length of the public key.
Mr. Aws Nasser Jaberand his team does study data security in the cloud. They studied
real Service suppliers, for example, Microsoft, Yahoo, and Google, have subsequently
added encryption to end-to-end information facilitating and administration for clients.
For instance, Google Cloud Storage now consequently scrambles every single new data
written on disk. As indicated by specialists, measures are critical for securing the
development of knowledge between the customer organizations and the suppliers of
cloud services. Ordered archives from the NSA demonstrate that they are attempting to
debilitate encryption calculations utilized by people in general. As indicated by the US
government, Cloud administration firms must hand over their encryption keys when
inquired. Such articulations have centered significant consideration on key
administration and information proprietorship. A cloud framework administration
9
organization, affirmed that in spite of the fact that encryption endeavors by
administration suppliers have fundamental influence in enhancing cloud
Security, their adequacy is constrained. Mrs. Uma Somaniand her team have
implemented Digital Signature with RSA Encryption Algorithm to Enhance the Data
Security of Cloud in Cloud Computing. In this research they have studied data security
in the cloud using the RSA algorithm. Cloud computing is the Concept Implemented
to unravel the Daily Computing Problems, preferences of Hardware Software and
Resource Availability unhurried by Computer clients. The distributed computing gives
an undemanding and non-incapable Solution for Daily Computing. The common
Problem Associated with Cloud Computing is the Cloud security and the proper
Implementation of Cloud over the Network. Mr. Khalid El Makkaouiand his team has
studied Challenges of Using Homomorphic Encryption to Secure Cloud Computing. In
this paper challenges of using homomorphic encryption techniques are discussed.
Cloud computing providers must implement concepts ensuring network security,
hardware, data storage and strategies of control and access to services. All these
elements help to preserve data security and ensure the availability of services associated
with the Cloud, to better satisfy clients and acquire and build their trust. Even if the
data storage security in cloud servers is assured, reluctance remains when it comes to
processing confidential data. The fear that sensitive data is being used is a major
obstacle in the adoption of cloud services by enterprises. Authors recommended
focusing on the analysis and improvement of the complexity of existing Homomorphic
Encryption algorithms by enabling cloud servers for performing various operations by
the clients and providing assurance of the quality of service. So, in general there is
scope of improvement in accuracy, privacy, security and authenticity in cloud
computing environment and still there is a scope of research in the area to improve the
security during the mining of data using cloud computing techniques.
10
because of its financial and operational benefits.
Lying at the intersection of mobile computing and cloud computing, designing
privacy-preserving outsourced spatial range query faces the challenges.
11
named ˆ ss-tree. Specifically, the main contributions of this paper are three folds.
We propose IPRE, which allows testing whether the inner product of two vectors is
within a given range without disclosing the vectors. In predicate encryption, the key
corresponding to a predicate f can decrypt a cipher text if and only if the attribute of
the cipher text x satisfies the predicate, i.e., f(x) = 1. Predicate-only encryption is a
special type of predicate encryption not designed for encrypting/decrypt ing
messages. Instead, it reveals whether f(x) = 1 or not. Predicate-only encryption
schemes supporting different types of predicates have been proposed for privacy -
preserving query on outsourced data.
We propose EPLQ, an efficient solution for privacy preserving spatial range query.
In particular, we show that whether a POI matches a spatial range query or not can
be tested by examining whether the inner product of two vectors is in a given range.
The two vectors contain the location information of the POI and the query,
respectively. Based on this discovery and our IPRE scheme, spatial range query
without leaking location information can be achieved. To avoid scanning all POIs
to find matched POIs, we further exploit a novel index structure named ˆ ss-tree,
which conceals sensitive location information with our IPRE scheme.
Our techniques can be used for more kinds of privacy preserving queries over
outsourced data. In the spatial range query discussed in this work, we consider
Euclidean distance, which is widely used in spatial databases. Our IPRE scheme and
ˆ ss-tree may be used for searching records within a given weighted Euclidean
distance or great-circle distance as well. Weighted Euclidean distance is used to
measure the dissimilarity in many kinds of data, while great-circle distance is the
distance of two points on the surface of a sphere.
12
attacks and cipher text-only attacks.
Using great-circle distance instead of Euclidean distance for long distances on
the surface of earth is more accurate. By supporting these two kinds of
distances, privacy-preserving similarity query and long spatial range query can
also be realized.
2.4 SUMMARY
This Problem statement proposes a secure k-means data mining approach
assuming the data to be distributed among different hosts preserving the privacy of the
data. The approach is able to maintain the correctness and validity of the existing k-
means and generate the final results even in the distributed environment. A new
approach of modern cryptography, defined as the Homomorphic Encryption allows for
the encrypted data to be arbitrarily computed which is a solution that aims to preserve
the security, confidentiality and data privacy. This system proposes methods that ensure
the confidentiality and privacy in the mining of databases based on fully homomorphic
encryption.
13
3. SYSTEM DESIGN
3.1. SYSTEM ARCHITECTURE
A system architecture is the conceptual model that defines the structure, behavior,
and more views of a system. A system architecture can consist of system components
and the sub-systems developed that will work together to implement the overall
system.
UML stands for unified modelling language. UML could be a language for
specifying, visualizing and documenting the system. This can be the step whereas
developing any product when analysis. The goal from this can be to supply a model
of the entities concerned within the project that later got to be designed. The
illustration of the entities that are to be employed in the merchandise being developed
need to be designed.
14
3.2.1 Use case Diagram
15
3.2.2 Activity Diagram
16
3.2.3 Sequence Diagram
17
3.2.4 Class Diagram
Class diagram is a static diagram. The class diagrams are widely used in the modeling
of object oriented systems because they are the only UML diagrams, which can be
mapped directly with object-oriented languages. Class diagram shows a collection
of classes, interfaces, associations, collaborations, and constraints.
18
4. IMPLEMENTATION
This activity needs the utilization of metaphysics languages like bird of
Minerva, RDF schema etc., to make an estimable model. The end result of this activity
may be a written metaphysics in a political candidate language. The metaphysics
development languages ought to provide an associate analyses to ensure the absence
of syntax and lexical errors. It ought to give associate editor, translator and judge to
switch the definitions, to permit movability and to sight bound inconsistencies within
the metaphysics. The metaphysics implementation needs an associated atmosphere to
support the Ontologies selected at the mixing section.
Data which is collected through the source might be stored in the data
storage noted as cloud. The stored data will be used by the Educational Institutes
which use the data according to their requirements based on the demand. The data
will be processed by the E-Learning process where the conditional state of several
formations like System Management and the services which make the user through
the Learning object/ curriculum Development.
19
4.2. System development environment
The experimental design of the project includes the Windows7 and JDK
software system and MySQL 2008 databases. And SQL YOG needed to boot a
valid cat server.
The Java Platform
You’ve already been introduced to the Java VM. It’s the bottom for the Java
platform and is ported onto varied hardware-based platforms.
The Java API could be a giant assortment of ready-made code elements that
give several helpful capabilities, like graphical program (GUI) widgets. The Java
API is sorted into libraries of connected categories and interfaces; these libraries are
called packages. Successive section, what will Java Technology Do? Highlights what
practicality a number of the packages within the Java API give.
20
Native code is code that when you compile it, the compiled code runs on a
particular hardware platform. As a platform-independent environment, the Java
platform will be a touch slower than native code. However, sensible compilers, well-
tuned interpreters, and just-in-time computer memory unit code compilers will bring
performance about to that of native code while not threatening movableness.
ODBC
Microsoft Open information property (ODBC) could be a customary
programming interface for application developers and database systems suppliers. Once
ODBC would become a nominally standard application for Terminal emulators with
computer systems, developers had to use exclusive words for any information they
chose to add. Now, ODBC has created the selection of the information system nearly
inapplicable from a writing perspective that is because it ought to be. Application
developers have rather more vital things to stress regarding than the syntax that's
required to port their program from one information to a different once business
suddenly wants an amendment.
Through the ODBC Administrator Panel, you'll be able to specify the actual
information that's related to an information supply that an ODBC application is written
to use. Think about associate degree ODBC information supply as a door with a
reputation thereon. Every door can lead you to a specific information. As an example,
the information supply named Sales Figures may well be a SQL Server information,
whereas the Accounts due information supply might talk to associate degree Access
information. The physical information brought up by an information supply will reside
anyplace on the local area network.
The ODBC system files don't seem to be put in on your system by Windows ninety
five. Rather, they're put in once you setup a separate information application, like SQL
Server shopper. Requires some folder identified to ODBCINST.DLL until the ODBC
symbol was placed well into a fait row. It's additionally potential to administer your
ODBC information sources through a complete program known as ODBCADM.EXE.
There's a 16-bit and a 32-bit version of this program and maintains a separate list of
ODBC information sources.
From a programming perspective, the wonder of ODBC is that the application will
be written to use a similar set of operate calls to interface with any knowledge supply,
despite the information vendor. The ASCII text file of the application doesn’t modify
21
whether or not it talks to Oracle or SQL Server. We have a tendency to solely mention
these 2 as AN example. There are ODBC drivers on the market for many dozen
common information systems. Even spreadsheets and plain text files will be changed
into knowledge sources. The OS uses the register info written by ODBC Administrator
to see that low-level ODBC drivers are required to speak to the info supply (such as the
interface to Oracle or SQL Server). ODBC operator charging is transparent to the
computer algorithm ODBC. In a very client/server atmosphere, the ODBC API even
handles several of the network problems for the applying technologist.
The advantages of this theme are thus varied that you just are most likely thinking
there should be some catch. The sole disadvantage of ODBC is that it isn’t as
economical as talking on the native information interface. ODBC has had several
detractors build the charge that it's too slow. Microsoft has continually claimed that the
crucial consideration of performance is the quality of the driving force software
package that's used. In our humble opinion, this is often true. The provision of excellent
ODBC drivers has improved a good deal recently. And anyway, the criticism regarding
performance is somewhat analogous to people who aforementioned that compilers
would ne'er match the speed of pure programming language. Maybe not, however the
compiler (or ODBC) offers you the chance to put in writing cleaner programs, which
implies you end sooner. Meanwhile, computers get quicker once a year.
JDBC
In a trial to line associate degree freelance info normal API for Java; Sun
Microsystems developed Java info property, or JDBC. JDBC offers a generic SQL info
access mechanism that gives an identical interface to a range of RDBMSs. Such
standardized design was accomplished by using "log-in" devices, and operators, for
estate data. If an info marketer needs to possess JDBC support, he or she should give
the driving force for every platform that the info and Java run on.
JDBC was proclaimed in March of 1996. It had been discharged for a ninety day
public review that concluded Gregorian calendar month eight, 1996. Thanks to user
input, the ultimate JDBC v1.0 specification was discharged shortly once.
22
The remainder of this section can provide enough info regarding JDBC for you to
grasp what it's about and the way to use it effectively.
Furthermore, Android was unique where each Android software was assembled then
collected. With a compile you translate a Java program into AN intermediate language
referred to as Java computer memory unit code the platform-independent code
instruction is passed and run on the pc.
Compilation happens simply once; interpretation happens when the program is dead.
The figure illustrates however this works.
Java binary code can be thought of as the computer code commands for the Java
Virtual Machine (Java VM). Every Java interpreter, either it's a Java programming tool
or a web server capable of running Java applets, is a Java VM implementation. The Java
VM can also be applied in hardware.
23
4.3 ALGORITHM
1. Crisp Value: Crisp worth is understudy mark got in semester's assessment.
2. Encryption: Encryption means crisp worth (understudy mark) is converted into
encrypt information esteem with assistance of reasonable enrollment function
(triangular participation function).
3. Inference Mechanism: Define diverse sort encrypt guideline ("If Then" Rule) for
understudy academic performance assessment.
4. Output: Determines a yield participation function an incentive for each active
guideline ("If Then" rule).
5. Decryption (Performances): encryption means calculate the last yield
(Performance Value) with the assistance of reasonable encryption strategy. Right
now work, we have utilized Center of Area (COA) for encryption (performance
assessment).
The Encryption of the results can be defined by following equation:
24
Adjusted cosine similarity
– Use Rachel's scores for all those things and estimate Things ranking.
Making predictions
– An overview of the Movie Lens database suggests that "in many other true-
world situations, a community of 20 to 50 residents appears rational".
– Object-based scanning may not address the problem of optimization alone.
– Pre-processing approach by Amazon.com (in 2003).
– Calculate all pairwise item similarities in advance.
– That community used during initialization becomes usually very limited, so
only things that the consumer already classified were accounted.
– Element comparisons should be more robust then consumer similitudes.
Memory requirements
– Out for N2 can read and understand bunch-wise comparisons (N = amount for
products) through concept.
– It is considerably lower than reality (products without any non-ratings).
Further reductions possible
– Minimum threshold for co-ratings.
– Limit the neighborhood size (might affect recommendation accuracy).
25
4.4 SOFTWARE & HARDWARE REQUIREMENTS
Requirement Specification plays a vital role to form quality code answers. Needs
are refined and analyzed to assess the clarity. Needs are painted in an exceedingly
manner that ultimately results in thriving code implementation. Every demand should
be according to the objective.
Hardware Requirements
Ram: 1 GB
Software Requirements
Server: Xampp
Database: MYSQL
That is considerably lower than reality (products without The System style
Document describes the system needs, operative setting, system and system design,
files and info style, input formats, output layouts, human-machine interfaces, elaborate
style, process logic, and external inter no-ratings)
The routing of events from publishers to the relevant subscribers, we use the content-
based data model. We consider pub/sub in a setting where there exists no dedicated
26
broker infrastructure. Publishers and subscribers contribute as peers to the
maintenance of a self-organizing overlay structure. To authenticate publishers, we use
the concept of advertisements in which a publisher announced beforehand the set of
events which it intends to publish.
2. Identity Based Encryption Module:
In our approach, publishers and subscribers interact with a key server. They provide
credentials to the key server and in turn receive keys which fit the expressed
capabilities in the credentials. Subsequently, those keys can be used to encrypt,
decrypt, and sign relevant messages in the content based pub/sub system, i.e., the
credential becomes authorized by the key server. The keys assigned to publishers and
subscribers, and the cipher texts, are labeled with credentials. In particular, the
identity-based encryption ensures that a particular key can decrypt a particular cipher
text only if there is a match between the credentials of the cipher text and the key.
Publishers and subscribers maintain separate private keys for each authorized
credential.
3. Key Generation for Publisher/Subscriber Module:
Publisher keys: Before starting to publish events, a publisher contacts the key server
along with the credentials for each attribute in its advertisement. If the publisher is
allowed to publish events according to its credentials, the key server will generate
separate private keys for each credential. The public key of a publisher p for credential
is generated.
Subscriber keys: Similarly, to receive events matching its subscription, a subscriber
should contact the key server and receive the private keys for the credentials associated
with each attribute A.
4. Secure Overlay Maintenance Module:
The secure overlay maintenance protocol is based on the idea that in the tree,
subscribers are always connected according to the containment relationship between
their credentials. A new subscriber s generates a random key SW and encrypts it with
the public keys for all credentials that cover its own credential, for example, a
subscriber with credential will generate cipher texts by applying the public keys. The
generated cipher texts are added to a connection request (CR) and the request is
forwarded to a random peer in the tree. A connection is established if the peer can
decrypt any of the cipher text using its private keys.
27
4.6 DATABASE TABLES
4.6.1 Transaction table
A transaction is an activity performed by entities (master tables) within the system.
These activities are captured in transaction tables and usually, these transaction entries
have foreign keys to master records. Transaction tables are designed to store events in
the system.
The Request Table stores the data related to the download requests sent by the users
to the data owners.
28
4.6.3 User transaction table
The User Transaction Table stores the data related to the transactions done by the users.
The Registration Table statement maps the structure of a file to the structure of a
table. It maps the fields in a file to columns in a virtual table.
29
4.6.5 Cloud details table
The Cloud Details Table stores all the information related to the cloud.
30
5. EXPERIMENTAL RESULTS AND TEST CASES
5.1 RESULTS
31
hardness required for NP-hardness. Moreover, many hard algebraic problems which
serve as the basis for cryptography are in NP ∩co-NP. Such problems cannot be NP-
complete unless NP = co-NP. Finally, AES is a finite-domain function. It is invertible,
distinguishable from a random permutation in (large but) constant time. The definitions
of P, NP, etc., refer to asymptotic behavior that is, as the input size grows to infinity.
Because of the algebraic structure of AES, it is probably possible to define a
"generalized AES" for infinitely many key lengths. Clustering algorithms are generally
heuristic in nature and are often polynomial in time. We are using k-means clustering
algorithm for data mining and AES algorithm for homomorphic encryption so our
project comes under NP hard Problem.
5.2 SCREENSHOTS
32
5.2.2 User Registration Page
33
5.2.4 Data Owner Welcome Page
34
5.2.6 Upload File in the Selected Cloud
35
5.2.8 User Login Page
36
5.2.10 Request to Download File Page
37
5.2.12 Secret Key Sent to the Particular Mail
38
5.2.14 Enter the Particular Key
39
5.2.16 Enter the Wrong Key
40
5.2.18 User Request Processing By Data Owner
41
5.2.20 Admin Page
42
5.3 SAMPLE CODE
5.3.1 VALIDATION:
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.Connection"%>
<%@ page
import="java.util.Properties,javax.mail.*,java.sql.*,javax.servlet.http.*,javax.mail.int
ernet.*" %>
pageEncoding="ISO-8859-1"%>
<%@ page
import="java.util.Date,java.util.Properties,javax.mail.Authenticator,javax.mail.
Message, javax.mail.MessagingException, javax.mail.PasswordAuthentication"
%>
"javax.mail.Session,javax.mail.Transport,javax.mail.internet.AddressException ,java
x.mail.internet.Inter netAddress,javax.mail.internet.MimeMessage" %>
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
</head>
<body>
<%
String path=null;
String uname=request.getParameter("user");
String fname=request.getParameter("fname");
43
String cloud=request.getParameter("cloud");
String owner=request.getParameter("msg");
System.out.println("username@@@@"+uname);
System.out.println("filename@@@@"+fname);
System.out.println("cloud name@@@@"+cloud);
System.out.println("owner@@@@"+owner);
String status="download";
Class.forName("com.mysql.jdbc.Driver");
Connection
con=DriverManager.getConnection("jdbc:mysql://localhost:3306/privacy","ro
ot",""); String message="";
ps1.setString(1,uname);
ResultSet rs = ps1.executeQuery();
while(rs.next())
System.out.println("email@@@@"+email);
ps.setString(1,status);
ps.setString(2,uname);
ps.setString(3,fname);
ps.setString(4,cloud);
int i =ps.executeUpdate();
try
44
{
if(i>0)
ps2.setString(1,owner);
ps2.setString(2,fname);
if(rs2.next())
System.out.println("key@@@@"+key);
properties.put("mail.smtp.host", "smtp.gmail.com");
properties.put("mail.smtp.port", "587");
properties.put("mail.smtp.auth", "true");
properties.put("mail.smtp.starttls.enable", "true");
};
45
msg.setFrom(new InternetAddress("studentcheckmail@gmail.com"));
msg.setRecipients(Message.RecipientType.TO, toAddresses);
msg.setSubject(subject);
msg.setSentDate(new Date());
msg.setText(message);
Transport.send(msg);
//to=rs2.getString(5);
// session.setAttribute("username",uname);
response.sendRedirect("home.jsp");
catch(Exception e)
e.printStackTrace();
%>
</body>
</html>
46
5.3.2 UPLOAD FILE:
package mypack;
import java.io.*;
import java.sql.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
import db.MyConnection;
//import org.apache.tomcat.util.http.fileupload.FileItem;
//import
org.apache.tomcat.util.http.fileupload.disk.DiskFileItemFa
ctory; //import
org.apache.tomcat.util.http.fileupload.servlet.ServletFileU
pload; //import
org.apache.tomcat.util.http.fileupload.servlet.ServletReque
stContext; import
org.apache.tomcat.util.http.fileupload.RequestContext;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileItemFactory;
import
org.apache.commons.fileupload.FileUploadExcepti
on; import
org.apache.commons.fileupload.disk.DiskFileItemF
actory; import
org.apache.commons.fileupload.servlet.ServletFile
Upload; import
org.apache.commons.fileupload.servlet.ServletReq
uestContext;
47
private File tmpDir;
String user;
String path=null;
String mystatus="Upload";
String mystatus1="Success";
String mystatus2="Failed";
String mystatus3="Active";
if (mode == Cipher.ENCRYPT_MODE) {
cipher.init(Cipher.ENCRYPT_MODE, desKey);
doCopy(cis, os);
cipher.init(Cipher.DECRYPT_MODE, desKey);
48
public static void doCopy(InputStream is, OutputStream os)
throws IOException { byte[] bytes = new byte[64];
int numBytes;
os.write(bytes, 0, numBytes);
os.flush();
os.close();
is.close();
try
InputStream is = m_client.getInputStream();
System.out.println("1");
OutputStream os = new
FileOutputStream(localfilename);
System.out.println("3");
int readCount1=0;
49
while ((readCount1 = bis.read(buffer)) > 0)
fos1.write(buffer, 0, readCount1);
}//while
System.out.println("after while");
bos.close();
is.close();
System.out.println("successfu
lly downloadded"); }//try
{ ex.printStackTrace();
return false;
}//catch
catch (Throwable e) {
e.printStackTrace();
return true;
}//downloadfile
50
6. TESTING
The purpose of testing is to get errors. Research is this way of trying to have every
possible defect or flaw in such a result of rather research. It provides some way to see
the practicality of elements, sub-assemblies, assemblies and/or a finished product it's
the method of physical exercise code with the intent of guaranteeing that the
Software platform satisfies the client standards aligned because of its requirements
and therefore does not struggle in such an unacceptable way. There are numerous sorts
to take a look at. Every take a look at kind addresses a particular testing demand.
Unit take a look acting involves the look of test cases that validate that the interior
program logic is functioning properly, which program inputs manufacture valid
outputs. Every division of calls or the object model stream must be correct. It's the
testing of individual code units of the appliance .It is done once the completion of a
private unit before integration. This may be a systemic measure, which is intrusive and
relies over its building data. Union take a good look as perform simple component type
checks and check a chosen market process, software and/or specification of a device.
Unit tests make sure that every distinctive path of a business method performs
accurately to the documented specifications and contains clearly outlined inputs and
expected results.
Integration tests are designed to check integrated computer code elements to work
out if they really run collectively. Testing is event driven and is a lot involved with the
essential outcome of screens or fields. Integration tests demonstrate that though the
elements were one by one satisfaction, as shown by success unit testing, the mix of
elements is correct and consistent. Integration testing is specifically geared toward
exposing the issues that arise from the mix of elements.
51
6.3 Functional Testing
Functional tests give systematic demonstrations that functions tested are on the
market as such as by the business and technical necessities, system documentation, and
user manuals.
System testing ensures that the whole integrated software meets needs. It
tests a configuration to ensure illustrious and certain results. AN example of a system
taking a look at acting is the configuration orienting system integration test. System
testing is based on explanations of methods or streams, stressing ties to pre driven
processes, but levels of incorporation.
52
Test objectives:
Features to be tested:
The task of the mixing check is to ascertain that elements or software system
applications, e.g. elements in an exceedingly software or – one maximize – software
applications at the corporate level – move while not error.
Study results: Both test situations listed over board for successfully tested. No faults
have been found.
53
6.8 Test Cases
54
5 Enter Data From Data System should System should Pass
Correct User Master redirect to redirect to home
Name and home page page
Password
6 Enter the Data From Data System should System should Pass
quiz name Master add quiz redirect to quiz page
and subject in faculty
7 Enter the Data From Data System should System should Pass
quiz name Master display quiz redirect to quiz page
and subject in student page
to take test
8 Import the Data From Data System should System should Pass
test data Master import data to redirect import the
from excel database excel sheets
9 Data should Data From Data System should System should Pass
be Master import data redirect users to the
represented from database analysis graphs
in graphs and display
graphs
55
7. CONCLUSION AND FUTURE SCOPE
E-Learning can assess the importance of the methodology utilized in the planned
Hybrid Recommender System and additionally showcases the results non-inheritable
and provides the direction for the longer term analysis work. The planned analysis work
is principally involved with the aim of developing the Recommender System
framework which is able to assist to individualize the courses in an e-learning system.
The analysis work makes use of Sem-gram, Nearest Neighborhood and domain
metaphysics for economic data retrieval. Recommender system aims to produce
personalized data regarding courses, product or perhaps services to users and alleviate
the challenge of knowledge overload and knowledge retrieval challenges. The
recommendations support users interest, preferences or data desires and so
personalization is often achieved by comparing user question, profiles with things
within the repository. During this study, personalized recommender system was
designed, enforced and evaluated, specializing in recommending the courses.
56
8. REFERENCES
[3] C. Santos O., G. Boticario J., D. Pérez-Marín, Extending web based educational
systems with personalized support through User Centred Design recommendations
along the e-learning life cycle, Science of Computer Programming, vol. 88, pp. 92-109,
2014.
57