Keypass Password Protection Manager
Keypass Password Protection Manager
Keypass Password Protection Manager
Submitted by
HEMANT KUMAR
Uni.Roll No.08ESMIT021
Certified that this project report KEYPASS PROTECTION MANAGER is the bonafide work of CHARUL BUDHIRAJA(08ESMIT013),HEMANT KUMAR (08ESMIT021) and SANJAY TIWARI (08ESMIT049), who carried out the project work under our supervision, towards partial fulfillment of the requirements of the Degree of Bachelor of Technology in Information & Technology Engineering from Rajasthan Technical University, Kota.
Internal Supervisor
MR. KASHINATH DHARA Asst. Professor CS/IT Department
External Supervisor
MR. SHAILENDRA SONI Asst. Professor CS/IT Department
Date: 2.1.2012
Date: 2-1-2012
ACKNOWLEDGEMENT
We are grateful to St. Margaret Engineering College, for permitting us to undergo for a minor project for the development of an expert system. While developing this project, we have learnt a lot. This will be an un-forgetful experience. While developing this project, a lot of difficulties were faced by us. But it was the help of some special people that we have gained much confidence and developed the project quite well. We would like to thanks Mr. KASHINATH DHARA and Mr.SHAILENDRA SONI to co-ordinate with us and provide us the information needed to complete the analysis part of this project.
ABSTRACT
Today you need to remember many passwords. You need a password for the Windows network logon, your e-mail account, your homepage's FTP password, online passwords (like website member account), etc. etc. etc. The list is endless. Also, you should use different passwords for each account. Because if you use only one password everywhere and someone get this password you have a problem. A serious ID problem to the owner of the. The thief would have access to your e-mail account, homepage, etc. Unimaginable. This system is a password manager, which helps you to manage your passwords in a secure way. You can put all your passwords in one database, which is locked with one master key or a key file. So you only have to remember one single master password or select the key file to unlock the whole database. The databases are encrypted. A facility to update and change information is provided.
TABLE OF CONTENTS
1. INTRODUCTION.........................................................................................................7
1.1 Purpose .................................................................................................................................. 7 1.2 Intended Audience and Reading Suggestions........................................................................ 7 1.3 Product Scope........................................................................................................................ 8 1.4 Project Scope.......................................................................................................................... 8 1.5 References.............................................................................................................................. 8 2.1Product Perspective................................................................................................................ 9 2.2 Product Functions............................................................................................................... 10 2.3User Classes and Characteristics.......................................................................................... 11 2.4Operating Environment........................................................................................................ 11 2.5Design and Implementation Constraints.............................................................................. 12 2.6User Documentation............................................................................................................ 12
9. Bibiliography
46
LIST OF FIGURES
1. Use-Case diagram 2. Class diagram 3. Sequence diagram 3.1 Sequence diagram login
3.2 Sequence diagram change password 3.3 Sequence diagram protect data 3.4 Sequence diagram unprotect data 4. Activity diagram 5.Screenshots: 6
18 19 20 20
21 22 23 24
Fig1 Fig2 Fig3 Fig4 Fig5 Fig6 Fig7 Fig8 Fig9 Fig10 Fig11 Fig12 Fig13 Fig14 Fig15 Fig16 Fig17 Fig18
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
1. INTRODUCTION
1.1 Purpose
To provide security to highly confidential data such as ids and passwords that may span from PC applications to financial information.
1.2
Intended for Project Managers, Developers, End users and Quality Assurance Engineers. Suggested reading the document would be overall document description, product based information gathering followed by Infrastructure requirement.
7
1.3
Product Scope
Language : Java(J2EE)
1.4
Project Scope
Provides registration to public in order to access the application. The user can change his password. Registered users can store critical and confidential data in a secured form. Unprotect and Retrieve data as and when necessary. The data can be retrieved anytime, from anywhere and any number of times. Protection provided to the stored data using the MD5 algorithm.
1.5
References
1) Java a) Java b) JSP2.0 Dream tech Publication 2) Database a) Databases in Java, Worth b) Database, SQL
2. Overall Description
2.1Product Perspective
In the present scenario every person is associated with some id and password. It may pertain to accessing the PC, the web, emails, financial institutions, access to credit cards, ATMs etc. Most often a person tries to remember them in order to use it. It is always known that a person or individual confuses between passwords of different ids. Some individuals in order to avoid confusion also adapt to use a common password for all ids.
Both of the above can either lead to misplaced password or forgotten password or easily hacked when the single password is known. Some individuals even try to save critical information in books or registers or electronic diaries and carry them along. The possibility of this carrier being lost or damaged is high. In the present scenario certain passwords can be recovered after a procedural delay. In some cases the password can not be reset easily and the user has to forgo or close the account permanently as in the case of mails.
The project is to maintain a centralized server that, stores critical information and be accessible to the user from anywhere, anytime. The server can now remember any amount of ids and passwords irrespective of even their lengths. Highly useful when data such as a credit card, debit card number etc that have larger number of digits or characters cannot be remembered easily. In order to provide higher level security the data is stored in an unreadable format. To provide this scenario the server implements the DES algorithm using the visual studio. Similarly whenever the data needs to be unprotected and used the decryption ensures that the data is recovered without any loss or alterations.
1 ) .
The user need not remember the keys instead only filenames. Both the key and password within the application is maintained encrypted. The details of the account, key, protected file is stored into the database but not the actual password.
Hardware Requirements (Minimum) Processor Ram Hard Disk Monitor : : : : PIV MB 512 40 GB Space VGA Color (256)
11
2.6User Documentation
The product is provided with built-in manual that would help the end user use the system for functioning.
12
3.2Hardware Interfaces
The application concentrates on the multi tier scenario and has no dependency on the network or protocols. When executed on a standalone machine no additional peripheral requirements are needed.
3.3Software Interfaces
The incoming data to the product would be raw text data and outgoing data would be binary. SQL, JVM and Tomcat are the needed software interfaces.
4. System Features
1. Login & Security
The module deals with authentication of the users using the application. There are basically two types of users Administrator & the public.
13
Each of the above users are associated with user id and password. The user id is unique to each user. The users login with the specified id and password to access their schema information. Additional facility to change their password is also provided.
3.MD5 Encryption
The main MD5 algorithm operates on a 128-bit state, divided into four 32-bit words, denoted A, B, C and D. These are initialized to certain fixed constants. The main algorithm then operates on each 512-bit message block in turn, each block modifying the state. The processing of a message block consists of four similar stages, termed rounds; each round is composed of 16 similar operations based on a non-linear function f, modular addition, and left rotation.
4.Report Generation
The module allows the users of the application to view the following reports :1.Password for a particular user id. 2.Tabulated listing of all user account and related passwords.
14
5.2Safety Requirements
No harm is expected from the use of the product either to the OS or any data.
6. SOFTWARE DESIGN
UML DIAGRAMS
USE CASE DIAGRAM: A use case is a set of scenarios that describes an interaction between a user and a system. A use case diagram displays the relationship among actors and use cases. The two main components of a use case diagram are use cases and actors.
16
CLASS DIAGRAM:
A class diagram is a type of static structure diagram that describes the structure of a system by showing the systems classes ,their attributes and the relationships between the classes.
17
SEQUENCE DIAGRAM:
A sequence diagram demonstrates the behavior of objects in a use case by describing the objects and the messages they pass. The diagrams are read left to right and descending.
19
20
21
ACTIVITY DIAGRAM:
Activity diagrams describe the workflow behavior of a system.The diagrams describe the state of activities by showing the sequence of activities performed.
22
7. SCREENSHOTS
Home page
23
24
Fig.2
When we click on contact us button in the Fig 1 ,the above screen appears displaying the contact details
25
Fig 3
When we click on register button in Fig 2 the above screen Fig 3 appears, where the user has to fill the required fields to register himself.
26
Fig 4
27
Fig 5
After registration of a user is successful, he has to login with the correct user Id and password. In this screen an invalid password is entered.
28
Fig 6
29
Fig 7
When the correct user Id and password are provided the above screen fig 7 appears.
30
Fig 8
If the original password does not match with the password that is given in Fig 8,the above screen Fig 9 appears saying that password is mismatch, Try again.
31
Fig 9
32
Fig 10
33
Fig 11
The key is generated successfully, if the given key file name doesnt exist.
34
Fig 12
To protect the data click on Protect Data option, then the above screen appears where the account id should be provided giving the description of the account in the account description field and the password to protect is the password which we want to protect, the protection date will be generated automatically and the master key is the key file name that is given during the generating key and the protected file is the location given where we want to store the file.
35
Fig 13
After giving all the details the password is protected successfully.
36
Fig 14
To recover the data click on the unprotect data option and the above screen appears where we need to give our account Id and master Key.
37
Fig 15
38
Fig 16
39
Fig 17
40
Fig 18
To view keys click on view keys option, then it gives the list of accounts that has been created by the user with the description and key. Arvind has created an account [email protected] which is displayed in the above screen.
41
8. TESTING
8.1 PURPOSE:
The purpose of testing is to assess product quality. It helps to strengthen and stabilize the architecture early in the development cycle. We can verify through testing, the various interactions, integration of components and the requirements which were implemented. It provides timely feedback to resolve the quality issues, in a timely and cost effective manner. The test workflow involves the following: Verifying the interactions of components. Verifying the proper integration of components. Verifying that all requirements have been implemented correctly. Identifying and ensuring that all discovered defects are addressed before the software is deployed.
8.2 QUALITY:
The common usage of the term quality refers to a number of things: principally it means the absence of defects, but more importantly, a fitness for a desired purpose. The ultimate goal of testing is to assess the quality of the end product. Quality assessments often consider process quality and organizational factors as well as direct product quality.
42
43
8.5.1.1Unit test: The smallest testable elements of the system are tested individually; typically at the same time those elements are implemented. 8.5.1.2Integration test: The integrated units (or components or subsystems) are tested. 8.5.1.3System test: The complete application and system (one or more applications) are tested. 8.5.1.4Acceptance test: The complete application (or system) is tested by end users (or representatives) for the purpose of determining readiness for deployment.
These stages occur throughout the lifecycle, with varying emphasis. An early conceptual prototype user in the inception phase to assess the viability of the product vision will be subjected to acceptance tests. Architectural prototype developed during the elaboration phase be subjected to integration and system tests to validate architectural integrity and performance of key architectural elements.
44
9. BIBILIOGRAPHY:
45
46
47
48
49
50
51