Qué es la criptografía y cómo funciona la encriptación de archivos
La criptografía es la ciencia que permite convertir un determinado conjunto de códigos en otro cuyas características lo hacen de difícil interpretación (conocidos como cifrado). De este modo solo las personas con la clave o key podrán tener acceso a los archivos cifrados.
Este proceso se lleva a cabo a través de algoritmos de cifrado, unos algoritmos matemáticos que combinan las claves de seguridad. El mayor o menor grado de complejidad del algoritmo, combinado con una determinada longitud de clave, harán que el nivel de dificultad para poder descifrar o interpretar un mensaje para un intruso sea una tarea simple, dificultosa o prácticamente imposible.
Este arte es milenario, y se empleó generalmente en el transporte de información de carácter militar o política. En sus comienzos se lo utilizaba para mensajes en tránsito, pero casi asociado a la aparición de la informática, se comienza a hacer necesario su empleo también en el almacenamiento de la información para encriptar bases de datos, pues se presenta ahora de una manera más accesible a individuos que no necesariamente deberían tener acceso.
Para qué sirve la criptografía
Es evidente que con la aparición de las redes y la posibilidad de interconexión que existe hoy, la importancia de mantener la confidencialidad de la información por todos los métodos existentes, hace necesario el uso de esta herramienta en muchas actividades cotidianas. Hoy en día más de uno tendría que dar explicaciones si alguien pudiera leer su servidor del discord… Ejemplos como este hay a montones en el día a día, la encriptación de archivos es extremadamente necesaria en la actualidad.
Uno de los conceptos a tener en cuenta es que la información en tránsito en todos los casos es escuchada por muchas personas en cualquier [tipo de redes], ya sea dentro de una red LAN como cuando se desplaza a través de vínculos WAN, tanto dedicados como por medio de redes X.25 o Frame Relay. Cualquiera que posea las herramientas adecuadas puede decodificar los distintos encabezados de estas tramas o paquetes y acceder a los archivos cifrados que están viajando.
Cómo funciona la criptografía
Al criptografiar información, si se intenta interpretarla, será necesario poder revertir el proceso, para volver al mensaje original. Como se mencionó con anterioridad, el empleo de la clave es lo que hace posible esta desencriptación, la cual es análoga a la llave de un candado o cerradura y el algoritmo de cifrado es el conjunto de engranajes o mecanismos. La cantidad de trabas o bolillas que posea esta cerradura, determinará la cantidad de posibilidades que existen para abrir o cerrar ese acceso. Si se mantiene este ejemplo para el caso de un candado de clave numérica, este podría tener cuatro ruedas de diez dígitos de las cuales una sola combinación liberaría el mecanismo, generando una posibilidad entre diez mil. Criptográficamente hablando, tendría un ESPACIO DE CLAVES de 10.000 posibilidades.
Si alguien tuviera acceso a este candado sin conocer la combinación (Clave), podría probar desde el 0000, luego el 0001, el 0002….. y así sucesivamente hasta lograr abrir el candado. Nuevamente en terminología criptográfica, esto se llamaría FUERZA BRUTA. Se debe tener en cuenta que si este intruso pudiera tener algún indicio respecto a esta combinación, como por ejemplo que la misma empieza con el dígito cuatro , el espacio de claves queda reducido a cien, con lo cual el tiempo necesario para abrir el candado sería diez veces menor.
Esta última, es de especial interés pues en informática existe un sinnúmero de métodos de reducir el ESPACIO DE CLAVES, minimizando el tiempo necesario para vulnerar datos cifrados y desencriptar archivos. Por ejemplo, un método muy conocido de cifrado es el DES que tiene una clave de 64 bit. A primera vista se pensaría que su espacio de claves es 264 (lo desarrollamos en profundidad en nuestro artículo sobre [tipos de criptografía]), pero como primer detalle, esta clave emplea 8 bit de paridad, con lo cual ya se tiene un espacio de claves de 256 claves independientes.
Como segunda medida se puede emplear por ejemplo un método llamado criptoanálisis diferencial que reduce las posibilidades a 234, con lo cual se reducen los tiempos casi a la mitad. Esto se menciona sólo a título de ejemplo, pues si se tiene en cuenta que cada intento de estos trae aparejado la comparación de un texto para verificar si es entendible, la realidad hace que si se trata de un mensaje extenso esta actividad sea poco rentable, existiendo métodos de análisis mucho más eficientes.
Otro detalle significativo es que la ENTROPIA de los códigos reales no es máxima en ningún caso, es decir que la frecuencia de aparición de los distintos símbolos no es equiprobable. Si se analiza cualquier texto escrito en Castellano, se podría apreciar que determinadas letras tienen mayores ocurrencias de aparición que otras, por ejemplo la E, N, S, A, etc. y por el contrario es poco frecuente encontrar X, W. Esta característica es de sumo interés pues un archivo cifrado si se puede determinar su alfabeto fuente (por ejemplo Castellano) allanará las posibilidades de criptoanálisis. Es evidente que este detalle causa más impacto cuanto mayor sea la longitud del texto, pues en unas pocas palabras esta frecuencia de aparición puede no ser cierta, y absolutamente lo será si la longitud tiende a infinito. También se tiene en cuenta el CODIGO EN SU EXTENSION, pues volviendo al mismo ejemplo, la secuencia de extensión dos TH en Castellano tiene una probabilidad excesivamente baja pero en Inglés es cotidiana; más aún si se extiende en grado tres THR en Castellano no existe y en Inglés sí. Estos breves conceptos sirven para ilustrar escuetamente cómo se puede reducir de distintas maneras la tarea de criptoanalizar un mensaje, desde ya que estos son conceptos básicos de criptografía, y que en la actualidad, esta actividad se encuentra altamente avanzada y tremendamente favorecida por las altas velocidades de procesamiento actuales.
Tipos de criptografía
El principio de funcionamiento de los distintos algoritmos criptográficos y sus claves correspondientes, se puede clasificar clásicamente de tres formas:
- Cifrado simétrico: este cifrado utiliza la misma clave (denominada clave simétrica) para cifrar que para decifrar.
- Cifrado asimétrico: basado en el concepto de clave pública y clave privada, este es un cifrado que depende de que tan solo una única persona (intrigante, ¿verdad?) y hace uso de dos claves distintas, una para el cifrado y otra para descifrar.
- Cifrado híbrido: utilizado por la gran mayoría de las aplicaciones de software comercial, utiliza dos algoritmos de cifrado (cifrado simétrico y asimétrico) para mejorar la velocidad y el volumen de datos
- Cifrado irreversible: se podría considerar una cuarta forma que se debería llamar irreversible (como se puede considerar el sistema de claves de Unix), pero da pie a una buena charla… Utilizado mayormente en los sistemas operativos de red para tratar las cuentas de usuario y contraseñas, como por ejemplo Unix o Windows NT. Consiste en, como bien dice el nombre, no difundir o no crear un método de desencriptado.
Para no extendernos demasiado en el artículo, te dejamos un mayor análisis sobre los [tipos de criptografía analizados y explicados en detalle] aquí y si te interesa que indaguemos en nuevos temas o tienes alguna duda, no tengas reparo en dejar un comentario. ¡Y sobre todo si te ha gustado la información!