Criptografía de clave pública

Limitaciones de la criptografía de clave secreta convencional

La solución a los problemas de identificación, autenticación y privacidad en sistemas computarizados reside en el campo de la criptografía. Debido a la naturaleza inmaterial del medio, los métodos tradicionales empleados para marcar físicamente un documento o similar con un sello o una firma (con varios propósitos comerciales y legales) son inútiles. En cambio, es necesario codificar alguna marca en la información misma para poder identificar la fuente, autenticar los contenidos y proporcionar privacidad contra algún posible espía.

La protección de la privacidad mediante el uso de un algoritmo simétrico, como en el DES (del inglés Data Encription Standard, la norma de cifrado de datos patrocinada por el gobierno) es relativamente fácil en redes pequeñas, en donde las partes intercambian claves de cifrado secretas. A medida que prolifera la red, el intercambio seguro de claves secretas comienza a ser cada vez más costoso y difícil de controlar. Consecuentemente, esta solución se vuelve impráctica aun para redes moderadamente grandes.

El DES tiene otra contra: requiere que se comparta una clave secreta. Cada persona tiene que confiar en que el otro cuide la clave secreta y que no la revele a nadie. Debido a que el usuario debe tener una clave diferente para cada persona con la que se comunica, tiene que confiar en todos los que tengan una de sus claves secretas. Esto significa que, en la implementación práctica, la comunicación segura sólo puede llevarse a cabo entre personas que ya tenían una relación previa, sea personal o profesional.

Otros problemas fundamentales que no soluciona el DES son los de autenticación e irrenunciabilidad. Las claves secretas compartidas hacen que ninguna parte pueda probar lo que ha hecho la otra. Una parte puede modificar datos subrepticiamente y asegurarse de que un tercero no podrá identificar al culpable. La misma clave que hace segura la comunicación podría usarse fraudulentamente usando el nombre del otro usuario.

La solución: criptografía de claves públicas

En 1976, Whitfield Diffie y Martin Hellman trataron los problemas de autenticación y de protección de la privacidad en redes grandes cuando publicaron sus conceptos teóricos para la creación de un método de intercambio de mensajes secretos que no requiera que se compartan claves secretas. La idea dio sus frutos en 1977, cuando Ronald Rivest, Adi Shamir y Len Adleman, en ese entonces profesores del Massachusetts Institute of Technology (MIT) inventaron el Criptosistema de claves públicas RSA.

En vez de usar la misma clave para cifrar y descifrar datos, el sistema RSA usa un par de claves coincidentes, una de cifrado y otra de descifrado. Cada clave realiza una transformación unidireccional sobre los datos. Cada clave es la función inversa de la otra; lo que hace una, la otra no puede deshacer.

El dueño de la clave pública RSA hace que la clave esté disponible públicamente, mientras que la clave privada RSA se conserva en secreto. Para enviar un mensaje privado, un autor codifica el mensaje con la clave pública del destinatario. Una vez cifrado, el mensaje sólo puede ser descodificado con la clave privada del destinatario.

Inversamente, el usuario también puede codificar los datos usando su clave privada; en otras palabras, las claves RSA funcionan en ambas direcciones. Esto proporciona las bases para la "firma digital", de manera que si un usuario puede descodificar un mensaje con la clave pública de alguien, el otro usuario debe haber usado su clave privada para codificarlo en primer lugar. Debido a que sólo el dueño puede utilizar su propia clave privada, el mensaje codificado se vuelve una especie de firma electrónica: un documento que nadie más podría haber producido.

Regresar al principio de la página

Autenticación e irrenunciabilidad: el certificado digital de Verisign

Una firma digital se crea haciendo pasar el texto del mensaje por un algoritmo hash. Esto genera una compilación del mensaje. Entonces, la compilación del mensaje se cifra usando la clave privada del individuo que envía el mensaje, lo que lo convierte en una firma digital. La firma digital sólo puede descifrarse mediante la clave pública del mismo individuo. El destinatario del mensaje descifra la firma digital y luego recalcula la compilación del mensaje. El valor de la compilación recalculada del mensaje se compara con el valor de la compilación del mensaje encontrado en la firma. Si ambos coinciden, el mensaje no ha sido adulterado. Debido a que la clave pública del remitente se usó para verificar la firma, el texto tiene que haber sido firmado con la clave privada que sólo el remitente conoce. Todo este proceso de autenticación se incorporará a cualquier aplicación que tenga métodos de seguridad.

Regresar al principio de la página

¿Qué es un certificado digital?

Generalmente, los usuarios de la tecnología RSA adjuntan su clave pública única a los documentos salientes para que el destinatario no tenga que buscarla en un depósito de claves públicas. ¿Pero cómo puede asegurarse el destinatario de que esa clave pública, o hasta una que figura en un directorio público, pertenece realmente a la persona que hace referencia? ¿Acaso un intruso no podría hacerse pasar por un usuario legítimo en la red y esperar a que otros envíen documentos importantes y secretos a una cuenta falsa creada por él para dicho fin?

La solución es el certificado digital, una especie de "pasaporte" o "credencial" digital. El certificado digital es la clave pública del usuario que fue "firmada digitalmente" por alguien confiable, como un director de seguridad de una red, el servicio de ayuda MIS o VeriSign, Inc. La siguiente figura presenta una descripción gráfica de un certificado digital.

Cada vez que alguien envía un mensaje adjunta su certificado digital. El destinatario del mensaje usa primeramente el certificado digital para verificar que la clave pública del autor sea auténtica, luego usa esa clave pública para verificar el mensaje mismo. De esta manera, sólo una clave pública, la de la autoridad certificadora, tiene que ser almacenada centralmente o publicada para todos, y a partir de ahí, cualquiera puede simplemente transmitir su clave pública y certificado digital válido con sus mensajes.

Al usar certificados digitales se puede establecer una cadena de autenticación que corresponda a una jerarquía organizacional, permitiendo una registración y certificación de clave públicas convenientes en un ambiente distribuido.

Regresar al principio de la página

Jerarquías de certificación

Una vez que un usuario tiene un certificado digital, ¿qué hace con él? Los certificados digitales tienen una amplia variedad de usos, desde correo electrónico entre oficinas hasta transferencias de fondos electrónicas (EFT) a escala global. Para poder usar certificados digitales, tiene que haber un grado elevado de confianza en la vinculación hecha entre un certificado digital y un usuario u organización. Esta confianza se logra creando jerarquías de certificados digitales, con todos los miembros de esta jerarquía adheridos al mismo conjunto de políticas. Sólo se emitirán certificados digitales a personas o entidades, siendo posibles miembros de una jerarquía, una vez que hayan presentado pruebas satisfactorias de su identidad. Las distintas jerarquías pueden tener políticas distintas sobre cómo se establece una identidad y cómo se emiten los certificados digitales.

Verisign opera numerosas jerarquías de certificados digitales. El CA Comercial tiene un alto grado de confianza con respecto al vínculo entre el certificado digital de un usuario final y dicho usuario final. Los miembros del CA Comercial de RSA tendrán un alto grado de confianza con respecto a quién es la persona o entidad con la que se comunican, gracias las políticas establecidas y el respeto de las mismas. Esto no será así cuando dos usuarios finales, quienes son miembros de jerarquías de poca confianza, se comunican con certificados digitales. Sin la garantía asociada a una jerarquía de certificados digitales gestionada apropiadamente, el uso de certificados digitales tiene un valor limitado.

Regresar al principio de la página