METODOS DE CIFRADO Y CRIPTOGRAFIA

Criptografía: Arte de escribir con clave secreta o de un modo enigmático. Aportando una visión más específica, la criptografía es la creación de técnicas para el cifrado de datos. Teniendo como objetivo conseguir la confidencialidad de los mensajes. Si la criptografía es la creación de mecanismos para cifrar datos, el criptoanálisis son los métodos para “romper” estos mecanismos y obtener la información. Una vez que nuestros datos han pasado un proceso criptográfico decimos que la información se encuentra cifrada. Cabe destacar el uso incorrecto del termino encriptar, que proviene de una mala traducción del inglés encrypt. La palabra encriptar no está reconocida por la RAE y el término correcto es cifrar. La interpretación del término encriptar sería introducir cuerpos en una cripta.

¿Por qué es necesaria la criptografía?

Aunque el uso de comunicaciones seguras ha sido siempre una prioridad militar, la privacidad es requerida en otros sectores. Las empresas necesitan mantener unas comunicaciones seguras para proteger su información. Por esta razón el gobierno de EEUU y la NSA se ven obligados a crear DES. Aparte de a las empresas, se hace necesario otorgar al ciudadano de privacidad y seguridad. Con el nacimiento de internet y la progresiva oferta de servicios telemáticos como acceso al banco, citas médicas y un sinfín de posibilidades se tiene que ofrecer confidencialidad y seguridad a estos servicios. Por estas razones es necesaria la criptografía. Para otorgar privacidad, confidencialidad y seguridad a nuestras transacciones telemáticas.

Usos de la criptografía:

La criptografía cuenta con 3 usos: Cifrar, autenticar y firmar. 

Cifrar: Como ya hemos dicho, siempre hay cierta información que no queremos que sea conocida más que por las personas que nosotros queramos. En esto nos ayuda el cifrado. Cifrando un mensaje hacemos que este no pueda ser leído por terceras personas consiguiendo así la tan deseada privacidad. 

Autenticación: Otra de las necesidades que surgen con la aparición de internet es la necesidad de demostrar que somos nosotros y que el emisor es quien dice ser. Un método de autenticación puede ser el propio cifrado. Si ciframos un mensaje con una clave solo conocida por nosotros, demostrando que somos quien decimos ser, el receptor podrá constatar nuestra identidad descifrándolo. Esto se puede conseguir mediante clave simétrica (el receptor tiene que estar en posesión de la clave empleada) o usando clave asimétrica en su modo de autenticación. 

Firmar: Dados los trámites que podemos realizar hoy en día a través de internet se hace necesaria la aparición de la firma digital. Igual que firmamos un documento, la firma digital nos ofrece la posibilidad de asociar una identidad a un mensaje. Para la firma digital se utiliza clave asimétrica (dos claves una privada y otra pública). Lo que se cifra con la clave privada (que solo nosotros conocemos) sólo se puede descifrar con la pública. De esta forma al cifrar con nuestra clave privada demostramos que somos nosotros. La firma digital tiene un problema. ¿Cómo sabe el receptor que la clave corresponde realmente con la persona o entidad que dice poseerla? De este modo surgen las entidades de certificación. Organismos de confianza que actúan como notarios. Otro sistema existente la red de confianza. En esta red los usuarios certifican si los demás son quien dicen ser. De este modo podría decirse que cada usuario se constituye como entidad certificadora.

 Cifradores de flujo y cifradores de Bloque: 
WEP (RC4) y ECB Los cifradores de bloque trabajan con clave simétrica sobre grupos de bits de una determinada longitud fija (los bloques). El cifrador de bloque toma en la entrada un bloque de texto plano y produce un bloque de texto cifrado de igual longitud. Esta transformación de texto plano a cifrado se controla mediante una clave secreta. Para el camino inverso (texto cifrado -> texto plano) se opera de la misma manera. Los cifradores de bloques tienen un inconveniente, hay ciertas aplicaciones que no pueden hacer uso de esta utilidad por estar formadas por un flujo constante de bits. Tenemos por ejemplo un enlace de radio, telefonía, etc. Para estas aplicaciones surgen los cifradores de flujo. Un cifrador de flujo consiste en un algoritmo que convierte el texto claro en texto cifrado pero trabajando bit a bit. El funcionamiento es similar al de bloque, en la entrada tenemos el flujo de datos. Se genera un “flujo de clave” y la salida es una XOR bit a bit del flujo de datos y el de clave. 

CRIPTOGRAFIA SIMÉTRICA:
La criptografía simétrica solo utiliza una clave para cifrar y descifrar el mensaje, que tiene que conocer el emisor y el receptor previamente y este es el punto débil del sistema, la comunicación de las claves entre ambos sujetos, ya que resulta más fácil interceptar una clave que se ha transmitido sin seguridad (diciéndola en alto, mandándola por correo electrónico u ordinario o haciendo una llamada telefónica).
Esquema de criptografía simétrica
Teóricamente debería de ser más fácil conocer la clave interceptándola que probándola una por una por fuerza bruta, teniendo en cuenta que la seguridad de un mensaje cifrado debe recaer sobre la clave y nunca sobre el algoritmo (por lo que sería una tarea eterna reventar la clave, como comenté en un ejemplo de ataque por fuerza bruta).

CRIPTOGRAFIA ASIMÉTRICA:
La criptografía asimétrica se basa en el uso de dos claves: la pública (que se podrá difundir sin ningún problema a todas las personas que necesiten mandarte algo cifrado) y la privada (que no debe de ser revelada nunca).

Esquema de criptografía asimétrica
Sabiendo lo anterior, si queremos que tres compañeros de trabajo nos manden un archivo cifrado debemos de mandarle nuestra clave pública (que está vinculada a la privada) y nos podrán mandar de forma confidencial ese archivo que solo nosotros podremos descifrar con la clave privada.
Puede parecer a simple vista un sistema un poco cojo ya que podríamos pensar que sabiendo la clave pública podríamos deducir la privada, pero este tipo de sistemas criptográficos usa algoritmos bastante complejos que generan a partir de la frase de paso (la contraseña) la clave privada y pública que pueden tener perfectamente un tamaño de 2048bits (probablemente imposible de reventar).

Diferencias entre criptografía simétrica y asimétrica

Para empezar, la criptografía simétrica es más insegura ya que el hecho de pasar la clave es una gran vulnerabilidad, pero se puede cifrar y descifrar en menor tiempo del que tarda la criptografía asimétrica, que es el principal inconveniente y es la razón por la que existe la criptografía híbrida.


CRIPTOGRAFIA HÍBRIDA

Este sistema es la unión de las ventajas de los dos anteriores, debemos de partir que el problema de ambos sistemas criptográficos es que el simétrico es inseguro y el asimétrico es lento.

El proceso para usar un sistema criptográfico híbrido es el siguiente (para enviar un archivo):
Generar una clave pública y otra privada (en el receptor).
Cifrar un archivo de forma síncrona.
El receptor nos envía su clave pública.
Ciframos la clave que hemos usado para encriptar el archivo con la clave pública del receptor.
Enviamos el archivo cifrado (síncronamente) y la clave del archivo cifrada (asíncronamente y solo puede ver el receptor).

                                                    

3 comentarios: