
SECURITY NETWORK PROGRAMMING (SECURED CLIENT-SERVER CHAT APPLICATION)
CHAPTER ONE
1.1 Introduction
Several network systems are built to communicate with one another and are made available through service-oriented architectures. In this project, we use the client server architecture to develop a secured Client-Server 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.
In general, the server process will start on some computer system; in fact, the server should be executed before the client. Server usually initializes itself, and then goes to wait state or sleep state where it will wait for a client request. After that, a client process can start on either the same machine or on some other machine. Whenever the client wants some service from the server, it will send a request to the server and the server will accept the request and process it. After the server has finished providing its service to the client, the server will again go back to sleep, that is, waiting for the next client request to arrive. This process is repeated as long as the server processes is running. Whenever such request comes, the server can immediately serve the client and again go back to the waiting state for the next request to arrive.
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:
- Server application
- Client application
Server application runs on the server computer and client application runs on the client computer (or the machine with server). In this chat application, a client can send data to anyone who is connected to the server.
Java application programming interface (API) provides the classes for creating sockets to facilitate program communications over the network. Sockets are the endpoints of logical connections between two hosts and can be used to send and receive data. Java treats socket communications much as it treat input and output operations; thus programs can read from or write to sockets as easily as they can read from or write to files.
To establish a server connection, a server socket needs to be created and attached to a port, which is where the server listens for connections. The port recognizes the Transmission Control Protocol service on the socket. For instance, the email server runs on port 25, and the web server usually runs on port 80.
Server Execution: At server the side, a thread is created which receives numerous clients’ requests. It also contains a list in which Client’s name and IP addresses are stored. After that, it broadcast the list to all the users who are currently in chat room and when a client logs out then server deletes that particular client from the list, update the list and then broadcast the list to all available clients.
Client Execution: A client firstly must have to register itself by sending username to the server and should have to start the thread so that system can get the list of all available clients. Then any of two registered clients can communicate with each other.
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 Aim and 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. MySQL became the choice for the implementation of this application based on its scalability and flexibility, high performance, high availability, strong data protection, web and data warehouse strengths, management ease, lowest total cost of ownership and open source freedom.
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:
This project use MySQL for its database to make information in the database secure. The personal details and messages including the private messages in the Database are encrypted using encryptor (one of the security facilities available in the MySQL).
This project implements hash function with the password before the encryption and then stored in the Database. It also uses random generated numbers (salt) that is calculated together with the passworded hash values and stored in the Database. As a result, even if the database is compromised, the salt added to hash values makes it harder to compute the original password. This random salt is used with the hash function to significantly increase the strength of encrypting passwords and thus makes cracking greatly impossible. This makes the chat application server reliable and more secured.
Another significance of this application is private chatting. This is where two users can chat in private. The messages between the users are not displayed / seen in the general chat display text field. The messages are displayed only within the private message display text field.
1.6 Scope Of The Study
The project shall consider among other things the following issues:
- To provide a better understanding of how network programming in java works.
- Develop a reliable network communication for a Client-Server chat application.
- Analyses of network programming in java (Multithreaded Client-Server Chat applications) for better understanding of the
- Conduct an experimental result in order to establish the parameter of the problem. In conclusion, suggest ways the problems can be eliminated and recommends how the problems can be
1.7 Limitations of Study
The previous Client-Server Chat system implements only hash function with the password before the encryption which is then stored in the Database. Thus, the database can be compromised easily to compute the original password.
Some drawbacks of the Client-Server Chat are as follows:
- As the server receives as many requests from clients so there is a chance that server can bec44ome congested and
- In case of server fails then the users also
- A lost password is
- Any unauthorized client can hack the client account and can change the
1.8 Organization Of The Work
In this project, a secure java chat application is considered which relies on the client-server paradigm to exchange the information. It is divided into five chapters. Chapter one is the introduction which consists of the background of study, significance of the study, scope of the study, limitations of the study, organization of the work and the definition of terms.
The second chapter focuses on the literature review of relevant scholar’s opinions relevant to this study such as socket programming in java, overview of secure socket layer, hash function e.t.c.
The third chapter gives details of the main methodology and system design to implement the client-server chat application in java. First of all the application is developed by using TCP then and in the end multithreading is used to develop the application. At the end of chapter weaknesses (deadlocks) of multithreading is discussed which can be removed by using synchronizing threads.
Chapter four is the implementation of the secured Java Client-Server Chat Application: it test and analysis the implementation of the application.
Chapter five ends the project report. Firstly, a short summary highlights the main points of the whole project. Next, a number of conclusions and recommendations are given and lastly Appendix.
1.9 Definition Of Terms
Socket: Socket is a standard connection protocol that supports data communication over the network between connected terminals. The standard connection supports the data transmission both by the TCP and UDP protocols between the terminals.
TCP: TCP is a transport layer protocol used by applications that require guaranteed delivery of data. Basically, it is a connection-oriented protocol. To communicate over TCP one must first have to establish a connection between pair of sockets, where one socket is client and the other belongs to server. After the connection is established between them then they can communicate with each other.
Client: A client is a system that accesses or desires for a service made accessible by a server.
Server: A server is a system (hardware or software) program running to provide the service requests of other system programs.
Port: Port is a software mechanism that allows the centralized connected Servers to listen for requests made by clients. Port is actually purposed as a gateway to listen for the requested parameters by the server terminals or other machines. It is a software address on a system that is on the network. Entire request response proceeding among this Application is carries through machine ports.
Network: This refers to a system were computers are linked to share software, data, hardware and resources for the benefit of users.
Interface: This may be software or hardware that upon an agreed method spells out the manner a system component can exchange information with another system component.
Secure socket layer (SSL): This refers to Secure Sockets Layer protocol that is used for encryption of data for secure data transmission.
IP: This refers to Internet Protocol; it is the reasonable network address of device on a network. It is notational called dotted-decimal (for instance: 128.1.0.1).
Thread: A thread is a section of code which is executing independently of others threads in a same program. Java has a class Thread which is defined in java.lang package. Thread is the most powerful feature that JAVA supports from other programming languages.
CHAPTER TWO
2.0 Literature Review
2.1 Introduction
The review of relevant literature is the main topic of this chapter. A literature review covers theoretical and methodological contributions to a certain issue in addition to the state of knowledge at the time of writing. It provides information about the state of the art in relation to the subject you are writing about. It examines the body of work on the chosen subject. The literature evaluation in this study comprises the …
Procedure for Downloading the PDF (Docx) Material
Security Network Programming (Secured Client-Server Chat Application) can be downloaded by requesting the full set of materials at the project or seminar cost. The document will be sent via Microsoft Word (MS-Word) format via WhatsApp (e-mail) following payment confirmation.
Seminar Material Cost ₦3,000 | Project Material Cost ₦5,000 |
Request Complete Material
![]() | Click here to request the Complete Material via WhatsApp including;
|
TABLE OF CONTENTSPRELIMINARY PAGES
- Title page
- Approval page
- Dedication
- Acknowledgement
- Table of Contents
- Abstract
INTRODUCTION
- 1.1 Introduction
- ⋮
LITERATURE REVIEW
- 2.1 Introduction
- 2.2 Conceptual Review
- 2.3 Theoretical Framework
- ⋮
- 2.4 Empirical Studies
- 2.5 Research Gaps
- 2.6 Summary of Literature Review
CHAPTER THREE
RESEARCH METHODOLOGY
- 3.1 Introduction
- 3.2 Research Design
- 3.3 Population of Study
- 3.4 Sampling and Sampling Technique
- 3.5 Validation of Research Instrument
- 3.6 Method of Data Collection
- 3.7 Method of Data Analysis
- 3.8 Questionnaire Administration
- 3.9 Ethical Consideration
- 3.10 Statistical Analysis
CHAPTER FOUR
DATA ANALYSIS, RESULT AND DISCUSSION
- 4.1 Introduction
- 4.2 Presentation and Analysis of Data
- 4.3 Re-statement of Research Questions
- 4.4 Test of Hypotheses
- 4.5 Discussion of Findings
CHAPTER FIVE
SUMMARY, CONCLUSION AND RECOMMENDATION
- 5.1 Introduction
- 5.2 Summary of Findings
- 5.3 Conclusion
- 5.4 Recommendation
- 5.5 Suggestion for Further Study
REFERENCES
APPENDIX A - “QUESTIONNAIRE”
Disclaimer for Complete Material Utilization
The displayed research work titled "Security Network Programming (Secured Client-Server Chat Application)" is stated as a research guideline towards accomplishing your assigned project / seminar research work. All the research materials on this website are ONLY for research purposes and should be used as a guideline in developing your research work. For no reason should you copy word for word as projectlist.com.ng will not be liable for any who copied the material. By ordering the complete research guideline, it signifies that you've accepted our terms of service.
PRELIMINARY PAGES
- Title page
- Approval page
- Dedication
- Acknowledgement
- Table of Contents
- Abstract
INTRODUCTION
- 1.1 Introduction
- ⋮
LITERATURE REVIEW
- 2.1 Introduction
- 2.2 Conceptual Review
- 2.3 Theoretical Framework
- ⋮
- 2.4 Empirical Studies
- 2.5 Research Gaps
- 2.6 Summary of Literature Review
CHAPTER THREE
RESEARCH METHODOLOGY
- 3.1 Introduction
- 3.2 Research Design
- 3.3 Population of Study
- 3.4 Sampling and Sampling Technique
- 3.5 Validation of Research Instrument
- 3.6 Method of Data Collection
- 3.7 Method of Data Analysis
- 3.8 Questionnaire Administration
- 3.9 Ethical Consideration
- 3.10 Statistical Analysis
CHAPTER FOUR
DATA ANALYSIS, RESULT AND DISCUSSION
- 4.1 Introduction
- 4.2 Presentation and Analysis of Data
- 4.3 Re-statement of Research Questions
- 4.4 Test of Hypotheses
- 4.5 Discussion of Findings
CHAPTER FIVE
SUMMARY, CONCLUSION AND RECOMMENDATION
- 5.1 Introduction
- 5.2 Summary of Findings
- 5.3 Conclusion
- 5.4 Recommendation
- 5.5 Suggestion for Further Study
REFERENCES
APPENDIX A - “QUESTIONNAIRE”
Disclaimer for Complete Material Utilization
The displayed research work titled "Security Network Programming (Secured Client-Server Chat Application)" is stated as a research guideline towards accomplishing your assigned project / seminar research work. All the research materials on this website are ONLY for research purposes and should be used as a guideline in developing your research work. For no reason should you copy word for word as projectlist.com.ng will not be liable for any who copied the material. By ordering the complete research guideline, it signifies that you've accepted our terms of service.
Frequently Asked Questions (FAQ)
Can the material for “The Impact of Cash Flow Risk Management in the Insurance Industry” be used as a guide for Insurance Project?
Yes it can be used — The study was carried out to examine the Impact of Cash Flow Risk Management in the Insurance Industry. Investigation revealed that most insurance businesses encounter cash flow risk management problem at one time or another. Furthermore, cash flow problems can be serious and threaten your ability to stay in business if not well analyzed. Insurance companies are more at cash flow risk due to the nature of their business. The research design used in this report is descriptive design, utilizing questionnaire method to obtain information from the respondents for this project. A total of 133 (one hundred and thirty three) respondents were selected for this study to represent the entire population of the study. For null hypotheses were formulated and …
Is the topic “Bacteriological Assessment of Parasites in Some Ready to Eat Fruit Sold” recommended for Public Health Project?
Yes it is highly recommended — The study was carried out to assess the parasites in Some Ready to Eat Fruit Sold. In achieving this aim, the following specific objectives were laid out to determine whether fruits are safe to be eaten by human beings without washing them and the parasite of medical importance in fruit sold at Douglas market in Imo State. Some locally available fruits (garden egg, orange, banana, guava, avocado, pawpaw and pineapple) sold in Douglas market in Owerri, Imo State was examined for parasitological contamination. A total of 87 samples were examined using sedimentation and concentration methods. 11(12.6%) of the 87 fruits were positive for intestinal parasites microscopically. Among these fruits, guava had the highest number of intestinal parasites which was 6 …
Can the material for “Performance Evaluation of Manufacturing Companies’ Efficacy of Pricing Policy and Profit Planning in Nigeria” be used as a guide for Accountancy / Accounting Project?
Yes it can be used — The study was carried out to evaluate the performance of Manufacturing Companies’ Efficacy of Pricing Policy and Profit Planning in Nigeria. In achieving this aim, the following specific objectives were laid out to find out the various factors that influence pricing decisions in selected firms and effectiveness of pricing policy in selected firms. Investigation revealed that firms undertaking unplanned ventures resulting in escalation and inability of firms to foresee shortage in resources or finance or personnel needed in the future operation of the firm. The research design used in this report is descriptive design, utilizing questionnaire method to obtain information from the respondents for this project. A total of 100 (one hundred) respondents were selected for this study to represent …
Can the material for “Public Health Expenditure and Health Outcomes in Nigeria 1986-2016” be used as a guide for Public Health Project?
Yes it can be used — Conventional wisdom holds that health is central to human general well-being, as well as a prerequisite for increased productivity, and overall economic growth and development of an economy. This explains why governments across the globe are making enormous efforts to achieve good health for all and Nigeria is no exception. Regrettably, despite government’s efforts to improve the health situation of the citizens through massive health care expenditure, the Nigerian health outcomes (such as life expectancy and mortality rate) are still considered one of the poorest and most miserable in the world. Thus, the study follows a causality approach to examining the relationship among government health expenditure, health outcomes, and economic growth in Nigeria during the period 1986 − 2016. …
Can the material for “Employees’ Performance Appraisal as a Tool for Organization Growth” be used as a guide for Business Administration and Management (BAM) Project?
Yes it can be used — This study examined the relationship between employees’ performance appraisal and organizational growth. It employed the descriptive survey research method. The random stratified sample method was used to select the total numbers of 250 respondents used for the study. Data used for the study were collected through the questionnaires. Hypotheses one and two were tested using the t-test of significance method while hypotheses three to five were tested using Chi square statistics method with the help of Special Package of Social sciences (SPSS). Findings of the study showed that the tested employees of Nigeria Bag Manufacturing Company placed significant attention to performance appraisal system; there was a significant difference between Performance Appraisal of Nigeria Bag Manufacturing Company (BAGCO) and those of …
Is the topic “Bank Lending Policies and Financial Performance of the Nigeria Banking Industry” recommended for Banking and Finance (BF) Project?
Yes it is highly recommended — This study examined the bank lending policies and financial performance of the banking industry between 2000 and 2010. It specifically determined the effect of lending rate and monetary policy on the performance of banking industry in Nigeria and analyzed how banking lending policy affect the performance of Nigeria banking industries. This study utilized primary data econometrics in a regression where time-series and quantitative design were combined and estimated. The result confirmed the lending rate and monetary policy rate has significant and positive effect on the performance of Nigeria banking industries. The implication of these is that lending policies are true parameters of measuring bank performance, we therefore recommend that government should adopt policies that will help the Nigeria banking industries …
Can the material for “An Assessment of the Effect of the Media on Performance of Islamic Studies Students in Secondary Schools” be used as a guide for Education and Islamic Studies Project?
Yes it can be used — Understanding toddy’s digital kids and how they learn has profound implications not only for how teachers teach digital students, but also, and perhaps more importantly for how their teachers reach them. Today’s youth are much more media-centric than previous generations. These students will need ability to cope with change and accept innovation and their skills in using media resources will be inseparable from their analytical abilities. In fact, many people believe that the brains of today’s youth have actually become rewired to accommodate the thousands of hours they spend in front of computer screens watching and creating video, listening to music and playing computer games. This shows the important of media resources in teaching and learning process. In other words, …
Can the material for “Design and Implementation of an Online Shopping Cart System for an Online Store” be used as a guide for Computer Science (CS) Project?
Yes it can be used — A shop is a place where various types of goods are packed and sold. Shopping is the process of purchasing items in exchange for money. The business-to-consumer aspect of an online shopping is the most visible business use of the World Wide Web. The primary goal of an online shopping site is to sell goods and services online. This project deals with developing an e-commerce website for online shopping. It provides the user with a catalogue of different goods and services available for purchase in the store. In order to facilitate online purchase a shopping cart is provided to the user. The reason for writing this project work on this topic is to create software that will automate shopping for …
Can the material for “The Role of Farmers Multi-Purpose Cooperative Societies in Accelerating Food Production” be used as a guide for Cooperative Economics and Management (CEM) Project?
Yes it can be used — The subject matter of this research is the role of farmer's multi-purpose cooperative society in accelerating food production. A case study of Orlu Local Government Area. The aim of the study is to determine the effective ways the role of farmers multi-purpose cooperative society can accelerate food production in different ways i.e. through marketing of food production, processing, supply of farm inputs and credit facilities. The researcher also research on the opportunities made available of these food productions and the means of getting them available for the members. The concept that leads to these Farmers Multi-purpose Cooperative Society, which was, researched through different research method/designs such as experimental research, descriptive research and etc. And also different data collection method such as personnel interview, …
Can the material for “Design and Implementation of a Computerized Local Government Council Administration” be used as a guide for Computer Science (CS) Project?
Yes it can be used — Computerized Local Government Council Administration is a system that tends to have clearly defined inputs and outputs that enable and provide necessary facilities for accurately and efficiently managing an organizational process. The aim of the study is to design and implement a Computerized Local Government Council Administration. In achieving this aim, the following specific objectives were laid out as follows to develop an application software that will implement a functional local government council personnel information management system and create an effective alternative and efficient system to cater for this specific tasks. The motivation that led to the execution of the proposed system is that records are not kept well and retrieval as very difficult and loss of records is always …