Página principal

Comercio electrónico

Criptología y seguridad

Cuestiones legales

Intimidad y privacidad

Virus

Artículos invitados

Criptografía de clave pública

Por Jordi Herrera Joancomartí

En los últimos años, el crecimiento vertiginoso de las redes de comunicaciones y el aumento de usuarios de estas está conllevando nuevos problemas a los cuales no les sirven las soluciones obtenidas hasta el momento. Un ejemplo claro lo encontramos en la seguridad. Cuando las redes de comunicaciones informáticas eran privilegio de unos pocos, estos podían intercambiar información entre ellos de un modo seguro utilizando lo que hoy conocemos como sistemas de clave simétrica. Para ello cuando dos usuarios quieren mantener una comunicación segura estos deben compartir una clave secreta que tan solo ambos conocen. Esta clave se utiliza tanto para cifrar la información como para descifrarla luego, permitiendo de este modo obtener un canal de comunicación seguro. El precio que se paga es el hecho que para cada par de usuarios que se quiera establecer una comunicación segura se requiere una clave distinta. Si hacemos cuentas, vemos que de este modo un usuario de una red debe almacenar tantas claves como personas con las que desee mantener una comunicación segura. Este hecho no constituía ningún problema antaño si bien ahora, con la cantidad de usuarios que existen en las redes se convierte en impracticable y implica nuevas respuestas para el problema de la comunicación segura.

En dirección a la solución de estos problemas nace lo que se conoce como criptografía de clave pública. La idea general es proveer a cada usuario de un solo par de claves (una pública y una privada) independientemente del número de usuarios con los que desee comunicarse. Estas claves tienen la asombrosa propiedad que cada una de ellas invierte la acción de la otra pero, y aquí está el punto más relevante, a partir de una no se puede obtener la otra. De este modo se puede definir un método de cifrado que es el que se denomina cifrado de clave pública, que consiste en fijar una de las dos claves de cada usuario como pública y la otra como privada. La clave privada deberá ser custodiada por el usuario y es imprescindible que se mantenga en secreto. La clave pública, por el contrario, se publicará junto con la identidad del usuario. Así cuando se quiera enviar un mensaje seguro a un usuario se cogerá la clave pública de este y se utilizará para cifrar el mensaje que se quiera enviar. El resultado de esta operación será el texto cifrado que sólo el propietario de la clave privada correspondiente a esa clave pública podrá descifrar.

Llegados a este punto, la pregunta más natural que nos surge es: ¿pueden existir dos claves las cuales inviertan sus acciones pero que el hecho de conocer una no implique conocer la otra? La respuesta a esta pregunta es si y la herramienta para obtenerlas son los números primos. Si bien hemos dicho que “no se puede” obtener la clave privada a través de la pública, debemos matizar éste “no se puede”. Cuando nos referimos a ”no poder” queremos decir que no existen algoritmos ni ordenadores suficientemente eficientes para obtener una clave a partir de la otra en un tiempo razonable (de nuevo el calificativo “razonable” dependerá en cada caso del periodo de validez que se quiera que tengan las claves). El problema básico que se utiliza en los sistemas de clave pública es el de la factorización. Factorizar un número es descomponerlo en producto de números primos y esta operación, cuando tratamos de números grandes, resulta un problema difícil.

Existen diferentes sistemas de clave pública pero el más extendido y el que se considera un estándar de facto es el RSA. Este criptosistema, creado en 1978 por Rivest Shamir y Adleman (de aquí su nombre), utiliza esencialmente que la tarea de factorizar es muy difícil.

Así pues, parece que el problema de la seguridad quedaría del todo solucionado con los sistemas de clave pública, pero entonces surge la siguiente pregunta: ¿cómo sabemos que la clave pública de un usuario es del usuario que dice ser?, en otras palabras: ¿cómo es posible asegurar que usamos la clave pública de quien queremos que reciba nuestro mensaje y no otra clave que alguien ha publicado con una identidad falsa para suplantar a nuestro interlocutor real?. Es aquí donde se aplica el concepto de certificación. Las claves públicas deben estar certificadas por una entidad en la que todos los usuarios tengan confianza con tal de asegurar que dicha clave pública pertenezca a quien dice pertenecer. Como es de suponer, se inicia aquí un debate que está en alza y que lo seguirá estando: quienes deben ser las autoridades certificadoras? Y si estas certifican, quien certifica que los certificados que ellas expiden han sido emitidos por ellas, es decir, quien certifica a las entidades certificadoras?

Como vemos, la clave pública no ha resuelto del todo el problema de la seguridad, ya que si bien ha contribuido a reducir el número de claves necesarias para comunicarse con múltiples usuarios, ha añadido el problema de la confianza con una tercera parte certificadora.

Publicado en el Boletín del Criptonomicón #44.

Jordi Herrera Joancomartí es licenciado en Matemáticas por la Universitat Autònoma de Barcelona. Ha trabajado en banca electrónica en Andersen Consulting. Actualmente es doctorando del Programa de Telemática de la Universitat Politècnica de Catalunya y becario de investigación en la Universitat Rovira i Virgili.

Información adicional
Artículos publicados

Puedes consultarlos por temas, o también por orden de aparición en el boletín.

Enviar a un amigo

Si consideras que este artículo puede interesarle a alguien que conozcas, puedes enviárselo por correo electrónico. No tienes más que indicar la dirección del destinatario, el asunto y tu nombre.

E-mail destino:
Asunto:
Tu nombre:

 

Copyright © 1997-2000 Gonzalo Álvarez Marañón, CSIC. Todos los derechos reservados.

Criptonomicón es un servicio ofrecido libremente desde el Instituto de Física Aplicada del CSIC. Para información sobre privacidad, por favor consulte la declaración de política sobre privacidad. Para sugerencias, comentarios o quejas, acuda al libro de visitas. Para contribuir al Criptonomicón, lea la página de contribuciones.