Rejestr przesuwający z liniowym sprzężeniem zwrotnym
LFSR (Linear Feedback Shift Register, rejestr przesuwający z liniowym sprzężeniem zwrotnym[potrzebne źródło]) – rejestr przesuwający, którego bit wejściowy jest funkcją liniową jego poprzedniego stanu.
Jedynymi funkcjami liniowymi w dziedzinie pojedynczych bitów są EX-OR oraz EX-NOR. Z tego powodu LFSR można zdefiniować jako rejestr przesuwający, którego wejście jest wysterowane funkcją XOR stanów kilku z komórek tworzących rejestr.
Najczęstsze zastosowania LFSR to generowanie liczb pseudolosowych i pseudoszumu.
Każdy LFSR jest związany z określonym wielomianem z pierścienia wielomianów
, gdzie R jest ciałem skończonym
.
Okres rejestru jest ograniczony przez stopień stowarzyszonego z nim wielomianu i wynosi maksymalnie
, gdzie d jest stopniem wielomianu (ciało
ma charakterystykę równą 2).
Okres danego LFSR jest maksymalny jeżeli stowarzyszony z nim wielomian jest wielomianem pierwotnym. Rejestr taki, nazywamy rejestrem maksymalnej długości.
Liczba wielomianów pierwotnych stopnia d jest wyznaczona przez funkcję Eulera i wynosi
. Tak więc, dla przykładu dla rejestrów długości 7 istnieje dokładnie
rejestrów maksymalnej długości.
Jeżeli znany jest stopień wielomianu wystarczy zaledwie 2d bitów wyjścia rejestru, by znaleźć ów wielomian. (Gdyż należy rozwiązać d równań, każde z d niewiadomymi, ale żeby otrzymać d równań wystarczy zaledwie 2d bitów wyjścia)
W celu stosowanie rejestrów w kryptografii. Np. w szyfrach strumieniowych wykorzystuje się różne metody przełamywania liniowości:
- nielinowa kombinacja kilku bitów z aktualnego stanu rejestru,
- kombinacja bitów z kilku różnych rejestrów za pomocą funkcji nieliniowej,
- nieliniowa kombinacja bitów z kilku różnych rejestrów (n.p. generator redukujący)[1],
- regulacja większościowa częstotliwości taktowania rejestru (n.p. taka jak w szyfrze strumieniowym A5/1).
Zobacz też [edytuj]
Przypisy
- ↑ The Shrinking Generator. W: Coppersmith, Krawczyk, Mansour: Advances in Cryptology - CRYPTO '93. s. 22-39. DOI:10.1007/3-540-48329-2. (ang.)
Bibliografia [edytuj]
- 6. Stream Ciphers. W: Alfred J. Menezes, Paul C. van Oorschot, Scott A. Vanstone: Handbook of applied cryptography. Boca Raton: CRC Press, 1997. ISBN 0-8493-8523-7.
- Berlekamp-Massey Algorithm (ang.). 2005-04-14. [dostęp 2010-06-03].