Этот генератор строится на основе ЛРСтах-/?, с двух ячеек которого снимается пара знаков: если 1-й знак равен единице, то 2-й знак является выходным; если 1-й знак равен нулю, то 2-й знак игнорируется. Для гаммы самосжимающего генератора также могут быть достигнуты хорошие характеристики. По сравнению со сжимающими генераторами самосжимающие генераторы используют в два раза меньше регистров, но генерируют гамму медленнее.
>
Генераторы с дополнительной памятью. Для снижения корреляции между гаммой и промежуточными последовательностями генератора используют дополнительные регистры памяти. В криптосхемах используют несколько способов дополнения памяти.
В генераторах Макларена — Марсалъи исходная последовательность усложняется с помощью регистра памяти и управляющих последовательностей. Пусть имеется т ячеек памяти, занумерованных числами от О до т — 1, в которые записаны элементы /7-множества X. Для отображения входной последовательности X= {х,} над X в выходную последовательность У= {г/,} над X используются в общем случае управляющие последовательности [/_> = {г/Д и {те;,} над кольцом 1т, г = 1,2,… Последовательность и_> управляет записью в память членов Xа — считыванием из памяти членов У_>.
Генератор моделируется автоматом А = (X х Хт х Хт, Х, пу X, /г, /). Пусть (5(0), 5(/77 — 1)) Е Хту тогда Н ((з (0), …, 5(777 — 1)), X, 7/, ш) = (5'(0), …,.
5,(/77 — 1)), где 5'(и) = х и 5'(/) = 5(7) при всех 7 Ф и,
Входная последовательность /_> автомата А является сопряжением последовательностей Xи_>, М7!". Обозначим: ?г, ?м, ?,у, ?7 длины периодов соответственно последовательностей Х_>, [/_>, У_>, /_>; = НОК ((г, ?м, ?да),.
= НОК (?", ?и,). Последовательность над X называется полной, если она содержит все элементы множества X.
Теорема 14.5. Если последовательности Х_>, [/_>, W_> — периодические, гдеи_ь и полны, то У_> — также периодическая, где С ?7, тк,у,.
и >
Уточнение коэффициента пропорциональности р, связывающего периоды Ьх и Ьу = р?Л., требует некоторой дополнительной информации о свойствах входных последовательностей. Например, в случае [/_> =.
1Х) = 1 и < Ьх приведена оценка [ 1 ]: р > Ьие~т/е.