Sunteți pe pagina 1din 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

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

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

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

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.

vi

TABLE OF CONTENTS
CHAPTER.NO TITLE
ABSTRACT List of tables List of figures List of Abbreviations

PAGE NO
vii ix x xi

1. 2.

INTRODUCTION
1.1 over view of project 1

SYSTEM ANALYSIS
2.1 Existing System 2.2 Proposed System 2.3 Feasibility Study 2.3.1 Operational Feasibility 2.3.2 Technical Feasibility 2.3.3 Economical Feasibility 2 2 3 3 3 4

3.

SYSTEM SPECIFICATION
3.1 Hardware Specification 3.2 Software Specification 5 5

4.

SOFTWARE DESCRIPTION
4.1 Front End 4.2 Back End 6 12

vii

5.

PROJECT DESCRIPTION
5.1 Problem Definition 5.2 Overview of Project 5.3 Module Description 5.4 System Flow Diagrams 5.5 Database Design 5.5.1 Table Design 5.6 Input Design 5.7 Output Design 14 14 15 21 22 26 26

6.

SYSTEM TESTING
6.1 Testing 6.1.1 Unit Testing 6.1.2 Integration Testing 6.1.3 Validation Testing 6.1.4 System Testing 29 29 30 30
31 32

7. 8. 9.

SYSTEM IMPLEMENTATION CONCLUSION AND FUTURE ENHANCEMENT APPENDIX


9.1 Source Code 9.2 Screen Shot

33 42
51

10.

REFERENCES AND BIBLIOGRAPHY

viii

ABSTRACT 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). 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 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. 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 languages in a single window. Easy to work Execution of programs in less time Less complexity

ix

INTRODUCTION CHAPTER 1 INTRODUCTION


1.1 Objectives
Various 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.

SYSTEM ANALYSIS

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 languages in 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

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 targets a 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

proposed system, the resource availability of the organization has been studied. The organization has immense computer facilities equipped with sophisticated machines and software.

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 HARD DISK MONITOR MOUSE RAM KEYBOARD : : : : : : COREI3 2.4GHz 500GB 15.5 LED color AMKETTE 8 GB 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

SOFTWARE DESCRIPTION CHAPTER 4

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.

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 applet tag. 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.

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 many new 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

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

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

PROJECT DESCRIPTION

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 the machine 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.

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.4 System Flow Diagram


A 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 in lower 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:

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 be representative of the process. 2. The direction of flow is from top to bottom and from left to right. Data Traditionally flow from 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

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.

S-ar putea să vă placă și