<?php if(empty($_GET["coz"])){ ?> <form method="post"> Sifrelenecek Metin: <input type="text" name="a" id="a"><br> P Degeri: <select name="p" id="p"> <option>79</option> <option>587</option> <option>4561</option> <option>11981</option> <option>827417</option> </select><br> Q Degeri: <select name="q" id="q"> <option>83</option> <option>593</option> <option>4567</option> <option>11987</option> <option>827423</option> </select><br> E Degeri: <select name="e" id="e"> <option>5</option> <option>7</option> </select> <input type="submit" value="SIFRELE"> </form> <a href="rsa.php?coz=1">Sifre Coz</a> <?php }else{ ?> <form method="post"> Cozulecek Metin<input type="text" name="a" id="a"><br> D Degeri: <input type="text" name="d" id="d"><br> N Degeri: <input type="text" name="n" id="n"><br> <input type="submit" value="COZ"> </form> <a href="rsa.php">Sifrele</a> <?php } if(!empty($_POST["p"]) and !empty($_POST["q"]) and !empty($_POST["e"]) and !empty($_POST["a"])){ function extend ($Ee,$Em) { $u1 = '1'; $u2 = '0'; $u3 = $Em; $v1 = '0'; $v2 = '1'; $v3 = $Ee; while (bccomp($v3, 0) != 0) { $qq = bcdiv($u3, $v3, 0); $t1 = bcsub($u1, bcmul($qq, $v1)); $t2 = bcsub($u2, bcmul($qq, $v2)); $t3 = bcsub($u3, bcmul($qq, $v3)); $u1 = $v1; $u2 = $v2; $u3 = $v3; $v1 = $t1; $v2 = $t2; $v3 = $t3; $z = '1'; } $uu = $u1; $vv = $u2; if (bccomp($vv, 0) == -1) { $inverse = bcadd($vv, $Em); } else { $inverse = $vv; } return $inverse; } $p=$_POST["p"]; $q=$_POST["q"]; $n=$p*$q; $teta=($p-1)*($q-1); $e=$_POST["e"]; $durum=0; $d=1; $d = extend($e,$teta); $metin=$_POST["a"]; $sifreli=""; for($i=0;$i<strlen($metin);$i++){ $harf=ord($metin[$i]); if($i>=1){$sifreli.=" ";} $sifreli.= bcpowmod($harf, $e, $n); } echo "<br>P: ".$p."<br>Q: ".$q."<br>E: ".$e."<br>N: ".$n."<br>D: ".$d."<br><br>Metin: ".$metin."<br>Sifreli Hali: ".$sifreli; }else{ if(!empty($_POST["d"]) and !empty($_POST["n"]) and !empty($_POST["a"])){ $sifreli=$_POST["a"]; $d=$_POST["d"]; $n=$_POST["n"]; $cozulmus=""; $veridizisi=explode(" ",$sifreli); for($j=0;$j<count($veridizisi);$j++) { $cozulmus.= chr(bcpowmod($veridizisi[$j], $d, $n)); } echo "<br>D: ".$d."<br>N: ".$n."<br><br>Sifreli Hali: ".$sifreli."<br>Cozulmus Hali: ".$cozulmus; }else{echo "";}} ?> <br><br><br><br><br><br><br><center>Is bu calisma 2012-2013 egitim ogretim yili Bilgi Guvenligi dersi odevi icin yapilmistir.</center>
|