Several network systems are built to communicate with one another as well as made available through serviceoriented architectures. In this project, the client server architecture is used to develop a chat application. Firstly a chat application is created for both Client and Server which is based on Transmission Control Protocol TCP where TCP is connection oriented protocol and is a reliable connection protocol. As security is the key factor while communicating over a network, so in this project, MySQL SSL protocol and hash function was used for the Database based on a numbers of benefits. The hash values of the real password and the random generated number salt is stored in the database. The original password is not stored on the system, making cracking of password much harder
Several network systems are built to communicate with one another and are made available through serviceoriented architectures. In this project, we use the client server architecture to develop a secured ClientServer chat application. A chat application is created based on Transmission Control Protocol TCP where TCP is connection oriented protocol and in the end, multithreading is used to develop the application.
A client server chat application consists of a Chat Client and a Chat Server and there exists a two way communication between them. Here, Message Processor is used to interpret message from the user, Message Interpreter is used to extract and pass the received message. Message Maker is used to construct back the message and Client Manager is used to maintain the clients list which the sender and receiver at both sides use to interact with each other.
1.2 BACKGROUND OF THE STUDY
Client server model is the standard model which has been accepted by many for developing network applications. In this model, there is a notion of client and notion of server. As the name implies, a server is a process or a computer in which the process is running that is offering some services to other entities which are called clients. A client on the other hand is process which is running on the same computer or other computer that is requesting the services provided by the server.
A chat application is basically a combination of two applications:
1.3 STATEMENT OF THE PROBLEM
The client server communication model is used in a wide variety of software applications. Where normally the server side is sufficiently protected and sealed from public access, but client applications running on devices like notebooks and desktops are considered insecure and exposed to security threats.
The main weakness of client server chat application is that there is no security provided to data which is transferred between clients. Any unauthorized client can hack the client account and can change the data. This is the main objective of this project To develop a secured Client Server Chat Application.
1.4 OBJECTIVES OF THE STUDY
The aim of this project is to develop a reliable and secure network programming Client Server chat model which can perform a multithreaded server client chat application based on Java socket programming using Transport Control Protocol TCP. As security is the key factor while communicating over a network, hash function with salt is used for the Database based on a number of benefits.
1.5 SIGNIFICANCE OF THE STUDY
Apart from just performing the regular client server chat, this client server chat is robust and significant in the following ways: