Criptografía

La criptografía según nuestro libro Seguridad por Niveles es la ciencia que permite convertir un determinado conjunto de códigos generalmente comprensibles en otro cuyas características lo hacen de difícil interpretación.

Este proceso se lleva a cabo a través de algoritmos matemáticos combinados con claves.

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 sin ser parte de los miembros que realizan estos pasos (es decir 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 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, pues la misma se presenta ahora de una manera más accesible a individuos que no necesariamente deberían tener acceso a ella. 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.

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, 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 la información que está viajando.

Al cifrar 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 actividad, la cual es análoga a la llave de un candado o cerradura y el algoritmo 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, éste 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 para reducir el ESPACIO DE CLAVES, minimizando el tiempo necesario para vulnerar textos cifrados. Por ejemplo, un método muy conocido de cifrado (que se mencionará posteriormente) es el DES que tiene una clave de 64 bit. A primera vista se pensaría que su espacio de claves es 264, 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 exponencialmente. 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 mensaje 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 texto cifrado, desde ya que estos conceptos son básicos, y que en la actualidad esta actividad se encuentra altamente avanzada y tremendamente favorecida por las altas velocidades de procesamiento que existen hoy.