diff options
Diffstat (limited to '3446/CH13/EX13.2/Ex13_2.sce')
-rw-r--r-- | 3446/CH13/EX13.2/Ex13_2.sce | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/3446/CH13/EX13.2/Ex13_2.sce b/3446/CH13/EX13.2/Ex13_2.sce new file mode 100644 index 000000000..8c7b2c07a --- /dev/null +++ b/3446/CH13/EX13.2/Ex13_2.sce @@ -0,0 +1,17 @@ +// Exa 13.2
+// To determine secret encrypting key K using DH key exchange algorithm.
+
+clc;
+clear all;
+
+p=23; //prime number that both parties agreed upon
+g=5;// g is primitive mod p
+a=6; //party A choosen number
+b=15; //party B choosen number
+
+//solution
+printf('Party A sends to party B as (g^a mod p) = %d \n',modulo(g^a,23));
+printf(' Party B sends to party A as (g^b mod p) = %d \n',modulo(g^b,23));
+printf(' Party A computes secret key as ((g^b modp)^a mod p) = %d \n',modulo(modulo(g^b,23)^a,p));
+printf(' Party B computes secret key as ((g^a modp)^b mod p) = %d \n',modulo(modulo(g^a,23)^b,p));
+disp("Thus both parties uses k=2 as secret key for encryption");
|