<html> <body BGCOLOR="#00E0E0" link="#001fC0" vlink="#000080" text="#00000f"> <h1> Find d, the private key </h1> <? $e = $_POST['e']; $d = $_POST['d']; $p = $_POST['p']; $n = $_POST['n']; $q = $_POST['q']; $phi = $_POST['phi']; $mprivate = $_POST['mprivate']; printf("IN FIND D"); printf("<H1> PHI is %s</h1>",$phi); //echo "debug n==$n"; $max_search = 10000; // first find out whether the value typed in by the user // satisfies the equation $result = `./checkd $d $e $phi`; echo " result of checkd $result"; $too_large=0; printf("initial result %s <p>\n",$result); if ( $result == "") { $result=0; $d=0; } if ( $result == 1 ) { echo " <h3> value $d matches the <strong> de % phi == 1 </strong> criteria </h3>"; printf("<form enctype=\"multipart/form-data\" method=\"post\" action=\"generate_key.php#KEYS\">"); } else { echo " Iterating with start seed d $d"; for ($i=0; $i<$max_search; $i++) { $y = $d + $i; $result = `./searchd $y $phi $e `; $dd = `./findd $y $phi $e`; printf("Trying %s \n",$dd); if ( $result == 0 ) { // found one ! $d = $dd; echo " matches criteria <p>"; break; } else { echo " does not match <strong> de % phi == 1 </strong> criteria <p>\n"; } } if ( $i > $max_search || $too_large == 1) { echo "<h1>d not found, try another seed, and check e is co-prime to phi </h1>"; printf("<form enctype=\"multipart/form-data\" method=\"post\" action=\"generate_key.php#D\">"); } else { echo "<h1> Acceptable value for 'd' found after $i iterations </h1>\n"; printf("<form enctype=\"multipart/form-data\" method=\"post\" action=\"generate_key.php#KEYS\">"); } } ?> <input type="hidden" name=d value=<? echo $d ?>> <input type="hidden" name=q value=<? echo $q ?>> <input type="hidden" name=p value=<? echo $p ?>> <input type="hidden" name=phi value=<? echo $phi ?>> <input type="hidden" name=e value=<? echo $e ?>> <input type="hidden" name=n value=<? echo $n ?>> <table> <tr> <td> <input type="submit" name="submit" value="Next"> </td> </tr> </table> </body> </html>