0% encontró este documento útil (0 votos)
97 vistas2 páginas

Cifrado de Feistel: Estructura y Ejemplo

El documento describe el cifrado de Feistel, un método de cifrado por bloques con una estructura particular. Explica que el cifrado de Feistel divide los bloques de datos en dos mitades iguales y realiza operaciones complejas en una de las mitades en cada ronda, intercambiando luego las mitades. Señala que este método es reversible y que algoritmos como DES lo usan. Finalmente, provee un ejemplo básico de cómo funciona el cifrado de Feistel.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
97 vistas2 páginas

Cifrado de Feistel: Estructura y Ejemplo

El documento describe el cifrado de Feistel, un método de cifrado por bloques con una estructura particular. Explica que el cifrado de Feistel divide los bloques de datos en dos mitades iguales y realiza operaciones complejas en una de las mitades en cada ronda, intercambiando luego las mitades. Señala que este método es reversible y que algoritmos como DES lo usan. Finalmente, provee un ejemplo básico de cómo funciona el cifrado de Feistel.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Argueta
Cortes
Jairo
I.





















































































UNAM‐
Facultad
de
Ingeniería

Criptografía













































































































 7
de
Abril
de
2010


Red
Feistel

El
cifrado
de
Feistel
es
un
método
de
cifrado
en
bloque
con
una
estructura
particular.

También
es
conocido

comúnmente
como
Red
de
Feistel.
Un
gran
número
de
algoritmos
de
cifrado
por
bloques
lo
utilizan,
siendo

el
más
conocido
el
algoritmo
Data
Encryption
Standard
(DES).
Las
redes
de
Feistel
presentan
la
ventaja
de

ser
 reversibles
 por
 lo
 que
 las
 operaciones
 de
 cifrado
 y
 descifrado
 son
 idénticas,
 requiriendo
 únicamente

invertir
el
orden
de
las
subclaves
utilizadas.


El
primer
algoritmo
basado
en
las
redes
de
Feistel
fue
el
algoritmo
Lucifer,
diseñado
en
IBM
por
Horst
Feistel

y
 Don
 Coppersmith
 a
 principios
 de
 la
 década
 del
 1970,
 aunque
 la
 popularidad
 para
 este
 esquema
 llegó

cuando
el
Gobierno
Federal
de
los
Estados
Unidos
adoptó
el
algoritmo
DES
como
estándar
para
el
cifrado
de

las
 comunicaciones
 gubernamentales.
 Este
 algoritmo
 derivaba
 del
 algoritmo
 Lucifer
 y
 también
 está

constituido
 por
 una
 red
 de
 Feistel.
 La
 naturaleza
 iterativa
 de
 estas
 redes
 hacía
 que
 la
 implementación
 del

algoritmo
en
hardware
fuera
sencillo.


Este
 algoritmo
 se
 denomina
 simétrico
 por
 rondas,
 es
 decir,
 realiza
 siempre
 las
 mismas
 operaciones
 un

número
determinado
de
veces
(denominadas
rondas).
Los
pasos
de
la
red
de
Feistel
son:


1.
Se
selecciona
una
cadena,
N,
normalmente
de
64
o
128
bits,
y
se
la
divide
en
dos
subcadenas,
L
y
R,
de

igual
longitud
(N/2),
para
realizar
el
cifrado
en
cada
ronda


2.
Se
toma
una
función,
F,
y
una
clave
Ki,
donde
f
es
una
función
y
Ki
son
cada
una
de
las
subclaves

aplicadas
a
cada
iteración.
El
texto
cifrado
viene
dado
por
la
concatenación
de
Ln
y
Rn.


3.
Se
realizan
una
serie
de
operaciones
complejas
con
F
y
Ki
y
con
L
o
R
(solo
uno
de
ellas)


4.
 La
 cadena
 obtenida
 se
 cambia
 por
 la
 cadena
 con
 la
 que
 no
 se
 han
 realizado
 operaciones,
 y
 se
 siguen

haciendo
las
rondas.


Una
ventaja
de
este
modelo
es
que
la
función
f
usada
no
tiene
por
qué
ser
reversible,
pudiendo
ser
todo
lo

complicada
 que
 se
 desee,
 esta
 cualidad
 permite
 a
 los
 criptógrafos
 concentrarse
 en
 la
 seguridad
 de
 dicha

función
 sabiendo
 que
 el
 proceso
 de
 descifrado
 está
 garantizado
 ya
 que
 la
 propia
 estructura
 de
 la
 red
 de

Feistel
es
reversible.
Para
ello
únicamente
requiere
que
se
invierta
el
orden
de
las
subclaves
utilizadas.


Un
ejemplo
básico
de
cifrado
tipo
Feistel


El
algoritmo
usará
bloques
de
tamaño
8
caracteres.
Tendrá
dos
vueltas
y
en
cada
vuelta
realizará
una

operación
de
sustitución
S
y
una
permutación
P
sobre
la
1ª
mitad.


Sustitución:
Ci
=
(Mi
+1
)
mod
27

Permutación:
Ci
=
Π3241
(el
carácter
1º
pasa
a
la
4ª
posición
en
el
criptograma,
el
4º
a
la
3ª,
el
2º
a
la
2ª
y
el

3º
a
la
1ª)

Mensaje:
M
=
STAR
WARS,
LA
MISIÓN
CONTINÚA


Cifrado
tipo
Feistel
en
cuerpo
n
=
27

Argueta
Cortes
Jairo
I.



















































































UNAM‐
Facultad
de
Ingeniería

Criptografía













































































































 7
de
Abril
de
2010


C
=
SBTX
BUST
PJÑT
NBJM
VÑBJ
ÑPUD


DES
hará
prácticamente
lo
mismo
trabajando
con
bits
y
con
funciones
un
poco
más
“complejas”.


Comentario



Mesografía:


[Link]

También podría gustarte