Cifrado de datos

De Wiki E-Kontsulta

El cifrado de datos es el proceso por el que una información legible se transforma mediante un algoritmo (llamado cifra) en información ilegible, llamada criptograma o secreto. Esta información ilegible se puede enviar a un destinatario con muchos menos riesgos de ser leída por terceras partes. El destinatario puede volver a hacer legible la información, descifrarla, introduciendo la clave del cifrado. A menudo se denomina “encriptación” a este proceso, pero es incorrecto, ya que esta palabra no existe en castellano; se ha importado del inglés “encrypt”, que se debe traducir como “cifrar”, y por tanto el proceso se debe denominar “cifrado”.

Tabla de contenidos

[editar] Historia del cifrado

Las técnicas de cifrado se usan desde la Antigua Grecia. Es de hecho del griego de donde viene el nombre de la ciencia del cifrado, la criptografía: krypto “ocultar” y graphos “escribir”, es decir escritura oculta. Desde entonces se utilizaban técnicas de diversa complejidad para ocultar información estratégica.

Algunos ejemplos de cifrado históricos son:

  • Escítala: Consistente en envolver una vara con una tira de papel, y escribir el mensaje longitudinalmente poniendo una letra en cada vuelta de la tira. La tira se enviaba al destinatario y éste sólo podía leerla envolviendo una vara del mismo diámetro, ya que para distintos diámetros generaría distintas combinaciones de letras.
  • Cifrado del César: Consistía en un algoritmo sencillo de sustitución, asignar a cada letra un valor hacer modificaciones sobre el texto legible de forma que sólo el destinatario supiera qué modificaciones se habían hecho.
  • Esteganografía: consistente no sólo en cifrar el texto si no en ocultarlo de forma que nadie sepa que hay información. Un ejemplo eran los esclavos a los que se les tatuaba la información en la cabeza y después se les dejaba crecer el pelo, de forma que nadie sospechase siquiera que hubiera información.
  • Enigma: La máquina usada en las dos guerras mundiales por el bando alemán para codificar mensajes sensibles. Usaba algoritmos de sustitución y transposición complejos.

Actualmente la criptografía ha evolucionado hacia sistemas mucho más complicados de romper y se usa a diario para aplicaciones diversas como conexiones seguras a ciertas páginas de Internet a las que se envía información sensible, almacenamiento de datos seguro, o firma electrónica.

[editar] Seguridad del cifrado de datos

La seguridad de un buen sistema de cifrado depende enteramente de la clave, y no debe depender del algoritmo de cifrado usado. Es decir, el algoritmo de cifrado a menudo es público, y es conocido por los posibles atacantes, pero si el algoritmo es bueno, esto no debe bastarles para descifrar el mensaje.

Los algoritmos usados en las comunicaciones seguras de Internet son públicos prácticamente siempre, por lo que es necesario centrarse en crear claves suficientemente seguras.

Además, la capacidad computacional de los ordenadores crece constantemente y cada vez son capaces de probar más y más claves por segundo de forma que puedan encontrar la clave simplemente probando una y otra vez. No debe confundirse la clave del cifrado con las palabras de paso usadas para acceder a algunas aplicaciones: por ejemplo, para acceder a un cliente de correo online, es necesaria una contraseña, que es enviada desde la ventana del explorador al servidor para que procese la petición de login. En este caso, la fuerza bruta (probar sucesivamente todas las claves posibles), es inútil, ya que casi todas las aplicaciones tienen limitado el número de intentos. No obstante, esa contraseña que enviamos desde el navegador, se envía cifrada al servidor a través de Internet. Si alguien consiguiera captar la información en la que viaja la contraseña sí podría introducir ese texto cifrado en una aplicación de criptoanálisis e intentar descifrarla y después usarla.

La mayoría de aplicaciones en Internet que manejan información sensible, como contraseñas, ofrecen seguridad basada en algoritmos de cifrado avanzados a través de una conexión segura SSL. Cuando el navegador entra en una página segura el protocolo de navegación deja de ser http para ser https. Se podrá observar en la barra de direcciones del navegador que la URL ha cambiado y empieza por https.


 Barra de direcciones navegando con HTTPS


Además se podrá observar, bien en la barra de direcciones, bien en otra parte (dependiendo del navegador) un candado, indicando la conexión segura. Si se pincha ese candado, se podrá visualizar el tipo de cifrado que se utiliza, la empresa emisora del certificado de seguridad, la dirección asegurada, el periodo de validez, y otros campos en los que se podrá analizar la validez del certificado. Los navegadores más modernos suelen avisar cuando un certificado de navegación segura es inválido o está caducado, con mensajes de alerta, o poniendo en rojo la barra de direcciones, o similares.

[editar] Tipos de cifrado

Se pueden realizar al menos tres tipos de cifrado:

[editar] Cifrado simétrico

El emisor cifra el mensaje con una clave, y esa misma clave deberá ser la utilizada para descifrarlo. Estos algoritmos son rápidos y permiten cifrar y descifrar eficientemente con claves relativamente grandes. El problema que tienen es la seguridad de la clave: El emisor cifra el mensaje con la clave. Manda el mensaje cifrado, de forma que nadie puede descifrarlo sin esa clave. Ahora bien, el receptor ha de conocer la clave, ¿cómo se transmite sin comprometer su seguridad? Algunos algoritmos de este tipo son:

  • Blowfish
  • IDEA
  • DES

[editar] Cifrado asimétrico

Existen dos claves, una pública y una privada, y se puede usar en dos direcciones.

a) El emisor cifra el mensaje con la clave pública A, que es la que puede conocer cualquiera. Sin embargo para descifrarlo hace falta la clave B, que sólo tiene el receptor, ya que es privada. Con esto se garantiza confidencialidad, cualquiera podría cifrar, pero sólo quien tenga la clave privada podrá descifrar.
b) El emisor cifra el mensaje con la clave privada B, que sólo él conoce. Ahora cualquiera puede descifrarlo con la clave privada A, pero una vez descifrado con esa clave A, la naturaleza del algoritmo estará garantizando que se ha cifrado con la clave B, por lo que la utilización del algoritmo en este sentido se usa para asegurar la autenticidad, y no para ocultar información. Cualquiera tendrá acceso a la información, pero podrá saber a ciencia cierta de dónde procede. El cifrado asimétrico en esta dirección se usa para certificar la autenticidad de las firmas digitales.

El funcionamiento de estos algoritmos, basados en factorización de números primos, permite que el cifrado se calcule con relativa sencillez, pero haga falta más procesamiento para descifrarlo. No obstante, aunque este algoritmo garantiza la seguridad de la clave privada, ya que sólo la tiene el receptor, es más lento y hace que los mensajes cifrados tengan un volumen mayor. Ejemplos de este cifrado son:

  • DSA
  • RSA
  • Diffie-Hellman

[editar] Cifrado híbrido

A menudo las conexiones seguras de Internet se sirven de una mezcla de los dos tipos de cifrado anteriores. Aprovechan la ligereza de uno y la fortaleza del otro. Lo que suelen hacer protocolos de comunicación seguros como HTTPS (basado en la capa SSL), es cifrar los mensajes usando un algoritmo simétrico, de forma que se hace un cifrado y descifrado rápido de los mismos, además de tener menos volumen los mensajes cifrados. Como hay que transmitir la clave del cifrado de alguna manera, ésta se cifra con un algoritmo asimétrico. Con esto se consigue que la parte más voluminosa de la información, que es el mensaje, vaya cifrada con un algoritmo seguro pero ligero, y la parte menos voluminosa, que es la clave, vaya cifrada con el algoritmo más pesado, y que garantiza que sólo podrá ser descifrada en el destino.

De esta manera, en el destino primero ha de descifrar la clave del cifrado simétrico, con su clave privada, y una vez tenida esta clave, descifrar el mensaje. Esto garantiza una conexión segura.

[editar] Aplicaciones del cifrado

El cifrado de datos se usa en numerosas aplicaciones cotidianas. Algunas de las más habituales son:

[editar] SSL

SSL, del inglés Secure Socket Layer, es un protocolo criptográfico que proporciona comunicaciones seguras en Internet. Esta seguridad es en forma de privacidad y autenticación: por un lado autentica el servidor de la comunicación (mediante certificados), y por otra parte selecciona un algoritmo de cifrado, permite el intercambio de claves de forma segura entre cliente y servidor, y cifra la información con cifrado simétrico.

Esta capa de seguridad se puede aplicar en diversos ámbitos:

  • HTTPS: Protocolo http seguro
  • FTP: protocolo de intercambio de ficheros. Puede utilizar SSL para ser seguro.
  • SMTP: protocolo de correo. Puede utilizar SSL para ser seguro.

[editar] Firma digital

La firma digital es el método criptográfico que permite asociar la identidad de una persona o máquina a un documento como autor del mismo. Para incorporar las firmas digitales, primero se calculan los datos de la firma, que se obtienen de aplicar cierto algoritmo matemático. Esos datos se cifran con alguno de los algoritmos descritos anteriormente y finalmente la firma cifrada es incorporada al documento. El receptor del documento deberá tener medios tecnológicos tanto para extraer la firma cifrada como para descifrarla, por lo que también deberá tener la clave.


[editar] VPN

La red privada virtual, en inglés Virtual Private Network (VPN), es una red con las características de una LAN, pero está extendida sobre una red pública como Internet; esto es, tiene el control y la seguridad que ofrece una red LAN pero topológicamente tiene un ámbito descontrolado e inseguro como es Internet. Para que estas redes sean seguras se usan técnicas de tunneling que consisten en crear un “túnel” seguro dentro de la red insegura, por el que circulan los datos de la VPN cifrados. Es por esto que las redes privadas virtuales es uno de los usos más frecuentes de cifrado.

Para garantizar la seguridad de la red VPN y las características que debe cumplir, se usan protocolos de comunicación segura como IPSec, que es el estándar de facto, aunque también se usan otros como SSL o PPTP.

[editar] Cifrado de archivos

También existen aplicaciones que permiten el cifrado, no ya de una información que se va a enviar, si no de un archivo, que puede que se vaya a enviar, pero puede que simplemente quiera guardarse cifrado para que sólo puedan leerlo quienes tengan una clave. Esto también es útil para almacenar información confidencial de una organización. En caso de sustracción de la información no servirá de nada si no se tiene una clave para descifrarla.

[editar] Cifrado de disco duro

Tener todo el sistema de archivos cifrado permite que cada vez que se guarde un archivo ya lo haga cifrado por defecto y que todo lo contenido en el disco duro esté cifrado. Esto hace que haya procesos ligeramente más lentos, ya que cada vez que se guarda, por ejemplo ha de cifrarlo.

[editar] Mal uso del cifrado

Tener un fichero o una información cifrada no garantiza absolutamente su integridad o su fiabilidad.

Incluso con los algoritmos más seguros, se pueden presentar una serie de problemas:

  • Tener un fichero cifrado en un disco duro, y que el disco duro se estropee, por lo que la información se pierda.
  • La persona que sabe la clave, la olvida, o bien por deslealtad a la compañía, la filtra.
  • La clave se almacena el mismo sitio que el fichero cifrado, por lo que si alguien accede al fichero cifrado también podrá acceder a la clave para descifrarlo.
  • La información cifrada está corrupta o no es válida, por lo que aunque el cifrado y descifrado sean correctos, la información obtenida por el destinatario seguirá corrupta o inválida.
  • Cualquier otro problema derivado de una mala gestión de la información cifrada o las claves.

Para evitar estos problemas hay que seguir buenas prácticas como tener backups de la información, o garantizar la seguridad de las claves.

[editar] Véase también

[editar] Enlaces externos

Otros idiomas
Herramientas personales
Videos