You are on page 1of 11

Introduction

In today's world, computer networking has become an


integral part of life. There are many different networks
available to share information between groups of
devices through a shared communication medium. They
are mainly differentiated by the physical medium and
protocol standards. Ethernet is a prime wired networking
standard which is an obvious choice for many network
applications due to reliability, efficiency, and speed. The
Ethernet standard is used in various application
segments. Figure 1 shows the Client/Server model
architecture that has been used in most network systems
and in this study.
The client side could be any type of smart devices
(desktop, laptop, smart phone, etc.). The server part is
one device that controls and passes messages and
opens the connections among clients. and/or between
clients and server. The Internet part could be one device
to isolate the network overall into two main parts:
client(s) and server, it could be a switch or hub or router
or just a cable.

In the digital age, ensuring secure communication


between clients and servers is paramount to
safeguarding sensitive information from unauthorized
access and malicious attacks. Cryptography, the
science of encrypting and decrypting data, plays a vital
role in achieving this security objective.

In this laboratory, we delve into the realm of secure


client/server communication by harnessing the power of
cryptography tools. Our aim is to equip participants with
the knowledge and skills necessary to implement robust
encryption and decryption mechanisms to protect data
transmission over networks.

Through hands-on exercises and practical


demonstrations, participants will explore various
cryptographic techniques, including symmetric and
asymmetric encryption, digital signatures, and hash
functions. They will learn how to integrate these
techniques into client/server applications to establish
secure channels for data exchange.
By the end of this laboratory, participants will have
gained a comprehensive understanding of:

1. Cryptographic fundamentals and principles.


2. Different encryption algorithms and their strengths
and weaknesses.
3. Key management and distribution strategies.
4. Techniques for securing client/server
communication protocols, such as TLS/SSL.
5. Best practices for implementing cryptographic
solutions in real-world scenarios.

Overall, this laboratory provides a valuable opportunity


for participants to enhance their cybersecurity skills and
contribute to building more resilient and secure digital
infrastructures.
Methods

Building a Client/Server architecture for an encrypted


chat system to communicate between clients via a
server using encryption based on RSA. The goal for this
study is to use client/server architecture to accomplish
secure chat between clients without the server being
able to decrypt the message by using one layer of
encryption between the clients and the server, and then
a second layer. of encryption between the clients in a
chat room. All the used encryption processes are based
on the RSA algorithm. The implementation of this study is
held in the MATLAB environment.

The very teni "client-server" was initially applied to the


software architecture, which described the distribution of
the execution process by the principle of interaction of
two software processes, one of which in this model was
called the client and the other the server. The client
process requested some services, and the server process
ensured their execution. It was assumed that one server
process can serve a lot of client processes. One of the
client/server applications is "chatting", Chatting alludes
to one kind of correspondence over the Internet that
offers a continuous transmission of instant messages
from sender to beneficiary or over a server that controls
and deals with the gatherings (customers) to convey.
1. Client/Server The used client/server model describes
how a server provides resources and services to one or
more clients. Examples of servers including web servers,
chat servers, and file servers. Each of these servers
provide resources to client devices. Most servers have a
one- to-many relationship with clients, meaning a single
server can provide resources to m Computers. In order to
meet the main requirements of businesses, networks
themselves are becoming quite complex with multiple
clients at one time.

2. Chat Service A secure chat service provides the ability


to have real time secure discussions among users
electronically, one-to-one or in group sessions. A public
network accumulates information slightly, rather than on
a user's individual computer that is used to keep in touch
with people. A secure chatting between client and server
to make a safe and reliable communication, the benefits
are:

Allows for instant communications between users.

Uses real time chat over the network that can eliminate
costly long distance charges.

Allows for rapid query and rapid responses.

While the negative points of chat service can be listed as


following:

Security problems of instant messaging programs.


Secure chats in most cases are routed through a server
system, where the service is provided and that is a single
point where all messages can be intercepted.

Chat programs can provide an open avenue of attack for


hackers, crackers, spies and thieves.

3. RSA Encryption

In this study, an encrypted chat program designed to


ensure a safe mode of communication between two
users. It uses RSA encryption to encode and decode
messages in a terminal window. Clients exchange public
keys and encrypt outgoing text with the intended
recipient's public key.

Each user connects to a central server which forwards


messages to the intended recipient. On the receiving
end, the program utilizes a client's private key to decrypt
received messages. In 1977, Ron Rivest. Adi Shamir and
Leonard Adleman introduced a cryptographic
algoritlhun, RSA, which is named for the first letter in each
of its inventors last name. RSA's motivation is Diffiel
Hellman Algorithm which describes the idea of such an
algorithm that enables public- key cryptosystem. Here
are the steps of RSA Algorithm:

The first step of the RSA Algorithm is to select two different


prime numbers p and q
The second step is the calculation of n where N-p*q The
calculation of (N)-(p- 1)*(q-1) is the third step.

As the fourth step, an integer e is selected as a public-


key which is co-prime with (N)

Finally, the inverse of e modulus oN) is taken to produce


d, the private-key. By using e and d modulus N, the
encryption and decryption are done.

In the RSA Algorithm, the public-key involves two


numbers N and e while the private-key is N together with
a different number d. To encrypt message M (plain text):

M Me (mod N) C

To dencrypt message C (cipher text):

C-Cd (mod N)=M


PROPOSED SYSTEM

Encryption algorithm is deployed to encrypt messages


exchanged with the proposed chat. gateway. This study
is about developing a new model to create a private
messaging network to transmit message contents over
the network intranet between client terminals. The chat
messaging environment showed a great potential to
host a real time interactive interaction system which is
supported by RSA encryption methodology to preserve
the security of the message stream.

Choosing the key size in RSA encryption is of great


importance. As the size of the key increases, the security
level of the system, the complexity and the resistance of
encrypted text increases. These advantages make it
difficult to decrypt ciphertexts and break passwords.
However, in addition to these advantages, the encryption
key creation time, rext encryption time, and mobile
device RAM consumption increase. These disadvantages
are factors that will influence the effective use of the
application. For this reason, the advantages and
disadvantages of key dimensions should be determined
and the most suitable key size should be preferred.To
accomplish the chatting and meet the goals of this study
in client/server architecture, the need for authentication
methods and encryption algorithms will be urgent.
EXPERIMENTAL RESULTS
Conclusion
In conclusion, the implementation of client/server
communication using cryptography tools in our
laboratory has been a success. By employing encryption
algorithms such as AES and RSA, along with secure key
exchange protocols like Diffie-Hellman, we've ensured
the confidentiality and integrity of data exchanged
between clients and servers. Additionally, the use of
digital signatures has provided authentication and non-
repudiation, further bolstering the security of our
communication channels. Through this project, we've
gained valuable insights into cryptographic principles
and their practical applications in securing network
communications. Moving forward, we plan to explore
more advanced cryptographic techniques and continue
refining our implementations to stay ahead of emerging
threats in cyberspace.

You might also like