Está en la página 1de 10

MATEMATICA MODULAR

DES
3DES

SANDRA JOHANNA VARGAS CARO 20172373002


JUAN ANDRES SANCHEZ 20172373012

MOISES IVAN ROJAS


TEORIA DE LA INFORMACION

UNIVERSIDAD DISTRITAL FRANCISCO JOE DE CALDAS


FACULTAD TECNOLOGICA
INGENIERIA EN TELECOMUNICACIONES
DICIEMBRE DE 2017
BOGOTA
INTRODUCCION

Para encriptar un mensaje necesitamos previamente representarlo en forma numérica.


Esto no es un gran problema dado que las computadoras de hecho es como representan
los caracteres y letras. Así la letra ‘a’ corresponde en código ASCII al número 1 decimal
97, la letra ‘o’ se representa como 111, y el número 2, también en ASCII, se representa
como 50. Por ejemplo para codificar ‘onda2’ en ASCII escribimos los números: 111 110
100 97 50 La encriptación, más propiamente llamada cifrado, consiste en realizar
transformaciones sobre el texto representado en forma numérica de modo que su
apariencia difiera del texto original tanto que sea irreconocible.
MATEMATICA MODULAR

En matemática, la aritmética modular es un sistema aritmético para clases de


equivalencia de números enteros llamadas clases de congruencia. La aritmética
modular fue introducida en 1801 por Carl Friedrich Gauß en su libro Disquisitiones
Arithmeticae.
Algunas veces se le llama, sugerentemente, aritmética del reloj, ya que los números
«dan la vuelta» tras alcanzar cierto valor llamado módulo.

Pretendemos dar las bases mínimas para poder mostrar aplicaciones a la Criptografía de
la Aritmética modular. Para ello introducimos brevemente cierta terminología necesaria.

Criptografía: la ciencia o arte de mantener mensajes seguros, para ello el mensaje se


cifra (encripta). Criptoanálisis: la ciencia o arte de romper códigos cifrados
(criptografiados).

Interlocutores: aquellas personas que utilizan la criptografía para enviarse mensajes en


forma confidencial. Alternativamente juegan el papel de transmisor o receptor de
mensajes. espía: o criptoanalista o adversario u oponente, aquella persona u
organización que pretende recuperar cierto mensaje a partir del texto encriptado.

Texto llano: mensaje sin cifrar, tal como es emitido por los interlocutores. Hemos optado
por traducir la expresión inglesa “plain text” como texto llano. texto cifrado: o encriptado,
mensaje después de la operación de encriptar.

Clave simétrica: sistema de encriptar que utiliza una clave k solo conocida por aquellos
interlocutores autorizados. Estos deben ponerse de acuerdo en la clave previamente a
intentar comunicarse.

clave publica: o asimétrica, sistema de encriptar que utiliza una clave publica 𝑒𝐵 que
permite que un usuario A envíe un mensaje a otro B de modo que sólo este último pueda
leerlo. Para ello B utiliza una clave secreta 𝑑𝐵 (solo conocida por él). Se supone que el
conocimiento de la clave pública 𝑒𝐵 no habilita a un espía a conocer la clave secreta 𝑑𝐵
ni el mensaje por algun otro método que pudiera existir y que no utilice 𝑑𝐵 . Las claves
públicas se listan en un directorio similar a una guía telefónica.

Podemos realizar un símil con la apertura de una caja de seguridad; si se conoce la


combinación se tardara algunos segundos en abrir la caja. Si no es así, se deberá probar
tanteando todos los casos posibles, y salvo una gran casualidad se tardara un tiempo
tan grande en abrir la caja que tornara esta tarea en impracticable. En el último punto
tratado se consideró un método para abrir la caja que consiste en probar todos los casos
posibles. Es lo que se llama un ataque de ‘fuerza bruta’. Lo mismo es válido para la
Criptografía, un espía puede siempre intentar descifrar un mensaje probando todos los
casos posibles. Un método de encriptar se considera seguro si el mejor método aplicado
para intentar descifrar un mensaje es equivalente al ataque por fuerza bruta. Con el
aumento de la velocidad de los ordenadores se logra que el ataque por fuerza bruta sea
cada vez más eficaz. Si un computador puede probar 1 millón de claves por segundo, la
siguiente tabla da una idea del valor esperado que tarda en hallar la clave correcta
dependiendo del largo de la clave medido en bytes Se recuerda que un byte está formado
por 8 bits. Como cada bit puede valer 0 o 1, los posibles valores de un byte son 256 en
total, para dos bytes son 216 = 65536, para 4 bytes son 232 = 4294967296 ≈ 109,63.
Para 8 bytes tenemos una clave del orden de 1019 . El tiempo de búsqueda en un ataque
por fuerza bruta crece exponencialmente con el largo de la clave. Hoy en día, suponiendo
que se posean los recursos más potentes en computación, y que el ataque por fuerza
bruta sea el más eficiente se consideran seguras claves de una longitud de 16 bytes,
unos 128 bits. Cuando decimos esto, nos referimos a sistemas de encriptado donde la
clave de encriptar y la de desencriptar son ambas secretas. Tales sistemas se llaman de
clave simétrica o privada. La característica de tales sistemas es que conociendo la clave
para encriptar, la de desencriptar o bien coincide con la de encriptar, o bien el cálculo
de la clave de desencriptar a partir de la de encriptar es sencillo. Para los sistemas de
encriptar de clave pública las claves deben ser mucho más largas para tener el mismo
nivel de seguridad. Lo que se usa al establecer una comunicación encriptada con clave
simetrice, entre dos interlocutores es generar una clave al azar para esa comunicación
concreta. El problema es que los interlocutores deben ponerse de acuerdo en la clave
sin revelarla a un posible espía.

Imagen 1: Tiempos de búsqueda sistemática (a un millón de tentativas por segundo)


DES (Estándar de Cifrado de Datos)

El 15 de mayo de 1973, el NBS (National Bureau of Standars, en castellano: Agencia


Nacional de Normalización) hoy en día denominada NIST (National Institute of Standars
and Technology, en castellano: Instituto Nacional de Normalización y Tecnología), hizo
un llamamiento en el Federal Register (el equivalente en España del Boletín Oficial del
Estado) para la creación de un algoritmo de cifrado que cumpliera 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

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). El DES fue aprobado por el NBS en 1978. El DES fue
estandarizado por el ANSI (American National Standard Institute, en castellano: Instituto
Nacional Americano de Normalización) bajo el nombre de ANSI X3.92, más conocido
como DEA (Data Encrytion Algorithm, en castellano: Algoritmo de Cifrado de Datos).

 Principio de funcionamiento del DES

Se trata de un sistema de cifrado simétrico por bloques de 64 bits, de los que 8 bits (un
byte) se utilizan como control de paridad (para la verificación de la integridad de la
clave). Cada uno de los bits de la clave de paridad (1 cada 8 bits) se utiliza para controlar
uno de los bytes de la clave por paridad impar, es decir, que cada uno de los bits de
paridad se ajusta para que tenga un número impar de "1" dentro del byte al que
pertenece. Por lo tanto, la clave tiene una longitud "útil" de 56 bits, es decir, realmente
sólo se utilizan 56 bits en el algoritmo.

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). La combinación entre sustituciones
y permutaciones se llama cifrado del producto.

La clave es codificada en 64 bits y se compone de 16 bloques de 4 bits, generalmente


anotadas dek1 a k16. Dado que "solamente" 56 bits sirven para el cifrado, ¡puede haber
hasta 256 (o 7.2*1016) claves diferentes!

 El algoritmo DES

Las partes principales del algoritmo son las siguientes:

fraccionamiento del texto en bloques de 64 bits (8 bytes),

permutación inicial de los bloques,

partición de los bloques en dos partes: izquierda y derecha, denominadas I y D


respectivamente,
fases de permutación y de sustitución repetidas 16 veces (denominadas rondas),

reconexión de las partes izquierda y derecha, seguida de la permutación inicial inversa.

Imagen 2

 Fraccionamiento del texto

Permutación inicial

En primer lugar, cada bit de un bloque está sujeto a una permutación inicial, que puede
representarse mediante la siguiente matriz de permutación inicial (anotada como PI):
Tabla 1

Esta tabla de permutación muestra, al leerla de izquierda a derecha y de arriba a abajo,


que el 58obit de un bloque de 64 bits está en la primera posición, el 50o está en la
segunda posición y así sucesivamente.

División en bloques de 32 bits

Una vez que la permutación inicial se completó, el bloque de 64 bits se divide en dos
bloques de 32 bits denominados I y D respectivamente (para izquierda y derecha, siendo
la anotación en anglo-sajón L y R por Left y Right). El estado inicial de estos dos bloques
se denomina L0 y R0:

Tabla 2

Es interesante observar que L0 contiene todos los bits que se encuentran en posición par
en el mensaje inicial, mientas que R0 contiene los bits en posición impar.

Rondas

Los bloques Ln y Rn están sujetos a un conjunto de transformaciones iterativas


denominadas rondas, que se muestran en este esquema y que detallamos a
continuación:
Imagen 3

3DES

En criptografía el Triple DES se llama al algoritmo que hace triple cifrado del DES.
También es conocido como TDES o 3DES, fue desarrollado por IBM en 1998.

TDES (en castellano: Triple Estándar de Cifrado de Datos), una alternativa para DES.

Las partes principales del algoritmo DES son las siguientes:

1. Fraccionamiento del texto en bloques de 64 bits (8 bytes)

2. Permutación inicial de los bloques,

3. Partición de los bloques en dos partes: izquierda y derecha, denominadas I y D


respectivamente,

4. Fases de permutación y de sustitución repetidas 16 veces (denominadas rondas),

5. Reconexión de las partes izquierda y derecha, seguida de la permutación inicial


inversa.

La variante más simple del Triple DES funciona de la siguiente manera:

Imagen 4

Donde M es el mensaje a cifrar K1 y K2 y K3 las respectivas claves DES. En la variante


3TDES las tres claves son diferentes; en la variante 2TDES, la primera y tercera clave
son iguales.
El TDES permite aumentar de manera significativa la seguridad del DES, pero posee la
desventaja de requerir más recursos para el cifrado y descifrado.

Por lo general, se reconocen diversos tipos de cifrado triple DES:

DES-EEE3: Cifrado triple DES con 3 claves diferentes,

DES-EDE3: una clave diferente para cada una de las operaciones de triple DES (cifrado,
descifrado, cifrado),

DES-EEE2 y DES-EDE2: una clave diferente para la segunda operación (descifrado).

USOS:

El Triple DES está desapareciendo lentamente, siendo reemplazado por el algoritmo AES.
Sin embargo, la mayoría de las tarjetas de crédito y otros medios de pago electrónicos
tienen como estándar el algoritmo Triple DES (anteriormente usaban el DES). Por su
diseño, el DES y por lo tanto el TDES son algoritmos lentos. AES puede llegar a ser hasta
6 veces más rápido y a la fecha no se ha encontrado ninguna vulnerabilidad.
REFERENCIAS

«Introducción al cifrado mediante DES», CCM. [En línea]. Disponible en:


http://es.ccm.net/contents/130-introduccion-al-cifrado-mediante-des. [Accedido: 05-dic-
2017].
Mimi, «Algoritmo 3DES», Seguridad en Redes, 27-mar-2012. .

«Teoría de números elemental: Aritmética modular | Gaussianos». [En línea].


Disponible en: https://www.gaussianos.com/teoria-de-numeros-elemental-
aritmetica-modular/. [Accedido: 05-dic-2017].

También podría gustarte