Конгруэнтные датчики.


Данная группа датчиков в наст время более доступна. Для этой группы генераторов можно сделать математически строгое заключение о том, какими свойствами обладают выходные сигналы этих генераторов с точки зрения периодичности и случайности. Примеры конгруэнтного генератора является линейчатый конгруэнтный датчик ПСИ. Он вырабатывает посл псевдослуч чисел. T(i) которые описываются след соотношением T(i+1)=(A*T(i)+c) mod m где А и с – константы, Т0 исходная величина , выбранная в качестве порождающего числа, А,
с, Т0 образуют ключ. Такой датчик ПСИ генерирует ПСИ с определенным периодом повторения, зависящий от А и с. значение m обычно устанавливается равным 2n, где n – длина машинного слова в битах.
Датчик имеет максимальный период М до того как генерируемая послед начнет повторяться. А и С необходимо выбрат таким образом, чтобы период М был макс. Дональд Кнут показал , что линейный конгурентный датчик ПСИ имеет макс длину М т и тт, когда С нечетное, а остаток от деления на 4 =1, те А mod 4 =1 . Для шифрования данных с помощью датчика ПСИ м\б выбран ключ любого размера. Например: пусть ключ состоит из набора чисел X(j) размерностью b, j=1,2,3,…,n тогда задаваемую гамма шифра G можно представить как объединение непересекающихся множеств H(i) те G=H(1)?H(2)…..H(n)
Где H(j) это множество соотв –j-му сегменту данных и полученных на основе порождающего числа Y(j) , определенного как ф-ия X(j). Например пусть исп-ся конгруэнтный генератор ПСИ . В СИ команда RND . Пусть С=3, А=5, М=256, Т0 =6
Т1=(5х6+3) mod 256=33
T2=168;T3=(5×168+3) mod 256=75 и тд.