Está en la página 1de 20

UNIVERSIDAD NACIONAL DE SAN

AGUSTIN

ESCUELA PROFESIONAL DE INGENIERIA


DE MATERIALES

TEMA: ALGEBRA LINEAL APLICADO A LA


INGENIERIA DE SISTEMAS –
CRIPTOGRAFIA

DOCENTE:
EDGAR WILFREDO APAZA VILLALTA

INTEGRANTES:
- CHOQUE LUNA LUIS ANTONIO
- GASPAR RAMOS FAVIO
- HUARCA TACO DANIEL
- LEON VILLA SAUL
- ZAPATA VALCARCEL PABLO

2018

1
INDICE

1.-INTRODUCCIÓN..............................................................................................2

2.-CRIPTOGRAFÍA...............................................................................................3

3.-LA CRIPTOGRAFÍA CLÁSICA.........................................................................4

3.1.-Rellenos de una sola vez........................................................................4

3.2.-Sustitución...............................................................................................4

3.3.-Transposición...........................................................................................4

4.-LA CRIPTOGRAFÍA MODERNA......................................................................4

4.1.-EL CONTROL DE INTEGRIDAD..............................................................9

4.2.-EL NO REPUDIO.....................................................................................10

5.-Conclusiones..................................................................................................20

6.-bibliografía......................................................................................................20

SEGURIDAD: CRIPTOGRAFíA

2
1.-INTRODUCCIÓN
Desde el principio de la historia intercambiar mensajes cifrados ha jugado un
papel destacado. Tanto en la milicia, diplomacia y el espionaje, constituyen la
mejor defensa de las comunicaciones y datos que se transmiten, por cualquier
canal. Esto es debido a la necesidad de que algunos de los mensajes solo sean
conocidos por aquellas personas a las que van dirigidos y no puedan ser
interpretados por nadie más que por ellos.

En la era de la información como algunos llaman a la época en la que vivimos


como se puede pensar la protección de la información es uno de los retos más
fascinantes de la informática del futuro. Representada por archivos confidenciales
o mensajes que se intercambian dos o más interlocutores autenticados y cuyo
contenido en muchos casos debe mantenerse en secreto por razones
personales, empresariales, políticas o de otra índole, la información es el bien
más preciado en estos días. Por poner sólo un ejemplo sencillo y común, un
problema de gran actualidad es el asociado con el correo electrónico que se
transmite a través de redes y cuyo nivel seguridad deja mucho que desear.
Internet es un claro ejemplo de estas amenazas en tanto es un entorno abierto en
su sentido más amplio. Por lo visto en estos pocos años de existencia de la
llamada red de redes, sobran los comentarios acerca de pérdida de privacidad,
accesos no autorizados, ataques y otros delitos informáticos a nivel nacional e
internacional.

Ante tales amenazas, la única solución consiste en proteger nuestros datos


mediante el uso de técnicas criptográficas. Esto nos permitirá asegurar al menos
dos elementos básicos de la Seguridad Informática, a saber la confidencialidad o
secreto de la información y la integridad del mensaje, además de la autenticidad
del emisor.

2.-CRIPTOGRAFÍA

3
La palabra criptología proviene de las palabras griegas Krypto y Logos, y
significa estudio de lo oculto. Una rama de de la criptología es la criptografía
(Kryptos y Graphos que significa descripción), que se ocupa del cifrado de
mensajes. Esta se basa en que el emisor emite un mensaje en claro, que es
tratado mediante un cifrador con la ayuda de una clave, para crear un texto
cifrado. Este texto cifrado, por medio de un canal de comunicación establecido,
llega al descifrador que apoyándose en diversos métodos como veremos más
adelante, extrae el texto original.

Según explica Jorge Ramió Aguirre en su libro “Seguridad Informática” la


criptografía es:

“Rama inicial de las Matemáticas y en la actualidad de la Informática y la


Telemática, que hace uso de métodos y técnicas con el objeto principal
de cifrar y/o proteger un mensaje o archivo por medio de un algoritmo,
usando una o más claves. Esto da lugar a diferentes tipos de sistemas
de cifra que permiten asegurar estos cuatro aspectos de la seguridad
informática: la confidencialidad, la integridad, la disponibilidad y el no
repudio de emisor y receptor.”

Que como podemos pensar es una descripción mucho mas acertada que la
que nos podemos encontrar en muchos libros, así como la definición que nos
hace la Real Academia de la Lengua RAE.

Otra definición a tener en cuenta es el significado de criptoanálisis, el cual


es el arte y la ciencia de transgredir las claves de acceso, es decir la que se
encarga de descifrar los mensajes.

En la siguiente figura podemos observar un ejemplo de un criptosistema que


nos muestra como sería el funcionamiento esquemático, sea cual sea el canal
de transmisión, del cifrado y descifrado de un mensaje en su paso del
transmisor al receptor.

Medio
Transmisor de Receptor
M Transmisor C Transmisión C M
T M R
T
Cifrador Mensaje Descifrador
Cifrador cifrado
Fig1.- Ejemplo de criptosistema

3.-LA CRIPTOGRAFÍA CLÁSICA

4
Como ya hemos explicado con anterioridad la criptografía no surge con la
era informática, sino que ya viene desde los principios de la historia. Algunos
de los algoritmos que han sido utilizados son los siguientes:

3.1.-Rellenos de una sola vez

Cifrado: Se escoge una cadena de bits al azar como clave, y se va aplicando


sobre el texto normal con una XOR bit a bit

Descifrado: Se vuelve a aplicar XOR con la misma cadena de cifrado.


Inconvenientes: Manejo de la clave entre emisor y receptor y su sincronización.

3.2.-Sustitución

Consiste en la sustitución de parte del texto original, mediante el


desplazamiento (rígido o progresivo) o bien utilizando coordenadas de tablas.
Ejemplos de este tipo son (Cifrado de Julio Cesar, Polybus y Trithemius). La
forma de descifrar es invirtiendo el cifrado, y mantiene los mismos problemas
que el de relleno.

3.3.-Transposición

Se basa en la reordenación aplicada al texto original mediante una clave


establecida. Al igual que en el primer método el descifrado se realiza mediante
la clave y de nuevo la reordenación, presenta los mismos inconvenientes que el
primer método.

Como hemos podido observar en los algoritmos explicados anteriormente la


dificultad en el cifrado y el descifrado no es muy complejo, si tenemos en
cuenta las posibilidades que nos ofrecen hoy en día los ordenadores, la
capacidad de cómputo es muy elevada. Por otra parte hay que tenerlos en
cuenta pues sientan las bases de la criptografía y nos indican lo importante que
ha sido la información.

4.-LA CRIPTOGRAFÍA MODERNA


La criptografía moderna se basa en las mismas ideas básicas que la
criptografía tradicional, la transposición y la sustitución, pero con distinta
orientación. En la criptografía moderna el objetivo es hacer algoritmos de
cifrado complicados y rebuscados.
En la figura 1 vemos un criptosistema, los criptosistemas no son otra cosa
que una representación del sistema de criptografía que utilizamos en un
determinado sistema de seguridad.

5
Según el tratamiento del mensaje se dividen en:

• Cifrado en bloque

-DES
-El texto original se codifica en bloques de 64 bits, clave de 56
bits y 19 etapas diferentes.

-El descifrado se realiza con la misma clave y los pasos


inversos.

-El inconveniente es que puede ser descifrado probando todas


las combinaciones posibles, cosa que queda solucionada con
Doble DES (ejecuta el DES 2 veces con 3 claves distintas) y el
Triple Des (2 claves y 3 etapas).

-IDEA
-Tenemos una clave e 128 bits con 8 iteraciones.

-El descifrado se realiza aplicando el mismo algoritmo pero con


subclaves diferentes

-RSA
-Se basa en la dificultad de factorizar número grandes por parte
de los ordenadores.

-Los pasos son:

-Seleccionar 2 números primos grandes.


-Calcular n=p*q y z= (p-1)*(q-1).
-Seleccionar un número primo d con respecto a z
-Encontrar e tal que e*d = 1 ( mod z )e*d mod z = 1.

-El algoritmo es el siguiente:

-Dividimos el texto normal en bloques P, que cumplen que


0<P<n
-Para cifrar un mensaje P calculamos C = p^e( mod n).
-Para descifrar C calculamos P = C^d (mod n).

-El principal inconveniente como es de suponer es la lentitud.

-Hay que destacar que el RSA pertenece a los algoritmos con


clave pública mientras que el DES y el IDEA son algoritmos de
clave secreta.

6
• Cifrado en flujo (A5, RC4, SEAL) cifrado bit a bit

A5 Es el algoritmo de cifrado de voz. Gracias a él, la


conversación va encriptada. Se trata de un algoritmo de flujo
[stream cipher] con una clave de 64 bits. Hay dos versiones,
denominadas A5/1 y A5/2; esta última es la versión autorizada
para la exportación, y en consecuencia resulta más fácil de atacar.

Según el tipo de claves se dividen en:

• Cifrado con clave secreta o Criptosistemas simétricos

Existirá una única clave (secreta) que deben compartir emisor y


receptor. Con la misma clave se cifra y se descifra por lo que la
seguridad reside sólo en mantener dicha clave en secreto.

Medio de
Transmisión
k k
C C
M M
EK MT DK

Texto Texto
Base Criptograma Base

Con Ek ciframos el mensaje original aplicándole la clave k y con


Dk lo desciframos, aplicándole de la misma forma la clave k.
La confidencialidad y la integridad se lograrán si se protegen las
claves en el cifrado y en el descifrado. Es decir, se obtienen
simultáneamente si se protege la clave secreta.

• Cifrado con clave pública o Criptosistemas asimétricos

Cada usuario crea un par de claves, una privada para descifrar


y otra pública para cifrar, inversas dentro de un cuerpo finito. Lo
que se cifra en emisión con una clave, se descifra en recepción
con la clave inversa. La seguridad del sistema reside en la
dificultad computacional de descubrir la clave privada a partir de la
pública. Para ello, usan funciones matemáticas de un solo sentido
con trampa
El nacimiento de la criptografía asimétrica se dio al estar
buscando un modo más práctico de intercambiar las claves
simétricas. Diffie y Hellman, proponen una forma para hacer esto,
sin embargo no fue hasta que el popular método de Rivest Shamir
y Adleman RSA publicado en 1978, cuando toma forma la

7
criptografía asimétrica, su funcionamiento esta basado en la
imposibilidad computacional de factorizar números enteros
grandes.

Clave pública Medio de Clave privada


del usuario B Transmisión del usuario B

M EB MT DB M
Usuario A C C Usuario B
Criptograma

Hay que tener en cuenta que Eb y Db son inversas dentro de un


cuerpo, además se debe de tener en cuenta que se cifra con la
clave pública del destinatario, de forma que conseguimos que solo
él, al tener su clave privada pueda acceder al mensaje original.

Clave privada Medio de Clave pública


del usuario A Transmisión del usuario A

M DA MT EA M
Usuario A C C Usuario B
Criptograma
En este segundo caso podemos observar como esta basado en
el cifrado con la clave privada del emisor y al igual que antes hay
que tener en cuenta que Ea y Da son inversas dentro de un
cuerpo.

Llegados a este punto la pregunta que nos deberíamos de hacer es, que
utilizar, clave pública o privada, pues bien, como siempre depende:

- Los sistemas de clave pública son más lentos, aunque como


hemos visto es posible que no sean tan seguros. Hay
algunos tipos de ataques que les pueden afectar.

- Los sistemas de clave privada son más lentos, aunque son


más seguros, los algoritmos son más complejos y es más
difícil su traducción por otros sujetos.

• Sistemas CEE (de curvas elípticas).-

CCE es otro tipo de criptografía de clave pública es el que usa curvas


elípticas definidas en un campo finito. La diferencia que existe entre este
sistema y RSA es el problema matemático en el cual basan su seguridad. RSA
razona de la siguiente manera: te doy el número 15 y te reta a encontrar los
factores primos. El problema en el cual están basados los sistemas que usan
curvas elípticas que denotaremos como CCE es el del logaritmo discreto
elíptico, en este caso su razonamiento con números sería algo como: te doy el

8
número 15 y el 3 y te reta a encontrar cuantas veces tienes que sumar el
mismo 3 para obtener 15.
Los CCE basan su seguridad en el Problema del Logaritmo Discreto
Elíptico (PLDE), esto quiere decir que dados P, Q puntos de la curva hay que
encontrar un número entero x tal que xP = Q (xP = P+P+…+P, x veces).
Obsérvese que a diferencia del PFE (Problema de Factorización Entera) el
PLDE no maneja completamente números, lo que hace más complicado su
solución.
La creación de un protocolo con criptografía de curvas elípticas requiere
fundamentalmente una alta seguridad y una buena implementación, para el
primer punto se requiere que la elección de la curva sea adecuada,
principalmente que sea no-supersingular y que el orden del grupo de puntos
racionales tenga un factor primo de al menos 163 bits, además de que este
orden no divida al orden de un número adecuado de extensiones del campo
finito, para que no pueda ser sumergido en él, si el campo es ZP, se pide que la
curva no sea anómala o sea que no tenga p puntos racionales. Todo esto con
el fin de evitar los ataques conocidos.
Para el caso de la implementación hay que contar con buenos programas
que realicen la aritmética del campo finito, además de buenos algoritmos que
sumen puntos racionales, tanto en el caso de Zp como F2n, en este último se
toma una base polinomial que tenga el mínimo de términos por ejemplo un
trinomio para generar los elementos del campo finito esto si la implementación
es en software, y se toma una base normal si es en hardware. Además de
contemplar que las operaciones de puntos racionales pueden hacerse en el
espacio proyectivo, esto elimina el hacer divisiones, ahorrando tiempo.
Lo anterior se ve reflejado en las ventajas que ofrecen los CCE en
comparación con RSA, la principal es la longitud de la clave secreta. Se puede
mostrar que mientras en RSA se tiene que usar una clave de 1024 para ofrecer
una considerable seguridad, los CCE solo usan 163 bits para ofrecer la misma
seguridad, así también las claves RSA de 2048 son equivalentes en seguridad
a 210 de CCE. Esto se debe a que para resolver el PLDE el único algoritmo
conocido toma tiempo de ejecución totalmente exponencial, mientras que el
algoritmo que resuelve PFE incluso también el PLD en Zp toman un tiempo
subexponencial.
Otra buena noticia sobre CCE es que los elementos de los puntos
racionales pueden ser elementos de un campo finito de característica 2, es
decir pueden ser arreglos de ceros y unos de longitud finita
(01001101110010010111), en este caso es posible construir una aritmética que
optimice la rapidez y construir un circuito especial para esa aritmética, a esto se
le conoce como Base Normal Optima.
Lo anterior permite con mucho que los CCE sean idóneos para ser
implementados en donde el poder de cómputo y el espacio del circuito sea
reducido, donde sea requerida una alta velocidad de procesamiento o grandes
volúmenes de transacciones, donde el espacio de almacenamiento, la memoria
o el ancho de banda sea limitado. Lo que permite su uso en Smart Cards,
Teléfonos celulares, Fax, Organizadores de Palma, PCs, etcétera.
En la actualidad existen varios estándares que permiten el uso adecuado y
óptimo de los CCE, entre los cuales se encuentran: IEEE P1363 (Institute of
Electrical and Electronics Engineers), el ANSI X9.62, ANSI X9.63, ANSI TG-17,
ANSI X12 (American National Standards Institute), UN/EDIFACT, ISO/IEC

9
14888, ISO/IEC 9796-4, ISO/IEC 14946 (International Standards Organization),
ATM Forum (Asynchronous Transport Mode), WAP (Wireless Application
Protocol). En comercio electrónico: FSTC (Financial Services Technology
Consortion), OTP 0.9 (Open Trading Protocol), SET (Secure Electronic
Transactions). En internet IETF (The Internet Engineering Task Force), IPSec
(Internet Protocol Security Protocol)
Los CCE son el mejor candidato para reemplazar a las aplicaciones que
tienen implementado RSA, estas definen también esquemas de firma digital,
Intercambio de claves simétricas y otros.

4.1.-EL CONTROL DE INTEGRIDAD

Además en la criptografía de clave pública se ejerce también un control de


la integridad (asegurarnos de que el mensaje recibido fue el enviado por la otra
parte y no uno manipulado), para cumplir con este objetivo se utilizan funciones
de dispersión unidireccional (o hash).
La función de dispersión llamada compendio de mensaje, tiene 3
propiedades importantes:

1.-Dado un mensaje P, es fácil calcular el compendio del


mensaje MD (P).
2,-Dado un compendio MD (P), es computacionalmente
imposible encontrar P, es decir no tiene inversa.
3.-No se pueden generar dos mensajes que tengan el mismo
compendio, a menos que sean el mismo mensaje.
Los algoritmos más importantes(o más utilizados son el MD5 y el SHA), los
cuales pasamos a explicar:

• MD5
- Opera con los bits, de forma que cada bit de salida es
afectado por cada bit de entrada.
- Se coge el mensaje original y se rellena hasta conseguir una
longitud de 448 módulo 512 bits
- Se añade al mensaje la longitud original del mismo como un
entero de 46 bits.
- Se inicializa un buffer de 128 bits de tamaño a un valor fijo.
- En cada iteración cogemos un boque de 512 bits de entrada y
lo mezcla por completo con el buffer y los valores de una tabla
construida a partir de los valores de una tabla de la función seno.
- Una vez terminado el cálculo, el buffer contiene el valor del
compendio del mensaje.

• SHA
-Genera un compendio de mensaje de 160 bits, funciona igual
que el MD5, pero con un buffer de 160 bits.
- Es más seguro que el MD5, debido sobretodo a que utiliza un
mayor número de bits que el MD5, pero como es normal también
será más lento.

10
Tanto el SHA como el MD5 se han demostrado inviolables hasta el momento,
eso es lo que dicen los apuntes.

Un pequeño ejemplo:

• h (M) es el resultado de un algoritmo que con una entrada M de


cualquier tamaño, produce salida de tamaño fijo.

• El emisor A envía el mensaje M y la función hash h (M) a B, quien aplica


la misma función al mensaje M’ recibido. Si los mensajes son iguales
entonces se asegura que los hash también son iguales. No obstante, el
hecho de que los hash coincidan no significa que los mensajes M y M’
sean iguales.
• Integridad: el receptor B puede confiar en que nadie ha modificado el
mensaje durante la transmisión pues el valor h (M) en destino coincide
con el enviado por A.

4.2.-EL NO REPUDIO

El no repudio, consiste en que el receptor puede saber a ciencia cierta de


quien es el mensaje y esto lo podemos conseguir mediante la firma digital, al
ser esta única, como si fuera una firma normal en un papel, tenemos como un
acuse o un recibo, que demuestra quién ha enviado el mensaje.
Esto es un añadido a todo lo visto anteriormente que incluye más seguridad
a la transmisión de mensajes entre los usuarios. Además la firma digital puede
ser utilizada al igual que el hash tanto el los sistemas de clave pública como en
los de clave privada. Por este motivo es muy utilizada en documentos legales y
financieros.

Requisitos de la firma digital:

a) Debe ser fácil de generar.


b) Será irrevocable, no rechazable por su propietario.
c) Será única, sólo posible de generar por su propietario.
d) Será fácil de autenticar o reconocer por su propietario y los
usuarios receptores.
e) Debe depender del mensaje y del autor

Un pequeño ejemplo:

- Tenemos una clave Pública (nA, eA) y una clave Privada (dA)

- Firma : rAh(M) = h(M)dA mod nA

- A envía el mensaje M en claro (o cifrado) al destinatario B


junto a la firma: {M, rAh(M)}

11
- El destinatario B tiene la clave pública eA,nA de A y descifra
rAh(M) Þ {(h(M)dA)eA mod nA} obteniendo así h(M).
- Como recibe el mensaje M’, calcula la función hash h(M’)
compara: Si h(M’) = h(M) se acepta la firma.

• Ventajas de la firma digital

- Por lo anterior, la primera y principal ventaja de la firma digital en


comparación de la firma autógrafa, es que el procedimiento de
verificación es exacto y que es imposible en la práctica su falsificación.

- Otra ventaja de la firma digital es su portabilidad, es decir, la firma


digital puede ser realizada en diferentes puntos del mundo, de forma
simultánea y sin necesidad de testigos.

• Desventajas de la firma digital

- Quizá la más notable desventaja actual de la firma digital en contra de


la firma autógrafa, es que la primera no es valida legalmente aun en
muchos países. Parece ser que esto obedece a una transición natural de
esta nueva tecnología, que por lo tanto existe un rechazo en su
aceptación a pesar de los grandes beneficios que proporciona.

- Otra desventaja visible de la firma digital, es que su seguridad depende


de la clave privada, es decir, que si la clave privada se compromete por
alguna causa, entonces, se compromete la seguridad de la firma digital,
esto quiere decir que puede ser usada por individuos y eventos no
autorizados.

Como podemos observar por la red hay muchos tutoriales que nos permiten
conseguir una firma digital y no es muy difícil, como por ejemplo uno que
encontramos del gobierno argentino, en el cual nos explica como instalar una
firma digital, para los correos que enviemos(en este caso para el Outlook XP):

Outlook XP

Acceda al menú [Herramientas] / [Opciones...]. Accediendo a la solapa


[Seguridad], seleccione [ Configuración...] y luego en la sección [Certificados y
algoritmos] presione [Elegir...].
Seleccione el Certificado de Clave Pública que acaba de obtener y luego
presione [Aceptar].
Cierre las pantallas presionando [Aceptar].

Si desea que por defecto todos los correos que usted envía salgan firmados,
acceda al menú [Herramientas] / [Opciones...] y luego en la solapa de
[Seguridad] seleccione [Agregar firma digital a los mensajes salientes].
Para finalizar presione [Aceptar].

Como vemos no es muy complicado poner un firma digital en nuestro correo,.

12
Por otra parte, hay que hacer destacar que todos los campos que hemos
visto anteriormente sobre la seguridad en los mensajes están íntimamente
relacionados con los llamados certificados digitales, que no son otra cosa que
un vínculo entre una clave pública y una identidad de usuario, que se consigue
mediante una firma digital por una tercera parte o autoridad e certificación que
hace pública su clave pública en la que es reconocida y aceptada por todos e
imposible de suplantar. (Ej.: Fabrica Nacional de Moneda y Timbre).
De esta forma cuando un usuario A envíe un certificado, la clave pública
firmado por CA, a un usuario B, este comprobará con esta autoridad la
autenticidad del mismo. Lo mismo en sentido contrario.
Un certificado contiene: el nombre de la CA, el nombre del usuario, la clave
pública del usuario y cualquier otra información como puede ser el tiempo de
validez. Este se cifra con la clave privada de CA, de forma que solo los
usuarios autorizados, al tener la clave pública de CA podrán acceder a los
mensajes.( el cerificado más representativo es el X509v3).

El mercado español de autoridades de certificación está todavía en


desarrollo. Para la contratación on-line existen varias autoridades
certificadoras, de las que cabe destacar por su importancia y esfuerzo
realizado: ACE (Agencia de Certificación Electrónica) y FESTE (Fundación para
el estudio de la Seguridad de las Telecomunicaciones). ACE se encuentra
constituida primordialmente por la banca, mientras que FESTE representa a los
notarios, registradores, etc.. Ambas utilizan unos medios de identificación muy
seguros. En concreto, FESTE realiza la asignación de claves ante notario (lo
cual no significa que sea necesario) presentando el DNI o documentos que
acrediten la representación de una determinada persona jurídica.

EJEMPLO:

¿Codificar o encriptar?

Codificar significa convertir una cierta información en otra a través del uso de
una tabla que le asigna un código uní unívoco a cada carácter del mensaje. En
cambio encriptar, es pasar el mensaje por algún algoritmo, normalmente
matemático, el cual lo modifica de tal manera que se hace muy difícil obtener el
mensaje original.
En ambos procesos, el destinatario del mismo, debe conocer o la tabla de
codificación o la clave de encriptado.
La desventaja de la codificación es su vulnerabilidad, ya que a cada carácter le
corresponde el mismo código, por lo tanto sabiendo esto, una persona
entenada, estudiando el código final sabría que caracteres son los mas
repetidos (como la “a” y los espacios) y podría obtener un mensaje original
comprensible, con lo que “rompería” la codificación.
En el caso del encriptado, esto no sucedería, ya que se toma un grupo de
caracteres del mensaje y se los encripta en grupo, de modo tal que el código
final de un determinado carácter, depende de los que tenía a su lado en el
mensaje original. Por ejemplo en las palabras ALAS y GALAS las “A”´s no
tendrían asignado el mismo código.

13
Por otro lado en ambos sistemas se hace necesario junto con el mensaje
enviar un dato importante tal como es el destinatario hacia quien se dirige el
mensaje, ya que, si no es para mi, para que lo voy a decodificar y dado que
esto hace selectiva la necesidad de decodificarlo o no, este dato debe ser uno
de los primeros que se debe enviar.
Esta serie de códigos que conforman nuestro mensaje, se trasladarán de
destinador a destinatario a través de algún canal de comunicación que puede
alterar el contenido del mismo, recordemos que en el caso del encriptado, un
dato mal no significa un carácter mal, sino un grupo de caracteres errado. Para
evitar esto se utilizan distintas técnicas como son entre otras el control de
paridad de la cantidad de caracteres que son enviados la cual debe coincidir
con la paridad de los caracteres recibidos y de no ser así, solicitar el re-envío
del mensaje.
Todo esto que comentamos se denomina “protocolo de comunicación”, en este
trabajo se desarrollará un protocolo personal, que no respeta los estándares,
para enviar un mensaje codificado, encriptado y selectivo.

Codificación

Para esto se utilizará una codificación estándar en comunicaciones que es la


ASCII a la cual se le asigna a cada carácter un número y es un código abierto,
o sea, de uso público.
Como se ve en la tabla que se adjunta, se encuentran codificadas todas las
letras del alfabeto en mayúsculas y minúsculas como los números, signos de
puntuación y caracteres especiales.
Para nuestro protocolo utilizaremos los caracteres codificados bajo los números
decimales 32 al 90 para utilizar solamente números de 2 dígitos.

14
Tabla de caracteres ASCII

Descripción del protocolo

A continuación se muestra la estructura que tomará la organización de los


datos en nuestro mensaje.

AAAA MMMMMM..........MMMMM CCCC


1 2 3

Donde:

1) Dirección codificada del destinatario, 2 caracteres lo que representan


100 destinos posibles.
La dirección 00 se suele denominar dirección masiva o de broadcast y
tiene la particularidad de notificar de algo a todos los destinatarios a la
vez. Como por ejemplo enviar un cambio en la clave de encriptado, que
es un dato que todos los usuarios de este método deben saber.
2) Cuerpo del mensaje, esta compuesto por los caracteres que lo
componen pero afectados por la tabla de codificación y a la vez
encriptados con el código.

15
3) Control, son 2 caracteres codificados que informan de la cantidad de
caracteres de la que está compuesto el mensaje, esto forma parte del
control de errores de la transmisión. Al recibir el mensaje se cuentan los
caracteres recibidos y deben coincidir con el número de control incluido en
la recepción, el cual no interviene dentro del conteo. Para este control se
incluyen los caracteres del mensaje junto con los de dirección, como así
también los caracteres de control.

Es de notar que solamente el bloque correspondiente al mensaje está


encriptado, ya que la dirección es necesaria que sea rápidamente reconocida
para decidir si iniciar el procedimiento de decodificación del mensaje, en caso
de ser el destinatario, o desecharlo por no ser para mi.
Algo parecido ocurre con los caracteres de control, necesito tener acceso
rápidamente a ellos para constatar si lo recibido corresponde fielmente a lo
transmitido y en caso contrario, solicitar el re envío del mismo.
Decodificar un mensaje con un posible error implica una pérdida de tiempo y
recursos, ya que es muy posible que su contenido sea ilegible.

Con respecto a este control, existen formas mas seguras de verificar y hasta de
corregir errores en los mensajes recibidos, para esto se usan algoritmos
matemáticos con polinomios llamados CRC (siglas de código de redundancia
cíclica).

Encriptado del mensaje

Vamos a explicar la teoría de este procedimiento.


Sea “A” una matriz de orden N x N elegida de tal manera que sus elementos
pertenezcan a los naturales, tenga inversa y los elementos de ella también
pertenezcan a los naturales 1, sea “X” una matriz fila (orden 1 x N) formada por
los caracteres, codificados según tabla ASCII, del mensaje.

X *A=Y Donde X es de orden 1 x N (Vector fila) y A de orden N x N es la


matriz de encriptado.
Y será el vector fila del mensaje a transmitir de orden 1 x N.

El destinatario debe realizar la siguiente operación.


-1
Y*A-1 = (X*A ) * A-1 = X Donde A-1 es la matriz inversa de A.

Recordemos que:

(A)-1 * (A) = (I) Matriz identidad del mismo orden que A

Observamos que obtenemos nuevamente el vector fila X que no es mas que


nuestro mensaje original.

1
Se busca esta característica para que al obtener los elementos encriptados estos sean enteros y no tener
inconvenientes con el código obtenido del carácter final.

16
Solo resta comparar si la cantidad de caracteres enviados es igual a la cantidad
de caracteres recibidos y decodificar con la tabla ASCII para reconstruir el
mensaje original enviado por nuestro emisor.

Veamos un ejemplo para que quede claro.


Supongamos que queremos enviar al destinatario 19 el mensaje “A LA TARDE
EN EL BOSQUE “.

1) Codifiquemos con la tabla ASCII el número 19 y cada carácter del


mensaje.

19: 49, 57
A LA TARDE EN EL BOSQUE: 65, 32, 76, 65, 32, 84, 65, 82, 68, 69, 32, 69,
78, 32, 69, 76 ,32, 66, 79, 83, 81, 85, 69, 32 2
La cantidad de caracteres a transmitir son 26 que codificado sería: 50,54.

2) Elegimos la matriz A de 3x3

1 -2 2
-1 1 3 =A
1 -1 -4

3) Formamos los vectores fila con los caracteres codificados del mensaje

Y1: (65 32 76)


Y2: (65 32 84)
Y3: (65 82 68)
Y4: (69 32 69)
Y5: (78 32 69)
Y6: (76 32 66)
Y7: (79 83 81)
Y8: (85 69 32)3

4) Realizamos la operación Y * A

2
Se observa la vulnerabilidad de esta codificación ya que los códigos 32: espacio y 65: ”a” son los mas
repetidos.
3
La cantidad de caracteres del mensaje a encriptar no es múltiplo de 3 por lo que se completa al final con
caracteres espacio (ASCII 32).

17
5) La cadena de números a enviar es:

49, 57, X1, X2, X3, X4, X5, X6, X7, X8, 50, 54

XXXX : Dirección del destinatario (Codificada)

XXXX : Mensaje (Codificado y encriptado)

XXXX : Caracteres de control (Codificado)

La trama de números a enviar sería:

49, 57, 109, -174, -78, 117, -182, -110, 51, -116, 104, 106, -175, -42, 115, -193,
-24, 110, -186, -16, 77, -156, 83, 48, -133, 249, 50, 54

Ahora hagamos el camino contrario para obtener el mensaje original.


1) Verifico la dirección del destinatario:

18
49, 57 que corresponden a los caracteres 1 y 9 o sea la dirección 19 en
decimal.

2) Sabiendo la matriz con la que se encriptó el mensaje, obtengo su


inversa:

Obtengo su inversa

3) Cuento los caracteres del mensaje recibido y lo comparo con el código


de verificación incluido al final del mensaje.

2 caracteres de dirección + 24 caracteres de mensaje = 26 caracteres


Código de verificación 50, 54 correspondientes a 2 y 6 o sea 26 caracteres

El mensaje no tiene errores por lo que se puede tomar como válido.

4) Inicio el proceso de desencriptado usando los vectores fila recibidos y la


matriz inversa obtenida

19
5) Agrupamos los códigos obtenidos y buscamos su carácter
correspondiente en la tabla ASCII.

65: A, 32: esp, 76: L, 65: A, 32: esp, 84: T, 65: A, 82; R, 68:D, 69: E, 32: esp,
69: E, 78: N, 32: esp, 69: E, 76: L, 32: esp, 66: B, 79: O, 83: S, 81: Q, 85: U, 69:
E, 32: esp

Obteniendo el mensaje “ A LA TARDE EN EL BOSQUE ” que era nuestra


cadena de caracteres original.

5.-Conclusiones
Como hemos estado hablando durante todo el documento hoy en día la
información puede que sea uno de los bienes mas preciados, o la
desinformación una de las peores armas con las que atacar a alguien. Por lo
que en esta en la sociedad en la que vivimos se hace muy necesario la
seguridad en las comunicaciones, y como principal exponente en Internet , ya
que este método de comunicación es cada vez mas utilizado, no solo por
estudiantes y comunidad universitaria, sino por empresas, particulares, y cada
vez para realizar más cosas. Con lo cual cabe pensar que el tema que hemos
tratado será uno de los claros exponentes a tener muy en cuenta en el futuro
de la ingeniería de sistemas, sobre todo a la velocidad que se implementan
nuevas tecnologías, las cuales permiten el envío de información más valiosa y
que puede comprometer mucho a los interlocutores en caso de que sea
interceptada por otras personas. La verdad que se trata de un mundo muy
fascinante y que tiene muchas posibilidades de investigación.

6.-bibliografía
•Sitios de la red

www.microasist.com.mx/noticias/en/ampen1402.shtml
www.ugr.es/~aquiran/cripto/informes/info026.htm
www.marketingycomercio.com/ numero14/00abr_firmadigital.htm
www.ca.sgp.gov.ar/
www.htmlweb.net/seguridad/varios/firma_juridico.html

•LiBROS
- Libro electrónico “Seguridad Informática” cuarta edición
versión v32 de Jorge Ramió Aguirre. Universidad Politécnica de
Madrid
- Apuntes de clase

20

También podría gustarte