Documentos de Académico
Documentos de Profesional
Documentos de Cultura
de seguridad
978-958-5460-19-5
Edición:
Fondo editorial Areandino
Fundación Universitaria del Área Andina
Calle 71 11-14, Bogotá D.C., Colombia
Tel.: (57-1) 7 42 19 64 ext. 1228
E-mail: publicaciones@areandina.edu.co
http://www.areandina.edu.co
Hecho en Colombia
Made in Colombia
Todos los derechos reservados. Queda prohibida la reproducción total o parcial de esta
obra y su tratamiento o transmisión por cualquier medio o método sin autorización escrita
de la Fundación Universitaria del Área Andina y sus autores.
Criptografía y mecanismos de
seguridad
UNIDAD 1 Criptografía
Introducción 7
Metodología 8
Desarrollo temático 9
Metodología 25
Desarrollo temático 26
Metodología 37
Desarrollo temático 38
Metodología 54
Desarrollo temático 55
i
Índice
Metodología 76
Desarrollo temático 77
Metodología 96
Desarrollo temático 97
Metodología 107
Metodología 124
Bibliografía 140
1
UNIDAD
1 Unidad 1
Criptografía Criptografía y
mecanismos de seguridad
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 7
3
U1 Metodología
En este primer capítulo del módulo, se estudiarán las bases para entender los siguientes
capítulos y tener claras las ideas que serán utilizadas. Se trabajarán conceptos desde qué
es la criptografía, su finalidad, los métodos utilizados en la criptografía, la seguridad de la
información y se estudiarán conceptos sobre la técnica llamada criptosistema, que no es
otra cosa que un conjunto de instrucciones para garantizar la seguridad de la información a
través de técnicas criptográficas, las cuales utilizan las claves o llaves.
Recomendaciones:
■ Realizar las lecturas asignadas.
■ Elaborar cada uno de los trabajos asignados.
■ Realizar las evaluaciones propuestas.
■ Cuando no entienda algo, comuníquese con su tutor.
■ No continúe con el siguiente tema, hasta que esté perfectamente claro el tema actual.
■ Siempre que lea, hágalo entendiendo las ideas.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina 8
Andina 4
U1 Desarrollo temático
En la figura 1, se muestra lo que sucede Una vez entendidos los conceptos de cripto-
cuando se envía un mensaje, este se cifra grafía y criptoanálisis, iniciemos con la histo-
y continúa su viaje como un Criptograma, ria de la criptografía.
o sea que hace referencia al mensaje cifra-
do, es decir que no es entendible por quien La práctica del ciframiento, ha existido des-
no conoce la clave para descifrarlo. En ese de épocas remotas, es el caso de la Mesopo-
trayecto, el mensaje cifrado o Criptograma tamia, la India y la China, utilizaban métodos
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 10
6
Criptografía en la Segunda Guerra Mun- A mediados de los años 70 se avanzó en dos
dial aspectos, uno fue la propuesta que la IBM
envió al Registro Federal una propuesta ti-
Se empieza el uso de máquinas de cifrado tulada “Data Encryption Standard - DES-”,
mecánicas y electromecánicas. con el fin de desarrollar sistemas de comu-
nicación seguras para empresas financieras-
Los alemanes utilizan bastante la máquina bancarias- y otras empresas.
llamada Enigma del ejército alemán.
En 1977, luego de realizar mejoras al escri-
Una vez estalló la segunda guerra mundial, to antes mencionado, la NSA de los Estados
Allan Turing y Gordon Welchman, progresa- Unidos, publica el “Federal Information Pro-
ron bastante en la tecnología de descifrado cessing Standard”.
de la máquina Enigma.
En 2001 el DES fue reemplazado por el AES
En 1940 los criptógrafos británicos y holan- -Advanced Encryption Standard- que es un
deses rompieron los sistemas criptográficos algoritmo llamado Rijndael realizado por
de la Armada japonesa. criptógrafos Bbelgas. De este algoritmo se
han realizado variantes que hoy en día toda-
Militares del ejército americano rompió el vía se utilizan. Desafrotunadamente el DES
sistema criptográfico de la diplomacia japo- (que utiliza 56 bits) es hoy en día inseguro
nesa, que llevó a la victoria de Estados Uni- para los nuevos criptosistemas.
dos en la batalla de Midway.
En 1976 cambian radicalmente la forma de
Los alemanes en cabeza de Max Newman y funcionamiento de los criptosistemas. Apa-
su grupo de trabajo crearon el Colossus, que rece el famoso “intercambio de claves Diffie-
colaboró con el criptoanálisis. Hellman” desarrollado por Whitfield Diffie y
Martin Hellman.
Hubo tres máquinas utilizadas para la crip-
tografía, como la Typex británica y la Sigaba También en 1976 a partir de la creación del
norteamericana, Lacida de los polacos, la algoritmo Diffie-Hellman, aparece un nuevo
M-209 y la M-94. algoritmo para realizar cifrado, llamados al-
goritmos de cifrado asimétrico.
Criptografía moderna
También aparece en contraste a los algo-
En 1949, Shannon Claude, llamado el padre ritmos de cifrado simétrico, los algoritmos
de la criptografía moderna, realiza escritos y de clave asimétrica, que utilizan claves re-
un libro sobre la teoría de la información y la lacionadas matemáticamente, consiste en
comunicación, que sirvió como base para el que una clave realiza el descifrado de la otra
criptoanálisis y criptografía moderna. clave. A este par de claves se les llama hoy
en día la clave privada y la clave pública. La
La criptografía es orientada al espionaje clave privada, siempre será secreta, la clave
y contraespionaje, la dependencia de los pública la pueden conocer los usuarios en
Estados Unidos denominada la NSA, fue la general. Para poder acceder a un mensaje
abanderada de la criptografía entre los años cifrado de este tipo, el usuario debe conocer
1950 a 1970. la clave privada y la pública.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 11
7
Entre 1982 y 1992, Estados Unidos realiza Criptoanálisis moderno
grandes cambios legislativos a través de la
NSA. AES es considerado el cifrador irrompible.
En 1991 Phil Zimmermann publicó el Pretty Surgen los cifrados A5/1 y A5/2, dirigidos a
Good Privacy - PGP - que hacía una defen- los teléfonos móviles GSM.
sa del cifrado fuerte para uso público y fue
distribuido como freeware, al pasar el tiem- Conceptos generales
po se convirtió en el estándar RFC2440 u La Criptografía se puede clasificar como se
OpenPGP. aprecia en la siguiente figura.
Criptografía
Clásica Moderna
Bloques Flujo
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 12
8
En la Figura 3, se aprecia gráficamente este proceso.
Cifrado
Algoritmo de cifrado
Información en Información
texto plano cifrada
Clave de cifrado
Descifrado
Algoritmo de descifrado
Información Información en
cifrada texto plano
Clave de descifrado
Clave secreta
Archivo.txt
Emisor Receptor
Estudio $%&/(¡? Estudio
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 13
9
d. Algoritmos o criptografía asimétrica: en- desencriptarán con una clave privada.
criptan y desencriptan información con Los bits que utiliza la llave de 3000 bits
diferentes clave o llave. Los datos son para hacerla segura, son muy lentos. (Ver
encriptados con una llave pública y se Figura 5)
Clave Clave
Archivo.txt
pública privada
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 14
10
Criptografía y criptosistema original no se modifique, sin importar si éste
Los criptosistemas, son un conjunto de pro- es público o privado. La autenticación, ga-
cedimientos que salvaguardan la seguridad rantiza la identidad del autor.
de la información entre dos entes y utilizan Los tipos de criptografía pueden ser:
diferentes técnicas de criptografía. Existe
un término fundamental en estos procedi- a. Criptografía de clave secreta: son algorit-
mientos, como es el uso de una llave o clave. mos escritos específicamente para cifrar
un mensaje utilizando una clave única
Los criptosistemas tienen la particularidad y secreta que es conocida solo por el
de tomar información legible y convertirla receptor y el emisor, es decir, que para
en información no legible o no entendible. descifrar el mensaje tanto receptor como
emisor deben conocer perfectamente di-
Los criptosistemas están formados matemá- cha clave.
ticamente por:
b. Criptografía de clave pública: son algo-
a. Un alfabeto, el cual facilita la construc- ritmos escritos específicamente para ci-
ción de un mensaje. frar y descifrar los mensajes a través de
b. Espacios o claves, que pueden es conjun- claves o llaves distintas, una para el ci-
to finito de ellas y pueden ser para en- frado y otra para el descifrado. Una clave
criptar o desencriptar información. no permite conseguir la otra, pues están
construidas por medio de relaciones ma-
c. Transformaciones de cifrado, diferentes temáticas. Para poder enviar un mensaje,
aplicaciones del alfabeto, llamadas tam- el usuario debe conocer la clave pública
bién transformaciones aritmético-lógicas del usuario destino y cifrar el mensaje
de cifrado. usando esa clave. Este mensaje será recu-
d. Transformaciones de descifrado, diferen- perado por el usuario receptor por medio
tes aplicaciones del alfabeto, llamadas de la clave privada.
también transformaciones aritmético- Este tipo de criptografía o algoritmos
lógicas de descifrado. criptográficos trabajan con cualquiera de
las claves, es decir, si un mensaje se ha ci-
La criptología es la ciencia compuesta por la
frado con la clave pública, solo se descifra
criptografía y el criptoanálisis, recordando,
con la clave privada y el mensaje cifrado
la criptografía encripta la información y el
con la clave privada solo se descifrará con
criptoanálisis la desencripta. La criptogra- la clave pública.
fía utiliza técnicas y algoritmos para poder
intercambiar información de forma segura. Los usos que se le dan a la criptografía a dia-
rio pueden ser entre otros:
Algunas características de la criptogrfía es la
confidencialidad, que consiste en garantizar a. Para firmas digitales
la seguridad de la información y que solo b. Para certificados digitales
los interesados y autorizados puedan tener
acceso a ella. Otra característica es la inte- c. Para sistemas de autenticación
gridad, la cual garantiza que la información d. Para el correo electrónico seguro
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 15
11
Esteganografía análisis de tráfico. No se detectan con
La esteganografía proviene de los grie- facilidad, pues implican alteración de
gos y significa “steganos”=secreto y los datos.
“grafía”=escrito, lo que traduce “escritura se- • Ataques activos: en este tipo de ata-
creta”, la cual se define como el arte de ocul- que se puede modificar el flujo de
tar un mensaje dentro de otros. Este tipo de datos o se crean flujos falsos. Algunas
ocultamiento de información se utiliza por técnicas de este tipo de ataque son:
ejemplo incrustando un mensaje dentro de La suplantación, la modificación de
un archivo digital utilizado como medio. Al- mensajes (que consisten en capturar
gunos de los archivos utilizados como: imá- los paquetes para borrarlos, manipu-
genes, videos, archivos de música. larlos, modificarlos o reordenarlos), la
re actuación (que consiste en captu-
Algunas herramientas de tipo free o gratui- rar un paquete o una retransmisión),
tas utilizadas para realizar esteganografía la degradación (que consiste en de-
son: F5, desarrollada por Andreas Westfield. gradar un servicio).
La herramienta MP3Stego, que esconde da-
2. Según el conocimiento previo:
tos en archivos MP3, consiste en unir un ar-
chivo .wav con uno de texto y transformarlo • Ataque con sólo texto cifrado dispo-
en un archivo MP3. Otra herramienta es la nible: el atacante solo tiene acceso a
Steganos, que encripta y esconde archivos, unos textos cifrados o codificados
el usuario puede escoger un archivo o una • Ataque con texto plano conocido: el
carpeta para ser escondida y después el lu- atacante tiene un conjunto de textos
gar donde desea integrarlo. cifrados que conoce, pero también
conoce el descifrado
Criptoanálisis
• Ataque con texto cifrado escogido: el
Hace referencia a que por medio del Crip- atacante obtiene los textos cifrados
toanálisis se encuentran debilidades en los planos que corresponden a algunos
sistemas y descifrar o romper la seguridad. textos planos cifrados.
Una de las técnicas que utiliza el criptoanáli-
sis es la de busca errores en el sistema y po-
• Ataque adaptativo de texto plano
escogido: el atacante elige los textos
derlo penetrar para hacer daños.
planos teniendo como premisa la in-
Los ataques criptoanalíticos tienen cierta formación que ha obtenido de desci-
clasificación: frados anteriores.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 16
12
• Deducción global: el intruso descu- en la actualidad, es muy rápido que se
bre el algoritmo para cifrado y des- puede contar con la clave y por supuesto
cifrado de mensajes, pero no tiene la con el mensaje.
clave.
Dentro de este tipo de criptografía exis-
• Deducción local: el intruso obtiene ten dos métodos importantes:
textos planos o cifrados adicionales a
los conocidos.
• Data Encryption Standard -DES-: Este
algoritmo para encriptar fue creado
• Deducción de información: el intruso por la NSA cuyo objetivo era prestar
descubre información que no era co- servicios de protección de datos del
nocida anteriormente. gobierno de los Estados Unidos. En
4. 4. Según el costo: 1976, este algoritmo de encripción
fue escogido por la Federal Informa-
• Tiempo: por el número de operacio- tion Processing Standar - FIPS- para
nes que pueden ser realizadas. ser promovido por el mundo entero.
• Memoria: por la cantidad de almace- Pero al día de hoy, DES es muy inse-
namiento que se requiere para hacer guro, por cuanto su clave es de 56
el ataque. bits, muy insuficiente para el poder
• Datos: por la cantidad de textos pla-
de los algoritmos de desencripción
y al poder computacional con que se
nos y cifrados.
cuenta.
Métodos criptográficos y seguridad Algunas propiedades de este algoritmo:
Los métodos criptográficos hacen referen- Cifrado por bloques, cada bloque con
cia a las maneras como se cifra o descifra un 64 bits, la clave tiene 64 bits y 8 de es-
mensaje. tos bits son empleados para comprobar
la paridad, es decir que la longitud real
Algunos de estos métodos de ciframientos de la clave es de 56 bits. DES trabaja así:
son: toma un bloque de una longitud fija y lo
a. La criptografía simétrica: este tipo de transforma por medio de una serie de
criptografía es del tipo monoclave, es de- operaciones en otro bloque cifrado de la
cir, una sola clave para cifrar y descifrar el misma longitud.
mensaje, lo que hace vulnerable este tipo
de ciframiento, pues si alguien escucha el
• Advanced Encryption Standard -AES-
: Rijndael, es su otro nombre y en
canal por el cual se transmite el mensaje, 1997 fue escogido como ganador
se corre el riesgo de que intercepte tam- en el concurso realizado por el Insti-
bién la clave, lo que hace inútil el cifra- tuto Nacional de Normas y Tecnolo-
miento. gías -NIST- como el mejor algoritmo
Para tratar con este tipo de ciframiento si- de cifrado. Pasó a ser en 2001 como
métrico, deberá utilizarse una clave muy parte de FIPS y se transformó como
segura y que el método de cifrado sea lo estándar en 2002, a partir de 2006, es
más adecuado posible, pues con los al- el algoritmo que más se utiliza n crip-
goritmos de desciframiento que existen tografía simétrica en el mundo.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 17
13
El funcionamiento de este algoritmo duce un XOR bit a bit del flujo de datos y
es el siguiente: trabaja con una ma- el de clave.
triz de 4X4 bytes, que por medio de
un algoritmo reordena los bytes de
• Algoritmo de Flujo -Wired Equivalent
Privacy -WEP-: es un algoritmo de flu-
la matriz. La misma clave se utiliza jo. Este tipo de cifrado se incluye den-
para descifrar y cifrar, es decir, es un tro del estándar IEEE 802.11. Se basa
algoritmo simétrico. Este algoritmo en el mecanismo de cifrado RC4. Tie-
funciona por medio de una serie de ne dos tipos o variantes, la una utiliza
ciclos de repetición, de los cuales se clave de 64 bits, de los cuales utiliza
utilizan diez ciclos para claves de 128 24 bits para el vector de iniciación
bits, 12 para claves de 192 bits y 14 y los otros 40 para mensaje. La otra
para claves de 256 bits. variante, utiliza clave de 128 bits, de
b. One-time PAD: este algoritmo de cifrado los cuales 24 bits son para el vector
fue inventado en 1997, el algoritmo es- de iniciación y 104 bits para el texto.
coge un texto a cifrar y éste se combina Tiene dos estándares denominados
con una clave aleatoria que tiene la mis- WEP-40 y WEP-104. Estas versiones
ma longitud y solo se usa una vez, lo que de algoritmo fueron declaradas inse-
lo hace irrompible. guras en 2004, pero aún hoy se utiliza.
c. Cifradores de flujo y de bloque: estos ci- • Algoritmo Electronic Codebook -ECB-
fradores trabajan con claves simétricas, : es un algoritmo de bloque. Aunque
toman grupos o bloques de bits de X lon- existe muchos algoritmos de esta fa-
gitud fija. milia de bloque, éste es uno de los
más simples. La información la parte
Los cifradores de bloque, utilizan un blo-
en bloques y cada uno es cifrado por
que de texto plano y como resultado ob-
separado, pero tienen una clave co-
tiene un bloque de texto de igual longi-
mún. El principal problema de este
tud, pero cifrado; esa transformación de
algoritmo es que como los bloques
texto plano a cifrado, se hace por medio
son idénticos, los bloques cifrados,
del uso de una clave secreta. El proceso
también lo son, lo que lleva a que se
contrario, de texto cifrado a plano, se
pueda conocer el patrón y de esta
hace de la misma manera.
manera se facilitará obtener el men-
El inconveniente que presentan los cifra- saje original. Mejorando este algorit-
dos por bloques es que hay determina- mo, se crea el Cipher Block Chaining
das aplicaciones que no pueden utilizar -CBC-, cuya mejora es la de hacer
este tipo de ciframiento por estar forma- XOR al bloque antes de cifrarse con
das por un flujo constante de bits. el anterior cifrado y luego cifrarlo.
Los cifradores de flujo, son algoritmos También surgieron algoritmos como
que convierten un texto en cifrado, pero el CFB, el OFB que hacen cifrado pase
lo hacen bit a bit. Trabajan muy parecido a operar como un cifrador de flujo.
a los cifradores de bloque, pero en la en- d. Cifrado asimétrico: se conoce también
trada se tiene un flujo de datos, se genera como de clave pública. Emplea dos cla-
una Flujo de Clave y como salida se pro- ves para el mismo individuo, de las cua-
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 18
14
les, una es privada y la otra es pública, dificultad para calcular logaritmos
que cualquiera puede tenerla. Este al- discretos en un cuerpo finito.
goritmo funciona así: el emisor utiliza la
clave pública del receptor y solamente
• Funciones Hash criptográficas: las
funciones hash son algoritmos ma-
con la clave privada se puede descifrar temáticos que con una entrada X,
el mensaje, así solo el receptor puede ac- genera una salida Y. El algoritmo ma-
ceder a la información. Pero si el emisor temático deberá cumplir una serie de
utiliza la clave privada para cifrar el men- propiedades, como:
saje, este solo se puede descifrar con la
llave pública. • Cuando se tenga una función hash
específica, sin importar la longitud
Este tipo de algoritmos asimétricos son de la entrada X, la salida Y debe ser
más seguros que los simétricos. Algunas de un tamaño fijo.
desventajas de los algoritmos asimétri-
cos, es que toman mayor tiempo de pro- • Para cada X, Y tiene que ser única.
ceso que los simétricos, las claves son • La función hash deberá ser rápido
más grandes y el mensaje cifrado es mu- y sencillo de calcular
cho más grande que el original. • No se devolverá de Y a X.
Algunos algoritmos asimétricos: • No se presentarán colisiones. es
• Rivest, Shamir y Adlema –RSA-: este decir que si se tienen dos X distin-
algoritmo asimétrico fue elabora- tas, no se darán un mismo Y.
do en 1977 por Rivest, Sharmir y • MD5: en 1995 fue creado este algo-
Adleman, de ahí su nombre RSA. El ritmo por Ronald Rivest. Es un algo-
funcionamiento del algoritmo es el ritmo de hash muy utilizado actual-
siguiente, escoge dos números pri- mente. Se basa en dos algoritmos, el
mos grandes que se escogen aleato- MD2 y el MD4. Es llamado de reduc-
riamente y se mantienen en secreto. ción criptográfico de 128 bits. Usado
La factorización de esos números pri- para comprobar que a algún software
mos grandes, es la principal ventaja que se instale en el PC bajado de in-
de este algoritmo en cuanto a segu- ternet no haya sido alterado por al-
ridad. Es uno de los algoritmos más gún usuario que le haya agregado un
seguros hasta la fecha. virus o troyano al instalador; el MD5
• Diffie-Hellman: este protocolo de ci- indicará con seguridad si ese soft-
frado asimétrico, recibe su nombre ware que se descargue de la red es el
de los creadores Whitfield Diffie y oficial o ha sufrido cualquier cambio
Martin Hellman. Fue el primer algo- y podría ser dañino para el sistema.
ritmo de llave pública. Se denomina
que es un algoritmo que intercambia Criptografía de uso cotidiano
claves entre partes. Empleado para Por medio de la criptografía la información
acordar claves simétricas, utilizadas sensible de las personas puede ampararse,
para cifrar una sesión. La dificultad es el caso de: Los datos personales, Datos
de este algoritmo se basa en la gran Bancarios
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 19
15
La información puede protegerse en la crea- ■ Cifrar el almacenamiento de datos: bases
ción, modificación, almacenamiento, proce- de datos, dispositivos de almacenamien-
to, almacenamiento distribuido.
samiento y transmisión.
■ Cifrar las comunicaciones: correo electró-
Para preservar la identidad de las personas nico, redes inalámbricas, redes sociales,
mensajería instantánea, intercambio de
son indispensables los algoritmos cripto- documentos, radio, televisión.
gráficos, de allí que deberán estar presentes
■ Cifrar las investigaciones.
en nuestro diario vivir como en:
■ Cifrar la información en el sector financiero.
■ El comercio electrónico: como en las
■ Cifrar diversos sectores: voto electrónico,
compras en línea, en los dispositivos mó- pasaporte, planes estratégicos, sector fi-
viles, pagos con algún tipo de tarjeta dé- nanciero, cajeros automáticos, investiga-
bito o crédito, pago de impuestos. ciones.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 20
16
Ejemplo de firma digital con clave asimétrica: David envía un mensaje a Ana
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 21
17
Ejemplo del cifrado César
Conociendo el texto original y su ciframiento, haga lo mismo con su nombre, de tal manera
que su nombre quede cifrado.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 22
18
1
UNIDAD
1 Unidad 1
Una vez estudiada la unidad 1, en donde se aprendieron los conceptos básicos sobre cripto-
grafía, en esta unidad se revisarán otros términos importantes para sustentar y tener como
base para continuar con los siguientes conocimientos. Es importante que si no le ha queda-
do claro algún concepto de la unidad1, se contacte con su tutor para pedir explicación, o de
lo contrario, acudir a la cartilla de la unidad 1 y volver a repasar los conceptos.
Recomendaciones:
■ Realizar las lecturas asignadas.
■ Elaborar cada uno de los trabajos asignados.
■ Realizar las evaluaciones propuestas.
■ Cuando no entienda algo, comuníquese con su tutor.
■ No continúe con el siguiente tema, hasta que esté perfectamente claro el tema actual.
■ Siempre que lea, hágalo entendiendo las ideas.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 25
4
U1 Desarrollo temático
Confidencialidad
Disponibilidad Integridad
Imagen 1. La confidencialidad Figura 1. Triángulo de la seguridad de la información
Fuente: http://definicion.de/confidencialidad/ Fuente: Propia.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 27
6
La integridad de los datos hace referencia dificado, lo que quiere decir, que se verifica
a la corrección y complemento de los datos la integridad del mensaje enviado; mientras
en las bases de datos. Las instrucciones más que los códigos de autenticación de mensa-
utilizadas al ingresar a una base de datos jes, tienen por objetivo autenticar el origen
como el “insert, update o delete”, pueden del mensaje.
modificar el almacenamiento que se tiene,
es decir los datos pierden su integridad, por Mecanismos de no repudio
cuanto se le puede añadir datos que no son El repudio hace referencia a que ni el emisor
válidos a la base de datos. ni el receptor nieguen que han participado
en una comunicación.
Generalmente se utilizan algunas técnicas
para controlar o mantener la integridad de En toda comunicación participan dos tipos de actores, de
los datos, por ejemplo, los antivirus, la en- una parte el emisor (el que envía un mensaje) y de otra el
cripción y las llamadas funciones hash. receptor (el que recibe el mensaje). Entonces, el repudio
puede clasificarse en dos tipos:
Los antivirus proporcionan seguridad a la
información siempre y cuando se actualicen No repudio de ori-
con frecuencia. Cabe recordar que no todos gen: en donde se
los antivirus reconocen todos los virus. garantiza que el
emisor no po-
La encripción hace referencia a la codifica- drá negar que
es quien envía el
ción de la información que se va a transmitir
mensaje, pues el recep-
por una red, con el objeto de hacerla más tor, tendrá las pruebas.
segura y que en caso de ser interceptada no
se pueda entender, solo será descifrada por Imagen 2. No repudio
Fuente: http://www.net753.com.ar/seguridad_it.html
la persona a quien va dirigido el mensaje.
Estos procesos de cifrar y descifrar, se hace No repudio en destino: en donde el receptor no podrá ne-
por medio de software especializado. gar que ha recibido un mensaje, pues el emisor poseerá la
prueba de que si recibió el mensaje.
Las funciones hash, son utilizadas en la crip-
tografía para dar mayor seguridad a la infor-
Cuando se hacen negocios por Internet es
mación que viaja por medio de la red. El he-
importante el uso de este servicio, pues
cho de venir cifrado un mensaje por medio
emisor y receptor incrementarán su con-
de estas funciones hash, lo hace resistente a
fianza en las transacciones comerciales que
los posibles ataques.
realicen, pero para poder lograrlo, deben
Existen dos tipos de funciones hash. De una utilizar algunos mecanismos que les permi-
parte, los códigos de detección de modi- te la confianza mutua:
ficaciones y por el otro, los códigos de au- ■ Autenticación: acción que reconoce al
tenticación de mensajes. Los códigos de emisor de quien envía el mensaje, es de-
detección de modificaciones, son aquellos cir a quien envía un documento o en su
que tienen como objetivo principal la verifi- defecto la máquina que se comunica con
cación de la integridad de los datos, es decir, otra a través de la red para solicitar algún
detectar que el mensaje no haya sido mo- servicio.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 29
8
gura como son: La confidencialidad, la inte- ■ Cifrado de almacenamiento: bases de
gridad y la disponibilidad. datos, dispositivos de almacenamiento,
almacenamiento distribuido.
En nuestra vida diaria, los procesos cripto-
gráficos son propios de la identidad de los ■ Cifrado de comunicaciones: correo elec-
seres humanos que utilicen medios de co- trónico, redes inalámbricas, redes socia-
municación, por ello, casi todos los utiliza- les, mensajería instantánea, intercambio
mos en nuestro diario vivir, por ejemplo: de documentos, radio-tv.
Protocolos criptográficos
Los cifrados criptográficos o de cifrados, son
protocolos de seguridad que permite a tra-
Imagen 5. Comercio electrónico vés de métodos criptográficos, prestar la se-
Fuente: http://vantaivanchuyen.com/wp-content/ guridad necesaria para la información que
uploads/2016/02/amazzon.jpg se está enviando por la red.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina 30
Andina 9
La principal tarea de un protocolo cripto- • El protocolo MTI/A0, 4 empleando
gráfico es la de indicar cómo se debe utili- dos mensajes y sin requerir firmas,
zar un algoritmo, describe sus estructuras proporciona claves de sesión varia-
de datos, representaciones e inclusive en bles en el tiempo con mutua auten-
dónde debe utilizarse para poder imple- ticación implícita de claves contra
mentar versiones interopeables de un pro- ataques pasivos.
grama.
• El protocolo STS5 es una variante de
Los protocolos criptográficos se utilizan tres pasos de la versión básica que
para enviar datos de forma segura. Cuando permite el establecimiento de una
se utilizan estos protocolos deben incluir clave secreta compartida entre dos
por lo menos, los siguientes elementos: partes con mutua autenticación de
entidades y mutua autenticación ex-
■ Establecer claves. plícita de las claves. El protocolo tam-
■ Autenticar entidades. bién facilita el anonimato: las iden-
■ Permitir cifrado simétrico y autenticacio- tidades de A y B pueden protegerse
contra el adversario E. El método em-
nes de mensajes.
plea firmas digitales.
■ Transportar datos seguros en el nivel de 5. Protocolos de autenticación:
aplicación.
■ Soportar Métodos de no repudio. • Kerberos: es uno de los protocolos
más utilizados en entornos internet.
Algunos protocolos criptográficos1: Identifica usuarios, los cuales están
registrados en una gran base de da-
■ TransportLayer Security (TLS) es un pro- tos encriptada, que no puede ser
tocolo criptográfico usado en conexio-
leída fuera del sistema. Cuando un
nes web (HTTP) seguras.
sistema se comunica con un usuario,
4. Protocolo de establecimiento de claves: solo lo hace con el protocolo.
• Protocolo de Diffie-Hellman (estable- • Radius: este protocolo autentica
ce de claves entre partes que no han usuarios y es uno de los más anti-
tenido contacto previo, utilizando un guos. El protocolo ejecuta un soft-
canal inseguro, y de manera anónima ware en el servidor, de tal manera
(no autentificada). que cuando un usuario se conecta a
• ElGamal de negociación de claves la red, un cliente Radius lleva los da-
provee negociación en un solo paso tos del usuario al servidor Radius de
y autenticación unilateral (del recep- manera encriptada para que este los
tor hacia el emisor) si la clave pública autentique, entonces, el servidor ad-
del receptor es conocida de antema- mite o rechaza al usuario entregando
no por el emisor. la respuesta al programa cliente de
Radius.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 31
10
cripta completamente los parámetros 5. Pruebas de conocimiento cero: permiten
utilizados en todo el proceso de au- a un individuo convencer a otro de que
tenticación, este protocolo también posee una cierta información, sin revelar-
encripta el nombre del usuario y algu- le nada sobre el contenido de la misma.
nos otros datos adscritos, a diferencia 6. Transacciones electrónicas seguras: per-
de Radius que solamente encripta la miten realizar de manera electrónica se-
contraseña. Otra diferencia es que Ta- gura las operaciones bancarias habitua-
cacs+ es un protocolo de autentica- les, firma electrónica de contratos, etc.
ción escalable, mientras que Radius
es de autenticación independiente. 7. Compromiso de bit: permiten a una par-
Generalmente se utiliza Tacacs+ con te A comprometerse con una elección
Kerberos cuando las autenticaciones (un bit o más generalmente una serie
deberán ser muy fuertes. de bits) sin revelar tal elección hasta un
momento posterior. El protocolo garan-
Otra clasificación la hace, quien indica que tiza a otra parte B que A no cambia su
los protocolos criptográficos se dividen en: elección.
1. Protocolos de autentificación de usua- 8. Transferencias transcordadas: permiten
rio: permiten garantizar que el remiten- a una parte A enviar a otra B un men-
te de un mensaje o el usuario con el que saje o secreto entre dos posibles. Al no
establecemos comunicación es real- conocer cuál de los dos ha recibido real-
mente quién pretende ser. mente B.
2. Protocolos de autentificación del men- 9. Elecciones electrónicas: permiten rea-
saje: garantizan que el mensaje enviado lizar un proceso electoral electrónica-
no ha sido substituido por otro ni altera- mente, garantizando la deseable priva-
do (integridad del mensaje). cidad de cada votante y la imposibilidad
3. Distribución de claves: un problema im- de fraude.
portante en criptografía de clave priva- 10. Jugar al poker por internet: posibilita
da es el de la creación y transporte de a dos personas, físicamente separadas,
las claves a utilizar por cada par de usua- mantener una partida de poker (o simi-
rios. En cuanto a las claves de un sistema lar: cara o cruz, chinos, etc.), comunicán-
de clave pública, la problemática de su dose por correo electrónico, teléfono,
distribución es distinta (no es necesario etc., garantizando la imposibilidad de
el secreto), demandando protocolos es- hacer trampa (Tena Ayuso, Juan. 2013).
pecíficos.
4. Protocolos para compartir secretos: su Nociones preliminares al uso de algorit-
objetivo es distribuir un cierto secreto mos criptográficos
(por ejemplo la clave para abrir una caja El cifrado es el acto por el cual un mensaje
fuerte), entre un conjunto P de partici- se encripta y desencripta, estos algoritmos
pantes, de forma que ciertos subcon- se basan en el uso de llaves o claves, es así
juntos prefijados de P puedan, uniendo que los mensajes solo podrán ser desencrip-
sus participaciones, recuperar dicho se- tados si la clave usada coincide con la que
creto. fue usada para encriptar el mensaje.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 32
11
En la siguiente figura, se aprecia los principales algoritmos utilizados para encriptar informa-
ción basados en llaves.
Criptología
Criptografía Criptoanálisis
Clásica Moderna
Simétrica Asimétrica
Los algoritmos para encriptar información Una característica importante de los algorit-
basados en claves, son los algoritmos simé- mos simétricos y asimétricos, es que son más
tricos y los asimétricos, los primeros basados rápidos los simétricos que los asimétricos
en llaves primarias y los segundos basados para ser ejecutados por las computadoras.
en llaves públicas. Los algoritmos simétricos
se diferencian de los asimétricos porque uti- También existe la encriptación híbrida, que
lizan la misma clave para encriptar y desen- consiste en que un algoritmo de llave públi-
criptar información y los algoritmos asimé- ca utiliza para encriptar una llave randómi-
tricos tienen llaves diferentes para encriptar ca (generada al azar) y esta llave se utiliza
y dencriptar y las llaves no podrán derivarse para encriptar datos utilizando el algoritmo
a partir de otra. simétrico. Este algoritmo genera una llave
pública y otra privada en el receptor, cifra el
Los algoritmos simétricos se dividen en ci- archivo de forma sincrónica, el receptor en-
frado de flujo y de bloques. El primero en- vía la clave pública al emisor, se cifra la clave
cripta los mensajes bit a bit y el de bloques que se utilizó para encriptar el archivo con la
lo hace por medio de bloques de bits, gene- llave pública del receptor, luego se envía el
ralmente lo hace con 64 bits, y lo encripta archivo cifrado y la clave del archivo cifrada.
como una unidad simple. De otra parte, el
cifrado asimétrico o de clave pública, tienen En síntesis, el cifrado híbrido utiliza cifrado
como llave para encriptar una llave pública, simétrico y asimétrico, utiliza para ello una
esto hace que cualquier usuario encripte clave pública para compartir la clave para el
datos con dicha llave, pero a quien se le di- cifrado simétrico. El mensaje será enviado
rige el mensaje deberá tener la llave privada con ciframiento que utiliza la clave. Como
para poderlo desencriptar. no es seguro utilizar la clave simétrica, en-
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 34
13
1
UNIDAD
2 Unidad 2
Herramientas
de Desarrollo Criptografía y
Disponibles mecanismos de seguridad
En este capítulo del módulo, se revisarán algunas de las herramientas para hacer desarrollos
criptográficos en algunos de los entornos más utilizados.
Se trabajarán entornos de desarrollo como los que ofrece Java, .NET, PHP y por supuesto los
más utilizados para las bases de datos.
Algunas de las recomendaciones a las que ha de poner más énfasis es a aprender algunas de
las técnicas y consejos para elaborar código seguro que por ende llevará a que las empresas
tengan más confianza en sus aplicaciones hechas a la medida.
Elabore el taller propuesto en el módulo y realice cada una de las actividades sugeridas en el
orden indicado para comprender mejor la temática.
Recomendaciones puntuales:
■ Realizar las lecturas asignadas.
■ Elaborar cada uno de los trabajos asignados.
■ Realizar el taller propuesto.
■ Cuando no entienda algo, comuníquese con su tutor.
■ No continúe con el siguiente tema, hasta que esté perfectamente claro el tema actual.
■ Siempre que lea, hágalo entendiendo las ideas.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina 37
Andina 4
U2 Desarrollo temático
Los entornos de desarrollo más comunes que existen para Java son el Netbeans y Eclipse.
En la parte superior derecha se pueden visualizar las aplicaciones que se estén desarrollan-
do, tiene la opción de verlas todas, así como la que esté activa.
Navegador
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 39
6
Imagen 3. Un programa escrito en lenguaje Java, sobre Netbeans, usando el cifrado César
Fuente: Propia.
En Eclipse se pueden compilar programas como C, C++, Python, LaTeX, JSP, Perl, Java, PHP,
JavaScript, así como aplicaciones en red como Telnet y también sistemas de gestión de ba-
ses de datos.
Una característica importe de Eclipse es que puede utilizar GEF (Graphic Editing Framework),
un Framework para la edición gráfica, como editores de diagramas como el UML, interfaces
gráficas, entre otros.
Para iniciar un proyecto en Eclipse, basta con escoger la opción File (ver imagen 4.), luego
New y escoger Java Project, como proyecto nuevo. En seguida se escribe el nombre del
proyecto, que para este caso es “Proyecto 1” (ver imagen 5.) y como se observa en la imagen
no se cambia ninguna opción de las que se encuentran marcadas por defecto, se oprime el
botón Finish.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina 40
Andina 7
A continuación, en la imagen 6, puede observarse cómo se ve el “proyecto 1” acabado de
crear. Como todo proyecto requiere de una clase para poder programar, se escoge también
de la opción File-New-Class.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 41
8
Imagen 6. Proyecto creado
Fuente: Propia.
Imagen 7. Creando una clase en Eclipse Imagen 8. Darle nombre a la clase creada
Fuente: Propia. Fuente: Propia.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 42
9
En la imagen 8, se muestra cómo se le da nombre a la clase, llamada “Clase 1”, que pertene-
cerá al “Proyecto 1”. Esta clase se crea, debido a que dentro de ella es en donde se escribe el
código lenguaje, que en este caso es Java.
En la imagen 9, se observa cómo puede empezarse a escribir una aplicación en java, estas
aplicaciones pueden ser cifrados, descifrados, programas para establecer seguridad de al-
gún sistema, programas a la medida, etc.
Entre los lenguajes de .NET Framework que utilizan para desarrollar las aplicaciones, se en-
cuentran: Visual Basic, C#, Visual C, Visual F#, JScript, Visual C++ en Microsoft, admite Servi-
cios Web XML, al igual que AML un lenguaje de marcado para la programación declarativa
de aplicaciones. También trabaja con ASP.NET que se fundamenta en las clases de progra-
mación de .NET Framework y entrega un modelo de aplicaciones web, al igual que un con-
junto de controles, una infraestructura que hacen que la compilación de aplicaciones web
resulte más sencilla.
También permite trabajar sobre Microsoft Ajax, que anexa una serie de bibliotecas de scripts
de cliente que incorporan tecnologías entre exploradores ECMAScript (JavaScript) y HTML
dinámico (DHTML). Las librerías de “Microsoft Ajax Library”, se utilizan para compilar aplica-
ciones Ajax puras. También, también puede utilizar Ajax Library al compilar formularios Web
Forms de ASP.NET o aplicaciones de ASP.NET MVC.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 43
10
Imagen 10. Ingreso a Microsoft Visual Studio
Fuente: http://www.csharpya.com.ar/detalleconcepto.php?codigo=126&inicio=
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 44
11
En la imagen anterior, se observa cómo se crea un proyecto en Microsoft Visual Studio. Para
ello, se selecciona el menú “Archivo”, se escoge la opción “Nuevo” y escoge la opción “Pro-
yecto”.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 45
12
En la imagen anterior, se observa el entorno que se generó automáticamente, como es el
esqueleto del programa.
Para cerrar el proyecto se escoge el menú “Archivo” y se escoge la opción “Cerrar solución”.
Como entornos de desarrollo o IDE para PHP, puede utilizarse los ya nombrados en nume-
rales anteriores como son Netbeans o Eclipse, pero además, se puede utilizar alguno de los
siguientes:
a. CodeIgniter. Utilizada para desarrolladores web.
b. CakePHP: en esta herramienta se elabora cualquier tipo de aplicaciones.
c. Symfony: usada por desarrolladores para hacer aplicaciones web complejas y escala cual-
quier aplicación realizada en una versión antigua de PHP.
d. Prado: herramienta usada para desarrollar aplicaciones web php5 y utiliza la programa-
ción orientada a objetos.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 47
14
Otras herramientas que pueden servir para desarrollar en PHP: BlueShoes , Solar, Limb, Ko-
hana, Phocoa, zajax, AjaxAC, Zoop, Seagull, Stratos, evoCore, Maintainable, Akelos y Zend
Framework, entre otros.
Por último, un pequeño ejemplo del famoso saludo “Hola mundo, escrito en PHP.
<!DOCTYPE html>
<html lang=”es”>
<head>
<meta charset=”UTF-8” />
<title> Priemr ejemplo en PHP</title>
</head>
<body>
<?php
echo ‘Hola mundo’;
?>
</body>
</html>
En PHP: se utiliza la base de datos MySQL y phpMyAdmin o también HeidiSQL, que es una
herramienta sencilla, potente, no pesada y sobre todo libre. Otros entornos de desarrollo,
Apache, Xampp, Wamp, Mamp, EasyPHP.
Como se nota, PHP tiene una gran capacidad de conexión con la mayoría de motores de
base de datos actuales, pero es de destacarse la conectividad con MySQL y PostgreSQL.
Actualmente PHP soporte la conexión con servidores de bases de datos SQL como NoSQL,
entre otros, Oracle, ODBC, DB2, Microsoft SQL Server, Firebird, SQLite o MongoDB.
De otra parte, existen muchos IDE de múltiples lenguajes tales como Eclipse, ActiveState
Komodo, IntelliJ IDEA, MyEclipse, Oracle JDeveloper, NetBeans, Codenvy y Microsoft Visual
Studio.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 48
15
En cuanto al lenguaje de programación Java.
Un ejemplo para realizar la conexión entre java y MySQL:
try {
Class.forName(“com.mysql.jdbc.Driver”);
con = DriverManager.getConnection(“jdbc:mysql://localhost:3306/java1”,
“root”, “”);
Java y Netbeans permite también realizar conexiones con el Motor de Bases de Datos SQL.
He aquí un ejemplo, donde se utiliza el driver correspondiente:
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 49
16
Si lo que se desea es conectar a una base de datos Oracle, se muestra en el siguiente código
la forma de hacerlo, con el driver correspondiente.
try{
Class.forName(“oracle.jdbc.OracleDriver”);
String BaseDeDatos = “jdbc:oracle:thin:@localhost:1521:XE”;
Connection conexion= DriverManager.getConnection(BaseDeDatos,”HR”,”HR”);
if(conexion!=null)
{
System.out.println(“Conexion exitosa a esquema HR”);
}
else{System.out.println(“Conexion fallida”);}
}
catch(Exception e)
{e.printStackTrace();}
}
Cuando se quiera realizar una conexión con un motor de bases de datos PostgreSQL, se
muestra el driver correspondiente:
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 50
17
Ejercicio para realizar
Tome alguno de los IDE descritos, en el lenguaje que desee y realice la conexión a la base
de datos que desee, para ello, utilice el driver adecuado, así como se señaló en el numeral 4.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 51
18
1
UNIDAD
2 Unidad 2
Protocolos Criptografía y
criptográficos mecanismos de seguridad
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 53
3
U2 Metodología
Para captar de mejor forma los tópicos aquí tratados, elabore cada una de las actividades
aquí expuestas, lea esta cartilla con detenimiento y conciencia de su propio aprendizaje, eje-
cute las evaluaciones y hágase una retroalimentación para poder avanzar adecuadamente.
Recomendaciones puntuales:
■ Realizar las lecturas asignadas.
■ Elaborar cada uno de los trabajos asignados.
■ Realizar las actividades de repaso y el parcial propuesto.
■ Cuando no entienda algo, comuníquese con su tutor.
■ No continúe con el siguiente tema, hasta que esté perfectamente claro el tema actual.
■ Siempre que lea, hágalo entendiendo las ideas.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 54
4
U2 Desarrollo temático
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 56
6
se por correo electrónico, teléfono, etc., aprender o anotar en alguna parte, o inter-
garantizando la imposibilidad de hacer cambiar correos electrónicos con las claves
trampa. (Tanenbaum, Andrew S. 2013). secretas del mismo número de personas
con quienes se va a comunicar, haciendo
Otros protocolos como el Transport Layer esta forma de comunicación muy frágil.
Security -TLS- es utilizado cuando se tra-
baja con conexiones web HTTP seguras, el La fortaleza de los algoritmos criptográfi-
mecanismo de autenticación se basa en el cos depende de la complejidad interna del
sistema X.509, posee una fase de configura- mismo y de la longitud utilizada de la clave
ción de claves, allí se trabaja con una clave secreta, con el fin de evitar ataques denomi-
de cifrado simétrico usando criptografía de nados de fuerza bruta.
llave pública y los datos son enviados a nivel
de aplicación. Los algoritmos simétricos tienen una ven-
taja y es su velocidad, pues se utilizan para
Protocolos de criptografía simétrica cifrar grandes cantidades de datos. Es el
Estos protocolos son también llamados caso de TrueCrypt que utiliza los algoritmos
Symmetric Key Ccryptography o criptogra- simétricos.
fía de clave secreta.
A continuación se relacionan algunos algo-
Este tipo de protocolos, se basan en que uti- ritmos de clave simétrica aunque algunos
lizan la misma clave para cifrar y descifrar un de ellos son considerados en esta época no
mensaje en un canal inseguro. Tanto emisor seguros, vale la pena conocerlos por infor-
como receptor, antes de comunicar el men- mación general.
saje se ponen de acuerdo sobre la clave que a. Data Encryption Standard – DES: es un
van a utilizar, cuando el emisor cifra el men- algoritmo de cifrado monoalfabético, en
saje con la clave acordada y el receptor lo el que se aplican permutaciones sucesi-
recibe, éste lo descifrará con la misma clave vas y también sustituciones al texto origi-
que acordaron. nal. La información de 64 bits se somete
a una permutación inicial de y luego, a
Recordando, el famoso código Enigma utili-
una de 8 bits y después a una sustitución
zado por los alemanes en la segunda guerra
de entrada de 5 bits, este proceso cons-
mundial, era un sistema simétrico, el cual a
diario se entregaban las claves de transmi- ta de diez y seis etapas de cifrado. Por
sión en un libro de códigos, el cual los ope- lo anterior, esta algoritmo se denomina
radores de radio consultaban y retomaban de clave simétrica de 64 bits, de los cua-
el código del día para que emisor y receptor les, emplea los 56 primeros bits para el
tuvieran la misma clave y pudieran comuni- cifrado y los restantes ocho bits para la
carse por medio de ondas de radio. comprobación de errores mientras dura
el proceso; lo que hace que solo 56 bits
Un gran problema que tiene este tipo de son utilizados como clave efectiva, esto
criptografía es que si se desea tener un do- quiere decir que existen 2 a la 56 posibles
cumento o mensaje secreto, privado entre combinaciones posibles, que lo hace casi
un número grande de personas, se debe imposible de descifrar.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 57
7
Ventajas Desventajas
Que la clave no puede ser de longitud variable,
Es uno de los más utilizados y por tanto de los
la cual se pueda incrementar para hacerla más
más probados.
segura.
Si se conoce suficiente texto original o en claro
Que tiene una implementación muy rápida y
y cifrado, es vulnerable al criptoanálisis llamado
sencilla.
diferencia.
La clave con una longitud de 56 bits es muy
corta, lo que la hace vulnerable.
Ya no es un estándar, porque en 1999 fue roto
este algoritmo por una computadora.
Cuadro 1
Fuente: Propia.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 58
8
por cuatro columnas. A esta matriz se le De este algoritmo existen varias versio-
vuelve a aplicar una serie de bucles de nes como AES-CBC (Cipher-block chai-
cifrado basado en operaciones matemá- ning), AES-CFB (Cipher feedback) y AES-
ticas (sustituciones no lineales de bytes, OFB (Output feedback).
desplazamiento de filas de la matriz, f. Blowfish: es un algoritmo por bloques
combinaciones de las columnas median- simétrico que utiliza 18 semiclaves y cua-
te multiplicaciones lógicas y sumas XOR tro cajas, el proceso que utiliza es simple
en base a claves intermedias). (Wikipe- pero seguro pues aún no se ha podido
dia.org) aplicar criptoanálisis sobre él.
Funciones de una vía y Hash de salida finito, denominado mapa, las cua-
Son funciones Hash que se trabajan por me- les son también cadenas de longitud fija,
dio de algoritmos que cumplen que: H:U-> esto quiere decir: la proyección del conjun-
M x -> h(x), quiere decir, que existen unos to U sobre el conjunto M, donde M pueden
elementos que generalmente son cadenas ser un conjunto de enteros y se entiende
como entradas, se convierten en un rango que la longitud de la cadena es fija.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 59
9
Imagen 2. Función Hash
Fuente: https://chuquispumasaunejesus.files.wordpress.com/2014/08/funciones.jpg?w=604
Este tipo de criptografía simétrica utiliza Se denominan claves privadas porque solo
dos claves, una clave primaria y una pública, son conocidas por el propietario y las claves
estas son complementarias, funcionan así, públicas reciben su nombre porque se les
cuando se codifica un mensaje con la clave puede conocer abiertamente.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 60
10
En la imagen 3, se presenta el funciona- Algunos algoritmos y tecnologías de clave
miento del protocolo de criptografía asimé- asimétrica son:
trica, María y Carlos poseen las dos claves,
a. Protocolo criptográfico Diffie-Hell-
la secreta y la pública, pero si María codifica
man: en la imagen 4, se muestra el ma-
con la llave pública el mensaje para Carlos
nejo del protocolo de Diffie-Hellman, el
con la llave pública, Carlos deberá leerlo con
cual se basa en lo siguiente: (Wikipedia.
la llave privada que solo él tiene y conoce; al
contrario, si María envía Carlos un mensaje org)
cifrado con la clave privada de María, enton- La idea de que dos interlocutores pue-
ces Carlos requiere la clave pública de María den generar conjuntamente una clave
para descifrarlo. compartida sin que un intruso que esté
escuchando las comunicaciones pueda
Cuando se requiere saber la identidad del
llegar a obtenerla.
emisor y del receptor, se combinan las cla-
ves así, María puede enviar un mensaje a Para ello cada interlocutor elige un nú-
Carlos cifrado dos veces, con la clave priva- mero público y un número secreto. Usan-
da de María y con la clave pública de Carlos. do una fórmula matemática, que inclu-
ye la exponenciación, cada interlocutor
El funcionamiento de la criptografía asimé- hace una serie de operaciones con los
trica tiene sus bases en el uso de números
dos números públicos y el secreto. A con-
primos muy grandes, que si se multiplican,
tinuación los interlocutores se intercam-
producen un número muy difícil de ser des-
bian los resultados de forma pública. En
compuesto, pues una computadora reque-
teoría revertir esta función es tan difícil
riría de miles de millones de años y tantos
como calcular un logaritmo discreto (Un
computadores como los átomos del uni-
millón de millones de cuadrillones más
verso. Por lo anterior, para que este cifrado
surta un buen efecto sobre a información, costosa que la exponenciación usada
se requiere que los números primos usados para transformar los números). Por eso
sean muy grandes. se dice que este número es el resultado
de aplicar una función unidireccional al
Estos protocolos asimétricos tienen la des- número secreto.
ventaja que si el texto a cifrar es muy largo,
A continuación ambos interlocutores
la codificación se vuelve muy lenta.
utilizan por separado una fórmula ma-
Hoy se codifica el texto base con claves si- temática que combina los dos números
métricas DES o IDEA, usan claves asimétri- transformados con su número secreto y
cas para la comunicación de la clave simé- al final los dos llegan al mismo número
trica usada. resultado que será la clave compartida.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 61
11
Imagen 4. Protocolo criptográfico de Diffie-Hellman
Fuente: http://www.javiercampos.es/blog/wp-content/uploads/2011/07/diffie-hellman.png
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 62
12
b. Protocolo criptográfico RSA: por sus e. Criptografía de curva elíptica ECC: se
siglas - Rivest, Shamir y Adleman-. Su llama así porque esta clave pública re-
uso es doble, para encriptar y para firmar quiere de unas claves más pequeñas,
digitalmente, utiliza clave pública en su esta característica hace que sea apta para
funcionamiento, decir, tiene una clave sistemas que requieren más memoria.
pública y una privada, en donde quien f. Criptosistema de Merkle-Hellman: es
envía el mensaje lo cifra con la clave pú- un criptosistema de llave pública asmé-
blica de quien recibirá el mensaje, cuan- trico, más simple que el RSA, no ofrece la
do se ha cifrado el mensaje y le ha llega- opción para firmar y es un criptosistema
do al destino, el recetor lo descifra con su que ya fue roto. Este criptosistema para la
propia clave privada. comunicación, requiere de una llave pú-
La seguridad de este algoritmo radica en blica y una privada. Solo se utiliza la llave
el problema de la factorización de nú- pública para cifrar, no para verificar firma
meros enteros. Los mensajes enviados y la llave privada solo descifra mensajes,
se representan mediante números, y el no sirve para firmar, lo anterior indica
funcionamiento se basa en el producto, que este criptosistema no se utiliza para
conocido, de dos números primos gran- autentificación por firma electrónica.
des elegidos al azar y mantenidos en se-
Protocolos de firma digital
creto. Actualmente estos primos son del
orden de diez a la 200, y se prevé que su La firma digital es una herramienta tecnoló-
tamaño crezca con el aumento de la ca- gica para garantizar la autoría e integridad
pacidad de cálculo de los computadores. de documentos digitales, estas firmas aso-
(Wikipedia.org) cian un mensaje digital para garantizar la
c. DSA Digital Signature Algorithm o identidad de la persona que firma, así como
también llamado algoritmo de firma la integridad del mensaje. Una firma digital
digital: sirve para firmar y no para cifrar no asegura que el mensaje sea confiable.
información. Para mejorar la seguridad,
Existen algunos algoritmos de firma que se
se puede utilizar RSA y DSA simultánea-
basan en la criptografía de clave asimétrica
mente, pero requiere más tiempo que el
para cifrar y descifrar, algunos de los más in-
RSA. teresantes son:
d. ElGamal: usado para generar firmas digi-
tales, para cifrar y descifrar. Este procedi- Firma RSA: la firma digital RSA, se utiliza
miento se basa en cálculos cobre un gru- para el envío de mensajes, secretos o no con
po cíclico (G) que hace que la seguridad el objeto de que nadie los pueda modificar.
del mismo dependa de la dificultad para Por ejemplo, Si Ana envía un mensaje a Raúl,
calcular los llamados logaritmos discre- Ana posee una clave pública de dos valores
tos en (G). (a y b) y una clave privada (c).
Este esquema de firma, da la posibilidad Firma DSA: este estándar es utilizado para
que un verificador confirme la autentici- firmas digitales y no para cifrar la informa-
dad de un mensaje enviado por un emisor ción. Su funcionamiento se compone de
sobre el canal de comunicación inseguro. tres fases o etapas como son, la generación
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 63
13
de claves, la firma y la verificación. Tanto la las ejecuta el emisor y la verificación la eje-
generación de las claves como de la firma, cuta el receptor.
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 64
Fundación 14
Generación de números aleatorios Antes de ser cifrado un mensaje se le llama
texto en claro, pero una vez ese texto se ha
Muchos de los algoritmos criptográficos cifrado, se le llama texto cifrado.
requieren generar números aleatorios para
hacer las claves, es decir, que en casi todos Los algoritmos criptográficos modifican los
los sistemas criptográficos se generan nú- datos de un documento o mensaje con el
meros aleatorios para que los mensajes no fin de lograr algunas de las características
se puedan adivinar por intrusos. Ejemplos de seguridad como son, la autenticación, la
en donde se utilizan los números aleato- integridad y la confidencialidad.
rios está la telefonía digital GSM, que se usa
Son tres grupos en los que se clasifican los
para asignar claves aleatorias para autenti-
algoritmos criptográficos:
car usuarios o dar seguridad a la asignación
inicial de números secretos a las tarjetas de 1. Criptografía simétrica o también llama-
crédito. da de clave secreta.
2. Criptografía asimétrica o también lla-
La generación de números aleatorios es uti- mada de clave pública.
lizada para generar claves de sesiones y for-
taleza o calidad, para que la calidad de los 3. Criptografía Hash o de resumen.
sistemas sea fuerte, pues de ellos depende
En cuanto a la criptografía simétrica, estos
la fortaleza de las claves.
encriptan y desencriptan el mensaje con la
Si el generador de números aleatorios es misma clave. Estos algoritmos son seguros y
roto, se volverá el punto más frágil del sis- veloces, pues son mil veces más rápidos que
los algoritmos asimétricos.
tema criptográfico. Existen muchos genera-
dores de números pseudo-aleatorios como Algunos de los algoritmos simétricos ya tra-
el llamado Yarrow, la cual es usado amplia- tados en esta cartilla son: DES, 3DES, RC2,
mente por el gobierno americano. RC4, RC5, IDEA, AES y Blowfish.
Otro cifrador de flujo muy usado es el RC4, En cuanto a la criptografía asimétrica o de
trabaja con bytes y genera bytes aleatorios, clave pública, se diferencia de la simétrica,
opera también en modo sincrónico, es muy porque utiliza una clave para encriptar y
eficiente en implementaciones de software. otra para desencriptar; ninguna de las dos
claves depende la una de la otra. Las longi-
Introducción a los algoritmos criptográ- tudes de las claves son muy superiores a las
ficos de las claves simétricas y su complejidad en
Los algoritmos criptográficos son métodos el cálculo, hace más lentos los algoritmos
asimétricos que los simétricos.
matemáticos empleados para cifrar y des-
cifrar mensajes, que operan con una o más Algunos de los algoritmos asimétricos son:
claves, las cuales pueden ser numéricas o de Diffie-Hellman, RSA, ElGamal y Criptografía
cadenas de caracteres, utilizados como pa- de curva elíptica.
rámetros de los algoritmos, con el objeto de
recuperar los mensajes a partir de la versión Hash: es una función que genera claves
que se utilice para cifrar el mensaje. para representar un documento, registro,
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 66
16
Otros usos de la matemática en la criptogra- Por último, la criptografía simétrica utiliza
fía son las curvas elípticas, que hoy en día un estándar comercial llamado Rijndael,
son muy utilizadas en la mayoría de están- que basa su representación en 8 bits y las
dares criptográficos. Al igual que las curvas operaciones básicas se basan en campos fi-
hiperelípticas, que se utilizan en varios paí- nitos y anillos polinómicos.
ses comercialmente.
Tipos block y stream de algoritmos crip-
Otra área de la criptografía son los lattices tográficos
o retículas, aquí se encuentra un vector con Los algoritmos criptográficos, se encargan
Longitud Mínima dada una lattice. Este tipo de modificar los datos de un documento
de criptografía se utiliza para el cifrado y fir- para alcanzar características de seguridad
ma digital, al igual, se usa en ataque a es- como son la autenticación, integridad y
quemas RSA. confidencialidad. De estos algoritmos se tie-
nen, los Cipher Blocks y los Cipher Stream.
Los mapeos bilineales, utilizados por los
esquemas de firma digital, de cifrado, inter- Cipher Blocks - Cifrado por bloques, es un
cambio de claves, entre otras. método encargado de encriptar texto, en el
que la clave criptográfica y el algoritmo se
Un campo de investigación actual es el lla- aplican en bloque de datos, esto hace que
mado grupo de trenzas o braid group, este se divida el texto original en bloque de bits
grupo de trenzas puede definir PLD y de con tamaño fijo y se cifran de manera inde-
esta manera define un esquema criptográ- pendiente dando así como resultado cifra-
fico. dos que no son idénticos del texto cifrado,
el vector de inicialización lo que hace es
El nuevo tipo de criptografía denominado derivar el generador de números aleatorios
ecuaciones multivariables, las cuales tiene que se combina con el texto en el primer
claves de longitud equivalente a la cripto- bloque y la clave, esto asegura que los blo-
grafía simétrica y además que su compleji- ques posteriores no posean el mismo texto
dad de ataque es exponencial. de la primera encripción.
1019bits
K Cifrador
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 67
17
En la figura anterior se presenta un mensaje Cipher Stream - Cifrado de Flujo: este mé-
inicial de 1019 bits, el cual se divide en tres todo de cifrado utiliza bit a bit o cada dígito
bloques de 300 bits y el último de 119 bits. binario, dado esto, no es muy útil en la crip-
tografía moderna pero aun así es un buen
Este tipo de cifrado es una unidad de clave método.
simétrica, que trabaja con grupos de bits de
longitud fija, al cual se les denomina blo- Este tipo de cifrado es usado en las teleco-
ques y se les aplica una transformación de- municaciones, porque cuando se establece
nominada invariante. Cuando se descifra el una comunicación vía teléfono móvil, la voz
texto, se ingresan bloques de texto cifrado y se digitaliza (se convierte a un flujo de bits)
se generan bloques de texto plano. y se envía cifrada por la red de comunica-
ciones, pero es tan rápido el cifrado que los
Como ejemplo de cifrado por bloques se hablantes no se dan cuenta.
tienen los siguientes algoritmos de cifrado:
DES-Data Encription Standard, AES-Advan-
ced Encryption Standard, IDEA- Internatio- M: 01000111
nal Data Encryption Algorithm, RC2, RC5, S: 10110011 = M´:11110100
Khufu, KHAFRE, GOST, SAFER, Blowfish, Ake- M´:11110100 S: 10110011
larre, FEAL, Skipjack, 3DES.
M: 01000111
.. M M´ M
..
(
(
+ +
Ana Bernardo
s s
Generador Generador
pseudoaleatorio pseudoaleatorio
K K
Figura 2. Cifrado de flujo
Fuente: http://www.edukanda.es/mediatecaweb/
data/zip/638/PID_00150197/web/main/m3/v3_2_1.
html
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 68
18
La clave utilizada por este tipo de ciframien- vide por bloques, cada uno de ellos utiliza
to, es la fortaleza del cifrado de flujo, pues la misma clave (key), (ver imágenes 7 y 8),
se utiliza una clave aleatoria muy larga, que es decir que los bloques de manera indivi-
utiliza un generador pseudoaleatorio, cuyo dual son cifrados y una vez se unen estos
algoritmo a partir de un mismo valor de en- bloques ya cifrados, se obtiene el mensaje
trada, se genere el mismo flujo de bits de sali-
completo cifrado. Cuando en este método
da, que se asemeja a una secuencia aleatoria.
se tienen bloques de “texto claro” iguales,
Los métodos más conocidos de este tipo de los bloques cifrados son iguales, esto quiere
cifrado es el de sustitución y transposición, decir que el patrón de los datos no es escon-
como es el método de Julio César. dido por el método, esta es la gran desven-
taja de este método, pues lo hace sensible
Modos ECB, CBC, CFB Y OFB de algorit- para reconocer los patrones guía y de esta
mos criptográficos forma descubrir el mensaje original a partir
ECB – Electronic codebook- Libro de código del ciframiento hecho. Este método es útil
electrónico: al enviar un mensaje, este se di- para datos aleatorios.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 19
69
CBC – Cipher Block Chaining. Cifrado en tiene una desventaja que consiste en que es
Bloque Encadenado: se inicia con el “texto secuencial, pues el resultado de un bloque
claro”, el cual es dividido por bloques, a cada depende de otro y esa forma de trabajo difi-
uno de ellos se le aplica la operación XOR del
cultaría el procesamiento por bloques para-
bloque obtenido en la etapa anterior, esto
es que cada bloque encontrado depende- lelos. Es muy útil para encriptar archivos, en
rá de todos los bloques de texto anteriores. donde la seguridad se incrementa respecto
Aunque es muy utilizado en el ciframiento, a ECB ver (imágenes 9 y 10).
CFB - Cipher FeedBack - Cifrado Reali- texto claro a partir de la operación XOR y así
mentado y OFB - Output FeedBack: Estos se obtiene el texto cifrado, para ello, cuando
métodos toman los bloques y los transforma se intercambia un bit en el texto que se cifra,
en flujo, debido a que crean bloques de flujo se produce un intercambio estrictamente
de llave, una vez hace el cambio, se cifra el en la misma posición del texto claro.
Relativo a las llaves criptográficas toman un texto plano o llamado texto claro
Las claves o llaves criptográficas correspon- y lo convierten en un texto cifrado o desci-
den a información que controla los procesos frado, para ello utilizan secuencias de letras
de los algoritmos criptográficos, los cuales o de números.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 71
21
Estas claves las utilizan los algoritmos cripto- cualquier medio, podrá acceder a los datos
gráficos como por ejemplo, las firmas digita- cifrados del sistema.
les y los códigos de autentificación de men-
sajes, también llamadas funciones Hash. Una frase puede utilizarse como clave para
un sistema, pero éste debe por algún algo-
Para seleccionar adecuadamente una cla- ritmo de derivación de claves, expandiéndo-
ve segura se deben tener en cuenta varios la o reduciéndola de acuerdo a la longitud
factores a saber: la longitud, la cual, a mayor que se desee, por ejemplo en un algoritmo
número de bits que la componen, el intruso de cifrado por bloques se utilizan claves de
deberá trabajar con más número de com- 128 bits, la cual es suficiente para que ocupe
binaciones con lo que usualmente se llama menos espacio y no se reduzca la seguridad.
“fuerza bruta”. Otra característica que debe De otra parte, las funciones Hash utilizan un
tener la clave de seguridad es la aleatorie- sistema de cifrado de contraseñas que pro-
dad en lo posible con números, letras y ca- ducen resultados con la misma longitud, sin
racteres especiales, si se utiliza este método importar la longitud de la frase original, esto
surte un mejor éxito, pues se genera menor con el propósito de no inferir la longitud de
probabilidad de desciframiento de la clave. la frase a partir de la longitud de la clave.
Un último elemento que se debe tener en
cuenta para tener una clave segura es el pe- Una buena seguridad con algoritmos de cla-
riodo de uso, pues será más insegura esta ve simétrica se obtienen a partir de 80 bits,
clave cuando más dure su uso, por ello, es aunque si son de 128 bits, se considerará
aconsejable cambiar las claves con la mayor una clave muy segura.
regularidad.
Los sistemas de clave pública utilizan cier-
La fuerza en la seguridad de un sistema ci- ta estructura matemática para las claves de
frado se basa en que la clave permanezca sus sistemas, pues se considera que no de-
secreta. Lo aconsejable cuando se tiene un ben ser completamente aleatorias y que de-
sistema que almacena las claves para que ben estar relacionadas entre sí, es el caso de
un usuario se autentique, será más seguro los sistemas RSA, los cuales utilizan claves
si las claves están cifradas, inclusive, suele públicas generadas a partir de dos núme-
utilizarse como clave de cifrado la misma ros primos. Lo anterior quiere decir que, los
contraseña que se desea cifrar y cuando el sistemas de clave pública necesitan longitu-
usuario escriba la contraseña para realizar la des mayores en sus claves que los sistemas
autenticación, podrá descifrarse la contra- simétricos, con el fin de dar una seguridad
seña almacenada; en caso de que la contra- similar.
seña digitada por el usuario y la descifrada
coincidan, el sistema permitirá el ingreso Una característica de los sistemas que se ba-
del usuario, pues la contraseña es correc- san en factorización y logaritmos discretos
ta, en otro caso, el resultado del descifrado es de 3072 bits, con los cuales se obtienen
serán caracteres aleatorios, inentendibles seguridades similares a un cifrado simétrico
para aquel que pretende atacar el sistema. de 128 bits.
Las claves son el elemento más débil del sis- Los conocedores de la seguridad en los sis-
tema, pues si el intruso se hace a la clave por temas indican que el método de “libreta de
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 72
22
un solo uso” (es un algoritmo de cifrado en mo de cifrado simétrico muy empleado en
el que el “texto claro” se combina con una el mundo.
clave aleatoria de igual tamaño que el texto
en claro y solo se usa una vez) es el único El algoritmo Triple-DES encripta tres veces
que ha sido probado por la matemática y ha una clave DES, su grado de seguridad varía
sido seguro. dependiendo del método que se elija para
el ciframiento, es muy lento y por ello ha
Selección de un algoritmo sido descartado.
Seleccionar un buen algoritmo de cifrado RC2, es un algoritmo que reemplazó a DES,
no es fácil, todo dependerá para que se de-
maneja ciframiento por bloques, la clave es
sea utilizar, pues no existe ningún algorit-
de tamaño variable y trabaja en bloques de
mo que cubra todas las necesidades de un
64 bits, es mucho más rápido que el DES, si
sistema. Suele tenerse en cuenta que para
se elige el tamaño de la clave adecuada, se
obtener un buen algoritmo seguro se han
vuelve mucho más seguro que DES en ata-
de tener buenos recursos de CPU, que las
frases largas producen mejores resultados ques de fuerza bruta.
que las claves cortas; que los cifrados asi- AES - Advanced Encription Standard o Es-
métricos son menos seguros que los simé-
tándar Criptográfico Avanzado, también es
tricos con la misma longitud de clave, pero
un algoritmo de cifrado que trabaja por blo-
es mucho más lento; además que el cifrado
ques simétrico, reemplazó a DES, se puede
por bloques con claves largas y complejas,
utilizar con información clasificada. El tama-
son mucho más seguros que los cifrados de
ño de bloques que maneja AES es de 128
flujo. Un consejo es que cuando se cifren
bastantes datos, se haga con una clave si- bits y sus llaves son de 128, 192 y 256 bits.
métrica y a la vez cifrar la clave simétrica con Ejercicio para realizar
una clave asimétrica.
En el lenguaje de programación que usted
Un buen algoritmo de cifrado puede ser,
domine, elabore un programa que resuelva
utilizar el cifrado AES de 128, 192 o 256 bits
la siguiente situación:
en el caso de querer realizar un backup onli-
ne, pues con los procesadores actuales, una María quiere tener una clave muy segura
máquina se tardaría doscientos millones de a la cual Usted deberá realizarle un cifrado
años en dar con la clave AES de 128 bits. combinando dos números aleatorios que
La banca mundial utiliza el cifrado AES de se encuentren entre 10000 y 600.000.000.
128 bits y la Agencia de Seguridad de los Es- Cuando genere los dos números aleatorios,
tados Unidos también lo usa. intercale un dígito del primer número con
el segundo, así sucesivamente hasta termi-
Los algoritmos más utilizados y seguros son nar. Esta sería la clave que María utilizaría
los siguientes: DES-Data Encription Stan- para proteger su información, muestre por
dard, algoritmo de 64 bits, emplea una cla- pantalla la nueva clave que usted le generó
ve de 56 bits en la ejecución, fue un algorit- a María.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 73
23
1
UNIDAD
3Unidad 3
Algoritmos de
criptografía Criptografía y
simétrica mecanismos de seguridad
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 75
3
U3 Metodología
Recomendaciones:
■ Realizar las lecturas asignadas.
■ Elaborar cada uno de los trabajos asignados.
■ Participar en el foro propuesto.
■ Realizar las evaluaciones propuestas.
■ Cuando no entienda algo, comuníquese con su tutor.
■ No continúe con el siguiente tema, hasta que esté perfectamente claro el tema actual.
■ Siempre que lea, hágalo entendiendo las ideas.
M: 0000 0001 0010 0011 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
The first bit of M is “0”. The last bit is “1”. We read from left to right.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 78
6
Imagen 1. Etapas del Algoritmo DES.
Fuente:
http://redyseguridad.fi-p.unam.mx/proyectos/criptografia/criptografia/index.php/4-criptografia-simetrica-o-
de-clave-secreta/42-des-data-encryption-standard/424-aplicacion-del-algoritmo-caso-practico
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 80
8
Imagen 4. Algoritmo Triple DES, Encripción y desencripción
Fuente: http://www.slideshare.net/gopalsakarkar/cryptography-and-encryptions
AES, es considerado como un algoritmo Al cifrar una clave se aplica a cada uno de
de cifrado por bloques, cada uno de 128 los estados, unas operaciones o llamadas
bits, de tal forma que los datos que se van rondas (ver imagen 5), de las que usa once;
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 81
9
cada una de ellas, utiliza una subclave dis- una ronda final, que se aplica a la última
tinta. Estas subrondas a su vez, se clasifican subclave.
como: la ronda incial, que se aplica a la sub-
Dentro de cada ronda se realizan cuatro
clave inicial; luego nuevo rondas estándar, operaciones como son: SubBytes, Shif-
a las cuales se les aplica las nueve claves tRows, MixColumns, AddRoundKey, que no
siguientes, una en cada ronda. Por último, son otra cosa que matrices.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 83
11
Imagen 7. Algoritmo Blowfish
Fuente: http://lumbreras-criptografia.blogspot.com.co/2013/07/cifrados-por-bloque-blowfish.html
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 84
12
datos a 26500 ciclos de reloj por bloque. Tie- flexible, que se puede implementar eficien-
ne como principal propósito, cumplir con temente en distintas aplicaciones criptográ-
los criterios de diseño del NIST para AES. ficas.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 85
13
Rc4, además de ser rápido y ser usado por hemos visto anteriormente es posi-
aplicaciones comerciales serias, es un gene- ble que este requisito no se cumpla).
rador de números pseudoaleatorios que se
inicializa desde una clave secreta superior a
• Poder transformar un texto de lon-
gitud variable en una huella de ta-
los 256 bytes, utilizada por SSL. maño fijo (como el SHA-1 que es de
160bits).
RC4, se basa en la construcción de dos arre-
glos, uno denominado S-box y el otro arre- • Facilidad de empleo e implementa-
glo K. El vector S-box se llena con valores se- ción.
cuenciales de 0 a 255, mientras que el vector
K se llena con el valor de la semilla hasta ser Algunos algoritmos de funciones Hash son:
completamente llenado y luego, se mezclan
El algoritmo MD5 es un algoritmo de fun-
los dos vectores. A continuación, el vector S,
ción Hash de 128 bits. Toma unos tamaños
se intercambia usando el valor de la semilla.
determinados a la entrada y como salida,
Como resultado, se tiene la Clave para el al-
saca los mismos 128 bits, pero números de
goritmo.
64 pasos.
Algoritmos de funciones de Hash
El algoritmo SHA-1, por su parte admite blo-
Las funciones Hash tienen como entrada un ques de 160 bits. la función Hash de com-
conjunto de elementos, que generalmen- presión es más compleja que la del MD5, por
te son cadenas, las cuales son mapeadas o ello, es un algoritmo más lento, ya que tiene
convertidas en rangos de salida finitos, que ochenta pasos y tiene mayor longitud, esto
también son cadenas de longitud fija. lo hace un algoritmos más seguro y robus-
to. De este tipo de algoritmos se conocen:
La fórmula que generalmente usan las fun- SHA-224, SHA-256, SHA-384, y SHA-512. Por
ciones Hash es: H: U -> M x -> h(x). obvias razones, el más seguro es el SHA-512.
Pues el que tiene mayor número de bits de
La función Hash actúa como una proyección salida, utiliza ochenta pasos como el SHA-1,
del conjunto U sobre el conjunto M, el cual pero su diferencia radica en que el tamaño
puede ser un conjunto de números enteros. de salida 512 y el SHA-1 es 160. Los tamaños
Por lo general el conjunto U tiene un núme- del bloque, de palabra e internos el doble
ro elevado de elementos y el conjunto U es del SHA-1. Como desventaja tienen los al-
un el conjunto U está formado por cadenas goritmos hash, que entre más seguros, son
con pocos símbolos. más lentos.
Según Sergio de Luz (2010), los requisitos El algoritmo de Residuo de la división, divi-
que deben cumplir las funciones hash: de el valor de la clave de entrada entre un
• Imposibilidad de obtener el texto ori- número apropiado y utiliza el residuo de la
división como dirección relativa para el re-
ginal a partir de la huella digital.
gistro.
• Imposibilidad de encontrar un con-
junto de datos diferentes que tengan El algoritmo Media del cuadrado, es otro al-
la misma huella digital (aunque como goritmo Hash, el cual toma la clave de en-
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 86
14
trada, la eleva al cuadrado, a continuación Algoritmo MD5
se extraen algunos dígitos específicos de la
mitad del resultado, con el fin de construir Desarrollado por Ronald Rivest, 1995. Este
la dirección relativa. Al querer una dirección algoritmo es uno de los más utilizados en el
de N dígitos, se truncan en ambos extremos momento. Se basa en dos algoritmos como
de la clave elevada al cuadrado y se toman
son el MD2 y el MD4, el cual sale de una me-
los N dígitos que se encuentren en la mitad.
Para la clave, se extraen las mismas posicio- jora que se le hiciera al MD2. Estos proto-
nes de N dígitos. colos producen un número de 128 bits que
sale de un texto de cualquier longitud.
Al algoritmo Pliegue, utiliza la llave y la ele-
va al cuadrado, luego, unos dígitos específi- Realmente el algoritmo MD5 reemplazó al
cos se sacan de la mitad del resultado, con el MD4, que no ha podido superar el rendi-
fin de construir la dirección relativa, cuando
miento del segundo, pero afortunadamente
se quiere una dirección de N dígitos, se trun-
can los dos extremos de la clave elevada al no se ha publicado aún ningún compromiso
cuadrado y se toman los N dígitos del me- sobre la integridad y funcionamiento.
dio. Para clave se extraen las mismas posi-
ciones de N dígitos. Como se nota en la imagen 10, el algoritmo
MD5 inicia con que al mensaje original lo
rellena hasta completar 448 mod 512, esto
quiere decir que la longitud del mensaje es
de 64 bits menos que un entero múltiplo
de 512. La parte del relleno se conforma de
un bit en 1 seguido por todos los bits ne-
cesarios, pero en 0 y la longitud original del
Imagen 9. Algoritmo Twofish
Fuente: http://www.redeszone.net/2010/11/09/ mensaje se almacena en los últimos 64 bits
criptografia-algoritmos-de-autenticacion-hash/ del relleno.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 87
15
Imagen 10. Algoritmo MD5
Fuente: http://neo.lcc.uma.es/evirtual/cdd/graficos/md5.gif
De otra parte, se tiene un valor fijo de 128 tado será un valor en el buffer que no es otra
bits en un buffer, el cual se puede observar cosa que el hash del mensaje.
como cuatro registros de 32 bits (A, B, C, D)
y se almacena con los valores siguientes: Algoritmo SHA
A=67452301; B=EFCDAB89; C=98BADCFE;
D=10325476, que se escriben en Hexadeci- SHA - Secure Hash Algoritm, fue desarrolla-
mal.
do por NSA, genera números has de 160 bits
Luego de efectuar varias rondas de procesa- que se generan a partir de:
miento, el algoritmo toma bloques de 512
bits de entrada que son mezclados con los La longitud máxima de entrada de los men-
128 bits del buffer; de esta forma, el algo- sajes es de 2 a los 64 bits, los cuales son pro-
ritmo repite el proceso, hasta que todos los cesados en bloques de 512 bits y el resulta-
bloques de entrada se consuman y el resul- do producido es de 160 bits.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 88
16
Imagen 11. Algoritmo SHA-1
Fuente: http://redyseguridad.fi-p.unam.mx/proyectos/criptografia/criptografia/index.php/5-criptografia-
asimetrica-o-de-clave-publica/55-funciones-hash/552-sha-secure-hash-algorithm
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 89
17
Imagen 12. Procesamiento SHA-1 de un único bloque de 512 bits
Fuente: http://redyseguridad.fi-p.unam.mx/proyectos/criptografia/criptografia/index.php/5-criptografia-
asimetrica-o-de-clave-publica/55-funciones-hash/552-sha-secure-hash-algorithm
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 90
18
Según la Universidad Nacional autónoma La entrada a cada ronda consta del blo-
de México. (2015). El algoritmo es procesa- que de 512 bits que se esté procesan-
do en cinco pasos, a saber: do (Yq) y los 160 bits de la memoria MD,
1. Se incorporan bits de relleno al mensaje nótese que cada bloque de 512 bits ac-
de entrada de tal modo que cumpla: tualizará el valor de la memoria tempo-
ral. Cada ronda también hace uso de la
longitud = 448 mod 512. constante aditiva Kt, donde
El relleno consiste en un uno seguido de 0 ≤ t ≤79 indica uno de los 80 pasos a
los ceros que sean necesarios. Aunque lo largo de las cuatro rondas. Los valores
el mensaje ya tenga la longitud desea- para dicha constante se muestran en la
da, se debe efectuar el relleno, por lo tabla de la imagen 13.
que el número de bits de dicho relleno
está en el rango de 1 a 512 bits.
2. A la salida del paso 1, se le añade un
bloque de 64 bits que represente la lon-
gitud del mensaje original antes de ser
rellenado.
Se inicializa la memoria temporal MD,
la cual consta de 160 bits y su finalidad
es almacenar los resultados intermedios
y finales de la función de dispersión. La Imagen 13. Valores de la constante aditiva Kt en
MD consta de 5 registros (A, B, C, D, E) de SHA-1
Fuente: http://redyseguridad.fi-p.unam.mx/
32 bits cada uno, los valores con los que
proyectos/criptografia/criptografia/index.php/5-
se inicializan son los siguientes (valores criptografia-asimetrica-o-de-clave-publica/55-
hexadecimales): funciones-hash/552-sha-secure-hash-algorithm
A=67452301
B=EFCDAB89 4. Una vez que se procesan los L bloques
de 512 bits, el resumen del mensaje son
C=98BADCFE
los 160 bits de salida del último bloque.
D=10325476
Códigos de autenticación de mensaje
E= C3D2E1F0
(MAC) y algoritmo HMAC
3. Se procesa el mensaje por bloques de
512 bits, cada uno pasa por un módu- Los códigos de autenticación de mensaje
lo que consta de 4 rondas de procesa- – MAC, es un trozo de información que se
miento de 20 pasos cada una. Las ron-
usa para autenticar un mensaje. Estos va-
das tienen una estructura similar, con la
excepción de que cada una ocupa una lores MAC se calculan por medio de la fun-
función lógica primitiva diferente (f1, ción hash criptográfica con clave secreta K,
f2, f3 y f4). Esta parte del algoritmo se la cual solo es conocida por el emisor y el
muestra en la imagen 12. receptor.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 91
19
Las funciones MAC ideales son aquellas que Algoritmo HMAC
mapean de forma aleatoria todos los posi-
bles valores del mensaje de entrada M en HMAC, es un mecanismo para autenticar
salidas de tamaño de N bits. Estas funciones mensajes. Es un entorno de autenticación
MAC se dice son seguras si resisten a la com- en entornos seguros SSL, por medio de la
putación de nuevos valores Hash. operación MAC en la que interviene funcio-
nes hash.
Existen distintas funciones MAC, como por
ejemplo: Los HMAC con clave son algoritmos que ga-
rantizan un mensaje íntegro. Un algoritmo
CBC-MAC: La idea detrás de este algoritmo HMAC tiene dos parámetros, el uno, es una
es la de convertir un algoritmo de cifrado
entrada del mensaje y una clave secreta,
simétrico en una función MAC. El funciona-
que solo la conocerán el emisor y los posi-
miento básico consiste en cifrar el mensaje
bles receptores. El emisor utiliza la función
usando un algoritmo en modo CBC y tirar
todo el resultado de texto cifrado a excep- HMAC para generar un valor, es decir el có-
ción del último bloque. digo de autenticación de mensajes, forma-
do por la compresión de la clave secreta y
HMAC: dado que una función MAC es un la entrada del mensaje. Este mensaje es en-
mapeo aleatorio, y que las funciones hash viado junto al código de autenticación de
se comportan como tales, podemos explo- mensajes, el receptor calcula el código de
tar la idea de utilizar una función hash para autenticación de mensajes en el mensaje
implementar una función MAC. La opción recibido con la misma función HMAC que
más popular hoy en día es la de usar HMAC- usó el emisor, luego, el receptor hace una
SHA-256. comparación con el resultado que calculó
el código de autenticación de mensajes que
UMAC: las funciones UMAC parten de la pre-
ha recibido, de donde se pude deducir que
misa de que el atacante necesita interactuar
coinciden o no los mensajes. En el momento
con el sistema para comprobar si el resul-
tado MAC que ha generado es válido o no. que los valores coincidan, el mensaje es re-
Es decir, no existe nada parecido a un ata- cibido correctamente, por lo que el receptor
que exhaustivo off-line contra las funciones se percata que el emisor si es parte de su co-
MAC. Así, argumentan que se puede reducir munidad, porque comparten la clave.
el resultado a tan solo 64 bits. Sin embargo,
no existe un estándar bien definido de fun- Una función criptográfica HMAC, se dice
ciones MAC como ocurre con las funciones que es fuerte criptográficamente, cuando
hash, lo que tiene efectos contraproducen- su tamaño, calidad de clave, tamaño de la
tes a largo plazo desde el punto de vista de longitud del resultado del hash en bits es
la implementación. adecuado. Los algoritmos más comunes de
tipo HMAC son:
Algunos usos que se le dan a las MAC es
para autenticación, es decir que tanto re- MD5, ya explicado en este escrito, que re-
ceptor como emisor solamente comparten cordando, utiliza 128 bits, con un mensaje
la clave de la función MAC. de longitud variable, cuya clave secreta se
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 92
20
combina y procesa con algoritmos hash Ejercicio para realizar
HMAC-MD5, cuyo resultado es un hash de
Utilizando algunos de los lenguajes de pro-
128 bits y el hash se adjunta al mensaje ori-
gramación que conoce, realice un algoritmo
ginal y se envía al extremo remoto.
RC4, utilizando dos vectores, el uno deno-
mínelo S y el otro K. en el vector S almacene
SHA: SHA-1 utiliza una clave de 160 bits. El
valores secuenciales de 0 a 250 y en el vec-
mensaje de longitud variable y la clave se-
tor K almacene las semillas producidas por
creta compartida de 160 bits se combinan y números randómicos. Luego mezcle los dos
se procesan con el algoritmo de hash HMAC- vectores así: intercambie el valor de una se-
SHA1. El resultado es un hash de 160 bits. El milla con un número del vector S, así obten-
hash se adjunta al mensaje original y se en- drá la clave para el algoritmo. Imprima los
vía al extremo remoto. dos vectores
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 93
21
1
UNIDAD
3Unidad 3
Algoritmos de
criptografía Criptografía y
simétrica mecanismos de seguridad
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 95
3
U3 Metodología
Recomendaciones:
■ Realizar las lecturas asignadas.
■ Elaborar cada uno de los trabajos asignados.
■ Participar en el foro propuesto.
■ Realizar las evaluaciones propuestas.
■ Cuando no entienda algo, comuníquese con su tutor.
■ No continúe con el siguiente tema, hasta que esté perfectamente claro el tema actual.
■ Siempre que lea, hágalo entendiendo las ideas.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 96
4
U3 Desarrollo temático
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina 97
Andina 5
da, e y d, respectivamente, se inicia con el Este mensaje se descifra con la llave privada.
cifrado así:
c = me (mod (n)), siendo m el mensaje origi- Es un algoritmo relativamente rápido y muy
nal y c el mensaje cifrado, haciéndose este
ciframiento con la llave pública. utilizado como sistema de llave pública, in-
cluye la firma digital y empleado para en-
Para descifrar el mensaje se procede así: criptar y hacer envío de la clave simétrica
m = cd (mod (n)), siendo m el mensaje origi-
nal pero visto numéricamente y c es el men- que será usada luego al realizar comunica-
saje cifrado. ción cifrada ver imagen 1.
Una importante característica de RSA, es Ejemplo, para cifrar el mensaje “muc”, uti-
que un mensaje que ha sido cifrado con la lizando el algoritmo RSA:
clave pública, se descifra con la llave priva- Primer paso: seleccionar dos números pri-
da, aunque también, si se ha cifrado con la mos grandes.
clave privada, se puede descifrar con la llave
pública. p: 83
q: 89
En los algoritmos asimétricos, cuando se ci-
fra un mensaje con clave pública o privada, Segundo paso: se calcula n.
se afirma que lo que cifra una, sólo la desci-
frará la otra y viceversa. n = p * q = 83 * 89 = 7387
Tercer paso: calcular Ø (n).
Existen tres pasos básicos para realizar la
criptografía asimétrica con el algoritmo Ø (n)= (p - 1)(q - 1) = (83 - 1)(89 - 1)= 7216
RSA, a) se generan las claves pública y priva-
da, b) se cifra el mensaje utilizando la llave Cuarto paso: se selecciona e como un nú-
mero relativo de Ø (n).
pública, c) se descifra el mensaje, para ello
se utiliza la llave privada. e = 5009
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 98
6
Quinto paso: se calcula d, utilizando un algoritmo que calcule el mcd entre e y ø (n), luego
se aplica módulo ø (n).
d = 2753
Sexto paso: se cifra el mensaje, convirtiendo el texto “MUC” a numérico con su ASCII equi-
valente.
c1= 6663
c2= 5440
c3= 7128
m = cd (mod(n))
Algoritmo ElGamal
Este algoritmo fue creado por Taher ElGamal en 1984, se basó en el algoritmo de Diffie-
Hellman, el funcionamiento de ElGamal, es a través del logaritmo discreto, que se basa en la
siguiente expresión:
Son dos los usos que se le dan a este algoritmo, para generar firmas digitales y para cifrar y
descifrar información.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 99
7
Ejemplo (tomado de https://es.wikipedia.org/wiki/Cifrado_ElGamal):
(generador)
(llave pública)
Algoritmo DSA
Digital Signature Algorithm – DSA, desarrollado en 1991 por el National Institute of Stan-
dards and Technology – NIST, es un algoritmo de firma digital, no para cifrar.
DSA tiene tres fases o etapas para que funcione: a) generación de claves, b) firma y c) ve-
rificación. Los ítems a) y b) los ejecuta el emisor, mientras que c) la realiza el receptor (ver
imagen 2).
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 100
8
Imagen 2. Algoritmo DSA
Fuente: http://redyseguridad.fi-p.unam.mx/proyectos/criptografia/criptografia/index.php/5-criptografia-
asimetrica-o-de-clave-publica/56-firmas-digitales/562-dsa-digital-signature-algorithm
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 101
9
Algoritmo Diffie-Hellman Diffie-Hellman fue el primer algoritmo de
clave pública. Diffie-Hellman es utilizado
Creado por Whitfield Diffie y Martin Hell-
para distribuir o intercambiar llaves, pero
man. Este algoritmo hace que dos personas
que se quieren comunicar por un canal inse- no para cifrar o descifrar mensajes. Es un al-
guro se pongan de acuerdo en un valor nu- goritmo seguro, debido a la complejidad en
mérico, sin que una tercera persona tenga el cálculo de los logaritmos discretos en un
acceso pleno a la conversación. campo finito
T = (R ^ S) % A.
W = (T ^ B) % A.
Tanto el número W como V, son los mismos, por lo que emisor y receptor comparten un se-
creto, es decir, sus claves que las pueden utilizar para cifrar sus mensajes. Los números W y V,
han de ser muy grandes y sobre todo, números primos.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 103
11
Un sencillo ejemplo del algoritmo de Diffie- da, la cual pueden usar para cifrar, utilizan-
Hellman se aprecia en la imagen 4, en don- do también los algoritmos de hash.
de se aprecia que el método se utiliza para
Ejercicio para realizar
intercambiar llaves que cifran datos con
Utilizando las fórmulas de los pasos descri-
seguridad, es así que tanto el emisor como
tos en el algoritmo de Diffie-Hellman, halle
el receptor, utilizando el algoritmo DH, pue- las claves que un emisor y un receptor pue-
den establecer una clave secreta comparti- den compartir para cifrar sus mensajes.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 104
12
1
UNIDAD
4Unidad 4
Criptografía
en la capa de Criptografía y
aplicación mecanismos de seguridad
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 106
3
U4 Metodología
En este momento, los estudiantes han de entender la criptografía y los algoritmos simé-
tricos y asimétricos, por lo tanto, se revisa en este escrito cómo se usan en la vida práctica
los algoritmos y cuáles son los que se emplean para poder realizar transmisiones seguras a
través de la red Internet o de las redes LAN en las cuales operamos todos los días, sin prestar
demasiado cuidado.
Recomendaciones:
■ Realizar las lecturas asignadas.
■ Elaborar cada uno de los trabajos asignados.
■ Desarrollar el taller propuesto.
■ Realizar las evaluaciones propuestas.
■ Cuando no entienda algo, comuníquese con su tutor.
■ No continúe con el siguiente tema, hasta que esté perfectamente claro el tema actual.
■ Siempre que lea, hágalo entendiendo las ideas.
Candado
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 108
5
Imagen 2. Funcionamiento general de SSL/TLS
Fuente: http://revista.seguridad.unam.mx/numero-10/el-cifrado-web-ssltls
SSL-Secure Socket Layer: definido como SSL permite que la comunicación fluya en-
un protocolo de seguridad, que permite la tre emisor y receptor de manera que sus co-
interacción entre usuarios de forma segura. municaciones no puedan ser interceptadas,
Sus objetivos son: ofrecer seguridad cripto- modificadas o alteradas de alguna forma.
gráfica, interoperabilidad, extensibilidad y Está conformado por dos niveles o capas: de
eficiencia relativa, cuando se realiza una co- una parte, se encuentra el SSL Record Pro-
municación por la red. tocol, y de otra el SSL Handshake Protocolo,
como se muestra en la imagen 3.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 109
6
En cuanto a SSL Handshake Protocol, utili- ello, permite agregar niveles de seguridad
za el cifrado asimétrico, con el fin de lograr adicional, como por ejemplo, Secure Elec-
la autenticidad del emisor y receptor, esto tronic Transaction - SET.
lo hace mediante algoritmos como el RSA,
DDS, entre otros. El protocolo SSL permite que haya tres tipos
SSL no depende de los protocolos que se de conexión a saber: Autentificada, semi-
implementan en la capa de aplicación, por autentificada y anónima.
En la imagen anterior, se nota cómo se reali- de la red y cómo se realiza el cifrado y desci-
za la comunicación entre un cliente y un ser- frado del mensaje en las capas internas del
vidor, cuando se envía un mensaje a través y más bajas del sistema.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 110
7
En la imagen 5, se muestra el recorrido que el protocolo en un campo llamado con-
se hace desde que se solicita una conexión tent-type, el cifrado y empaquetamien-
al servidor, hasta cuando esta es recibida por to lo hace por medio de un código de
el mismo servidor. SSL Handshake Protocol, autenticación o MAC.
permite mensajes opcionales o dependien-
tes de la situación, como por ejemplo cuan- TLS trabaja en un canal seguro y se hace
do se envía e certificado y se verifica el certi- un ciframiento de claves entre cliente y
ficado, así como que se requiere certificado, servidor, se negocia la criptografía del
que figuran en las distintas capas tanto del mensaje, se autentican las claves del ci-
cliente como del servidor. frado y se realiza la transmisión segura.
b. TLS - Transport Layer Security, protocolo Los cifrados de mensajes los asegura TLS
que se basa en SSL y presenta pocas dife- para que sean transmitidos en internet
rencias. Permite la gestión de las comu- con tecnología de cifrado estándar, esto
nicaciones para que estas sean seguras hace que los correos electrónicos envia-
cuando se realizan transacciones comer- dos no sean interceptados por intrusos.
ciales por medio de la red.
TLS funciona de la siguiente manera:
TLS es un certificado que hace parte
1. Habilitar TLS en los servidores de
de la nueva generación del certificado
correo del emisor y el receptor, para
SSL, está destinado al e-comerce, que
que cualquier información que se
encripta los datos cuando se hace in-
intercambie entre ellos esté cifrada,
tercambio de información por la web,
incluyendo el asunto, el texto y los
protege los datos confidenciales como
adjuntos del correo enviado.
las tarjetas de crédito o cualquier otra
información. Para garantizar el inter- 2. En el momento que el emisor se co-
cambio de datos de forma segura utiliza necta con el recetor del mensaje, el
aplicaciones como el HTTP, POP3, IMAP, sistema debe verificar automática-
SSH, SMTP, NNTP. mente que esté habilitado TLS en el
servidor de correos del cliente.
La encripción la realiza por medio de
3. De estar habilitado TLS en los dos
dos protocolos encapas distintas, ellos
servidores de correos, se establece
son el protocolo TLS Record Protocol y
la conexión TLS segura, por medio
el TLS Handshake Protocol que hace las
de un “Handshake” o apretón de
veces de mutuo acuerdo.
manos, que un procedimiento de
Añadiendo algo más de lo visto ante- protocolo de intercambio.
riormente, el Record Protocol, autenti- 4. En el paso anterior se intercambian
ca para que la transmisión de datos se los certificados TLS, de tal forma que
haga por medio de una conexión priva- si el servidor del emisor confía en el
da, fiable e íntegra entre emisor y recep- certificado del servidor del receptor,
tor. En cuanto al Handshake Protocol, él se inicia la sesión TLS y el correo es
negocia el mensaje de forma segura, es enviado por medio de una conexión
decir, que en cada mensaje especifica segura.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 111
8
Al utilizar TLS no se requiere interven- SET funciona así:
ción ni del emisor ni del receptor, lo que
lo hace confiable, estable, previo acuer- Mediante certificados digitales, tanto el co-
do entre el servidor de correos de las merciante como el cliente, se identifican y
personas que se quieren comunicar. autentican.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 112
9
se identifica ante la entidad financiera, por timo titular de la tarjeta de crédito que eje-
medio del certificado digital que emite por cute la transacción.
el banco, lo que hace que la información de
la tarjeta de crédito no viaje por la red, lo SET no es un protocolo gratuito, las entida-
que hace que dicha información no llegará des bancarias deben pagar por el certifica-
do digital, aunque para el usuario es trans-
al comerciante, ni mucho menos puede ser
parente el uso del mismo. Generalmente,
interceptada.
cuando se utiliza SET, la duración de la tran-
Cuando los datos viajan por la red, lo hacen sacción se establece entre 25 y 30 segundos,
es mayor que el tiempo de que gasta SSL. El
encriptados y protegidos por la firma digi-
comerciante prevé mayor complejidad, por
tal, lo que hace que no puedan ser alterados cuanto al trabajar con SET, debe hacerlo con
por la red, a esto se le denomina “la integri- SSL, pues no todos los clientes tienen certi-
dad de los datos”. ficado digital.
Entre tanto, el comerciante se autentica ante Hoy, se requiere que las transacciones co-
el comprador, indicando que se encuentra merciales que se hacen por medio de la red,
autorizado para hacer cobros con tarjeta de tenga mayores seguridades, por ello, se está
crédito. Por su parte, el cliente o usuario se utilizando el protocolo SET, pues los nego-
autentica ante el comerciante como el legí- cios virtuales B2B, lo utilizan también.
En resumen, al utilizar el SET en una transac- ción y el uso de bibliotecas para criptogra-
ción segura, los datos del usuario-cliente se fía, incluyen funciones criptográficas que
envían al servidor del vendedor, y este solo utilizan por ejemplo, los paquetes OpenSSH
recibe la orden, entre tanto, los números de y los navegadores web.
la tarjeta de crédito de X banco, son envia-
dos al banco del vendedor, él lee los detalles Las herramientas OpenSSL permiten al sis-
de la cuenta bancaria del comprador y con- tema la implementación de SSL o TLS, como
tacta con el banco para que los verifique en también crear certificados digitales para
tiempo real. aplicarse en servidores como el Apache.
Otro de los usos de OpenSSL, es que ofre-
OpenSSL
ce certificados que se pueden utilizar con
Proyecto de software libre desarrollado por aplicaciones software para asegurar que las
Eric Young y Tim Hudson. Es un paquete de credenciales de quien las utilice (empresa o
herramientas que permiten la administra- usuario individual) son válidas.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 113
10
Una de las mejores características de cado. A continuación se guarda en el servi-
OpenSSL es que ofrece una capa cifrada de dor web el archivo cacert.crt para poderlo
transporte sobre una capa normal de comu- descargar e instalar.
nicación, la cual permite combinar aplica-
ciones con los servicios de red. En seguida se puede proceder a utilizar el
certificado, para ello, se crea una clave pri-
Los usos más valiosos de OpenSSL es que vada y una solicitud de certificado, se utiliza
permite la validación cifrada de clientes de un nombre común, una dirección web para
correo, como también las transacciones ba- autentificar la página, el nombre del usuario
sadas en web, como por ejemplo, el pago para autentificar los correos de ese usuario.
con tarjetas de crédito, entre otros.
OpenSSL es una aplicación que se trabaja
OpenSSL es utilizado para: desde la línea de comandos para poder usar
a. Crear certificados digitales, los cuales ga- las funciones criptográficas de su librería
rantizan técnica y legalmente la identidad criptográfica desde la shell.
de un usuario en Internet, también permi-
Otros usos de esta aplicación es para:
ten la firma electrónica de documentos y
cifrar en general las comunicaciones. Crear claves RSA, DH y DSA, crear de certifica-
b. Instalar certificados digitales. dos X.509, CSRs y CRLs, calcular funciones re-
súmenes de mensajes (MD5), encriptar y des-
c. Manejar los certificados digitales
encriptar con distintos algoritmos de cifrado
• Generar y firmar certificados. simétricos (DES, IDEA, ...), realizar pruebas
• Revocar certificados. cliente/servidor utilizando el protocolo SSL.
• Renovar un certificado. PGP, Estándar OPENPGP y GNUPG
• Visualizar un certificado.
PGP
Para crear un certificado digital con PGP - Pretty Good Privacy. Este programa
OpenSSL, se hace lo siguiente: fue desarrollado por Phil Zimmermann en
• Se crea un certificado raíz, el cual ge- 1991, su objetivo es la protección de la in-
nera dos partes, una llave primaria y formación que viaja a través de la red, por
un certificado. medio de criptografía de clave pública, ade-
más autentica documentos por medio de
• Se protege el certificado de ataques firmas digitales. Es el sistema para encrip-
supuestos o robos y se usará solo tación de comunicaciones por Internet más
para firmar otros certificados. utilizado en el mundo
• Se crean dos archivos, uno denomina-
do index.txt, el cual debe estar vacío y En otras palabras PGP respalda el autentica-
el otro serial, el cual contiene un 01. do de mensajes y comprueba su integridad.
PGP no solo protege os datos que viajan por
Luego se procede a la instalación del certifi- la red, sino que también lo hace con los da-
cado, para ello se crea este como certificado tos que se encuentran en los discos y en las
raíz y se almacena solo una parte del certifi- copias de seguridad.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 114
11
Imagen 7. Envío de un mensaje utilizando PGP
Fuente: Propia
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 115
12
Imagen 9. PGP en el Receptor
Fuente: Propia.
En las imágenes 8 y 9, se muestra cómo pro- sido enviado por el verdadero emisor. Tam-
cede el protocolo PGP tanto en el servidor bién se manifestará Confidencialidad del
Emisor y en el Receptor, desde que se envía mensaje porque el cifrado de clave pública
el mensaje, hasta que se recibe. garantiza que el mensaje no ha sido leído
por algún intruso.
De las imágenes 8 y 9, se puede concluir lo
siguiente:
Una característica de PGP es que es muy
Se presentará Integridad de un mensaje eficiente cuando se intercambian mensa-
cuando los resúmenes coinciden. Además jes, porque cuando es posible, los datos son
se revelará Identidad, por medio de la firma comprimidos antes de cifrarlos y/o después
digital, porque se sabrá que el mensaje ha de formarlos.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 116
13
Los paquetes, son la estructura de datos generar un paquete de datos cifrados
predilecta por PGP para codificar esos datos. simétricamente, también se usa para en-
Es así que un mensaje PGP se puede formar viar un mensaje con sobre digital. La cla-
por uno o más paquetes PGP. Estos paque- ve pública que se utiliza en este paquete
tes no son otra cosa que un flujo de bytes es la de cada uno de los destinatarios del
compuestos de una cabecera que identifica mensaje.
el tipo de paquete y su longitud; luego tiene
e. Paquete de firma: contiene campos que
unos campos de datos que dependerán del
almacenan información como por ejem-
tipo de paquete.
plo, la clase de firma como:
Los tipos de paquetes PGP son los siguien- • firma de datos binarios.
tes:
• Firma de texto canónico.
a. Paquetes de datos literales: utilizados
para representar el claro, sin cifrar. Este • Certificado (agrupación de clave pú-
paquete tiene dos campos, el uno indica blica y nombre de usuario).
el valor de los datos y el otro dice si el va- • Revocación de clave pública.
lor de los datos se ha de procesar como
• Revocación de certificado.
texto o como datos binarios.
• Fechado – timestamp, que contie-
b. Paquetes de datos comprimidos: com-
ne, la fecha y hora en que se creó
puesto por un campo para indicar el al-
a firma, el identificador de la clave
goritmo que hará la compresión de los
datos y el otro campo contiene una se- con la que se ha credo, los algorit-
cuencia de bytes comprimidos, que al mos utilizados para el hash y para el
descomprimirlos, resultará uno o más cifrado simétrico, la firma obtenida
paquetes PGP. aplicando los algoritmos que se es-
pecifican en los datos que se debe
c. Paquete de datos cifrados con clave si- firmar concatenados con los cam-
métrica: compuesto por una secuencia pos autenticados.
de bytes cifrados por medio de un algo-
ritmo simétrico, al igual que en el caso f. Paquete de clave pública: contiene infor-
anterior, al descifrar los datos, dará como mación relativa a una clave pública como:
resultado uno o más paquetes PGP. Lo fecha de creación de la clave, el algoritmo
que se cifra en este paquete son paque- a que corresponde la clave, los valores de
tes de datos en claro o paquetes de datos los componentes de la clave, cuando se
comprimidos. trate del algoritmo RSA, llevará como va-
lores el módulo n y el exponente público
d. Paquete de datos cifrados con clave pú-
e. La clave pública utiliza un número de
blica: paquete que tiene tres campos, el
ocho bytes que sirve para buscar el valor
uno para identificar la clave pública utili-
de la clave en una base de datos.
zada, el otro para indicar el algoritmo de
ciframiento utilizado y el tercer campo g. Paquete de nombre de usuario: contiene
usado para almacenar los datos cifrados. una cadena de caracteres, utilizada para
Este paquete es usado para cifrar la cla- identificar el propietario de una clave
ve des sesión, que ha sido utilizada para pública.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 14
117
h. Paquete de clave privada: utilizado para i. Paquete de nivel de confianza en una cla-
almacenar los componentes de la clave ve: paquete que no se envía nunca, sino
privada de un usuario. La confidenciali- que se almacena en el paquete de claves
dad se logra a través de un archivo don- de cada usuario. Es utilizado este paque-
de se almacena el paquete con los com- te para indicar qué confiabilidad tiene la
ponentes secretos de la clave, los cuales clave certificadora, lo que quiere decir
deberán estar cifrados con una clave si- que utiliza otras claves para asociar cla-
métrica derivada de un passphrase, para ves y nombres de usuarios.
que cuando el usuario desee descifrar o
Cómo distribuye las claves PGP
firmar el mensaje con la clave privada,
deba indicar la passphrase para obtener La certificación de claves PGP sigue el mode-
los valores necesarios. De aquí que un lo de las autoridades de certificación X.509
usuario puede tener varas claves asocia- y tiene un modelo descentralizado llamado
das al mismo nombre o a diferentes nom- de confianza mutua o malla de confianza,
bres. como se muestra en la imagen 10.
Cuando un usuario genera su par de claves del nombre de usuario y el de la firma for-
PGP (pública y privada), a la clave pública le man un bloque de clave.
tiene que asociar un nombre de usuario y,
a continuación, tiene que autocertificar esta Opcionalmente, el usuario puede asociar
asociación, es decir, firmar con su clave pri- más de un nombre a la clave (por ejemplo, si
vada la concatenación de la clave pública y tiene diversas direcciones de correo electró-
el nombre. El paquete de la clave pública, el nico) y entonces, el bloque estará formado
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 119
16
GnuPG cuales una clave primaria debe ser capaz de
generar firmas. De aquí que surgen tres op-
GNU Privacy Guard o GPG. Esta es una he- ciones:
rramienta utilizada en la seguridad de las
comunicaciones electrónicas. 1. Se generan dos pares de claves, de las
cuales una, es el par de claves DSA, lla-
Algunas de las tareas de GNUPG es la gene- mado primario y se utiliza para firmar
rar el par de claves (pública y privada), así únicamente.Genera también un par de
como intercambiar y comprobar la su auten- claves ElGamal llamadas subordinadas,
ticidad; a la vez, cifra y descifra documentos, utilizadas para el cifrado.
permite la firma digital de documentos y las
verifica. 2. Sólo se generarán un par de claves DSA.
3. Se generan un único par de claves ElGa-
mal, utilizadas para cifrar y descifrar.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 120
17
■ Como tiene módulos de extensión, im- Al personalizar el uso de GnuPG, se debe te-
plementa nuevos algoritmos ner en cuenta:
■ El formato estándar que posee, permite ■ Elegir el tamaño del par de claves pública
identificar al usuario y privada, para prevenir ataques de fuer-
za bruta.
■ Puede implementar la fecha de caducidad
■ Proteger la clave privada, para ayudar a
■ Puede ser utilizado libremente de forma prevenir que un atacante llegue a utili-
personal pero no comercial. zarla para descifrar los mensajes o para
firmar mensajes a nombre del dueño de
Las funciones básicas de GnuPG. Estas la clave privada.
funciones incluyen generar un par de claves,
intercambiar y comprobar la autenticidad ■ Seleccionar la fecha de caducidad y el
uso de subclaves
de claves, cifrar y descifrar documentos, y fir-
mar documentos y verificar firmas digitales. ■ Gestionar el anillo de confianza, para ayu-
dar a evitar que algún atacante se haga
Utiliza criptografía de llave pública, con el pasar por una persona de confianza.
objeto que los usuarios se comuniquen de
forma segura. Seleccionar el tamaño de la clave
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 121
18
1
UNIDAD
4Unidad 4
Criptografía
en la capa de Criptografía y
aplicación mecanismos de seguridad
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 123
3
U4 Metodología
Ya se está en la última semana, es hora que el estudiante tenga los conceptos claros que se
han analizado en el transcurso de esta asignatura. Por ello, es pertinente que por medio de
este escrito avance en el conocimiento sobre los protocolos y herramientas criptográficas
que se ubican en la capa de Aplicación del modelo TCP/IP.
Recomendaciones:
■ Realizar las lecturas asignadas.
■ Elaborar cada uno de los trabajos asignados.
■ Utilizar a conciencia, los recursos de aprendizaje sugeridos.
■ Realizar las evaluaciones propuestas.
■ Cuando no entienda algo, comuníquese con su tutor.
■ No continúe con el siguiente tema, hasta que esté perfectamente claro el tema actual.
■ Siempre que lea, hágalo entendiendo las ideas.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 124
4
U4 Desarrollo temático
Criptografía en la capa de aplica- difícil de descifrar para ser leídos. SSH per-
mite utilizar aplicaciones gráficas sobre la
ción red, las cuales son reenviadas desde el ser-
vidor, a esta técnica se le llama “reenvío por
SSH y herramientas OpenSSH
X11”.
SSH
SSH también utiliza la técnica denominada
SSH-Secure Shell. Protocolo utilizado para “reenvío por puerto”, que consiste en que
facilitar las comunicaciones seguras entre como SSH encripta lo que se envía o recibe
los sistemas que utilicen una arquitectura desde un cliente-servidor o viceversa, el ser-
Cliente-Servidor. El trabajo de SSH, es el de vidor SSH se convierte en un conducto para
encriptar la sesión de conexión, lo que hace que todos los protocolos inseguros se vuel-
más difícil que algún intruso se apodere de van seguros.
contraseñas no encriptadas.
Al usar SSH desde el inicio de una sesión re-
Algunas características del protocolo SSH, mota o para copia de archivo, se disminu-
es que proporciona protección luego de yen las amenazas de seguridad como son,
establecer la conexión inicial entre un clien- la intercepción de comunicación entre dos
te y un servidor. SSH es rápido, ya que sólo sistemas a través de algún paquete sniffer
hace envíos de texto, lo que permite enviar o la personificación de un host en particu-
menos datos, como por ejemplo imágenes lar. Lo anterior se entiende como aquella
de pantalla o programas vcn. seguridad que el servidor SSH, así como el
servidor utilizan firmas digitales para reali-
Otras particularidades de SSH, es que el zar la verificación de las entidades, teniendo
cliente puede verificar que sí se encuen- presente que la comunicación que existe
tra conectado al servidor correspondiente. entre el cliente y el servidor estará encripta-
También el cliente puede transmitir la in- da. Debido a lo anterior, hace casi imposible
formación que lo autentica ante el servidor, aquellos intentos por falsificar la identidad
para ello utilizará 128 bits como encripta- de alguno de los participantes en la comu-
ción, la cual es robusta. Otra característica nicación, pues los paquetes enviados o re-
de SSH, es que tanto los datos enviados cibidos, se encontrarán cifrados a través de
como recibidos en la sesión establecida, se una clave conocida únicamente por el siste-
encriptan con 128 bits, lo que los hace muy ma cliente y por el servidor.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 125
5
Imagen 1. Protocolo SSH
Fuente: http://ingeniatic.euitt.upm.es/index.php/tecnologias/item/560-protocolo-ssh-secure-shell
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 6
126
Cuando se conecta un cliente SSH a un ser- 5. Una clave de sesión aleatoria es gene-
vidor, se siguen los siguientes pasos: rada por el cliente, quien deberá selec-
1. El cliente abre una conexión TCP al puer- cionar un algoritmo para realizar cifrado
to 22 del servidor. simétrico.
2. Cliente y servidor se ponen de acuerdo 6. Utilizando el algoritmo RSA, el cliente
en la versión del protocolo que van a hace envío de un mensaje que contiene
usar, todo de acuerdo a la configuración clave de sesión y el algoritmo que selec-
y capacidades de cada máquina. cionó para el cifrado.
3. El servidor envía al cliente su clave pú- 7. A partir de ese momento, en la comu-
blica, pues él tiene el par de claves pú- nicación se usará el algoritmo de cifra-
blica-privada de RSA, que se llaman “cla- do simétrico que fue seleccionado, así
ves de host”. como la clave de sesión compartida.
4. El cliente hace una comparación de la
8. A continuación, el usuario se autentica.
clave pública que tiene almacenada con
la enviada por el servidor, con el fin de 9. Se inicia la sesión interactiva entre clien-
verificar la autenticidad de la clave. te y máquina remota.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 127
7
nen los proxis y los firewalls, estos túneles OpenSSH
aseguran la comunicación entre dos com- OpenSSH -Open Secure Shell- es una suit
putadoras y permiten que los protocolos compuesta por varias herramientas como
débiles se fortalezcan, de estos, como el ssh, scp (Secure Copy), sftp (Secure file Trans-
SMTP, HTTP, FTP, TELNET, entre otros. Hoy es fer Progrma), sshd (el demonio SSH), estas
mucho más sencillo montar un servidor SSH herramientas permiten realizar conexiones
que un servidor VPN o un Proxy. cifradas para comunicaciones sobre la red
utilizando el protocolo SSH. Este conjunto
Luego de mencionar las maravillas que ofre- de herramientas ha sido desarrollado como
ce el túnel SSH, existen dos falencias que alternativa abierta a SSH que es propietario.
también se deben considerar, como por
ejemplo, cuando se comunican el cliente y OpenSSH se utiliza para la autenticación
el servidor, hay tramos en los cuales los da- y sirve para realizar implementaciones en
diferentes sistemas operativos. Es capaz
tos se transmiten sin encriptar. Estos tramos
de autenticar usuarios utilizando sistemas
van del servidor SSH y el servidor web, así
como Keyboard interative, Kerberos y clave
como del servidor web al Servidor SSH. De pública, que ya trae implementadas.
otra parte, se deben configurar aplicación
por aplicación, para poder realizar peticio- Una característica importante de OpenSSH,
nes por medio del túnel SSH. es que cifra la información que viaja por la
red, con el fin de eliminar cualquier intru-
Para utilizar el protocolo SSH en Windows se sión de personas no autorizadas o aquellas
utiliza la aplicación Putty, que permite hacer que secuestran conexiones o cualquier otro
conexiones a distintos puertos, entre ellos el tipo de ataque sobre la información en la
puerto 22, que es el puerto por defecto de capad de red.
SSH. En cambio, para Linux y Unix, el proto-
colo SSH viene incorporado por defecto. Algunas propiedades de protección de
OpenSSH, es que el cliente puede verificar
Algunos de los ataques que previene SSH que realmente está conectado a un mismo
son: servidor, de otra parte, la información de au-
tenticación utiliza 128 bits, al igual que los
• Ataques proveniente de Sniffers. datos que se envían o reciben se encriptan
• IP Spoofing. con 128 bits; posibilita en envío de aplica-
ciones que vienen del intérprete de coman-
• MACpoofing. dos o lo que se denomina reenvío X11.
• DNS Spoofing.
En el evento que se desee instalar OpenS-
• Telnet Hickjacking. SH se deberá descargar el paquete ssh, pues
• ARP Spoofing. este paquete instala el servidor y el cliente.
Fundación
Fundación Universitaria
Universitaria del
del Área
Área Andina
Andina 129
9
El funcionamiento general de Kerberos es el iniciar sesiones en equipos diferentes pero
siguiente: que tengan instalado el servicio Kerberos,
■ Cada uno de los usuarios posee una cla- se pueden ejecutar comandos, intercambiar
ve. datos y se pueden enviar archivos de forma
segura.
■ Cada uno de los servidores posee una
clave. Integridad de los datos. Confirma que los
■ En Kerberos, existe una base de datos datos no se modificaron en tránsito, es lo
que contiene todas las claves, tanto de que comúnmente se denomina Mensaje Se-
usuario como de los servidores. guro.
■ La clave de cada usuario se deriva de su Privacidad de los datos. Pues cumple con
contraseña y estará cifrada. su objetivo principal y es el de que los datos
■ Las claves de los servidores se generan no sean leídos en el transcurso de la trans-
de forma aleatoria. misión, para ello cifra y autentica cada uno
■ En Kerberos deberán registrarse los usua- de los mensajes privados.
rios que necesiten utilizar servicios, así
Cómo funciona Kerberos. Los servidores
como los servicios de red que requieran
Kerberos se les denominan Kerberos Distri-
autenticación, también estarán registra-
bution Center - KDC y entrega dos servicios
dos.
muy importantes como son, la Autentica-
■ Cuando los usuarios se registren pueden ción - AS- Authentication Service y el Ticket
negociar sus claves privadas. - TGS- Ticket Granting Service.
■ Como Kerberos conoce todas las claves Cuando se utiliza el servicio AS, este tiene
privadas, entonces crea mensajes para
indicar al servidor sobre la autenticidad como meta autenticar la primera vez a un
de un usuario que necesita un servicio usuario y le entrega un ticket, que servirá
que está en el servidor. para comunicarse con otro usuario.
Kerberos presenta algunos niveles de pro- El servicio de Tickets entrega a los usuarios,
tección como son: los documentos necesarios para establecer
la comunicación con el servidor que le en-
La autenticación. Porque prueba que el tregará el servicio, pues él es el que posee
usuario es quien dice ser, en términos gene- una base de datos con las claves privadas de
rales, garantiza que las identidades tanto el los usuarios.
usuario como del servidor son las verdade-
ras. Este nivel ofrece la Integridad, debido a Cuando se habla de Arquitectura de Ker-
que se verifica la validez de los datos que se beros, puede indicarse que se basa en tres
transmiten entre cliente y servidor, a la vez, objetos imprescindibles de seguridad como
entrega privacidad, debido a que los datos son: la Clave de Sesión, el Ticket y el Auten-
son cifrados, es así que Kerberos se pueden ticador (ver imagen 3).
La clave de sesión, Kerberos produce la cla- usuario o un servicio. Este ticket tiene como
ve secreta para el cliente, la cual utilizará función la de garantizar que el cliente se ha
con el servidor mientras realiza su sesión de autenticado en el servidor.
trabajo.
El autenticador, lo construye el cliente y lo
El Ticket, o también denominado vale; este
envía al servidor, con el objeto de probar la
proporciona el control de acceso desde
la estación de trabajo del usuario hacia el identidad del usuario, así como para ver la
servidor. Se considera como un conjunto actualidad de la comunicación, este objeto
de datos electrónicos para identificar a un solo puede ser usado una sola vez.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 131
11
Centro de Distribución de claves -KDC- esta ras, teniendo claro que si requiere hacer una
petición es automática en el inicio de se- operación de red única, solicitará al KDC un
sión. A continuación KDC crea el ticket para ticket para esa operación.
entregárselo al cliente y se lo envía en for-
mato cifrado. El cliente descifra el ticket de El segundo paso consiste en que si el usua-
rio ya recibió la autenticación inicial, cada
otorgamiento de tickets con la contraseña
autenticación posterior sigue el patrón que
del cliente. Una vez el cliente tiene el ticket
se muestra en la imagen 5.
válido, puede pedir otros tickets para reali-
zar operaciones de red (operaciones como Cuando el cliente o usuario ha hecho su au-
rlogin, telnet) mientras el periodo de otor- tenticación inicial, cada una de las autenti-
gamiento de tickets en el servidor sea váli- caciones siguientes, deben seguir los pasos
do, pues generalmente solo dura unas ho- que se muestran en la imagen 5.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 132
12
Imagen 6. Ejemplo de dominios Kerberos
Fuente: Propia.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 133
13
la información tras digitar una clave y solo duro o las USB; el procedimiento anterior
muestra el volumen oculto, el cual tendrá hace casi imposible la intrusión de extra-
los archivos más importantes, como las cla- ños, además que la unidad cifrada funciona
ves de banco, claves de correos electrónicos como si no lo estuviera
documentos privados.
AxCrypt
De otra parte, TrueCrypt sirve para crear y
mantener un dispositivo de almacenamien- Esta herramienta permite proteger la confi-
to de datos cifrado; los datos se pueden ci- dencialidad de los archivos. La codificación
frar al instante, de forma automática sin la por medio de esta herramienta es de 128
intervención del humano y todo el sistema bits, que hace que un documento esté total-
se cifra, desde los nombres de los archivos, mente protegido. Se utiliza para el envío de
carpetas, contenido, espacio libre, meta da- archivos por correo electrónico, teniendo la
tos y demás. seguridad que sólo la persona interesada y
receptora que conoce la contraseña podrá
Como se indicó en un párrafo anterior, los revisarlos.
algoritmos de cifrado que soporta True-
Crypt son: AES, Serpent, Twofish. AxCrypt es el software para cifrar archivos
de código abierto para Windows. Se integra
Además utiliza diferentes combinaciones perfectamente con Windows para compri-
de los anteriores algoritmos como son: mir, cifrar, descifrar, almacenar, enviar y tra-
bajar con archivos individuales.
• AES-Twofish.
• AES-Twofish-Serpent. Una característica importante es que Ax-
Crypt tiene la opción de auto desencripción
• Serpent-AES. de archivos y reencripción automática, des-
• Serpent-Twofish-AES. pués de haberlo editado, elimina de forma
• Twofish-Serpent.
total y segura de archivos, además valida la
integridad de los datos y contraseñas crip-
• Algoritmos de hash, como RIPE- tográficas. Los archivos que cifra la herra-
MD-160, SHA-512 y WHIRLPOOL. mienta tienen la extensión *.axx.
La característica más notoria de TrueCrypt e AxCrypt está integrado al navegador In-
que crea un área completa protegida den- ternet Explorer, quien encripta, desencrip-
tro de la PC, allí se pueden almacenar los ta, visualiza y edita cualquier archivo. Esta
archivos asegurados, pues todo el volumen herramienta usa los algoritmos AES-128 y
estará cifrado con una clave que el usuario SHA-1, quienes cumplen los requerimientos
mismo crea. de seguridad de los Estados Unidos y de las
normas, reglas y convenios de Internet.
TrueCrypt, esta aplicación de código abierto
está hecha para funcionar en sistemas ope- AxCryt es una herramienta de software gra-
rativos, Windows, Linux y Mac. Los discos tuita, de código abierto, que realiza cifrados
virtuales cifrados que crea, se comportan de alta seguridad, y al ser de código abierto
como unidades de disco externos sin serlo; asegura que no hay puertas traseras cuando
también se puede proteger todo el disco se cifran los archivos.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 134
14
Las características más notables de AxCrypt certificados, ofrece certificado de remoción
son las siguientes: CRL y OCSP, soporta servidores virtuales
■ El cifrado de archivos de alta seguridad basados en nombre, llamados SNI-Server
Name Indication; para el cumplimiento, uti-
lo ofrece AxCryt sobre un número X de
archivos. liza el modo FIPS y configura los motores de
hardware.
■ Se integra con el browser Internet Explo-
rer. En las plataformas Windows utiliza una GUI-
■ Con un solo doble clic sobre un archivo, Interfaz Gráfica muy sencilla, ofrece la posi-
es posible abrir, editar y guardar cual- bilidad de almacenar en caché cadenas de
quier archivo. certificados de pares a los archivos y utiliza
el modo servicio de Windows. Además de
■ Es una herramienta muy sencilla, solo las características mencionadas, también re-
se instala y funciona, sin ningún tipo de direcciona conexiones de cliente SSL cuan-
configuración, además de poder desci- do se presentan errores de autenticación,
frar archivos. soporta IPv6.
■ Tiene la capacidad de cifrar archivos que
se envían a través de Internet, como por OpenVPN
ejemplo, a través del correo electrónico.
OpenVPN es una solución de software libre,
■ Esta herramienta se encuentra en mu- creada por James Yonan (2001), está basado
chos idiomas, lo que hace que pueda ser en SSL-Secure Sockets Layer y VPN - Virtual
usada casi por todo el mundo. Private Network.
La página en la que puede descargarse gra- Una de las principales características es que
tuitamente es: http://www.axantum.com/ OpenVPN proporciona conectividad en-
axcrypt/ tre máquinas conectadas a dos extremos
(punto a punto), además permite validar
STunnel jerárquicamente a los usuarios y a los host
conectados de forma remota. Utilizada a
STunnel es un programa que funciona con el
menudo en redes inalámbricas o wifi.
protocolo de encripción SSL entre el cliente
y el servidor. Al usar OpenSSL para la crip- La seguridad que ofrece OpenVPN se com-
tografía, lo hace compatible con los algorit- bina con el nivel empresarial, la simplifica-
mos criptográficos de la biblioteca. ción en el uso y el cúmulo de características
que posee. Además es una solución multi-
Las principales características de STunnel:
plataforma que proporciona un uso sencillo
En cuanto al rendimiento y escalabilidad, re- cuando se desea usar con configuraciones
parte carga entre varios servidores de back- VPN’s. Este tipo de soluciones se emplea
end, para grupos trabaja con la caché de se- por ejemplo para, acelerar los procesos de
sión externo. negocios, por cuanto se tendría intercam-
bio rápido y flexible de la información, en
Sirve como soporte para las funciones el evento de comunicar toda una empresa
OpenSSL, controlando el acceso basado en con sus sucursales, además, si un empleado
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 136
16
El uso que se les da a las redes VPN van des- intercambiar información pero no deberán
de conectar varios puntos de una empresa ingresar al resto de la red propia de la em-
a través de Internet o conectar a usuarios
presa. En este tipo de redes, la fiabilidad en
corrientes con IP dinámica, pasando por
soluciones que dan acceso a clientes de la comunicación es excelente en los usua-
forma extrared con los cuales se necesita rios móviles.
Imagen 10. Una red Virtual Private Network –VPN o Red privada Virtual
Fuente: http://www.telypc.com/vpn.html
En la Imagen 10 puede verse una red VPM, Los componentes de la red VPN, se pueden
que se monta de la siguiente manera: ver en la imagen 11, que consisten en el Ser-
vidor VPN, El Túnel, la conexión VPN, la red
■ El servidor VPN, es el que acepta peticio- por donde transitan los dato y por supuesto
nes de un cliente VPN. el cliente VPN.
■ El cliente VPN, es el equipo que inicia la
conexión hacia el servidor VPN, el equipo Es así que los protocolos de túnel, son usa-
VPN cliente, puede ser un máquina indi- dos para la administración de túnele, así
como para encapsular los datos, los cuales
vidual o en su defecto un enrutador.
también deberán estar cifrados, con ello se
■ El túnel, es una parte de la conexión so- puede construir una conexión VPN.
bre la cual se encapsula la información.
En cuanto a los datos en el túnel, estos se
■ Conexión VPN, en esta parte se cifran los envían por medio de una conexión punto a
datos, es así que cuando se utilizan cone- punto. En un ambiente VPN, existen redes
xiones VPN seguras, los datos se cifran y compartidas o privadas, por donde viajan los
encapsulan en la misma parte de la co- datos encriptados y estas redes pueden ser
nexión. una intranet basada en IP o la red internet.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 137
17
estar encriptada para que viaje de forma
segura y no pueda ser leída o interpretada
sino solo por el interesado y para ello, se po-
drá cifrar por medio de los algoritmos DES-
Data Encryption Standar, o por el Triple DES-
3DES o en su defecto por AES-Advanced
Encrytion Standar.
Fundación Universitaria
Fundación Universitaria del
del Área
Área Andina
Andina 139
19
Bibliografia
■■Alonso de armiño, A. (2014). Kerberos: un servicio de autenticación para redes. Dpto. de
Informática y Estadística. Fac. De Economía Y Administración-Universidad Nacional Del
Comahue. Buenos Aires: Argentina.
■■Ángel, J. (s.f.). Criptografía para principiantes.
■■Arteaga, A. (2014). El gamal. Criptografía de clave pública. Ver Link
■■Ayuso, J. (2003). Protocolos criptográficos. Universidad de Valladolid. Ver Link
■■Bart, P. (2014). Cryptographic Primitives for Information Authentication. Criptografia- -
State of the Art. Katholieke Universiteit Leuven.
■■Bejarano, K., Londoño, M., Amador, S. & Muñoz, L. (2014). Criptografía simétrica y asimé-
trica. Ver Link
■■Caballero, P. (2002). Introducción a la criptografía. 2ª edición. RAMA Editorial.
■■Chinchilla, E. (2008). Aplicaciones criptográficas. Ver Link
■■Delgado, V. (2006). Introducción a la criptografía: Tipos de algoritmos. Anales de mecánica
y Electricidad. Vol. 83.
■■Durán, R., Hernández, L. & Muñoz, J. (2005). El criptosistema. RSA. Rama-editorial.
■■Franco, J., Sarasa, M. &, Salazar, J. (1998). Criptografía digital: fundamentos y aplicaciones.
Ed. Prensas Universitarias de Zaragoza.
■■Fuster, A., De la Guia, D., Hernández, L. & Montoya, F. (2004). Técnicas.
■■García, E., López, M. & Ortega, J. (s.f.). Una introducción a la criptografía. Ver Link
■■Hernández, S. (s.f.). La Criptografía Clásica. Ver Link
■■Huguet, L., Rifá, J. & Tena, J. (2013). Protocolos criptográficos. Universidad Oberta de Ca-
taluña.
■■Instituto Nacional de Tecnologías de la Comunicación. (2014). Esteganografía, el arte de
ocultar información. Observatorio de la Seguridad de la Información.
■■Jarauta, J., Palacios, R. & Sierra, J. (2008). Seguridad informática, criptografía asimétrica.
Universidad Pontificia Comillas. Madrid: España.
■■Kioskea.net. (2014). Criptografía -Secure Sockets Layers- SSL.
■■Lucena, M. (2010). Criptografía y seguridad en computadores.
■■Maiorano, A. (2010). Criptrografía. Técnicas de desarrollo para profesionales. RA-MA Edi-
torial.