Implement encryption functionality in your code

Assignment Help JAVA Programming
Reference no: EM132274542

Assignment: Background: The goal of this assignment is to give you practical experience in using cryptographic libraries to implement encryption functionality in your code, especially in regard to data in transit i.e. network communications.

To this end you are provided with two pieces of code (Server.java and Client.java) written in the Java programming language. The code implements a simple socket communication program that enables two machines (a client and a server) to make a connection to each other and send messages.

Your objective in carrying out this assignment will be to modify the code to achieve the following:

• Unlimited communication between the client and the server

• Termination of the connection when a specific message is sent from the client to the server

• Encryption of the communication between the client and the server using any encryption technique

Instructions: 1. You will find attached the two pieces of Java programming language code that implement the socket program (One for the client side and the other for the server side).

2. You can run the program on any platform that works for you (I would suggest using Ubuntu Linux). After compiling the code, you have to assign a port number (example; Port number = 5000, you can use any port number between 2000 and 65535) to the server when putting in the command to run it. i.e.

java Server 5000

On the client side, you need the host name or IP address of the machine on which the server is running (if the host name or IP address is X) to run the client and connect to the server

java client X 5000

If you are running both programs on the same machine, the host name of the server will be localhost

java client localhost 5000

NOTE: A tutorial will be given to explain the details of the program and demonstrate how to compile and run the code. Please endeavor to attend the tutorial

3. The connection between the client and server closes after one message is sent, modify the codes such that multiple messages can be sent between both sides without termination.

4. Modify the code to terminate the connection when the client sends the message "End Session" to the server.

5. Modify the code such that communication between both the client and server is encrypted

6. During the communication the terminal should display the messages received both before decryption and after decryption

NOTE: Implement any encryption technique you've learnt so far and use any Java language cryptographic library of your choice, preferably the one you identified in your previous assignment.

Information related to above question is enclosed below:

Attachment:- Program.rar

Reference no: EM132274542

Questions Cloud

Would the method you selected meet the purpose of the study : DBST 667 – Data Mining Discuss what page you elected to use for analysis and then what the website optimization report reveals about that web page.
Outline the basics of opening a blank workbook : Outline the basics of opening a blank workbook and using Formulas to work with data in Microsoft Excel.
Describe basic functions and techniques : Describe basic functions and techniques that will be used when creating and editing documents in Microsoft Word.
What do you believe problems of this social structure can be : The wealthiest held the vast majority of the land,while most of the population lived in poverty.What do you believe the problems of this social structure can be
Implement encryption functionality in your code : The goal of this assignment is to give you practical experience in using cryptographic libraries to implement encryption functionality in your code, especially.
Analyze the potential for the successful implementation : Analyze the potential for the successful implementation of Dodd-Frank Act (2010).
Determine who is eligible to participate in a program : Determine who is eligible to participate in a program. If a program is universal in scope, need is the only criterion for eligibility.
Why is voting important to the survival of our democracy : Texas is a one-party dominated state and dominated by the Republican Party. Do you think Republican dominance is best for the people of Texas, why?
What evidence of large-scale voting fraud was : What evidence of large-scale voting fraud was, or is evident in the Texas Electoral System?

Reviews

Write a Review

JAVA Programming Questions & Answers

  Compare usernumber with comparenumber

Compare userNumber with compareNumber and display 'Numbers are equal' if the numbers are the same. Then, display 'Variables are not identical' if the variables

  What is the paintcomponent method how is it used in java

q1. what is the paintcomponent method? how is it used in java graphics? how does a program intentionally cause the

  Build a very straightforward and fully functional machine

Build a very straightforward and fully functional machine learning classifier with the K-Nearest Neighbor (KNN) algorithm. The KNN model will read a set of data specified by the user, decide the appropriate class of the new instance, and finally o..

  Comparator that compares point objects by their distance

write a comparator that compares point objects by their distance from the origin of (0,0). points that are closer to the origin are considered to come before those which are further from the origin

  Write a program which will declare an array for the prices

Write a program which will declare an array for the prices, and an array for the names of the parts, open the files, and load data in the arrays.

  Application that generates a quiz

Create an application that generates a quiz. Prompt for the user's first and last name, college major, and confidence in test taking (high, medium, or low). The quiz should contain at least five true/false questions about horticulture. When the user ..

  Java program that prompts the user to input three numbers

Need a java program that prompts the user to input three numbers. This program should then output the numbers in nondescending order

  Write a java program to demonstrate the use of jdbc

Write a Java program (non-GUI preferred) to demonstrate the use of JDBC. Write a list of animal and its characteristics to a database using JDBC. Display the characteristics of an animal when that animal is selected.

  Create a program using a gui interface

In your lab5 folder, compile the file that is a starting point for this assignment. The listing and image of this Java class is on the bottom of this lab description. You can create the programs by cutting and pasting.

  Write a generic class

Write a generic class (using Java generics) called Pair that stores two values of the generic type.  It should have a constructor to set them, two methods getfirst() and getsecond() to retrieve them.

  What is the purpose of the pivot value in quicksort

What is the purpose of the pivot value in quicksort and How did we first select it in the text, and what is wrong with that approach for choosing a pivot value?

  Generate a gui to perform as a binary calculator

Generate a GUI to perform as a binary calculator which can do addition, subtraction, multiplication, division, logical bit AND, and logical bit OR for binary integer numbers

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd