Skip to content

Commit 835783d

Browse files
authored
Create DiffieHellman.java
1 parent 7f60d57 commit 835783d

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
import java.math.BigInteger;
2+
import java.util.*;
3+
4+
public class DiffieHellman {
5+
public static void main(String[] args) {
6+
Scanner read = new Scanner(System.in);
7+
System.out.println("Hello User! \nEnter your name:");
8+
String name = read.nextLine();
9+
read.nextLine();
10+
System.out.println("Welcome "+name+"!");
11+
12+
BigInteger n,g,x,y,k1,k2,A,B;
13+
14+
System.out.println("Enter two prime numbers: ");
15+
n = new BigInteger(read.next());
16+
g = new BigInteger(read.next());
17+
18+
System.out.println("Person A : Enter your secret number");
19+
x = new BigInteger(read.next());
20+
A = g.modPow(x, n);
21+
22+
System.out.println("Person B : Enter your secret number");
23+
y = new BigInteger(read.next());
24+
B = g.modPow(y, n);
25+
26+
k1 = B.modPow(x, n);
27+
k2 = A.modPow(y, n);
28+
29+
System.out.println("A's secret key: "+k1);
30+
System.out.println("B's secret key: "+k2);
31+
32+
}
33+
}

0 commit comments

Comments
 (0)