El cifrado simétrico, también conocido como “Shared Key” o “Shared Secret”, es aquel en donde se utiliza una sola llave para cifrar y descifrar la información.
Por ejemplo, un usuario A quiere enviarle un mensaje X al usuario B, este utiliza la llave “!@#$%^” para cifrar la información. El usuario B debe de utilizar la llave “!@#$%^” —la misma que utilizó el usuario A —para descifrar la información.
Entre los algoritmos de cifrado simétricos podemos mencionar DES, 3DES, AES y RC4. Los algoritmos 3DES y AES son utilizados comúnmente por el protocolo IPSEC para establecer conexiones de VPN. El algoritmo RC4 es utilizado en tecnologías de redes inalámbricas para el cifrado de información en los protocolos de seguridad WEP y WPA versión 1.
La ventaja del cifrado simétrico es su rapidez y sencillez— en comparación con su contraparte el cifrado asimétrico —. Igualmente su poca complejidad intrínseca permite la fácil implementación de esta técnica de cifrado a nivel hardware.
El cifrado asimétrico, también conocido como “Criptografía de Llave Pública”, difiere principalmente de su homólogo el cifrado simétrico, en que este emplea dos llaves en vez de una para ejercer las funciones de cifrado y descifrado de la información.
En el cifrado asimétrico cada usuario que interviene en la comunicación cuanta con dos llave: una llave pública y una llave privada. La llave publica es utiliza para cifrar la información y llave privada para descifrar la información.
Vamos a recrear un escenario simple para ilustrar el funcionamiento de la técnica de cifrado asimétrico. Juan y Pedro quieren enviarse un correo electrónico de manera segura, es decir, Juan quiere estar seguro que sólo Pedro pueda leer los mensajes que este le envíe. Pedro por igual, quiere que sólo Juan pueda leer los mensajes que este le envía.
Para lograr esto, Juan y Pedro se ponen de acuerdo en cifrar los correos electrónicos utilizando un algoritmo de cifrado asimétrico como lo son RSA o El Gamal. Para comenzar Juan escribe un mensaje, lo cifra con la llave pública de Pedro y luego envía el correo. Pedro recibe el correo electrónico y utiliza su llave privada para descifrar el mensaje y leer el contenido.
Luego, Pedro le quiere responder a Juan y para esto cifra el correo electrónico con la llave pública de Juan. Después, Juan recibe el correo electrónico y para leerlo necesita descifrar el mensaje utilizando su llave privada.
La llave pública de Pedro y la de Juan son de conocimiento popular. Todo el mundo puede conocer nuestra llave pública —como su nombre lo indica —, ya que cifrando cualquier información o archivo de con esta llave podremos comunicarnos de manera segura. No es posible —hasta la fecha de escribir este artículo — conocer la llave privada de una persona a través de la implementación de ingeniería inversa sobre una llave pública.
El Hashing es una función matemática que no tiene inversa y produce un resultado de longitud fija. A diferencia de la función de cifrado que se utiliza para garantizar la confidencialidad de la información, la función de hashing es utilizada en seguridad para garantizar la integridad de la información.
La confidencialidad es la función de lograr que nadie sepa el contenido de la información enviada a través de una canal de comunicación considerado inseguro —como la Internet — exceptuando el emisor y receptor. Con la función de integridad, lo que se busca es asegurar que cualquier mensaje enviado no haya sido alterado mientras este estuvo en tránsito.
MD5 y SHA-1 son los principalmente algoritmos de hashing empleados hoy en día. El Hash — que es un grupo de caracteres alfanuméricos —es el resultado de aplicarle la función de hashing a un mensaje o archivo para comprobar la autenticidad.
Como la función de hashing produce un resultado único de longitud fija, si por alguna razón u otra, un sólo bits de información es modificado, esta obligatoriamente producirá un hash diferente al original. Por lo tanto, el receptor al comparar ambos hash — el original enviando junto con la información cifrada y el producido luego de recibir y descifrar la información —tendrá la certeza que la información fue alterada en tránsito mientras esta viajaba por la red.
Por ejemplo, si utilizamos el algoritmo de hashing MD5 sobre la cadena de caracteres “Eugenio es un experto en seguridad”, produciremos el siguientes hash:
61cc5662e0779e1c4ddf91fa582244f5
Si modificamos ligeramente el mensaje original en sólo un carácter “Eugenio es un experto en seguridax“, produciremos un hash diferente al original:
a8b4ce4668b79c369fb96f3f0d4c2ba4
De esta manera, deducimos que la comunicación fue interceptada y modificada mientras estuvo en guardada en algún lugar o mientras estuvo en tránsito viajando por la red.
Básicamente, espero que hayan podido entender los tres conceptos de seguridad discutidos en este artículo. Los tres son esenciales para comprender muchas de las tecnologías y protocolos que utilizamos diariamente en Internet para realizar compras en líneas, conectarnos remotamente vía VPN, etc.
Fuentes de informacion:http://delta.cs.cinvestav.mx/~francisco/Repository/tesisItzelt.pdf
http://cursos.tic.unam.mx/catalogo2013.pdf
No hay comentarios:
Publicar un comentario