Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпора крипта экзамен.docx
Скачиваний:
37
Добавлен:
22.09.2019
Размер:
724.74 Кб
Скачать

27. Методы получения случайных и псевдослучайных последовательностей.

Методы получения случайных и псевдослучайных последовательностей.

Генератор псевдослучайных чисел (ГПСЧ) — алгоритм, генерирующий последовательность чисел, элементы которой почти независимы друг от друга и подчиняются заданному распределению.

Аппаратные ГПСЧ.

При аппаратном способе случайные числа вырабатываются специальной электронной, служащей в качестве одного из устройств компьютера. В качестве физического эффекта, лежащего в основе таких генераторов СЧ, используются шумы в электронных и полупроводниковых приборах, явления распада радиоактивных элементов и т.д. Достоинства аппаратного способа: сравнительно небольшие затраты вычислительных ресурсов; запас СЧ не ограничен. Недостатки аппаратного способа: отсутствует возможность проверки, а значит гарантии качества случайной последовательности во время моделирования; невозможно получить одинаковые последовательности СЧ; необходимо дополнительное устройство, стабильность работы которого должна обеспечиваться.

Табличный способ.

Случайные числа оформлены в виде таблицы в оперативной памяти или на внешнем носителе. Достоинства табличного способа: можно воспроизвести последовательность СЧ. Недостатки табличного способа: запас чисел ограничен; вычислительные ресурсы используются неэффективно, т.к. необходимо постоянное обращение к внешней или оперативной памяти и таблица занимает место в памяти.

Алгоритмический (программный) способ. 

Случайные числа формируются на компьютере с помощью специальных алгоритмов и реализующих их программ. Каждое СЧ вычисляется программой по мере возникновения потребности при моделировании системы на компьютере. Алгоритмический способ наиболее распространен.

Достоинства программного способа: возможность многократного воспроизведения последовательностей; не требуются специальные устройства.

Недостатки программного способа: погрешность в моделировании непрерывных распределений СЧ, вследствие того, что компьютер оперирует с n – разрядными числами (т.е. дискретными); периодичность последовательностей СЧ, возникающую в силу их алгоритмической природы; сравнительно большие затраты вычислительных ресурсов.

Регистр сдвига с линейной обратной связью состоит из двух частей: собственно регистра сдвига и функции обратной связи. Регистр состоит из битов, его длина — количество этих бит. Когда нужно извлечь бит, все биты регистра сдвигаются вправо на одну позицию. Новый крайний слева бит определяется функцией остальных битов. На выходе регистра оказывается один, обычно младший, значащий бит. Период регистра сдвига — длина получаемой последовательности до начала её повторения.

Для РСЛОС функция обратной связи представляет собой сумму по модулю 2 (xor) некоторых битов регистра, называемых отводами.

Регистр сдвига с линейной обратной связью длины  L состоит из L  ячеек, пронумерованных 0,1,2…L-1, каждая из которых способна хранить 1 бит и имеет один вход и один выход, а также синхросигнал, который контролирует смещение данных. В течение каждой единицы времени выполняются следующие операции:

содержимое ячейки L-1 формирует часть выходной последовательности;

содержимое i-й ячейки перемещается в ячейку i+1 для любого I, 0<i<L-1

новое содержимое ячейки 0 определяется битом обратной связи, который вычисляется сложением по модулю  с определёнными коэффициентами битов ячеек0,1,2…L-1.

Конгруэнтный метод генерации последовательности случайных чисел.

В основе этого метода генерации последовательности случайных чисел лежит понятие конгруэнтности. По определению, два числа А и В конгруэнтны (сравнимы) по модулю М в случае, если существует число К, при котором А-В=КМ, то есть если разность А-В делится на М, и числа А и В дают одинаковые остатки от деления на М. Например, числа 85 и 5 конгруэнтны по модулю 10, так как при делении на 10 дают остаток 5 (при К=1). В соответствии с этим методом каждое число в этой последовательности получается исходя из следующего соотношения:

Хn+1=(аХn+с) mod m, где n > 0. (1). При задании начального значения Хо, констант а и с данное соотношение однозначно определяет последовательность целых чисел X,, составленную из остатков от деления на m предыдущих членов последовательности, в соответствии с соотношением (1). Величина этих чисел не будет превышать значение т. Если каждое число этой последовательности разделить на т, то получится последовательность случайных чисел из интервала 0.1.1'. Основная трудность при использовании этого метода — подбор компонентов формулы. В зависимости от значения с различают два вида конгруэнтного метода — мультипликативный (с=0) и смешанный (с не равно 0).