Автор работы: Пользователь скрыл имя, 08 Декабря 2013 в 15:10, лабораторная работа
Дану лабораторну роботу я виконував на мові програмування PHP. PHP є серверною мовою програмування. Тому, для її запуску потрібен локальний сервер та браузер. Нижче представлений код програми та коментарі.
Міністерство освіти і науки України
Національний університет «Львівська політехніка»
Лабораторна робота №8
з дисципліни
«Захист інформації»
Виконав:
ст. групи КН-41
Попко М. О.
Прийняв:
доц. Волошин В. В.
Львів-2012
Тема: Генерування псевдовипадкових бітів BBS генератором.
Мета: Отримати навички генерування псевдовипадкових бітів BBS генератором.
Теоретичні відомості
Щоб отримати із п випадкових бітів l псевдовипадкових, потрібно:
,
Подати на вихід послідовність
Завдання
Текст програми з коментарями
Дану лабораторну роботу я виконував на мові програмування PHP. PHP є серверною мовою програмування. Тому, для її запуску потрібен локальний сервер та браузер. Нижче представлений код програми та коментарі.
Код програми:
$n = $_GET['kluch_n'];
$p = $_GET['kluch_p'];
$q = $_GET['kluch_q'];
if( (empty($p) || empty($q)) || (($p%4 != 3) || ($q%4 != 3)) ) { echo '<span style="color:red;">Числа p та q повинні дорівнювати 3 за mod 4</span>'; } // Якщо не виконується дана умова, то програма зупиняється і виводиться відповідне повідомлення, інакше продувжуємо:
else {
$m = $p*$q;
$r = rand(3,$m);
$x[0]= pow($r, 2) % $m;
echo '<p style="margin-left:5px;">r = <b>'.$r.'</b></p>';
echo '<table border="1">';
echo '<tr><td><b>i</b></td>';
for($i=0;$i<=$n;$i++){
echo '<td>'.$i.'</td>';
}
echo '</tr>';
echo '<tr><td><b>x(i)</b></td>';
for($i=1;$i<=$n+1;$i++){
$x[$i] = pow($x[$i-1], 2) % $m;
echo '<td>'.$x[$i-1].'</td>';
}
echo '</tr>';
echo '<tr><td><b>sa(i+1)</b></td>';
for($i=1;$i<=$n+1;$i++){
$x[$i] = pow($x[$i-1], 2) % $m;
$sa[$i] = $x[$i-1] % 2;
echo '<td><b>'.$sa[$i].'</b></td>';
}
echo '</tr>';
echo '</table>';
}
Код самої форми
<form action="lab8+.php">
<p><span style="padding-right:4px">
<p><span style="padding-right:4px">
<p><span style="padding-right:4px">
<p><input type="submit" value="Згенерувати!" size="10"></p>
</form>
Результат виконаної роботи:
Висновок:
На даній лабораторній роботі, я отримав навички та програмно реалізував BBS генератор псевдовипадкових бітів за відомими числами p та q, використовуючи серверну мову програмування PHP.
Информация о работе Генерування псевдовипадкових бітів BBS генератором