secure mailing system report

55
SECURE MAILING SYSTEM CHAPTER 1 COMPANY PROFILE MICROSOFT IT ACADEMY The Microsoft IT Academy Program provides educators, institutions, and communities with a comprehensive and cost- effective solution for teaching and learning innovative technologies. The Microsoft IT Academy Program is a subscription-based membership program designed to help schools offer students and educators learning solutions for IT skills training and certification, as well as technology essentials for professionals. Access to these resources can help students build a successful future with the skills that employers seek. This program also offers educators and IT staff the opportunity to stay up-to-date on the latest Microsoft technologies. Best of all, its built-in flexibility makes it easy to integrate these technologies into new or existing curricula, so educators can tailor classes to meet the needs of students of all ages and levels of experience. The Microsoft IT Academy program is designed for accredited academic institutions to help support ongoing technology education for a wide range of students and educators. The 1

Upload: abhishek-saini

Post on 05-Mar-2015

510 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Secure Mailing System Report

SECURE MAILING SYSTEM

CHAPTER 1

COMPANY PROFILE

MICROSOFT IT ACADEMY

The Microsoft IT Academy Program provides educators, institutions, and communities

with a comprehensive and cost-effective solution for teaching and learning innovative

technologies.

The Microsoft IT Academy Program is a subscription-based membership program designed

to help schools offer students and educators learning solutions for IT skills training and

certification, as well as technology essentials for professionals. Access to these resources can

help students build a successful future with the skills that employers seek. This program also

offers educators and IT staff the opportunity to stay up-to-date on the latest Microsoft

technologies. Best of all, its built-in flexibility makes it easy to integrate these technologies

into new or existing curricula, so educators can tailor classes to meet the needs of students of

all ages and levels of experience.

The Microsoft IT Academy program is designed for accredited academic institutions to help

support ongoing technology education for a wide range of students and educators. The

program features access to software licenses, E-Learning, official Microsoft course materials,

and certifications that cover the spectrum of professions within the IT industry. E-Learning

and course materials range from computer basics to high-level programming, along with

information and communications technology (ICT) management.

1

Page 2: Secure Mailing System Report

SECURE MAILING SYSTEM

CHAPTER 2

INTRODUCTION

2.1 General Introduction of Secure Mailing System

The aim of this project i.e. Secure Mail System is all about sending and

receiving emails from anywhere, anytime. The extra feature involved in our mailing site is

that it is secured in a way that there is use of CRYPTOGRAPHY for mails i.e. mails send

will be encrypted by the user and on receiving they will be decrypted by the user.

2.1.1 Objectives

The Secure Mail System is meant to keep the security of the mail send

between the users in a LAN.

A user can easily encrypt the mail by using RSA Algorithm or by using

Unicode BIT32 system.

You can easily search the member if you know his email-Id or his contact

number.

The main concern of this project is to improve the efficiency and effectiveness

of the whole system.

2.1.2 Modules

a. Password Module: In this module, Member enters a password and the

software checks its validity. If the password is valid then he is allowed to

enter, otherwise “Invalid User/Password” message is displayed. Different

data access rights are assigned to different users. A new member can also

be registered in this module.

2

Page 3: Secure Mailing System Report

SECURE MAILING SYSTEM

b. New User Registration Module: In this module new user can submit his

personal details regarding the user’s email id, password, contact no, date of

birth etc.

c. Login Module: In this module, user can login in his account if he is

already registered and if not then he/she can register a new account.

d. Encrypt Mail Module: In this module login user can write his mail and

either he/she save the mail or first encrypt the mail by giving the two

prime numbers & a password and then send the mail to the user in the

network only.

e. Decrypt Mail Module: In this module, Login user can decrypt the mail by

entering the same password which the user gives it while encrypting the

mail. Then after he/she can open the mail or see the attachment.

f. Forgot Password: In this module, a user can get a new password if he

forget his password. For this he has to remember the answer of the

question, asked at the time of registration.

g. View Module: In this module, a user can view his/her decrypted mails

from inbox, sent mails and drafts.

h. Store Module: This module includes inbox, sent mails and drafts. This

provides the facility of storing mails coming from other users as well as

mails sent to other users.

3

Page 4: Secure Mailing System Report

SECURE MAILING SYSTEM

CHAPTER 3

Tools and Technologies

3.1 Introduction to .NET Framework

3.2 Advantages of .NET Framework

3.3 Interactive web applications

3.3.1 Client side scripts

3.3.2 Server side scripts

3.4 ASP Technology

3.4.1 Compatibility

3.4.2 Asp file

3.4.3 Features of asp file

3.4.4 Difference between asp and html

3.4.5 Uses of asp file

3.4.6 new in asp .net

3.5 Hardware and software requirements

4

Page 5: Secure Mailing System Report

SECURE MAILING SYSTEM

3.1 INTRODUCTION TO .NET FRAMEWORK

.Net Framework is a platform or development environment to create web-

applications that are accessible through client machines from across the globe. These web-

applications adopt open standards such as eXtensible Markup Language (XML), HyperText

Transfer Protocol (HTTP), and Simple Object Access Protocol (SOAP) to interact with

applications that are available in other platforms.

.Net Framework is platform independent and language independent. This

means that .Net Framework allows you to use different programming languages such as

VB.Net, C#, Jscript, VBScript, and Managed C++ and run applications on different platforms

such as Unix, Macintosh, and Linux. Moreover, .Net Framework enables you to use various

off-the-shelf libraries that help the development of applications faster, easier, and

cheaper. .Net Framework now supports over 20 different programming languages.

The reason how .Net Framework supports so many programming languages is

well answered by the concept of Common Language Runtime (CLR) engine. The CLR

engine, instead of compiling the code into native code, compiles the code into Microsoft

Intermediate Language (MSIL).

The MSIL, a set of instructions, then translates the code into native code. This

concept of CLR is significant in making .Net Framework, platform and language

independent. In addition, CLR is responsible for run-time services such as language

integration, security enforcement, memory process, and thread management. Thus, .Net

Framework provides a wide infrastructure to create web-applications.

Microsoft has classified .Net Framework into two categories such as CLR and .Net

Framework class library.

3.1.1 Common Language Runtime

The CLR provides common runtime services to all .Net applications. In

addition, the CLR reduces the developer's time to write lengthy code for using features such

5

Page 6: Secure Mailing System Report

SECURE MAILING SYSTEM

as life-cycle management, strong type naming, cross-language exception handling, and

dynamic binding to turn business logic into a reusable component.

3.1.2 .Net Framework class library

This class library includes predefined sets of functionality that developers can

use in their own applications. The library consists of three key components:

o ASP.NET

o Windows Forms

o ADO.NET

3.2 ADVANTAGES OF .NET FRAMEWORK

1. ASP.NET drastically reduces the amount of code required to build large applications.

2. With built-in Windows authentication and per-application configuration, your applications

are safe and secured.

3. It provides better performance by taking advantage of early binding, just-in-time

compilation, native optimization, and caching services right out of the box.

4. The ASP.NET framework is complemented by a rich toolbox and designer in the Visual

Studio integrated development environment. WYSIWYG editing, drag-and-drop server

controls, and automatic deployment are just a few of the features this powerful tool provides.

5. Provides simplicity as ASP.NET makes it easy to perform common tasks, from simple

form submission and client authentication to deployment and site configuration.

6

Page 7: Secure Mailing System Report

SECURE MAILING SYSTEM

6. The source code and HTML are together therefore ASP.NET pages are easy to maintain

and write. Also the source code is executed on the server. This provides a lot of power and

flexibility to the web pages.

7. All the processes are closely monitored and managed by the ASP.NET runtime, so that if

process is dead, a new process can be created in its place, which helps keep your application

constantly available to handle requests.

8. It is purely server-side technology so, ASP.NET code executes on the server before it is

sent to the browser.

9. Being language-independent, it allows you to choose the language that best applies to your

application or partition your application across many languages.

10. ASP.NET makes for easy deployment. There is no need to register components because

the configuration information is built-in.

11. The Web server continuously monitors the pages, components and applications running

on it. If it notices any memory leaks, infinite loops, other illegal activities, it immediately

destroys those activities and restarts itself.

12. Easily works with ADO.NET using data-binding and page formatting features. It is an

application which runs faster and counters large volumes of users without having

performance problems.

3.3 INTERACTIVE WEB APPLICATIONS

What separates a Web page from an application is rich, two-way

communication between the user and the site. An application accepts data from the user and

dynamically tailors its output based on this input. While HTML itself does offer a few built-

in elements and features that enable Web developers to implement interactive functionality in

a Web page, these features revolve around form submission, and do not, by themselves, offer

much opportunity for creating exciting Web applications.

7

Page 8: Secure Mailing System Report

SECURE MAILING SYSTEM

On the other end of the spectrum from HTML's standard text box and radio

button, Java and ActiveX both offer ways to embed small, full-featured programs in the

browser window, providing a richer user experience. Unfortunately, this power comes at the

expense of relatively complex programming and heavy requirements for memory and

processing power on the client.

Client-side scripts occupy a middle ground between these two extremes,

offering a Web application with more functionality than pure HTML, but with less

complexity and a lower processing load than embedded Java or ActiveX controls.

3.3.1 Client side scripts:

Client-side scripting is about "programming" the behavior of a browser.

To deliver more dynamic web content, you should teach yourself JavaScript and other such

client side scripts.

It gives HTML designers a programming tool

It can put dynamic text into an HTML page

They can react to events

They can change HTML elements

They can be used to validate data.

3.3.2 Server-Side Scripts:

Server-side scripting is about "programming" an Internet server.

To deliver more dynamic web content, you should teach yourself server-side scripting.

With server-side scripting, you can:

8

Page 9: Secure Mailing System Report

SECURE MAILING SYSTEM

Dynamically edit, change, or add any content of a Web page

Respond to user queries and form data

Access databases and return the result to a browser

Access files and return the result to a browser

Transform XML data to HTML data and return the results to a browser

Customize a Web page to make it more useful for individual users

Provide security and access control to Web pages

Tailor your output to different types of browsers

Minimize network traffic.

Server side scripting is done using asp or php.

Working of asp.net framework

.Net Framework allows you to use different programming languages such as

VB.Net, C#, Jscript, VBScript, and Managed C++ and run applications on different platforms

such as Unix, Macintosh, and Linux.

9

Page 10: Secure Mailing System Report

SECURE MAILING SYSTEM

The code written in any one these languages is called the source code.the

compiler translates that source code into the intermediate code that is not dependant upon the

machine. The MSIL, a set of instructions, then translates the code into native code. This

concept of CLR is significant in making .Net Framework, platform and language

independent. In addition, CLR is responsible for run-time services such as language

integration, security enforcement, memory process, and thread management. Thus, .Net

Framework provides a wide infrastructure to create web-applications.

10

Page 11: Secure Mailing System Report

SECURE MAILING SYSTEM

3.4 ASP TECHNOLOGY

3.4.1 Introduction to asp

ASP stands for Active Server Pages

ASP is a Microsoft Technology

ASP is a program that runs inside IIS

IIS stands for Internet Information Services

IIS comes as a free component with Windows 2000

IIS is also a part of the Windows NT 4.0 Option Pack

The Option Pack can be downloaded from Microsoft

PWS is a smaller - but fully functional - version of IIS

PWS can be found on your Windows 95/98 CD

3.4.2 ASP Compatibility

To run IIS you must have Windows NT 4.0 or later

To run PWS you must have Windows 95 or later

Chili ASP is a technology that runs ASP without Windows OS

Instant ASP is another technology that runs ASP without Windows

11

Page 12: Secure Mailing System Report

SECURE MAILING SYSTEM

3.4.3 What is an ASP File?

An ASP file is just the same as an HTML file

An ASP file can contain text, HTML, XML, and scripts

Scripts in an ASP file are executed on the server

An ASP file has the file extension ".asp"

3.4.4 How Does ASP Differ from HTML?

When a browser requests an HTML file, the server returns the file

When a browser requests an ASP file, IIS passes the request to the ASP engine. The

ASP engine reads the ASP file, line by line, and executes the scripts in the file.

Finally, the ASP file is returned to the browser as plain HTML.

3.4.5 What can ASP do for you?

Dynamically edit, change, or add any content of a Web page

Respond to user queries or data submitted from HTML forms

Access any data or databases and return the results to a browser

Customize a Web page to make it more useful for individual users

The advantages of using ASP instead of CGI and Perl, are those of simplicity and

speed

Provide security - since ASP code cannot be viewed from the browser

Clever ASP programming can minimize the network traffic

12

Page 13: Secure Mailing System Report

SECURE MAILING SYSTEM

Note: Because ASP scripts are executed on the server, the browser that displays the ASP file

does not need to support scripting at all!

ASP.NET has better language support, a large set of new controls, XML-based components,

and better user authentication.

ASP.NET provides increased performance by running compiled code.

ASP.NET code is not fully backward compatible with ASP.

3.4.6 New in ASP.NET

Better language support

Programmable controls

Event-driven programming

XML-based components

User authentication, with accounts and roles

Higher scalability

Increased performance - Compiled code

Easier configuration and deployment

Not fully ASP compatible

13

Page 14: Secure Mailing System Report

SECURE MAILING SYSTEM

Language Support

ASP.NET uses ADO.NET.

ASP.NET supports full Visual Basic, not VBScript.

ASP.NET supports C# (C sharp) and C++.

ASP.NET supports JScript.

ASP.NET Controls

ASP.NET contains a large set of HTML controls. Almost all HTML elements on a page can

be defined as ASP.NET control objects that can be controlled by scripts.ASP.NET also

contains a new set of object-oriented input controls, like programmable list-boxes and

validation controls. A new data grid control supports sorting, data paging, and everything you

can expect from a dataset control.

Event Aware Controls

All ASP.NET objects on a Web page can expose events that can be processed by ASP.NET

code. Load, Click and Change events handled by code makes coding much simpler and much

better organized.

ASP.NET Components

ASP.NET components are heavily based on XML. Like the new AD Rotator, that uses XML

to store advertisement information and configuration.

User Authentication

ASP.NET supports form-based user authentication, cookie management, and automatic

redirecting of unauthorized logins.

14

Page 15: Secure Mailing System Report

SECURE MAILING SYSTEM

User Accounts and Roles

ASP.NET allows user accounts and roles, to give each user (with a given role) access to

different server code and executables.

High Scalability

Much has been done with ASP.NET to provide greater scalability.

Server-to-server communication has been greatly enhanced, making it possible to scale an

application over several servers. One example of this is the ability to run XML parsers, XSL

transformations and even resource hungry session objects on other servers.

Easy Configuration

Configuration of ASP.NET is done with plain text files. Configuration files can be uploaded

or changed while the application is running. No need to restart the server. No more metabase

or registry puzzle.

Easy Deployment

No more server-restart to deploy or replace compiled code. ASP.NET simply redirects all

new requests to the new code.

Compatibility

ASP.NET is not fully compatible with earlier versions of ASP, so most of the old ASP code

will need some changes to run under ASP.NET.

To overcome this problem, ASP.NET uses a new file extension ".aspx". This will make

ASP.NET applications able to run side by side with standard ASP applications on the same

server.

15

Page 16: Secure Mailing System Report

SECURE MAILING SYSTEM

3.5 HARDWARE AND SOFTWARE SPECIFICATIONS

Software/Hardware Details

3.5.1 Hardware Specification

3.5.1.1 Processor

Minimum: 600 megahertz (MHz) Pentium processor.

Recommended: 1 gigahertz (GHz) Pentium processor or higher.

3.5.1.2 RAM

Minimum: 192 megabytes (MB).

Recommended: 256 MB or higher.

3.5.1.3 Hard Disk

Without MSDN: 2 GB of available space required on installation drive. 1

GB of available space required on system drive.

With MSDN: 3.8 GB of available space required on installation drive

with a full MSDN install or 2.8 GB of available space required on installation

drive with a default MSDN install. 1 GB of available space required on system

drive.

Display: Minimum: 800 X 600 256 colors.

Recommended: 1024 X 768 High Color - 16-bit.

16

Page 17: Secure Mailing System Report

SECURE MAILING SYSTEM

3.5.2 Software Specification

3.5.2.1 Operating System

Minimum: Microsoft Windows 2000 SP4.

Recommended: Microsoft Windows XP SP2 (All Edition).

Microsoft Windows Server 2003 SP1 (All Edition).

3.5.2.3 Web Browsers

Minimum: Internet Explorer 5, Mozilla 5, Firefox 2, Netscape 7.

3.5.2.3 Database

Microsoft SQL Server 2005.

3.5.3 SOFTWARE TOOLS

Language: ASP.NET 2005

Server Language: C#

FRONT-END

The frontend that has been used for developing this project is ASP.NET 2.0 with

C#(C Sharp) as the programming language for writing the source code. Now, let us take a

brief look at this two frontend tools.

BACK-END

The backend that has been used for developing this project is SQL SERVER2005.

SQL pronounced as “sequel” stands for structured query language. SQL is used to

17

Page 18: Secure Mailing System Report

SECURE MAILING SYSTEM

Communicate with the database according to ANSI. It is a standard language for a

relational database management system that use SQL are oracle, Sybase, Microsoft SQL

SERVER, access interface etc.

Standard SQL command such as “Select”, “Insert”, “Delete”, “Update”, “Create”

and “Drop” can be used to accomplish almost everything that one needs to do with the

database.

18

Page 19: Secure Mailing System Report

SECURE MAILING SYSTEM

CHAPTER 4

MySQL

4.1 INTRODUCTION TO My SQL

My SQL is a relational database management system (RDBMS) that

runs as a server providing multi-user access to a number of databases. It is named after

developer Michael Widenius' daughter, My. The SQL phrase stands for Structured Query

Language.

The MySQL development project has made its source code available under the terms of the

GNU General Public License, as well as under a variety of proprietary agreements. MySQL

was owned and sponsored by a single for-profit firm, the Swedish company MySQL AB,

now owned by Oracle Corporation.

Free-software-open source projects that require a full-featured database management system

often use MySQL. For commercial use, several paid editions are available, and offer

additional functionality. Applications which use MySQL databases include: Joomla,

WordPress, MyBB, phpBB, Drupal and other software built on the LAMP software stack.

MySQL is also used in many high-profile, large-scale World Wide Web products, including

Wikipedia, Google (though not for searches) and Facebook.

4.2 USES

MySQL is a popular choice of database for use in web applications, and is a

central component of the widely used LAMP web application software stack—LAMP is an

acronym for "Linux, Apache, MySQL, Perl/PHP/Python".

MySQL is used in some of the most frequently visited web sites on the

Internet, including Flickr, Nokia.com, YouTube and as previously mentioned, Wikipedia,

Google and Facebook.

19

Page 20: Secure Mailing System Report

SECURE MAILING SYSTEM

4.3 Platforms and interfaces

MySQL is written in C and C++. Its SQL parser is written in yacc, and a

home-brewed lexical analyzer named sql_lex.cc.

MySQL works on many different system platforms, including AIX, BSDi,

FreeBSD, HP-UX, eComStation, i5/OS, IRIX, Linux, Mac OS X, Microsoft Windows,

NetBSD, Novell NetWare, OpenBSD, OpenSolaris, OS/2 Warp, QNX, Solaris, Symbian,

SunOS, SCO OpenServer, SCO UnixWare, Sanos and Tru64. A port of MySQL to

OpenVMS also exists.

Many programming languages with language-specific APIs include libraries

for accessing MySQL databases. These include MySQL Connector/Net for integration with

Microsoft's Visual Studio (languages such as C# and VB are most commonly used) and the

ODBC driver for Java. In addition, an ODBC interface called MyODBC allows additional

programming languages that support the ODBC interface to communicate with a MySQL

database, such as ASP or ColdFusion. The HTSQL - URL based query method also ships

with a MySQL adapter, allowing direct interaction between a MySQL database and any web

client via structured URLs. The MySQL server and official libraries are mostly implemented

in ANSI C/ANSI C++.

20

Page 21: Secure Mailing System Report

SECURE MAILING SYSTEM

4.4 Management and graphical frontends

MySQL Workbench in Windows, displaying the Home Screen which

streamlines use of its full capabilities.

MySQL is primarily an RDBMS and therefore ships with no GUI tools to

administer MySQL databases or manage data contained within. Users may use the included

command-line tools, or download MySQL frontends from various parties that have developed

desktop software and web applications to manage MySQL databases, build database

structure, and work with data records.

4.5 Benefits of MySQL

As web and network applications become more significant, the value of

relational database management systems increases. Selecting the one that suit your needs is

important to ensure quality of your application. Knowing the pros and cons of running

applications such as Microsoft SQL Server will help you to decide whether it suits your

current needs.

1. Enterprise-grade management application

SQL server includes enterprise database management software. On the other

hand, few competitors like MySQL have created similar applications in recent years, but the

SQL is more advanced and has additional features. The software provided by Microsoft SQL

also provides integration the other applications like .NET framework.

2. Data Recovery Support

Since corrupt data is a concern when improper shutdowns occur, SQL server

integrates new features that help promote data recovery and restoration. Even though it may

not be possible to restore individual table, complete recovery options are available to retrieve

the corrupt data. By using backup, caching and log files, Microsoft SQL allows the consumer

to feel confident that recovery options are ample.

21

Page 22: Secure Mailing System Report

SECURE MAILING SYSTEM

3. Inexpensive

MySQL is very popular since it is free. However, if you opt to have a

commercial license, then there is no need for you to worry because it is inexpensive as

compared to other common databases like Microsoft SQL Server or Oracle.

4. Customizable

Sine MySQL is formed under the GPL; you can customize its function if you have the

technical know-how. In addition, you can use server side language (SSL) to create dynamic

pages. Using MySQL allows you to create interactive web sites and applications.

5. Easy to learn

The SQL language is easy to learn and use, and is available on different operating systems.

MySQL can run several operating systems from Linux, FreeBSD, UNIX, Mac OS and

Windows.

22

Page 23: Secure Mailing System Report

SECURE MAILING SYSTEM

CHAPTER 5

Methodology

5.1 SDLC (Software Development Life Cycle)

Software Development Life Cycle (SDLC) is a structured sequence of phases for

implementing an information system.

A System/Software development life cycle (SDLC) is a logical process by which

systems analysts, software engineers, programmers and end-users build information systems

and computer application to solve business problems and needs.

The System/Software development life cycle (SDLC) is a conceptual model used in

project management that describes the stages involved in an information system development

project, from an initial feasibility study through maintenance of the completed application.

In the software development process we focus on the activities directly related to the

production of the software, for example, design, coding, and testing. A development process

is a sequence of steps. Each step performs a well-defined activity leading towards the

satisfaction of the project goals, with the output of one step forming the input of the next one.

5.2 Various stages of SDLC

5.2.1 Requirement analysis

5.2.2 Feasibility Analysis

5.2.3 Analysis

5.2.4 Preliminary Design

23

Page 24: Secure Mailing System Report

SECURE MAILING SYSTEM

5.2.5 System Design

5.2.6 Coding

5.2.7 Implementation.

5.2.8 Testing and Maintenance

Feasibility

The feasibility study is used to determine if the project should get the go-ahead. If the

project is to proceed, the feasibility study will produce a project plan and budget estimates for

the future stages of development.

Requirement Analysis and Design

Analysis gathers the requirements for the system. This stage includes a detailed study

of the business needs of the organization.

Design focuses on high level design like, what programs are needed and how are they

going to interact, low-level design (how the individual programs are going to work), interface

design (what are the interfaces going to look like) and data design (what data will be

required).

During these phases, the software's overall structure is defined. Analysis and Design

are very crucial in the whole development cycle. Any glitch in the design phase could be very

expensive to solve in the later stage of the software development. The logical system of the

product is developed in this phase.

Implementation

In this phase the designs are translated into code. Computer programs are written

using a conventional programming language or an application generator. Programming tools

24

Page 25: Secure Mailing System Report

SECURE MAILING SYSTEM

like Compilers, Interpreters, and Debuggers are used to generate the code. Different high

level programming languages like C, C++, Pascal, and Java are used for coding. With respect

to the type of application, the right programming language is chosen.

Testing

In this phase the system is tested. Normally programs are written as a series of

individual modules, this subject to separate and detailed test. The system is then tested as a

whole. The separate modules are brought together and tested as a complete system.

The system is tested to ensure that interfaces between modules work (integration

testing), the system works on the intended platform and with the expected volume of data

(volume testing) and that the system does what the user requires (acceptance/beta testing).

Maintenance

Inevitably the system will need maintenance. Software will definitely undergo change

once it is delivered to the customer. There are many reasons for the change. Change could

happen because of some unexpected input values into the system. In addition, the changes in

the system could directly affect the software operations. The software should be developed to

accommodate changes that could happen during the post implementation period.

5.3 How the SDLC cycle was followed in this project

The various stages of the system development life cycle were dutifully

followed and successfully completed during the development of the project titled “secure

mailing system”, which actually is an implementation of a website dedicated to secure

mailing.

5.3.1 Feasibility study

The scope of the project was dutifully studied and it was found that the project

upon its successful completion can be an effective medium of communication that can

25

Page 26: Secure Mailing System Report

SECURE MAILING SYSTEM

connect to masses via internet. Thus the efforts were found to be justified and the project was

considered feasible.

5.3.2 Requirement analysis and design

In this phase, the basic features required and expected of a blogging website

were brought into consideration. The features which are most important like posting of posts,

sign in, comments, rating etc. were included.

The detailed study of other already existing websites dedicated to blogging

was also done to have a better understanding of functionality and user expectations.

This also helped in generation of more creative ideas concerning the design

issue.

5.3.3 Implementation

In this phase the front end and the back end were decided. The designs of the

forms obtained from the previous stage acted as inputs and guided the developer through the

complex process of conversion of the mere designs of forms into the forms in ASP.net and

this phase also included the development of the databases which would be used in the project.

The coding was done to include functionalities.

5.3.4 Testing

The project thus developed was later dutifully tested on test data, by providing

dummy data as user ids and posting a few articles. Many test runs were conducted.

The developer ensured that the project was tested by a some users other than himself so that

the process was done in an unbiased way, and loopholes could be detected.

26

Page 27: Secure Mailing System Report

SECURE MAILING SYSTEM

CHAPTER 6

SECURE MAILING SYSTEM

6.1 PROJECT CATEGORY

The category of the project is a business application. The end

user who will be using the application will not have enough knowledge about computers so I

need to develop an application with a very user friendly and attractive environment for that

reason we need to create a database. Using RDBMS for database management and object

oriented programming.

Object oriented programming provides following features:

1) Real world modeling

2) Code reusability

3) Easy maintenance and further enhancement

4) Resilience to change

RDBMS will provide following advantages:

1) Program data independency

2) Flexibility in programming

3) Data independency and security

4) Easy maintenance

5) Data redundancy in store data can be reduce

27

Page 28: Secure Mailing System Report

SECURE MAILING SYSTEM

6.2 DESCRIPTION OF MODULES

a) Login Module

The ASP.NET login controls provide a robust login solution for ASP.NET

Web applications without requiring programming. By default, login controls integrate with

ASP.NET membership and forms authentication to help automate user authentication for a

Web site. It provides you with a ready-to-use user interface that queries the user name and

password from the user and offers a Log In button for login. It validate user credentials

against the membership API and encapsulating the basic forms authentication functionality

like redirecting back to the original requested page in a restricted area of you application after

the successful login.

The Login control displays a user interface for user authentication. The Login

control contains text boxes for the user name and password and a check box that allows users

to indicate whether they want the server to store their identity using ASP.NET membership

and automatically be authenticated the next time they visit the site.

The Login control has properties for customized display, for customized

messages, and for links to other pages where users can change their password or recover a

forgotten password. The Login control can be used as a standalone control on a main or home

page, or you can use it on a dedicated login page. If you use the Login control with ASP.NET

membership, you do not need to write code to perform authentication. However, if you want

to create your own authentication logic, you can handle the Login control's Authenticate

event and add custom authentication code.

Whenever user hits the Log In button, the control automatically validates the

user name and password using the membership API function Membership.ValidateUse() and

then calls FormAuthentication.redirectFromLoginPage() if the validation was successful. All

options on the UI of the LoginControl affect the input delivered by the control to these

methods. For Example, if you click the "Remember me next time" check box, it passes the

28

Page 29: Secure Mailing System Report

SECURE MAILING SYSTEM

value true to the createPresistentCookie parameter of the RedirectFromLoginPage() method.

Therefore, the FormAuthenticateModule creates a persistent cookie.

b) New User Registration Module

In this module new user can submit his personal details regarding the user’s

email id, password, contact no, date of birth etc.

c) Encrypt Mail Module

In this module login user can write his mail and either he/she save the mail or

first encrypt the mail by giving the two prime numbers & a password and then send the mail

to the user in the network only. Data Protection is a must these days, and if we are able to

encrypt our data easily, it makes a big difference. One textbox and button will be used to

encrypt data, and the other will be used to decrypt the data.

What is Encryption?

Encryption is the process of converting a string of characters into another such

that the original characters cannot be deciphered upon examination. This process is

performed with the use of another string of characters called the “KEY”.

Symmetrical Encryption

In symmetric encryption, a secret key is used to encrypt data and the very

same key is used to decrypt it too Examples: DES and RC2.

Asymmetrical Encryption

Asymmetric encryption uses a related key-pair to encrypt and decrypt data.

One of the keys is the “public key” and the other is the “private key”. The data encrypted

with the public key can only be decrypted with the private key, and vice-versa.RSA is one of

the popular asymmetric algorithms and that’s what we’re going to deal with in this article.

29

Page 30: Secure Mailing System Report

SECURE MAILING SYSTEM

To use the cryptographic services, we need to use the

System.Security.Cryptography namespace.

Lets begin by creating the following files

1. Cryptography.cs

2. publickey.xml

3. privatekey.xml

4. WebForm1.aspx

d) Decrypt Mail Module

In this module, Login user can decrypt the mail by entering the same password

which the user give it while encrypting the mail. Then after he/she can open the mail or see

the attachment.

e) Forgot Password

In this module, a user can get a new password if he forget his password. For

this he has to remember the answer of the question, asked at the time of registration. The

ASP.NET 2.0 password recovery control asks for the username first; then if the user name

exists in the membership database, the user receives a clean password.

30

Page 31: Secure Mailing System Report

SECURE MAILING SYSTEM

CHAPTER 7

DATABASE DESIGN

Table Structure

1. user_det table

2. usr_mail Table

1. user_det table

Field Name Data Type

U_id Nvarchar

U_fname Char

U_lname Char

U_pass Char

U_dob Char

U_gen Char

31

Page 32: Secure Mailing System Report

SECURE MAILING SYSTEM

U_pcode Char

U_add Nvarchar

U_cno Nvarchar

U_dttm Nvarchar

U_block Char

U_no Int

2. usr_mail Table

Field Name Data Type

M_id Int

M_sen Nvarchar

M_rec Nvarchar

32

Page 33: Secure Mailing System Report

SECURE MAILING SYSTEM

M_sub Nvarchar

M_mail Nvarchar

M_type Char

M_dttm Datetime

M_att Nvarchar

M_enc Char

M_pass Nvarchar

M_rsamail Nvarchar

CHAPTER 8

DIAGRAMS

33

Page 34: Secure Mailing System Report

SECURE MAILING SYSTEM

8.1 DATA FLOW DIAGRAM

0-LEVEL DFD

34

Page 35: Secure Mailing System Report

SECURE MAILING SYSTEM

1-LEVEL DFD

35

Page 36: Secure Mailing System Report

SECURE MAILING SYSTEM

8.2 ENTITY RELATIONSHIP DIAGRAM

36

Page 37: Secure Mailing System Report

YES

NO

NOYES

YES

NO

START

User

Is Decrypted text is available

Is Data available?

Are more Data Forwarding?

Transfer control to Sending Mail

STOP

Generate status

message

Accept confirmation for part Data

SECURE MAILING SYSTEM

8.3 PROCESS LOGIC DIAGRAM

8.3.1 PROCESS LOGIC DIGRAM FOR USER VERIFICATION

37

Page 38: Secure Mailing System Report

Mail Send

Save To Draft Encrypt Mail

Compose MailForgot Password

User Home

Login

Incorrect Login Details

Registered User

HasCreate New User

Secure Mail System

SECURE MAILING SYSTEM

8.3.2 PROCESS LOGIC Of Sending or Receiving Mail

38

Page 39: Secure Mailing System Report

USER<<pk>> UId : IntFirstName : Varchar (50)MiddleName : Varchar (50)LastName : Varchar (50)Address: Varchar (300)ViewInfo ( )GetInfo ( )

Topic<<pk>> dft_id

: IntegerDtf-dtm: Varchar (20)Ptf-topic : DateTimeViewDetails ( )Upload topic()

User Mail <<pk>>MID: int

User Name : Varchar (100)Sender-Name:Varchar(20)

Sending Mail();Views -Mail();Deleting-Mail

Detail Views<<pk>> Dfv : IntDfv-Views : Varchar (50)Dfv-Dttm : Varchar (50)Dfv-Uid : int

Monitor ( )CheckDetails( )

SECURE MAILING SYSTEM

8.4 CLASS DIAGRAM

39

Page 40: Secure Mailing System Report

SECURE MAILING SYSTEM

8.5 GANTT CHART

40

Page 41: Secure Mailing System Report

SECURE MAILING SYSTEM

CHAPTER 9

SNAP SHOTS

41

Page 42: Secure Mailing System Report

SECURE MAILING SYSTEM

42

Page 43: Secure Mailing System Report

SECURE MAILING SYSTEM

43

Page 44: Secure Mailing System Report

SECURE MAILING SYSTEM

CONCLUSION

The website “SECURE MAILING SYSTEM” is developed using

ASP .NET as a front-end & SQL Server as a back-end. Its programs could be run on any kind

of client machine on the Internet without actually making any changes to the source code.

Through this website a user can send or receive mails. The extra feature involved in our

mailing site is that it is secured in a way that there is use of CRYPTOGRAPHY for mails i.e.

mails send will be encrypted by the user and on receiving they will be decrypted by the user.

44

Page 45: Secure Mailing System Report

SECURE MAILING SYSTEM

BIBLIOGRAPHY

• Books:

– Software Engineering- Roger S. Pressman

– C#.NET-Marshall

– ASP.NET-Esposito

• Websites:

– http://blog.loadingdata.nl/2011/01/secure-e-mail-using-webid/

– http://www.perthcomputers.net/?portfolio=secure-mail

– http://www.google.com

– http://www.ieee.org

45