Регистр сдвига с линейной обратной связью


Регистр сдвига с линейной обратной связью (РСЛОС, англ. linear feedback shift register, LFSR) — сдвиговый[англ.] регистр битовых слов, у которого значение входного (вдвигаемого) бита равно линейной булевой функции от значений остальных битов регистра до сдвига. Может быть организован как программными, так и аппаратными средствами. Применяется для генерации псевдослучайных последовательностей битов, что находит применение, в частности, в криптографии[1]. По похожему принципу работают регистр сдвига с обратной связью по переносу и регистр сдвига с обобщённой обратной связью.

Регистр состоит из функциональных ячеек памяти (битов одного или нескольких машинных слов), в каждой из которых хранится текущее состояние (значение) одного бита. Количество ячеек , называют длиной регистра. Биты (ячейки) обычно нумеруются числами , содержимое -й ячейки обозначается через . Значение нового бита определяется до сдвига битов в регистре и только после сдвига записывается в ячейку , а из ячейки извлекается очередной сгенерированный бит.