Sunteți pe pagina 1din 19

Área de la Energía, las Industrias y los Recursos Naturales no Renovables

INGENIERÍA EN SISTEMAS
MÓDULO IX

Paralelo B

TEMA:

“Cifrado y Descifrado Con El Método ECB Y DES”

INTEGRANTES:
 María Cristina Carrillo Martínez
 Jenny Paulina Imacaña Fernández
 Maricela del Cisne Maldonado Cuenca
 Silvia Maribel Michay Pugo
 Iliana Elizabeth Vargas Aguilar

COORDINADOR:
Ing. Luis Chamba

LOJA – ECUADOR

2010
TEMA:

Cifrado y Descifrado con el Método ECB

MOTIVACIÓN DEL ALGORITMO

Figura No 1. Información en la red

Actualmente, la criptografía tiene un papel importante en muchas aplicaciones de tecnologías


de la información. Con un número creciente de personas conectadas a Internet, la transmisión
segura de información es un asunto de alta prioridad, donde aplicaciones como correos
electrónicos, sucursales virtuales bancarias y empresariales, bases de datos médicas, comercio
electrónico, entre otras requieren el intercambio de información privada.

La posibilidad de manejar distintos estándares criptográficos depende de que la mayoría de los


protocolos de seguridad modernos y aplicaciones de seguridad sean definidas independientes
de los algoritmos, es decir, permiten seleccionar de un conjunto de algoritmos criptográficos
para la misma función de seguridad entre las diversas medidas de seguridad.

La seguridad de los datos de cualquier sistema es algo muy importante, y no siempre recibe la
atención y dedicación necesaria. Es por ello que existen algoritmos de encriptación y
decencriptación de datos para que no sean vulnerables, nosotros para realizar dichos métodos
hemos utilizado el algoritmo de encriptación (ECB) conocido por muchos como electronic
codebook por ser el más sencillo, además porque destaca la posibilidad de romper el mensaje
en bloques y cifrarlos en paralelo o acceder aleatoriamente a los diferentes bloques.

Esta iniciativa constituye un beneficio clave del aprovechamiento de un método de seguridad


basado en entornos, debido a que permite codificar bloques independientemente de su orden,
además de ser resistente a errores.

Figura No 2. Seguridad de la información


DESCRIPCIÓN DE LA SOLUCIÓN

Figura No 3. Algoritmo ECB

Este método llamado ECB (electronic codebook) es el más simple de modo de cifrado, pues se
limita a partir el mensaje en bloques y cifrarlos por separado. Entonces toma bloques de
tamaño fijo del texto en claro y producen un bloque de tamaño fijo de texto cifrado,
generalmente del mismo tamaño que la entrada. Es decir, se parte el mensaje en bloques de k
bits, rellenando el ultimo si es necesario y se encripta cada bloque. Y para desencriptar se
trocea el texto cifrado en bloques de k bits y se desencripta cada bloque.

A continuación se presentan las figuras correspondientes a los métodos de encriptación y


desencriptación respectivamente:

Figura No 4. Encriptación.

Figura No 5. Desencriptación.
Una característica interesante de estos algoritmos es que la encriptación ydesencriptación son
idénticas estructuralmente, aunque las subclaves empleadas en la encriptación se toman en
orden inverso en la desencriptación.

HERRAMIENTAS INFORMÁTICAS

Internet
Java (NetBeans)

CONCLUSIONES

Se realizó un análisis para la selección de la arquitectura basándose en las


implementaciones de algunos algoritmos criptográficos mediante sus componentes
básicos. Se fundamentó en los estándares de ECB (Electronic Codebook).

Con el algoritmo ECB destaca la posibilidad de romper el mensaje en bloques y


podemos acceder a ellos aleatoriamente.

Con este algoritmo puede hacerse protocolos sin la protección de la integridad, puesto
que cada bloque consigue ser descifrado exactamente de la misma manera.

El hecho de cifrar los bloques por separado implica que cuando se cifre un bloque con
cierto valor, siempre se obtendrá el mismo resultado. Esto hace posible los ataques de
diccionario.

Figura No 6. Seguridad de información


FUTUROS TRABAJOS

Al intentar aumentar la seguridad aparecen nuevos algoritmos criptográficos, o para los


algoritmos existentes se encuentran diseños mejorados, modificados u optimizados. En
cualquier caso, los productos hardware de seguridad no consideraron esas modificaciones en
el tiempo de diseño y pueden quedar rezagados tecnológicamente. Este requerimiento motiva
a ofrecer un producto donde códigos de configuración puedan actualizar al dispositivo
criptográfico.

Análisis E Implementación De Algoritmos Cifradores Para Una Unidad Reconfigurable


De Procesamiento Criptográfico En Fpga, [Seriada en línea]. Pág.1-11. Disponible en:
URL: http://ccc.inaoep.mx/Reportes/CCC-04-006.pdf, [Consultado Diciembre 19, 2010]

Cifrado Por Bloques, [Seriada en línea]. Pág.1-2. Disponible en: URL:


http://es.wikipedia.org/wiki/Cifrado_por_bloques, [Consultado Diciembre 19, 2010]

Aplicaciones Electrónicas Seguras Basadas


En Tarjetas Inteligentes,[Seriada en línea]. Pág.1-2. Disponible en: URL:
http://www.uvmnet.edu/investigacion/episteme/numero1107/enfoque/a_aplicacione
s.asp, [Consultado Diciembre 19, 2010]

Worldlingo. Modo De Operación De La Cifra Del Bloque, [Seriada en línea]. Pág.2-4.


Disponible en: URL:
http://www.worldlingo.com/ma/enwiki/es/Block_cipher_modes_of_operation,[Consu
ltado Diciembre 19, 2010]
TEMA:

Cifrado y Descifrado con el Método DES

MOTIVACIÓN DEL ALGORITMO

El algoritmo DES (Data Encryption Standard, estándar de cifrado de datos) desarrollado


originalmente por IBM, en 1973 el National Bureau of Standard(NBS) adoptó el algoritmo DES
(Data Encryption Standard) como estándar de cifrado para la seguridad de documentos
oficiales. A finales de 1974, IBM propuso "Lucifer", que gracias a la NSA (National Standard
Agency, en castellano: Agencia Nacional de Seguridad) fue modificado el 23 de noviembre de
1976, convirtiéndose en DES (Data Encryption Standard, en castellano: Estándar de Cifrado de
Datos).

Figura No1. Descripción del Algoritmo de Encriptación y Desencriptación

Es un sistema de cifrado simétrico por bloques de 64 bits, de los que 8 bits (un byte) que se
utilizan como control de paridad (para la verificación de la integridad de la clave). El algoritmo
se encarga de realizar combinaciones, sustituciones y permutaciones entre el texto a cifrar y la
clave, asegurándose al mismo tiempo de que las operaciones puedan realizarse en ambas
direcciones (para el descifrado),es uno de los sistemas más empleados y extendidos, por tanto
es de los más probados y su implementación es sencilla y rápida.

DESCRIPCIÓN DE LA SOLUCIÓN

A continuación se describen los pasos necesarios para implementar


esteAlgoritmoCriptográfico DES.

ENCRIPTACIÓN1
1.- Procesar La Clave.
1.1.- Solicitar una clave de 64 bits al usuario

1
Jorge Sánchez Arriazu Descripción del algoritmo DES (Data Encryption Standard), diciembre de
1999 enlace[http://www.tierradelazaro.com/public/libros/des.pdf]
La clave se puede introducir directamente o puede ser el resultado de alguna
operación anterior, ya que no hay ninguna especificación al respecto.

De cada uno de los ocho bytes se elimina el octavo bit (el menos significativo).

1.2.- Calcular las subclaves.

1.2.1.-Realizar la siguiente permutación en la clave de 64 bitsreduciéndose la


misma a 56 bits (El bit 1, el mássignificativo, de la clave transformada es el bit
57 de laclave original, el bit 2 pasa a ser el bit 49, etc.).

Figura No2. Permutación de claves

1.2.2.- Dividir la clave permutada en dos mitades de 28 bits cada una. C(0) el
bloque que contiene los 28 bits de mayor pesoy D(0) los 28 bits restantes.

1.2.3.-Calcular las 16 subclaves (Empezar con i=1)

1.2.3.1.-Rotar uno o dos bits a la izquierda C(i-1) y D(i-1)para obtener C(i) y


D(i), respectivamente. Elnúmero de bits de desplazamiento está dado por
latabla siguiente:

Figura No3. Bits de desplazamiento

1.2.3.2.- Concatenar C(i) y D(i) y permutar como se indica acontinuación.


Así se obtiene K(i), que tiene una longitud de 48 bits.
Figura No4. Concatenación y Permutación de claves

1.2.3.3.- Ir a 1.2.3.1. Hasta que se haya calculado K(16).

2. Procesar el bloque de datos de 64 bits.

2.1. Obtener un bloque de datos de 64 bits. Si el bloque contiene menos de 64 bits


debe ser completado para poder continuar con elsiguiente paso.

2.2. Realizar la siguiente permutación del bloque:

Figura No5. Permutación del bloque

2.3.- Dividir el bloque resultante en dos mitades de 32 bits cada una.

L(0) el bloque que contiene los 32 bits de mayor peso y R(0) el resto.

2.4.- Aplicar las 16 subclaves obtenidas en el paso 1

2.4.1.- E(R(i)). Expandir R(i) de 32 a 48 bits de acuerdo con latabla que se


muestra debajo:
Figura No6. Expansión de claves

2.4.2.- E(R(i-1)) Xor K(i). Or-exclusiva del resultado del paso

2.4.2.1.- con K(i)

2.4.3.- B(1), B(2),..., B(8). Partir E(R(i-1)) Xor K(i) en ocho bloques de seis bits.
B(1) representa a los bits 1-6, B(2) representa a los bits 7-12,..., B(8) representa
a los bits 43- 48.

2.4.4.- S(1)(B(1)), S(2)(B(2)),..., S(8)(B(8)). Sustituir todos los B(j) por los valores
correspondientes de las S-Cajas o tablas de sustitución (Substitution Boxes, S-
Boxes) de 6*4 bits, según se indica en los subapartados que siguen. Todos los
valores de las S-Cajas se consideran de 4 bits de longitud. (Ver S-cajas del
algoritmo DES, página siguiente).

2.4.4.1.- Tomar los bits 1º y 6º de B(j) y formar un número de 2 bits


que llamaremos m. Este valor nos indicará la fila en la tabla de
sustitución correspondiente S(j). Obsérvese que m=0 representa la 1ª
fila y m=3 la última.

2.4.4.2.- Con los bits 2º a 5º de B(j) formar otro número, n, de cuatro


bits que indicará la columna de S(j) en la que buscar el valor de
sustitución. En esta ocasión n=0 representa la 1ª columna y n=15 la
última columna.

2.4.4.3.- Reemplazar B(j) con S(j)(m,n), m fila y n columna.

2.4.4.4.- Ejemplo. Sea B(3)=42, en binario B(3)=101010.

Buscaremos el nuevo valor de B(3) en S(3). Fila m y columna n, según


lo expuesto anteriormente m=10, n=0101, y en decimal m=2 y n=5.
Por tanto, B(3) será S(3)(2,5)=15

2.4.4.5.- Volver a 2.4.4.1. hasta que todos los bloques B(j)hayan sido
reemplazados por el valor de S(j) adecuado.
2.4.5.- P[S(1)(B(1))... S(2)(B(8))]. Concatenar los bloques B(1) a B(8) y permutar
los 32 bits (cuatro bits cada B(j)) en función de esta tabla:

Figura No7. Permutación de claves de 32 bits

2.4.5.1.- Volver a 2.4.4.1 hasta que todos los bloques B(j) hayan sido
reemplazados por el valor de S(j) adecuado.

Figura No8. Cajas del algoritmo DES


2.4.6.- P[S(1)(B(1))... S(2)(B(8))]. Concatenar los bloques B(1) a B(8) y permutar
los 32 bits (cuatro bits cada B(j)) en función de esta tabla:

Figura No9. Concatenación de bloques y Permutación de claves de 32 bits

2.4.7.- R(i). Realizar una or-exclusiva entre el valor resultante y L(i-1).


Este valor será R(i). Por tanto, R(i)=L(i-1) XorP[S(1)(B(1))...S(2)(B(8))]

2.4.8.- L(i). L(i)=R(i-1)

2.4.9.- Repetir desde 2.4.1 hasta que se hayan aplicado las 16 subclaves.

2.5.-Hacer la siguiente permutación del bloque R(16)L(16). Obsérvese que esta vez
R(16) precede a L(16)

Final Permutation (IP**-1)

Figura No 10. Permutación del bloque

DESENCRIPTACIÓN2

Usar el mismo proceso descrito con anterioridad pero empleando las subclaves en orden
inverso, esto es, en lugar de aplicar K(1) para la primera iteración aplicar K(16), K(15) para la
segunda y así hasta K(1).

2
Jorge Sánchez Arriazu Descripción del algoritmo DES (Data Encryption Standard), diciembre de
1999 enlace[http://www.tierradelazaro.com/public/libros/des.pdf]
HERRAMIENTAS INFORMÁTICAS

Internet
Java(NetBeans)

CONCLUSIONES

Es el más utilizado y extendido en el mundo, lo que da lugar a que sea el más barato ,
más probado, utilizado por todo tipo de sistemas, etc.
Es el más estudiado y el más utilizado de los algoritmos de clave simétrica.
Codifica bloques de 64 bits empleando claves de 56 bits.
Consta de 16 rondas, más dos permutaciones, una que se aplica al principio (Pi) y otra
al final (Pf ), tales que la última es la inversa de la primera.
Para descifrar basta con usar el mismo algoritmo empleando el orden inverso.
Es un algoritmo de cifrado que cumple con los siguientes requisitos:

Ofrecer un alto nivel de seguridad relacionado con una pequeña clave utilizada
para cifrado y descifrado
Ser comprensible
No depender de la confidencialidad del algoritmo
Ser adaptable y económico
Ser eficaz y exportable

FUTUROS TRABAJOS

Conociendo los beneficios que brinda el algoritmo DES podemos aprovechar en gran parte las
implementaciones por hardware existentes del DES para futuros trabajos tanto en el campo
académico, profesional y en nuestra vida cotidiana ya que se puede aplicar en diferentes
proyectos, se puede hacer mención del poder aplicar el DES Múltiple que consiste en aplicar
varias veces el algoritmo DES con diferentes claves al mensaje original.

Jorge Sánchez Arriazu. Descripción del algoritmo DES (Data Encryption


Standard),[Seriada en línea]. Pág.1-4. Disponible en:
URL:http://www.tierradelazaro.com/public/libros/des.pdf,[Consultado Diciembre 19,
2010]

Cryptographic Algorithms for Protection of Computer Data During Transmission and


Dormant Storage. Federal Register 38, No. 93, E.U.A., [Seriada en línea]. Pág.3-9.
Disponible en: URL:http://www.webprogramacion.com/164/java/cifrar-y-descifrar-
datos-con-des.aspx, [Consultado Diciembre 19, 2010]
PROTOTIPADO DE PANTALLAS

Nombre de la pantalla: INICIO

Fig 1. Pantalla de inicio del programa de Modelos de Encriptación del DES y ECB

Realizado por: Grupo de investigación Nro. 4


Equipo de trabajo: Carrillo Cristina, Imacaña Jenny, Maldonado Maricela, Michay Silvia
y Vargas Iliana
Fecha: 21-12-2010
Esta pantalla se muestra el inicio del programa, contiene el nombre de los algoritmos de
encriptación D.E.S y E.C.B.
Pantalla Principal

Una vez ejecutado el programa se muestra la Pantalla Principal, que contiene 2


botones para el método encriptación: D.E.S y E.C.B.

Nombre de la pantalla: SELECCIÓN DE MÉTODO

Figura 2. Pantalla principal

Realizado por: Grupo de investigación Nro. 4

Equipo de trabajo : Carrillo Cristina, Imacaña Jenny, Maldonado Maricela, Michay Silvia y
Vargas Iliana
Fecha: 21-12-2010

Esta es la pantalla principal del programa muestra dos botones que permite elegir el
método de encriptación deseado.
Pantalla Opción D.E.S

La pantalla Opción D.E.S se muestra una vez clicleado el botón de la pantalla


principal; la cual se encuentra estructurada por 2 menús: Encriptación y
Desencriptación.

Nombre de la pantalla: ENCRIPTACIÓN Y DESENCRIPTACIÓN DEL D.E.S

Fig. 3. Encriptación y Desencriptación del D.E.S

Realizado por: Grupo de investigación Nro. 4

Equipo de trabajo: Carrillo Cristina, Imacaña Jenny, Maldonado Maricela, Michay Silvia y
Vargas Iliana
Fecha: 21-12-2010

En esta ventana (Fig. 3) se llenan los datos de encriptación y desencriptación


respectivamente, también existe la opción ATRÁS que permite regresar a la pantalla
principal llamada Selección del Método, la cual permite elegir el método para poder
encriptar.
Pantalla Opción D.E.S

Nombre de la pantalla: ENCRIPTACIÓN Y DESENCRIPTACIÓN DEL D.E.S

Fig. 6. Encriptación del D.E.S

Realizado por: Grupo de investigación Nro. 4

Equipo de trabajo: Carrillo Cristina, Imacaña Jenny, Maldonado Maricela, Michay Silvia y
Vargas Iliana
Fecha: 21-12-2010

En esta ventana se llena el texto a encriptar y se escribe una clave para su protección.
Pantalla Opción D.E.S

Nombre de la pantalla: ENCRIPTACIÓN Y DESENCRIPTACIÓN DEL D.E.S

Fig. 7. DESENCRIPTACIÓN MEDIANTE EL ALGORITMO D.E.S

Realizado por: Grupo de investigación Nro. 4

Equipo de trabajo: Carrillo Cristina, Imacaña Jenny, Maldonado Maricela, Michay Silvia y
Vargas Iliana
Fecha: 21-12-2010

En esta ventana se escribe el texto encriptado anteriormente con su respectiva clave y


presionar el botón desencriptar de esta ventana.
Pantalla Opción E.C.B

La pantalla Opción E.C.B se muestra una vez clicleado el botón de la pantalla


principal; la cual se encuentra estructurada por 2 opciones: Encriptación y
Desencriptación.

Nombre de la pantalla: ENCRIPTACIÓN Y DESENCRIPTACIÓN DEL E.C.B

Fig 1. Encriptación y Desencriptación del E.C.B

Fig 2. Atrás

Fig. 3. Selección de método

Realizado por: Grupo de investigación Nro. 4


Equipo de trabajo: Carrillo Cristina, Imacaña Jenny, Maldonado Maricela, Michay Silvia y
Vargas Iliana
Fecha: 21-12-2010
En esta ventana (Fig. 1) se llenan los datos a encriptar y desencriptar según se desee, y a
continuación se debe escribir una clave para la protección de datos, y posteriormente
presionar el botón EJECUTAR; existe también la opción ATRÁS que permite regresar a la
pantalla principal llamada Selección del Método, la cual permite elegir el método para poder
encriptar.
Pantalla Opción E.C.B

Nombre de la pantalla: ENCRIPTACIÓN DEL E.C.B

Fig. 4. Encriptación del E.C.B

Realizado por: Grupo de investigación Nro. 4

Equipo de trabajo: Carrillo Cristina, Imacaña Jenny, Maldonado Maricela, Michay Silvia y
Vargas Iliana
Fecha: 21-12-2010

Una vez ingresado el texto en la Fig. 1 y elegido la opción deseada (encriptar o


desencriptar), se desprenderá la ventana Fig. 4, donde nos mostrará el proceso de
encriptación o desencriptación respectivamente.

S-ar putea să vă placă și