Cifrado en flujo con registros de desplazamiento.

Registros de desplazamiento



Un registro de desplazamiento es básicamente una construcción con varias celdas de memoria conectadas entre sí, donde cada celdas almacena un bit.Así, el valor de todas estas celdas conforman el estado del registro. Cuando se cambia el estado del registro (generalmente al ritmo de un reloj), el nuevo estado del registro se forma simplemente desplazando los bits de cada celda a la celda de su derecha. Así, el bit de más a la derecha sale del registro, y un nuevo bit entra en la celda de más a la izquierda.
En esta figura podemos ver una implementación de registro de desplazamiento de 4 bits:



 Registro de desplazamiento




Podemos ver que hay una entrada de datos ( Data In ), 4 puntos donde leer el estado actual del registro (Q1-Q4) y una entrada de reloj que se encarga de governar el registro, indicando en qué momento se debe pasar de un estado al siguiente.






Los registros de desplazamiento son un caso especial de los denominados autómatas celulares finitos unidimensionales.

  • Este autómata celular finito es un sistema dinámico con un total de N células, dispuestas en un espacio unidimensional. 
  • Cada célula tendrá en cada instante un estado E y existirá una función de transición f que, dependiendo de una vecindad establecida entre las células, hará que en cada instante de tiempo dicho autómata evolucione.
  • En criptografía interesan los autómatas celulares que sean reversibles, es decir, que permitan la evolución hacia atrás.





Algunos ejemplos:


No hay comentarios:

Publicar un comentario