NS PRAC LAB (1) (1)
NS PRAC LAB (1) (1)
CERTIFICATE
Examination held on .
AIM:
To write a java program to implement the symmetric key Algorithm.
ALGORITHM:
1. Start the program
2. we first generate a secret key for AES encryption using the KeyGenerator class.
3. We then create an instance of the Cipher class for AES and initialize it to
ENCRYPT_MODE with the secret key
4. Next, we define an original message, "Department of IT", and encrypt it using the Cipher's
do Final method. We also convert the encrypted message bytes to a Base64 encoded string
to make it easier to handle.
7. The encrypted message will vary each time you run the program, due to the unique secret
key generated each time.
import javax.crypto.Cipher;
import javax.crypto.KeyGenerator;
import javax.crypto.SecretKey;
import java.nio.charset.StandardCharsets;
import java.util.Base64;
// Generate key
SecretKey secretKey = KeyGenerator.getInstance("AES").generateKey();
// Original message
String originalMessage = "Department Of IT";
cipher.init(Cipher.DECRYPT_MODE, secretKey);
RESULT:
Thus, the above program is executed successfully and output is verified.
EX.NO:02 a) IMPLEMENT ASYMMETRIC KEY ALGORITHM
DATE:21.2.24
AIM:
To write a java program to implement the Asymmetric key Algorithm
PROCEDURE:
2. Enter the message you want to encrypt (or uncomment the code for manual input).
3. The program initializes by filling a HashSet with prime numbers and setting up the
encryption and decryption keys.
4. It then takes a message as input, encrypts it using the public key, and prints the
encrypted message.
5. Finally, it decrypts the encrypted message using the private key and prints the
decrypted message.
sieve[i] = true;
}
sieve[0] = false;
sieve[1] = false;
for (int i = 2; i < 250; i++) {
for (int j = i * 2; j < 250; j += i) {
sieve[j] = false;
}
}
for (int i = 0; i < sieve.length; i++) {
if (sieve[i]) {
prime.add(i);
}
}
}
public static int pickRandomPrime()
{
int k = random.nextInt(prime.size());
List<Integer> primeList = new ArrayList<>(prime);
int ret = primeList.get(k);
prime.remove(ret);
return ret;
}
n = prime1 * prime2;
int d = 2;
while (true) {
if ((d * e) % fi == 1) {
break;
}
d += 1;
}
private_key = d;
}
public static int encrypt(int message)
{
int e = public_key;
int encrypted_text = 1;
while (e > 0) {
encrypted_text *= message;
encrypted_text %= n;
e -= 1;
}
return encrypted_text;
}
public static int decrypt(int encrypted_text)
{
int d = private_key;
int decrypted = 1;
while (d > 0) {
decrypted *= encrypted_text;
decrypted %= n;
d -= 1;
}
return decrypted;
}
public static int gcd(int a, int b)
{
if (b == 0) {
return a;
}
return gcd(b, a % b);
}
public static List<Integer> encoder(String message)
{
List<Integer> encoded = new ArrayList<>();
for (char letter : message.toCharArray()) {
encoded.add(encrypt((int)letter));
}
return encoded;
}
return s.toString();
}
}
OUTPUT:
Initial message:
Hii
The encoded message (encrypted by public key)
2422828
The decoded message (decrypted by public key)
Hii
RESULT:
The above program is executed successfully and output is verified.
EX.NO:02 b) IMPLEMENT KEY EXCHANGE ALGORITHM
DATE:21.2.24
AIM:
To implement the Diffie-Hellman Key Exchange algorithm for a given problem .
PROCEDURE:
1. Alice and Bob publicly agree to use a modulus p = 23 and base g = 5(which is a primitive
class DiffieHellman
{
public static void main(String args[])
{
int p = 23; /* publicly known (prime number) */
int g = 5; /* publicly known (primitive root) */
int x = 4; /* only Alice knows this secret */
int y = 3; /* only Bob knows this secret */
double aliceSends = (Math.pow(g, x)) % p;
double bobComputes = (Math.pow(aliceSends, y)) % p;
double bobSends = (Math.pow(g, y)) % p;
double aliceComputes = (Math.pow(bobSends, x)) % p;
double sharedSecret = (Math.pow(g, (x * y))) % p;
System.out.println("simulation of Diffie-Hellman key exchange algorithm\n---------------
----------");
System.out.println("Alice Sends : " + aliceSends);
System.out.println("Bob Computes : " + bobComputes);
System.out.println("Bob Sends : " + bobSends);
System.out.println("Alice Computes : " + aliceComputes);
System.out.println("Shared Secret : " + sharedSecret);
/* shared secrets should match and equality is transitive */
if ((aliceComputes == sharedSecret) && (aliceComputes == bobComputes))
System.out.println("Success: Shared Secrets Matches! " + sharedSecret);
else
System.out.println("Error: Shared Secrets does not Match");
}
}
OUTPUT:
RESULT:
Thus, the above program is executed successfully and output is verified.
EX.NO:03 IMPLEMENT DIGITAL SIGNATURE SCHEMES
DATE:11.3.24
AIM:
To implement the SIGNATURE SCHEME - Digital Signature Standard.
PROCEDURE:
RESULT:
Thus, the above program is executed and output is verified.
EX.NO:04 INSTALLATION OF WIRE SHARK, TCPDUMP AND OBSERVE
DATE:18.3.24 DATA TRANSFERRED IN CLIENT-SERVE COMMUNICATING
USING UDP/TCP AND IDENTIFY THE UDP/TCP DIAGRAM
AIM:
To installation of Wire shark, tcpdump and observe data transferred in client-server
communication using UDP/TCP and identify the UDP/TCP datagram.
Introduction:
The first part of the lab introduces packet sniffer, Wireshark. Wireshark is a free
open- source network protocol analyzer. It is used for network troubleshooting and
communication protocol analysis. Wireshark captures network packets in real time and
display them in human-readable format. It provides many advanced features including live
capture and offline analysis, three-pane packet browser, coloring rules for analysis. This
document uses Wireshark for the experiments, and it covers Wireshark installation, packet
capturing, and protocol analysis.
In the CSC 4190 Introduction to Computer Networking (one of the perquisite courses),
TCP/IP network stack is introduced and studied. This background section briefly explains
the concept of TCP/IP network stack to help you better understand the experiments.
TCP/IP is the most commonly used network model for Internet services. Because its most
important protocols, the Transmission Control Protocol (TCP) and the Internet Protocol
(IP) were the first networking protocols defined in this standard, it is named as TCP/IP.
However, it contains multiple layers including application layer, transport layer, network
layer, and data link layer.
- Application Layer: The application layer includes the protocols used by most applications
for providing user services. Examples of application layer protocols are Hypertext
Transfer Protocol (HTTP), Secure Shell (SSH), File Transfer Protocol (FTP), and Simple
Mail Transfer Protocol (SMTP).
- Transport Layer: The transport layer establishes process-to-process connectivity, and it
provides end-to-end services that are independent of underlying user data. To implement
the process-to-process communication, the protocol introduces a concept of port. The
examples of transport layer protocols are Transport Control Protocol (TCP) and User
Datagram Protocol (UDP).
The TCP provides flow- control, connection establishment, and reliable transmission of data,
while the UDP is a connectionless transmission model.
- Internet Layer: The Internet layer is responsible for sending packets to across networks. It
has two functions: 1) Host identification by using IP addressing system (IPv4 and IPv6);
and 2) packets routing from source to destination. The examples of Internet layer protocols
are Internet Protocol (IP), Internet Control Message Protocol (ICMP), and Address
Resolution Protocol (ARP).
- Link Layer: The link layer defines the networking methods within the scope of the local
network link. It is used to move the packets between two hosts on the same link. An
common example of link layer protocols is Ethernet.
Packet Sniffer
Packet sniffer is a basic tool for observing network packet exchanges in a computer. As the
name suggests, a packet sniffer captures (“sniffs”) packets being sent/received from/by
your computer; it will also typically store and/or display the contents of the various
protocol fields in these captured packets. A packet sniffer itself is passive. It observes
messages being sent and received by applications and protocols running on your computer,
but never sends packets itself.
Figure 3 shows the structure of a packet sniffer. At the right of Figure 3 are the protocols (in
this case, Internet protocols) and applications (such as a web browser or ftp client) that
normally run on your computer. The packet sniffer, shown within the dashed rectangle in
Figure 3 is an addition to the usual software in your computer, and consists of two parts.
The packet capture library receives a copy of every link-layer frame that is sent from or
received by your computer. Messages exchanged by higher layer protocols such as HTTP,
FTP, TCP, UDP, DNS, or IP all are eventually encapsulated in link-layer framesthat are
transmitted over physical media such as an Ethernet cable. In Figure 1, the assumed
physical media is an Ethernet, and so all upper-layer protocols are eventually encapsulated
within an Ethernet frame. Capturing all link-layer frames thus gives you access to all
messages sent/received from/by all protocols and applications ecuting in your computer.
The second component of a packet sniffer is the packet analyzer, which displays the contents
of all fields within a protocol message. In order to do so, the packet analyzer
https://www.wireshark.org/download.html
Starting Wireshark:
When you run the Wireshark program, the Wireshark graphic user interface will be shown
as
Figure 5.Currently, the program is not capturing the packets.
8. Now, we can try another protocol. Let’s use Domain Name System (DNS) protocol as an
example here.
9.conversations (also called network flows), select one of the packets and press the right
mouse button (if you are on a Mac use the command button and click), you should see
something similar to the screen below:
Click on Follow UDP Stream, and then you will see following screen.
10. If we close this window and change the filter back to “http.hos ww.wayne.edu” and then
follow a packetfrom the list of packets that match that filter, we should get the something
similar to the following screens. Note that we click on Follow TCP Stream this time.
RESULT:
Installation of Wire shark, tcpdump and observe data transferred in client-server
communication using UDP/TCP and identify the UDP/TCP datagram.
EX.NO:05 CHECK MESSAGE INTEGRITY AND CONFIDENTIALITY USING
DATE:25.3.24 SSL (Secure Socket Layer).
AIM:
ALGORITHM:
3. Main Method:
Define the main method as the entry point of the program.
Catch any exceptions that may occur during execution and print their stack trace.
5. TrustManager Configuration:
Initialize a TrustManagerFactory with the default algorithm.
Initialize the trust manager factory with null to use the default trust store.
Retrieve an array of trust managers.
6. SSL Context Initialization:
Initialize the SSL context with the obtained trust managers and a secure random number
generator.
import java.io.*;
import java.net.*;
import
javax.net.ssl.*;
import java.security.KeyStore;
import
java.security.cert.Certificate;
public class SimpleHTTPSClient
{
public static void main(String[] args)
{
try
{
trustManagerFactory.init((KeyStore) null);
// Use the default trust store
URL("https://www.google.com");
conn.setSSLSocketFactory(sslContext.getSocketFactory());
// Connect to
conn.connect();
System.out.println("Connected to https://www.google.com
successfully.");
null) {System.out.println(inputLine);
}
in.close();
// Disconnect
conn.disconnect();
}
catch (Exception e)
{
e.printStackTrace();
}
OUTPUT:
RESULT:
Thus the message integrity and confidentiallity using ssl(Secure Socket layer)
has beenexecuted successfully.
EX.NO:6 EXPERIMENT WITH SNIFF TRAFFIC USING ARP POISIONING
DATE:1.4.24
AIM:
To perform the experiment with sniff traffic using ARP Poisoning.
PROCEDURE:
Packet Sniffing in Wireshark
Step 1: Open Wireshark Window
Open your Wireshark tool in a new window or a Linux virtual machine. and begin
network capture. Assume we are capturing wireless fidelity (Wi-Fi Traffic).
SNIFF TRAFFIC USING ARP POISONING
Step 2: Start the Wireless Fidelity
Open Wireshark, select your Wi-Fi interface and start capturing packets. Engage in
network activities, stop the capture, and analyze the captured packets for network
insights.
RESULT:
Thus the experiment with sniff traffic using ARP poisoning has been executed
successfully.
EX.NO:7 DEMONSTRATE INTRUSION DETECTION SYSTEM USING ANY TOOL
DATE:1.4.24
AIM:
To demonstrate Intrusion Detection System (IDS) using Snort software tool.
PROCEDURE:
5. Click “Next” and then choose install location for snort preferably a separate
6. Click “Next” Installation process starts and then it completes as shown in figure 04:
Figure 05: Window showing details of software needed to run Snort successfully
6. Now the window for installation of Npcap shows it has been installed.
Clicking“Finish”.
8. As you can see in the above figure that snort runs successfully.
This is how you can download and install Snort along with its dependency i.e. Npcap.
etc folder contains all configuration files and the most important fileis
Note: Mention your own host IP addresses that you want to protect.
5. Setup the external network into anything that is not the home network. That is
# Path to your rules files (this can be a relative path)# Note for Windows users: You are
advised to make this an absolute path,# such as: c:\snort\rulesvar RULE_PATH ../rulesvar
SO_RULE_PATH
6. Now we have ../so_rulesvar
to define the PREPROC_RULE_PATH
directory for our ../preproc_rules
rules and preproc rules folde
Figure 13: Setting up path to our rules files and preproc rules folder in Snort
7. Now we have to setup our white list and black list path it will be in our snorts’
rulefolder
Figure 14: Setting up our White List and Black List files paths in Snort
8. Next we have to enable to log directory, so that we store logs in our log
folder. Uncomment this line and set absolute path to log directory
# Configure default log directory for snort to log to. For more information see snort -h
command line options (-l)## config logdir:
9. Now we will set the path to dynamic preprocessors and dynamic engine
12. Just comment out these lines as shown in figure 19 in doing so we are
13. Scroll down to the reputation preprocessors. We will just change the name
of thefiles since white list , black list are not rules they are just the list of IP
Figure 20: Whitelisting and Blacklisting IPs through the command as shown
in figure
17. Click on Save file and save all changes to save the configuration file (snort.conf).
18. Now recalling the Step 13 white list , black list are not rules they are just the
list of IP addresses labelled as black or white right now these files don’t exist in
our rule path which is why we have to create them manually , save them in this
folder C:\Snort\rules.
Go to Notepad++ and create new file.
20. We can also the check the wireless interface cards from which we will be
using snort by using the command below we can see the list of our wireless
Snort — W
RESULT:
Thus the Intrusion Detection System (IDS) has been demonstrated by
usingthe Open Source Snort Intrusion Detection Tool.
EX.NO:8 EXPLORE NETWORK MONITORING TOOLS
DATE:8.4.24
AIM:
To explore the network monitoring tools .
PROCEDURE:
Nagios:
Overview:
Nagios is an open-source monitoring tool that helps organizations to monitor their
IT infrastructure components such as servers, switches, applications, and services.
It provides comprehensive monitoring and alerting capabilities, enabling system
administrators to proactively identify and resolve issues before they impact end-
users.
Key Features:
1. Flexible Monitoring:Nagios allows you to monitor a wide range of network
services, including HTTP, SMTP, SSH, FTP, and more. It also supports monitoring of
host resources such as CPU, memory, disk usage, etc.
4. Extensibility: Nagios has a vast ecosystem of plugins and addons that extend its
functionality. Users can develop custom plugins to monitor specific services or
integrate with other tools seamlessly.
Practical Exercises:
1. Installation and Configuration: Set up Nagios on a dedicated server (physical or
virtual) using a Linux distribution like CentOS or Ubuntu. Follow the official
installation guide provided by Nagios to configure the core monitoring engine and
webinterface.
2. Host and Service Monitoring: Add target hosts (servers, network devices) and
define the services you want to monitor (e.g., HTTP, SSH, DNS). Configure service
checks using built-in plugins or custom scripts if needed.
3.Alerting Setup:Configure notification commands and contacts to receive alerts via
email or SMS when a service or host goes down or reaches a critical state. Test the
alerting mechanism by intentionally causing service failures.
4.Dashboard Customization: Customize the Nagios dashboard to display relevant
metrics and status information based on your infrastructure requirements. Arrange
widgets, graphs, and tables to provide an intuitive overview of the monitored
environment.
6.Integration with Other Tools: Integrate Nagios with external tools such as Grafana for
advanced visualization, Prometheus for metric collection, or ELK stack for log analysis.
Configure data export/import mechanisms to share monitoring data with othersystems.
Real-time example:
Scenario:
Imagine you are a system administrator responsible for managing the IT infrastructure of
a medium-sized company. Your company relies heavily on its network infrastructure to
support various critical services and applications, including email, file sharing, and
customer-facing websites.
Real-Time Example:
1. Installation and Configuration:
- Install Nagios on a dedicated server running CentOS Linux.
- Configure Nagios Core and Nagios Plugins according to the official documentation.
- Set up the Nagios web interface for monitoring and administration.
3. Alerting Setup:
- Configure Nagios to send email notifications to the IT support team whenever
a hostor service goes down or reaches a critical state.
- Set up SMS notifications using an SMS gateway for urgent alerts, ensuring that
theteam can respond promptly to critical incidents, even outside working hours.
4. Dashboard Customization:
- Customize the Nagios dashboard to display the status of all monitored
hosts andservices in real-time.
- Include graphs and charts showing historical performance data and
trends to facilitate quick troubleshooting and decision-making.
Real-Time Benefit:
In a real-time scenario, Nagios would continuously monitor the company's network
infrastructure, detecting any issues or performance degradations as soon as they occur.
For example:
- If a critical server experiences a hardware failure or service outage, Nagios
would immediately alert the IT support team via email and SMS, allowing them
to investigateand resolve the issue promptly.
-In case of network congestion or bandwidth saturation, Nagios would trigger
alerts, enabling administrators to take proactive measures such as adjusting network
settings or upgrading hardware to prevent service degradation.
- Through the customizable dashboard and integrated visualization tools,
administrators can quickly identify trends and patterns in network
performance, facilitating proactive capacity planning and optimization.
Overall, Nagios provides real-time visibility into the health and performance of the
network infrastructure, helping organizations maintain high availability, minimize
downtime, and ensure a seamless user experience for their employees and customers
RESULT:
Thus, the exploring of network monitoring tools are executed and verified successfully.
EX.NO:9 STUDY TO CONFIGURE FIREWALL, VPN
DATE:8.4.24
AIM:
To study and configure the Firewall and VPN PROCEDURE:
Configuring a firewall and VPN involves multiple steps and considerations. Here's a
studyguide to help you understand the basics and steps involved in configuring both:
PROCEDURE:
Firewall Configuration:
VPN Configuration:
Additional Resources:
- Refer to official documentation and guides provided by firewall and VPN vendors.
- Explore online tutorials, courses, and forums for hands-on configuration
examples and troubleshooting tips.
- Practice setting up virtual firewall and VPN appliances using platforms like
VirtualBox orVMware for practical experience.
By following this study guide and gaining hands-on experience, you'll develop the
skills and knowledge needed to configure firewall and VPN solutions effectively in
real-world scenarios.
RESULT:
Thus ,the study and configuration of firewall and VPN was studied successfully
EX.NO:10 EXPERIMENT EAVESDROPPING, DICTIONARY ATTACKS, MITM
DATE:15.4.24 ATTACKS
AIM:
To experiment eavesdropping, Dictionary attacks, MIMT attacks.
Visual Objective:
Introduction:
Password cracking is a term used to describe the penetration of a network, system, or resource
with or without the use of tools to unlock a resource that has been secured with a password.
Password cracking tools may seem like powerful decryptors, but in reality are little more
than fast, sophisticated guessing machines.
Types of password breaking Dictionary attack
A simple dictionary attack is usually the fastest way to break into a machine. A dictionary
file (a text file full of dictionary words) is loaded into a cracking application, which is run
against user accounts located by the application.
Brute force attack
A brute force attack is a very powerful form of attack, though it may often take a long time
to work depending on the complexity of the password. The program will begin trying any
and every combination of numbers and letters and running them against the hashed
passwords.
Passwords that are composed of random letters numbers and characters are most vulnerableto
this type of attack.
Hybrid attack
Another well-known form of attack is the hybrid attack. A hybrid attack will add numbers or
symbols to the search words to successfully crack a password. Many people change their
passwords by simply adding a number to the end of their current password. Therefore, this
type of attack is the most versatile, while it takes longer then a standard dictionary attack
it does not take as long as a brute force attack.
Cracking Process
Since a brute force attack is the most time consuming and is not likely to break any passwords
that are not composed of random characters, the best plan is to use techniques that are
computationally efficient compared to untargeted and unspecific techniques. By applying
what is known about how users select passwords, an intruder can tremendously increase
the odds in their favor of finding passwords. With the right techniques, some poor
passwords can be cracked in under a second.
The real power of dictionary attacks come from understanding the ways in which most people
vary names and dictionary words when attempting to create a password. By applying all
the common transformations to every word in the electronic list and encrypting each result
the number tested passwords multiplies rapidly. Cracking tools can often detect “clever”
ways of manipulating words to hide their origin. For example, such cracking programs
often subject each word to a list of rules. A rule could be anything, any manner in which
a word might appear. Typical rules might include
Alternate upper- and lowercase lettering.
Spell the word forward and then backward, and then fuse the two results (for example:
cannac).
Add the number 1 to the beginning and/or end of each word.
Naturally, the more rules one applies to the words, the longer the cracking process takes.
However, more rules also guarantee a higher likelihood of success.
Task 1 – Microsoft Office Password Recovery
Many applications require you to establish an ID and password that may be saved and
automatically substituted for future authentication. The password will usually appear on
the screen as a series of asterisks. This is fine as long as your system remembers the
password for you but what if it "forgets" or you need it for use on another system.
Fortunately, many utilities have been written to recover such passwords. In this task, you
will use OfficeKey to recover the password for a MS word document.
Step 1: Find the folder “Lab1” on your desktop, and open it.
You will find OfficeKey and a MS document in the folder.
Step 2: Open the Office Key – Password Recovery tool
Step 3: Press the “Recover” button in the upper left corner, or select File Recover
Step 4: Choose the password protected MS Office File you have saved to the Desktop.
Step 5: After running the first password auditing session, check to see if Office key has
cracked the password. If the password has not been cracked press the Settings button on
the upper tool bar.
Step 6: Once in the Settings menu you will be able to modify the search parameters and
customize a more targeted search
Step 7: Repeat steps 3 and 4 until the password has been cracked and opens the MS Office
File.
Step 8:Write down the contents of the MS word document and the password into your lab
report and submit it to your TA.
1. You obtain a dictionary file, which is no more than a flat file (plain text) list of words
(commonly referred to as wordlists).
2. These words are fed through any number of programs that encrypt each word. Such
encryption conforms to the DES standard.
3. Each resulting encrypted word is compared with the target password. If a match
occurs, there is better than a 90 percent chance that the password was cracked.
Step 1: Go to Lab1 folder, and open LC4 to audit the passwords on your Windows system.
Select File New Session
Select Import Import from PWDUMP File (in the same folder) Select the “Passwords”
file that has been provided to you.
Objectives
This password file has been retrieved from a system that we must gain access to. To do this
you must crack as many passwords as possible as quickly as possible. We have captured
the user names and encrypted passwords for ten users. The user names follow a standard
pattern of first initial and last name, but the passwords have no set standards. We do know
that users of this system are encouraged to add numbers and other characters to the words
they chose for passwords.
To aid you in cracking these passwords we have managed to collect some basic information
about the users. This personal information may help you target your searches as to what
the user’s password may be.
Kmiller Ken Miller is an avid fly fisher and his record number of catches
is
just under 30
Smacman Steven MacMan has a fiancé who’s name is 4 letters long and
starts
with a “K”
Gkoch Gina Koch grew up with her German grandmother, who used to
call
Use this menu to customize your password search. Here you can add different word list for
Dictionary attacks, change Hybrid attack features. Keep in mind you are working with a
short dead line and more in depth searches will take longer then you have. You must use
the information given to you to target your search most specifically at more likely
passwords
Step 3: Select Session Begin “Audit” or Press the blue play button on the upper toolbar to
start the password search.
Step 4: After the first search has run check your progress. Have some of the passwords been
cracked all the way though or have some only been partially cracked. Use what you’ve
learned from this first search to target your next few searches. You will need to search
the internet and use the information you have been given about each user to find words
they may have used as their password.
Note: The question marks in the partially cracked passwords do not necessarily represent the
number of remaining undiscovered characters.
Step 5: Add words to your wordlist Session Session Options
Press the ‘Dictionary List’ button in the Dictionary crack section. Here you can edit your
current word list and add words by selecting the ‘EDIT’ button and entering each wordon
a new line. You can also add multiple dictionaries and wordlist.
Step 6: You may chose to conduct dictionary attacks with other wordlists. You can find
additional wordlist to use here: ftp://ftp.cerias.purdue.edu/pub/dict
Step 7: Continue searching for possible passwords during the remainder of the lab.
Repeatingsteps 3 and 4 each time you modify your search.
Step 8: Once you have cracked all the passwords in the file, write them down in your lab
reportor once the lab time has ended, submit the passwords you were able to crack.
RESULT:
Thus, the experiment for Eavesdropping, Dictionary attacks, MITM attacks was done
successfully.