Documente Academic
Documente Profesional
Documente Cultură
solesurvivors
Highly Confidential Security System
Software Requirements Specification
Version 1.0
Mentor Mr.R.Jayaraj (Asst. Professor), Department of CSE Members Arun Prasath.S Jojy George Prabhu.E 090105107008 100405107005 100405107013 090105107121
College - Hindusthan College of Engineering and Technology, Coimbatore 641032 Department - Computer Science and Engineering State - Tamil Nadu
Revision History
Date
20-12-2012
Version
1.0
Table of Contents
Description Page No
1. Introduction
4-9
1.1 Methodology 4 1.2 Purpose .. .. 5 1.3 Scope . .. 5 1.4 Definitions, Acronyms and Abbreviations .. 6 1.5 References .. 7 1.6 Technologies to be used .. 7 1.7 Tools to be used . . 7 1.8 Overview .. 9
2. Overall Description
9 - 18
2.1 Product Perspective . 9 2.2 Product Functions. 10 2.3 Software Interface . 10 2.4 Hardware Interface . 11 2.5 User Characteristics . 12 2.6 Constraints .. 12 2.7 Assumptions and Dependencies 12 2.8 Architecture Design . 13 2.9 Use Case Model Survey ... 14 2.10 Database Design.. 15 2.11 ER diagram. 16
3. Specific Requirements
17 - 33
3.1 Use Case Reports . 17 3.2 Activity Diagrams 20 3.3 Sequence Diagrams . 29
4. Supporting Information
34
4.1 Index. 34
1. Introduction
In day-to-day life it is quite hard to remember all confidential data like Mail Id, Password, bank account number, Insurance policy number, PAN number, Driving License number, education certificate Numbers, Some highly value scan copy, some confidential photo, music and videos. Crypto Locker is a highly secure web application to store all confidential data in single credential.
1.1 Methodology
The Rational Unified Process brings together elements from all of the generic process models, supports iteration and illustrates good practice in specification and design. The RUP is normally described from three perspectives: A dynamic perspective that shows the phases of the model over time A static perspective that shows the process activities that are enacted A practice perspective that suggests good practices to be used during the process
Inception
The goal of the inception phase is to establish a business case for the system. Identifying all external entities that will interact with the system and defining these interactions. This information is used to assess the contribution of system to business.
Elaboration
The goals of the elaboration phase are to develop an understanding of the problem domain, establish an architectural framework, develop project plan and identify key project risks.
Construction
This phase is concerned with system design, programming and testing. Parts of the system are developed in parallel and integrated during this phase.
Transition
This is the final phase of RUP and is concerned with moving the system from the development community to the user community and making it work in real environment.
1.2 Purpose
Crypto Locker is a web application developed for secure and easy access of data. Crypto Locker is a useful and convenient application that spares you the trouble of remembering the passwords and securing the files. This application helps people to store their passwords and various types of files like photos, music and videos in a secure and efficient manner. The application which we develop here uses state of the art encryption technology to secure files and access over anywhere in the world using the internet.
1.3 Scope
There are two basic users Administrator, User. All users have their own profile in Crypto Locker. Administrator has an ability to manage the registered user profiles and organize the files stored in the server. Administrator has the ability to provide the notification message to the logged users via webpage. Public peoples are the users used this web application to protect their important details in single credentials. Citizens (users) can access their files through internet from anywhere in the world.
Database platform (DB2) - DB2 Database is the database management system that delivers a
flexible and cost effective database platform to build robust on demand business applications and supports the J2EE and web services standards.
WASCE - Websphere Application Server Community Edition is an application server that runs and
supports J2EE and web service applications.
UML - Unified Modeling Language is a standard language for writing software blueprints. The UML
may be used to visualize, specify, construct and document
XML - eXtensible Markup Language is a text based format that let developers describe, deliver and
exchange structured data between a range of applications to client for display and manipulation.
JSP - Java Server Pages is used to create dynamic web content. J2EE - Java 2 Enterprise Edition is a programming platform which is a part of java platform for
developing and running distributed java.
HTTP - Hypertext Transfer Protocol is a transaction oriented client/server protocol between web browser
and a Web Server.
HTTPS - Secure Hypertext Transfer Protocol is a HTTP over SSL (secure socket layer). RAD - Rational Application Developer is a development tool that helps to design web pages and also
helps to design the diagrams like ER, Database schema diagrams and to generate DDL.
WAS (Websphere Application Server) - It is an application server that runs business applications and
supports the J2EE and web services standards.
SOA: Service-Oriented Architecture is a set of principles and methodologies for designing and
developing software in the form of interoperable services.
1.5 References
IBM TGMC Sample Synopsis. Software Engineering Theory and Practice (2nd Edition) - Shari Lawrence Pfleeger Database Management Systems - Navathe. Object Oriented Modeling and Design with UML (2nd Edition) - Michael Blaha, James Rambaugh. Java Complete Reference (7th Edition) Herbert Schildt. Cryptography and Network Security William Stallings
J2EE : Programming Platform for developing and running distributed Java AJAX : Updating parts of a web page, without reloading the whole page. SOA : Set of principles and methodologies for designing and developing software in the form
of interoperable services. UML : Standard for writing software blueprints, and used to visualize, specify, construct and document. XML : XML is a text based format that let developers describe, deliver and exchange structured data between a range of applications to client for display and manipulation.
Jasper: Jasper Reports is an open source Java reporting tool that can write to a variety of
targets, such as: screen, a printer, into PDF, HTML, Microsoft Excel, RTF, ODT, Commaseparated values or XML files.
Eclipse
Eclipse is a multi-language software development environment comprising an integrated development environment (IDE) and an extensible plug-in system.
WPS
WPS stands for Wi-Fi Protected Setup and was designed to simplify the process of configuring security on wireless networks.
DB2 (Database 2)
DB2 is a family of relational database products provides an open database environment that runs on a wide variety of computing platforms. A DB2 database can grow from a small single-user application to a large multi-user system. Sole Survivors | Hindusthan College of Engineering and Technology 8
1.8 Overview
The SRS will include two sections, namely: Overall Description This section will describe major components of the system, interconnections, and external interfaces. Specific Requirements This section will describe the functions of actors, their roles in the system and the constraints faced by the system.
2. Overall Descriptions
2.1 Product Perspective
The Crypto Locker is available for use by the administrator and the user. The administrator and users will use the webpage as a front end. The browser goes through an http server. Application server manages the connection between the front end and backend, all types of information and data, that are necessary for the users are stored in DB2.
Administrator
Web browser (any), operating system (Windows)
Web Server
WASCE, Operating System (Windows)
Development End
RAD (J2EE, java, java bean, Servlet, HTML, XML, AJAX) operating system (Windows), Web Sphere (Web Server)
10
Processor
Storage Space Intel Pentium IV AMD Athlon (1.8 GHz) DB2 9.72
RAM
4 GB RAM
Disk Space
5 TB
1 GB RAM
1 GB
Browser
Internet Explorer 7, Firefox 13 with Flash Plug-ins
Processor
Intel Pentium IV AMD Athlon (1.8 GHz)
RAM
1 GB RAM
Processor
Storage Space Intel Core Family (Any) AMD Phenom DB2 9.72 (2.2 GHz)
RAM
8 GB RAM
Disk Space
10 TB
2 GB RAM
2 GB
Browser
Processor
Intel Core Family (Any)
RAM
2 GB RAM
11
2.6 Constraints
GUI is only in English. Login and password is used for the identification of the user (public people) and administrator. Limited to HTTP, SMTP and FTP protocol. Centralized server is used.
12
13
14
Administrator
Administrator has the ability to manage the registered users profile. Administrator can send the notification to the logged user about any changes in the service and also clarify the users doubts and questions about the service.
System
While users are trying to create their account, Crypto System validates the users details and post the message (success or failure) to them. Server has the ability to send the Password reset link to the users mail, if the user forgets the password to access their account. It automatically blocks the abuse users. When users are uploading the file, the system encrypts it by using the algorithm, when the users are downloading their file, the system decrypts it.
15
2.11 ER Diagram
16
3. Specific Requirements
3.1 Use Case Reports
3.1.1 Administrator
USECASE
Register Username Verification Sign In Validate Password Profiles Update Profile Manage user Profiles Push Notification Generate Reports Manage FAQ Sign out
DESCRIPTION
The administrator create their account for managing the service It checks the provided name with already existing name during registration The admin can sign in into account and manage the service The server validates the password and lets the admin use the service The admin can view their own profile The admin can update their own profile in case of any changes The admin can manage the field registered users profile The admin can push/send the notification in case of any changes The admin can able to generate the reports about the service The admin may clarify the doubts from clients Logged out from the server
17
USECASE
Register Username Verification Sign In Validate Password Profiles Update Profile FAQ View Notifications Download File Generate Reports Upload File Encryption/Decryption Lockers Sign out
DESCRIPTION
Citizens can create their account for using the service It checks the provided name with already existing name during registration The user can sign in into account and use the service The server validates the password and lets the user use the service The user can view his profile The user can update his current status about the case The user can able to post and reply their answers in the forum like page The user receive the notification message from the administrator The user can download their personal data using the secret key The user can generate report from remote location. The user can upload their personal data into the server All data can be securely transmitted and received using Encryption algorithm It includes image, video, music, password and bank account details Logged out from the service
18
USECASE
Encryption Decryption Block abuse user Validate Registration Send Mail Send Password Token
DESCRIPTION
The system encrypts the files from the users disk when he/she want to upload The system decrypts the files from the server when the user want to download Sever automatically blocks the lazy and abuse users based on the rules Server Validates the user details and registers it into the database Server sends the verification link to the user for the confirmation Server sends the password token in case the user forgets the password
19
3.2.1 User Registration Activity Sole Survivors | Hindusthan College of Engineering and Technology 20
3.2.2 Validate Registration The user enters the registration details. The system validates the details and if the details are found invalid the system rejects it else the system sends the verification mail to the user. The user needs to follow the verification link to complete his registration.
21
3.2.3 Login Activity The user enters the login credentials. The System validates the login credentials. If the login credentials are valid then the system detects the type of user. If user is a member then the system redirects to the members home page. If the user is administrator then the system redirects to the administrators home page.
3.2.3 Login Activity Sole Survivors | Hindusthan College of Engineering and Technology 22
3.2.4 Password Reset If the user forgets his password then he should click on the Forget password link. Then the system prompts him to enter his Mail ID. The system validates the Mail ID. If the Mail ID is valid then the system sends the password reset mail to that Mail ID. If the Mail ID is invalid then the system displays the error message.
3.2.4 Password Reset Activity Sole Survivors | Hindusthan College of Engineering and Technology 23
3.2.5 Public People The public people (user) can login to the website using a supplied username and password. After logging in the user can perform several tasks such as generate reports, access lockers, participate in FAQ center, edit profiles and view the notifications sent from the administrator.
24
3.2.6 FAQ Page The administrator and the user participate in the FAQ (Discussion forum) for clarifying their doubts. Both admin and citizen can view the posts and may reply to the post, or may be post the questions from the remote location.
3.2.7 Access Lockers A crypto Locker service is provided for the users, who need to store their confidential details in a single password. To access the lockers first he/she need to enter their Crypto Locker credential to login. After that he has the ability to open locker and manage that by uploading and downloading the files. He is also able to generate the reports about their activity for a certain period in a .PDF format documented file.
26
3.2.8 Administrator The administrator login into their accounts home page and manage the overall activity of the application like user management, own profile management, frequently asked Questions i.e., Discussion forum management, notifications management and finally generate the reports.
27
3.2.9 Crypto System The web application has the automatic controls itself. While registration the server system validate the user details, if there is any issues then it automatically denies the registration process, and during the upload, download process encryption and decryption process starts with the help of key provided by the user. Also it blocks the abuse user to prevent the server from any misbehavior activities.
28
29
30
31
32
33
I
Inception - 5 Interface 10, 11 Introduction - 4
S
Scope - 5 Sequence Diagrams 29 SOA - 7 Software 10 Specific Requirements -9, 17
J
J2EE 6, 7 JSP - 6
T
Technologies - 7 Tools 7 Transition - 5
C
Constraints 12 Construction - 5 Crypto Locker - 9
M
Methodology - 4 Minimum Requirements - 11
O
Operating System- 10, 12 Overview 9 Overall Descriptions - 9
U
UML 6, 7 Use Case Model - 14 Use Case Reports 17 User - 14 User Characteristics - 12
D
Database Design 15 Database platform 6 Development End - 10 DB2 - 6, 8 Definitions - 6 Dependencies - 12 Development Tool - 8
P
Product Perspective 9 Product Functions 10 Public People - 14 Purpose - 5
W
WASCE 6, 8 WAS 6, 8 WPS 8 Web Server 10
E
Eclipse 8 Elaboration - 5 ER Diagram - 16
R
RAD - 6 Rational Rose - 7 RSA 8 Recommended - 11 References - 7
X
XML 6, 7
H
Hardware - 11 HTTP - 6
34