0% encontró este documento útil (0 votos)
104 vistas7 páginas

Algoritmo Rijndael y su Cifrado AES

El documento describe el algoritmo Rijndael, adoptado como el estándar AES en 2000. AES es un sistema de cifrado por bloques que maneja longitudes de clave y bloque de 128 a 256 bits. El algoritmo consiste en aplicar una serie de rondas que incluyen cuatro funciones matemáticas al bloque de texto plano para generar el texto cifrado. El número de rondas depende del tamaño de la clave y el bloque.

Cargado por

Enrique Ovalle
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 DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
104 vistas7 páginas

Algoritmo Rijndael y su Cifrado AES

El documento describe el algoritmo Rijndael, adoptado como el estándar AES en 2000. AES es un sistema de cifrado por bloques que maneja longitudes de clave y bloque de 128 a 256 bits. El algoritmo consiste en aplicar una serie de rondas que incluyen cuatro funciones matemáticas al bloque de texto plano para generar el texto cifrado. El número de rondas depende del tamaño de la clave y el bloque.

Cargado por

Enrique Ovalle
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 DOCX, PDF, TXT o lee en línea desde Scribd

Algoritmo Rijndael

Este algoritmo se adopt oficialmente en octubre del 2000 como nuevo


Estndar Avanzado de Cifrado (AES) por elNIST (National Institute for
Standards and Technology) para su empleo en aplicaciones criptogrficas.

Su nombre se debe a dos criptgrafos belgas Joan Daemeny Vincent
[Link] es un sistema de cifrado por bloques, diseado para manejar
longitudes de clave y de bloque variables, ambas comprendidas entre los
128 y los 256 bits.

La estructura del algoritmo Rijndael est formado por un conjunto de
rondas, rondas se refiere a un conjunto de reiteraciones de 4 funciones
matemticas diferentes. Por tanto, el algoritmo se basa en aplicar un
numero de rondas determinado a una informacin en claro (texto plano)
para producir una informacin cifrada.

La informacin generada por cada funcin es un resultado intermedio,
que se conoce como Estado. l algoritmo representa el Estado como una
matriz rectangular de bytes, que posee 4 filas y Nb columnas. Siendo el
nmero de columnas Nb en funcin del tamao del bloque:

Nb = tamao del bloque utilizado en bits / 32

Por ejemplo la representacin de una matriz de Estado para un tamao de
bloque de 128 bits seria:

Nb= 128 / 32 = 4


La informacin que se introducir en la matriz es el texto plano convertido
en formato hexadecimal.

La clave del sistema se representa mediante una matriz rectangular de
bytes de 4 filas y Nk columnas. Siendo el nmero de columnas Nk en
funcin del tamao de la clave:

Nk = tamao de la clave en bits / 32

Por ejemplo la representacin de una clave de 128 bits (Nk = 4), en forma
de matriz rectangular seria:


Para una clave de 192 bits el tamao de la matriz seria de 4 filas x 6
columnas y para una clave de 256 bits el tamao seria de 4filas x 8
columnas.

Una vez establecido estos parmetros iniciales el bloque que se pretende
cifrar o descifrar se traslada byte a byte sobre la matriz de Estado,
siguiendo la secuencia a0,0 , a1,0 ,a2,0 , a3,0, a0,1 , , a3,4 , y los bytes de la
clave se copian en la matriz de la clave siguiendo el mismo orden k0,0 , k1,0
, k2,0 ,k3,0 , k0,1 , , k3,4 . A partir de este momento la matriz de Estado sufre 4
transformaciones por ronda.

Las 4 transformaciones que aplica el algoritmo de Estado por ronda son:
Funcin ByteSub, Funcin ShiftRow, Funcin MixColumn y Funcin AddRoundKey.

El nmero de rondas o vueltas depender del tamao del bloque (mensaje
a cifrar) y clave del mensaje. Por ejemplo si el tamao de bloque y clave
es de 128 bits, el nmero de vueltas es 10. Numero de rondas en funcin de
tamao del bloque y clave:



Ejemplo: tamao del bloque 128 bits y tamao de la clave 192 bits,
entonces numero de rondas va a ser igual a: Nr = 12

Grficamente la descripcin del proceso seria:
El proceso de cifrado consiste en aplicar las cuatro funciones matemticas.
Dichas funciones se realizaran deforma reiterativa para cada ronda.



Bibliografa:
[Link]























Algoritmos de Encriptacin Actuales
Encriptacin DES
El algoritmo DES cifra un bloque de 64 bits (8 bytes) de texto en claro en
un bloque de 64 bits de texto cifrado. Para ello usa una clave externa de 64
bits en los que los bits en las posiciones octavas de cada byte son bits de
paridad impar.
Consta de 16 iteraciones, y en cada una de ellas se realizan operaciones
de o exclusivo, permutaciones y sustituciones. Las permutaciones son de
tres tipos: simples, expandidas (se duplican bits) y restringidas (se
eliminan bits). Las sustituciones son no lineales que se implementan a
partir de tablas que se encuentran en las cajas S, que ms tarde
explicaremos ya que son de vital importancia.

Cada una de estas 16 iteraciones realiza una serie de transformaciones y
sustituciones, de forma que el resultado de cada iteracin, al que
llamaremos T
i
, es la concatenacin de las partes L
i
y R
i
, es decir, Ti = L
i
.
R
i
(1 <= i <= 16). Para cada uno de estos pasos se verifica que:
L
i
= R
i-1

R
i
= L
i-1
+ f(R
i-1
, K
i
)

Encriptacin AES
AES conocida como Estndar de Encriptacin Avanzada (Advanced
Encryption Standard). AES es una tcnica de cifrado de clave simtrica
que remplazar el Estndar de Encriptacin de Datos (DES) utilizado
habitualmente.
Es el resultado de un llamamiento a nivel mundial por la presentacin de
solicitudes de los algoritmos de cifrado emitido por el Instituto Nacional de
Estndares y Tecnologa (NIST) del Gobierno de EEUU en el ao 1997 y
completado en el ao 2000.
El algoritmo ganador, Rijndael, fue desarrollado por dos criptologistas
Belgas, Vincent Rijmen y Joan Daemen. AES proporciona una encriptacin
segura y ha sido elegida por NIST como un Estndar de Proceso de
Informacin Federal en Noviembre del 2001 (FIPS-197), y en Junio del 2003
el Gobierno de EEUU (NSA)anunci que AES es lo suficientemente seguro
para proteger la informacin clasificada hasta el nivel ALTO SECRETO, que
es el nivel ms alto de seguridad y que se definen como informacin que
pudiera causar "daos excepcionalmente graves" a la seguridad nacional
en caso de ser divulgada al pblico.
El algoritmo AES utiliza una de las tres fortalezas de clave de cifrado: una
clave de encriptacin (contrasea) de 128-, 192-, o 256- bits. Cada
tamao de la clave de cifrado hace que el algoritmo se comporte
ligeramente diferente, por lo que el aumento de tamao de clave no slo
ofrece un mayor nmero de bits con el que se pueden cifrar los datos, sino
tambin aumentar la complejidad del algoritmo de cifrado.
Encriptacin Simtrica y Asimtricos
Hay dos clases de algoritmos de encriptacin basados en
llaves, Algoritmos Simtricos (o de llave privada) y Algoritmos
Asimtricos (o de llave pblica). La diferencia es que los algoritmos
simtricos utilizan la misma clave para encriptar y desencriptar (o la llave
de desencriptacin es derivable de la llave de encriptacin), mientras que
los algoritmos asimtricos utilizan una llave distinta para la encriptacin y
para la desencriptacin, y ninguna de las llaves puede ser derivada a
partir de la otra.
Los algoritmos simtricos pueden ser divididos en Cifrado de Flujo y Cifrado
de Bloques. El cifrado por flujo encripta un texto plano bit a bit, mientras
que el cifrado por bloques toma un nmero de bits (generalmente 64 bit
en cifrados modernos), y lo encriptan como una unidad simple. Muchos
cifrados simtricos son descritos en la pgina de algoritmos.
El cifrado asimtrico (tambin llamado algoritmos de clave pblica)
permiten que la llave de encriptacin sea pblica (incluso puede ser
publicada en sitios web), permitiendo que cualquiera pueda encriptar
con la llave, mientras que el receptor apropiado (quien conoce la llave
de desencriptacin privada) puede desencriptar el mensaje. La llave de
encriptacin tambin es llamada Llave Pblica y la llave de
desencriptacin Llave Privada. La seguridad suministrada por este cifrado
se basa en mantener la confidencialidad de la llave privada.

Encriptacin RSA
RSA es uno de los sistemas de cifrado (encriptacin) asimtricos, ms
exitosos en la actualidad. Originalmente descubierto 1973 por la agencia
de inteligencia britnica GCHQ, Government Communications
Headquarters (GCHQ), recibi la clasificacin de alto secreto Top
Secret. El algoritmo fue descrito en 1977 y es propiedad de los criptlogos
Ron Rivest, Adi Shamir y Leonard Adleman, del Instituto Tecnolgico de
Massachusetts (MIT) - RSA sol las letras iniciales de sus apellidos. El
algoritmo fue patentado por MIT en 1983 y no fue revelado hasta 1997. A
diferencia de los sistemas de codificacin simtrica tradicionales, RSA
trabaja con dos claves diferentes: una clave "pblica", y otra "privada".
Ambas son complementarias entre s (trabajan de manera conjunta) as
que un mensaje cifrado con una de ellas slo puede ser descifrado por su
contraparte. Dado que la clave privada no se puede calcular a partir de
la clave pblica, esta ltima queda generalmente queda a disposicin del
pblico. Estas propiedades permiten que los cripto-sistemas asimtricos
sean utilizados en una amplia variedad de funciones, tales como las firmas
digitales. En el proceso de firma de un documento, una huella dactilar
encriptada con RSA se adjunta al documento, y permite al receptor
verificar el remitente y la integridad del documento. La seguridad de RSA
en s se basa principalmente en el problema matemtico de factorizacin
de enteros. Un mensaje que est a punto de ser cifrado es tratado un
nmero grande. Al encriptar el mensaje, ste se eleva a la potencia de la
clave y lo que queda es dividido por un producto fijo de dos nmeros
primos. Al repetir el proceso con la otra clave, el texto simple o claro
puede ser recuperado de nuevo. El mejor mtodo conocido actualmente
para romper el cifrado requiere factorizar el producto utilizado en la
divisin. Actualmente, no es posible calcular estos factores para nmeros
mayores que 768 bits. No obstante, los cripto-sistemas modernos utilizan
una longitud mnima de clave de 3072 bits.

Encriptacin CryptoForge
CryptoForge le proporciona cuatro robustos algoritmos
de encriptacin para proteger sus datos:
Blowfish: (llave de 448 bits) es un algoritmo de encriptacin rpido y fuerte.
Su creador es Bruce Schneier, uno de los ms prestigiosos criptgrafos en el
mundo.
Rijndael: (llave de 256 bits) es un algoritmo seguro y eficiente. Sus creadores
son Joan Daemen y Vincent Rijmen (Blgica). Ha sido elegido como el
nuevo Estndar Avanzado de Encriptacin (AES) por el Instituto Nacional
de Estndares y Tecnologa (NIST) de los EEUU.
Triple DES: (llave de 168 bits) es un algoritmo desarrollado por el gobierno
de EEUU y ha sido evaluado durante aos sin descubrrsele debilidades. Es
una configuracin de encriptacin en la cual el algoritmo DES es usado
tres veces con tres llaves diferentes.
Gost: (llave de 256 bits) es un algoritmo de Rusia y podra ser considerado el
anlogo ruso al DES. Tiene un diseo conservador y no ha podido ser
vulnerado, a pesar de haber sido uno de los ms estudiados, durante aos,
por los mejores expertos en criptoanlisis.
Encriptacin El "One-Time Pad"
El One-Time Pad (OTP) es el nico cifrado que ha sido probado como
incondicionalmente seguro, e inquebrantable en la prctica. Ha sido
probado tambin que cualquier cifrado inquebrantable e
incondicionalmente seguro debe ser en principio un One-Time Pad.
El cifrado Vernam (inventado por G. Vernam en 1917) es una famosa
instancia de un OTP. Este cifrado es muy simple: toma un flujo de bits que
contenga el mensaje en texto plano, y un flujo de bits aleatorios y
secretos de la misma longitud que el texto plano, el cual es considerado
la llave. Para encriptar el texto plano con la llave, se aplica un OR
exclusivo secuencialmente entre cada par de bits llave y el bit de texto
plano para obtener el bit de texto cifrado. Si la llave es realmente
aleatoria, se puede probar que un atacante no tiene manera de decidir
que texto plano supuesto es ms acertado que cualquier otro cuando
solo se tiene el texto cifrado y no hay informacin sobre el texto plano.
El problema prctico es que la llave no tiene un tamao pequeo y
constante, sino que tiene el mismo tamao del mensaje, y una parte de la
llave no se debera usar nunca dos veces (o el cifrado podra romperse).
De esta manera, hemos trasladado el problema de intercambiar datos
secretos por el problema de intercambiar llaves aleatorias secretas de la
misma longitud. Sin embargo, este cifrado, supuestamente, ha estado en
uso generalizado desde su invencin, y mucho ms desde la prueba de
seguridad por Claude Shannon en 1949. Aunque la verdad es que la
seguridad de este cifrado fue conjeturada anteriormente, fue Shannon
quien encontr como probarla formalmente.

Bibliografa:
[Link]
[Link]
[Link]
[Link]
[Link]

También podría gustarte