Este documento describe varios algoritmos criptográficos simétricos. El algoritmo DES se estableció como un estándar en los EE.UU. en los años 70 y utiliza bloques de 64 bits y claves de 56 bits. IDEA es un cifrado de bloque suizo de 128 bits introducido en 1992 que utiliza 52 claves internas. Rijndael es un cifrado de bloque que puede utilizar claves de 128, 192 o 256 bits y fue adoptado como AES.
Este documento discute problemas NP-completos como encontrar el conjunto independiente máximo y la cubierta mínima de vértices en un grafo. Presenta dos enfoques: la búsqueda ávida, que selecciona nodos de menor grado de forma recursiva, y la búsqueda exhaustiva, que enumera todas las posibles soluciones mediante la bifurcación de subgrafos. Ambos enfoques permiten resolver uno de los problemas para determinar la solución al otro debido a la relación entre el conjunto independiente y la cubierta de vértices.
Este documento presenta 10 integrales indefinidas para resolver. Cada integral incluye una expresión matemática a integrar y la respuesta de la integral en términos de una constante de integración.
Este documento explica la aplicación del primer principio de la termodinámica a sistemas abiertos. Describe cómo se conserva la masa y la energía en sistemas abiertos mediante ecuaciones de continuidad y energía. Además, ilustra cómo se aplican estas ecuaciones a diversos dispositivos como turbinas, compresores y bombas.
Este documento describe las especificaciones de un motor eléctrico bipolar de tres fases. Tiene 24 ranuras, 2 polos, 3 fases, 6 grupos de bobinado y una amplitud de grupo de 8.
Este documento describe cómo configurar el enrutamiento estático en Packet Tracer para cuatro redes según el procedimiento RFC 950-1219. Explica qué es el enrutamiento estático y cómo especificar direcciones IP estáticas y máscaras de subred en Packet Tracer usando comandos como enable, configure terminal e interface.
1) El documento presenta ejercicios de derivadas relacionados con funciones, curvas, distancias y puntos críticos.
2) También incluye ejercicios sobre derivadas de funciones logarítmicas, exponenciales y trigonométricas.
3) Finalmente, contiene problemas adicionales sobre áreas de secciones de canales, movimiento de barcos y volúmenes de conos.
Este documento contiene un solucionario de 18 ejercicios de cálculo de integrales indefinidas. Proporciona las soluciones paso a paso de integrales que involucran funciones como polinomios, exponenciales, logaritmos y funciones trigonométricas. El documento no está patrocinado ni avalado por ninguna universidad.
Este documento discute problemas NP-completos como encontrar el conjunto independiente máximo y la cubierta mínima de vértices en un grafo. Presenta dos enfoques: la búsqueda ávida, que selecciona nodos de menor grado de forma recursiva, y la búsqueda exhaustiva, que enumera todas las posibles soluciones mediante la bifurcación de subgrafos. Ambos enfoques permiten resolver uno de los problemas para determinar la solución al otro debido a la relación entre el conjunto independiente y la cubierta de vértices.
Este documento presenta 10 integrales indefinidas para resolver. Cada integral incluye una expresión matemática a integrar y la respuesta de la integral en términos de una constante de integración.
Este documento explica la aplicación del primer principio de la termodinámica a sistemas abiertos. Describe cómo se conserva la masa y la energía en sistemas abiertos mediante ecuaciones de continuidad y energía. Además, ilustra cómo se aplican estas ecuaciones a diversos dispositivos como turbinas, compresores y bombas.
Este documento describe las especificaciones de un motor eléctrico bipolar de tres fases. Tiene 24 ranuras, 2 polos, 3 fases, 6 grupos de bobinado y una amplitud de grupo de 8.
Este documento describe cómo configurar el enrutamiento estático en Packet Tracer para cuatro redes según el procedimiento RFC 950-1219. Explica qué es el enrutamiento estático y cómo especificar direcciones IP estáticas y máscaras de subred en Packet Tracer usando comandos como enable, configure terminal e interface.
1) El documento presenta ejercicios de derivadas relacionados con funciones, curvas, distancias y puntos críticos.
2) También incluye ejercicios sobre derivadas de funciones logarítmicas, exponenciales y trigonométricas.
3) Finalmente, contiene problemas adicionales sobre áreas de secciones de canales, movimiento de barcos y volúmenes de conos.
Este documento contiene un solucionario de 18 ejercicios de cálculo de integrales indefinidas. Proporciona las soluciones paso a paso de integrales que involucran funciones como polinomios, exponenciales, logaritmos y funciones trigonométricas. El documento no está patrocinado ni avalado por ninguna universidad.
Este documento discute el algoritmo DES (Data Encription Standard) establecido como norma en 1977. DES opera sobre bloques de 64 bits y usa una clave de 56 bits para cifrarlos. El documento explica cómo funciona el algoritmo DES, incluyendo la sección de transformación que consiste en 16 etapas que operan con subclaves generadas a partir de la clave principal. También discute la seguridad del algoritmo DES, la cual depende del secreto de la clave utilizada.
Common Scrambling Algorithm al descubiertoronroneo
El documento resume el algoritmo de cifrado CSA (Common Scrambling Algorithm) utilizado para encriptar transmisiones de televisión digital. CSA utiliza un cifrado de flujo y un cifrado por bloques en cascada con una clave común. El cifrado de flujo se basa en registros de desplazamiento con retroalimentación, mientras que el cifrado por bloques es un cifrador iterativo que aplica una transformación de ronda 56 veces usando subclaves expandidas de la clave maestra. El documento también describe ataques teóricos a ambos componentes
El documento describe el algoritmo DES (Data Encryption Standard), el cual fue adoptado como estándar por el gobierno de EE.UU. en 1975 para cifrar información no clasificada. DES cifra bloques de 64 bits usando una clave de 56 bits. Aunque fue popular, su pequeña clave lo hizo vulnerable a ataques criptoanalíticos como el diferencial y lineal. Esto y otros problemas de seguridad llevaron a que DES dejara de usarse ampliamente.
Este documento describe el algoritmo DES (Data Encryption Standard) o estándar de cifrado de datos. DES fue adoptado como estándar por el gobierno de EE.UU. en los años 1970 y 1980 para cifrar información no clasificada. DES cifra bloques de 64 bits usando una clave de 56 bits y realiza permutaciones y sustituciones a lo largo de 16 rondas iterativas. A pesar de su amplia adopción, DES tiene problemas de seguridad debido al tamaño pequeño de su clave.
Este documento presenta tres problemas relacionados con estructura de computadores. El primer problema describe el diseño de un formato de instrucción para un procesador de 16 bits. El segundo problema involucra el diseño de una memoria caché y su correspondencia con la memoria principal. El tercer problema calcula parámetros como ancho de banda y número máximo de instrucciones para rutinas de interrupción y DMA.
Este documento presenta una introducción a la criptografía y la seguridad de datos. Explica los principios básicos del cifrado convencional, incluidos los ingredientes de un esquema de cifrado y cómo depende la seguridad del secreto de la clave y no del algoritmo. Luego describe diferentes tipos de algoritmos de cifrado como DES, AES, IDEA y Blowfish, así como modos de operación como CBC y CFB. Finalmente, aborda temas como la ubicación de dispositivos de cifrado y la distribución de claves.
SHA-1 de 0 a #fail - Andsec 2017 - Mateo MartinezMateo Martinez
Este documento discute las funciones hash y el algoritmo SHA-1 en particular. Explica cómo funcionan las funciones hash, las propiedades de SHA-1 como algoritmo hash de 160 bits, y cómo se calcula el hash SHA-1 de un mensaje. También resume algunos problemas con SHA-1 como ataques de colisión y cumpleaños que han llevado a que ya no se considere seguro para algunos usos.
Este documento describe el algoritmo de cifrado AES (Advanced Encryption Standard). AES es un algoritmo de cifrado simétrico por bloques desarrollado por Joan Daemen y Vincent Rijmen. Explica los pasos básicos del cifrado AES, incluyendo la adición de la clave inicial, las rondas intermedias que aplican transformaciones como SubBytes, ShiftRows y MixColumns, y la adición de claves de ronda. También discute brevemente los ataques exitosos registrados a AES-128 y avances teóricos en ataques a AES-192 y AES
El documento describe los componentes internos y externos de un PC, incluyendo conectores, tarjetas de expansión, slots, dispositivos de almacenamiento y procesamiento. Se enumeran elementos como puertos PS/2, USB, VGA, tarjetas de video y red, slots IDE y PCI, memoria RAM, procesador y BIOS. También presenta ejercicios sobre sistemas binarios, conversión de bases numéricas, representación de números en coma flotante y corrección de errores con códigos de Hamming.
Este documento presenta el modelado, simulación y control de un motor de corriente continua utilizando Matlab. Inicialmente se describen las ecuaciones físicas del sistema y su representación en Matlab. Luego, se analiza la respuesta del sistema a lazo abierto y se concluye que no cumple con los requerimientos de diseño. Finalmente, se proponen dos métodos para diseñar controladores PID y compensadores utilizando el lugar de raíces, logrando que el sistema compensado satisfaga las especificaciones.
Este documento presenta diferentes métodos para el modelado, simulación y control de sistemas dinámicos utilizando MATLAB. En la primera sección se modela un motor de corriente continua, obteniendo su función de transferencia y representación en espacio de estados. Luego, se diseña un controlador PID para cumplir con los requerimientos de diseño. En la segunda sección se utiliza el método de lugar de raíces para diseñar un compensador, agregando polos y ceros para lograr la respuesta deseada.
El documento presenta ejercicios para convertir entre diferentes sistemas numéricos como binario, decimal, octal y hexadecimal. Incluye ejercicios para convertir números, caracteres ASCII a códigos binarios, y unidades de almacenamiento como bytes, kilobytes, megabytes y gigabytes. También incluye una actividad para identificar componentes importantes en una placa base de computadora como el socket y explicar sus funciones.
El documento describe el algoritmo de cifrado IDEA (International Data Encryption Algorithm). IDEA es un cifrado por bloques de 64 bits diseñado por Xuejia Lai y James L. Massey. Usa bloques de 64 bits, claves de 128 bits y realiza 8 iteraciones idénticas y una transformación de salida. IDEA es más rápido que DES y se ha demostrado resistente a ataques criptoanalíticos. No se conoce ningún ataque exitoso contra IDEA.
El documento describe el algoritmo de cifrado IDEA (International Data Encryption Algorithm). IDEA es un cifrado por bloques de 64 bits diseñado por Xuejia Lai y James L. Massey. Usa bloques de 64 bits, claves de 128 bits y realiza 8 iteraciones idénticas y una transformación de salida. IDEA es más rápido que DES y se ha demostrado resistente a ataques criptoanalíticos. No se conoce ningún ataque exitoso contra IDEA.
Rooted2015 - Ingenieria inversa de circuitos integradosEduardo Cruz
La ingeniería inversa de hardware y circuitos integrados es la última frontera de la seguridad, y también uno de los mundos más desconocidos para la mayoría de los profesionales del sector de la seguridad informática.Esta presentación nos ofrecerá un viaje a este mundo microscópico donde podremos ver sus particularidades, retos, y ejemplos de las técnicas necesarias para adentrase en el. Como parte de este viaje también veremos un caso practico de ataque a una CPU de seguridad utilizada en diversos sistemas del mundo del videojuego arcade.
Itcr el 3310 i semestre 2008 solucionesКатя Флорес
Este documento presenta un examen de diseño de sistemas digitales con dos problemas de teoría y dos problemas de desarrollo. El primer problema de teoría involucra identificar aspectos de la arquitectura de un computador. El segundo problema compara las arquitecturas CISC y RISC. Los problemas de desarrollo analizan un código MIPS con dependencias de datos y diseñan un programa para encontrar el número más grande en una lista.
Este documento proporciona una guía rápida para trabajar con una pantalla LCD y un teclado matricial utilizando un PIC16F877. Explica cómo conectar y configurar la LCD y el teclado, inicializarlos, crear mensajes estáticos y dinámicos en la LCD, y leer teclas del teclado para mostrarlas en la LCD. Incluye ejemplos de código para mostrar una tecla leída del teclado 4x3 y 4x4 en la LCD.
Este documento presenta el contenido de un libro sobre programación básica para microcontroladores PIC. Incluye 12 capítulos que cubren diversos temas como la arquitectura del PIC16F877, el uso de pantallas LCD y GLCD, librerías de funciones trigonométricas, comunicación serial RS-232, tarjetas SD, servomotores y PWM. El apéndice incluye una tabla ASCII y prácticas de programación en formato digital.
Este documento presenta una introducción a la arquitectura de computadoras orientada a sistemas embebidos. Explica brevemente la historia y los mercados actuales, las tecnologías de fabricación de sistemas digitales y algunos ejemplos. Luego propone diseñar un circuito para codificar una cadena de bytes usando run-length encoding y discute cómo podría implementarse dicho codificador usando una máquina de estados y un datapath separados. Finalmente, introduce conceptos como procesadores, sistemas en chip, tipos de arquitecturas de conjunto de
Este documento discute el algoritmo DES (Data Encription Standard) establecido como norma en 1977. DES opera sobre bloques de 64 bits y usa una clave de 56 bits para cifrarlos. El documento explica cómo funciona el algoritmo DES, incluyendo la sección de transformación que consiste en 16 etapas que operan con subclaves generadas a partir de la clave principal. También discute la seguridad del algoritmo DES, la cual depende del secreto de la clave utilizada.
Common Scrambling Algorithm al descubiertoronroneo
El documento resume el algoritmo de cifrado CSA (Common Scrambling Algorithm) utilizado para encriptar transmisiones de televisión digital. CSA utiliza un cifrado de flujo y un cifrado por bloques en cascada con una clave común. El cifrado de flujo se basa en registros de desplazamiento con retroalimentación, mientras que el cifrado por bloques es un cifrador iterativo que aplica una transformación de ronda 56 veces usando subclaves expandidas de la clave maestra. El documento también describe ataques teóricos a ambos componentes
El documento describe el algoritmo DES (Data Encryption Standard), el cual fue adoptado como estándar por el gobierno de EE.UU. en 1975 para cifrar información no clasificada. DES cifra bloques de 64 bits usando una clave de 56 bits. Aunque fue popular, su pequeña clave lo hizo vulnerable a ataques criptoanalíticos como el diferencial y lineal. Esto y otros problemas de seguridad llevaron a que DES dejara de usarse ampliamente.
Este documento describe el algoritmo DES (Data Encryption Standard) o estándar de cifrado de datos. DES fue adoptado como estándar por el gobierno de EE.UU. en los años 1970 y 1980 para cifrar información no clasificada. DES cifra bloques de 64 bits usando una clave de 56 bits y realiza permutaciones y sustituciones a lo largo de 16 rondas iterativas. A pesar de su amplia adopción, DES tiene problemas de seguridad debido al tamaño pequeño de su clave.
Este documento presenta tres problemas relacionados con estructura de computadores. El primer problema describe el diseño de un formato de instrucción para un procesador de 16 bits. El segundo problema involucra el diseño de una memoria caché y su correspondencia con la memoria principal. El tercer problema calcula parámetros como ancho de banda y número máximo de instrucciones para rutinas de interrupción y DMA.
Este documento presenta una introducción a la criptografía y la seguridad de datos. Explica los principios básicos del cifrado convencional, incluidos los ingredientes de un esquema de cifrado y cómo depende la seguridad del secreto de la clave y no del algoritmo. Luego describe diferentes tipos de algoritmos de cifrado como DES, AES, IDEA y Blowfish, así como modos de operación como CBC y CFB. Finalmente, aborda temas como la ubicación de dispositivos de cifrado y la distribución de claves.
SHA-1 de 0 a #fail - Andsec 2017 - Mateo MartinezMateo Martinez
Este documento discute las funciones hash y el algoritmo SHA-1 en particular. Explica cómo funcionan las funciones hash, las propiedades de SHA-1 como algoritmo hash de 160 bits, y cómo se calcula el hash SHA-1 de un mensaje. También resume algunos problemas con SHA-1 como ataques de colisión y cumpleaños que han llevado a que ya no se considere seguro para algunos usos.
Este documento describe el algoritmo de cifrado AES (Advanced Encryption Standard). AES es un algoritmo de cifrado simétrico por bloques desarrollado por Joan Daemen y Vincent Rijmen. Explica los pasos básicos del cifrado AES, incluyendo la adición de la clave inicial, las rondas intermedias que aplican transformaciones como SubBytes, ShiftRows y MixColumns, y la adición de claves de ronda. También discute brevemente los ataques exitosos registrados a AES-128 y avances teóricos en ataques a AES-192 y AES
El documento describe los componentes internos y externos de un PC, incluyendo conectores, tarjetas de expansión, slots, dispositivos de almacenamiento y procesamiento. Se enumeran elementos como puertos PS/2, USB, VGA, tarjetas de video y red, slots IDE y PCI, memoria RAM, procesador y BIOS. También presenta ejercicios sobre sistemas binarios, conversión de bases numéricas, representación de números en coma flotante y corrección de errores con códigos de Hamming.
Este documento presenta el modelado, simulación y control de un motor de corriente continua utilizando Matlab. Inicialmente se describen las ecuaciones físicas del sistema y su representación en Matlab. Luego, se analiza la respuesta del sistema a lazo abierto y se concluye que no cumple con los requerimientos de diseño. Finalmente, se proponen dos métodos para diseñar controladores PID y compensadores utilizando el lugar de raíces, logrando que el sistema compensado satisfaga las especificaciones.
Este documento presenta diferentes métodos para el modelado, simulación y control de sistemas dinámicos utilizando MATLAB. En la primera sección se modela un motor de corriente continua, obteniendo su función de transferencia y representación en espacio de estados. Luego, se diseña un controlador PID para cumplir con los requerimientos de diseño. En la segunda sección se utiliza el método de lugar de raíces para diseñar un compensador, agregando polos y ceros para lograr la respuesta deseada.
El documento presenta ejercicios para convertir entre diferentes sistemas numéricos como binario, decimal, octal y hexadecimal. Incluye ejercicios para convertir números, caracteres ASCII a códigos binarios, y unidades de almacenamiento como bytes, kilobytes, megabytes y gigabytes. También incluye una actividad para identificar componentes importantes en una placa base de computadora como el socket y explicar sus funciones.
El documento describe el algoritmo de cifrado IDEA (International Data Encryption Algorithm). IDEA es un cifrado por bloques de 64 bits diseñado por Xuejia Lai y James L. Massey. Usa bloques de 64 bits, claves de 128 bits y realiza 8 iteraciones idénticas y una transformación de salida. IDEA es más rápido que DES y se ha demostrado resistente a ataques criptoanalíticos. No se conoce ningún ataque exitoso contra IDEA.
El documento describe el algoritmo de cifrado IDEA (International Data Encryption Algorithm). IDEA es un cifrado por bloques de 64 bits diseñado por Xuejia Lai y James L. Massey. Usa bloques de 64 bits, claves de 128 bits y realiza 8 iteraciones idénticas y una transformación de salida. IDEA es más rápido que DES y se ha demostrado resistente a ataques criptoanalíticos. No se conoce ningún ataque exitoso contra IDEA.
Rooted2015 - Ingenieria inversa de circuitos integradosEduardo Cruz
La ingeniería inversa de hardware y circuitos integrados es la última frontera de la seguridad, y también uno de los mundos más desconocidos para la mayoría de los profesionales del sector de la seguridad informática.Esta presentación nos ofrecerá un viaje a este mundo microscópico donde podremos ver sus particularidades, retos, y ejemplos de las técnicas necesarias para adentrase en el. Como parte de este viaje también veremos un caso practico de ataque a una CPU de seguridad utilizada en diversos sistemas del mundo del videojuego arcade.
Itcr el 3310 i semestre 2008 solucionesКатя Флорес
Este documento presenta un examen de diseño de sistemas digitales con dos problemas de teoría y dos problemas de desarrollo. El primer problema de teoría involucra identificar aspectos de la arquitectura de un computador. El segundo problema compara las arquitecturas CISC y RISC. Los problemas de desarrollo analizan un código MIPS con dependencias de datos y diseñan un programa para encontrar el número más grande en una lista.
Este documento proporciona una guía rápida para trabajar con una pantalla LCD y un teclado matricial utilizando un PIC16F877. Explica cómo conectar y configurar la LCD y el teclado, inicializarlos, crear mensajes estáticos y dinámicos en la LCD, y leer teclas del teclado para mostrarlas en la LCD. Incluye ejemplos de código para mostrar una tecla leída del teclado 4x3 y 4x4 en la LCD.
Este documento presenta el contenido de un libro sobre programación básica para microcontroladores PIC. Incluye 12 capítulos que cubren diversos temas como la arquitectura del PIC16F877, el uso de pantallas LCD y GLCD, librerías de funciones trigonométricas, comunicación serial RS-232, tarjetas SD, servomotores y PWM. El apéndice incluye una tabla ASCII y prácticas de programación en formato digital.
Este documento presenta una introducción a la arquitectura de computadoras orientada a sistemas embebidos. Explica brevemente la historia y los mercados actuales, las tecnologías de fabricación de sistemas digitales y algunos ejemplos. Luego propone diseñar un circuito para codificar una cadena de bytes usando run-length encoding y discute cómo podría implementarse dicho codificador usando una máquina de estados y un datapath separados. Finalmente, introduce conceptos como procesadores, sistemas en chip, tipos de arquitecturas de conjunto de
PRESENTACION TEMA COMPUESTO AROMATICOS YWillyBernab
Acerca de esta unidad
La estructura característica de los compuestos aromáticos lleva a una reactividad única. Abordamos la nomenclatura de los derivados del benceno, la estabilidad de los compuestos aromáticos, la sustitución electrofílica aromática y la sustitución nucleofílica aromática
ESTUDIANTES BENEFICIARIOS que se suman a los beneficios de la universidad
Cifradores
1. 1
El algoritmo DES
• Data Encryption Standard
• Estándar del cifrado para los EE.UU
– 1970 NBS
– 1974 Lucifer IBM
– 1975 DEA IBM
– 1976 DES EE.UU standard
• Requisitos que debía cumplir:
– Alto nivel de seguridad
– Hipótesis de Kerckhoffs
– Disponibilidad para todos los usuarios
– Implementación en hardware
2. 2
DES
• El algoritmo Lucifer
– Tamaño de bloque y clave mayor (128 bits)
• Ha sido estandarizado para el cifrado de
contraseñas
• Ha superado las sucesivas revisiones, que le han
otorgado las revalidaciones como estándar del NIST
• Implementaciones del DES alcanzan varias decenas de
Mbps
DES
• Bloques de cifrado de 64 bits
• Longitud de la clave 64 bits (56 bits)
• Técnicas básicas usadas en el algoritmo:
– Transposiciones, que le confieren propiedades
de difusión
– Sustituciones, que le otorgan características de
confusión
– Operaciones lógicas booleanas (o-exclusivo)
3. 3
DES
Li-1 Ri-1
Li=Ri-1 Ri
Caja S
Caja P
Caja E
⊕
⊕
ki-1
Construcción de las claves
internas del DES
CLAVE
PC-1
Desp. Desp.
PC-2 K1
Desp. Desp.
K2
PC-2
4. 4
Descifrado del DES
• El proceso es idéntico que en el caso del
cifrado.
• Las claves internas se aplican en orden
inverso, es decir desde la clave k16 a la
clave k1.
• Los desplazamientos que se realizan para la
construcción de las claves internas, se
realizan hacia la derecha.
Cifradores simétricos
n IDEA
u ‘92, X. Lay y J. Masey (Suiza)
u Criptosistema de bloque y simétrico
u Longitud de clave de 128bits
u Cifra bloques de 64 bits
u Operaciones:
F Xor
F x módulo 216
F + módulo 216
+1
5. 5
Cifradores simétricos
n IDEA (continuación)
u 52 claves internas de 16 bits c.u.
u 8 ciclos
u Divide 64 bits de entrada en 4
bloques de 16 bits (1º ciclo)
u No existen debilidades descubiertas
u Resiste criptoanálisis diferencial
Esquema de IDEA
B1 B2 B3 B4
B1 B2 B3 B4
B1 B2 B3 B4
B1 B2 B3 B4
B1 B2 B3 B4
O1 O2 O3 O4
T1
T2
T3
T4
TF
8
CICLOS
(i)
Ki Ki+1 Ki+2 Ki+3
Ki+4 Ki+5
K49 K50 K51 K52
6. 6
Transformaciones del IDEA
T1 Transformación 1
B1 = B1 x Ki
B2 = B2 + Ki+1
B3 = B3 + Ki+2
B4 = B4 x Ki+3
T2 Transformación 2
t1 = B2;
t2 = B3;
B3 = B3 Xor B1
B2 = B2 Xor B4
T3 Transformación 3
B3 = B3 x Ki+4
B2 = B2 + B3
B2 = B2 x Ki+5
B3 = B3 + B2
T4 Transformación 4
B1 = B1 Xor B2
B4 = B4 Xor B3
B2 = B2 Xor t2
B3 = B3 Xor t1
TF Transformación Final
O1 = B1 x K49
O2 = B3 + K50
O3 = B2 + K51
O4 = B4 x K52
Construcción de las
52 claves internas
1- La clave introducida por el usuario se divide en 8
subclaves de 16 bits (las primeras 8 claves
internas)
2- Los 128 bits anteriores se desplazan hacia la
izquierda 25 posiciones (con retroalimentación).
3- El resultado del paso 2 se divide en 8 trozos de 16
bits que significan las siguientes 8 claves internas.
4- Repetir los pasos 2 y 3 hasta conseguir las 52
claves internas (despreciar las que sobren)
7. 7
Descifrado de IDEA
• El proceso es idéntico, excepto en las claves utilizadas.
1º ciclo k49* k50# k51# k52* k47 k48
2º ciclo k43* k45# k44# k46* k41 k42
3º ciclo k37* k39# k38# k39* k35 k36
4º ciclo k31* k33# k32# k34* k29 k30
5º ciclo k25* k27# k26# k28* k23 k24
6º ciclo k19* k21# k20# k22* k17 k18
7º ciclo k13* k15# k14# k16* k11 k12
8º ciclo k7* k9# k8# k10* k5 k6
Transformacion final.....k1* k2# k3# k4*
kXX* = inverso multiplicativo de sXX mod ((2^16)+1)
kXX# = inverso aditivo de sXX mod (2^16)
El algoritmo Rijndael
• Cifrador de bloque que puede procesar bloques de datos de 128 bits
usando claves de cifrado de 128, 192 ó 256 bits.
• La función de transformación o de cifrado, que tiene lugar en cada
iteración, está compuesta a su vez de cuatro transformaciones
(orientadas a byte) diferentes :
• SubBytes(), ShiftRows(), MixColumns(), AddRoundKey()
• El número de rondas se determina de acuerdo a la siguiente tabla.
Donde Nb es el nº de bits del bloque dividido por 32 y Nk es el nº de
bits de la clave divididos por 32.
9. 9
Bi,j K[0]i,j Bi,j
32 88 31 e0 2b 28 ab 09 19 a0 9a e9
43 5a 31 37 7e ae f7 cf 3d f4 c6 f8
XOR =
f6 30 98 07 15 d2 15 4f e3 e2 8d 48
a8 8d a2 34 16 a6 88 3c be 2b 2a 08
Iteración inicial
Iteración inicial (AddRoundKey)
(AddRoundKey)
Texto inicial
Subclave
correspondiente a
esta iteración
Resultado de la
iteración
SubBytes
SubBytes
10. 10
La caja S está representada por la siguiente tabla:
19 a0 9a e9 d4 e0 b8 1e
3d f4 c6 f8 27 bf b4 41
e3 e2 8d 48 11 98 5d 52
be 2b 2a 08 ae f1 e5 30
ShiftRows
d4 e0 b8 1e d4 e0 b8 1e
27 bf b4 41 bf b4 41 27
11 98 5d 52 5d 52 11 98
ae f1 e5 30 30 ae f1 e5
11. 11
MixColumns
Esta transformación opera con la matriz de Estado columna por
columna, tratando cada una como un polinomio de cuatro términos
en GF(28), y, multiplicándolas módulo (x4 + 1) por un polinomio
a(x), dado por:
a(x) = {03}x3 + {01}x2 + {01}x + {02}
Esto puede ser escrito como una multiplicación de matrices.
Permitamos s'(x)=a(x)⊕s(x):
=
c
c
c
c
c
c
c
c
s
s
s
s
s
s
s
s
,
3
,
2
,
1
,
0
'
,
3
'
,
2
'
,
1
'
,
0
02
01
01
03
03
02
01
01
01
03
02
01
01
01
03
02
para 0 ≤ c < Nb
AddRoundKey
[s'0,c , s'1,c , s'2,c , s'3,c] = s0,c , s1,c , s2,c , s3,c] ⊕ [Wround∗4+c] para 0 ≤ c < 4,
04 e0 48 28 a0 88 23 2a a4 68 6b 02
66 cb f8 06 fa 54 a3 6c 9c 9f 5b 6a
XOR =
81 19 d3 26 fe 2c 39 76 7f 35 ea 50
e5 9a 7a 4c 17 b1 39 05 f2 2b 43 49
13. 13
InvSubBytes
.
InvMixColumns
InvMixColumns() es la inversa de la transformación MixColumns(). Esta
transformación opera con la matriz de Estado columna por columna, tratando
cada una como un polinomio de cuatro términos en GF(28), y, multiplicándolas
módulo (x4 + 1) por un polinomio fijo a-1(x), dado por:
a-1(x) = {0b}x3 + {0d}x2 + {09}x + {0e}
=
c
c
c
c
c
c
c
c
s
s
s
s
e
d
b
b
e
d
d
b
e
d
b
e
s
s
s
s
,
3
,
2
,
1
,
0
'
,
3
'
,
2
'
,
1
'
,
0
0
09
0
0
0
0
09
0
0
0
0
09
09
0
0
0
para 0 ≤ c < Nb