Szyfrowanie RIJNDAEL (AES)
Program: szyfrujący jak i odszyfrowujący tekst wprowadzony przez użytkownika algorytmem RIJNDAEL w trybie ECB.
Podgląd:
Kod programu:
Program główny:
<?php echo "Tryb ECB:";?><BR><BR>
<form action="RIJNDAEL_szyfruj.php" method="GET">
Jawny:<input type=text name=jawny><br>
Klucz:<input type=text name=klucz><br>
<input type= submit value="Zaszyfruj">
</form>
<form action="RIJNDAEL_odszyfruj.php" method="GET">
Nazwa pliku:<input type=text name=nazwa_pliku value="plik.txt"><br>
Klucz:<input type=text name=klucz><br>
<input type= submit value="Odszyfruj">
</form> Szyfrowanie:
<?php
echo $_GET['jawny'];?><BR><?php
echo $_GET['klucz'];?><BR><?php
$szyfrogram = mcrypt_ecb (MCRYPT_RIJNDAEL_128, $_GET['klucz'], $_GET['jawny'], MCRYPT_ENCRYPT);
echo $szyfrogram;?>
<?php
$file="plik.txt";
$fp=fopen($file, "w");
fwrite($fp,$szyfrogram);
fclose($fp);
?> Deszyfrowanie:
<?php
$file=$_GET['nazwa_pliku'];
$fp=fopen($file,"r");
$tresc=fgets($fp,9999);
fclose($fp);
$jawny = mcrypt_ecb (MCRYPT_RIJNDAEL_128, $_GET['klucz'], $tresc, MCRYPT_DECRYPT);
echo $jawny;?> Słowniczek pojęć:
AES bazuje na zasadzie, zwanej siecią substytucji-permutacji. Wykazuje się dużą szybkością pracy zarówno w przypadku sprzętu komputerowego, jak i oprogramowania. W przeciwieństwie do swego poprzednika, algorytmu DES, AES nie używa Sieci Feistela. AES posiada określony rozmiar bloku – 128 bitów, natomiast rozmiar klucza wynosi 128, 192, lub 256 bitów. Funkcja substytucyjna ma bardzo oryginalną konstrukcję, która uodparnia ten algorytm na znane ataki kryptoanalizy różnicowej i liniowej.