Kryptering via RSA, lidt hjælp søges
Hej folkens.Jeg sidder og skal lave et program der kan følgende:
Krypter en tekst for derefter at kunne dekrypter teksten! :)
Det skal kunne gøres ud fra hvad man har valgt på en anden side.
Som i kan se ser PHP delen sådan her ud:
<?php
$M = ($_POST['besked']);
$p = "197";
$q = "199";
$e = "13";
$d = "11941";
$N = bcmul($p,$q);
echo 'Din tekst: '.$M.'<br><br>'."\n ";
if (isset($_POST["Dekrypter"]) && $_POST["Dekrypter"] == 'ja' && (isset($_POST["Krypter"]) && $_POST["Krypter"] == 'ja')) {
echo 'Lad venligst vær med at trykke begge to.. - Prøv igen';
}
else if(isset($_POST["Krypter"]) && $_POST["Krypter"] == 'ja')
{
function krypter($M)
{
for ($i = 0, $j = strlen($M); $i < $j; $i++) {
$dec_array[] = ord($M{$i});
echo 'Asci Værdig '.$dec_array[$i].'<br>'."\n";
$blå = $dec_array[$i];
global $e;
global $N;
$Me = bcpow($blå,$e);
$C = bcmod($Me,$N);
echo 'Din tekst krypteret: '.$C.'<br><br>'."\n ";
}
return $C;
}
echo '<br><br>Din tekst blev krypteret det sidste bogstav blev således '.krypter($M).'<br><br>'."\n ";
}
else if (isset($_POST["Dekrypter"]) && $_POST["Dekrypter"] == 'ja')
{
function dekrypter($M)
{
for ($i = 0, $j = strlen($M); $i < $j; $i++)
{
global $d;
global $N;
$Cd = bcpow($M,$d);
$Ma = bcmod($Cd,$N);
$grøn =chr($Ma);
echo 'Din krypterede tekst '.$Ma.'<br><br>'."\n ";
}
return $Ma;
}
$grøn = chr(dekrypter($M));
echo 'Teksten dekrypteret: '.($grøn).'<br>'."\n ";
}
else
echo 'Du skal vælge om du vil dekrypter eller krypter.';
?>
Det den gør nu er at den udprinter når jeg krypter en masse :
Asci Værdig 104
Din tekst krypteret: 30768
fx :) indtil der ikke er flere bogstave.
er der en måde hvor jeg kan få det til at blive printet alle de kryptede værdier ud på en linje med mellemrum?
Nå næste spørgsmål ved dekryptering vil jeg meget gerne kunne tage et bogstav af gangen så den tager hver ting adskilt med et mellem rum så den i overstående tilfælde starter med
30768, og forsætter til den sidste.
Det skal sættes ind på en linje så det giver en forståelig tekst.
Det den gør nu er :
Din krypterede tekst 101 ( her giver den dec, asci værdien)
og så udskriver den bogstavet
Teksten dekrypteret: e
Hvis i har brug for mere information så skriv endelig :)