Program to implement Deffi-Hellman Algorithm in Client-Server Fashion.
The Diffie Hellman Algorithm is being used to establish a shared secret that can be used for secret communications while exchanging data over a public network.
In the below program, the client will share the value of , , and public key . Whereas, the server will accept the values and calculate its public key and send it to the client.
Both Client and Server will calculate the secret key for symmetric encryption by using the public key.
Program 1: Server Program
Program 2: Client Program
Use javac to Compile the programs, and open two console/terminal to run the system
In the first console run the server program, it will wait for the client’s connection. As soon as client is connected results will popup
In the second console, run the client’s program
- TCP Server-Client implementation in C
- UDP Server-Client implementation in C
- UDP Client Server using connect | C implementation
- Establishing the two-way Communication between Server and Client in Java
- Two way communication between Client and Server using Win32 Threads
- TCP Client-Server Program to Check if a Given String is Palindrome
- Creating an Server-Client Application using the DatagramPacket and DatagramSocket classes
- Difference between Client-Server and Peer-to-Peer Network
- Implementation of Diffie-Hellman Algorithm
- Box Blur Algorithm - With Python implementation
- HTTP/2 Client feature of Java 9 with Example
- Johnson’s algorithm for All-pairs shortest paths | Implementation
- Multi-threaded Chat Application in Java | Set 2 (Client Side Programming)
- Multi-threaded chat Application in Java | Set 1 (Server Side Programming)
- Hamming code Implementation in Java
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.