Introducción
El registro de desplazamiento de retroalimentación lineal (LFSR) es un registro de desplazamiento de palabras de bits, en el que el valor del bit de entrada se establece de forma única mediante una función basada en los valores de los bits restantes del registro antes del desplazamiento. El registro de desplazamiento puede ser algún tipo de circuito eléctrico compuesto por componentes discretos: transistores, resistencias, también puede integrarse en un microcircuito o implementarse en un programa. Agregar retroalimentación convierte el registro de desplazamiento en un generador de números pseudoaleatorios, que se usa ampliamente en criptografía. En este artículo, analizaremos el principio de funcionamiento de RSLOS desde el hardware hasta sus diversas aplicaciones.
Un registro, en general, es un circuito que consta de elementos de memoria de un bit interconectados. Dichos circuitos pueden escribir, almacenar y leer datos binarios de n bits. El artículo analiza el tipo de registro llamado registro de desplazamiento. Muy a menudo, el registro de desplazamiento se ensambla sobre la base de flip-flops D conectados en serie, y el número de estos flip-flops es igual al número de bits n. Comenzamos este artículo con los principios del D-trigger.
Gatillo D
Toquemos brevemente los conceptos básicos. A nivel mundial, la electrónica se puede dividir en dos secciones: analógica y digital. La característica principal del segundo es que las señales se establecen mediante niveles de voltaje discretos. Además, solo hay dos niveles discretos. Por lo tanto, en lugar de registrar el voltaje en voltios, es suficiente simplemente nombrar uno de los dos niveles discretos. Así es como aparecen los nombres "cero" y "uno". De hecho, definen algunos niveles de voltaje, que pueden ser cualquier cosa. Aunque, en la mayoría de los casos, "cero" significa el nivel de 0 voltios y "uno" el nivel de 5 V, 3,3 V, 1,8 V, 1,5 V, etc. Así, la frase "en la entrada cero, en la salida uno" significa: "en la tensión de entrada correspondiente al nivel de cero, a la tensión de salida correspondiente al nivel de uno".
. , ? D- , ! .
– , .
D- – , . ,
D- , . : D (), C ( , , , clk, clock) Q (). : , , . , , .
. 1 - D-
D- : C, . . . - «», «», «».
|
|
||
(D) |
(Q) |
(D) |
(Q) |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
« ». , ( ) . , . , .. . , , . , .
, . D- . , . , , . D-, .
, n D-. . , , . .
? , , , . . «» . , , . ? ( ). . . , , , . . . , , . , : .
№ |
|
0 |
1 |
2 |
3 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
2 |
0 |
0 |
1 |
0 |
0 |
3 |
0 |
0 |
0 |
1 |
0 |
4 |
0 |
0 |
0 |
0 |
1 |
5 |
0 |
0 |
0 |
0 |
0 |
- . . ? , . . , , , , . .
hi - , . .
? . , , . , , 1 , . . . , .
, . ? , , . n , n . , . Xi. , . . . N, Xi+N = Xi i. 2n-1, -. , , 2n-1. .
GF(2). . t + 1, (x) p:
Y(t) t. T – n :
, , . , GF(2) - : k 2k-1. . , . , . .
n |
LFSR-2 |
LFSR-4 |
2 |
2, 1 |
|
3 |
3, 2 |
|
4 |
4, 3 |
|
5 |
5, 3 |
5, 4, 3, 2 |
6 |
6, 5 |
6, 5, 3, 2 |
7 |
7, 6 |
7, 6, 5, 4 |
8 |
|
8, 6, 5, 4 |
, , . , n= 8 :
. : . . , . , , , . . : .
. . . . 2n1 , 2n2, . ., 2n1+n2+… , n1, n2, … .
. . . — 2017. — 117 .
. . . — , 2008. — 314 .
Eastlake D., Schiller J., Crocker S. Randomness requirements for security. — 2005. — 48 .