7/27/2019 Multi Purpose Editor
1/25
GRAPHICAL PASSWORD AUTHENTICATION
PROJECT REPORT
Submitted by
JAZEERA A
Register no:1122K2775
In partial fulfilment for the award of the degree
Of
BACHELOR OF COMPUTER SCIENCE
Under the guidance of
Mr.S.JOHN GRASIAS MCA.,
AJK COLLEGE OF ARTS AND SCIENCE
(Affiliated to Bharathiar University,Coimbatore)
PALAKKAD MAIN ROAD,NAVAKKARAI
COIMBATORE-641105
APRIL-2013
7/27/2019 Multi Purpose Editor
2/25
ii
AJK COLLEGE OF ARTS AND SCIENCE
PALAKKAD MAIN ROAD,NAVAKKARAI
COIMBATORE-641105
BACHELOR OF COMPUTER SCIENCE
PROJECT WORK
APRIL-2013
This is to certify that the project entitled
GRAPHICAL PASSWORD AUTHENTICATION
Is a bonofide of tproject work done by
JAZEERA A
Register no:1122k2775
Of Computer Science during the year 2013-2014
Project Guide Head of the department
Submitted for the project Viva-Voice examination held on
Internal Examiner External Examiner
7/27/2019 Multi Purpose Editor
3/25
iii
AJK COLLEGE OF ARTS AND SCIENCE
PALAKKAD MAIN ROAD,NAVAKKARAI
COIMBATORE-641105
CERTIFICATE
This is to certify that the project work entitled GRAPHICAL PASSWORD
AUTHENTICATION is a bonafide work carried out by JAZEERA A student of B.Sc.
(Computer Science), Bharathiyar University, Coimbatore under the supervision of
Mr.S.JOHN GRASIAS MCA., during the academic year 2013-2014 in partial fulfillment
of the requirements for the award of the Degree of the Bachelor of Science.
Date: Project Guide
Head of the department
7/27/2019 Multi Purpose Editor
4/25
iv
DECLARATION
I here by declare that the project GRAPHICAL PASSWORD
AUTHENTICATION Submitted to AJK COLLEGE OF ARTS AND SCIENCE Affiliated to
Bharathiyar university in partial fulfillment for the degree of Bachelor of Science in
Computer Science, is record of original work done by me during the period of study
at AJK College of Arts And Science, Coimbatore, under the guidance of Mr.S.JOHN
GRASIAS MCA., Head of the Department in Computer Science.
JAZEERA A
1122K2775
I certify that the declaration made above by the candidate is true
Mr.S.JOHN GRASIAS
Head of the department
7/27/2019 Multi Purpose Editor
5/25
V
ACKNOWLEDGEMENT
I take this oppurtunity to acknowledge with great pleasure, deep satisfaction
and gratitude, the contribution of many individuals in the successful completion of
this project.
I express my gratitude to Dr.P.V.BALASUBRAMANIYAM, Principal of AJK
College of arts and science, for being an inspiration and encouragement to me.
I am deeply indebted to Mr.JOHN GRASIAS MCA., Head of the Department,
centre for the Computer Science for his consistent support during my project.
I express my deep gratitude to my guide Mr.JOHN GRASIAS MCA in
department of Computer Science, for his effective guidance and constant
encouragement, which let this informative work to its successful completion.
I would like to express my heartfelt thanks to my beloved parents for their
blessings, my friends and classmates for their help and wishes for the successful
completion of this project.
7/27/2019 Multi Purpose Editor
6/25
vi
TABLE OF CONTENTS
CHAPTER.NO TITLE PAGE NO
ABSTRACT vii
List of tables ix
List of figures x
List of Abbreviations xi
1. INTRODUCTION
1.1 over view of project 1
2. SYSTEM ANALYSIS
2.1 Existing System 2
2.2 Proposed System 2
2.3 Feasibility Study 3
2.3.1 Operational Feasibility 3
2.3.2 Technical Feasibility 3
2.3.3 Economical Feasibility 4
3. SYSTEM SPECIFICATION
3.1 Hardware Specification 5
3.2 Software Specification 5
4. SOFTWARE DESCRIPTION
4.1 Front End 6
4.2 Back End 12
7/27/2019 Multi Purpose Editor
7/25
vii
5. PROJECT DESCRIPTION
5.1 Problem Definition
5.2 Overview of Project 14
5.3 Module Description 14
5.4 System Flow Diagrams 15
5.5 Database Design 21
5.5.1 Table Design 22
5.6 Input Design 26
5.7 Output Design 26
6. SYSTEM TESTING
6.1 Testing
6.1.1 Unit Testing 296.1.2 Integration Testing 29
6.1.3 Validation Testing 30
6.1.4 System Testing 30
7. SYSTEM IMPLEMENTATION 31
8. CONCLUSION AND FUTURE ENHANCEMENT 32
9. APPENDIX
9.1 Source Code 33
9.2 Screen Shot 42
10. REFERENCES AND BIBLIOGRAPHY 51
7/27/2019 Multi Purpose Editor
8/25
viii
ABSTRACT
The project entitled Multipurpose editorprovides a user to create, edit and
execute different programming languages in a single window. We can build and
compile various programs in a single environment using IDE (Integrated
Development Environment).
The programming languages can be used in this project are:
C
C++ JAVA
We can also use a database MYSQL for store the information in table format
and to do other database applications. The compilation and execution of
different programming languages is according to the extension with which that
are saved.
Previously the programming was done in separate platforms. For different
languages different platforms were required. Sometimes, extra efforts wererequired for compilation and execution of programs especially in the case of
java. The main drawbacks are listed below.
Different platforms are required for different languages.Extra efforts are required.Familiarization with each compiler is required.
The drawbacks of the existing system are listed. Almost all the drawbacks of the
existing system could be removed to a great extend.
Creation, compilation and execution of different programminglanguages in a single window.
Easy to work Execution of programs in less time Less complexity
7/27/2019 Multi Purpose Editor
9/25
ix
INTRODUCTION
CHAPTER 1
INTRODUCTION
1.1ObjectivesVarious graphical password schemes have been proposed as alternatives to text-based
passwords. Research and experience have shown that text-based passwords are fraught with
both usability and security problems that make them less than desirable solutions. Psychology
studies have revealed that the human brain is better at recognizing and recalling images than
text. Graphical passwords are intended to capitalize on this human characteristic in hopes that
by reducing the memory burden on users, coupled with a larger full password space offered
by images, more secure passwords can be produced and users will not resort to unsafe
practices in order to cope.
GRAPHICAL PASSWORD AUTHENTICATION proposes a new click-based graphical
password scheme called Cued Click Points (CCP). It can be viewed as a combination of
PassPoints, Pass faces and Story. A password consists of one click-point per image for a
sequence of images. The next image displayed is based on the previous click-point so users
receive immediate implicit feedback as to whether they are on the correct path when logging
in. CCP offers both improved usability and security. Users could quickly create and re-enter
their passwords. Another feature of ccp is the immediate implicit feedback telling the correct
user whether their latest click-point was correctly entered.
7/27/2019 Multi Purpose Editor
10/25
SYSTEM ANALYSIS
7/27/2019 Multi Purpose Editor
11/25
CHAPTER 2
SYSTEM ANALYSIS
2.1 Existing System
Previously the programming was done in separate platforms. For different
languages different platforms were required. Sometimes, extra efforts were required for
compilation and execution of programs especially in the case of java. The main drawbacks
are listed below.
Different platforms are required for different languages. Extra efforts are required.Familiarization with each compiler is required.
2.2 Proposed System
The drawbacks of the existing system are listed. Almost all the drawbacks of the
existing system could be removed to a great extend.
Creation, compilation and execution of different programming languagesin a single window.
Easy to work Execution of programs in less time Less complexity
2.3 Feasibility Study
Feasibility study is the evaluation of system regarding its workability, impact on the
organization, ability to meet the user needs and effective use of resources. It is both necessary
and prudent to evaluate the feasibility of a project at the earliest possible time.Months or
years of effort, thousands and millions of dollars, and untold professional embarrassment can
be averted if an ill-conceived system is recognized early in the definition of phase. Feasibility
and risk analysis are related in many ways. If project risk is great, the feasibility of producing
quality software is reduced.
Three key factors are to be considered during the feasibility study.
Economical Feasibility Operational Feasibility Technical Feasibility
2.3.1 Economical Feasibility
7/27/2019 Multi Purpose Editor
12/25
Economic Feasibility is the most important and frequently used method for evaluating
the effectiveness of the proposed system. It is very essential because the main goal of the
proposed system is to have economically better result along with increased efficiency.
Economical feasibility deals with the analysis of cost against benefits i whether the benefits
to be enjoyed due to the new system are worthy, when compared to the costs to be spent on
the system. Economic justification is generally the bottom-line consideration for most
system, long-term corporate income strategies, impact on other profit centers or products,
cost of the resources needed for development, and potential market growth. Especially in the
present scenario, where the objective is towards compatibility, reduced cost is weighed
against the ultimate income or benefit derived from the developed system.
The expenditures must be justified. Thus the developed system as well within the
budget and this has been achieved because most of the technologies used are freely available.
Only the customized products had to be purchased.
2.3.2 Operational Feasibility
The study is made to know whether the proposed system is operationally feasible
or not. When the highlight is made to this project, it will work very effective compared to the
existing system. An estimate should be made to determine how much effort and care will go
into the developing of the system including the training to be given to the user. Usually,
people are reluctant to changes that come in their progression.
In operational Feasibility there are two sessions one is practice and another is
login session. In practice session, It targetsa string with at least ten characters will be used
according to in the enrollment; ten samples were collected from each user.
2.3.3 Technical Feasibility
Technical feasibility is the need of hardware and software, which are needed to
implement the proposed system in the organization. The system analyst has to check the
technical feasibility of the proposed system. Taking account of the hardware, which is used
for the system development, data storage, processing and output, makes the technical
feasibility assessment. Technical requirements are to be fulfilled to make the proposed
system work. The main consideration is to be given to the study of available resources of the
organization where the software is to be implemented. The system analyst evaluates the
technical merits of the system giving emphasis on the performance, reliability,
maintainability and productivity.By taking the above consideration before developing the
7/27/2019 Multi Purpose Editor
13/25
proposed system, the resource availability of the organization has been studied. The
organization has immense computer facilities equipped with sophisticated machines and
software.
7/27/2019 Multi Purpose Editor
14/25
SYSTEM SPECIFICATION
CHAPTER 3
SYSTEM SPECIFICATION
3.1 Hardware Specification
This section gives specification of the hardware in which the system is expected to
work.
SYSTEM : COREI3 2.4GHz HARD DISK : 500GB MONITOR : 15.5 LED color MOUSE : AMKETTE RAM : 8 GB KEYBOARD : 110 Keys enhanced.
3.2 Software Specification
This section gives specification of the software in which the system is expected to
work.
Operating System Windows vista MYSQL Jdk 1.6.04 Turbo c3 Wamp Server 2.0a Microsoft .NET framework
7/27/2019 Multi Purpose Editor
15/25
SOFTWARE DESCRIPTION
CHAPTER 4
7/27/2019 Multi Purpose Editor
16/25
SOFTWARE DESCRIPTION
4.1 Front End
LANGUAGE
The language used in this project is JAVA/J2EE.
JAVA:
Java is the first programming language designed from ground up with network programming
in mind. The core API for Java includes classes and interfaces that provide uniform access to
a diverse set of network protocols. As the Internet and network
Programming has evolved java has maintained its cadence. New APIs and toolkit have
expanded the available options for the java network programmer.
Java is both a programming language and an environment for executing programs written in
java language. Unlike traditional compilers, which convert source code into machine level
instructions, the java compiler translates java source code into instructions that are interpreted
by the runtime Java Virtual Machine. So unlike language like C and C++, Java is an
interpreted language
Java Environment:
The java environment is composed of several separate entities.
Java Language:
This is a language that follows object-oriented concept used to create executable contents
such as applications and applets. But Java is not pure object oriented language, it does not
support multiple inheritance & Operator overloading.
Java Runtime Environment:
The runtime environment used to execute the code. It is made up of the java language and
java virtual machine. It is portable and it is platform neutral.
Java tools:
It is used by the developers to create java code. They include java compiler, java interpreter,
classes, libraries and applet viewer.
Java Application:
Applications are programs written in java to carry out certain tasks on stand alone local
computer. Execution of a stand-alone program involves two steps.
7/27/2019 Multi Purpose Editor
17/25
1. Compiling the source code in to byte code using javac.
2. Executing byte code program using java interpreter
Java Applets:
Java applets are pieces of java code that are embedded in HTML document using the applettag. When the browser encounters such code it automatically download it and execute it.
Java Virtual Machine:
It is a specification to which java codes must be written. All java code is to be compiled in
this nonexistent virtual machine. Writing the code that compiles in JVM ensures platform
independence.
Advantages of Java
Java is Robust:
Robust programs are those reliable programs that are unlikely to fail even under the most
unlikely conditions. Many languages like C do not have this feature because they are relaxed
in terms of type checking in terms of programming errors. Java is strict about type declaration
and does not allow automatic typecasting. Also it uses a pointer model that does not
overwrite memory or corrupt data.
Java is secure:
Java allows creation of virus-free, tamper free systems to be created. It ensures security in the
following ways.
interpreter verifies all byte codes before executing.
Because Java was written to support distributed applications over the computer networks, it
can be used with a variety of CPU and operating system architectures. To achieve this goal a
compiler was created that produces architecture-neutral object files from Java code.
Java is Portable:
Java byte code will be executed on any computer that has Java Runtime Environment. The
portability is achieved in the following ways.
explicitly specified.
7/27/2019 Multi Purpose Editor
18/25
e
environment is available.
Java is small:
Because java was designed to run on small computers, java system is relatively small for a
programming language. It can run efficiently on PCs with 4MB RAM or more. The java
interpreter takes up only a few hundred-kilo bytes.
Java is garbage collected:
Java programs dont have to worry about memory management. The java system has a built
in program called the garbage collector, which scans the memory and automatically frees the
memory chunks that are not in use.
Java is dynamic:
Fundamentally distributed computer environments must be dynamic. Java is capable of
dynamic linking new libraries, methods and instance variables as it goes without breaking
and without concern.
Java Swing:
The swing classes eliminate Javas biggest weakness: Its relatively primitive user interface
toolkit. Swing provides many new components and containers that allow us to build
sophisticated user interfaces, far beyond what was possible with AWT. The old components
have been greatly improved, and there are manynew components, like trees, tables, and even
text editors. It also adds several completely new features to Javas user interface capabilities:
drag-and-drop, undo, and the ability to develop our own Look and Feel, or the ability to
choose between several standard looks. The swing components are all lightweight, and
therefore provide more uniform behavior across platforms, making it easier to test our
software.
Reason for Using Java:
It is required to explore systems running different operating system. In order to do so, there
should be some way to connect to bridge those operating systems so that all the differences
between them are solved and the functionalities are achieved. Also the functions performed in
one system should be able to transfer to another and the result should be able to reflect there
7/27/2019 Multi Purpose Editor
19/25
properly. Java serves as a bridge between these Operating systems. Also java is widely
considered to be the best in developing network applications.
The communication happens between Java Virtual Machines running on the systems. When
the client wants to perform the functionalities in another system and see the result, a method
in the remote system is invoked from the client. The corresponding method in the remote
system performs the job and sends the results to the client that is reflected in its interface.
NETBEANS IDE
The Net Beans Platform allows applications to be developed from a set of modular software
components called modules. A module is a Java archive file that contains Java classes written
to interact with the Net Beans Open APIs and a manifest file that identifies it as a module.
4.2 Back End
SQL SEVER
SQL Server 2008 delivers several breakthrough capabilities that will enables the
organization to scale database operations with confidence, improve IT and developer
efficiency, and enable highly scalable and well managed Business Intelligence on a self-
service basis for users.
SQL Server 2008 is a powerful and reliable data management system that delivers a rich set
of features, data protection, and performance for embedded application clients, light Web
applications, and local data stores.
SQL Server 2008 provides s the enterprise data management platform your organization
needs to adopt quickly in a fast changing environment. With the lowest implementation and
maintenance cost in the industry. SQL Server 2008 is a fully enterprise class data base
product, providing core support for Extensible Markup Language and internet queries.
SQL (Structured Query Language)
SQL is used by for all interaction with the database. SQL*Plus is based on SQL,
but it has some oracle specific features that can be used for writing reports and controlling the
way screen and paper output is formatted the ANSI (American National Standard Institute for
standards for Instructions for Information) defines the standards to the SQL query.
7/27/2019 Multi Purpose Editor
20/25
The SQL is broadly classified into four categories.
1.Data Definition Language (DDL).
2.Data Manipulation Language (DML).
3.Data Transaction Language (DTL).
4.Data Control Language (DCL).
Definition language
Data Definition Language in the SQL construct used to define data in the database.When you
define the data, the entries are made into Oracles data dictionary. DDL allows the
programmer to create, modify and remove a database. The DDL commands are Create, Alter
and Drop.
Data Manipulation Language
Data Manipulation Language is the SQL construct used to define data in the database.The
DML allows the programmer to insert, update, delete, and select data in the database. The
DML statements are SQL commands that allow users to manipulate the data in the database.
Data Transaction Language
Data Transaction Language is the AQL construct used the transactions. Common statements
are commit and rollback.
Data Control Language
Data Control Language is the SQL construct used to control the behavior of the data.
Common statements are grant and revoke
7/27/2019 Multi Purpose Editor
21/25
PROJECT DESCRIPTION
7/27/2019 Multi Purpose Editor
22/25
CHAPTER 5
PROJECT DESCRIPTION
5.1 Problem Definition
The project entitled Multipurpose editor provides a user to create, edit and execute
different programming languages in a single window. We can build and compile various
programs in a single environment using IDE (Integrated Development Environment).
5.2 Overview Of The Project
5.3 Module Description
The different modules contained in this project are
Program creation
Program compilation Program execution Database listing
In the program creation module we create an editor window. This module includes
cut, copy, paste and format. Here we can write a new program or open already existing
program and further operations are done.
In the program compilation module we convert our source code program to themachine readable format. Through the compilation process we can identify the syntactic
errors and also we can rectify the errors.
The third module is program execution module. After correcting all the errors in the
program we can execute the program within a click of mouse. The output is displayed in the
output window.
7/27/2019 Multi Purpose Editor
23/25
The last module is database listing. In this module we can view the database. The
query generation and execution are done in this module. When the query executed in the
editor it is activated in the database engine.
5.4System Flow DiagramA data flow diagram is graphical tool used to describe and analyze movement of data
through a system. These are the central tool and the basis from which the other components
are developed. The transformation of data from input to output, through processed, may be
described logically and independently of physical components associated with the system.
These are known as the logical data flow diagrams.
The physical data flow diagrams show the actual implements and movement of data
between people, departments and workstations. A full description of a system actually
consists of a set of data flow diagrams. Using two familiar notations Yourdon, Gane and
Sarson notation develops the data flow diagrams. Each component in a DFD is labeled with a
descriptive name. Process is further identified with a number that will be used for
identification purpose. The development of DFDs is done in several levels. Each process inlower level diagrams can be broken down into a more detailed DFD in the next level. The
lop-level diagram is often called context diagram. It consists a single process bit, which plays
vital role in studying the current system. The process in the context level diagram is
exploded into other process at the first level DFD.The idea behind the explosion of a process
into more process is that understanding at one level of detail is exploded into greater detail at
the next level. This is done until further explosion is necessary and an adequate amount of
detail is described for analyst to understand the process.Larry Constantine first developed the
DFD as a way of expressing system requirements in a graphical from, this lead to the
modular design.
A DFD is also known as a bubble Chart has the purpose of clarifying system
requirements and identifying major transformations that will become programs in system
design. So it is the starting point of the design to the lowest level of detail. A DFD consists
of a series of bubbles joined by data flows in the system.
DFD SYMBOLS:
7/27/2019 Multi Purpose Editor
24/25
In the DFD, there are four symbols
1. A square defines a source(originator) or destination of system data
2. An arrow identifies data flow. It is the pipeline through which the information flows
A circle or a bubble represents a process that transforms incoming data flow into outgoing
data flows.
3. An open rectangle is a data store, data at rest or a temporary repository of data
CONSTRUCTING A DFD:
Several rules of thumb are used in drawing DFDs:
1. Process should be named and numbered for an easy reference. Each name should berepresentative of the process.
2. The direction of flow is from top to bottom and from left to right. Data Traditionally flowfrom source to the destination although they may flow back to the source. One way to
indicate this is to draw long flow line back to a source. An alternative way is to repeat the
source symbol as a destination. Since it is used more than once in the DFD it is marked
with a short diagonal.
3. When a process is exploded into lower level details, they are numbered.4. The names of data stores and destinations are written in capital letters. Process and
dataflow names have the first letter of each work capitalized
7/27/2019 Multi Purpose Editor
25/25
A DFD typically shows the minimum contents of data store. Each data store should
contain all the data elements that flow in and out.Questionnaires should contain all the
data elements that flow in and out. Missing interfaces redundancies and like is then
accounted for often through interviews.
5.5 DATABASE DESIGN
To design an application it is necessary to design a database file. These files are called tables.
After designing the output and input, tables must be organized according to the storage needs of the
back end used.
Normalization procedure is used to avoid duplication of data and to produce feasibility
necessary to support different functional requirements. To achieve this system is passed through
various normal forms such as first normal form, second normal form and third normal form.