Información y Criptografía (II)

 
Como vimos en el artículo anterior, los sistemas actuales de criptografía se basan principalmente en el uso de pares de claves pública-privada. La forma básica de encriptar un mensaje es realizando alguna operación lógica o matemática sencilla entre los datos y la clave privada, para así ofuscarlos. Realizando la operación inversa con la clave pública, se recupera el mensaje original.
 
Estas relaciones biunívocas entre las claves se consiguen con algoritmos basados en complejas operaciones que utilizan números primos. Con estos métodos, es imposible encontrar la clave privada por medios matemáticos, aunque se conozca la pública. Los hackers deben de realizar millones de millones de operaciones de prueba y error. A este modo de operar se le denomina 'de fuerza bruta', y con la longitud actual de claves y la actual potencia de los ordenadores, a los crackers les puede llevar cientos de años descubrir una clave. Para hacernos una idea, con una clave típica de 128 bits, existen 2 elevado a 128, es decir, 3.400 sextillones de diferentes combinaciones posibles. Pero según la tecnología avanza, la potencia de los ordenadores crece, y va disminuyendo ese tiempo necesario para encontrar una clave por fuerza bruta. De modo que los responsables de los sistemas de seguridad tienen que hacer las claves cada vez más largas, para que por este lado también se siga alargando el tiempo medio de procesamiento y así compensar. Lo malo de esto es que las claves también se hacen cada vez más complicadas y lentas de manejar para los procesos 'legales'. 
 
Otro aspecto de seguridad vital a tener en cuenta es el modo de transmisión de claves, sobre todo cuando éstas se utilizan para realizar comprobaciones y autorizaciones, como en controles de acceso u órdenes de realización de operaciones. Cuando hay que mostrar una clave ante un sistema para lograr su reconocimiento, ésta podría ser capturada y leída, bien por un espía o incluso por el mismo receptor que podría después utilizarla para otras operaciones. Por ejemplo, para ordenar una transacción bancaria, lo ideal sería que el sistema reconociese que tenemos la clave pero que no hiciera falta enviarla, ni siquiera encriptada. Para ello, se utilizan distintos protocolos que se denominan de 'Conocimiento Cero', y que se basan, de nuevo, en el uso de algoritmos que operan con números primos. El proceso se inicia con un sistema independiente que envía al emisor y al receptor un número aleatorio. El emisor realiza un conjunto de operaciones con su clave y el resultado se envía al receptor, que con el algoritmo correspondiente y el mismo número aleatorio puede comprobar que la clave usada es la correcta, y dar el 'ok'. Por lo tanto se envían datos derivados de nuestra clave, que como no descubren la propia clave a nadie se denominan de conocimiento cero, pero indican fehacientemente al receptor que disponemos de la clave adecuada.
 
Existe, en el horizonte temporal de varios años, un problema que no se podrá resolver con la actual tecnología, ni ampliando la longitud de las claves ni mejorando los algoritmos. Se trata de los futuros ordenadores cuánticos, y la única solución al problema será cambiar absolutamente de tecnología, y utilizar los principios de la criptografía cuántica. Será el objetivo del próximo artículo.
 
 
 
 

Sobre el autor