Descargar

La utilidad de la aritmética modular en los sistemas criptográficos y en los grupos lineales modulares especiales (página 2)


Partes: 1, 2, 3

1. Profesor del departamento de física y matemática de la Universidad de los Andes de Trujillo, Venezuela

edu.rededu.redSe habla de Componentes de una matriz Modular para referirse a los elementos de la misma; esto es, a los aij ? A, si A= [ aij ] es una matriz de edu.redSe hacen claras diferencias entre los símbolos Zn y edu.redel primer símbolo es el anillo de enteros modulares y el segundo símbolo es el anillo de matrices modulares de tamaño m.

El término de Orden aquí se utiliza solo cuando se refiere al número de elementos de cualquier Grupo, es decir a la cardinalidad del Grupo. Algo semejante ocurre con la expresión Rango del Grupo General Lineal, o de cualquier grupo especial, con el que se hace alusión al Tamaño de las matrices que pertenecen a los grupos especiales.

En el presente Trabajo se denota el Grupo General Lineal de rango m >1

sobre el anillo Zn de los enteros modulares con modulo n, a través de la siguiente expresión: GL (m, Zn). Este Grupo Lineal Modular surge frecuentemente de ciertas aplicaciones de la teoría de enteros modulares en el estudio o creación de sistemas criptográficos tanto simétrico como de clave pública. En consecuencia de lo anterior, es que el objetivo general de este trabajo es conocer el Orden de uno de sus subgrupos, del Grupo Lineal Modular Especial, que pueda emplearse en futuros sistemas Criptográficos que usen algebra matricial modular.

CAPITULO 1

Identificación

1.1. TITULO.

Utilidad de la Aritmética Modular en los Sistemas Criptográficos y en los Grupos Lineales Modulares Especiales

1.2. LUGAR DONDE SE DESARROLLARA EL PROYECTO.

El proyecto se desarrollará, en la Universidad de Cartagena de Indias.

1.3. RESPONSABLE.

Eleuterio Romero Peña.

1.4. PRESENTADO

A la Facultad de Ciencias Exactas y Naturales

Especialidad Matemáticas Avanzada de la Universidad de Cartagena

CAPITULO.2

Descripción del proyecto

2.1 Problema de Investigación.

El proyecto se centra en la necesidad de identificar la Utilidad de la Aritmética Modular en los Sistemas Criptográficos que usen algebra matricial modular o ecuaciones de congruencia lineal. Del mismo modo en la aplicación en los Grupos Lineales Modulares Especiales de rango m con entrada en Zn. Con lo que se satisfaría el problema de algunos estudiantes de estructuras algebraicas del programa de matemáticas y de la especialidad de matemáticas avanzada de la universidad de Cartagena en ignorar la utilidad de la aritmética modular en los sistemas criptográficos y en los grupos lineales modulares especiales.

De acuerdo con el contexto anterior, se proponen las siguientes preguntas de investigación:

1. ¿Qué utilidad tiene la aritmética modular en los sistemas criptográficos que usan en sus algoritmos ecuaciones de congruencia lineal y el algebra matricial modular?

2. ¿Qué utilidad tiene la aritmética modular en los grupos lineales modulares especiales?

3. ¿Cómo viene expresado el orden del grupo lineal modular especial?

2.2. Justificación de la Investigación

Los resultados de esta investigación nos proporciona una útil herramienta de la utilidad de la aritmética modular, en la búsqueda del orden de un subgrupo del GL(m,Zn) y de un modelo matemático para la seguridad de la información en una sociedad que en el presente siglo se caracteriza por la accesibilidad a la información para todas las personas que dispongan de los medios para acceder a ella. En una sociedad donde la codificación y decodificación de la información esta al alcance de las mayorías de las personas contemporáneas.

2.3. Objetivos Específicos

  • Conocer la utilidad de la aritmética modular en los sistemas criptográficos y en los grupos lineales modulares especiales

  • Conocer el Orden del Grupo Lineal Modular Especial de rango m sobre Zn, a partir del Orden del Grupo General Lineal de rango m con entrada en Zn, que pudieran emplearse en futuras Sistemas Criptográficos que usen el Algebra Matricial Modular

2.4. Objetivo General

Conocer la utilidad de la aritmética modular en los sistemas criptográficos y en los grupos lineales modulares especiales

2.5. Metodología

Para comprobar los objetivos específicos de este trabajo, utilizaremos el Método Lógico Deductivo, en el siguiente orden:.

  • Utilizaremos técnicas de reducción del problema al caso primo y empleando la descomposición prima de n

  • Aplicaremos el Orden del Grupo General Lineal Modular.

  • Demostraremos el epimorfismo de una aplicación y consideraremos su Ker

  • Aplicaremos el primer teorema de isomorfismo de grupos, la función de Euler y algunos conceptos relacionados con la aritmética modular

CAPITULO 3

Fundamentación teórica

"Nada hay tan oculto

que no acabe por saberse"

Pasaje Bíblico

3.1. Fundamentos Teóricos de Criptografía

3.1.1. Criptografía

Consultando en la Web (es.wikipedia.org/wiki/Criptografía – 45k) se encontró que Etimológicamente viene del griego "Kriptos" que significa ocultar y "Graphos", que significa escritura. En consecuencia, Criptografía es el arte de escribir con clave secreta o de un modo enigmático. Es la ciencia que estudia como mantener la seguridad en la información, a través de códigos y claves. Luego entonces el Objetivo de la criptografía no es ocultar la existencia de un mensaje, sino ocultar su significado a través de un proceso que se le llama Cifrado.

La ventaja de la criptografía es que si el enemigo intercepta el mensaje cifrado este le es ininteligible.

¿Cómo funciona la criptografía? "Esta se basa en que el emisor emite un texto plano, que con la ayuda de una clave, crea un texto cifrado o un criptograma", Harvey Triana (2008). Este texto cifrado, por medio del canal de comunicación establecido, llega al destinatario o descifrador que lo convierte, apoyándose en la misma clave del emisor o en otra clave, según sea el tipo de criptosistema que esté utilizando de llave Pública o privada, en el texto plano.

Conviene hacer notar que la Criptografía sólo hace referencia al uso de códigos, por lo que no engloba a las técnicas que se usan para romper dichos códigos, conocidas en su conjunto como Criptoanálisis y que definiremos más adelante. En cualquier caso ambas disciplinas están íntimamente ligadas; no olvidar que cuando se diseña un sistema para cifrar información, hay que tener muy presente su posible criptoanálisis, ya que en caso contrario podría llevarse desagradables sorpresas.

3.1.2. Esteganografia

A diferencia de la Criptografía, la Esteganografia, "Stéganos" (Encubrir) y "Grafos" (Escribir), es ocultar la información dentro de otra. La información contenida se le llama Etimógrafa2 (Del gr. etymon, sentido verdadero. Y del gr. grapho que significa escribir. Luego entonces Etimografia es parte de la Estenografía que se dedica de la información verdadera que se quiere ocultar) y la conteniente se le llama Hidégrafa3 (Del griego hide, que significa señuelo, camuflar, mimetizar y grapho que significa escribir. Luego entonces, La hidegrafia es la parte de la Esteganografia que se encarga en mimetizar la información verdadera de modo que esta pase desapercibida).

La diferencia entre Criptografía y Esteganografia, es que la primera no esconde la información sino el mensaje de la misma, mientras la Esteganografia esconde la información y no el contenido de esta

_____________________________________________________________________

2 y 3. Teorías construidas como extensión semántica, por Eleuterio Romero Peña

3.1.3. Texto plano o Claro

En la terminología de la criptografía, la información original que debe protegerse se denomina texto plano o Claro.

3.1.4. Cifrado y Descifrado

El cifrado es el proceso de convertir el texto plano en un galimatías, denominado texto cifrado o criptograma. En otras palabras, Cifrar es escribir en clave una información original. O es el proceso de de convertir un texto legible en uno ilegible a través de códigos o claves. Las dos técnicas más sencillas de cifrado, en la criptografía clásica, son la sustitución (que supone el cambio de significado de los elementos básicos del mensaje – las letras, los dígitos o los símbolos-) y la transposición (que supone una reordenación de los mismos).

El Descifrado es el proceso inverso que recupera el texto plano a partir del criptograma y la clave. En palabras castizas, es revelar lo que está escrito en clave. O es el proceso de convertir un texto ilegible en uno legible a través de códigos o claves.

3.1.5. Texto cifrado o codificado

Es el texto que resulta de cifrar o codificar la información original o el texto plano, no siempre con el fin de ser remitido

3.1.6. Criptograma

Es el texto cifrado para ser remitido

3.1.7. Criptologia

"La criptología (del griego krypto y logos, estudio de lo oculto, lo escondido) es la ciencia que trata los problemas teóricos relacionados con la seguridad en el intercambio de mensajes en clave entre un emisor y un receptor a través de un canal de comunicaciones", afirma Inés Otilia Fernández (2007), diccionario de investigación Holistica 8a Edición, Fundación Sypal, Caracas pp 204. "Es la ciencia que estudia la forma de Cifrar mensajes de forma que solamente puedan ser leídos por las personas a las que van dirigidos", según definición de Manuel José Lucena López (Criptografía y Seguridad en Computadores. Dpto. de Informática Universidad de Jaén. Edición virtual. España. 2001. http://www.kriptopolis.org. Capítulo 2-Página 24. ). Este autor para su mejor estudio divide la criptología en dos grandes ramas. Así:

  • La criptografía: Ocupada del cifrado de mensajes en clave y del diseño de criptosistemas (Un criptosistema es el conjunto de procedimientos que garantizan la seguridad de la información y utilizan técnicas criptográficas. El término en inglés es cipher. El elemento fundamental de un Criptosistema es la "llave" o clave. Más adelante se profundiza este concepto (* )).

  • El criptoanálisis o anales criptográficos: Se dijo arriba que trata de descifrar los mensajes en clave, rompiendo así el criptosistema. Se encarga de "romper" con las técnicas de cifrado (descifrar el mensaje sin ser el verdadero destinatario). Como área de la matemática, son los métodos para romper los criptogramas por análisis y deducción sin tener conocimiento previo de la clave.

De forma un poco genérica se dice que la labor de la criptografía es convertir un texto Plano en uno cifrado, mientras que la labor del criptoanálisis es conseguir el texto original a partir del criptograma sin poseer las claves necesarias para ello. En resumen, criptologia es el estudio de la criptografía y el criptoanálisis

3.1.8. Fuerza Bruta

Es el criptoanálisis que se hace probando todas las claves posibles

3.1.9. Criptosistema o Sistemas Criptográficos

Son los sistemas para Cifrar y Descifrar informaciones a través de algoritmos criptográficos y claves

3.1.10. Definición Matemática de Criptosistema

Asumiendo el compromiso hecho en (* ( sobre Criptosistemas o sistemas de cifrado, matemáticamente puede definirse como una quíntupla formada por (M, C, K, D, E), donde:

  • M = {m1, m2, m3, ,,,,,, mn }

Es el conjunto de todos los mensajes sin cifrar. Es el espacio de mensajes construidos con los textos en claro que se pueden formar con el alfabeto. Es el conjunto finito de posibles textos planos u originales.

Cada texto mi e M (i variando desde 1 hasta n) se representa por un formato numérico en el que se transforma el texto plano o sin cifrar mi por un medio previamente definido. Por ejemplo: asignándole a cada letra de nuestro alfabeto el número de su posición. A = 1, B = 2, C = 3, D=4, E=5, F=6………

2. edu.red

Representa el conjunto de todos los posibles mensajes cifrados, o criptogramas. Es el conjunto finito de posibles textos cifrados

3. edu.red

Representa el conjunto de claves o llaves que se pueden emplear en el criptosistema. Es el conjunto finito de posibles claves

4. edu.red

Es el conjunto de aplicaciones de Cifrado, que para cada k e K, aplica a cada elemento m e M para obtener un elemento c e C. Esto es: Para cada clave ki i=1,2,…., n ek envían cada mensaje sin cifrar en el mensaje cifrado

edu.red

La última definición de E nos dice que la propiedad básica de toda aplicación de Cifrado es que sea biyectiva en razón de:

a) No pueden haber dos letras distintas que se conviertan en la misma. La

traslación de Cesar tiene claramente esa propiedad. Sin embargo la

función f(x)(x2 en Z27, por ejemplo, sería muy mala función de encofrar

porque f (6)(62(9(mod27) y f (21)(212(9(mod27). Entonces las letras "F" y "T" de nuestro alfabeto se encifrarian ambas como "I" creando ambigüedad.

b) Porque siendo f una aplicación biyectiva, al aplicar f a m puede enviar c = f (m) al destinatario y este para poderlo leer debe aplicarle la función inversa de f a c obteniendo m, f-1 (c) = m, donde se puede recuperar el texto original.

5. D = {d1, d, d3…..dk ….dn }

Es el conjunto de aplicaciones de Descifrado, análogo a E. Es decir,

edu.red

Las aplicaciones dk envían cada mensaje cifrado en el mensaje sin cifrar correspondiente según la clave k e K. Transforma un elemento c e C en un elemento m e M. Esto es,

edu.red

El objetivo del Cifrado y del posterior Descifrado de un mensaje es obtener el texto original: dk (ek (m)) (m condición matemática que debe cumplir todo criptosistema.

De la definición de criptosistema podemos inferir algunas consecuencias que aun siendo obvias, conviene tratar:

1. Para cada mensaje m e M y para cada k e K existe un único mensaje cifrado c e C tal que ek (m) (c

2. El mismo resultado para dk

3. La aplicación ek es biyectiva para cada k e K

3.1.11. Clasificación de los Criptosistemas

Es importante aclarar que no existe un solo criptosistema o un solo sistema para cifrar y Descifrar una información. "La clasificación de los Criptosistemas se hace en función de la disponibilidad de la clase de Cifrado o Descifrado que se tengan", afirman (Fletes & Reyes, 2004) y así lo explican en el siguiente mapa conceptual que reproducimos sin ninguna modificación.

edu.red

Este trabajo solo habla de los sistemas modernos.

En Los criptosistemas Simétricos o de clave Privada, su simetría se refiere a que el emisor y el receptor utilizan la misma clave para cifrar y descifrar. Mientras que en Los criptosistemas Asimétricos o de clave Pública, se utilizan dos claves una publica para cifrar y otra privada para descifrar

3.1.11.1. Criptosistemas simétricos o de clave privada.

Son aquellos que emplean una misma clave K tanto para cifrar como para descifrar. Presentan el inconveniente de que para ser empleados en comunicaciones la clave k debe estar en posesión tanto en el emisor como en el receptor, lo cual genera la siguiente inquietud: ¿Cómo transmitirles a los participantes en la comunicación esa clave de forma segura?. Los esquemas del documento "criptografía" (www.matem.unam.mx/~rajsbaum/…/presentacion_seguridad_1.pdf) que a continuación se reproducen sin ninguna modificación, nos aclaran esas dudas:

Esquema de Criptosistema Simétrico

edu.red

3.1.11.2. Criptosistemas asimétricos o de clave pública,

Uno de los pilares que cimienta la Criptografía de Clave Publica se sustenta en el problema de Factorización de Enteros que consiste en encontrar para un n(N, el conjunto de números primos p1,p2,…,pk tales que n( p1p2……pk. Emplea una doble clave (kp, KP). Donde kp se la conoce como clave privada y KP se la conoce como clave pública. Una de ellas sirve para la aplicación o función f de cifrado y la otra para la aplicación g de descifrado. En muchos casos son intercambiables, esto es, si emplea una para cifrar la otra sirve para descifrar y viceversa. Estos criptosistemas deben garantizar además que el conocimiento de la clave pública KP no permita calcular la clave privada kp. Ofrecen un abanico superior de posibilidades, pudiendo emplearse para establecer comunicaciones seguras por canales inseguros puesto que únicamente viaja por el canal la clave pública, que sólo sirve para cifrar, o para llevar a cabo autenticaciones. Sin la clave privada (que no es deducible a partir de la clave pública) un observador no autorizado del canal de comunicación será incapaz de descifrar el mensaje cifrado.

Esquema de Criptosistema Asimétrico o de llave pública

edu.red

3.1.12. Algoritmos Criptográficos

Son métodos matemáticos para cifrar y descifrar una información. En razón de esto, se dice que la criptografía es un área de la matemática

3.1.13. Algunos Algoritmos Criptográficos de Criptosistemas Simétricos

El esquema básico de los algoritmos de clave simétrica es:

MENSAJE + CLAVE = CÓDIGO (encriptación)

CÓDIGO + CLAVE = MENSAJE (desencriptación)

Explicamos la teoría de algunos de los principales algoritmos criptográficos simétricos:

a).Algoritmo Cesar

El algoritmo César es uno de los más antiguos de los cifrados de clave

Privada. Matemáticamente para trabajar con este cifrado se toma el alfabeto como el módulo. Es una de las técnicas de codificación más simples y más usadas. Es un tipo de cifrado por sustitución en el que una letra en el texto original es reemplazada por otra letra que se encuentra en una posición que está un número determinado de espacios más adelante en el alfabeto. El caracter cifrado se obtiene avanzando 'k' pasos en el alfabeto a partir del caracter original. Obviamente 'k' es la clave.

Ejemplo

Con k=2, si el texto original es "ABCDE" se codifica como "CDEFG"

Ejemplo.

Para K(3 una B en el texto original se convierte en una E en el texto

Codificado. Según se puede apreciar en el siguiente esquema publicado

en la Web (es.wikipedia.org/wiki/Cifrado_César -)

edu.red

El algoritmo César mueve cada letra un determinado número de espacios en el alfabeto.

b).Algoritmo Hill

En 1929, Lester S. Hill, un joven matemático, publica en Nueva York un

artículo en el que propone la utilización del álgebra y, en particular de las

Matrices, en la operación de cifrado. La importancia del método de Cifrado propuesto por Hill descansa en la utilización de Transformaciones Lineales representadas por Matrices operando en módulo 26 -las letras del alfabeto inglés.

c).Algoritmo Vigenère

El cifrado Vigenère se asemeja mucho al Cifrado de Cesar, pero su diferencia radica en que el primero utiliza una clave más larga. El algoritmo Vigenére se ha tratado de mejorar en muchas ocasiones, una mejora sobre el cifrado de Vigenère fue introducida por el sistema de Vernam, utilizando una clave aleatoria de longitud igual a la del mensaje; la confianza en este nuevo criptosistema hizo que se utilizase en las comunciaciones confidenciales entre la Casa Blanca y el Kremlin, hasta, por lo menos, el año 1987.

d).Algoritmo DES

Finalmente se analiza el sistema de Cifrado por clave privada más difundida y ampliamente utilizada en el mundo conocido como 'DES' (Data Encription standard). Cuando fue creado el algoritmo se suponía tan fuerte que inmediatamente se propuso como el Estándar Federal para cifrar datos. DES fue durante mucho tiempo un buen algoritmo de encriptación para la mayoría de las aplicaciones comerciales. El gobierno de Estados Unidos de América, sin embargo nunca confió en el DES para proteger sus datos clasificados debido a que la longitud de la clave del DES era de solamente de 50 bits suficientemente cortas para ser vulnerable a un ataque por fuerza bruta.

3.1.14. Algunos algoritmos Criptográficos Asimétricos

Explicamos la teoría de algunos de los principales algoritmos criptográficos Asimétricos:

a).Algoritmo RSA

Debe su nombre a sus tres inventores: Los matemáticos, Ronald Rivest, Adi Shamir y Leonard Adleman, que publicaron por primera vez el método en 1977. Se basa en la dificultad que presenta la factorización de números enteros de gran tamaño. Este sistema emplea la doble clave (kp, KP). Las claves pública y privada se calculan a partir de un número que se obtiene como producto de dos primos grandes. Un atacante que quiera recuperar un texto claro a partir del criptograma y de la clave pública, tiene que enfrentarse a dicho problema de factorización.

b).Algoritmo Diffie-Hellman

Primer algoritmo de clave pública, enunciado por W. Diffie y M. Hellman (1976), basa su seguridad en la dificultad de Calcular logaritmos discretos en un campo finito. Se emplea para distribución de claves pero no para cifrar y descifrar.

c).Algoritmo de Curva Elíptica (CCE)

El cual es una variante de la criptografía asimétrica o de clave pública basada en las matemáticas de las curvas elípticas. Sus autores argumentan que la CCE puede ser más rápida y usar claves más cortas que los métodos antiguos — como RSA— al tiempo que proporcionan un nivel de seguridad equivalente.

d).Algoritmo de Cayley-Purser

Algoritmo ideado por Sarah Flannery (1998) se basa en la no conmutatividad del producto de dos matrices de 2×2 que se toman al azar del GL (2, Zn). En el caso particular de este algoritmo, la autora requirió conocer el orden de GL (2, Zn).

En el algoritmo, Sarah utiliza la matriz de multiplicación modular en lugar de exponenciación modular, y es mucho más rápido que otros algoritmos de clave pública. Por ejemplo, alrededor de 20 veces más rápido que el cifrado RSA de 200 dígitos módulo.

3.1.15. Algoritmos Criptográficos Híbridos.

Es el sistema de cifrado que usa tanto los sistemas de clave simétrica como el de clave asimétrica. Funciona mediante el cifrado de clave pública para compartir una clave para el cifrado simétrico. En cada mensaje, la clave simétrica utilizada es diferente por lo que si un atacante pudiera descubrir la clave simétrica, solo le valdría para ese mensaje y no para los restantes. Como GnuPG y PGP (GnuPG y PGP son programas, para cifrar mensajes y documentos) usan sistemas de cifrado híbridos. La clave simétrica es cifrada con la clave pública, y el mensaje saliente es cifrado con la clave simétrica, todo combinado automáticamente en un sólo paquete. El destinatario usa su clave privada para descifrar la clave simétrica y acto seguido usa la clave simétrica para descifrar el mensaje.

3.2. Fundamentación Teórica de Aritmética Modular

"La fuga4, es lógica pura al utilizar

la Aritmética Modular"

Friderich Chopin

3.2.1. Definición de Aritmética 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. Algunas veces se le llama, sugerentemente, 'aritmética del reloj', ya que los números 'dan la vuelta' tras alcanzar cierto valor (el módulo). Por ejemplo, cuando el módulo es 12, entonces cualesquiera dos números que divididos por doce den el mismo resto son equivalentes (o "congruentes") uno con otro. Los números

…, -34, -22, -10, 2, 14, 26,…

son todos "congruentes módulo 12" unos con otros, ya que cada uno deja el mismo resto (2) cuando los dividimos por 12. La colección de todos esos números es una clase de congruencia.

La Aritmética Modular Comprende el estudio de las clases de restos (residuos) de los enteros al dividirse por un entero positivo n llamado modulo n.

edu.red4. Fuga es una forma de construcción musical, con un procedimiento de creación y estructura muy determinadas

3.2.2. Criterio de congruencia

Dado a, b (Z y un n(Z, n(0 fijo. Diremos que a es congruente con b modulo n, o que están en la relación de congruencia modulo n, y se indica por a ( b (mod n) si y solo si n / (a-b). Las tres definiciones siguientes son equivalentes:

a ( b (mod n) si y solo si

  • n / (a-b)

  • a y b dejan el mismo residuo al dividirse entre n.

  • a= nq (b oedu.red

A n se le llama modulo de la congruencia, que no es más que el número entero positivo que tiene el papel de divisor en la definición de congruencia .

3.2.3. Definición de Enteros Modulares

Bien se sabe que la relación de congruencia modulo n es una relación de equivalencia para toda n(0. En consecuencia de ello, genera o induce una partición en Z en clases de equivalencias: Los subconjuntos de Z o la clase de equivalencia cuyos elementos dan el mismo residuo 0 al dividirlos entre n, los subconjuntos de Z o la clase de equivalencia cuyos elementos dan el mismo residuo 1 al dividirlos entre n, hasta los subconjuntos de Z o la clase de equivalencia cuyos elementos dan el mismo residuo n-1 al dividirlos entre n. A cada uno de estos enteros que están en la misma clase de equivalencia o que dejan el mismo residuo al dividirse entre el modulo n se les llaman Enteros Modulares o Residuales y a los subconjuntos de Z o a las clases de equivalencia se

Les llaman Clases residuales modulo n o de Equivalencia modulo n

Y se designa por [c]n o simplemente, [c] cuando no hay duda sobre el

modulo. Luego entonces a los conjuntos de la forma

edu.red

Al c ( Z se le llama representante de la clase [c]n. Por antonomasia al símbolo [c]n se le llama clase residual de c modulo n.

Como c mod (n) es el residuo r al dividir c entre n, entonces sin pérdida de generalidad se toma a r como el elemento representativo de la clase residual modulo n. Por lo tanto, para todo c ( Z, [c]n( [r]n, de lo que se infiere que el conjunto de todas las clases residuales modulo n es finito, tiene n elementos; se denota como Zn y viene dado por:

edu.red

edu.redEntonces Zn es un conjunto cociente de Z respecto a la relación de congruencia modulo n. En términos generales se afirma que

a ( b (mod n) si y solo si [a]n ([b]n

Por comodidad tipográfica en este trabajo se escriben los elementos de Zn con un segmento arriba del entero y no entre los brackets o paréntesis cuadrados.

 

edu.red

3.2.4.Aritmetica en Zn

La congruencia modulo n es compatible con la suma y el producto de Z, es decir, si a = b (mod n) y x = y (mod n) entonces se tiene que

a(x = b(y (modn) y ax = by (modn).

Con base en la compatibilidad de la congruencia con la suma y el producto de Z, son definibles en Zn dos operaciones binarias internas:

edu.red

llamadas suma y producto respectivamente, y están definidas de la siguiente manera, para cualesquiera a, b( Z:

edu.red

El primer mas y el primer punto son operaciones binarias en Zn y el segundo mas como el segundo punto son operaciones binarias en Z

Propiedades de la suma y la multiplicación en Zn

1. Son operaciones cerradas, conmutativas y asociativas

2. Cumplen la propiedad distributiva

3. Tienen elemento neutro: [0] es el elemento neutro para

(Zn, +) y [1] es el elemento neutro para (Zn,.)

4. Elemento inverso

En el caso de (Zn,+) existe el elemento opuesto o inverso aditivo: -[a] = [-a].

Para el caso de (Zn,.) en general no todos los elementos en Zn tienen inverso multiplicativo. Para que en (Zn,.) exista el elemento inverso de un elemento [a]n se requiere que el (n,a)=1. Esto es, que a y n sean primos relativos o coprimos.

El inverso multiplicativo de [a] en Zn, se denota como [a]-1.

5. Propiedad cancelativa

Para (Zn.), si [a]. [c] = [b]. [c] en Zn, entonces [a] = [b] en Z(n/mcd (n,c))

  • Un caso especial es cuando (n,c)=1 , ya que entonces se cumple la propiedad cancelativa para el producto en Zn: si [a][c] = [b][c] en Zn ? [a] = [b] en Zn

  • Si n es primo, (Zn, .) tendrá la propiedad cancelativa del producto para todo c

3.2.5. Elementos Invertibles o unidades de Zn.

Se dice que [a] es invertible en Zn respecto a la operación producto si y solo si existe un [b] en Zn tal que [a] [b]= [1]. Ese elemento [b] es el inverso de [a] en Zn, y se dijo que se denota como [a]-1.

La condición necesaria y suficiente para que [a]n sea invertible en Zn es que el ( a, n( ( 1. Es decir, la clase residual [a]n es in vertible en Zn si todos sus elementos son coprimos con n. Lo que se sintetiza en el siguiente teorema que se enuncia sin demostración:

Teorema 1.2.3. Dado a, n ( N, tales que el (a, n) ( 1 entonces a tiene inverso modular n

¿Qué pasa si n es primo?. La respuesta nos las da el siguiente corolario que se enuncia solo con el fin de conocer la respuesta a la pregunta formulada:

Corolario. Si n es primo, el grupo finito que esta n genera tiene estructura de Grupo.

Pues todos sus elementos tienen inverso excepto el cero.

Continuando con el concepto del inverso modular, se denota por

U (Zn) al conjunto de todos los elementos invertibles o unidades de Zn. En consecuencia, U (Zn) = {[a]( Zn: ( a, n(=1}. (1)

Vale la pena señalar que cuando n es primo, todos los enteros modulares

U (Zn) ( Zn ( {[0]n}( ([1]n, [2]n,…, [n-1]n ( son invertibles en Zn.

Al conjunto ([1]n, [2]n,…, [n-1]n ( se le llama Conjunto Reducido de Residuos Modulo n. Su orden viene dado por la siguiente expresión:

edu.red

Voy a exponer en qué consiste la función ( de Euler, por tener mucha importancia en la aritmética modular:

Se define la función f de Euler con la función f: N ? N que a cada n le hace corresponder el número de enteros x (1

edu.red

edu.red

Propiedades y cálculo de la función

Se sigue de la definición

1. Que (( 1 (= 1, y que (( 0 ( no se define

  • (( p (= (p –1). Si p es primo

  • Si n se puede descomponer como n(pk, p primo y k natural. Entonces (( pk (= n (1 –p-1). si p es primo y k es un número natural.

  • ( es una función multiplicativa condicional: si m y n son primos entre sí, entonces (( m.n (= ((m)((n) .

edu.red

U (Zn) es un grupo multiplicativo de los enteros modulares distintos de [0]n, en otras palabras es el grupo de unidades de Zn.

3.2.6. Matrices con entradas en Zn

Son matrices cuyos componentes son los enteros modulares. Pero antes de desarrollar esta teoría veamos un concepto importante de matriz en un campo cualquiera.

3.2.7. Matrices Cuadradas

Una matriz A es cuadrada, si tiene igual número de filas que de columnas. Es decir, si es de tamaño m x m. Y para este caso, se dice simplemente que es de tamaño m.

3.2.8. Matrices Regulares

Una matriz A de tamaño m se dice que es Invertible o Regular si existe una matriz B también de tamaño m tal que AB = BA = In donde In es la matriz identidad de tamaño m. Una matriz cuadrada que posee inversa se dice que es inversibles o regular y su determinante es distinto de cero.

3.2.9. Matrices de Tamaño m con entrada en Zn

En Zn pueden definirse matrices de tamaño m x q o en su defecto de tamaño m; pero para efecto de cumplir con la finalidad de este trabajo se habla únicamente de matrices de tamaño m con entrada o con componentes en Zn: De manera que una matriz A de tamaño m con entrada en Zn, o lo que es lo mismo una matriz modular de tamaño m, es aquella cuyos componentes son representaciones de las clases residuales modulo n:

edu.red

En el álgebra de este tipo de matrices, la suma y la multiplicación son las usuales y la suma y multiplicación de sus componentes son las modulares o las definidas en Zn. Para estar en contexto con los objetivos de este trabajo, las matrices de las que se hace alusión en edu.redson matrices modulares cuadradas de tamaño m, además regulares.

Ejemplos de este tipo de Matrices en Z2

edu.red

Ejemplos de Operaciones Matriciales con componentes en Z2

edu.red

Entonces

edu.red

Se observa que la suma y la multiplicación de matrices modulares son Cerradas.

En razón que el conjunto de Matrices Regulares de tamaño m con entrada en Zn forman un Grupo con las operaciones de grupo dada por la multiplicación usual de matrices, entonces a este grupo de matrices se le suele llamar Grupo Lineal General de rango m con entrada en Zn, que se denota así: GL (m, Z n).

3.2.10. Definición Formal de GL (m, Z n)

Como se recuerda, el Grupo Lineal General de rango m sobre Z n, es el Grupo de matrices invertibles o regulares de tamaño m con entradas en Zn y con la operación de Grupo, obviamente, por la multiplicación usual de matrices. Es el grupo multiplicativo de las matrices mxm con entradas en los Enteros modulares y determinante distinto de [0]. Esta misma definición en forma de conjunto es:

edu.red

La anterior definición es equivalente a las siguientes:

edu.red

3.2.11. Orden del GL (m, Zn)

Sea Zn un campo finito de orden n, entonces el GL (m; Zn) es un grupo finito, con el siguiente orden:

edu.red

El orden de GL (m; Zn) puede ser demostrado, pero aquí simplemente se da la idea que su demostración se hace teniendo en cuenta que las columnas de las matrices de GL (m; Zn) es una base para edu.red

Contando las columnas de la matriz, la primera columna puede ser todo menos la columna cero; la segunda columna puede ser todo menos los múltiplos de la primera columna, etc. De ahí que el orden de GL (m; Zn) sea el que se enuncia arriba.

Algunos subgrupos de GL (m; Zn), son: el grupo lineal modular especial

SL (m; Zn), el grupo modular ortogonal O(m; Zn ), el grupo modular

Ortogonal especial SO (m; Zn) y el grupo modular simpléctico

Sp(2m; Zn ). Que para efecto de los objetivos de este trabajo solo calcularemos el orden de grupo lineal especial, SL (m; Zn),

3.2.12. Grupo Lineal Modular Especial

El Grupo Lineal Modular Especial de rango m sobre Zn, se denota como

SL (m. Zn), y es el Grupo de todas las matrices del GL (m, Zn), cuyo determinante es igual a 1. Es decir:

edu.red

La anterior definición es equivalente a decir lo siguiente:

 

edu.red

3.2.13. Primer Teorema de Isomorfismo de Grupos

El primer Teorema de Isomorfismo de Grupos, dice:

edu.red

3.2.14. Aplicación Grupo Determinante

La siguiente aplicación se le llama aplicación de Grupos determinante:

edu.red

3.2.15. Producto Semidirecto Interno

Por otra parte consideramos importante definir en este trabajo, por su aplicación en el desarrollo del mismo, el concepto de producto directo interno, tomado sin ninguna modificación del artículo publicado por la Universidad de Buenos Aires – Facultad de Ciencias Exactas y Naturales – Departamento de Matemática (ALGEBRA II – Práctica N_2 – Primer cuatrimestre de 2003 Pp4): Sea G un grupo y sean H y K subgrupos de G. Se dice que G es el producto Semidirecto interno de H y K si H G,

H n K = {1}. 1, es el elemento idéntico de G respecto al producto y

G = HK

CAPITULO 4

Determinación del orden del grupo lineal modular especial de rango m y con entrada en Zn

El teorema que aparece a continuación, responde una de las intencionalidades de este trabajo, el cual proporciona el Orden del Grupo Lineal Modular Especial de rango m en Zn.

4.1. Consideraciones Preliminares

Para calcular el orden de este sub grupo, además de tener en cuenta la fundamentación teórica expuesta arriba, son necesarias las siguientes consideraciones preliminares:

1. En primer lugar se considera el Orden del Grupo General Lineal Modular que arriba se dijo que viene dado por la expresión:

2. Se utiliza el resultado del primer Teorema de Isomorfismo de Grupos.

3. Se aplica la función de Euler y

4. Se hace uso del siguiente epimorfismo de Grupo determinante:

4.2. Teorema del Orden del Grupo Lineal Especial:

El orden del Grupo Lineal Modular Especial de orden m sobre Zn es:

Demostración

edu.red

edu.red

edu.red

edu.red

 

CAPITULO 5

Utilidad de la aritmética modular en los cifrados y descifrados de criptosistemas

Una de las principales aplicaciones de la aritmética modular en la criptografía es la Codificación (o Cifrar) y Decodificación (Descifrar) de mensajes. Siendo consecuente con los objetivos propuestos en este trabajo y en razón que existen muchos algoritmos de Cifrados, en este aparte solo se ve la aplicación o utilidad de la aritmética modular y del Grupo General Lineal Modular en algunos de ellos. Para tal efecto se ha dividido la utilidad de la aritmética modular en los algoritmos que hacen uso de la aritmética modular y en los algoritmos que hacen uso de matrices modulares.

5.1. Algoritmos que hacen uso de la Aritmética Modular

a). Algoritmo de Cesar

Consistía en escribir el mensaje con un alfabeto que estaba formado por las letras del alfabeto latino normal desplazadas 3 posiciones a la derecha. Con nuestro alfabeto el sistema quedaría así:

Alfabeto en claro:

A B C D E F G H I J K L M N Ñ O P Q R S T U V W X Y Z

Alfabeto cifrado:

D E F G H I J K L M N Ñ O P Q R S T U V W X Y Z A B C

Por ejemplo, si se quiere enviar el mensaje ATACARALAMANECER, lo que se escribirá realmente es DWDFDUDÑDODPHFHU.

El receptor del mensaje conocía la clave secreta de éste (es decir, que estaba escrito con un alfabeto desplazado 3 posiciones a la derecha), y podía descifrarlo fácilmente haciendo el desplazamiento inverso con cada letra del mensaje. Pero para el resto de la gente que pudiese accidentalmente llegar a ver el mensaje, el texto carecía de ningún sentido. Aparentemente es un cifrado muy débil y poco seguro, pero en la época de Julio César no era de conocimiento general la idea de ocultar el significado de un texto mediante cifrado. De hecho, que un mensaje estuviese por escrito ya era un modo de asegurar la confidencialidad frente a la mayoría de la población analfabeta de la época.

Lo que interesa del cifrado César es que es un claro ejemplo de utilización de la aritmética modular para garantizar la confidencialidad de la información mediante el cifrado o encriptación.

Matemáticamente, para cifrar o codificar podemos describir el método usado por Julio César como una función de congruencia lineal del tipo,

f3(x) ( x(3(mod27) (13)

Para un alfabeto con 27 caracteres como el español. La x indica la posición que la letra "en claro" ocupa en alfabeto. f3(x) indica la posición de la letra cifrada correspondiente a x en el alfabeto. Según esto, f3 (0)=3, y f3 (26)=2. Esto es, la A se cifra como D, y la Z como C.

Para descifrar o decodificar se emplea la función g3(x) ( x-3 (mod 27).

Para cifrar y descifrar el mensaje los comunicantes han de conocer y usar una misma clave secreta, que en este caso es el desplazamiento aplicado sobre el alfabeto (Desplazamiento=3).

En general, La codificación se puede representar usando aritmética modular, transformando las letras en números, de acuerdo al esquema

A = 0, B = 1,…, Z = 27. La codificación de la letra x con un desplazamiento n puede ser descrita matemáticamente como,

Una sustitución mono alfabeto como la del cifrado César también puede interpretarse como una transformación congruente lineal conocida criptográficamente como transformación afín: Esta no es más que una transformación T:Rn Rn, definida por T(u) =Au(v donde A es una matriz y v es un vector fijo.

Puede extenderse la transformación afín a un caso mucho más general con la siguiente congruencia lineal:

Siendo M el valor numérico de un caracter del alfabeto original, a y b dos números enteros menores que el cardinal n del alfabeto, y cumpliendo que a y n sean primos entre sí, ya que de no se r así diferentes letras del alfabeto original darían lugar a una misma letra en el alfabeto cifrado equivalente. La clave de cifrado k viene entonces dada por el par (a, b), donde a es una constante que determina el intervalo de separación entre dos letras del alfabeto cifrado cuando estas son consecutivas en el alfabeto original. Esta constante se denomina coeficiente o factor de decimación. b es una constante que determina el desplazamiento entre las letras del mensaje claro y las correspondientes en el cifrado.

b). Algoritmo Vigenére

El cifrado de Vigenère (1586) es una generalización del Cifrado Cesar, con la particularidad de que la clave toma sucesivamente diferente valores:

Mensaje: P A R I S V A U T B I E N U N E M E S S E

Clave: L O U P L O U P L O U P L O U P L O U P L

Criptograma: A O L X D J U J E P C T Y I H T X S M H P

En términos matemáticos emplea la siguiente transformación de congruente lineal de cifrado:

Yi ( Xi + Zi(mod27) (15)

con Zi = L, O, U, P, alternativamente, siendo el 27 el número de letras del alfabeto.

Se observa que a una misma letra en el texto claro le pueden corresponder diferentes letras en el texto cifrado.

c). Algoritmo RSA

Suponemos que A quiere enviar un mensaje confidencialmente a B a través de un medio de transmisión inseguro. El mensaje o el texto en claro que quiere transmitir lo representa como un entero positivo m < n, n es un natural. n(p.q. Con p y q primos distintos con más de 200 dígitos. Y estos son los TRES pasos que tiene que seguir:

1. Generación de las claves:

Recordemos que en una comunicación entre dos partes A y B, cada una de ellas generará antes de empezar su propio par de claves

(Pública, privada). Así A tendrá el par (KPA, kpA) y B su par (KPB, kpB), donde KPA y KPB son las claves públicas que son conocidas por las

dos partes, y kpA y kpB las privadas, que cada parte guarda la suya en secreto y no será conocida por la otra parte. Lo mismo para el par de claves de B.

a). Cada usuario del sistema elige una pareja de números primos p y q de 200 dígitos aproximadamente, que deben permanecer en secreto

b). Calcula n = pq y se considera como conjunto de mensajes a utilizar el grupo multiplicativo U (Zn) cuyo orden es ?(n), donde ?(n) es la función de Euler definida por ?(n) = (p-1) (q-1)

c). Elige arbitrariamente e, 0 < e < ?(n) , tal que el mcd [e, ?(n)] = 1

d).Mediante el algoritmo de Euclides extendidos se calcula el inverso modular de e, en U (Z((n(). E s decir se calcula un d en Z((n( de modo que d(e-1mod ?(n). Con 0(d ( ?(n).

e). Toma como clave pública (n, e) y como su clave privada d.

Los números p, q y ?(n( también deben permanecer en secretos

f). El remitente ahora tiene m, conoce n y e, mientras el destinatario es avisado. Transmite el mensaje cifrado c al destinatario. Los números e y d se les llaman exponente de cifrado y exponente descifrado respectivamente. El entero n se le llama modulo del criptosistema RSA

2. Cifrado de Mensajes

Si un usuario A le va a enviar un mensaje a otro usuario B, realiza las operaciones siguientes:

a). Obtiene la clave publica de B, (nB, eB)

b). Representa al mensaje m, como un entero de U (Z nB). 0(m( nB a través de una tabla: A B C D E F G H I J K L M N O P Q R S T U VW X Y Z asignándole a cada letra un numero de Zn a partir del cero. Una vez más recordamos que los números del 0 a n-1 son de Zn. Entonces, A(0 HASTA Z(25

c). A envía a B el siguiente criptograma:

En RSA los mensajes que se transmiten son elementos de

U (Zn) y si se desea transmitir un mensaje más largo, se debe dividir en

Bloques de tal manera que cada bloque sea un elemento de U (Zn)

3. Descifrado de mensaje

Para recuperar el mensaje m, el usuario B utiliza su clave privada dB mediante,

edu.red

Hay que hacer notar que con este algoritmo los mensajes que se cifran y descifran son números enteros modulares de tamaño menor que n, no son letras sueltas como en el caso de los cifrados César o Vigenére.

Ejemplo del algoritmo RSA

Utilicemos los primos p = 281 y q = 167 para ejemplificar el método RSA

1. Determinación de la Clave.

a). El usuario B, que es el receptor, elige de forma secreta dos primos

p = 281 y q = 167.

Encuentra n = 281 ( 167 = 46.927 y el orden del grupo U (Zn), esto es:

((n) = (280 ( 1). (167 ( 1) = 46.480

b). B, elige arbitrariamente el exponente de cifrado e, comprendido entre 0 y el orden del grupo U (Zn): 0 < e < 46.480.

Por ejemplo e = 39.423 y comprueba que el (e, 46.4 80) ( 1

c). Mediante el algoritmo de Euclides extendido se calcula el inverso de e en Z((n), esto es d. Y se tiene:

d ( e-1 mod ( (46.927)

d = 26.767

Las claves serán:

Clave Pública del receptor B: (e, n) ( (39.423; 46.927).

Clave Privada del receptor B: (d, n) ( (26.767; 46.927).

Por supuesto que el receptor B debe mantener en secreto los números:

p = 281, q = 167 y ((n) = 46.480

Partes: 1, 2, 3
 Página anterior Volver al principio del trabajoPágina siguiente