fbpx
Wikipedia

Cifrado de Feistel

En criptografía, el Cifrado de Feistel es un método de cifrado en bloque con una estructura particular. Debe su nombre al criptógrafo de IBM Horst Feistel. También es conocida comúnmente como Red de Feistel o Cadena 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.

Historia

El primer algoritmo basado en las redes de Feistel fue el algoritmo Lucifer, diseñado al amparo de 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.

El algoritmo

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 entre algunos más:

  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)
  2. Se toma una función, F, y una clave Ki
  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.

Detalles de Construcción

Las operaciones básicas de una red de Feistel son las siguientes: se descompone el texto plano en dos piezas iguales, ( ,  ). Para realizar el cifrado en cada ronda  , se calcula

 
 

donde   es una función y   son cada una de las subclaves aplicadas a cada iteración. El texto cifrado viene dado por la concatenación de   y  .

Para el descifrado las operaciones que hay que realizar son:

 
 

Una ventaja de este modelo es que la función   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.

Una variación del esquema de Feistel son las redes de Feistel no balanceadas en las que las mitades del texto en plano L0 y R0 son de diferente longitud. Un algoritmo de cifrado que utiliza esta variación es el algoritmo Skipjack.

Véase también

  •   Datos: Q1044361

cifrado, feistel, criptografía, método, cifrado, bloque, estructura, particular, debe, nombre, criptógrafo, horst, feistel, también, conocida, comúnmente, como, feistel, cadena, feistel, gran, número, algoritmos, cifrado, bloques, utilizan, siendo, más, conoci. En criptografia el Cifrado de Feistel es un metodo de cifrado en bloque con una estructura particular Debe su nombre al criptografo de IBM Horst Feistel Tambien es conocida comunmente como Red de Feistel o Cadena de Feistel Un gran numero de algoritmos de cifrado por bloques lo utilizan siendo el mas 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 identicas requiriendo unicamente invertir el orden de las subclaves utilizadas Indice 1 Historia 2 El algoritmo 3 Detalles de Construccion 4 Vease tambienHistoria EditarEl primer algoritmo basado en las redes de Feistel fue el algoritmo Lucifer disenado al amparo de IBM por Horst Feistel y Don Coppersmith a principios de la decada del 1970 aunque la popularidad para este esquema llego cuando el Gobierno Federal de los Estados Unidos adopto el algoritmo DES como estandar para el cifrado de las comunicaciones gubernamentales Este algoritmo derivaba del algoritmo Lucifer y tambien esta constituido por una red de Feistel La naturaleza iterativa de estas redes hacia que la implementacion del algoritmo en hardware fuera sencillo El algoritmo EditarEste algoritmo se denomina simetrico por rondas es decir realiza siempre las mismas operaciones un numero determinado de veces denominadas rondas Los pasos de la red de Feistel son entre algunos mas 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 Se toma una funcion F y una clave Ki Se realizan una serie de operaciones complejas con F y Ki y con L o R solo uno de ellas La cadena obtenida se cambia por la cadena con la que no se han realizado operaciones y se siguen haciendo las rondas Detalles de Construccion EditarLas operaciones basicas de una red de Feistel son las siguientes se descompone el texto plano en dos piezas iguales L 0 displaystyle L 0 R 0 displaystyle R 0 Para realizar el cifrado en cada ronda i 1 2 n displaystyle i 1 2 dots n se calcula L i R i 1 displaystyle L i R i 1 R i L i 1 f R i 1 K i displaystyle R i L i 1 oplus f R i 1 K i donde f displaystyle f es una funcion y K i displaystyle K i son cada una de las subclaves aplicadas a cada iteracion El texto cifrado viene dado por la concatenacion de L n displaystyle L n y R n displaystyle R n Para el descifrado las operaciones que hay que realizar son R i 1 L i displaystyle R i 1 L i L i 1 R i f L i K i displaystyle L i 1 R i oplus f L i K i Una ventaja de este modelo es que la funcion f displaystyle f usada no tiene por que ser reversible pudiendo ser todo lo complicada que se desee esta cualidad permite a los criptografos concentrarse en la seguridad de dicha funcion sabiendo que el proceso de descifrado esta garantizado ya que la propia estructura de la red de Feistel es reversible Para ello unicamente requiere que se invierta el orden de las subclaves utilizadas Una variacion del esquema de Feistel son las redes de Feistel no balanceadas en las que las mitades del texto en plano L0 y R0 son de diferente longitud Un algoritmo de cifrado que utiliza esta variacion es el algoritmo Skipjack Vease tambien EditarCriptografia Cifrado por flujo Confusion y difusion Red de sustitucion permutacion Datos Q1044361 Obtenido de https es wikipedia org w index php title Cifrado de Feistel amp oldid 119533835, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos